diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2019-12-18 14:30:44 +0100 |
---|---|---|
committer | Paul Lemire <paul.lemire@kdab.com> | 2019-12-19 08:00:06 +0100 |
commit | 56009681f926a3e27258c4355c5d52e9f776d508 (patch) | |
tree | 28b2624acf1012111e68e25e5b0cb401e06a8517 | |
parent | 14e071172ef59d1acfced46a284a8981249caf0b (diff) |
Update Blender exporters to work with Blender 2.80+
Change-Id: Icc688bf31d0ed5b2759ff6be8a667e64eb0085bf
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r-- | tools/utils/exporters/blender/qt3d_animation_export.py | 14 | ||||
-rw-r--r-- | tools/utils/exporters/blender/qt3d_armature_export.py | 17 | ||||
-rw-r--r-- | tools/utils/exporters/blender/qt3d_path_export.py | 19 |
3 files changed, 37 insertions, 13 deletions
diff --git a/tools/utils/exporters/blender/qt3d_animation_export.py b/tools/utils/exporters/blender/qt3d_animation_export.py index b1987ea95..1e2909c1a 100644 --- a/tools/utils/exporters/blender/qt3d_animation_export.py +++ b/tools/utils/exporters/blender/qt3d_animation_export.py @@ -41,8 +41,8 @@ bl_info = { "name": "Qt3D Animation Exporter", "author": "Sean Harmer <sean.harmer@kdab.com>, Paul Lemire <paul.lemire@kdab.com>", - "version": (0, 4), - "blender": (2, 72, 0), + "version": (0, 5), + "blender": (2, 80, 0), "location": "File > Export > Qt3D Animation (.json)", "description": "Export animations to json to use with Qt3D", "warning": "", @@ -426,11 +426,17 @@ def createBlenderMenu(self, context): # Register against Blender def register(): bpy.utils.register_class(Qt3DExporter) - bpy.types.INFO_MT_file_export.append(createBlenderMenu) + if bpy.app.version < (2, 80, 0): + bpy.types.INFO_MT_file_export.append(createBlenderMenu) + else: + bpy.types.TOPBAR_MT_file_export.append(createBlenderMenu) def unregister(): bpy.utils.unregister_class(Qt3DExporter) - bpy.types.INFO_MT_file_export.remove(createBlenderMenu) + if bpy.app.version < (2, 80, 0): + bpy.types.INFO_MT_file_export.remove(createBlenderMenu) + else: + bpy.types.TOPBAR_MT_file_export.remove(createBlenderMenu) # Handle running the script from Blender's text editor. if (__name__ == "__main__"): diff --git a/tools/utils/exporters/blender/qt3d_armature_export.py b/tools/utils/exporters/blender/qt3d_armature_export.py index de5583220..cea28ad5e 100644 --- a/tools/utils/exporters/blender/qt3d_armature_export.py +++ b/tools/utils/exporters/blender/qt3d_armature_export.py @@ -41,8 +41,8 @@ bl_info = { "name": "Qt3D Armature Exporter", "author": "Sean Harmer <sean.harmer@kdab.com>, Robert Brock <robert.brock@kdab.com>", - "version": (0, 1), - "blender": (2, 78, 0), + "version": (0, 2), + "blender": (2, 80, 0), "location": "File > Export > Qt3D Armature Exporter (.json)", "description": "Export Armature to json to use with Qt3D", "warning": "", @@ -75,6 +75,9 @@ def jsonBuilder(): ob = bpy.context.object.data + if not hasattr(ob, 'bones'): + return bonesList + for bone in ob.bones: #check parent exists @@ -146,11 +149,17 @@ def createBlenderMenu(self, context): # Register against Blender def register(): bpy.utils.register_class(Qt3DArmatureExporter) - bpy.types.INFO_MT_file_export.append(createBlenderMenu) + if bpy.app.version < (2, 80, 0): + bpy.types.INFO_MT_file_export.append(createBlenderMenu) + else: + bpy.types.TOPBAR_MT_file_export.append(createBlenderMenu) def unregister(): bpy.utils.unregister_class(Qt3DArmatureExporter) - bpy.types.INFO_MT_file_export.remove(createBlenderMenu) + if bpy.app.version < (2, 80, 0): + bpy.types.INFO_MT_file_export.remove(createBlenderMenu) + else: + bpy.types.TOPBAR_MT_file_export.remove(createBlenderMenu) # Handle running the script from Blender's text editor. if (__name__ == "__main__"): diff --git a/tools/utils/exporters/blender/qt3d_path_export.py b/tools/utils/exporters/blender/qt3d_path_export.py index 7c42fac9a..edb1bc8fa 100644 --- a/tools/utils/exporters/blender/qt3d_path_export.py +++ b/tools/utils/exporters/blender/qt3d_path_export.py @@ -41,8 +41,8 @@ bl_info = { "name": "Qt3D Path Exporter", "author": "Sean Harmer <sean.harmer@kdab.com>, Robert Brock <robert.brock@kdab.com>", - "version": (0, 1), - "blender": (2, 78, 0), + "version": (0, 2), + "blender": (2, 80, 0), "location": "File > Export > Qt3D Path Exporter (.json)", "description": "Export path to json to use with Qt3D", "warning": "", @@ -73,6 +73,9 @@ def jsonBuilder(): obj = bpy.context.object curve = obj.data + if not hasattr(curve, 'splines'): + return pathList + spline = curve.splines.active for point in spline.points: @@ -93,7 +96,7 @@ class Qt3DPathDataConverter: return jsonData -class Qt3DTDPathExporter(bpy.types.Operator, ExportHelper): +class Qt3DPathExporter(bpy.types.Operator, ExportHelper): """Qt3D Exporter""" bl_idname = "export_scene.qt3d_td_path_exporter"; bl_label = "Qt3DPathExporter"; @@ -126,11 +129,17 @@ def createBlenderMenu(self, context): # Register against Blender def register(): bpy.utils.register_class(Qt3DPathExporter) - bpy.types.INFO_MT_file_export.append(createBlenderMenu) + if bpy.app.version < (2, 80, 0): + bpy.types.INFO_MT_file_export.append(createBlenderMenu) + else: + bpy.types.TOPBAR_MT_file_export.append(createBlenderMenu) def unregister(): bpy.utils.unregister_class(Qt3DPathExporter) - bpy.types.INFO_MT_file_export.remove(createBlenderMenu) + if bpy.app.version < (2, 80, 0): + bpy.types.INFO_MT_file_export.remove(createBlenderMenu) + else: + bpy.types.TOPBAR_MT_file_export.remove(createBlenderMenu) # Handle running the script from Blender's text editor. if (__name__ == "__main__"): |