diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2018-06-08 08:48:26 +0200 |
---|---|---|
committer | Jani Heikkinen <jani.heikkinen@qt.io> | 2018-06-11 07:47:53 +0000 |
commit | 2436ad6efb5bd9f96cc0256f009a33692ebac100 (patch) | |
tree | fe58324692b130854df66eaf1ad580b0f3fa0dd5 | |
parent | 26d3b64ac721c8fb87dcb2da91bd63bb571006ed (diff) |
QRenderAspect: properly register functor for QAbstractSkeleton
QSkeletonLoader had been registered by mistake instead of
QAbstractSkeleton. This lead to a failure to create the backend node for a
QAbstractSkeleton in the case where one would use a QSkeleton instead of a
QSkeletonLoader.
Also properly unregister QArmature, QJoint and QAbstractSkeleton
Task-number: QTBUG-68781
Change-Id: I72f4debc406548b249ba4adc46d6028d469a6b22
Reviewed-by: Mike Krus <mike.krus@kdab.com>
-rw-r--r-- | src/render/frontend/qrenderaspect.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/render/frontend/qrenderaspect.cpp b/src/render/frontend/qrenderaspect.cpp index 04ddfdd46..3590dd44e 100644 --- a/src/render/frontend/qrenderaspect.cpp +++ b/src/render/frontend/qrenderaspect.cpp @@ -249,7 +249,7 @@ void QRenderAspectPrivate::registerBackendTypes() q->registerBackendType<QGeometry>(QSharedPointer<Render::NodeFunctor<Render::Geometry, Render::GeometryManager> >::create(m_renderer)); q->registerBackendType<QGeometryRenderer>(QSharedPointer<Render::GeometryRendererFunctor>::create(m_renderer, m_nodeManagers->geometryRendererManager())); q->registerBackendType<Qt3DCore::QArmature>(QSharedPointer<Render::NodeFunctor<Render::Armature, Render::ArmatureManager>>::create(m_renderer)); - q->registerBackendType<Qt3DCore::QSkeletonLoader>(QSharedPointer<Render::SkeletonFunctor>::create(m_renderer, m_nodeManagers->skeletonManager(), m_nodeManagers->jointManager())); + q->registerBackendType<Qt3DCore::QAbstractSkeleton>(QSharedPointer<Render::SkeletonFunctor>::create(m_renderer, m_nodeManagers->skeletonManager(), m_nodeManagers->jointManager())); q->registerBackendType<Qt3DCore::QJoint>(QSharedPointer<Render::JointFunctor>::create(m_renderer, m_nodeManagers->jointManager(), m_nodeManagers->skeletonManager())); // Textures @@ -324,6 +324,9 @@ void QRenderAspectPrivate::unregisterBackendTypes() unregisterBackendType<QComputeCommand>(); unregisterBackendType<QGeometry>(); unregisterBackendType<QGeometryRenderer>(); + unregisterBackendType<Qt3DCore::QArmature>(); + unregisterBackendType<Qt3DCore::QAbstractSkeleton>(); + unregisterBackendType<Qt3DCore::QJoint>(); // Textures unregisterBackendType<QAbstractTexture>(); |