fix 0 size vulkan index buffers
This commit is contained in:
@@ -152,8 +152,9 @@ namespace OpenVulkano::Vulkan
|
||||
{
|
||||
ManagedBuffer::Ptr vertexBuffer =
|
||||
CreateDeviceOnlyBufferWithData(sizeof(Vertex) * geometry->GetVertexCount(), vk::BufferUsageFlagBits::eVertexBuffer, geometry->GetVertices());
|
||||
ManagedBuffer::Ptr indexBuffer =
|
||||
CreateDeviceOnlyBufferWithData(Utils::EnumAsInt(geometry->indexType) * geometry->GetIndexCount(), vk::BufferUsageFlagBits::eIndexBuffer, geometry->GetIndices());
|
||||
ManagedBuffer::Ptr indexBuffer;
|
||||
if (geometry->GetIndexCount())
|
||||
indexBuffer = CreateDeviceOnlyBufferWithData(Utils::EnumAsInt(geometry->indexType) * geometry->GetIndexCount(), vk::BufferUsageFlagBits::eIndexBuffer, geometry->GetIndices());
|
||||
VulkanGeometry* vkGeo = new VulkanGeometry(geometry, vertexBuffer, indexBuffer);
|
||||
geometries.emplace_back(vkGeo);
|
||||
geometry->renderGeo = vkGeo;
|
||||
|
||||
@@ -47,7 +47,7 @@ namespace OpenVulkano::Vulkan
|
||||
void RecordBind(vk::CommandBuffer& cmdBuffer)
|
||||
{
|
||||
cmdBuffer.bindVertexBuffers(0, 1, &m_vertexBuffer->buffer, &m_offsets);
|
||||
cmdBuffer.bindIndexBuffer(m_indexBuffer->buffer, 0, m_indexType);
|
||||
if (m_indexBuffer) { cmdBuffer.bindIndexBuffer(m_indexBuffer->buffer, 0, m_indexType); }
|
||||
}
|
||||
|
||||
void RecordDraw(vk::CommandBuffer& cmdBuffer)
|
||||
|
||||
Reference in New Issue
Block a user