@react-three/postprocessing 2.14.10 → 2.14.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -912,7 +912,7 @@ void main() {
912
912
  #define SAMPLES 16
913
913
  #define FSAMPLES 16.0
914
914
  uniform sampler2D sceneDiffuse;
915
- uniform sampler2D sceneNormal;
915
+ uniform highp sampler2D sceneNormal;
916
916
  uniform highp sampler2D sceneDepth;
917
917
  uniform mat4 projectionMatrixInv;
918
918
  uniform mat4 viewMatrixInv;
@@ -962,7 +962,7 @@ uniform sampler2D bluenoise;
962
962
  float b = farZ * nearZ / (nearZ - farZ);
963
963
  float linDepth = a + b / depth;
964
964
  vec4 clipVec = vec4(uv, linDepth, 1.0) * 2.0 - 1.0;
965
- vec4 wpos = viewMatrixInv * projectionMatrixInv * clipVec;
965
+ vec4 wpos = projectionMatrixInv * clipVec;
966
966
  return wpos.xyz / wpos.w;
967
967
  }
968
968
  vec3 getWorldPos(float depth, vec2 coord) {
@@ -973,7 +973,7 @@ uniform sampler2D bluenoise;
973
973
  vec4 clipSpacePosition = vec4(coord * 2.0 - 1.0, z, 1.0);
974
974
  vec4 viewSpacePosition = projectionMatrixInv * clipSpacePosition;
975
975
  // Perspective division
976
- vec4 worldSpacePosition = viewMatrixInv * viewSpacePosition;
976
+ vec4 worldSpacePosition = viewSpacePosition;
977
977
  worldSpacePosition.xyz /= worldSpacePosition.w;
978
978
  return worldSpacePosition.xyz;
979
979
  }
