diff --git a/code/BlenderLoader.cpp b/code/BlenderLoader.cpp index 6d4c97cbf..824954f56 100644 --- a/code/BlenderLoader.cpp +++ b/code/BlenderLoader.cpp @@ -1148,7 +1148,7 @@ void BlenderImporter::ConvertMesh(const Scene& /*in*/, const Object* /*obj*/, co // ------------------------------------------------------------------------------------------------ aiCamera* BlenderImporter::ConvertCamera(const Scene& /*in*/, const Object* obj, const Camera* cam, ConversionData& /*conv_data*/) { - ScopeGuard out(new aiCamera()); + std::unique_ptr out(new aiCamera()); out->mName = obj->id.name+2; out->mPosition = aiVector3D(0.f, 0.f, 0.f); out->mUp = aiVector3D(0.f, 1.f, 0.f); @@ -1159,13 +1159,13 @@ aiCamera* BlenderImporter::ConvertCamera(const Scene& /*in*/, const Object* obj, out->mClipPlaneNear = cam->clipsta; out->mClipPlaneFar = cam->clipend; - return out.dismiss(); + return out.release(); } // ------------------------------------------------------------------------------------------------ aiLight* BlenderImporter::ConvertLight(const Scene& /*in*/, const Object* obj, const Lamp* lamp, ConversionData& /*conv_data*/) { - ScopeGuard out(new aiLight()); + std::unique_ptr out(new aiLight()); out->mName = obj->id.name+2; switch (lamp->type) @@ -1203,7 +1203,7 @@ aiLight* BlenderImporter::ConvertLight(const Scene& /*in*/, const Object* obj, c out->mColorAmbient = aiColor3D(lamp->r, lamp->g, lamp->b) * lamp->energy; out->mColorSpecular = aiColor3D(lamp->r, lamp->g, lamp->b) * lamp->energy; out->mColorDiffuse = aiColor3D(lamp->r, lamp->g, lamp->b) * lamp->energy; - return out.dismiss(); + return out.release(); } // ------------------------------------------------------------------------------------------------ @@ -1221,7 +1221,7 @@ aiNode* BlenderImporter::ConvertNode(const Scene& in, const Object* obj, Convers ++it; } - ScopeGuard node(new aiNode(obj->id.name+2)); // skip over the name prefix 'OB' + std::unique_ptr node(new aiNode(obj->id.name+2)); // skip over the name prefix 'OB' if (obj->data) { switch (obj->type) { @@ -1305,14 +1305,14 @@ aiNode* BlenderImporter::ConvertNode(const Scene& in, const Object* obj, Convers aiNode** nd = node->mChildren = new aiNode*[node->mNumChildren](); for (const Object* nobj :children) { *nd = ConvertNode(in,nobj,conv_data,node->mTransformation * parentTransform); - (*nd++)->mParent = node; + (*nd++)->mParent = node.get(); } } // apply modifiers modifier_cache->ApplyModifiers(*node,conv_data,in,*obj); - return node.dismiss(); + return node.release(); } #endif // ASSIMP_BUILD_NO_BLEND_IMPORTER