diff options
| author | Crozet Sébastien <developer@crozet.re> | 2021-01-20 15:40:00 +0100 |
|---|---|---|
| committer | Crozet Sébastien <developer@crozet.re> | 2021-01-20 15:40:00 +0100 |
| commit | 28b7866aee68ca844406bea4761d630a7913188d (patch) | |
| tree | c664c3dae65e5300f606e4f8cfb1198023173ea6 /src_testbed | |
| parent | e2006599a8fa90090393ff4fed326ee78fd7c0b7 (diff) | |
| download | rapier-28b7866aee68ca844406bea4761d630a7913188d.tar.gz rapier-28b7866aee68ca844406bea4761d630a7913188d.tar.bz2 rapier-28b7866aee68ca844406bea4761d630a7913188d.zip | |
Switch to [u32; DIM] instead of Point<u32> for element indices.
Diffstat (limited to 'src_testbed')
| -rw-r--r-- | src_testbed/engine.rs | 8 | ||||
| -rw-r--r-- | src_testbed/nphysics_backend.rs | 2 | ||||
| -rw-r--r-- | src_testbed/objects/convex.rs | 8 | ||||
| -rw-r--r-- | src_testbed/objects/heightfield.rs | 5 | ||||
| -rw-r--r-- | src_testbed/objects/mesh.rs | 7 |
5 files changed, 16 insertions, 14 deletions
diff --git a/src_testbed/engine.rs b/src_testbed/engine.rs index 0e415ea..cef12d6 100644 --- a/src_testbed/engine.rs +++ b/src_testbed/engine.rs @@ -336,7 +336,7 @@ impl GraphicsManager { out.push(Node::Mesh(Mesh::new( handle, vec![triangle.a, triangle.b, triangle.c], - vec![Point3::new(0, 1, 2)], + vec![[0, 1, 2]], color, window, ))) @@ -346,11 +346,7 @@ impl GraphicsManager { out.push(Node::Mesh(Mesh::new( handle, trimesh.vertices().to_vec(), - trimesh - .indices() - .iter() - .map(|idx| na::convert(*idx)) - .collect(), + trimesh.indices().to_vec(), color, window, ))) diff --git a/src_testbed/nphysics_backend.rs b/src_testbed/nphysics_backend.rs index 224b5d3..b2495bd 100644 --- a/src_testbed/nphysics_backend.rs +++ b/src_testbed/nphysics_backend.rs @@ -205,7 +205,7 @@ fn nphysics_collider_from_rapier_collider( trimesh .indices() .iter() - .map(|idx| na::convert(*idx)) + .map(|idx| na::Point3::new(idx[0] as usize, idx[1] as usize, idx[2] as usize)) .collect(), None, )) diff --git a/src_testbed/objects/convex.rs b/src_testbed/objects/convex.rs index 51b1cb4..95ef74a 100644 --- a/src_testbed/objects/convex.rs +++ b/src_testbed/objects/convex.rs @@ -21,7 +21,7 @@ impl Convex { body: ColliderHandle, delta: Isometry<f32>, vertices: Vec<Point<f32>>, - #[cfg(feature = "dim3")] indices: Vec<Point<u32>>, + #[cfg(feature = "dim3")] indices: Vec<[u32; 3]>, color: Point3<f32>, window: &mut Window, ) -> Convex { @@ -35,9 +35,9 @@ impl Convex { let mut mesh_indices = Vec::new(); for idx in indices { let i = mesh_vertices.len() as u16; - mesh_vertices.push(vertices[idx.x as usize]); - mesh_vertices.push(vertices[idx.y as usize]); - mesh_vertices.push(vertices[idx.z as usize]); + mesh_vertices.push(vertices[idx[0] as usize]); + mesh_vertices.push(vertices[idx[1] as usize]); + mesh_vertices.push(vertices[idx[2] as usize]); mesh_indices.push(Point3::new(i, i + 1, i + 2)); } diff --git a/src_testbed/objects/heightfield.rs b/src_testbed/objects/heightfield.rs index a2999b7..cb5edf3 100644 --- a/src_testbed/objects/heightfield.rs +++ b/src_testbed/objects/heightfield.rs @@ -55,7 +55,10 @@ impl HeightField { use std::rc::Rc; let (vertices, indices) = heightfield.to_trimesh(); - let indices = indices.into_iter().map(|i| na::convert(i)).collect(); + let indices = indices + .into_iter() + .map(|idx| Point3::new(idx[0] as u16, idx[1] as u16, idx[2] as u16)) + .collect(); let mesh = Mesh::new(vertices, indices, None, None, false); let mut res = HeightField { diff --git a/src_testbed/objects/mesh.rs b/src_testbed/objects/mesh.rs index 5187a8b..5505de3 100644 --- a/src_testbed/objects/mesh.rs +++ b/src_testbed/objects/mesh.rs @@ -17,12 +17,15 @@ impl Mesh { pub fn new( collider: ColliderHandle, vertices: Vec<Point<f32>>, - indices: Vec<Point3<u32>>, + indices: Vec<[u32; 3]>, color: Point3<f32>, window: &mut window::Window, ) -> Mesh { let vs = vertices; - let is = indices.into_iter().map(na::convert).collect(); + let is = indices + .into_iter() + .map(|idx| Point3::new(idx[0] as u16, idx[1] as u16, idx[2] as u16)) + .collect(); let mesh; let gfx; |
