Fixed SkeletalModel registering itself for update multiple times
Former-commit-id: 9c7ff03a70b65c2ace3b7929b78f486621797dd4
This commit is contained in:
@@ -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,8 +319,7 @@ NzSkeletalModel& NzSkeletalModel::operator=(NzSkeletalModel&& node)
|
|||||||
|
|
||||||
void NzSkeletalModel::Register()
|
void NzSkeletalModel::Register()
|
||||||
{
|
{
|
||||||
if (m_animation)
|
m_scene->RegisterForUpdate(this);
|
||||||
m_scene->RegisterForUpdate(this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void NzSkeletalModel::Unregister()
|
void NzSkeletalModel::Unregister()
|
||||||
|
|||||||
Reference in New Issue
Block a user