egui-gizmo 0.16.0

3d transform gizmo for the egui library
Documentation

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.