From adf10c631570801e5434b29b1cc5f691d37db6da Mon Sep 17 00:00:00 2001 From: Julien Duroure <julien.duroure@gmail.com> Date: Fri, 22 Apr 2022 21:17:52 +0200 Subject: [PATCH] glTF exporter: No texture export when original can't be retrieved --- io_scene_gltf2/__init__.py | 2 +- io_scene_gltf2/blender/exp/gltf2_blender_gather_image.py | 3 +++ io_scene_gltf2/blender/exp/gltf2_blender_gather_texture.py | 1 + 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py index 7585813a2..c57370e20 100755 --- a/io_scene_gltf2/__init__.py +++ b/io_scene_gltf2/__init__.py @@ -4,7 +4,7 @@ bl_info = { 'name': 'glTF 2.0 format', 'author': 'Julien Duroure, Scurest, Norbert Nopper, Urs Hanselmann, Moritz Becher, Benjamin Schmithüsen, Jim Eckerlein, and many external contributors', - "version": (3, 2, 28), + "version": (3, 2, 29), 'blender': (3, 1, 0), 'location': 'File > Import-Export', 'description': 'Import-Export as glTF 2.0', diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_image.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_image.py index 8e43c2c14..bc035f8d7 100755 --- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_image.py +++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_image.py @@ -36,6 +36,9 @@ def gather_image( else: # Retrieve URI relative to exported glTF files uri = __gather_original_uri(image_data.original.filepath, export_settings) + # In case we can't retrieve image (for example packed images, with original moved) + # We don't create invalid image without uri + if uri is None: return None buffer_view = __gather_buffer_view(image_data, mime_type, name, export_settings) diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_texture.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_texture.py index 0761b19c0..e8c6baf18 100755 --- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_texture.py +++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_texture.py @@ -37,6 +37,7 @@ def gather_texture( ) # although valid, most viewers can't handle missing source properties + # This can have None source for "keep original", when original can't be found if texture.source is None: return None -- GitLab