Cedric Guillemet 36511445f0 License file
2016-08-28 10:13:16 +02:00
2016-08-28 10:13:16 +02:00
2016-08-28 10:12:04 +02:00

ImGuizmo

ImGizmo is a small (.h and .cpp) library built ontop of Dear ImGui that allow you to manipulate(Rotate & translate at the moment) 4x4 float matrices. No other dependancies. Coded with Immediate Mode (IM) philosophy in mind.

Image of Rotation Image of Translation

// call BeginFrame right after ImGui_XXXX_NewFrame();

void BeginFrame();

// return true if mouse cursor is over any gizmo control (axis, plan or screen component)

bool IsOver();

// return true if mouse IsOver or if the gizmo is in moving state

bool IsUsing();

// enable/disable the gizmo. Stay in the state until next call to Enable. // gizmo is rendered with gray half transparent color when disabled

void Enable(bool enable);

// call it when you want a gizmo // Needs view and projection matrices. // matrix parameter is the source matrix (where will be gizmo be drawn) and might be transformed by the function. Return deltaMatrix is optional // translation is applied in world space // rotation is applied in local space // Note: all matrices are 4x4 float matrix. OpenGL style.

enum MODE { TRANSLATE, ROTATE };

**void Mogwai(const float *view, const float *projection, MODE mode, float matrix, float deltaMatrix = 0);

License

ImGuizmo is licensed under the MIT License, see LICENSE for more information.

Description
Immediate mode 3D gizmo for scene editing and other controls based on Dear Imgui
Readme MIT 15 MiB
Languages
C++ 65.4%
C 34.6%