Parcourir la source

WebGLRenderer: Only update skeletons in frustum (#25937)

Ash Connell il y a 2 ans
Parent
commit
4865fee0c3
1 fichiers modifiés avec 8 ajouts et 8 suppressions
  1. 8 8
      src/renderers/WebGLRenderer.js

+ 8 - 8
src/renderers/WebGLRenderer.js

@@ -1148,20 +1148,20 @@ class WebGLRenderer {
 
 
 				} else if ( object.isMesh || object.isLine || object.isPoints ) {
 				} else if ( object.isMesh || object.isLine || object.isPoints ) {
 
 
-					if ( object.isSkinnedMesh ) {
+					if ( ! object.frustumCulled || _frustum.intersectsObject( object ) ) {
 
 
-						// update skeleton only once in a frame
+						if ( object.isSkinnedMesh ) {
 
 
-						if ( object.skeleton.frame !== info.render.frame ) {
+							// update skeleton only once in a frame
 
 
-							object.skeleton.update();
-							object.skeleton.frame = info.render.frame;
+							if ( object.skeleton.frame !== info.render.frame ) {
 
 
-						}
+								object.skeleton.update();
+								object.skeleton.frame = info.render.frame;
 
 
-					}
+							}
 
 
-					if ( ! object.frustumCulled || _frustum.intersectsObject( object ) ) {
+						}
 
 
 						const geometry = objects.update( object );
 						const geometry = objects.update( object );
 						const material = object.material;
 						const material = object.material;