Implemented uniform API in Viewport class to override 2D and/or
3D camera.
Added buttons in 2D and 3D editor viewport toolbars that override
the running game camera transform with the editor viewport camera
transform. Implemented via remote debugger protocol and camera
override API.
Removed LiveEditFuncs function pointers from ScriptDebugger class.
Since the debugger got access to the SceneTree instance (if one
exists), there is no need to store the function pointers. The live
edit functions in SceneTree are used directly instead. Also removed
the static version of live edit functions in SceneTree for the same
reason. This reduced the SceneTree -> Debugger coupling too since
the function pointers don't need to be set from SceneTree anymore.
Moved script_debugger_remote.h/cpp from 'core/' to 'scene/debugger/'.
This is because the remote debugger is now using SceneTree directly
and 'core/' classes should not depend on 'scene/' classes.
This makes precise adjustments easier, without having to
touch the mouse wheel. This modifier is also available in
Blender, so this makes the freelook behavior more consistent
with it :)
In the interest of simplifying the Editor Settings, this also
removes the freelook modifier speed factor setting
(the value is now hardcoded to its default).
- Display an error message if no selected nodes could be snapped
- Only register an undo/redo action if at least one node
could be snapped
- Increase the maximum snapping height to 20
- Increase the negative snapping limit to 0.2
This makes the tooltips display the correct shortcuts in case
they are changed, as is done automatically by `set_shortcut()`.
Button shortcuts are now used to apply shortcut actions,
which makes for cleaner code.
- Clean up the recent scripts dialog to match the recent scenes dialog
- Add "..." at the end of shortcuts that cause a modal dialog to appear
This closes#31148.
The new colors should make it easier to see the manipulator gizmo.
Highlighted gizmos are now fully opaque (instead of being white),
keeping the color information while a gizmo is highlighted.
This also adds a setting hint for the manipulator gizmo opacity
editor setting.
Axis colors were taken from Blender 2.80.
This partially addresses #16154.
It's not necessary, but the vast majority of calls of error macros
do have an ending semicolon, so it's best to be consistent.
Most WARN_DEPRECATED calls did *not* have a semicolon, but there's
no reason for them to be treated differently.
Note: I was tempted to also change "Align with View" since we use the word
"With" with uppercase in "Align Selection With View".
However I believe "With" should be lower case and the old stripg
(Align Selection ...) is the one to be fixed.