MCPcopy Create free account
hub / github.com/Bloom-Engine/engine / ensure_buffer_capacity_2d

Method ensure_buffer_capacity_2d

native/shared/src/renderer/mod.rs:12255–12276  ·  view source on GitHub ↗

Ensure persistent 2D buffers are large enough. Grows with doubling strategy.

(&mut self, vb_bytes: usize, ib_bytes: usize)

Source from the content-addressed store, hash-verified

12253
12254 /// Ensure persistent 2D buffers are large enough. Grows with doubling strategy.
12255 fn ensure_buffer_capacity_2d(&mut self, vb_bytes: usize, ib_bytes: usize) {
12256 if vb_bytes > self.persistent_vb_2d_capacity {
12257 let new_cap = vb_bytes.next_power_of_two();
12258 self.persistent_vb_2d = self.device.create_buffer(&wgpu::BufferDescriptor {
12259 label: Some("persistent_vb_2d"),
12260 size: new_cap as u64,
12261 usage: wgpu::BufferUsages::VERTEX | wgpu::BufferUsages::COPY_DST,
12262 mapped_at_creation: false,
12263 });
12264 self.persistent_vb_2d_capacity = new_cap;
12265 }
12266 if ib_bytes > self.persistent_ib_2d_capacity {
12267 let new_cap = ib_bytes.next_power_of_two();
12268 self.persistent_ib_2d = self.device.create_buffer(&wgpu::BufferDescriptor {
12269 label: Some("persistent_ib_2d"),
12270 size: new_cap as u64,
12271 usage: wgpu::BufferUsages::INDEX | wgpu::BufferUsages::COPY_DST,
12272 mapped_at_creation: false,
12273 });
12274 self.persistent_ib_2d_capacity = new_cap;
12275 }
12276 }
12277
12278 // ============================================================
12279 // Cached model GPU buffers

Callers 2

end_frameMethod · 0.80
end_frame_with_sceneMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected