feat: migrate to glam whenever relevant + migrate testbed to kiss3d instead of bevy + release v0.32.0 (#909)

* feat: migrate to glam whenever relevant + migrate testbed to kiss3d instead of bevy

* chore: update changelog

* Fix warnings and tests

* Release v0.32.0
This commit is contained in:
Sébastien Crozet
2026-01-09 17:26:36 +01:00
committed by GitHub
parent 48de83817e
commit 0b7c3b34ec
265 changed files with 8501 additions and 8575 deletions

View File

@@ -2,22 +2,29 @@
extern crate nalgebra as na;
pub use crate::graphics::{BevyMaterial, GraphicsManager};
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::{Testbed, TestbedApp, TestbedGraphics, TestbedState};
pub use bevy::prelude::{Color, KeyCode};
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;
#[cfg(feature = "dim2")]
mod camera2d;
#[cfg(feature = "dim3")]
mod camera3d;
mod debug_render;
mod graphics;
pub mod harness;
mod mouse;
pub mod objects;
pub mod physics;
#[cfg(all(feature = "dim3", feature = "other-backends"))]
mod physx_backend;
@@ -27,18 +34,23 @@ 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 Isometry<N> = na::Isometry2<N>;
pub type Vector<N> = na::Vector2<N>;
pub type SimdPose<N> = na::Isometry2<N>;
pub type SimdVector<N> = na::Vector2<N>;
pub type Point<N> = na::Point2<N>;
pub type Translation<N> = na::Translation2<N>;
}
#[cfg(feature = "dim3")]
pub mod math {
pub type Isometry<N> = na::Isometry3<N>;
pub type Vector<N> = na::Vector3<N>;
pub type SimdPose<N> = na::Isometry3<N>;
pub type SimdVector<N> = na::Vector3<N>;
pub type Point<N> = na::Point3<N>;
pub type Translation<N> = na::Translation3<N>;
}