c9d4eed043c2076c1c10ee72014fe7d2a1e4930a
ImGuizmo scale hover/drag relies on ray-plane intersection with the axis as plane normal; in front views (axis ⟂ camera-to-object) the intersection numerator is identically zero, so handles can't be grabbed and values jump randomly; axes parallel to the view have zero screen displacement. Submodule is read-only and AxisMask can only hide degenerate axes, not replace them. Replace the library scale path entirely with a screen-space gizmo: - three axis rods (line + end square) + center uniform-scale square, constant screen size in any view - axis drag: mouse delta projected onto the axis' screen direction - axis pointing at camera: radial mapping (drag away = grow) - center square: uniform scale (library MT_SCALE_XYZ semantics) - Ctrl snapping quantizes the result; scale clamped >= 0.01 - pick suppressed while hovering/dragging the self-drawn handles
Description
No description provided
5.6 MiB
Languages
C++
56.3%
C
41.6%
GLSL
1.8%
CMake
0.3%