diff options
Diffstat (limited to 'io_scene_gltf2/__init__.py')
-rwxr-xr-x | io_scene_gltf2/__init__.py | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py index 4e105b69..6b4a88d0 100755 --- a/io_scene_gltf2/__init__.py +++ b/io_scene_gltf2/__init__.py @@ -15,7 +15,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": (1, 4, 36), + "version": (1, 4, 37), 'blender': (2, 91, 0), 'location': 'File > Import-Export', 'description': 'Import-Export as glTF 2.0', @@ -994,26 +994,28 @@ class ImportGLTF2(Operator, ImportHelper): def unit_import(self, filename, import_settings): import time - from .io.imp.gltf2_io_gltf import glTFImporter + from .io.imp.gltf2_io_gltf import glTFImporter, ImportError from .blender.imp.gltf2_blender_gltf import BlenderGlTF - self.gltf_importer = glTFImporter(filename, import_settings) - success, txt = self.gltf_importer.read() - if not success: - self.report({'ERROR'}, txt) - return {'CANCELLED'} - success, txt = self.gltf_importer.checks() - if not success: - self.report({'ERROR'}, txt) + try: + gltf_importer = glTFImporter(filename, import_settings) + gltf_importer.read() + gltf_importer.checks() + + print("Data are loaded, start creating Blender stuff") + + start_time = time.time() + BlenderGlTF.create(gltf_importer) + elapsed_s = "{:.2f}s".format(time.time() - start_time) + print("glTF import finished in " + elapsed_s) + + gltf_importer.log.removeHandler(gltf_importer.log_handler) + + return {'FINISHED'} + + except ImportError as e: + self.report({'ERROR'}, e.args[0]) return {'CANCELLED'} - print("Data are loaded, start creating Blender stuff") - start_time = time.time() - BlenderGlTF.create(self.gltf_importer) - elapsed_s = "{:.2f}s".format(time.time() - start_time) - print("glTF import finished in " + elapsed_s) - self.gltf_importer.log.removeHandler(self.gltf_importer.log_handler) - - return {'FINISHED'} def set_debug_log(self): import logging |