Fixed SkeletalModel registering itself for update multiple times

Former-commit-id: 9c7ff03a70b65c2ace3b7929b78f486621797dd4
This commit is contained in:
Lynix 2015-01-24 17:50:48 +01:00
parent d0bd62705b
commit 722622ded1
1 changed files with 2 additions and 11 deletions

View File

@ -43,7 +43,7 @@ m_nextFrame(model.m_nextFrame)
NzSkeletalModel::~NzSkeletalModel() NzSkeletalModel::~NzSkeletalModel()
{ {
Reset(); m_scene->UnregisterForUpdate(this);
} }
void NzSkeletalModel::AddToRenderQueue(NzAbstractRenderQueue* renderQueue) const void NzSkeletalModel::AddToRenderQueue(NzAbstractRenderQueue* renderQueue) const
@ -168,9 +168,6 @@ void NzSkeletalModel::Reset()
NzModel::Reset(); NzModel::Reset();
m_skeleton.Destroy(); m_skeleton.Destroy();
if (m_scene)
m_scene->UnregisterForUpdate(this);
} }
bool NzSkeletalModel::SetAnimation(NzAnimation* animation) bool NzSkeletalModel::SetAnimation(NzAnimation* animation)
@ -211,12 +208,7 @@ bool NzSkeletalModel::SetAnimation(NzAnimation* animation)
m_interpolation = 0.f; m_interpolation = 0.f;
SetSequence(0); SetSequence(0);
if (m_scene)
m_scene->RegisterForUpdate(this);
} }
else if (m_scene)
m_scene->UnregisterForUpdate(this);
return true; return true;
} }
@ -327,7 +319,6 @@ NzSkeletalModel& NzSkeletalModel::operator=(NzSkeletalModel&& node)
void NzSkeletalModel::Register() void NzSkeletalModel::Register()
{ {
if (m_animation)
m_scene->RegisterForUpdate(this); m_scene->RegisterForUpdate(this);
} }