Age | Commit message (Collapse) | Author |
|
Fix Command Queue Crash
|
|
Calinou/occluderinstance3d-add-node-configuration-warnings
Add node configuration warnings to OccluderInstance3D
|
|
* No longer allow sending an object (texture) to the server as material parameter
* Keep a parameter cache locally in ShaderMaterial
|
|
|
|
Add AcceptDialog::remove_button method
|
|
Avoid using a nullptr root in Tree._range_click_timeout().
|
|
Calinou/improve-node-configuration-warning-display
Format node configuration warnings as a bullet point list
|
|
Allow using ORMMaterial3D by using BaseMaterial3D as a resource hint
|
|
Fix: The ORMMaterial3D shader doesn't compile #50161
|
|
This makes multiple warnings easier to distinguish from each other.
|
|
|
|
|
|
When appending text (either via `set_text()` or by pasting from clipboard),
if the input would make the `LineEdit` exceed its configured `max_length`,
the input text is truncated to fit. The discard part is passed as a parameter
in the `text_change_rejected` signal.
Fixes #33321.
Fixes #41278.
Also cleaned up unimplemented `max_chars` property in `TextEdit`.
Co-authored-by: Tony-Goat <70238376+Tony-Goat@users.noreply.github.com>
|
|
Having the TileSet:: prefix has some unintended consequences in the
bindings, in particular in the extension API dump.
|
|
* Works again
* Transmittance also works again
* Removed the curve patamter, exp() function is good enough.
|
|
|
|
Fixes some problems introduced by #49917
* Tree used minimum size as a stretch ratio, so it forced a minimum size of 1.
* Minimum size redone, stretch ratio moved to a separate setting
* Fitting to contents was enforced, this is more intuitive, but in many situations this is undesired.
* Added a clip content option for situations where fit to contents does not apply.
* Icon would scroll with the item, making it invislbe if the item is too long.
* Made icon always appear to the right (or left if RTL is enabled) of the visible item space.
|
|
Previously, only StandardMaterial3D could be defined as an alternative
to ShaderMaterial.
This also reorders the CanvasItemMaterial property hints to follow
alphabetical order (which is enforced by the inspector).
|
|
Implement Curve3Texture
|
|
Add compatibility with old mesh formats
|
|
* This was required by users in some scenarios, such as animating individual axes over time with a single texture.
* Examples: Shaders, Particles, etc.
* CurveTexture now defaults to RGB, can be changed to Red if needed, this allows to freely exchange them.
|
|
Fix Render Info
|
|
* Fixed and redone the process to obtain render information from a viewport
* Some stats, such as material changes are too difficult to guess on Vulkan, were removed.
* Separated visible and shadow stats, which causes confusion.
* Texture, buffer and general video memory can be queried now.
* Fixed the performance metrics too.
|
|
Fix Control::get_screen_position() not considering viewport scale
|
|
Expose `Window.get_contents_minimum_size()` to scripts
|
|
Make invisible `SplitContainer` nodes correctly calculate the minimal size of its children
|
|
|
|
The Optimized shadow depth range was removed in late 2020 in favor
of the Stable shadow depth range, but it still had a (broken) property
that allowed to enable it.
|
|
of its children
|
|
* Can load 2.x meshes
* Can load 3.x meshes
|
|
Also use const more often.
|
|
Clean up RenderingServer and its bindings
|
|
* Rewrote bindings for RenderingServer.
* They are now all up to date.
* Several unused methods and deprecated features were cleaned up.
|
|
Import mesh colors in 8BPC
|
|
* Colors were imported as 16BPP (half float)
* Far most common use cases only require 8BPP
* If you need higher data precision, use a custom array, which are supported now.
**WARNING**: 3D Scenes imported in 4.0 no longer compatible with this new format. You need to re-import them (erase them from .godot/import)
|
|
|
|
Add support for controlling physics nodes' behavior when disabled
|
|
Deprecate ImmediateGeometry
|
|
* Removed entirely from RenderingServer.
* Replaced by ImmediateMesh resource.
* ImmediateMesh replaces ImmediateGeometry, but could use more optimization in the future.
* Sprite3D and AnimatedSprite3D work again, ported from Godot 3.x (though a lot of work was needed to adapt them to Godot 4).
* RootMotionView works again.
* Polygon3D editor works again.
|
|
Fix editor suffixes and degrees conversion
|
|
New property disable_mode to set different behaviors:
Remove: remove from physics simulation
MakeStatic: change body mode to static (doesn't affect area and soft body)
KeepActive: do nothing
Extra change:
Handle disable/enable node state with specific notifications, in order
to differentiate global pause from disabled nodes.
|
|
* Functions to convert to/from degrees are all gone. Conversion is done by the editor.
* Use PROPERTY_HINT_ANGLE instead of PROPERTY_HINT_RANGE to edit radian angles in degrees.
* Added possibility to add suffixes to range properties, use "min,max[,step][,suffix:<something>]" example "0,100,1,suffix:m"
* In general, can add suffixes for EditorSpinSlider
Not covered by this PR, will have to be addressed by future ones:
* Ability to switch radians/degrees in the inspector for angle properties (if actually wanted).
* Animations previously made will most likely break, need to add a way to make old ones compatible.
* Only added a "px" suffix to 2D position and a "m" one to 3D position, someone needs to go through the rest of the engine and add all remaining suffixes.
* Likely also need to track down usage of EditorSpinSlider outside properties to add suffixes to it too.
|
|
Fixes #46648
|
|
Fix move_and_collide causing sliding on slopes
|
|
* Editor 2D viewport now uses embedded subwindows (windows no longer pop up)
* Restored the ability to disable 3D on the 2D viewport (makes 3D not display on 2D when there is a camera on the scene)
|
|
|
|
Fix export var override in PackedScene at runtime
|
|
Fix GraphNode port position when the control has the Expand flag
|
|
They can now be centered and right-aligned.
Fixes #11380.
|
|
Rename `is_a_parent_of()` to `is_ancestor_of()`
|