Ensure persistent 3D buffers are large enough. Grows with doubling strategy.
(&mut self, vb_bytes: usize, ib_bytes: usize)
| 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) { |
no outgoing calls
no test coverage detected