Explorar o código

BatchedMesh: Add sorting and frustum culling for shadows (#27258)

Garrett Johnson hai 1 ano
pai
achega
15d7f234fb
Modificáronse 1 ficheiros con 8 adicións e 2 borrados
  1. 8 2
      src/objects/BatchedMesh.js

+ 8 - 2
src/objects/BatchedMesh.js

@@ -879,7 +879,7 @@ class BatchedMesh extends Mesh {
 
 	}
 
-	onBeforeRender( _renderer, _scene, camera, geometry, material/*, _group*/ ) {
+	onBeforeRender( renderer, scene, camera, geometry, material/*, _group*/ ) {
 
 		// if visibility has not changed and frustum culling and object sorting is not required
 		// then skip iterating over all items
@@ -908,7 +908,7 @@ class BatchedMesh extends Mesh {
 				.multiply( this.matrixWorld );
 			_frustum.setFromProjectionMatrix(
 				_projScreenMatrix,
-				_renderer.isWebGPURenderer ? WebGPUCoordinateSystem : WebGLCoordinateSystem
+				renderer.isWebGPURenderer ? WebGPUCoordinateSystem : WebGLCoordinateSystem
 			);
 
 		}
@@ -1009,6 +1009,12 @@ class BatchedMesh extends Mesh {
 
 	}
 
+	onBeforeShadow( renderer, object, camera, shadowCamera, geometry, depthMaterial/* , group */ ) {
+
+		this.onBeforeRender( renderer, null, shadowCamera, geometry, depthMaterial );
+
+	}
+
 }
 
 export { BatchedMesh };