Age | Commit message (Collapse) | Author |
|
Fixes #43733: "creating SpatialMaterial in a separate thread creates invalid
shaders (temporarily)."
The bug occurred because various setters called in materials' constructors add
materials to queues that are processed on the main thread. This means that
when the materials are created in another thread, they can be processed on the
main thread before the constructor has finished.
The fix adds a flag to affected materials that prevents them from being added
to the queue until their constructors have finished initialising all the
members.
|
|
Implement properties arrays in the Inspector.
|
|
Bind TabContainer::get_tab_idx_at_point() to ClassDB
|
|
|
|
Changes:
-Added support for custom inertia and center of mass in 3D
-Added support for custom center of mass in 2D
-Calculated center of mass from shapes in 2D (same as in 3D)
-Fixed mass properties calculation with disabled shapes in 2D/3D
-Removed first_integration which is not used in 2D and doesn't seem to
make a lot of sense (prevents omit_force_integration to work during the
first frame)
-Support for custom inertia on different axes for RigidBody3D
|
|
Add AnimatableBody inherited from StaticBody for moving platforms
|
|
Add visual feedback when hovering or dragging the code minimap grabber
|
|
Fix crash in TileMap physics
|
|
|
|
|
|
|
|
This makes it more obvious that the minimap grabber can be dragged
to scroll.
|
|
|
|
Add offset for TextureProgress progress texture
|
|
|
|
|
|
Instead of having a physics node named Static that can be either Static
or Kinematic, AnimatableBody is added again as a separate node:
-Inherited from StaticBody to make its usage clearer
-Still separated from CharacterBody to make its usage more focused
Properly implemented constant velocity for kinematic bodies in godot
physics servers (induced velocity without actually moving).
Also updated description for the different physics nodes to make their
usage clearer.
|
|
Clean physics direct body state usage in 2D and 3D physics
|
|
Change delta type to double in Physics_body_2/3D
|
|
Expose soft body pin methods to GDScript
|
|
|
|
|
|
Rename `String::is_rel_path` to `String::is_relative_path`
|
|
|
|
workflow."
|
|
Improve collision generation usability in the new 3D scene import workflow.
|
|
|
|
This commit completely removes the RPC_MODE_MASTER ("master" keyword),
and renames the RPC_MODE_PUPPET to RPC_MODE_AUTHORITY ("auth" keyword).
This commit also renames the "Node.[get|set]_network_master" methods to
"Node.[get|set]_network_authority".
This commit also renames the RPC_MODE_REMOTE constant to RPC_MODE_ANY.
RPC_MODE_MASTER in Godot 3.x meant that a given RPC would be callable by
any puppet peer on the master, while RPC_MODE_PUPPET meant that it would
be callable by the master on any puppet.
Beside proving to be very confusing to the user (referring to where it
could be called instead of who can call it) the RPC_MODE_MASTER is quite
useless. It is almost the same as RPC_MODE_REMOTE (anyone can call) with
the exception that the network master cannot. While this could be useful
to check in some case, in such a function you would anyway need to check
in code who is the caller via get_rpc_sender_id(), so adding the check
there for those rare cases does not warrants a dedicated mode.
|
|
Add support for internal nodes
|
|
|
|
|
|
|
|
Fix loading packed scene with editable children at runtime
|
|
sprite_3d.cpp: return _is_playing() from public is_playing() function
|
|
Fix tooltips don't appear for PopupMenus
|
|
With this PR it's possible to add a collision during the Mesh import, directly in editor.
To generate the shape is possible to chose between the following options:
- Decompose Convex: The Mesh is decomposed in one or many Convex Shapes (Using the VHACD library).
- Simple Convex: Is generated a convex shape that enclose the entire mesh.
- Trimesh: Generate a trimesh shape using the Mesh faces.
- Box: Add a primitive box shape, where you can tweak the `size`, `position`, `rotation`.
- Sphere: Add a primitive sphere shape, where you can tweak the `radius`, `position`, `rotation`.
- Cylinder: Add a primitive cylinder shape, where you can tweak the `height`, `radius`, `position`, `rotation`.
- Capsule: Add a primitive capsule shape, where you can tweak the `height`, `radius`, `position`, `rotation`.
It's also possible to chose the generated body, so you can create:
- Rigid Body.
- Static Body.
- Area.
|
|
|
|
At runtime, packed scenes with nodes marked as editable instance where
saved with node type tags, which prevented the scene to be then loaded
as an instance, causing duplicated nodes in the tree.
This change ensures nodes marked as editable instances and their owned
children are properly set as instances.
That doesn't make a difference in the editor, since such nodes where
already set as instances based on their instance state, but it helps
at runtime where instance states are disabled.
Co-authored-by: latorril <latorril@gmail.com>
|
|
Tree Fix line rendering when drag and dropping TreeItem
|
|
Move mixing out of the AudioStreamPlayback* nodes
|
|
Remove velocity transmission on_wall when collider is CharacterBody.
|
|
|
|
|
|
Make FontData importable resource. Add multi-channel SDF font rendering.
|
|
Refactor RayShape and rename to SeparationRayShape
|
|
Adds multi-channel SDF font texture generation and rendering support.
Adds per-font oversampling support.
Adds FontData import plugins (for dynamic fonts, BMFonts and monospaced image fonts), font texture cache pre-generation and loading.
Adds BMFont binary format and outline support.
|
|
|
|
Fix delta passed in _physics_process
|
|
Regression due to typo in recent GDVIRTUAL_CALL change.
|
|
Fix AnimationBlendTree reset on resource loading
|