소스 검색

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 년 전
부모
커밋
3ba695bb1c
1개의 변경된 파일12개의 추가작업 그리고 1개의 파일을 삭제
  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();
+
+							}
 
 						}