@@ -1052,7 +1052,7 @@ void main() {
1052
1052
  ;
1053
1053
  float moveAmt = samplesR[int(mod(i + noise.a * FSAMPLES, FSAMPLES))];
1054
1054
  vec3 samplePos = worldPos + radiusToUse * moveAmt * sampleDirection;
1055
- vec4 offset = projViewMat * vec4(samplePos, 1.0);
1055
+ vec4 offset = projMat * vec4(samplePos, 1.0);
1056
1056
  offset.xyz /= offset.w;
1057
1057
  offset.xyz = offset.xyz * 0.5 + 0.5;
1058
1058
  float sampleDepth = textureLod(sceneDepth, offset.xy, 0.0).x;
@@ -1188,8 +1188,8 @@ const $12b21d24d1192a04$export$a815acccbd2c9a49 = {
1188
1188
  /* glsl */
1189
1189
  `
1190
1190
  uniform sampler2D sceneDiffuse;
1191
- uniform sampler2D sceneDepth;
1192
- uniform sampler2D downsampledDepth;
1191
+ uniform highp sampler2D sceneDepth;
1192
+ uniform highp sampler2D downsampledDepth;
1193
1193
  uniform sampler2D tDiffuse;
1194
1194
  uniform sampler2D blueNoise;
1195
1195
  uniform vec2 resolution;
@@ -1242,7 +1242,7 @@ const $12b21d24d1192a04$export$a815acccbd2c9a49 = {
1242
1242
  float b = farZ * nearZ / (nearZ - farZ);
1243
1243
  float linDepth = a + b / depth;
1244
1244
  vec4 clipVec = vec4(uv, linDepth, 1.0) * 2.0 - 1.0;
1245
- vec4 wpos = viewMatrixInv * projectionMatrixInv * clipVec;
1245
+ vec4 wpos = projectionMatrixInv * clipVec;
1246
1246
  return wpos.xyz / wpos.w;
1247
1247
  }
1248
1248
  vec3 getWorldPos(float depth, vec2 coord) {
@@ -1255,7 +1255,7 @@ const $12b21d24d1192a04$export$a815acccbd2c9a49 = {
1255
1255
  vec4 clipSpacePosition = vec4(coord * 2.0 - 1.0, z, 1.0);
1256
1256
  vec4 viewSpacePosition = projectionMatrixInv * clipSpacePosition;
1257
1257
  // Perspective division
1258
- vec4 worldSpacePosition = viewMatrixInv * viewSpacePosition;
1258
+ vec4 worldSpacePosition = viewSpacePosition;
1259
1259
  worldSpacePosition.xyz /= worldSpacePosition.w;
1260
1260
  return worldSpacePosition.xyz;
1261
1261
  }
@@ -1510,7 +1510,7 @@ const $e52378cd0f5a973d$export$57856b59f317262e = {
1510
1510
  float b = farZ * nearZ / (nearZ - farZ);
1511
1511
  float linDepth = a + b / depth;
1512
1512
  vec4 clipVec = vec4(uv, linDepth, 1.0) * 2.0 - 1.0;
1513
- vec4 wpos = viewMatrixInv * projectionMatrixInv * clipVec;
1513
+ vec4 wpos = projectionMatrixInv * clipVec;
1514
1514
  return wpos.xyz / wpos.w;
1515
1515
  }
1516
1516
  vec3 getWorldPos(float depth, vec2 coord) {
@@ -1522,7 +1522,7 @@ const $e52378cd0f5a973d$export$57856b59f317262e = {
1522
1522
  vec4 clipSpacePosition = vec4(coord * 2.0 - 1.0, z, 1.0);
1523
1523
  vec4 viewSpacePosition = projectionMatrixInv * clipSpacePosition;
1524
1524
  // Perspective division
1525
- vec4 worldSpacePosition = viewMatrixInv * viewSpacePosition;
1525
+ vec4 worldSpacePosition = viewSpacePosition;
1526
1526
  worldSpacePosition.xyz /= worldSpacePosition.w;
1527
1527
  return worldSpacePosition.xyz;
1528
1528
  }
@@ -1539,6 +1539,10 @@ const $e52378cd0f5a973d$export$57856b59f317262e = {
1539
1539
  vec3 normal = data.rgb * 2.0 - 1.0;
1540
1540
  float count = 1.0;
1541
1541
  float d = texture2D(sceneDepth, vUv).x;
1542
+ if (d == 1.0) {
1543
+ gl_FragColor = data;
1544
+ return;
1545
+ }
1542
1546
  vec3 worldPos = getWorldPos(d, vUv);
1543
1547
  float size = radius;
1544
1548
  float angle;
@@ -1571,7 +1575,7 @@ const $e52378cd0f5a973d$export$57856b59f317262e = {
1571
1575
  float dSample = texture2D(sceneDepth, uv + offset).x;
1572
1576
  vec3 worldPosSample = getWorldPos(dSample, uv + offset);
1573
1577
  float tangentPlaneDist = abs(dot(worldPos - worldPosSample, normal));
1574
- float rangeCheck = exp(-1.0 * tangentPlaneDist * (1.0 / distanceFalloffToUse)) * max(dot(normal, normalSample), 0.0) * (1.0 - abs(occSample - baseOcc));
1578
+ float rangeCheck = dSample == 1.0 ? 0.0 :exp(-1.0 * tangentPlaneDist * (1.0 / distanceFalloffToUse)) * max(dot(normal, normalSample), 0.0) * (1.0 - abs(occSample - baseOcc));
1575
1579
  occlusion += occSample * rangeCheck;
1576
1580
  count += rangeCheck;
1577
1581
  }
@@ -1617,7 +1621,7 @@ const $26aca173e0984d99$export$1efdf491687cd442 = {
1617
1621
  fragmentShader: (
1618
1622
  /* glsl */
1619
1623
  `
1620
- uniform sampler2D sceneDepth;
1624
+ uniform highp sampler2D sceneDepth;
1621
1625
  uniform vec2 resolution;
1622
1626
  uniform float near;
1623
1627
  uniform float far;
@@ -1636,7 +1640,7 @@ const $26aca173e0984d99$export$1efdf491687cd442 = {
1636
1640
  float b = farZ * nearZ / (nearZ - farZ);
1637
1641
  float linDepth = a + b / depth;
1638
1642
  vec4 clipVec = vec4(uv, linDepth, 1.0) * 2.0 - 1.0;
1639
- vec4 wpos = viewMatrixInv * projectionMatrixInv * clipVec;
1643
+ vec4 wpos = projectionMatrixInv * clipVec;
1640
1644
  return wpos.xyz / wpos.w;
1641
1645
  }
1642
1646
  vec3 getWorldPos(float depth, vec2 coord) {
@@ -1647,7 +1651,7 @@ const $26aca173e0984d99$export$1efdf491687cd442 = {
1647
1651
  vec4 clipSpacePosition = vec4(coord * 2.0 - 1.0, z, 1.0);
1648
1652
  vec4 viewSpacePosition = projectionMatrixInv * clipSpacePosition;
1649
1653
  // Perspective division
1650
- vec4 worldSpacePosition = viewMatrixInv * viewSpacePosition;
1654
+ vec4 worldSpacePosition = viewSpacePosition;
1651
1655
  worldSpacePosition.xyz /= worldSpacePosition.w;
1652
1656
  return worldSpacePosition.xyz;
1653
1657
  }