Age | Commit message (Collapse) | Author |
|
|
|
clutter in scenes with a lot of Particle nodes.
|
|
|
|
|
|
|
|
This is a fix for: #54856
|
|
|
|
brunosxs/fix-game-crash-when-sending-a-notification-from-a-camera-class
|
|
Add `ShapeCast2D` node
|
|
The physics API cannot provide needed functionality to ensure the correct behavior, which might lead to confusion (see `rest_info()`).
However `get_closest_collision_safe/unsafe_fraction()` methods are not removed, because they return correct result from `cast_motion()`.
|
|
|
|
|
|
Separate space override modes for gravity/damping in Area
|
|
Makes the results consistent for all shape types with options to set
the desired behavior.
|
|
|
|
Reporting rest collision information is needed for move_and_collide and
move_and_slide so floor detection can be done properly, but in the case
of just testing the motion for collision, it makes sense to return false
if the body is able to move all along the path without being stopped.
Updated the logic in test_move and clarified the documentation for
test_move and move_and_collide.
|
|
In all physics servers, body_get_direct_state() now silently returns
nullptr when the body has been already freed or is removed from space,
so the client code can detect this state and invalidate the body rid.
In 2D, there is no change in behavior (just no more errors).
In 3D, the Bullet server returned a valid direct body state when the
body was removed from the physics space, but in this case it didn't
make sense to use the information from the body state.
|
|
Also make inspector clearer for gravity point properties.
|
|
1. Explicit and unambiguous when comparing to `GradientTexture2D`
2. Consistent with other class names where 1D is used in the engine.
|
|
|
|
Same as what is already done for shape queries, applied to point and ray
queries. Easier to document and more flexible to add more parameters.
Also expose intersect_point method to script in 3D.
Remove intersect_point_on_canvas in 2D, replaced with a parameter.
|
|
This is consistent with other constants that include `NO`,
such as `PROPERTY_HINT_COLOR_NO_ALPHA`.
|
|
|
|
NodePath properties are designed to be relative to the given node, so
validity checks are failing in the editor for Polygon2D nodes, which are
relative to the Skeleton2D node rather than the Polygon2D node.
Fixed by saving bone paths as String properties instead of NodePath.
Shouldn't cause a difference for performance since NodePath properties
are technically saved as String anyway.
|
|
Improve NavigationObstacle3D usability
|
|
|
|
|
|
Improved RigidDynamicBody linear/angular damping override
|
|
- Use lowercase driver names for the `--rendering-driver`
command line argument.
|
|
|
|
This crash occurred when an audio stream finished playing in NOTIFICATION_INTERNAL_PROCESS,
during which it would iterate through a loop of playbacks,
leading to a "finished" signal, which removed the audio player from the tree
which led to a NOTIFICATION_EXIT_TREE,
which would mutate the array of playbacks while within the above loop.
This moves the signal callback outside of the loop which avoids the crash.
Note: previously, the signal was called multiple times if the same player finishes multiple times in one frame. Now it is at most once per frame.
Affects AudioStreamPlayer, AudioStreamPlayer2D and AudioStreamPlayer3D
|
|
Sets `AlignOperands` to `DontAlign`.
`clang-format` developers seem to mostly care about space-based indentation and
every other version of clang-format breaks the bad mismatch of tabs and spaces
that it seems to use for operand alignment. So it's better without, so that it
respects our two-tabs `ContinuationIndentWidth`.
|
|
Fix potential null pointer use, based on #54094 fix
|
|
|
|
Fix #54298 where a CharacterBody2D can be stuck on the wall.
|
|
|
|
|
|
|
|
|
|
Damping values are now non-negative.
Add new properties linear_damp_mode and angular_damp_mode to set the way
RigidDynamicBody and PhysicalBone (2D & 3D) use damping values.
It can now be Combine (default) to add to the default/areas, or Replace
to override the value completely (current behavior).
|
|
Fix NavigationObstacle3D to be attached to navigation map - without it
the NavigationObstacle3D is not working.
Replace radius approximation algorithm with simple "radius" property.
|
|
notification from it before adding it to the tree.
|
|
|
|
|
|
|
|
|
|
Improve readability for failing errors in nav area
|
|
Change the unreacheable return value of shape_find_owner()
|
|
|
|
|