Skip to content

Commit 871be05

Browse files
committed
SSRPassChangeInfiniteThickBehaviorPr
1 parent f268ef8 commit 871be05

File tree

2 files changed

+12
-8
lines changed

2 files changed

+12
-8
lines changed

examples/jsm/shaders/SSRShader.js

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ var SSRShader = {
3333
"maxDistance": { value: 180 },
3434
"cameraRange": { value: 0 },
3535
"surfDist": { value: .007 },
36-
"thickTolerance": { value: .03 },
36+
"thickTolerance": { value: 0 },
3737

3838
},
3939

@@ -187,14 +187,17 @@ var SSRShader = {
187187
#endif
188188
if(viewReflectRayZ-sD>vZ) continue;
189189
190+
float op=opacity;
191+
192+
bool hit;
190193
#ifdef INFINITE_THICK
191-
if(viewReflectRayZ+thickTolerance*clipW<vP.z) break;
194+
hit=(viewReflectRayZ+thickTolerance*clipW)<=vZ;
195+
#else
196+
float away=pointToLineDistance(vP,viewPosition,d1viewPosition);
197+
hit=away<=sD;
192198
#endif
193-
float away=pointToLineDistance(vP,viewPosition,d1viewPosition);
194-
195-
float op=opacity;
196199
197-
if(away<sD){
200+
if(hit){
198201
vec3 vN=getViewNormal( uv );
199202
if(dot(viewReflectDir,vN)>=0.) continue;
200203
float distance=pointPlaneDistance(vP,viewPosition,viewNormal);

examples/webgl_postprocessing_ssr.html

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
enableSSR: true,
3636
autoRotate: true,
3737
otherMeshes: true,
38-
groundReflector: true,
38+
groundReflector: false,
3939
};
4040
let composer;
4141
let ssrPass;
@@ -198,6 +198,8 @@
198198
}
199199

200200
} );
201+
ssrPass.infiniteThick = true
202+
gui.add( ssrPass, 'infiniteThick' );
201203
gui.add( params, 'autoRotate' ).onChange( () => {
202204

203205
controls.enabled = ! params.autoRotate;
@@ -257,7 +259,6 @@
257259
} );
258260
ssrPass.surfDist = 0.0015;
259261
folder.add( ssrPass, 'surfDist' ).min( 0 ).max( .005 ).step( .0001 );
260-
folder.add( ssrPass, 'infiniteThick' );
261262
folder.add( ssrPass, 'thickTolerance' ).min( 0 ).max( .05 ).step( .0001 );
262263
folder.add( ssrPass, 'blur' );
263264
// gui.close()

0 commit comments

Comments
 (0)