|
|
@@ -85,12 +85,14 @@
|
|
|
collisionCamera.layers.enable( 1 );
|
|
|
|
|
|
collisionPosRT = new THREE.RenderTarget( 1024, 1024 );
|
|
|
+ collisionPosRT.texture.format = THREE.RedFormat;
|
|
|
collisionPosRT.texture.type = THREE.HalfFloatType;
|
|
|
collisionPosRT.texture.magFilter = THREE.NearestFilter;
|
|
|
collisionPosRT.texture.minFilter = THREE.NearestFilter;
|
|
|
collisionPosRT.texture.generateMipmaps = false;
|
|
|
|
|
|
collisionPosMaterial = new THREE.MeshBasicNodeMaterial();
|
|
|
+ collisionPosMaterial.blending = THREE.NoBlending;
|
|
|
collisionPosMaterial.fog = false;
|
|
|
collisionPosMaterial.toneMapped = false;
|
|
|
collisionPosMaterial.colorNode = positionWorld.y;
|
|
|
@@ -150,11 +152,11 @@
|
|
|
|
|
|
const rippleOnSurface = texture( collisionPosRT.texture, getCoord( position.xz ) ).toInspector( 'Collision Test', () => {
|
|
|
|
|
|
- return texture( collisionPosRT.texture ).y; // .div( collisionCamera.position.y );
|
|
|
+ return texture( collisionPosRT.texture ).r; // .div( collisionCamera.position.y );
|
|
|
|
|
|
} );
|
|
|
|
|
|
- const rippleFloorArea = rippleOnSurface.y.add( scale.x.mul( surfaceOffset ) );
|
|
|
+ const rippleFloorArea = rippleOnSurface.r.add( scale.x.mul( surfaceOffset ) );
|
|
|
|
|
|
If( position.y.greaterThan( rippleFloorArea ), () => {
|
|
|
|