feat(render): preserve original mesh batch draws
Docs Deploy / Build and Deploy MkDocs (push) Successful in 35s
Test / Lint (push) Failing after 2m7s
Test / Test (push) Skipped
Test / Render parity (push) Skipped

This commit is contained in:
2026-07-18 07:56:49 +04:00
parent 116e7716b9
commit b915554f3c
7 changed files with 80 additions and 11 deletions
@@ -211,7 +211,7 @@ impl VulkanSmokeRenderer {
vertex_buffer: Some(vertex_buffer),
index_buffer: Some(index_buffer),
texture,
index_count: u32::try_from(create_info.mesh.indices.len()).unwrap_or(u32::MAX),
draw_ranges: create_info.mesh.draw_ranges.clone(),
frame_sync: Vec::new(),
images_in_flight: Vec::new(),
current_frame: 0,
@@ -640,9 +640,16 @@ impl VulkanSmokeRenderer {
0,
vk::IndexType::UINT16,
);
device
.device()
.cmd_draw_indexed(command_buffer, self.index_count, 1, 0, 0, 0);
for range in &self.draw_ranges {
device.device().cmd_draw_indexed(
command_buffer,
range.index_count,
1,
range.first_index,
0,
0,
);
}
device.device().cmd_end_render_pass(command_buffer);
}