Jelajahi Sumber

ColladaLoader was not setting the emissive color property for common shader materials. It was also not setting the emissive property for an emission texture to all 1's.

John Pywtorak 13 tahun lalu
induk
melakukan
3ba695bb1c
1 mengubah file dengan 12 tambahan dan 1 penghapusan
  1. 12 1
      src/extras/loaders/ColladaLoader.js

+ 12 - 1
src/extras/loaders/ColladaLoader.js

@@ -3045,6 +3045,9 @@ THREE.ColladaLoader = function () {
 										texture.repeat.y = cot.texOpts.repeatV;
 										props['map'] = texture;
 
+										// Texture with baked lighting?
+										if ( prop == 'emission' ) props[ 'emissive' ] = 0xffffff;
+
 									}
 
 								}
@@ -3053,7 +3056,15 @@ THREE.ColladaLoader = function () {
 
 						} else if ( prop == 'diffuse' || !transparent ) {
 
-							props[ prop ] = cot.color.getHex();
+							if ( prop == 'emission' ) {
+
+								props[ 'emissive' ] = cot.color.getHex();
+
+							} else {
+
+								props[ prop ] = cot.color.getHex();
+
+							}
 
 						}