From 1231d2feadbdfeefbcdca4bcc91cab5197dcdc04 Mon Sep 17 00:00:00 2001 From: Nathan Adams Date: Tue, 23 Jan 2024 21:50:28 +0100 Subject: [PATCH] wgpu: Extract out ESTIMATED_OBJECTS_PER_CHUNK, set it to 200 --- render/wgpu/src/dynamic_transforms.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/render/wgpu/src/dynamic_transforms.rs b/render/wgpu/src/dynamic_transforms.rs index 053ddef6f..727ac33d8 100644 --- a/render/wgpu/src/dynamic_transforms.rs +++ b/render/wgpu/src/dynamic_transforms.rs @@ -3,6 +3,8 @@ use crate::{ColorAdjustments, Transforms}; use std::marker::PhantomData; use std::mem; +const ESTIMATED_OBJECTS_PER_CHUNK: u64 = 200; + pub struct DynamicTransforms { pub transform: Inner, pub color: Inner, @@ -30,7 +32,9 @@ impl Inner { pub fn new(device: &wgpu::Device, layout: &wgpu::BindGroupLayout) -> Self { let buffer = device.create_buffer(&wgpu::BufferDescriptor { label: None, - size: mem::size_of::() as u64 * 100, + size: (mem::size_of::() as u64 * ESTIMATED_OBJECTS_PER_CHUNK) + .min(device.limits().max_uniform_buffer_binding_size as u64) + .min(device.limits().max_buffer_size), usage: wgpu::BufferUsages::UNIFORM | wgpu::BufferUsages::COPY_DST, mapped_at_creation: false, });