diff --git a/CHANGELOG.md b/CHANGELOG.md index fc99de09..39406f72 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -51,6 +51,7 @@ Per Keep a Changelog there are 6 main categories of changes: - Fixed building with `profiling/profile-with-tracing`. @SparkyPotato - Fixed panic when a mesh object with a skeleton was despawned. @setzer22 - Fixed forward pass not writing to depth when no depth prepass was used. @IsseW +- Fixed panic in IAD creation when system has more than 4 wgpu adapters. @marceline-cramer ## v0.3.0 diff --git a/rend3/src/setup.rs b/rend3/src/setup.rs index 04a9151f..e8081f25 100644 --- a/rend3/src/setup.rs +++ b/rend3/src/setup.rs @@ -2,7 +2,6 @@ use std::sync::Arc; -use arrayvec::ArrayVec; use wgpu::{ Adapter, AdapterInfo, Backend, Backends, BufferAddress, Device, DeviceDescriptor, DeviceType, Features, Gles3MinorVersion, Instance, InstanceFlags, Limits, Queue, @@ -463,7 +462,7 @@ pub async fn create_iad( flags: InstanceFlags::default(), }); - let mut valid_adapters = FastHashMap::, 4>>::default(); + let mut valid_adapters = FastHashMap::>>::default(); for backend in &default_backend_order { profiling::scope!("enumerating backend"); @@ -479,7 +478,7 @@ pub async fn create_iad( .await .into_iter(); - let mut potential_adapters = ArrayVec::, 4>::new(); + let mut potential_adapters = Vec::new(); for (idx, adapter) in adapters.enumerate() { let info = adapter.get_info(); let limits = adapter.limits();