Age | Commit message (Collapse) | Author |
|
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.
|
|
Implement Curve3Texture
|
|
* 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.
|
|
* 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.
|
|
Expose body_test_motion in 3D physics server
|
|
Results are exposed through PhysicsTestMotionResult3D, the same way it's
done for 2D.
Also cleaned a few things in the 2D version.
|
|
Expose `Window.get_contents_minimum_size()` to scripts
|
|
|
|
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.
|
|
|
|
This commit adds a new method to the `InputMap`, allowing the user to get the value of an action's dead zone as a float.
|
|
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.
|
|
Add Callable.is_valid() analogous to FuncRef.is_valid() from 3.x
|
|
|
|
|
|
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.
|
|
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)
|
|
Update File.store_var description to mention which properties of an object are included.
|
|
|
|
NodePath properly updated in the editor in more cases when nodes are moved or renamed
|
|
Update `Label.clip_text()` Method Description
|
|
They can now be centered and right-aligned.
Fixes #11380.
|
|
Rename `is_a_parent_of()` to `is_ancestor_of()`
|
|
|
|
Make sure the direction of the motion is preserved, unless the depth is
higher than the margin, which means the body needs depenetration in any
direction.
Also changed move_and_slide to avoid sliding on the first motion, in
order to avoid issues with unstable position on ground when jumping.
Co-authored-by: fabriceci <fabricecipolla@gmail.com>
|
|
Allow disabling scrolling in Tree and implement horizontal scrolling
|
|
Fix more cases of node path needing an update when nodes are renamed or
moved in the editor.
Built-in node properties:
Before, node paths were checked only for script export variables. Now
all properties are checked from the node, which includes built-in node
properties.
Allows proper node path updates for nodes like remote transform, physics
joints, etc.
Arrays and dictionaries:
Node paths nested in array and dictionary properties are now also
updated in the editor.
Also update the documentation to be clear about node path update in the
editor and at runtime.
Co-authored-by: latorril <latorril@gmail.com>
|
|
|
|
On top of having a more realistic size out of the box, this matches
the default VoxelGI extents for better usability.
|
|
This update fixes an inconsistencies in the documentation about the `clip_text()` method.
|
|
* Deprecates GDNative in favor of a simpler, lower level interface.
* New extension system allows registering core engine classes.
* Simple header interface in gdnative_interace.h
|
|
|
|
|
|
Implement Framebuffer Subpass support
|
|
* Required for better optimizing mobile platforms
* Will be used by the Vulkan mobile renderer.
|
|
|
|
The CylinderMesh generation code handles this special case and
avoids generating the top and bottom faces if their radius is equal
to 0. This improves performance by reducing the number of vertices
to draw.
If both values are set to 0, nothing will be visible but the mesh
generation will still succeed.
This also improves the CylinderMesh class documentation.
|
|
|
|
|
|
|
|
Also MIDIMessage
|
|
|
|
|