ソースを参照

GLTFLoader: Use depthWrite=false for transparent materials

Don McCurdy 5 年 前
コミット
7752728a7e
2 ファイル変更6 行追加0 行削除
  1. 3 0
      examples/js/loaders/GLTFLoader.js
  2. 3 0
      examples/jsm/loaders/GLTFLoader.js

+ 3 - 0
examples/js/loaders/GLTFLoader.js

@@ -2099,6 +2099,9 @@ THREE.GLTFLoader = ( function () {
 
 
 			materialParams.transparent = true;
 			materialParams.transparent = true;
 
 
+			// See: https://github.com/mrdoob/three.js/issues/17706
+			materialParams.depthWrite = false;
+
 		} else if ( alphaMode === ALPHA_MODES.MASK ) {
 		} else if ( alphaMode === ALPHA_MODES.MASK ) {
 
 
 			materialParams.alphaTest = materialDef.alphaCutoff !== undefined ? materialDef.alphaCutoff : 0.5;
 			materialParams.alphaTest = materialDef.alphaCutoff !== undefined ? materialDef.alphaCutoff : 0.5;

+ 3 - 0
examples/jsm/loaders/GLTFLoader.js

@@ -2162,6 +2162,9 @@ var GLTFLoader = ( function () {
 
 
 			materialParams.transparent = true;
 			materialParams.transparent = true;
 
 
+			// See: https://github.com/mrdoob/three.js/issues/17706
+			materialParams.depthWrite = false;
+
 		} else if ( alphaMode === ALPHA_MODES.MASK ) {
 		} else if ( alphaMode === ALPHA_MODES.MASK ) {
 
 
 			materialParams.alphaTest = materialDef.alphaCutoff !== undefined ? materialDef.alphaCutoff : 0.5;
 			materialParams.alphaTest = materialDef.alphaCutoff !== undefined ? materialDef.alphaCutoff : 0.5;