Affected nodes:
- DirectionalLight3D, OmniLight3D, SpotLight3D
- ReflectionProbe
- LightmapGI
- VoxelGI
- GPUParticles3D (but not collision/attractor nodes)
- AudioStreamPlayer3D
This reduces visual clutter in the editor with 3D scenes.
* Avoid concating strings manually for better i18n and easy l10n
* Use `vformat` when possible
* Use separate strings if the changing part is only a few hardcoded strings
* Don't put a period at the end of the name
This prevents using zero or negative values, which are invalid and
will cause various issues in the editor (such as the inspector never
updating until the editor is closed and reopened).
Fix crash when pasting a node as a new scene root.
Fix owner was not set correctly when copying scene root node from unsaved scene.
The owner of the root node is `nullptr`, which was ignored before.
The UWP platform port was never ported to the Godot 4.0+ API,
and it's now accumulating bitrot as it doesn't compile, and thus
we no longer propagate platform changes in it.
So we finally remove to acknowledge this state. There's still some
interest in reviving the UWP port eventually, especially as support
for Direct3D 12 will soon be merged, but when that happens it will
be easiest to redo it from scratch.
This allows to include script_instance.h directly in the
generated gdvirtual.gen.inc, and remove excessive includes
from the codebase.
This should also allow Resource to use GDVIRTUAL macros,
which wasn't possible previously due to a circular dependency.
This commit adds a new View submenu that allows switching
between the project theme (default), the editor theme, and
the default theme. The last selected option is stored per
project and is restored when reloading the project.
This change defines additional theme contexts for editor
branches to prevent theme leaking between the default
theme, the project theme, and the editor theme.
- Both editor window and EditorNode define an editor-specific
context with the editor theme and the default theme.
- The 2D viewport defines a project-specific context with
the project theme and the default theme.
- Theme editor preview tabs define the default-only context
with the default theme.
Additionally, the default theme context now only includes
the project theme for running projects (both export and debug).
This prevents the project theme from leaking into the editor.
This commit also does a little clean up on the theming aspects
of the EditorNode.