Buffer::Unmap no longer return boolean

Made no sense: What do you want to do when your buffer doesn't unmap ?
Tt now throw a warning by itself in case of failure


Former-commit-id: f776af16787316bbe1d55686a1db2c2e0f79d210
This commit is contained in:
Lynix 2012-12-31 11:30:19 +01:00
parent c65f0e9f7e
commit 02f5385eaf
6 changed files with 11 additions and 18 deletions

View File

@ -50,7 +50,7 @@ class NAZARA_API NzBuffer : public NzResource, NzNonCopyable
bool SetStorage(nzBufferStorage storage); bool SetStorage(nzBufferStorage storage);
bool Unmap() const; void Unmap() const;
static bool IsSupported(nzBufferStorage storage); static bool IsSupported(nzBufferStorage storage);
static void SetBufferFunction(nzBufferStorage storage, BufferFunction func); static void SetBufferFunction(nzBufferStorage storage, BufferFunction func);

View File

@ -293,9 +293,7 @@ bool NzBuffer::SetStorage(nzBufferStorage storage)
{ {
NazaraError("Failed to create buffer"); NazaraError("Failed to create buffer");
delete impl; delete impl;
m_impl->Unmap();
if (!m_impl->Unmap())
NazaraWarning("Failed to unmap buffer");
return false; return false;
} }
@ -305,9 +303,7 @@ bool NzBuffer::SetStorage(nzBufferStorage storage)
NazaraError("Failed to fill buffer"); NazaraError("Failed to fill buffer");
impl->Destroy(); impl->Destroy();
delete impl; delete impl;
m_impl->Unmap();
if (!m_impl->Unmap())
NazaraWarning("Failed to unmap buffer");
return false; return false;
} }
@ -322,7 +318,7 @@ bool NzBuffer::SetStorage(nzBufferStorage storage)
return true; return true;
} }
bool NzBuffer::Unmap() const void NzBuffer::Unmap() const
{ {
#if NAZARA_UTILITY_SAFE #if NAZARA_UTILITY_SAFE
if (!m_impl) if (!m_impl)
@ -332,7 +328,8 @@ bool NzBuffer::Unmap() const
} }
#endif #endif
return m_impl->Unmap(); if (!m_impl->Unmap())
NazaraWarning("Failed to unmap buffer (it's content is undefined)"); ///TODO: Unexpected ?
} }
bool NzBuffer::IsSupported(nzBufferStorage storage) bool NzBuffer::IsSupported(nzBufferStorage storage)

View File

@ -371,7 +371,7 @@ void NzKeyframeMesh::InterpolateImpl(unsigned int frameA, unsigned int frameB, f
NzMeshVertex* vertex = reinterpret_cast<NzMeshVertex*>(m_impl->vertexBuffer->Map(nzBufferAccess_DiscardAndWrite)); NzMeshVertex* vertex = reinterpret_cast<NzMeshVertex*>(m_impl->vertexBuffer->Map(nzBufferAccess_DiscardAndWrite));
if (!vertex) if (!vertex)
{ {
NazaraError("Failed to lock vertex buffer"); NazaraError("Failed to map vertex buffer");
return; return;
} }

View File

@ -227,8 +227,7 @@ bool NzMD5MeshParser::Parse(NzMesh* mesh)
} }
} }
if (!indexBuffer->Unmap()) indexBuffer->Unmap();
NazaraWarning("Failed to unmap index buffer");
std::unique_ptr<NzVertexBuffer> vertexBuffer(new NzVertexBuffer(NzMesh::GetDeclaration(), vertexCount, m_parameters.storage, nzBufferUsage_Dynamic)); std::unique_ptr<NzVertexBuffer> vertexBuffer(new NzVertexBuffer(NzMesh::GetDeclaration(), vertexCount, m_parameters.storage, nzBufferUsage_Dynamic));
@ -399,8 +398,7 @@ bool NzMD5MeshParser::Parse(NzMesh* mesh)
vertex++; vertex++;
} }
if (!vertexBuffer->Unmap()) vertexBuffer->Unmap();
NazaraWarning("Failed to unmap vertex buffer");
// Submesh // Submesh
std::unique_ptr<NzStaticMesh> subMesh(new NzStaticMesh(mesh)); std::unique_ptr<NzStaticMesh> subMesh(new NzStaticMesh(mesh));

View File

@ -314,8 +314,7 @@ void NzSkeletalMesh::Skin(const NzSkeleton* skeleton) const
outputVertex++; outputVertex++;
} }
if (!m_impl->vertexBuffer->Unmap()) m_impl->vertexBuffer->Unmap();
NazaraWarning("Failed to unmap vertex buffer");
m_impl->aabb = skeleton->GetAABB(); m_impl->aabb = skeleton->GetAABB();
} }

View File

@ -79,8 +79,7 @@ bool NzStaticMesh::GenerateAABB()
vertex++; vertex++;
} }
if (!m_vertexBuffer->Unmap()) m_vertexBuffer->Unmap();
NazaraWarning("Failed to unmap vertex buffer");
return true; return true;
} }