SubMeshs are now valid even when not animated

Former-commit-id: 5bd6289d30f4f6ffa1fcaf8d946aa9aba9cf7131
This commit is contained in:
Lynix
2012-12-03 16:24:47 +01:00
parent 817119933c
commit 2e40ad832e
6 changed files with 27 additions and 0 deletions

View File

@@ -73,6 +73,7 @@ bool NzMesh::AddSubMesh(NzSubMesh* subMesh)
#endif
subMesh->AddResourceListener(this, m_impl->subMeshes.size());
subMesh->Finish();
m_impl->aabb.SetNull(); // On invalide l'AABB
m_impl->subMeshes.push_back(subMesh);
@@ -118,6 +119,7 @@ bool NzMesh::AddSubMesh(const NzString& identifier, NzSubMesh* subMesh)
int index = m_impl->subMeshes.size();
subMesh->AddResourceListener(this, index);
subMesh->Finish();
m_impl->aabb.SetNull(); // On invalide l'AABB
m_impl->subMeshes.push_back(subMesh);

View File

@@ -76,6 +76,19 @@ void NzSkeletalMesh::Destroy()
}
}
void NzSkeletalMesh::Finish()
{
#if NAZARA_UTILITY_SAFE
if (!m_impl)
{
NazaraError("Skeletal mesh not created");
return;
}
#endif
Skin();
}
const NzAxisAlignedBox& NzSkeletalMesh::GetAABB() const
{
#if NAZARA_UTILITY_SAFE

View File

@@ -53,6 +53,12 @@ void NzStaticMesh::Destroy()
}
}
void NzStaticMesh::Finish()
{
// La seule chose à faire ici est de calculer l'AABB
GenerateAABB();
}
bool NzStaticMesh::GenerateAABB()
{
if (!m_aabb.IsNull())