diff options
-rw-r--r-- | client/src/scene_prepare.rs | 19 | ||||
-rw-r--r-- | shared/src/helper.rs | 14 | ||||
-rw-r--r-- | shared/src/resources.rs | 4 |
3 files changed, 22 insertions, 15 deletions
diff --git a/client/src/scene_prepare.rs b/client/src/scene_prepare.rs index e7946e7..0fb38cc 100644 --- a/client/src/scene_prepare.rs +++ b/client/src/scene_prepare.rs @@ -140,9 +140,14 @@ impl ScenePreparer { label: None, usage: BufferUsages::INDEX | BufferUsages::COPY_DST, }); - self.index_buffers - .insert(pres.clone(), (Arc::new(buffer), (buf.len() / 4) as u32)); - debug!("index buffer created (len={}) {pres}", buf.len() / 4); + self.index_buffers.insert( + pres.clone(), + (Arc::new(buffer), (buf.len() / size_of::<u32>()) as u32), + ); + debug!( + "index buffer created (len={}) {pres}", + buf.len() / size_of::<u32>() + ); } } for pres in self.vertex_buffers.needed() { @@ -156,11 +161,13 @@ impl ScenePreparer { label: None, usage: BufferUsages::VERTEX | BufferUsages::COPY_DST, }); - self.vertex_buffers - .insert(pres.clone(), (Arc::new(buffer), (buf.len() / 4) as u32)); + self.vertex_buffers.insert( + pres.clone(), + (Arc::new(buffer), (buf.len() / size_of::<f32>()) as u32), + ); debug!( "vertex attribute buffer created (len={}) {pres}", - buf.len() / 4 + buf.len() / size_of::<f32>() ); } } diff --git a/shared/src/helper.rs b/shared/src/helper.rs index 4702aef..d267f68 100644 --- a/shared/src/helper.rs +++ b/shared/src/helper.rs @@ -39,7 +39,7 @@ impl ReadWrite for f32 { Ok(()) } fn read(r: &mut dyn Read) -> Result<Self> { - let mut buf = [0; 4]; + let mut buf = [0; { size_of::<f32>() }]; r.read_exact(&mut buf)?; Ok(f32::from_be_bytes(buf)) } @@ -50,7 +50,7 @@ impl ReadWrite for u32 { Ok(()) } fn read(r: &mut dyn Read) -> Result<Self> { - let mut buf = [0; 4]; + let mut buf = [0; { size_of::<u32>() }]; r.read_exact(&mut buf)?; Ok(u32::from_be_bytes(buf)) } @@ -78,7 +78,7 @@ impl ReadWrite for Vec<Vec3A> { r.read_to_end(&mut buf)?; Ok(buf .into_iter() - .array_chunks::<4>() + .array_chunks::<{ size_of::<f32>() }>() .map(f32::from_be_bytes) .array_chunks::<3>() .map(Vec3A::from_array) @@ -97,7 +97,7 @@ impl ReadWrite for Vec<Vec2> { r.read_to_end(&mut buf)?; Ok(buf .into_iter() - .array_chunks::<4>() + .array_chunks::<{ size_of::<f32>() }>() .map(f32::from_be_bytes) .array_chunks::<2>() .map(Vec2::from_array) @@ -118,7 +118,7 @@ impl ReadWrite for Vec<[u32; 3]> { r.read_to_end(&mut buf)?; Ok(buf .into_iter() - .array_chunks::<4>() + .array_chunks::<{ size_of::<u32>() }>() .map(u32::from_be_bytes) .array_chunks::<3>() .collect()) @@ -136,7 +136,7 @@ impl ReadWrite for Vec<f32> { r.read_to_end(&mut buf)?; Ok(buf .into_iter() - .array_chunks::<4>() + .array_chunks::<{ size_of::<f32>() }>() .map(f32::from_be_bytes) .collect()) } @@ -160,7 +160,7 @@ impl ReadWrite for Data { Ok(()) } fn read(r: &mut dyn Read) -> Result<Self> { - let mut size = [0; 4]; + let mut size = [0; { size_of::<u32>() }]; r.read_exact(&mut size)?; let size = u32::from_be_bytes(size); let mut buf = vec![0; size as usize]; diff --git a/shared/src/resources.rs b/shared/src/resources.rs index 9e0e7b8..f9e7242 100644 --- a/shared/src/resources.rs +++ b/shared/src/resources.rs @@ -289,8 +289,8 @@ impl ReadWrite for MeshPart { } fn read_kv(r: &mut &[u8]) -> Result<(Vec<u8>, Vec<u8>)> { - let mut key_size = [0; 2]; - let mut value_size = [0; 2]; + let mut key_size = [0; { size_of::<u16>() }]; + let mut value_size = [0; { size_of::<u16>() }]; r.read_exact(&mut key_size)?; r.read_exact(&mut value_size)?; let key_size = u16::from_be_bytes(key_size); |