#![allow(clippy::too_many_arguments)] extern crate nalgebra as na; pub use crate::graphics::GraphicsManager; pub use crate::harness::plugin::HarnessPlugin; pub use crate::physics::PhysicsState; pub use crate::plugin::TestbedPlugin; pub use crate::testbed::{ Example, KeysState, RunMode, Testbed, TestbedActionFlags, TestbedApp, TestbedGraphics, TestbedState, TestbedStateFlags, }; // Re-export kiss3d types that users might need pub use kiss3d::event::{Action, Key, MouseButton, WindowEvent}; // KeyCode alias for backwards compatibility with examples // Maps to kiss3d Key variants pub use kiss3d::event::Key as KeyCode; // Re-export egui for UI pub use egui; mod debug_render; mod graphics; pub mod harness; mod mouse; pub mod physics; #[cfg(all(feature = "dim3", feature = "other-backends"))] mod physx_backend; mod plugin; mod save; mod settings; mod testbed; pub mod ui; #[cfg(feature = "dim3")] pub use kiss3d::camera::OrbitCamera3d as Camera; #[cfg(feature = "dim2")] pub use kiss3d::camera::PanZoomCamera2d as Camera; #[cfg(feature = "dim2")] pub mod math { pub type SimdPose = na::Isometry2; pub type SimdVector = na::Vector2; pub type Point = na::Point2; pub type Translation = na::Translation2; } #[cfg(feature = "dim3")] pub mod math { pub type SimdPose = na::Isometry3; pub type SimdVector = na::Vector3; pub type Point = na::Point3; pub type Translation = na::Translation3; }