From 8c9c069a5ce25d54f229f162234bddd5ed7006f9 Mon Sep 17 00:00:00 2001 From: Ryan Huffman Date: Tue, 21 Nov 2017 11:50:46 -0800 Subject: [PATCH] Update OBJ/FBX bakers to inherit parent ctor --- libraries/baking/src/FBXBaker.cpp | 7 ------- libraries/baking/src/FBXBaker.h | 3 +-- libraries/baking/src/ModelBaker.h | 8 ++++---- libraries/baking/src/OBJBaker.cpp | 7 ------- libraries/baking/src/OBJBaker.h | 13 +++++-------- 5 files changed, 10 insertions(+), 28 deletions(-) diff --git a/libraries/baking/src/FBXBaker.cpp b/libraries/baking/src/FBXBaker.cpp index f7b6511d8f..26b927452e 100644 --- a/libraries/baking/src/FBXBaker.cpp +++ b/libraries/baking/src/FBXBaker.cpp @@ -33,13 +33,6 @@ #include "FBXBaker.h" -FBXBaker::FBXBaker(const QUrl& fbxURL, TextureBakerThreadGetter textureThreadGetter, - const QString& bakedOutputDir, const QString& originalOutputDir) : - ModelBaker(fbxURL, textureThreadGetter, bakedOutputDir, originalOutputDir) -{ - -} - void FBXBaker::bake() { qDebug() << "FBXBaker" << _modelURL << "bake starting"; diff --git a/libraries/baking/src/FBXBaker.h b/libraries/baking/src/FBXBaker.h index 31bbd7ba0d..0a3b80fde9 100644 --- a/libraries/baking/src/FBXBaker.h +++ b/libraries/baking/src/FBXBaker.h @@ -33,8 +33,7 @@ using TextureBakerThreadGetter = std::function; class FBXBaker : public ModelBaker { Q_OBJECT public: - FBXBaker(const QUrl& fbxURL, TextureBakerThreadGetter textureThreadGetter, - const QString& bakedOutputDir, const QString& originalOutputDir = ""); + using ModelBaker::ModelBaker; QUrl getFBXUrl() const { return _modelURL; } QString getBakedFBXFilePath() const { return _bakedModelFilePath; } diff --git a/libraries/baking/src/ModelBaker.h b/libraries/baking/src/ModelBaker.h index 3133e962ec..5949e12774 100644 --- a/libraries/baking/src/ModelBaker.h +++ b/libraries/baking/src/ModelBaker.h @@ -35,12 +35,15 @@ class ModelBaker : public Baker { public: ModelBaker(const QUrl& inputModelURL, TextureBakerThreadGetter inputTextureThreadGetter, - const QString& bakedOutputDirectory, const QString& originalOutputDirectory); + const QString& bakedOutputDirectory, const QString& originalOutputDirectory = ""); virtual ~ModelBaker(); bool compressMesh(FBXMesh& mesh, bool hasDeformers, FBXNode& dracoMeshNode, getMaterialIDCallback materialIDCallback = NULL); QByteArray* compressTexture(QString textureFileName, getTextureTypeCallback textureTypeCallback = NULL); virtual void setWasAborted(bool wasAborted) override; +public slots: + virtual void abort() override; + protected: void checkIfTexturesFinished(); @@ -52,9 +55,6 @@ protected: QDir _modelTempDir; QString _originalModelFilePath; -public slots: - virtual void abort() override; - private slots: void handleBakedTexture(); void handleAbortedTexture(); diff --git a/libraries/baking/src/OBJBaker.cpp b/libraries/baking/src/OBJBaker.cpp index 88d0c29c18..f84e2abd29 100644 --- a/libraries/baking/src/OBJBaker.cpp +++ b/libraries/baking/src/OBJBaker.cpp @@ -34,13 +34,6 @@ const QByteArray CONNECTIONS_NODE_PROPERTY = "OO"; const QByteArray CONNECTIONS_NODE_PROPERTY_1 = "OP"; const QByteArray MESH = "Mesh"; -OBJBaker::OBJBaker(const QUrl& objURL, TextureBakerThreadGetter textureThreadGetter, - const QString& bakedOutputDir, const QString& originalOutputDir) : - ModelBaker(objURL, textureThreadGetter, bakedOutputDir, originalOutputDir) -{ - -} - void OBJBaker::bake() { qDebug() << "OBJBaker" << _modelURL << "bake starting"; diff --git a/libraries/baking/src/OBJBaker.h b/libraries/baking/src/OBJBaker.h index a620afe148..4c41fb5db4 100644 --- a/libraries/baking/src/OBJBaker.h +++ b/libraries/baking/src/OBJBaker.h @@ -23,14 +23,7 @@ using TextureBakerThreadGetter = std::function; class OBJBaker : public ModelBaker { Q_OBJECT public: - OBJBaker(const QUrl& objURL, TextureBakerThreadGetter textureThreadGetter, - const QString& bakedOutputDir, const QString& originalOutputDir = ""); - void loadOBJ(); - void createFBXNodeTree(FBXNode& rootNode, FBXGeometry& geometry); - void setNodeProperties(FBXNode& parentNode); - void setMaterialNodeProperties(FBXNode& materialNode, QString material, FBXGeometry& geometry); - template - void setPropertiesList(std::vector& stringProperties, std::vector& numericProperties, QVariantList& propertiesList); + using ModelBaker::ModelBaker; public slots: virtual void bake() override; @@ -43,6 +36,10 @@ private slots: void handleOBJNetworkReply(); private: + void loadOBJ(); + void createFBXNodeTree(FBXNode& rootNode, FBXGeometry& geometry); + void setMaterialNodeProperties(FBXNode& materialNode, QString material, FBXGeometry& geometry); + qlonglong _nodeID = 0; qlonglong _geometryID; qlonglong _modelID;