diff options
author | Julien Duroure <julien.duroure@gmail.com> | 2020-10-08 21:25:22 +0300 |
---|---|---|
committer | Julien Duroure <julien.duroure@gmail.com> | 2020-10-08 21:25:22 +0300 |
commit | 77aada8057d961a3b409d7cdcfad312919b40d23 (patch) | |
tree | 6c63220472180199c7853b14b35f7733a4f91c8a /io_scene_gltf2/blender/exp/gltf2_blender_gather_primitives.py | |
parent | 6cef5e013e54da23990ebb26ef9bbc15f3977c8d (diff) |
glTF importer/exporter: fix for material_index/material slots
Diffstat (limited to 'io_scene_gltf2/blender/exp/gltf2_blender_gather_primitives.py')
-rwxr-xr-x | io_scene_gltf2/blender/exp/gltf2_blender_gather_primitives.py | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_primitives.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_primitives.py index a87a9db3..8678db83 100755 --- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_primitives.py +++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_primitives.py @@ -55,14 +55,17 @@ def gather_primitives( material = None if export_settings['gltf_materials'] == "EXPORT": - try: - blender_material = bpy.data.materials[material_names[material_idx]] - material = gltf2_blender_gather_materials.gather_material(blender_material, - export_settings) - except IndexError: - # no material at that index - pass - + blender_material = None + if material_names: + i = material_idx if material_idx < len(material_names) else -1 + material_name = material_names[i] + if material_name is not None: + blender_material = bpy.data.materials[material_name] + if blender_material is not None: + material = gltf2_blender_gather_materials.gather_material( + blender_material, + export_settings, + ) primitive = gltf2_io.MeshPrimitive( attributes=internal_primitive['attributes'], |