summaryrefslogtreecommitdiffstats
path: root/src/plugins/sceneparsers/assimp/assimpparser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/sceneparsers/assimp/assimpparser.cpp')
-rw-r--r--src/plugins/sceneparsers/assimp/assimpparser.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/plugins/sceneparsers/assimp/assimpparser.cpp b/src/plugins/sceneparsers/assimp/assimpparser.cpp
index 4c98e8c1e..6955bfc47 100644
--- a/src/plugins/sceneparsers/assimp/assimpparser.cpp
+++ b/src/plugins/sceneparsers/assimp/assimpparser.cpp
@@ -415,7 +415,8 @@ Qt3DCore::QEntity *AssimpParser::node(aiNode *node)
// Add Transformations
const QMatrix4x4 qTransformMatrix = aiMatrix4x4ToQMatrix4x4(node->mTransformation);
- Qt3DCore::QTransform *transform = new Qt3DCore::QTransform(new QMatrixTransform(qTransformMatrix));
+ Qt3DCore::QTransform *transform = new Qt3DCore::QTransform;
+ transform->setMatrix(qTransformMatrix);
entityNode->addComponent(transform);
// Add Camera
@@ -724,12 +725,12 @@ void AssimpParser::loadCamera(uint cameraIndex)
assimpCamera->mClipPlaneFar);
camera->addComponent(lens);
+ QMatrix4x4 m;
+ m.lookAt(QVector3D(assimpCamera->mPosition.x, assimpCamera->mPosition.y, assimpCamera->mPosition.z),
+ QVector3D(assimpCamera->mLookAt.x, assimpCamera->mLookAt.y, assimpCamera->mLookAt.z),
+ QVector3D(assimpCamera->mUp.x, assimpCamera->mUp.y, assimpCamera->mUp.z));
Qt3DCore::QTransform *transform = new Qt3DCore::QTransform();
- QLookAtTransform *lookAt = new QLookAtTransform();
- lookAt->setPosition(QVector3D(assimpCamera->mPosition.x, assimpCamera->mPosition.y, assimpCamera->mPosition.z));
- lookAt->setViewCenter(QVector3D(assimpCamera->mLookAt.x, assimpCamera->mLookAt.y, assimpCamera->mLookAt.z));
- lookAt->setUpVector(QVector3D(assimpCamera->mUp.x, assimpCamera->mUp.y, assimpCamera->mUp.z));
- transform->addTransform(lookAt);
+ transform->setMatrix(m);
camera->addComponent(transform);
m_scene->m_cameras[cameraNode] = camera;