Commit Graph

2695 Commits

Author SHA1 Message Date
Rémi Verschelde
0a6335924a
Merge pull request #91031 from Malcolmnixon/old-body-tracker-signals
Subscribe to correct tracker signals
2024-04-26 11:08:35 +02:00
Markus Stephanides
c14b395c78
Add no-change check to Label3D 2024-04-25 22:13:20 +02:00
Rémi Verschelde
f819c77d27
Merge pull request #90915 from rburing/no_more_speedrun
Fix `move_and_slide` wall slide acceleration (3D)
2024-04-25 12:11:13 +02:00
Malcolm Nixon
00f3dd0337 Subscribe to correct tracker signals 2024-04-22 18:40:18 -04:00
Rémi Verschelde
bffaa98b13
Merge pull request #90645 from Malcolmnixon/unified-xr-trackers
Rework XR Trackers to have a common ancestor
2024-04-22 12:52:07 +02:00
Rémi Verschelde
79557e7d0b
Merge pull request #76725 from smix8/meshbake_blendshapemix_4.x
Add option to bake a mesh from blend shape mix
2024-04-22 12:51:29 +02:00
Ricardo Buring
80c600d86b Fix move_and_slide wall slide acceleration (3D)
When travel is high enough, keep the global position resulting from the
move_and_collide call, and set the motion to the remainder from the
move_and_collide call. This ensures travel is taken into account once,
rather than twice.
2024-04-19 19:40:01 +02:00
Rémi Verschelde
e34399cdcb
Merge pull request #90861 from aaronp64/audio_stream_player_nan
Check for NaN in `set_volume_db` functions
2024-04-19 16:28:11 +02:00
Rémi Verschelde
1bd6fe81ea
Merge pull request #89538 from CrayolaEater/feature/custom-aabb-gizmos
Add Gizmo to display 3D custom AABB
2024-04-19 16:27:16 +02:00
Rémi Verschelde
42e6f9a9d8
Merge pull request #76140 from jeronimo-schreyer/add_secondary_light_to_3d_resource_importer
Added secondary light to 3D Advanced Import Settings
2024-04-19 16:26:42 +02:00
Malcolm Nixon
823ae7b3fa Rework XR Trackers to have a common ancestor. Allow creation of XRNode3D to drive node positions and visibility. 2024-04-18 20:04:01 -04:00
Bogdan Inculet
8caa1b8783 Add Gizmo to display 3D custom AABB 2024-04-19 02:31:30 +03:00
aaronp64
58931c073d Check for NaN in set_volume_db functions
Added check in AudioStreamPlayer, AudioStreamPlayer2D, and AudioStreamPlayer3D set_volume_db functions to prevent setting volume to NaN, and give an error.  Using NaN for volume and playing the AudioStreamPlayer could prevent all audio from playing, even from other AudioStreamPlayers.

Fixes #88133
2024-04-18 11:28:57 -04:00
Rémi Verschelde
be9b298317
Merge pull request #90780 from lyuma/skeletonik3d_compat
Add SkeletonIK3D `get`/`set_interpolation` compat from #87888
2024-04-18 12:24:44 +02:00
Rémi Verschelde
6a70a69d1f
Merge pull request #90702 from permelin/fix-lightmap-warnings
LightmapGI: Reduce warnings and increase probe accuracy
2024-04-18 12:24:37 +02:00
Rémi Verschelde
d2ec3714d7
Merge pull request #90584 from BMagnu/fix_global_rotation_matrix
Fix `Node3D.set_global_rotation()` resetting node scale.
2024-04-18 12:24:27 +02:00
Lyuma
cb7ef2b8de Add SkeletonIK3D get/set_interpolation compat from #87888 2024-04-18 01:49:12 -07:00
Rémi Verschelde
54ba8d6882
Merge pull request #90810 from Arnklit/particles_processing_ring_shape_emission_axis_fix
Fix shader crash on zero vector and negative x vector in particles processing
2024-04-17 20:26:50 +02:00
Kasper Frandsen
f8d08a8376 fix: avoid shader crash on null vector and negative x vector 2024-04-17 17:33:30 +01:00
yds
4077129f9d Fix RayCast3D's debug draw transform not updating 2024-04-17 11:21:53 -03:00
Jeronimo Schreyer
c3bc768d64
Make Advanced Import lights more like the mesh and material editors
Co-authored-by: Aaron Franke <arnfranke@yahoo.com>
2024-04-16 10:15:25 -07:00
Birk Magnussen
dd97ff44ab
Fixes the issue where setting global rotation would reset scale.
This was caused because the basis for the target global transform was entirely recreated. This process did not account for the scale of the basis of the current global transform.
This PR amends this by scaling the recreated basis for the global transform by the current global scale of the Node3D.
Note that this scaling has to be done from the current global scale and not from the local scale of the Node3D, otherwise issues would arise if parents of this Node3D would be scaled.
2024-04-16 13:43:00 +02:00
Aaron Franke
77e35cf781
Move NavigationMeshSourceGeometryData(2D/3D) to the 2D/3D subfolders 2024-04-15 18:40:43 -07:00
Per Melin
a990e42207 LightmapGI: Reduce warnings and increase probe accuracy 2024-04-15 18:57:53 +02:00
Rémi Verschelde
4e1ed6bc23
Merge pull request #90668 from timothyqiu/owner-id
Store `ObjectID` instead of pointer for KinematicCollision owner
2024-04-15 10:00:32 +02:00
Haoyu Qiu
4176102a5e Store ObjectID instead of pointer for KinematicCollision owner 2024-04-15 12:28:36 +08:00
Silc Lizard (Tokage) Renew
78a5ef4158 replace bone_pose_updated to skeleton_updated signal 2024-04-13 05:48:42 +09:00
smix8
1c134f4a3d Add navigation path simplification
Adds navigation path simplification for NavigationServer and NavigationAgent.
2024-04-11 12:32:21 +02:00
smix8
5d6e8d7dff Add option to bake a mesh from blend shape mix
Adds option to bake a mesh from blend shape mix.
2024-04-10 23:35:28 +02:00
Lyuma
2854d0a7ca
Expose MeshInstance3D.get_skin_reference and add docs 2024-04-10 14:12:25 +02:00
Bastiaan Olij
509d8dba2a Add reflection probe support to compatibility renderer using 2 probe approach. 2024-04-09 16:53:28 +10:00
Kusok
c0cc9d2b5e Fix deprecated=no build 2024-04-06 23:13:38 +08:00
Rémi Verschelde
4d20840b11
Merge pull request #90231 from TokageItLab/mod-reset
Remove unavailable property binding `reset_on_save` from Skeleton3D
2024-04-05 12:16:44 +02:00
Rémi Verschelde
63db50654a
Merge pull request #90217 from Calinou/editor-decal-allow-greater-emission-energy
Allow Decal Emission Energy values above 128 in the inspector
2024-04-05 12:16:31 +02:00
Silc Lizard (Tokage) Renew
bf3ef56c2f Remove unavailable property binding reset_on_save from Skeleton3D 2024-04-05 08:47:50 +09:00
Hugo Locurcio
ae12244e13
Allow Decal Emission Energy values above 128 in the inspector
This also sets the maximum value for the slider to 16 to match
BaseMaterial3D (higher values can be entered or dragged manually).
2024-04-04 21:19:17 +02:00
Silc Lizard (Tokage) Renew
04dd299cba Skeleton3D: Add SkeletonModifier / Deprecate Override / Separate PB 2024-04-05 01:28:26 +09:00
Rémi Verschelde
7c6892662d
Merge pull request #90095 from QbieShay/qbe/fix-cpuparticle-instancew
Fix `INSTANCE_CUSTOM.w` not being assigned correctly in CPUParticles 2D and 3D
2024-04-04 14:37:15 +02:00
QbieShay
1d81068be7 Fixed INSTANCE_CUSTOM.w not being assigned correctly in CPUParticles 2D and 3D 2024-04-01 14:00:40 +02:00
kobewi
25f9f923a1 Rename some arguments called "position" 2024-03-27 01:28:24 +01:00
Rémi Verschelde
21dc88bf74
Merge pull request #89727 from Malcolmnixon/fix-avatars-without-root-bone
Fix XRBodyModifier3D hip driving for avatars no Root bone
2024-03-24 01:22:50 +01:00
Malcolm Nixon
435eb06e4b Fix for avatars without a root bone. 2024-03-20 23:56:10 -04:00
A Thousand Ships
79ba22a73f
Use Vector* component-wise min/max/clamp functions where applicable 2024-03-20 13:47:42 +01:00
Apples
a002b212df Fixed CPUParticles3D using angle incorrectly when ROTATE_Y is set. 2024-03-17 01:07:10 -05:00
smix8
5d5e85fe07 Add NavigationObstacle options to affect and carve navigation mesh
Adds NavigationObstacle options to affect and carve navigation mesh.
2024-03-15 01:45:44 +01:00
Rémi Verschelde
c6d5a782c7
Merge pull request #89468 from MrPersonDev/increase-rigidbody-mass-precision
Increase precision of RigidBody `mass` property
2024-03-14 22:35:16 +01:00
MrPersonDev
f63d76427d Increase precision of rigidbody mass 2024-03-13 21:17:25 -07:00
Hugo Locurcio
b2a3e8cb34
Move Max Contacts Reported below Contact Monitor in RigidBody inspector
This also changes the code used to hide the custom center of mass
property for consistency with other places in the editor
(only this approach worked for Contact Monitor as well).

The Center of Mass property hint in RigidBody2D was also modified
for better usability.
2024-03-13 23:17:35 +01:00
clayjohn
d8f2768b90 Improve warning when XR shaders are not enabled 2024-03-11 14:17:37 -07:00
Micky
ba867042a2 Fix Label3D, TextMesh & Font not following project default theme in editor 2024-03-09 17:35:48 +01:00
Rémi Verschelde
6c9a166308
Merge pull request #89219 from devloglogan/xr-profile-changed
Expose `profile_changed` signal to XRController3D
2024-03-07 00:24:03 +01:00
Rémi Verschelde
fcb0adf132
Merge pull request #89130 from Malcolmnixon/xr-hand-scaling
Fix XRHandModifier3D scaling
2024-03-07 00:23:56 +01:00
Logan Lang
1383401c71 Expose profile_changed signal to XRController3D 2024-03-06 16:48:25 -06:00
Rémi Verschelde
ee3c01068c
Merge pull request #89103 from Malcolmnixon/xr-body-hips-height
Fix XR Body crouching and climbing
2024-03-06 09:50:18 +01:00
Malcolm Nixon
2fdabd97f9 Modify the XRHandModifier3D to scale appropriately with Skeleton3D.motion_scale and XRServer.world_scale 2024-03-05 19:26:15 -05:00
Malcolm Nixon
d2db147805 Allow the hips joint to be positioned even if the bone update mode is set to "Rotation Only". Apply appropriate world and skeleton scaling. 2024-03-05 19:25:02 -05:00
Rémi Verschelde
257f1f6596
Merge pull request #89145 from bruvzg/lbl3d_aabb
[Label3D] Calculate AABB from the full text rect instead of individual glyphs.
2024-03-05 09:56:09 +01:00
bruvzg
e866ab4a72
[Label3D] Calculate AABB from the full text rect instead of individual glyphs. 2024-03-04 15:53:26 +02:00
Rémi Verschelde
8e6661cb48
Merge pull request #89056 from YeldhamDev/rotulo_tres_de
Make `Label3D` obey auto translation
2024-03-04 13:33:49 +01:00
Rémi Verschelde
d824b2c28e
Merge pull request #88884 from MajorMcDoom/bone-attach-global
Fix `BoneAttachment3D` responding to only local transform changes
2024-03-04 13:33:19 +01:00
Malcolm Nixon
8fcf385ac5 Allow the hips joint to be positioned even if the bone update mode is set to "Rotation Only". 2024-03-02 22:17:29 -05:00
Michael Alexsander
55b22c2bf6
Make Label3D obey auto translation 2024-03-01 14:19:17 -03:00
Rémi Verschelde
d9a881b37c
Merge pull request #89009 from smix8/navobstacle_debug_visibility
Fix NavigationObstacle3D debug not reacting to visiblity changes
2024-03-01 15:00:38 +01:00
Rémi Verschelde
79005978b7
Merge pull request #88947 from lawnjelly/fix_physics_platform_rid
Fix physics platform crash
2024-03-01 15:00:35 +01:00
Rémi Verschelde
c1377920cd
Merge pull request #86743 from Mickeon/autocompletion-optimise-object
Optimise comparisons for Object's `get_argument_options`
2024-03-01 14:56:06 +01:00
Micky
cd2032a90b Optimise Object's get_argument_options 2024-02-29 18:00:54 +01:00
smix8
785b5f4574 Fix NavigationObstacle3D debug not reacting to visiblity changes
Fixes NavigationObstacle3D debug not reacting to visiblity changes.
2024-02-29 15:45:43 +01:00
Rémi Verschelde
810a0dbff1
Don't access Node3D/Node2D/Control global transform in reparent unless needed
Fixes #89002.

Co-authored-by: Tamás Gálffy <ezittgtx@gmail.com>
2024-02-29 14:07:48 +01:00
Rémi Verschelde
df78c0636d
Merge pull request #88798 from Malcolmnixon/xr-body-tracker
XR: Add body tracking support.
2024-02-28 09:34:40 +01:00
lawnjelly
0b1266b812 Fix physics platform crash
Physics body previously stored the RID of a collision object and accessed it on the next frame, leading to a crash if the object had been deleted.
This PR checks the object still exists via the ObjectID prior to access.
2024-02-28 08:24:32 +00:00
Malcolm Nixon
57aa734562 Add body tracking support. 2024-02-27 19:51:59 -05:00
smix8
f556d7a54b Change ShapeCast3D and RayCast3D debug to use RenderingServer directly
Changes ShapeCast3D and RayCast3D debug to use RenderingServer directly.
2024-02-27 20:33:27 +01:00
smix8
35dafc9fa8 Split monolithic physics class files
Splits monolithic physics class files.
2024-02-27 11:18:16 +01:00
Zi Ye
8768db5c33 Fix BoneAttachment3D responding to only local transform changes 2024-02-26 12:59:57 -06:00
Aaron Franke
c399424db9
Move 3D-only resources to their own folder 2024-02-26 05:23:04 -06:00
Zi Ye
995bc8d049 Make Skeleton3D::add_bone return the new bone index right away, instead of requiring an additional call to get_bone_count. 2024-02-25 05:24:48 -06:00
Rémi Verschelde
0d83267923
Merge pull request #88639 from dsnopek/xrserver-hand-tracker
Provide generic interface for XR hand tracking
2024-02-23 22:19:05 +01:00
David Snopek
2184fa9698 Provide generic interface for XR hand tracking 2024-02-23 12:20:22 -06:00
Rémi Verschelde
0072a0ba31
Merge pull request #88684 from clayjohn/GLES3-visibility-notifier
Implement VisibilityNotifier3D in the compatibility backend
2024-02-23 11:29:50 +01:00
clayjohn
3c2f30ed23 Implement VisibilityNotifier3D in the compatibility backend 2024-02-22 12:35:24 -08:00
Rémi Verschelde
150f002092
Merge pull request #82984 from smix8/revert_blendshapes_4.x
Show revert button for MeshInstance3D blendshape values
2024-02-22 14:39:02 +01:00
Rémi Verschelde
292f4c7f97
Merge pull request #80214 from BastiaanOlij/rendering_effect
Implement hooks into renderer
2024-02-20 23:59:27 +01:00
Arman Elgudzhyan
c41725c9c6 Removed unnecessary AABB initialization for CPUParticles
Setting an AABB manually for CPUParticles unnecessarily registers as a custom AABB and can cause issues on some platforms and hardware.
2024-02-20 09:48:18 -08:00
Rémi Verschelde
aa7ac130c0
Merge pull request #88312 from Malcolmnixon/face-tracker-provider
Add XR Face Tracking support
2024-02-19 10:43:45 +01:00
Rémi Verschelde
7d4e24dc78
Merge pull request #88009 from nikitalita/Skeleton3D-missing-pose
Fix converted 3.x `Skeleton3D` missing pose
2024-02-19 10:43:41 +01:00
Bastiaan Olij
5a98845655 Implement hooks into renderer 2024-02-18 21:54:21 +11:00
Malcolm Nixon
7d1a1abe76 Initial XRFaceTrackingProvider and XRFaceTracker work.
Updated to XRFaceModifier3D.
2024-02-17 20:12:47 -05:00
Rémi Verschelde
21f0529aa9
Revert "Update Node::get_configuration_warnings signature"
This reverts commit d3852deaa4.
2024-02-17 19:03:21 +01:00
Rémi Verschelde
cde454434f
Merge pull request #88403 from Mickeon/VisibleOnScreenNotifier-is-differently-abled
Allow VisibleOnScreenNotifier2D/3D to have empty `enable_node_path`
2024-02-17 00:27:17 +01:00
Rémi Verschelde
d094b86d20
Merge pull request #88402 from mihe/double-soft-body
Fix `SoftBody3D` for double-precision builds
2024-02-17 00:27:11 +01:00
Micky
445b1e9c5f Allow VisibleOnScreenNotifier2D/3D to have empty enable_node_path 2024-02-16 17:34:02 +01:00
Mikael Hermansson
701ecd3a0d Fix SoftBody3D for double-precision builds 2024-02-16 15:49:56 +01:00
Arman Elgudzhyan
ec6518d9cd Custom ("visiblity") AABB support for CPUParticles
- Improves performance by reducing time spent on AABB generation.
- Also adds an option to generate the AABB manually in the CPUParticles3D dropdown.
2024-02-15 22:37:07 -08:00
Rémi Verschelde
4859f8090f
Merge pull request #85455 from xiongyaohua/fix_CSGPolygon_not_following_Path3D
Notify CSGPolygon about transform changes in Path3D
2024-02-15 15:44:39 +01:00
Rémi Verschelde
ca733a4bf8
Merge pull request #88019 from mihe/wrong-contact-count
Fix `get_contact_count` sometimes being incorrect in `_process`
2024-02-14 10:59:45 +01:00
Rémi Verschelde
eb77418075
Merge pull request #87006 from AThousandShips/frame_fix
Fix member names of `AudioFrame` to match extension
2024-02-13 17:23:37 +01:00
Rémi Verschelde
473c27904a
Merge pull request #80233 from xiongyaohua/fix_pathfollower3d_rotation_mode
Fix PathFollow3D update issues
2024-02-13 17:22:59 +01:00
A Thousand Ships
d8b29efe66
Fix member names of AudioFrame to match extension 2024-02-13 15:37:09 +01:00
smix8
2dfa023135 Show revert button for MeshInstance3D blendshape values
Shows revert button for MeshInstance3D blendshape values.
2024-02-13 00:43:05 +01:00
Rémi Verschelde
5306b917e6
Merge pull request #87164 from 0x0ACB/camera_fix
Rename camera `near` and `far` private members to avoid conflict with `Windows.h` defines
2024-02-12 23:29:22 +01:00
smix8
c914e63464 Fix NavigationRegion errors from signal changes
Fixes NavigationRegion errors from signal changes.
2024-02-10 03:04:24 +01:00
A Thousand Ships
684752e75b
Replace error checks against size with is_empty 2024-02-09 12:50:15 +01:00
Rémi Verschelde
dd275238d1
Merge pull request #86907 from aaronfranke/getter-const
Change AudioStreamPlayer autoplay and GLTFBufferView getters to be const
2024-02-09 12:33:09 +01:00
RedMser
d3852deaa4 Update Node::get_configuration_warnings signature 2024-02-08 23:05:20 +01:00
Aaron Franke
35c99bbcc1
Change AudioStreamPlayer autoplay and GLTFBufferView getters to be const 2024-02-08 13:01:50 -06:00
Rémi Verschelde
9484a3776b
Merge pull request #87583 from milkiq/master
Modify display and documentation of attenuation for Light3D
2024-02-08 10:53:40 +01:00
Rémi Verschelde
251d5b3669
Merge pull request #87715 from Scony/add-is-baking
Expose `is_baking` method in navigation servers and region nodes.
2024-02-07 10:58:27 +01:00
Mikael Hermansson
f2d615cdc7 Fix contact count sometimes being incorrect in _process 2024-02-06 14:29:43 +01:00
nikitalita
3fbbc3bbd6 Fix Skeleton3D deprecated format missing pose 2024-02-05 23:36:31 -08:00
milkiq
cf453ae8d9 Modify display and documentation of attenuation for Light3D 2024-02-06 12:41:30 +08:00
Pawel Lampe
c2cfc0d409 Expose is_baking method in navigation servers and region nodes. 2024-02-05 22:04:22 +01:00
Hugo Locurcio
93be97e6a7
Make ShaderMaterial always the last option in inspector resource dropdowns
ShaderMaterial is the "advanced" option, while the "basic" options
should be listed first for easier accessibility (and because they're
generally used more often).

