• Stars
    star
    189
  • Rank 204,649 (Top 5 %)
  • Language
    Rust
  • License
    Apache License 2.0
  • Created about 3 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

3d transformation gizmo

egui-gizmo

Latest version Documentation MIT

3d transformation gizmo built on top of the egui library.

Try it out in a web demo

Rotation Translation Scale

Usage

let gizmo = Gizmo::new("My gizmo")
    .view_matrix(view_matrix)
    .projection_matrix(projection_matrix)
    .model_matrix(model_matrix)
    .mode(GizmoMode::Rotate);

if let Some(response) = gizmo.interact(ui) {
    model_matrix = response.transform();
}

For a more complete example, see the demo source code.

The gizmo exposes matrices and vectors as mint types, which means it is easy to use with matrix types from various crates such as nalgebra, glam and cgmath. You may need to enable a mint feature, depending on the math library.