Bauke Conijn
47e63bc55f
Fix Camera3D project_* methods not accounting for frustum offset
...
This does not fix Camera3D::project_ray_normal().
Adds Camera3D::get_camera_projection() and exposes it to GDScript
2023-06-20 20:45:50 +02:00
Rémi Verschelde
243c8e0b40
Merge pull request #77465 from lyuma/ik_skeleton_reference_bug
...
SkeletonIK3D: Avoid holding hard pointers to Skeleton3D
2023-06-20 00:02:47 +02:00
Rémi Verschelde
d63794d466
Merge pull request #77629 from GameDevLlama/bugifx/issue-50813
...
Fix non-functional Node3D `top_level` property
2023-06-18 16:30:42 +02:00
Christian Ringshofer
20e8189f5d
Fix non functional Node3D op_level property
...
Fixes #50813 .
2023-06-18 15:01:01 +02:00
smix8
ae9dd47d0c
Add agent pause mode to NavigationServer
...
Adds agent pause mode to NavigationServer.
2023-06-18 12:37:03 +02:00
Rémi Verschelde
c6d9139f16
Merge pull request #78280 from raulsntos/path-follow-3d-clamp
...
Clamp `PathFollow3D` progress when not looping
2023-06-16 10:20:43 +02:00
Rémi Verschelde
6fb391bc23
Fix various typos with codespell
...
And ignore some false positives introduced by recent versions of codespell.
2023-06-16 08:45:35 +02:00
Raul Santos
0b4ec4027c
Clamp PathFollow3D progress when not looping
2023-06-15 16:59:14 +02:00
smix8
84647ab09e
Add NavigationRegion function to change navigation map
...
Adds NavigationRegion function to change navigation map.
2023-06-15 12:04:57 +02:00
Rémi Verschelde
0da20d019e
Merge pull request #77412 from smix8/fix_threaded_navmesh_baking_4.x
...
Fix for threaded NavigationMesh baking under new thread guards
2023-06-15 10:49:58 +02:00
Rémi Verschelde
b1d3070648
Merge pull request #77175 from smix8/region_refactor_4.x
...
Refactor NavigationRegion internals
2023-06-15 10:39:53 +02:00
smix8
4c970f1a67
Refactor NavigationRegion internals
...
Refactors NavigationRegion internals.
2023-06-15 09:52:14 +02:00
Hugo Locurcio
f683230a8b
Tweak VehicleBody3D and VehicleWheel3D property hints
...
These property hints are better aligned with the documentation
and typical use cases, while still allowing values to go outside
those ranges (except for steering, where steering above 180° doesn't
make sense).
2023-06-15 07:45:55 +02:00
smix8
ee14b010ac
Fix for threaded NavigationMesh baking under new thread guards
...
Fixes threaded NavigationMesh baking under new SceneTree thread guards that blocked the process.
2023-06-14 01:53:37 +02:00
Yuri Sizov
991f4d5183
Avoid error spam when (un)pausing GPUParticles out of tree
2023-06-12 18:18:51 +02:00
smix8
c1fc331b88
Update navigation obstacle API
...
Updates navigation obstacle API.
2023-06-12 14:26:45 +02:00
Ninni Pipping
0c16082e1e
Use get_node_or_null
when null checks are present
...
Avoids duplicate or unnecessary errors
2023-06-10 13:22:56 +02:00
Ninni Pipping
dcd2b883eb
Use NULL instead of COND checks when appropriate
...
Restricted to scene
2023-06-10 08:56:30 +02:00
Rémi Verschelde
da68c707f2
Merge pull request #78025 from lyuma/skeleton3d_rest_dirty
...
Skeleton3D: Only reset rest_dirty after ALL bone transforms have finished update
2023-06-09 11:07:42 +02:00
Lyuma
c567d46a2f
Skeleton3D: Only reset rest_dirty after ALL bone transforms have finished update
2023-06-08 19:23:14 -07:00
Aaron Franke
ec09cff7f3
Internally rename parent to collision_object in CollisionShape(2D/3D)
2023-06-07 12:02:27 -05:00
Hugo Locurcio
fc4ec42a09
Increase precision in particle damping properties in the editor
2023-06-07 15:26:02 +02:00
Rémi Verschelde
2a1bc05901
Merge pull request #77469 from lyuma/skeleton_ik_roll_fix
...
Fix for SkeletonIK3D interpolation and bone roll
2023-06-06 20:39:46 +02:00
Lyuma
9aa46bf3f5
Fix for SkeletonIK3D interpolation and bone roll
...
Fix bug in internal Basis::rotate_to_align function (also used with identity Basis in scene/resources/curve.cpp)
Use ChainItem children rather than local bone rest to determine IK bone roll to match Godot 3.x behavior
2023-06-05 20:44:45 -07:00
detomon
ea80213eee
Fix adding bones with the same name after calling Skeleton3D.clear_bones()
2023-06-05 11:55:09 +02:00
Lyuma
300aa06dba
SkeletonIK3D: Avoid holding hard pointers to Skeleton3D
2023-05-25 03:23:24 -07:00
Silc Renew
42aa5398d9
Fix Pathfollow direction
...
Co-authored-by: aaronfranke <arnfranke@yahoo.com>
2023-05-24 17:37:00 +09:00
Rémi Verschelde
6f34a23439
Merge pull request #76082 from reduz/ability-to-look-at-in-model-space
...
Add the ability to look-at in model-space.
2023-05-24 08:46:53 +02:00
Juan Linietsky
5fdc1232ef
Add the ability to look-at in model-space.
...
This is a much simpler attempt to solve the same problem as #76060 , but without breaking any compatibility.
* Adds a description of what model space is in the Vector3 enums (MODEL_* constants). This has the proper axes laid out for imported 3D assets.
* Adds the option to `look_at` using model_space, which uses Vector3.MODEL_FRONT as forward vector.
The attempt of this PR is to still break the assumption that there is a single direction of forward (which is not the case in Godot)
and make it easier to understand where 3D models are facing, as well as orienting them via look_at.
2023-05-24 10:10:24 +09:00
Artyom Lunchenkov
f645eee62e
Improve Skeleton3D::find_bone() performance
2023-05-23 21:02:46 +06:00
Yuri Sizov
ca8bbf24ae
Merge pull request #77194 from lyuma/pose_global_no_override
...
Fix get_bone_pose_global_no_override()
2023-05-18 18:55:00 +02:00
Lyuma
565803ce3d
Fix get_bone_pose_global_no_override()
2023-05-18 03:14:45 -07:00
Pedro J. Estébanez
50cf3d6966
Optimize threading-sensitive node data for single-threaded processing
2023-05-17 02:04:41 +02:00
Rémi Verschelde
59c19a7172
Merge pull request #75250 from bruvzg/lbl_rtl_jst_flags
...
Expose TextServer justification flags to Label, Label3D, TextMesh and RTL. Add flags to control last/single line justification.
2023-05-16 10:48:45 +02:00
Rémi Verschelde
8cfa19a078
Merge pull request #77000 from reduz/make-more-base-nodes-thread-safe
...
Make more base nodes thread safe
2023-05-16 00:31:56 +02:00
bruvzg
9163d8c336
Expose TextServer justification flags to Label, Label3D, TextMesh and RTL. Add flags to control last/single line justification.
2023-05-15 19:23:54 +03:00
Juan Linietsky
0a9f72d5a8
Make more base nodes thread safe
...
Ongoing work to make more of the base nodes thread safe.
2023-05-15 16:54:10 +02:00
kleonc
d3d84d90de
Fix AnimatedSprite3D autoplay warning
2023-05-13 13:10:38 +02:00
Rémi Verschelde
cc48827e4a
Merge pull request #76946 from AThousandShips/shadow_warning
...
Enable shadow warnings and fix raised errors
2023-05-12 10:04:09 +02:00
smix8
f986b52b3c
Make navigation mesh edge connections optional
...
Makes navigation mesh edge connections optional.
2023-05-11 18:46:34 +02:00
Ninni Pipping
71ee65dc57
Enable shadow warnings and fix raised errors
2023-05-11 16:00:59 +02:00
smix8
7e1a261cc6
Prevent unnecessary navigation map synchronizations
...
Prevents unnecessary navigation map synchronizations triggered by redundant calls to setters of e.g. region, link or map properties.
2023-05-11 07:38:16 +02:00
Rémi Verschelde
5271186f2f
Merge pull request #75901 from reduz/refactor-node-processing
...
Refactor Node Processing to allow Scene Multithreading
2023-05-10 12:46:44 +02:00
smix8
a6ac305f96
Rework Navigation Avoidance
...
Rework Navigation Avoidance.
2023-05-10 05:01:58 +02:00
Juan Linietsky
98c655ec8d
Refactor Node Processing
...
* Node processing works on the concept of process groups.
* A node group can be inherited, run on main thread, or a sub-thread.
* Groups can be ordered.
* Process priority is now present for physics.
This is the first steps towards implementing https://github.com/godotengine/godot-proposals/issues/6424 .
No threading or thread guards exist yet in most of the scene code other than Node. That will have to be added later.
2023-05-09 19:17:51 +02:00
RedworkDE
8e7afec479
Fix various errors when running the unit tests
...
Co-authored-by: bruvzg <7645683+bruvzg@users.noreply.github.com>
2023-05-09 18:40:56 +02:00
Max Hilbrunner
03dfae4208
Merge pull request #76004 from mashumafi/wait-nav-region-thread
2023-05-05 13:50:09 +02:00
mashumafi
a93a2e519d
Wait for navigation baking to finish before destruction
2023-05-02 21:05:47 -04:00
VolTer
818d57b5b4
Light3D show scaling warning immediately
2023-05-01 02:55:17 +02:00
Samuele Panzeri
4aaa2e6477
Fix wait for thread not started
2023-04-27 20:28:22 +02:00
Samuele Panzeri
a2be742f97
Fix editor lock on sdf collision bake on error
2023-04-19 11:00:11 +02:00
Rémi Verschelde
b5b371cf7c
Merge pull request #70332 from aaronfranke/rigid-body-units
...
Improve some units in RigidBody nodes
2023-04-18 23:38:20 +02:00
Yuri Sizov
8f113c6532
Merge pull request #72749 from aaronfranke/area-priority
...
Make Area physics priority consistently int and allow negative numbers
2023-04-18 14:21:06 +02:00
Aaron Franke
87bd8d2dcf
Make Area physics priority consistently int and allow negative numbers
2023-04-18 13:50:20 +02:00
smix8
4490a3303b
Fix NavigationMesh debug visuals for non-triangulated meshes
...
Fixes NavigationMesh debug visuals for non-triangulated meshes.
2023-04-16 23:31:54 +02:00
Aaron Franke
a83ce0b104
Improve some units in RigidBody nodes
2023-04-15 22:03:24 -05:00
clayjohn
821917ba9f
Use angle_rand to calculate base_angle in particles process material
2023-04-13 15:10:47 -07:00
smix8
1549aeaef8
Add Mesh ConvexDecompositionSettings wrapper
...
Adds wrapper MeshConvexDecompositionSettings to control parameters for Mesh ConvexDecomposition operations.
2023-04-07 22:39:25 +02:00
smix8
aadf33efd8
Fix NavigationObstacles not being added to avoidance simulation
...
Fixes NavigationObstacles not being added to avoidance simulation.
2023-04-06 16:32:49 +02:00
Aaron Franke
dd0eb1ab47
Change VehicleWheel3D suspension travel to use meters internally
2023-04-03 12:34:05 -07:00
Rémi Verschelde
b237df8cea
Merge pull request #75326 from smix8/navigationagent_expose_parameters_4.x
...
Expose NavigationAgent path postprocessing and pathfinding algorithm options
2023-04-03 16:02:21 +02:00
Brennen Shaughnessy
2d16fe681d
Fixed property hint for platform layers on 3D physics body
2023-03-31 19:40:45 -04:00
Yuri Sizov
1222d35cdd
Merge pull request #75398 from newobj/issue-75218
...
Update GPUParticles2D/3D speed scale on ENTER_TREE
2023-03-28 16:34:58 +02:00
Brian Long
4652fbd09e
Update GPUParticles2D/3D speed scale on ENTER_TREE
...
Fix for https://github.com/godotengine/godot/issues/75218
Pause notifications are not sent when a node is added as a child. So GPUParticles2D should also obey its can_process status on ENTER_TREE, not just PAUSED/UNPAUSED.
2023-03-27 13:24:59 -07:00
Yuri Sizov
2659fc1a34
Merge pull request #75266 from rburing/shapecast2d_disconnect
...
Port robust signal (dis)connection to `ShapeCast2D`
2023-03-27 13:08:58 +02:00
smix8
6e324bb341
Expose NavigationAgent path postprocessing and pathfinding algorithm options
...
Exposes the path postprocessing and pathfinding algorithm options of the NavigationAgent internal NavigationPathQueryParameters object.
2023-03-25 21:37:18 +01:00
Ricardo Buring
5bed055cdd
Port robust signal (dis)connection to ShapeCast2D
...
Ported from ShapeCast3D.
2023-03-24 09:23:03 +01:00
Adam Scott
fd1dfdb960
Set VehiculeWheel3D suspension_travel
default value to a resonable one
2023-03-18 16:33:33 -04:00
smix8
0b8798a995
Fix NavigationAgent3D debug path duplicated points
...
Fixes duplicated points in NavigationAgent3D debug path.
2023-03-16 09:19:04 +01:00
Rémi Verschelde
449e658583
Merge pull request #74555 from RedworkDE/cpuparticles3d-update-buffer-overrun
...
Fix buffer overrun in `CPUParticles3D` in `precision=double` builds
2023-03-08 08:58:11 +01:00
RedworkDE
89980dd9c9
Fix buffer overrun in CPUParticles3D
2023-03-07 15:46:51 +01:00
Johan Aires Rastén
007b488a5c
Fixed incorrect ERROR message when setting new PrimitiveMesh
...
If calling set_mesh with a PrimitiveMesh that has pending update, the
_mesh_changed function would be called twice. The first time before
set_base had been called, which could lead to an ERROR message about
trying to set an invalid surface override material.
2023-03-04 10:48:47 +01:00
Rémi Verschelde
a2ecbb7c37
Merge pull request #73749 from fabriceci/expose-apply-floor-snap
...
Exposes the apply_floor_snap function to allow manual snap
2023-03-03 11:03:42 +01:00
clayjohn
c69b14e96e
Add warnings for unsupported features in mobile and gl_compatibility backends
2023-02-26 12:28:02 -08:00
smix8
5d1a6e9b12
Fix ShapeCast3D add and remove exception functions
...
Fixes that ShapeCast3D would accept any parameter object and silently return when it was not a CollisionObject3D.
2023-02-23 23:45:16 +01:00
fabriceci
1381e6da4f
Exposes the apply_floor_snap function to allow a snap to be made regardless of velocity.
2023-02-22 14:08:32 +01:00
PrecisionRender
e713c270ea
Fix crash when reparenting SoftBody3D with pinned points
2023-02-20 12:12:58 +01:00
Albin
82b90c0e08
Remove visual limit for damping in CPUParticles
...
Issue #56324 notes that you may can't set the damping property of
CPUParticles2D to anything more that 100 in the editor inspector
while you may set it to anything in code, this is considered a bug and
changed in this commit
2023-02-19 12:47:34 +01:00
Rémi Verschelde
9583c20171
Merge pull request #70515 from stmSi/fix-hanging-audio-pitch-scale
...
Fix hanging if audiostream's pitch_scale is NaN
2023-02-17 14:06:55 +01:00
Rémi Verschelde
db9007aef4
Merge pull request #73428 from smix8/navigation_tweak_agent3d_4.x
...
Tweak NavigationAgent3D defaults
2023-02-17 09:56:49 +01:00
clayjohn
76093d6a03
Only include emission when enabled in material during VoxelGI bake
2023-02-16 14:29:17 -08:00
smix8
8be4af38e4
Tweak NavigationAgent3D defaults
...
Tweaks default values for NavigationAgent3D to work better out of the box within a new 3D project.
2023-02-16 14:26:39 +01:00
Rémi Verschelde
953383328a
Merge pull request #73229 from smix8/navlink_global_positions_4.x
...
Add NavigationLink helper functions for global positions
2023-02-16 11:02:17 +01:00
smix8
d87f124768
Add NavigationLink helper functions for global positions
...
Adds helper functions to set the links start and end position with global positions or get them as global positions.
Adds global start and end position for the navigation link to the 'link_reached' signal of NavigationAgent. That signal gets emitted when a navigation link waypoint is reached. Requires that 'owner' meta data is enabled on the NavigationAgent.
2023-02-14 21:56:58 +01:00
Hugo Locurcio
8b1de103a8
Clamp Decal size to positive values
...
This prevents using negative size, while also preventing
error messages from being spammed if one of the decal's dimensions
is set to exactly 0.
2023-02-13 22:01:49 +01:00
Rémi Verschelde
a90bbc3544
Merge pull request #72225 from MinusKube/shaped_text_invalidated_bug
...
Mark dirty flags when shaped texts are invalidated
2023-02-13 09:13:27 +01:00
Rémi Verschelde
c3a04f71fd
Merge pull request #73136 from clayjohn/LightmapGI-exr
...
Set Default compression to VRAM uncompressed for LightmapGI
2023-02-12 10:35:58 +01:00
clayjohn
340c3b84fd
Set Default compression to VRAM uncompressed for LightmapGI
...
This increases the speed to be near instant and removes the perceived lightmap bake speed regression
We need to investigate the speed and quality issues with BPTC and re-enable compression when we can
2023-02-11 16:26:09 -08:00
Haoyu Qiu
65223e98de
Strip name prefix of navigation agent debug properties in the inspector
2023-02-11 16:34:08 +08:00
Haoyu Qiu
a40ccc2d7e
Improve some editor strings for localization
2023-02-09 19:32:02 +08:00
Rémi Verschelde
d69809cab6
Merge pull request #72947 from DarkKilauea/nav-fix-avoidance-callback
...
Fix missing avoidance updates when using same velocity
2023-02-09 10:13:35 +01:00
Josh Jones
097f8a5fdb
Fix missing avoidance updates when using same velocity
...
When using avoidance, if you set the same velocity for the agent, you won't get an update from the avoidance system.
This changes both the `set_target_position` and `set_velocity` setters to always accept user provided values, even if they are the same. This ensures that repathing and avoidance logic is always run when the user expects.
2023-02-08 23:18:53 -08:00
smix8
820b841fcb
Fix NavigationAgent debug functions bindings in release builds
...
Fixes that certain NavigationAgent debug functions bindings were not available in release builds.
2023-02-08 21:49:04 +01:00
Markus Sauermann
826e54fa73
Some code simplifications
...
1. `number_width` isn't used later
2. `return_type` is used only once
3. AudioServer::get_singleton()->get_channel_count() always returns a channel_count of 1 or larger
4. negative `aa->backward` conditional
5. `current_canvas` == `find_world_2d()->get_canvas()`
6. identical if `render_shadows`
2023-02-07 14:30:16 +01:00
Josh Jones
20fdfd466b
Improve consistency of NavigationAgent setters
2023-02-02 22:51:37 -08:00
Rémi Verschelde
e52213e2fa
More codespell fixes, do more changes from previous ignore list
2023-02-01 12:11:36 +01:00
Rémi Verschelde
64f0dad2dc
Merge pull request #70446 from akien-mga/meshoptimizer-4a287848f
...
meshoptimizer: Sync with upstream commit 4a287848f
2023-02-01 07:40:23 +01:00
Rémi Verschelde
3eb1ac9fd2
Merge pull request #72075 from Maran23/extents-to-size
...
Replace Extents with Size in VoxelGI, ReflectionProbe, FogVolume, Decal and GPUParticles*3D
2023-02-01 07:30:09 +01:00
Rémi Verschelde
a350b42e4b
Merge pull request #72473 from aXu-AP/animatablebody3d-editor-move-fix
...
Fix AnimatableBody3D not being movable in editor
2023-02-01 07:28:47 +01:00
Rémi Verschelde
cf9df3b5d4
meshoptimizer: Sync with upstream commit 4a287848f
...
4a287848fd
2023-01-31 22:27:49 -08:00