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

Method ensure_buffer_capacity_3d

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

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

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

Source from the content-addressed store, hash-verified

12229
12230 /// Ensure persistent 3D buffers are large enough. Grows with doubling strategy.
12231 fn ensure_buffer_capacity_3d(&mut self, vb_bytes: usize, ib_bytes: usize) {
12232 if vb_bytes > self.persistent_vb_3d_capacity {
12233 let new_cap = vb_bytes.next_power_of_two();
12234 self.persistent_vb_3d = self.device.create_buffer(&wgpu::BufferDescriptor {
12235 label: Some("persistent_vb_3d"),
12236 size: new_cap as u64,
12237 usage: wgpu::BufferUsages::VERTEX | wgpu::BufferUsages::COPY_DST,
12238 mapped_at_creation: false,
12239 });
12240 self.persistent_vb_3d_capacity = new_cap;
12241 }
12242 if ib_bytes > self.persistent_ib_3d_capacity {
12243 let new_cap = ib_bytes.next_power_of_two();
12244 self.persistent_ib_3d = self.device.create_buffer(&wgpu::BufferDescriptor {
12245 label: Some("persistent_ib_3d"),
12246 size: new_cap as u64,
12247 usage: wgpu::BufferUsages::INDEX | wgpu::BufferUsages::COPY_DST,
12248 mapped_at_creation: false,
12249 });
12250 self.persistent_ib_3d_capacity = new_cap;
12251 }
12252 }
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) {

Callers 2

end_frameMethod · 0.80
end_frame_with_sceneMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected