diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2017-01-29 09:13:56 +0100 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2017-01-29 18:56:11 +0000 |
commit | 89766b24b5f071eaf390eadce6ba635d423201e1 (patch) | |
tree | b231e02518c4dce3f4e73eafaa5e4a5a242b3e5d /src/animation/backend/handler_p.h | |
parent | d555d63084ac13866a78772b43b4ac6b6d9bed9b (diff) |
Build blend trees and execute them
Also added loops property to the blendedclipanimator as mandated by rebase.
Note: only handles LERP with single node for now
Change-Id: I91e071467c604279262ec04288bc7f8b2b19f4a1
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/animation/backend/handler_p.h')
-rw-r--r-- | src/animation/backend/handler_p.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/animation/backend/handler_p.h b/src/animation/backend/handler_p.h index a2f5daa8f..3abaae215 100644 --- a/src/animation/backend/handler_p.h +++ b/src/animation/backend/handler_p.h @@ -50,6 +50,8 @@ #include <QtGlobal> #include <Qt3DAnimation/private/handle_types_p.h> +#include <Qt3DAnimation/private/buildblendtreesjob_p.h> +#include <Qt3DAnimation/private/evaluateblendclipanimatorjob_p.h> #include <Qt3DCore/qaspectjob.h> #include <Qt3DCore/qnodeid.h> #include <QtCore/qscopedpointer.h> @@ -90,7 +92,8 @@ public: enum DirtyFlag { AnimationClipDirty, ChannelMappingsDirty, - ClipAnimatorDirty + ClipAnimatorDirty, + BlendedClipAnimatorDirty }; qint64 simulationTime() const { return m_simulationTime; } @@ -100,6 +103,9 @@ public: void setClipAnimatorRunning(const HClipAnimator &handle, bool running); QVector<HClipAnimator> runningClipAnimators() const { return m_runningClipAnimators; } + void setBlendedClipAnimatorRunning(const HBlendedClipAnimator &handle, bool running); + QVector<HBlendedClipAnimator> runningBlenndedClipAnimators() const { return m_runningBlendedClipAnimators; } + AnimationClipManager *animationClipManager() const Q_DECL_NOTHROW { return m_animationClipManager.data(); } ClipAnimatorManager *clipAnimatorManager() const Q_DECL_NOTHROW { return m_clipAnimatorManager.data(); } BlendedClipAnimatorManager *blendedClipAnimatorManager() const Q_DECL_NOTHROW { return m_blendedClipAnimatorManager.data(); } @@ -122,12 +128,16 @@ private: QVector<HAnimationClip> m_dirtyAnimationClips; QVector<HChannelMapper> m_dirtyChannelMappers; QVector<HClipAnimator> m_dirtyClipAnimators; + QVector<HBlendedClipAnimator> m_dirtyBlendedAnimators; QVector<HClipAnimator> m_runningClipAnimators; + QVector<HBlendedClipAnimator> m_runningBlendedClipAnimators; QSharedPointer<LoadAnimationClipJob> m_loadAnimationClipJob; QSharedPointer<FindRunningClipAnimatorsJob> m_findRunningClipAnimatorsJob; QVector<QSharedPointer<EvaluateClipAnimatorJob>> m_evaluateClipAnimatorJobs; + QVector<EvaluateBlendClipAnimatorJobPtr> m_evaluateBlendClipAnimatorJobs; + BuildBlendTreesJobPtr m_buildBlendTreesJob; qint64 m_simulationTime; |