This makes sky and particle materials consistent with
canvas/spatial/fog materials on this aspect.
2024-02-05 21:49:17 +01:00
A Thousand Ships
fb1662b939
Fix crash with PhysicsBody2D/3D::get_gravity with invalid state 2024-02-05 16:40:49 +01:00
Rémi Verschelde
acde2a81ff
Merge pull request #84640 from aaronfranke/gravity-get
Expose a method to get gravity for any physics body
2024-02-05 14:48:31 +01:00
A Thousand Ships
6d3c987808
Fix max_collisions not being passed in PhysicsBody3D::test_move 2024-02-03 16:19:09 +01:00
Rémi Verschelde
7de27ea56a
Merge pull request #84643 from rsburke4/top-level-problem-fix
Fix `Node3D` children using `top_level` in different position in-editor versus runtime
2024-02-02 12:01:25 +01:00
Aaron Franke
b015fba2c8
Orthonormalize PhysicalBone3D transforms 2024-01-31 00:10:01 -06:00
Aaron Franke
aed5ea9460
Expose a method to get gravity for any physics body 2024-01-30 23:57:38 -06:00
Aaron Franke
52aa5668fe
Fix AudioStreamPlayer3D autoplay and internal notifications 2024-01-30 00:56:12 -06:00
Rémi Verschelde
fa48a51183
Merge pull request #87688 from AThousandShips/what_is_this
Remove unnecessary `this->` expressions
2024-01-29 13:18:09 +01:00
Rémi Verschelde
440d8cd989
Merge pull request #87167 from 0x0ACB/public_character_body
Make CharacterBody properties public
2024-01-29 13:16:48 +01:00
A Thousand Ships
15369fdb1d
Remove unnecessary this-> expressions 2024-01-29 09:59:18 +01:00
Rémi Verschelde
e96030ecb4
Merge pull request #87506 from mihe/soft-body-without-attachment
Fix error when pinning soft body point without attachment
2024-01-26 11:46:13 +01:00
ACB
9d0302d708 Make CharacterBody properties public 2024-01-25 10:31:16 +01:00
clayjohn
efb1cbaad4 Add GLES3 infrastructure for lightmap baking in the compatibility backend 2024-01-24 17:13:30 -08:00
Mikael Hermansson
a3f07ad858 Fix error when pinning soft body point without attachment 2024-01-23 16:37:48 +01:00
Yuri Sizov
36f5050c34 Merge pull request #87050 from nikitalita/convert-3.x-skeletons
Skeleton3D: Convert 3.x skeletons
2024-01-22 20:38:51 +01:00
Yuri Sizov
e95456b7f3 Merge pull request #86073 from m4rr5/add_reflection_mask
Add a reflection mask to the reflection probes
2024-01-22 20:38:37 +01:00
Marcel Offermans
25f573ca63 Add a reflection mask to the reflection probes.
Co-authored-by: Bastiaan Olij <mux213@gmail.com>
2024-01-20 08:07:31 +01:00
nikitalita
bcad569ed9 Skeleton3D: Convert 3.x skeletons 2024-01-19 17:43:09 -08:00
Rémi Verschelde
8f9c815ddb
Merge pull request #87061 from KoBeWi/shadow_of_the_former_self
Add AudioStreamPlayerInternal to unify stream players
2024-01-18 09:34:42 +01:00
Yuri Sizov
2e1f4f4a9d Merge pull request #84610 from jsjtxietian/update-gizmo-right-after-assign
Fix CollisionObject3D Gizmo not updated after calling `shape_owner_*` functions
2024-01-17 18:52:26 +01:00
kobewi
0c7db3cdad Add AudioStreamPlayerInternal to unify stream players 2024-01-17 13:12:02 +01:00
jsjtxietian
80a488a242 Fix CollisionObject3D Gizmo not updated after calling shape_owner_* functions 2024-01-17 10:43:16 +08:00
Rémi Verschelde
3df0c5be6a
Merge pull request #86473 from reduz/audio-playback-parameters
Implement audio stream playback parameters.
2024-01-16 10:35:36 +01:00
Juan Linietsky
a40fe16866 Implement audio stream playback parameters.
Implements a way for audio stream playback to be configured via parameters
directly in the edited AudioStreamPlayer[2D/3D].

