Parcourir la source

WebGLRenderer: Moved layers test code to Layers.

Mr.doob il y a 10 ans
Parent
commit
b4fc02412e
2 fichiers modifiés avec 7 ajouts et 1 suppressions
  1. 6 0
      src/core/Layers.js
  2. 1 1
      src/renderers/WebGLRenderer.js

+ 6 - 0
src/core/Layers.js

@@ -34,6 +34,12 @@ THREE.Layers.prototype = {
 
 		this.mask &= ~ ( 1 << channel );
 
+	},
+
+	test: function ( layers ) {
+
+		return ( this.mask & layers.mask ) !== 0;
+
 	}
 
 };

+ 1 - 1
src/renderers/WebGLRenderer.js

@@ -1240,7 +1240,7 @@ THREE.WebGLRenderer = function ( parameters ) {
 
 		if ( object.visible === false ) return;
 
-		if ( ( object.layers.mask & camera.layers.mask ) !== 0 ) {
+		if ( object.layers.test( camera.layers ) ) {
 
 			if ( object instanceof THREE.Light ) {