diff options
author | Mike Krus <mike.krus@kdab.com> | 2020-02-07 18:08:29 +0000 |
---|---|---|
committer | Mike Krus <mike.krus@kdab.com> | 2020-02-07 18:10:43 +0000 |
commit | b0eb152b82cdd9658154ff7d9ef9e764eccc1ebd (patch) | |
tree | d754ad4412d5c1d26caedd54f2455f3e27cbbd46 /tools | |
parent | 137b0cbbc746eecc6dd6a93f9a268f8d42c96bcc (diff) | |
parent | fa6799f63f3211300705b814b97716ca689d4bfa (diff) |
Merge remote-tracking branch 5.15 into dev
Change-Id: I731aa986e1cc45b3af920db1a23f256927beecf7
Diffstat (limited to 'tools')
-rw-r--r-- | tools/qgltf/qgltf.cpp | 12 | ||||
-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 |
4 files changed, 48 insertions, 14 deletions
diff --git a/tools/qgltf/qgltf.cpp b/tools/qgltf/qgltf.cpp index 814ae7e27..71cdb6b5e 100644 --- a/tools/qgltf/qgltf.cpp +++ b/tools/qgltf/qgltf.cpp @@ -2449,10 +2449,16 @@ void GltfExporter::save(const QString &inputFilename) QString gltfName = opts.outDir + basename + QStringLiteral(".qgltf"); f.setFileName(gltfName); + if (opts.showLog) qDebug().noquote() << "Writing" << gltfName; - if (f.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Truncate)) { + const QIODevice::OpenMode openMode + = QIODevice::WriteOnly | QIODevice::Truncate | QIODevice::Text; + const QByteArray json + = m_doc.toJson(opts.compact ? QJsonDocument::Compact : QJsonDocument::Indented); + + if (f.open(openMode)) { m_files.insert(QFileInfo(f.fileName()).fileName()); QByteArray json = m_doc.toJson(opts.compact ? QJsonDocument::Compact : QJsonDocument::Indented); f.write(json); @@ -2499,6 +2505,10 @@ int main(int argc, char **argv) cmdLine.setApplicationDescription(QString::fromUtf8(description)); QCommandLineOption outDirOpt(QStringLiteral("d"), QStringLiteral("Place all output data into <dir>"), QStringLiteral("dir")); cmdLine.addOption(outDirOpt); +#ifndef QT_BOOTSTRAPPED + QCommandLineOption binOpt(QStringLiteral("b"), QStringLiteral("Store binary JSON data in the .qgltf file")); + cmdLine.addOption(binOpt); +#endif QCommandLineOption compactOpt(QStringLiteral("m"), QStringLiteral("Store compact JSON in the .qgltf file")); cmdLine.addOption(compactOpt); QCommandLineOption compOpt(QStringLiteral("c"), QStringLiteral("qCompress() vertex/index data in the .bin file")); 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__"): |