video backend changes for custom meshes

This commit is contained in:
iwubcode 2024-02-02 17:30:53 -06:00
commit c64380a688
5 changed files with 5 additions and 0 deletions

View file

@ -213,6 +213,7 @@ void VertexManager::ResetBuffer(u32 vertex_stride)
m_cur_buffer_pointer = m_base_buffer_pointer; m_cur_buffer_pointer = m_base_buffer_pointer;
m_end_buffer_pointer = m_base_buffer_pointer + m_cpu_vertex_buffer.size(); m_end_buffer_pointer = m_base_buffer_pointer + m_cpu_vertex_buffer.size();
m_index_generator.Start(m_cpu_index_buffer.data()); m_index_generator.Start(m_cpu_index_buffer.data());
m_last_reset_pointer = m_cur_buffer_pointer;
} }
void VertexManager::CommitBuffer(u32 num_vertices, u32 vertex_stride, u32 num_indices, void VertexManager::CommitBuffer(u32 num_vertices, u32 vertex_stride, u32 num_indices,

View file

@ -111,6 +111,7 @@ void VertexManager::ResetBuffer(u32 vertex_stride)
m_end_buffer_pointer = m_vertex_stream_buffer.GetCurrentHostPointer() + MAXVBUFFERSIZE; m_end_buffer_pointer = m_vertex_stream_buffer.GetCurrentHostPointer() + MAXVBUFFERSIZE;
m_cur_buffer_pointer = m_vertex_stream_buffer.GetCurrentHostPointer(); m_cur_buffer_pointer = m_vertex_stream_buffer.GetCurrentHostPointer();
m_index_generator.Start(reinterpret_cast<u16*>(m_index_stream_buffer.GetCurrentHostPointer())); m_index_generator.Start(reinterpret_cast<u16*>(m_index_stream_buffer.GetCurrentHostPointer()));
m_last_reset_pointer = m_cur_buffer_pointer;
} }
void VertexManager::CommitBuffer(u32 num_vertices, u32 vertex_stride, u32 num_indices, void VertexManager::CommitBuffer(u32 num_vertices, u32 vertex_stride, u32 num_indices,

View file

@ -67,6 +67,7 @@ void Metal::VertexManager::ResetBuffer(u32 vertex_stride)
m_vertex_offset = m_base_vertex * vertex_stride - vertex.second; m_vertex_offset = m_base_vertex * vertex_stride - vertex.second;
m_cur_buffer_pointer = m_base_buffer_pointer = static_cast<u8*>(vertex.first) + m_vertex_offset; m_cur_buffer_pointer = m_base_buffer_pointer = static_cast<u8*>(vertex.first) + m_vertex_offset;
m_end_buffer_pointer = m_base_buffer_pointer + max_vertex_size; m_end_buffer_pointer = m_base_buffer_pointer + max_vertex_size;
m_last_reset_pointer = m_cur_buffer_pointer;
m_index_generator.Start(static_cast<u16*>(index.first)); m_index_generator.Start(static_cast<u16*>(index.first));
} }

View file

@ -166,6 +166,7 @@ void VertexManager::ResetBuffer(u32 vertex_stride)
auto buffer = m_vertex_buffer->Map(MAXVBUFFERSIZE, vertex_stride); auto buffer = m_vertex_buffer->Map(MAXVBUFFERSIZE, vertex_stride);
m_cur_buffer_pointer = m_base_buffer_pointer = buffer.first; m_cur_buffer_pointer = m_base_buffer_pointer = buffer.first;
m_end_buffer_pointer = buffer.first + MAXVBUFFERSIZE; m_end_buffer_pointer = buffer.first + MAXVBUFFERSIZE;
m_last_reset_pointer = m_cur_buffer_pointer;
buffer = m_index_buffer->Map(MAXIBUFFERSIZE * sizeof(u16)); buffer = m_index_buffer->Map(MAXIBUFFERSIZE * sizeof(u16));
m_index_generator.Start(reinterpret_cast<u16*>(buffer.first)); m_index_generator.Start(reinterpret_cast<u16*>(buffer.first));

View file

@ -171,6 +171,7 @@ void VertexManager::ResetBuffer(u32 vertex_stride)
m_end_buffer_pointer = m_vertex_stream_buffer->GetCurrentHostPointer() + MAXVBUFFERSIZE; m_end_buffer_pointer = m_vertex_stream_buffer->GetCurrentHostPointer() + MAXVBUFFERSIZE;
m_cur_buffer_pointer = m_vertex_stream_buffer->GetCurrentHostPointer(); m_cur_buffer_pointer = m_vertex_stream_buffer->GetCurrentHostPointer();
m_index_generator.Start(reinterpret_cast<u16*>(m_index_stream_buffer->GetCurrentHostPointer())); m_index_generator.Start(reinterpret_cast<u16*>(m_index_stream_buffer->GetCurrentHostPointer()));
m_last_reset_pointer = m_cur_buffer_pointer;
} }
void VertexManager::CommitBuffer(u32 num_vertices, u32 vertex_stride, u32 num_indices, void VertexManager::CommitBuffer(u32 num_vertices, u32 vertex_stride, u32 num_indices,