diff --git a/source/Irrlicht/CGLTFMeshFileLoader.cpp b/source/Irrlicht/CGLTFMeshFileLoader.cpp index a3da812a..5964d685 100644 --- a/source/Irrlicht/CGLTFMeshFileLoader.cpp +++ b/source/Irrlicht/CGLTFMeshFileLoader.cpp @@ -19,6 +19,7 @@ #include #include #include +#include #include // A helper function to disable tinygltf embedded image loading @@ -106,7 +107,7 @@ IAnimatedMesh* CGLTFMeshFileLoader::createMesh(io::IReadFile* file) std::vector indicesBuffer(model.accessors[ indicesAccessorId].count); - ModelParser parser(model); + ModelParser parser(std::move(model)); parser.getIndices(indicesAccessorId, indicesBuffer); parser.getVertices(positionAccessorId, @@ -141,6 +142,12 @@ CGLTFMeshFileLoader::ModelParser::ModelParser( { } +CGLTFMeshFileLoader::ModelParser::ModelParser( + const tinygltf::Model&& model) + : m_model(model) +{ +} + void CGLTFMeshFileLoader::ModelParser::getIndices( const std::size_t accessorId, std::vector& outIndices) const diff --git a/source/Irrlicht/CGLTFMeshFileLoader.h b/source/Irrlicht/CGLTFMeshFileLoader.h index dd56416c..968a7603 100644 --- a/source/Irrlicht/CGLTFMeshFileLoader.h +++ b/source/Irrlicht/CGLTFMeshFileLoader.h @@ -58,6 +58,8 @@ private: public: ModelParser(const tinygltf::Model& model); + ModelParser(const tinygltf::Model&& model); + void getIndices(const std::size_t accessorId, std::vector& outIndices) const;