Currently, configuring the playback stream is not possible (or is sometimes hacky
as the user has to obtain the currently played stream, which is not always immediately available).

This PR only implements this new feature to control looping in stream playback instances (a commonly requested feature, which was lost in the transition from Godot 2 to Godot 3).
But the idea is that it can do a lot more:

* If effects are bundled to the stream, control per playback instance parameters such as cutoff or resoance, or any other exposed effect parameter per playback instance.
* For the upcoming interactive music PR (#64488), this exposes an easy way to change the active clip, which was not possible before.
* For the upcoming parametrizable audio support (https://github.com/godotengine/godot-proposals/issues/3394) this allows editing and animating audio graph parameters.

In any case, this PR is required to complete #64488.

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/minimp3/audio_stream_mp3.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update modules/vorbis/audio_stream_ogg_vorbis.h

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>

Update doc/classes/AudioStream.xml

Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-01-16 10:31:52 +01:00
Hugo Locurcio
a9893e278f
Show warning for GeometryInstance3D transparency in Mobile/Compatibility
This feature is currently only supported when using Forward+.
2024-01-15 20:51:22 +01:00
ACB
96b8016a35 Rename camera near and far private members to avoid conflict with Windows.h defines 2024-01-15 12:31:15 +01:00
kobewi
0e8f90f4c8 Update deferred calls to use Callables 2024-01-09 16:11:47 +01:00
Yaohua Xiong
43b184b409 Fix PathFollow3D update issues
- transform is not updated after setting new flags such as `use_model_front`
- transform is not updated when the parent Path3D changes
- correct_posture() behaves differently when assuming model front
- _update_transform() was in immediate mode, could leads to chained calls on scene instantiation.
2024-01-09 10:28:16 +08:00
Rémi Verschelde
97607b6ab3
Merge pull request #86474 from KoBeWi/particular_velocity
Only update particle velocity when it changes
2024-01-08 11:53:53 +01:00
Rémi Verschelde
26ae551108
Merge pull request #85870 from dsnopek/collision-object-3d-gdextension-virtuals
Fix overriding `CollisionObject3D::_mouse_enter()` and `_mouse_exit()` from GDExtension
2024-01-08 11:51:52 +01:00
Yaohua Xiong
0e344f0d0b Path3D notify transform change to CSGPolygon 2024-01-08 18:29:18 +08:00
Muller-Castro
96a95cb974 Add const lvalue ref to container parameters 2024-01-05 14:49:57 -03:00
Rémi Verschelde
85e999dc5e
Merge pull request #64908 from marcinn/lightmap-gi-texel-scale
Add `texel_scale` property to LightmapGI
2024-01-05 12:01:49 +01:00
Rémi Verschelde
f4059d0e3c
Merge pull request #86576 from bikemurt/no-concave-warnings
Add warning for using concave shape on CharacterBody3D
2024-01-04 16:40:10 +01:00
Marcin Nowak
eea2ad4019 Add texel_scale property to LightmapGI 2024-01-04 16:24:19 +01:00
Michael Burt
6838fe3f44 Add warning for using concave shape on CharacterBody3D
Additionally updated descriptions for RigidBody3D and VehicleBody3D
2024-01-04 09:33:01 -05:00
Rémi Verschelde
d822fd5322
Merge pull request #86733 from Mickeon/autocompletion-more-animated-sprite
Add autocompletion options for AnimatedSprite's other play methods
2024-01-03 10:15:01 +01:00
Micky
d5a7c7818c Add autocompletion options for AnimatedSprite's other play methods 2024-01-03 01:33:08 +01:00
Micky
ca2f340384 Fix missing autocompletion for inheriting classes 2024-01-03 00:13:04 +01:00
kobewi
cb0a37f61a Only update particle velocity when it changes 2023-12-23 18:04:24 +01:00
Yuri Sizov
252c462a9d Merge pull request #85594 from addmix/camera3d-current-bug
Prevent `Camera3D.current` from being set to `true` automatically in the editor.
2023-12-19 20:33:00 +01:00
Nicholas Foo
e7ee672120 Add getters to navigation servers
Add virtual functions and bind to navigation servers
Implement getters
Add documentation
2023-12-19 19:51:49 +01:00
Yuri Sizov
13dd72ce78 Merge pull request #85219 from dsnopek/light-bake-mode-no-gi-method
Remove GI methods in parentheses from light baking options
2023-12-19 13:01:40 +01:00
Yuri Sizov
4600acfc41 Merge pull request #85311 from miv391/add-change-guards-to-sprite2d
Add property change guards to Sprite2D, Sprite3D and AnimatedSprite2D
2023-12-18 18:17:49 +01:00
A Thousand Ships
0081a50e32 Prevent mapping areas with invalid IDs for Area2D/3D
This occurs when areas are created directly from the servers, and no
instance is linked.
2023-12-18 16:02:46 +01:00
Mika Viskari
5b9e67e0a5 Add property change guards to Sprite2D and AnimatedSprite2D 2023-12-16 20:25:35 +02:00
Yuri Sizov
1e86ce0b40 Merge pull request #85317 from miv391/fix-breaking-frame-index-in-sprites
Fix invalid `frame` index when Sprite2D's `hframes` or `vframes` has been changed
2023-12-16 17:49:38 +01:00
风青山
ea30aabfb1 Clear monitoring in Area* when its space changes to invalid
So that it can work properly when the space changes to valid again.

Change `space` in advance to prevent disabled areas from being queried again.
2023-12-15 20:54:54 +01:00
Mika Viskari
484c5b5aff Fix invalid frame index when Sprite2D's hframes or vframes has been changed 2023-12-15 20:32:18 +02:00
Yuri Sizov
302e41c264 Merge pull request #82561 from ershn/fix_navigation_agents_is_target_reached_behavior
Make `target_desired_distance` affect the navigation of `NavigationAgent2D/3D`
2023-12-14 21:22:35 +01:00
bruvzg
575e1201cb [TextServer] Do not draw non-visual characters. 2023-12-12 12:17:10 +02:00
Yuri Sizov
44d544fc98 Merge pull request #85120 from dsnopek/gl-lightmap
OpenGL: Implement rendering of lightmaps
2023-12-08 15:23:27 +01:00
Yuri Sizov
de5583c821 Merge pull request #83698 from BlueCube3310/curve-runtime-draw-improvement
Improve Curve3D debug drawing
2023-12-08 15:23:03 +01:00
David Snopek
bfdcd8559b Fix overriding CollisionObject3D::_mouse_enter() and _mouse_exit() from GDExtension 2023-12-06 16:39:43 -06:00
David Snopek
749f60ee36 OpenGL: Implement rendering of lightmaps 2023-12-04 18:34:06 -06:00
Rémi Verschelde
4ce65c6190
Merge pull request #83816 from smix8/navobstacle_properties
Fix missing NavigationObstacle property updates in constructor
2023-12-04 23:00:02 +01:00
Rémi Verschelde
1389d8a23f
Merge pull request #83814 from smix8/navagent_properties
Fix missing NavigationAgent property updates in constructor
2023-12-04 22:59:38 +01:00
Rémi Verschelde
4bd5ffd669
Merge pull request #83812 from smix8/navregion_properties
Fix missing NavigationRegion property updates in constructor
2023-12-04 22:59:13 +01:00
Rémi Verschelde
9be2f25c57
Merge pull request #83802 from smix8/navlink_properties
Fix missing NavigationLink property updates in constructor
2023-12-04 22:58:49 +01:00
smix8
25bf20d7a5 Fix missing NavigationRegion property updates in constructor
Fixes missing NavigationRegion property updates in constructor.
2023-12-04 19:50:17 +01:00
addmix
5b5ac92de5 Prevent Camera3D.current from being set to true automatically in the editor. 2023-12-01 02:48:53 -07:00
Ershn
fce16b6662 Make target_desired_distance affect the navigation of NavigationAgent2D/3D
When the target is reachable, stop the navigation only when the target is reached.
2023-11-29 23:48:54 +09:00
David Snopek
ce488930ea Remove GI methods in parentheses from light baking options 2023-11-22 08:42:40 -06:00
Pedro J. Estébanez
fe4850c0d0 Use mingw-std-threads in MinGW builds 2023-11-18 11:56:05 +01:00
Mikael Hermansson
a3278c772e Fix transform sync in RigidBody*D::_body_state_changed 2023-11-15 01:45:45 +01:00
kobewi
4296f0a771 Fill remaining global scope constant descriptions 2023-11-13 15:17:10 +01:00
Mikael Hermansson
21a3ed1715 Fix transform changes in _integrate_forces being overwritten 2023-11-12 19:32:08 +01:00
Rémi Verschelde
28ada4582e
Merge pull request #82604 from Calinou/editor-camera3d-size-property-hint
Tweak Camera3D `size` property hint to make dragging more useful
2023-11-10 21:54:10 +01:00
rsburke4
f191330968 Node3D children using top_level in different position in-editor vs. runtime 2023-11-09 05:10:35 -05:00
Rémi Verschelde
5eb5a99379
Merge pull request #84165 from clayjohn/softbody-bug
Ensure SoftBody3D does not use compressed mesh format.
2023-10-30 10:19:43 +01:00
Rémi Verschelde
e2c79bcb95
Merge pull request #82471 from SaracenOne/recache_bone_attachment
Reimport bone attachment fixes
2023-10-30 10:18:00 +01:00
clayjohn
1d9554103c Ensure SoftBody3D does not use compressed mesh format. 2023-10-29 22:45:47 +01:00
BlueCube3310
bd67e0a0bc Change dropdown type filter to Texture2D in certain nodes 2023-10-28 17:39:47 +02:00
Saracen
4b671eec0e Reimport bone attachment fixes:
Assign bone_idx to GLTF importer to fix serialization.
Notifies Skeletons and BoneAttachments when reimporting.
Removes usage of NOTIFICATION_NODE_RECACHE_REQUESTED
2023-10-27 20:34:01 +01:00
Rémi Verschelde
23b1f213a8
Merge pull request #81616 from bitsawer/fix_multimesh_voxelgi_bake
Fix VoxelGI MultiMesh and CSG mesh baking
2023-10-26 15:58:29 +02:00
Rémi Verschelde
bf46ee144d
Merge pull request #77788 from gongpha/stop-posting-about-(re)importing-assets-whatever-dot-exr
Avoid reimporting lightmap textures every getter call
2023-10-26 15:57:46 +02:00
Rémi Verschelde
346459e9fb
Merge pull request #83986 from SaracenOne/skeleton_bones_renamed_check
Add method check for `_notify_skeleton_bones_renamed`.
2023-10-26 12:10:32 +02:00
Saracen
d0e5bff542 Add method check for _notify_skeleton_bones_renamed. 2023-10-26 10:22:59 +01:00
Rémi Verschelde
79e9e201e8
Merge pull request #82415 from Calinou/reflectionprobe-fix-high-max-distance-rendering-2
Clamp ReflectionProbe Max Distance to 262,144 to fix rendering issues
2023-10-26 08:57:35 +02:00
bitsawer
cbb39f4b6e Fix VoxelGI MultiMesh and CSG mesh baking 2023-10-25 16:37:47 +03:00
Hugo Locurcio
e4d846378b
Fix LightmapGI taking editor-only and sky-only lights into account
These lights are not visible when running the project (or at all),
so they shouldn't affect the lightmap baking process.
2023-10-23 22:56:17 +02:00
smix8
618d9492d9 Fix missing NavigationObstacle property updates in constructor
Fixes missing NavigationObstacle property updates in constructor.
2023-10-23 05:10:58 +02:00
smix8
9640179f93 Fix missing NavigationAgent property updates in constructor
Fixes missing NavigationAgent property updates in constructor.
2023-10-23 04:27:49 +02:00
smix8
2f1668804c Fix missing NavigationLink property updates in constructor
Fixes missing NavigationLink property updates in constructor.
2023-10-23 01:43:55 +02:00
A Thousand Ships
72fccd82c5 [Audio] Fix pausing stream on entering tree
The paused notifications are only sent when pause status is changed,
this ensures that streams that are non-processing do not play when added
to the tree. Also ensures that the `process_mode` property applies
generally.
2023-10-22 22:35:32 +02:00
Kongfa Waroros
c165f0cf2e Avoid reimporting lightmap textures every getter call 2023-10-22 16:32:08 +07:00
smix8
b7be45279d Solve race condition between AThousandShips and Akien
Solves race condition between AThousandShips and Akien.
2023-10-21 19:04:41 +02:00
Rémi Verschelde
d2cd907e28
Merge pull request #83705 from smix8/agent_y_velocity_.4x
Fix NavigationAgent3D stored y-axis velocity and make it optional
2023-10-21 15:51:53 +02:00