aboutsummaryrefslogtreecommitdiff
path: root/src_testbed/objects/capsule.rs
diff options
context:
space:
mode:
authorCrozet Sébastien <developer@crozet.re>2021-05-16 17:49:20 +0200
committerCrozet Sébastien <developer@crozet.re>2021-05-16 17:49:20 +0200
commit1a84bf2af34176508bdda8d0f2ad2e46dc5c4df9 (patch)
treeb3f2ccf2ee0490eb59e4b84223446aa494d18c94 /src_testbed/objects/capsule.rs
parentf350ac35d9889085af3f51a1894e2cc87173cb98 (diff)
downloadrapier-1a84bf2af34176508bdda8d0f2ad2e46dc5c4df9.tar.gz
rapier-1a84bf2af34176508bdda8d0f2ad2e46dc5c4df9.tar.bz2
rapier-1a84bf2af34176508bdda8d0f2ad2e46dc5c4df9.zip
Replace Kiss3d by Bevy for the testbed renderer.
Diffstat (limited to 'src_testbed/objects/capsule.rs')
-rw-r--r--src_testbed/objects/capsule.rs77
1 files changed, 0 insertions, 77 deletions
diff --git a/src_testbed/objects/capsule.rs b/src_testbed/objects/capsule.rs
deleted file mode 100644
index 3d3e88f..0000000
--- a/src_testbed/objects/capsule.rs
+++ /dev/null
@@ -1,77 +0,0 @@
-use crate::objects::node::{self, GraphicsNode};
-use kiss3d::window;
-use na::Point3;
-use rapier::geometry::{self, ColliderHandle, ColliderSet};
-use rapier::math::Isometry;
-
-pub struct Capsule {
- color: Point3<f32>,
- base_color: Point3<f32>,
- gfx: GraphicsNode,
- collider: ColliderHandle,
- delta: Isometry<f32>,
-}
-
-impl Capsule {
- pub fn new(
- collider: ColliderHandle,
- delta: Isometry<f32>,
- capsule: &geometry::Capsule,
- color: Point3<f32>,
- window: &mut window::Window,
- ) -> Capsule {
- let r = capsule.radius;
- let h = capsule.half_height() * 2.0;
- #[cfg(feature = "dim2")]
- let node = window.add_planar_capsule(r, h);
- #[cfg(feature = "dim3")]
- let node = window.add_capsule(r, h);
-
- let mut res = Capsule {
- color,
- base_color: color,
- gfx: node,
- collider,
- delta: delta * capsule.transform_wrt_y(),
- };
-
- res.gfx.set_color(color.x, color.y, color.z);
- res
- }
-
- pub fn select(&mut self) {
- self.color = Point3::new(1.0, 0.0, 0.0);
- }
-
- pub fn unselect(&mut self) {
- self.color = self.base_color;
- }
-
- pub fn update(&mut self, colliders: &ColliderSet) {
- node::update_scene_node(
- &mut self.gfx,
- colliders,
- self.collider,
- &self.color,
- &self.delta,
- );
- }
-
- pub fn set_color(&mut self, color: Point3<f32>) {
- self.gfx.set_color(color.x, color.y, color.z);
- self.color = color;
- self.base_color = color;
- }
-
- pub fn scene_node(&self) -> &GraphicsNode {
- &self.gfx
- }
-
- pub fn scene_node_mut(&mut self) -> &mut GraphicsNode {
- &mut self.gfx
- }
-
- pub fn object(&self) -> ColliderHandle {
- self.collider
- }
-}