diff options
author | Julien Duroure <julien.duroure@gmail.com> | 2019-01-23 23:08:22 +0300 |
---|---|---|
committer | Julien Duroure <julien.duroure@gmail.com> | 2019-01-23 23:08:49 +0300 |
commit | acf3bcb5b5c763edb83f511ecf7873a04ae23f96 (patch) | |
tree | 06e50fb7201d169cc313f7bf9fe02b98d9dad06e /io_scene_gltf2/blender/imp/gltf2_blender_KHR_materials_pbrSpecularGlossiness.py | |
parent | 49c1b409286937d00a63fbf4cfb1f820a75a80c0 (diff) |
glTF importer: fix bug when texture file is not found
Diffstat (limited to 'io_scene_gltf2/blender/imp/gltf2_blender_KHR_materials_pbrSpecularGlossiness.py')
-rwxr-xr-x | io_scene_gltf2/blender/imp/gltf2_blender_KHR_materials_pbrSpecularGlossiness.py | 39 |
1 files changed, 25 insertions, 14 deletions
diff --git a/io_scene_gltf2/blender/imp/gltf2_blender_KHR_materials_pbrSpecularGlossiness.py b/io_scene_gltf2/blender/imp/gltf2_blender_KHR_materials_pbrSpecularGlossiness.py index 1854f45d..fec65ee4 100755 --- a/io_scene_gltf2/blender/imp/gltf2_blender_KHR_materials_pbrSpecularGlossiness.py +++ b/io_scene_gltf2/blender/imp/gltf2_blender_KHR_materials_pbrSpecularGlossiness.py @@ -90,10 +90,13 @@ class BlenderKHR_materials_pbrSpecularGlossiness(): # create UV Map / Mapping / Texture nodes / separate & math and combine text_node = node_tree.nodes.new('ShaderNodeTexImage') - text_node.image = \ - bpy.data.images[ - gltf.data.images[gltf.data.textures[pbrSG['diffuseTexture']['index']].source].blender_image_name - ] + if gltf.data.images[ + gltf.data.textures[pbrSG['diffuseTexture']['index']].source].blender_image_name is not None: + text_node.image = \ + bpy.data.images[ + gltf.data.images[ + gltf.data.textures[pbrSG['diffuseTexture']['index']].source].blender_image_name + ] text_node.location = -1000, 500 combine = node_tree.nodes.new('ShaderNodeCombineRGB') @@ -191,9 +194,11 @@ class BlenderKHR_materials_pbrSpecularGlossiness(): # create UV Map / Mapping / Texture nodes / separate & math and combine text_node = node_tree.nodes.new('ShaderNodeTexImage') - text_node.image = bpy.data.images[ - gltf.data.images[gltf.data.textures[pbrSG['diffuseTexture']['index']].source].blender_image_name - ] + if gltf.data.images[ + gltf.data.textures[pbrSG['diffuseTexture']['index']].source].blender_image_name is not None: + text_node.image = bpy.data.images[ + gltf.data.images[gltf.data.textures[pbrSG['diffuseTexture']['index']].source].blender_image_name + ] if vertex_color: text_node.location = -2000, 500 else: @@ -257,11 +262,14 @@ class BlenderKHR_materials_pbrSpecularGlossiness(): elif pbrSG['specgloss_type'] == gltf.TEXTURE: BlenderTextureInfo.create(gltf, pbrSG['specularGlossinessTexture']['index']) spec_text = node_tree.nodes.new('ShaderNodeTexImage') - spec_text.image = bpy.data.images[ - gltf.data.images[ - gltf.data.textures[pbrSG['specularGlossinessTexture']['index']].source - ].blender_image_name - ] + if gltf.data.images[ + gltf.data.textures[pbrSG['specularGlossinessTexture']['index']].source + ].blender_image_name is not None: + spec_text.image = bpy.data.images[ + gltf.data.images[ + gltf.data.textures[pbrSG['specularGlossinessTexture']['index']].source + ].blender_image_name + ] spec_text.color_space = 'NONE' spec_text.location = -500, 0 @@ -288,9 +296,12 @@ class BlenderKHR_materials_pbrSpecularGlossiness(): BlenderTextureInfo.create(gltf, pbrSG['specularGlossinessTexture']['index']) spec_text = node_tree.nodes.new('ShaderNodeTexImage') - spec_text.image = bpy.data.images[gltf.data.images[ + if gltf.data.images[ gltf.data.textures[pbrSG['specularGlossinessTexture']['index']].source - ].blender_image_name] + ].blender_image_name is not None: + spec_text.image = bpy.data.images[gltf.data.images[ + gltf.data.textures[pbrSG['specularGlossinessTexture']['index']].source + ].blender_image_name] spec_text.color_space = 'NONE' spec_text.location = -1000, 0 |