Browse Source

Gltf updates.

Mark Sibly 8 years ago
parent
commit
c48cd06a97
2 changed files with 14 additions and 1 deletions
  1. 2 0
      modules/mojo3d/graphics/gltf2.monkey2
  2. 12 1
      modules/mojo3d/graphics/gltf2loader.monkey2

+ 2 - 0
modules/mojo3d/graphics/gltf2.monkey2

@@ -403,6 +403,8 @@ Class Gltf2Asset
 				Endif
 				If jprim.Contains( "mode" )
 					prim.mode=jprim.GetNumber( "mode" )
+				Else
+					prim.mode=4
 				Endif
 			
 			Next

+ 12 - 1
modules/mojo3d/graphics/gltf2loader.monkey2

@@ -127,7 +127,18 @@ Class Gltf2Loader
 		If colorTexture mat.ColorTexture=colorTexture
 		If metallicRoughnessTexture mat.MetalnessTexture=metallicRoughnessTexture ; mat.RoughnessTexture=metallicRoughnessTexture
 		If occlusionTexture mat.OcclusionTexture=occlusionTexture
-		If emissiveTexture mat.EmissiveTexture=emissiveTexture ; mat.EmissiveFactor=New Color( material.emissiveFactor.x,material.emissiveFactor.y,material.emissiveFactor.z )
+		If emissiveTexture 
+			mat.EmissiveTexture=emissiveTexture
+ 			If material.emissiveFactor<>Null
+				mat.EmissiveFactor=New Color( material.emissiveFactor.x,material.emissiveFactor.y,material.emissiveFactor.z )
+			Else
+				mat.EmissiveFactor=Color.White
+			Endif
+		Else If material.emissiveFactor<>Null
+			mat.EmissiveTexture=Texture.ColorTexture( Color.White )
+			mat.EmissiveFactor=New Color( material.emissiveFactor.x,material.emissiveFactor.y,material.emissiveFactor.z )
+		Endif
+		
 		If normalTexture mat.NormalTexture=normalTexture
 			
 		_materialCache[material]=mat