|
@@ -21,6 +21,12 @@ namespace CamelotFramework
|
|
|
mVertexDesc(vertexDesc), mBufferType(bufferType), mIndexType(indexType)
|
|
mVertexDesc(vertexDesc), mBufferType(bufferType), mIndexType(indexType)
|
|
|
{ }
|
|
{ }
|
|
|
|
|
|
|
|
|
|
+ Mesh::Mesh(UINT32 numVertices, UINT32 numIndices, const VertexDataDescPtr& vertexDesc,
|
|
|
|
|
+ const MeshDataPtr& initialMeshData, MeshBufferType bufferType, IndexBuffer::IndexType indexType)
|
|
|
|
|
+ :mVertexData(nullptr), mIndexData(nullptr), mNumVertices(numVertices), mNumIndices(numIndices),
|
|
|
|
|
+ mVertexDesc(vertexDesc), mBufferType(bufferType), mIndexType(indexType), mTempInitialMeshData(initialMeshData)
|
|
|
|
|
+ { }
|
|
|
|
|
+
|
|
|
Mesh::Mesh(const MeshDataPtr& initialMeshData, MeshBufferType bufferType)
|
|
Mesh::Mesh(const MeshDataPtr& initialMeshData, MeshBufferType bufferType)
|
|
|
:mVertexData(nullptr), mIndexData(nullptr), mNumVertices(initialMeshData->getNumVertices()),
|
|
:mVertexData(nullptr), mIndexData(nullptr), mNumVertices(initialMeshData->getNumVertices()),
|
|
|
mNumIndices(initialMeshData->getNumIndices()), mBufferType(bufferType), mIndexType(initialMeshData->getIndexType()),
|
|
mNumIndices(initialMeshData->getNumIndices()), mBufferType(bufferType), mIndexType(initialMeshData->getIndexType()),
|
|
@@ -347,6 +353,13 @@ namespace CamelotFramework
|
|
|
return static_resource_cast<Mesh>(Resource::_createResourceHandle(meshPtr));
|
|
return static_resource_cast<Mesh>(Resource::_createResourceHandle(meshPtr));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ HMesh Mesh::create(UINT32 numVertices, UINT32 numIndices, const VertexDataDescPtr& vertexDesc, const MeshDataPtr& initialMeshData, MeshBufferType bufferType, IndexBuffer::IndexType indexType)
|
|
|
|
|
+ {
|
|
|
|
|
+ MeshPtr meshPtr = MeshManager::instance().create(numVertices, numIndices, vertexDesc, initialMeshData, bufferType, indexType);
|
|
|
|
|
+
|
|
|
|
|
+ return static_resource_cast<Mesh>(Resource::_createResourceHandle(meshPtr));
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
HMesh Mesh::create(const MeshDataPtr& initialMeshData, MeshBufferType bufferType)
|
|
HMesh Mesh::create(const MeshDataPtr& initialMeshData, MeshBufferType bufferType)
|
|
|
{
|
|
{
|
|
|
MeshPtr meshPtr = MeshManager::instance().create(initialMeshData, bufferType);
|
|
MeshPtr meshPtr = MeshManager::instance().create(initialMeshData, bufferType);
|