Commit graph

2271 commits

Author SHA1 Message Date
bruvzg
1c774a6083
Fix unsafe murmur3 hash use for the default material keys, expose alpha hash transparency mode for default materials and Label3D and Sprite3D. 2023-01-24 12:24:53 +02:00
Rémi Verschelde
a6042b649a
Merge pull request #71832 from Geometror/fix-spotlight-artifacts
Fix some `SpotLight3D` issues (clustering artifacts, leaking light, AABB)
2023-01-24 09:15:26 +01:00
Hendrik Brucker
4bd01a93dc Fix some SpotLight3D issues (clustering artifacts, light leak) 2023-01-24 01:08:32 +01:00
Rémi Verschelde
bebac4a088
Merge pull request #71830 from BastiaanOlij/xr_naming_consistancy
Rename getters and signals on XR nodes to be consistant with input types
2023-01-23 16:47:15 +01:00
Rémi Verschelde
0927e2cffc
Merge pull request #63251 from SaracenOne/disable_data_generation_on_foreign_resources
Disable navmesh, lightmap, and VoxelGI generation on foreign data
2023-01-23 15:35:31 +01:00
Rémi Verschelde
1891d9fdf1
Merge pull request #71801 from akien-mga/codespell-en-GB-to-en-US
Convert en_GB spelling to en_US with codespell
2023-01-23 11:08:55 +01:00
Rémi Verschelde
809bd94394
Merge pull request #71906 from reduz/simplify-polyphonic-stream-player
Simplify AudioStreamPolyphonic
2023-01-23 11:07:32 +01:00
Rémi Verschelde
5b1df48c6c
Convert en_GB spelling to en_US with codespell 2023-01-23 11:02:20 +01:00
Juan Linietsky
4383b5ab1e Simplify AudioStreamPolyphonic
* Make AudioStreamPolyphonic not requre a polling thread (simpler, faster)
* Improve error reporting in AudioStreamPlayer*::get_stream_playback() error reporting to improve usability.
2023-01-23 10:47:01 +01:00
Rémi Verschelde
35c37ce4ce
Merge pull request #67847 from rburing/warn_non-uniformists
Warn against using non-uniform scale for 3D physics (in the editor and class reference)
2023-01-23 10:32:06 +01:00
Bastiaan Olij
52d4a56b3b Rename getters and signals on XR nodes to be consistant with input types 2023-01-23 11:26:12 +11:00
kobewi
615c517034 Use range iterators in LocalVector loops 2023-01-21 18:44:42 +01:00
Rémi Verschelde
7b622ce6e8
Merge pull request #71021 from reduz/prevent-physics-callback-removal
Error when removing a physics node during a physics callback
2023-01-21 11:28:02 +01:00
clayjohn
49bebf2bfb Sort decals and lights based on camera origin
Also implement sort_offset for decals

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
2023-01-20 09:58:17 -08:00
bruvzg
5361ec9f43
Implement BiDi override mode for GDScript source. 2023-01-18 19:22:20 +02:00
clayjohn
e0e073138d Enforce a default minimum lightmap size hint size 2023-01-13 17:46:55 -08:00
Lyuma
fd25bb50ab Remove SkeletonModificationStack3D, and Skeleton3D api cleanup
Removes all 3D modification resources. SkeletonIK3D is a node and still supported.
Remove deprecated Skeleton3D functionality for 4.0, so we can add it back in 4.x.
Remove local_pose_override feature from Skeleton3D and BoneAttachment3D.
Expose Skeleton3D::get_version() so IK scripts/extensions can cache bones.

Note: This change only affects 3D. SkeletonModification2D will work as before.
2023-01-12 12:04:53 -08:00
Rémi Verschelde
73ab514657
Fix style issue in ShapeCast3D after #68409
Somehow that PR didn't run the CI checks.
2023-01-12 19:28:58 +01:00
Rémi Verschelde
d20ebe98c4
Merge pull request #68409 from Jasuse/shapecast3d_dbg_shape_fix
Fix debug shape of `ShapeCast3D` not updating on `Shape` change
2023-01-12 17:19:20 +01:00
Rémi Verschelde
91713ced81
Merge pull request #70716 from Calinou/particles-tweak-animation-offset-property-hint
Tweak particles animation offset property hint to allow more precise values
2023-01-10 11:01:14 +01:00
Juan Linietsky
0e0a6bb39b
Removed unused property hints and Object::get_translatable_strings()
* Remove unused `EditorPropertyMember` and related hints, previouly used by
  VisualScript. Such logic should be implemented in the VS module itself.
* As the above broke compatibility with the VS module, clean up the other
  hacks that were still in core in support of VisualScript.
* `PROPERTY_USAGE_INTERNATIONALIZED` was only used in Object's
  `get_translatable_strings()`, which is a legacy function not used anywhere.
  So both are removed.
* Reordered some usage flags after the above removal to minimize the diff.
* General clean up.

Fixes #30203.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2023-01-09 16:56:01 +01:00
Rémi Verschelde
c3c5eceb35
Merge pull request #70463 from DarkKilauea/nav-server-const
[4.x] Rework const on NavigationServer methods
2023-01-08 22:50:05 +01:00
Rémi Verschelde
0d6fede757
Merge pull request #69809 from KoBeWi/runtime_enabler_2d
Fix VisibleOnScreenEnabler disabling in editor
2023-01-08 22:38:29 +01:00
Josh Jones
a0715b30f9 Rework const on NavigationServer methods
`const` is used on all methods, even when they cause modification of the server.  This reworks the methods of the server to only use `const` on method that don't change the state of the server.
2023-01-07 17:29:00 -08:00
Rémi Verschelde
3579d7a9f7
Merge pull request #36301 from KoBeWi/daddy_node
Add reparent methods to Node
2023-01-07 13:20:56 +01:00
Juan Linietsky
398e73c689 Error when removing a phycics node during a physics callback
* This behavior is not allowed, the error text suggests using call_deferred().
* Added a check in Node::remove_child to prevent future crashes of this type.
* Fixed a performance regression introduced by #36244.

Fixes #63718, probably other crashes too.
2023-01-07 12:57:24 +01:00
SaracenOne
f5edeb8f58 Disable navmesh, lightmap, and VoxelGI generation on foreign data 2023-01-06 08:39:27 -08:00
Rémi Verschelde
798582acf0
Merge pull request #65609 from dalexeev/animated-sprite
`AnimatedSprite{2D,3D}` improvements
2023-01-05 15:00:31 +01:00
Rémi Verschelde
d95794ec8a
One Copyright Update to rule them all
As many open source projects have started doing it, we're removing the
current year from the copyright notice, so that we don't need to bump
it every year.

It seems like only the first year of publication is technically
relevant for copyright notices, and even that seems to be something
that many companies stopped listing altogether (in a version controlled
codebase, the commits are a much better source of date of publication
than a hardcoded copyright statement).

We also now list Godot Engine contributors first as we're collectively
the current maintainers of the project, and we clarify that the
"exclusive" copyright of the co-founders covers the timespan before
opensourcing (their further contributions are included as part of Godot
Engine contributors).

Also fixed "cf." Frenchism - it's meant as "refer to / see".
2023-01-05 13:25:55 +01:00
JoJoX
4e0103ff40 Test joint type on _set for PhysicalBone joints 2023-01-05 12:23:44 +01:00
Danil Alexeev
0d25d8e7fc
AnimatedSprite{2D,3D} improvements
* Add support for individual frame duration to `SpriteFrames`.
* Various minor improvements.
2023-01-05 13:13:25 +03:00
Rémi Verschelde
151e1355e8
Merge pull request #63650 from fabriceci/apply-moving-platform-angular-velocity
Allow to apply the angular velocity of a moving platform
2023-01-03 12:39:35 +01:00
Rémi Verschelde
1b634c06d0
Merge pull request #69972 from adamscott/add-server-checks-before-free
Add safety-checks before some servers `free()`
2023-01-03 12:22:24 +01:00
Clay John
61c7b7fb13
Merge pull request #67853 from Zylann/fix_lods_with_doubles
Fix usages of mesh simplification functions in float=64 builds
2023-01-02 12:33:44 -07:00
Adam Scott
ea33001b95 Add safety-checks before some servers free() 2022-12-29 16:23:38 -05:00
Hugo Locurcio
8df24835e0
Tweak particles animation offset property hint to allow more precise values
Values above 1.0 (or below 0.0) are no longer allowed, as these make
no visual difference whatsoever (and may cause particles not to appear
at all if looping is disabled).
2022-12-29 22:15:17 +01:00
stmSi
2041616934 Fix Editor hanging if audiostream's pitch_scale is NaN 2022-12-24 12:39:48 +06:30
Rémi Verschelde
1cab6c91e9
Merge pull request #69998 from BastiaanOlij/sorting-pivot-4
Added options for sorting transparent objects (port of PR #63040)
2022-12-23 09:47:24 +01:00
Bastiaan Olij
6f4f38db07 Added options for sorting transparent objects (port of PR 63040) 2022-12-23 19:30:33 +11:00
clayjohn
1cc232ea4e Remove compatibility code for MeshInstance3D surface override material 2022-12-22 20:25:17 -07:00
Rémi Verschelde
f84c308cf8
Merge pull request #69688 from smix8/navagent_stop_origin_automove_4.x
Stop NavigationAgents without a target from moving to world origin
2022-12-21 19:39:25 +01:00
Rémi Verschelde
5ad02aa08d
Merge pull request #67111 from DarkKilauea/nav-queries-link
Added signal to NavigationAgent when entering a link
2022-12-21 19:38:20 +01:00
Rémi Verschelde
f1f6b35b8c
Merge pull request #70244 from DarkKilauea/nav-fix-abbrev-compat
[4.x] Fix typo and ensure backwards compatibility for changed property names
2022-12-20 10:32:26 +01:00
Rémi Verschelde
5aab37f4b8
Merge pull request #70312 from MarcusElg/rigidbodyworldboundarywarning
Show warning when having a WorldBoundaryShape3D as a child of a RigidBody3D
2022-12-20 10:32:05 +01:00
Josh Jones
0572346985
Fix typo and ensure backwards compatibility for changed property names
Changes to the name of the `navmesh` and `navpoly` properties on
`NavigationRegion` caused navigation data to be lost on load.
This PR creates uses `_set`/`_get` to handle compatibility with the
older names on load, preserving the data.

Also fixes a typo on `get_vertices_per_polygon` in `NavigationMesh`,
and renames the property to remove the `polygon_` prefix which doesn't
match the setter/getter.

Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
2022-12-20 09:57:54 +01:00
Marcus Elg
a39d894811 Show warning when having a worldboundaryshape as a child of a rigidbody 2022-12-19 19:37:22 +01:00
Juan Linietsky
80b578b060 Restore 'rotation_degrees' properties.
By popular demand, restoring the helper properties to rotate objects in degrees.
Affected are local and global rotations for:

* Node2D
* Node3D
* Control
2022-12-19 10:59:47 +01:00
Josh Jones
5d8ba2b2d1 Add support for emitting a signal when entering a NavLink 2022-12-17 16:33:41 -08:00
smix8
34e7628f5f Fix Navigation API abbreviations inconsistency
Schema for navigation to name user facing API with  "navigation" without abbreviation and e.g. NavigationServer internals with abbr "nav".
2022-12-17 22:06:22 +01:00
Rémi Verschelde
7972107c48
Merge pull request #70114 from clayjohn/custom-aabb
Expose GeometryInstance3D.custom_aabb property
2022-12-17 12:27:46 +01:00
clayjohn
1a890b1641 Switch surface indexing to start at 0 so string name matches integer index 2022-12-16 16:26:46 -08:00
clayjohn
5d51478d70 Expose GeometryInstance3D.custom_aabb property 2022-12-15 10:03:40 -08:00
Yuri Rubinsky
bf3966abf9 Fix the update of the inspector when instance shader uniform has changed 2022-12-15 18:39:30 +03:00
clayjohn
0c0e1a637e Remove extra range conversion in Sprite3D normal encoding 2022-12-14 15:41:43 -08:00
kobewi
256e250c87 Fix VisibleOnScreenEnabler disabling in editor 2022-12-14 00:25:53 +01:00
Rémi Verschelde
db0b990e2c
Merge pull request #69527 from clayjohn/surface-name
Index override surface name starting from 1 to match surface name
2022-12-14 00:20:13 +01:00
Rémi Verschelde
ec8f52df8f
Merge pull request #69629 from smix8/agent_wild_callback_pointer_4.x
Fix Navigation agent callback wild pointer crash
2022-12-12 13:51:48 +01:00
smix8
194c1c44e0 Fix Navigation agent callback wild pointer crash
Fixes crash in sanitizer builds when callback agent or object are already freed.
2022-12-12 13:03:55 +01:00
Rémi Verschelde
73837182fd
Merge pull request #69850 from timothyqiu/defer-gizmo
Use ObjectID as argument when referred-calling `_request_gizmo`
2022-12-11 11:51:51 +01:00
Josh Jones
5769b0e8d8 Enable assigning an owner to navigation regions and links
This allows users of the server APIs to get back the nodes that created certain regions and links.
2022-12-10 12:03:06 -08:00
Haoyu Qiu
f6ae2f2fd5 Use ObjectID as argument when referred-calling _request_gizmo
Fixes crash on project launch.
2022-12-10 18:52:10 +08:00
clayjohn
29dea68bab Index override surface name starting from 1 to match surface name 2022-12-07 11:56:39 -08:00
Rémi Verschelde
f9bd2ace0b
Merge pull request #68682 from timothyqiu/camera-gizmo-size
Make Camera3D gizmo the same aspect ratio as its viewport
2022-12-07 13:25:35 +01:00
smix8
860379fc16 Stop NavigationAgents without a target from moving to world origin
Stops NavigationAgents moving to the world origin without anyone telling them to do so.
2022-12-06 22:53:18 +01:00
Hugo Locurcio
e560971bf2
Tweak shadow bias defaults for DirectionalLight3D and OmniLight3D
- Increase DirectionalLight3D normal bias to 2.0 to reduce shadow acne
  at grazing angles.
- Decrease OmniLight3D bias to 0.1 to reduce shadow peter-panning.
2022-12-05 21:53:29 +01:00
Rémi Verschelde
4211c6d74d
Merge pull request #69531 from BastiaanOlij/fix_origin_current_issue
Fix recurrence issue with setting current origin node
2022-12-05 10:13:55 +01:00
Bastiaan Olij
80824e9858 Fix recurrense issue with setting current origin node 2022-12-05 08:18:51 +11:00
bruvzg
08d7c24ebe
[TextMesh] Fix autotranslate. 2022-12-04 23:04:48 +02:00
dzil123
d50a2e1e51 GPUParticlesCollisionSDF3D add null bake_step_function check 2022-11-28 00:36:14 -08:00
Aaron Franke
93ab82536d
Use a more specific type for Mesh create_(convex|trimesh)_shape 2022-11-25 11:43:11 -06:00
Jasuse
749bdad23c Fixing debug shape update of ShapeCast3D
fixed update conditiion at set_shape
added "changed" notification to update on shape changing
2022-11-24 22:31:35 +03:00
Micky
b6db09968d Fix AudioStreamPlayer2D and 3D's playing not updating right away 2022-11-22 15:46:28 +01:00
Rémi Verschelde
3a874804ab
Merge pull request #68886 from timothyqiu/motion-distance
Revert move vector parameter name to "motion"
2022-11-20 11:43:32 +01:00
Hugo Locurcio
2a0afb1dcc
Improve collision exception error messages for easier understanding 2022-11-19 17:35:44 +01:00
Haoyu Qiu
42ab2b9ef5 Revert move vector parameter name to motion 2022-11-19 20:19:50 +08:00
Rémi Verschelde
8ab3e73a79
Merge pull request #64212 from xiongyaohua/curve3d_baking_refactor
Move rotation interpolation to Curve3d and refactor baking
2022-11-18 16:20:14 +01:00
Rémi Verschelde
ee1d4d4a52
Merge pull request #68725 from TokageItLab/fix-bone-renamer-for-conflicting
Improve BoneRenamer to avoid conflicting with original bone name
2022-11-16 09:27:34 +01:00
Silc Renew
ac1db40614 Improve BoneRenamer to avoid conflicting with original bone name 2022-11-16 16:36:33 +09:00
Rémi Verschelde
d0025a1f02
Merge pull request #64077 from Calinou/tweak-audiostreamplayer2d3d-default-panning
Decrease default AudioStreamPlayer2D/3D panning strength
2022-11-15 22:29:23 +01:00
Haoyu Qiu
6c5dc78f59 Make Camera3D gizmo the same aspect ratio as its viewport 2022-11-15 17:31:53 +08:00
clayjohn
9ce57050a5 Add GPUParticles to the OpenGL3 renderer.
This includes collision (2D SDF, Box, Sphere, Heightmap),
attraction (Box, Sphere), and all sorting modes.

This does not include 3D SDF collisions, trails, or
manual emission.
2022-11-14 23:28:25 -08:00
Markus Sauermann
3b14f0334c Remove redundant Variant-types initializations 2022-11-14 19:35:19 +01:00
Yaohua Xiong
5241464a46 Refactor Curv3D and PathFollow3D
This commit makes the following major changes

1. Add "sample_baked_with_rotation()" to Curve3D, making it usable independently. A similar change was made to Curve2D previously.
2. Refactor the _bake() method on Curve3D, using Parallel Transport Frame instead of Frenet Frame.
3. Refactor the sample_* methods, including:
  i. Factor out common binary search code, following the DRY principe
  ii. sample_up_vector() interpolated up vector as part of rotation frame(posture) for consistancy and accuracy.
2022-11-12 12:03:54 +08:00
Marc Gilleron
2aefdcc26e Fix usages of mesh simplification functions in float=64 builds 2022-11-12 00:38:00 +00:00
Yuri Rubinsky
c07d13182c Some fixes for instance shader parameters 2022-11-09 21:20:11 +03:00
Rémi Verschelde
e2b39bfdc4
Merge pull request #68346 from Calinou/particles-rename-trail-length-property
Rename GPUParticles2D/3D's `trail_length_secs` to `trail_lifetime`
2022-11-07 15:05:55 +01:00
Hugo Locurcio
ab7a807f2b
Rename GPUParticles2D/3D's trail_length_secs to trail_lifetime
The property already has a "seconds" suffix in the inspector.
The "lifetime" term makes it more obvious that the property is
specified as time, not a distance in units.

The property hint now allows manually entering values greater than
10 seconds.

The internal rendering value's default now matches the particles
nodes' default.
2022-11-07 13:37:40 +01:00
Rémi Verschelde
c4f3b94abf
Merge pull request #68321 from BastiaanOlij/xrorigin_start_pos
Update XRServer with starting position of (new) current XROrigin3D
2022-11-07 08:45:24 +01:00
Bastiaan Olij
23e0afec1d Update XRServer with starting position of (new) current XROrigin3D 2022-11-06 22:19:44 +11:00
kobewi
1778301cd0 Add call_deferred() method to Callable 2022-11-04 17:24:34 +01:00
Patrick Siemsen
0b480c7d99 Fix typo in method of visual_instance_3d 2022-11-03 19:42:14 +01:00
Aaron Franke
9225eb461e
Unify Node3D RotationOrder with global EulerOrder 2022-11-02 17:46:03 -05:00
Aaron Franke
8556fdd4bc
Move EulerOrder enum to math_defs.h and global scope 2022-11-02 13:44:13 -05:00
Rémi Verschelde
23e793fd18
Merge pull request #68137 from kleonc/shape-cast-get-collider-rid
Add `ShapeCast2D/3D::get_collider_rid` method
2022-11-02 18:53:23 +01:00
Rémi Verschelde
910cf9a9b3
Merge pull request #67810 from MrBlockers/reged-fixes
Fix multiple issues with region editor
2022-11-02 14:18:12 +01:00
kleonc
bbd225a804 Add ShapeCast2D/3D::get_collider_rid method 2022-11-01 21:17:18 +01:00
Rémi Verschelde
5947f22be9
Merge pull request #67578 from KoBeWi/GEDITOR
Unify usage of GLOBAL/EDITOR_GET
2022-10-31 13:15:58 +01:00
Rémi Verschelde
4b92533efa
Merge pull request #68073 from timothyqiu/marker-3d-extents
Make Marker3D gizmo resizable
2022-10-31 12:17:13 +01:00
Rémi Verschelde
1518bb716e
Merge pull request #67282 from CheesecakeCG/fix-pb-start-sim
Fix Skeleton3D falsely assuming all physical bones will be children of their first bone
2022-10-31 12:04:33 +01:00
hare_ware
913f57f695 Fix Skeleton3D falsely assuming all physical bones will be children of their first bone 2022-10-31 06:59:42 -04:00
Rémi Verschelde
0844f0ed10
Merge pull request #65452 from timothyqiu/agent-target
Make NavigationAgent `target_location` a property
2022-10-31 11:56:17 +01:00
Rémi Verschelde
be126d42d4
Merge pull request #67588 from KoBeWi/if(!GDVIRTUAL_CALL)don't
Simplify GDVIRTUAL_CALL calls
2022-10-31 11:55:56 +01:00
Rémi Verschelde
420eb1aa34
Merge pull request #67445 from Zylann/rename_queue_delete
Rename queue_delete => queue_free
2022-10-31 10:51:18 +01:00
Haoyu Qiu
3ded27c62d Make Marker3D gizmo resizable 2022-10-31 15:19:48 +08:00
Micky
0e0a233859 Fix spacing of few PROPERTY_HINT_ENUM hint_strings 2022-10-28 14:51:26 +02:00
Clay John
4dc2c8ae6f
Merge pull request #67939 from sambriels/emit-signal-after-target-reached
[NavigationAgent2D/3D]: target_reached signal is emitted before internal state is updated
2022-10-27 12:52:13 -07:00
Sam Briels
815231943b Emit target_reached signal after state is updated 2022-10-27 14:05:43 +02:00
Haoyu Qiu
e4100495b5 Make NavigationAgent target_location a property 2022-10-27 13:51:38 +08:00
MrBlockers
92ebbf2c0a Fix multiple issues with region editor
Make the filter mode of the texture preview match the node/resource
being edited where applicable, and nearest neighbor with mipmaps as a
fallback.

Make the Edit Region button for Sprite3D only appear when region is
enabled, to match behavior of Sprite2D.

Fix the editor not correctly clearing reference to previously edited
resources, resulting in a visual bug displaying the incorrect texture.
2022-10-25 18:23:23 -04:00
Marc Gilleron
7543a5e014 Rename queue_delete => queue_free
# Conflicts:
#	editor/plugins/tiles/tiles_editor_plugin.cpp
2022-10-24 22:07:02 +01:00
Ricardo Buring
0e6b796cf6 Warn against using non-uniform scale for 3D physics
Using non-uniform scale is known to cause many issues.
Add warnings to the editor and to the class reference.
Also remove the warning from SoftBody3D since it is
not relevant there: it simulates in global space.
2022-10-24 19:31:00 +02:00
Aaron Franke
7f9a8c99c9
Clean up Basis from Euler code 2022-10-21 17:54:49 -05:00
Max Hilbrunner
f066f2c0de
Merge pull request #66940 from aaronfranke/doc-get-tr-aabb
Remove the global space `get_transformed_aabb` helper method
2022-10-19 22:40:02 +02:00
Max Hilbrunner
523f6263e4
Merge pull request #67249 from wuyingnan/fix_quaternion_typo
Fix a comment typo in node_3d.h
2022-10-19 21:02:14 +02:00
kobewi
d06a8320e5 Simplify GDVIRTUAL_CALL calls 2022-10-19 00:05:48 +02:00
kobewi
e48c5daddf Unify usage of GLOBAL/EDITOR_GET 2022-10-18 19:01:48 +02:00
Aaron Franke
9ebd8c5bb5
Remove the global space get_transformed_aabb helper method 2022-10-18 07:30:31 -05:00
Bastiaan Olij
1e7f009492 Fix two typos in tracker names and a bug in OpenXR haptic feedback 2022-10-17 20:29:19 +11:00
kobewi
072f6feaba Make some Image methods static 2022-10-14 14:34:15 +02:00
Rémi Verschelde
5f4aa11c62
Merge pull request #63607 from BastiaanOlij/fix_xr_origin
Add current setting to XROrigin3D and fix double positioning HMD
2022-10-14 09:45:00 +02:00
Micky
de9e08da76 Comment not to remove data structs in some Nodes 2022-10-13 15:52:35 +02:00
Bastiaan Olij
3a4866bba4 Add current setting to XROrigin3D and fix double positioning HMD 2022-10-13 13:48:52 +11:00
Rémi Verschelde
6d534f6e89 Merge pull request #66221 from Mickeon/painstakingly-appending-ds-en-you-tea-es
Rename remaining "*_enable" to "*_enabled"
2022-10-11 16:17:02 +02:00
Yingnan Wu
042d228558 fix typo 2022-10-11 19:58:25 +08:00
Rémi Verschelde
6b8772dbb2 Merge pull request #67192 from RedMser/light-scale-warning
Show warning when scaling Light3D nodes
2022-10-11 09:26:56 +02:00
RedMser
87aeb59b5b Show warning when scaling Light3D nodes 2022-10-10 18:24:28 +02:00
RedMser
a8a4e290fb Remove incorrect px suffixes 2022-10-10 18:18:15 +02:00
Rémi Verschelde
7c1e15bfb9 Merge pull request #67076 from timothyqiu/hint-enum-suffix
Remove invalid suffix hint for enum property
2022-10-09 18:27:59 +02:00
Rémi Verschelde
2b376437a2 Merge pull request #65983 from Mickeon/rename-audio-player-volume-db
Rename AudioStreamPlayer3D's `unit_db` to `volume_db`
2022-10-08 13:56:10 +02:00
Rémi Verschelde
0a129645ac Merge pull request #67062 from timothyqiu/enum-space
Remove leading spaces from enumerator name hints
2022-10-08 13:55:58 +02:00
Haoyu Qiu
95c860c607 Remove invalid suffix hint for enum property 2022-10-08 19:24:54 +08:00
Haoyu Qiu
344ed9ec6c Remove leading spaces from enumerator name hints
For `PROPERTY_HINT_ENUM` properties, enumerator names can be provided as
a comma separated list. There're a few properties that add leading
spaces to the names (e.g. `First, Second, Third`).

These spaces are included in the Inspector dropdown, which is
unexpected.

It's better to leave the surrounding spaces untouched because it could
be part of the resulting string value (the variable is a string enum).
And most other enum hints don't contain surrounding whitespaces.

This PR removes the spaces and documents this `PROPERTY_HINT_ENUM`
behavior.
2022-10-08 11:33:50 +08:00
Arthur J
b18a553a06
declare "_validate_property" as protected
In other classes, the function _validate_property is declared as protected (in the case of Area2D), but in Area3D it's declared as private, which causes compile errors when trying to extend the class in a C++ module for example.
2022-10-07 18:36:37 -03:00
bruvzg
0103af1ddd
Fix MSVC warnings, rename shadowed variables, fix uninitialized values, change warnings=all to use /W4. 2022-10-07 11:32:33 +03:00
Rémi Verschelde
48e6f84295 Merge pull request #66951 from rburing/restore_recovery_as_collision
Revert "Turn on recovery as collisions only for floor snapping"
2022-10-06 08:56:44 +02:00
Ricardo Buring
311cdd2571 Revert "Turn on recovery as collisions only for floor snapping as this leads to unwanted behaviour for other surface than the floor."
This reverts commit 10395f5df2.
2022-10-05 22:51:29 +02:00
Rémi Verschelde
5b6ccf2fd2 Merge pull request #66720 from qarmin/unintialized_memory
Remove usage of unitialized variables
2022-10-05 11:42:47 +02:00
Rémi Verschelde
9cd62741bb Merge pull request #66839 from aaronfranke/editor-prop-hide-slider
Fix `hide_slider` vs `no_slider` inconsistency in editor property code
2022-10-05 08:47:06 +02:00
bad
a052ebaa99 Move "Create Debug Tangents" into an editor plugin
Instead of exporting the "create_debug_tangents" function via
METHOD_FLAG_EDITOR it gets executed by an editor plugin.

This moves it from the "Manage object properties" menu into a mesh menu. It also adds undo/redo functionality to the create debug tangents option.
2022-10-03 23:34:01 +02:00
Aaron Franke
094e8db97c
Fix hide_slider vs no_slider inconsistency in editor property code 2022-10-03 13:40:31 -05:00
Rémi Verschelde
54418ea659 Remove NO_THREADS fallback code, Godot 4 requires thread support
This also removes `OS::can_use_threads` from the public API since it's always
true.
2022-10-03 11:23:26 +02:00
Rafał Mikrut
2233624152 Remove usage of unitialized variables 2022-10-01 21:09:22 +02:00
Rémi Verschelde
7c7a86f0fd Merge pull request #66592 from KoBeWi/look_at_me_I_am_the_captain_now
Fail `look_at()` if not inside tree
2022-09-29 15:34:08 +02:00
Rémi Verschelde
f5f4d9bf00 Merge pull request #66143 from DarkKilauea/nav-queries-agent
Update NavigationAgent to use query_path
2022-09-29 15:33:25 +02:00
kobewi
c080b9dc05 Fail look_at() if not inside tree 2022-09-29 13:34:28 +02:00
Rémi Verschelde
de31edb780 Merge pull request #65807 from clayjohn/light-units-bug
Validate physical light units in GI classes.
2022-09-29 10:43:55 +02:00
Josh Jones
a2c53b881b Update NavigationAgent to use query_path
This paves the way for having agents respond to link traversal.
2022-09-28 23:01:12 -06:00
Rémi Verschelde
8e14f9ba21 Merge pull request #64679 from DarkKilauea/nav-region-props
Improve consistency of NavigationRegion setters
2022-09-22 08:27:35 +02:00
Rémi Verschelde
d96b7d767a Merge pull request #66110 from Zylann/reference_get_count
get_reference_count()`
2022-09-22 08:26:29 +02:00
Josh Jones
a25bb9811a Improve consistancy of NavigationRegion setters 2022-09-21 22:42:52 -07:00
Micky
c1b5b68eee Rename remaining "*_enable" to "*_enabled"
Material.`proximity_fade_enable` -> `proximity_fade_enabled`
Material.`set_proximity_fade` -> `set_proximity_fade_enabled`
(Material.`is_proximity_fade_enabled` is unchanged)

Area3D.`reverb_bus_enable` -> `reverb_bus_enabled`
(`set_use_reverb_bus` & `is_using_reverb_bus` are unchanged)

RDPipelineRasterizationState:
`depth_bias_enable` -> `depth_bias_enabled`
`set_depth_bias_enable` -> `set_depth_bias_enabled`
`get_depth_bias_enable` -> `get_depth_bias_enabled`

Bonus:
Area3D.`set_reverb_bus` -> `set_reverb_bus_name`
Area3D.`get_reverb_bus` -> `set_get_reverb_bus_name`
2022-09-21 22:47:46 +02:00
Marc Gilleron
474cee7daf Rename and expose RefCounted::get_reference_count() 2022-09-21 21:18:54 +01:00
Rémi Verschelde
28e1dc6162 Merge pull request #65828 from rburing/body_state_sync_callable
make `body_set_state_sync_callback` take a `Callable`
2022-09-21 11:05:41 +02:00
Rémi Verschelde
c44e1c4e31
Merge pull request #66064 from kleonc/sprite3d-fix-drawing-with-vertical-margins
`Sprite3D`/`AnimatedSprite3D` Fix drawing `AtlasTexture`s with vertical margins differently than in 2D
2022-09-20 23:06:26 +02:00
Rémi Verschelde
209a837f79 Merge pull request #66112 from Zylann/get_configuration_warnings_psa
Change return type of `get_configuration_warnings` to `PackedStringArray`
2022-09-19 22:03:44 +02:00
Marc Gilleron
aed3822a93 Change return type of get_configuration_warnings to PackedStringArray 2022-09-19 16:43:15 +01:00
fabriceci
1937e030b5 Increases the number of maximum detected collisions 2022-09-19 16:44:31 +02:00
Rémi Verschelde
40a7fb238d Merge pull request #64728 from fabriceci/only-report-recovery-for-floor-snapping
Turn on recovery as collisions only for floor snapping
2022-09-19 15:39:55 +02:00
Marc Gilleron
c00c29a136 Expose NOTIFICATION_LOCAL_TRANSFORM_CHANGED 2022-09-19 13:43:46 +01:00
fabriceci
10395f5df2 Turn on recovery as collisions only for floor snapping as this leads to unwanted behaviour for other surface than the floor. 2022-09-18 22:23:09 +02:00
kleonc
8a56100d39 SpriteBase3D Fix drawing AtlasTextures with vertical margins differently than in 2D 2022-09-18 20:08:31 +02:00
kleonc
8837d41b50 Move duplicated drawing code from Sprite3D/AnimatedSprite3D to SpriteBase3D 2022-09-18 20:03:03 +02:00
Rémi Verschelde
e5594c26b1
Merge pull request #44143 from KoBeWi/callable_multiplayer 2022-09-18 13:47:04 +02:00
Tomasz Chabora
882a4f8906 Port remaining connections to callable_mp 2022-09-18 13:08:54 +02:00
Rémi Verschelde
0bb57bd9f2 Merge pull request #65931 from fabriceci/add-recovery-as-collision-in-low-level-methods
Add recovery_as_collision in move_and_collide/test_move
2022-09-18 00:42:29 +02:00
Micky
eb0cc08a23 Rename AudioStreamPlayer3D's unit_db to volume_db
AudioStreamPlayer3D.`unit_db` -> `volume_db`

Now matches the same name AudioStreamPlayer and AudioStreamPlayer2D use.
2022-09-17 16:06:30 +02:00
fabriceci
a72d5be2c6 Add recovery_as_collision in move_and_collide/test_move 2022-09-17 11:40:03 +02:00
Hugo Locurcio
7dee32ad14
Tweak LightmapGI defaults to be closer to the CPU lightmapper
- Use 3 bounces by default.
- Enable environment lighting from the scene by default.
  - This is not done in `3.x` for compatibility with existing projects,
    but it makes sense to do this by default since pretty much all
    outdoor scenes benefit from this.
- Set the custom environment color to white (like ReflectionProbe).
  - Its default energy is still 0, so it's invisible by default.
- Enable the generation of dynamic object probes by default.
- Tweak the `max_texture_size` property hint for better usability.
- Improve error messages when passing invalid sizes to
  `LightmapGI.set_max_texture_size()`.
2022-09-16 16:27:00 +02:00
Rémi Verschelde
16d44395b5 Merge pull request #65148 from Mickeon/animated-sprite-negative-speed-scale
Allow negative `speed_scale` in AnimatedSprite2D & 3D
2022-09-16 09:18:42 +02:00
Ricardo Buring
ff4e72a0bc PhysicsServer2D and PhysicsServer3D: make body_set_state_sync_callback take a Callable
Prefer Callable to a C-style callback. This is helpful for GDExtension.
2022-09-15 15:09:23 +02:00
clayjohn
1b5f422c73 Validate physical light units in GI classes.
Add checks for physical light units in a few more places to ensure they aren't used when disabled.
2022-09-14 17:39:25 -07:00
Micky
8142bc4ddd Allow negative speed_scale in AnimatedSprite2D & 3D
If the `speed_scale` is set to a negative value, the animation plays in reverse.
The second parameter of `play()` still reverses as before. if `speed_scale` and the second parameter of `play()` is true, the animation plays forward.

Also updates the documentation to better describe the pausing and playing behaviour.
2022-09-13 12:41:07 +02:00
Rémi Verschelde
3a82a1315b Merge pull request #65591 from MewPurPur/area-overlapping-function
Implement `Area[2D/3D].has_overlapping_[bodies/areas]`
2022-09-13 10:58:55 +02:00
kobewi
d5c703b83e Don't store frame of playing AnimatedSprite 2022-09-12 22:59:35 +02:00
Rémi Verschelde
97830e7187
Merge pull request #64155 from Mickeon/sprite-3d-backwards-speed-scale 2022-09-12 12:15:58 +02:00
VolTer
ed4fe1e2bd Implement Area.has_overlapping_* 2022-09-10 12:17:37 +02:00
Micky
b648ee43ab Harmonise AnimatedSprite3D and its 2D counterpart
Add the following properties to AnimatedSprite3D:
- `backwards` parameter in `play()`;
- `speed_scale`.

Both classes' internals are more similar, down to the line spacings. They've also been updated to be clearer and less inconsistent (e.g. `!frames.is_valid()` -> `frames.is_null()`, use SceneStringNames instead of CoreStringNames, rename the internal _queue_update to _queue_redraw)
2022-09-09 21:06:24 +02:00
Rémi Verschelde
ce6f284e5f
Merge pull request #64394 from smix8/navigation_obstacles_reparent_4.x
Fix NavigationObstacle 2D/3D (re)parent issues
2022-09-09 19:20:14 +02:00
smix8
d7f75fab60 Remove / Replace old Navigation Debug Visualization
- removes / replaces leftovers from old navigation debug code
- cleanes SceneTree and ProjectSettings from old navigation debug
2022-09-07 18:30:35 +02:00
Micky
a7ce7b1d3f Fix AudioStreamPlayer not resuming after returning to SceneTree 2022-09-05 16:52:46 +02:00
Rémi Verschelde
904d8bdb3c
Merge pull request #65292 from AlmightyLaxz/prevent-shapecast3d-debug-without-debugcollisions 2022-09-05 13:59:51 +02:00
Haoyu Qiu
f0f24b9a62 Fix crash when executing LightmapGIData._set_light_textures_data 2022-09-04 20:43:25 +08:00
Almighty Laxz
44042a957f Stop ShapeCast3D drawing when debug collisions off 2022-09-04 02:28:30 +09:30
Hugo Locurcio
f7292dbeb3
Rename or_lesser range property hint to or_less
"less" should be used for quantity, rather than "lesser".

Existing scripts that use `or_lesser` in `_get_property_list()`
will need to be updated to account for this change.
2022-09-02 19:08:20 +02:00
Rémi Verschelde
3a62c294c7 Merge pull request #65170 from KoBeWi/your_argument_is_TypedArray 2022-09-02 13:57:02 +02:00
Rémi Verschelde
4fa3675ffa Merge pull request #65218 from xX-Void-Xx/area2d/3d-optimization 2022-09-02 13:53:28 +02:00
Rémi Verschelde
c82bbc38a5 Merge pull request #64952 from Chaosus/vs_rename_uniform_to_param 2022-09-02 13:49:53 +02:00
Void
fdfe11d4b3 fixed and optimized Area2/3D get_overlapping_bodies/areas
fixed a type and made it so area3d get_overlapping_x is similar to its counterpart func in area2d so that it uses TypedArray instead of Array and ERR_FAIL_COND_V_MSG instead of no message, also minimized array resize calls
2022-09-02 12:00:04 +01:00
Jonathan Nicholl
15d057c521 Add is_zero_approx methods to Vector2, 3, and 4 2022-09-02 00:29:50 -04:00
Rémi Verschelde
005aac2dbe Merge pull request #65187 from JohanAR/vector_to_size 2022-09-01 23:50:59 +02:00
Rémi Verschelde
2e0cffdb6f Merge pull request #63479 from DarkKilauea/nav-link 2022-09-01 23:44:22 +02:00
Johan Aires Rastén
b7e2d45233 Replace Vector2(i) with Size2(i) for methods returning a size 2022-09-01 20:04:17 +02:00
Rémi Verschelde
ca59f47f31
Merge pull request #64157 from Mickeon/remove-mysterious-is-playing 2022-09-01 17:40:32 +02:00
kobewi
7adc8376ed Change Array arguments to TypedArray 2022-09-01 13:13:19 +02:00
Yuri Rubinsky
8191b3c110 Rename uniform to parameter across the engine 2022-09-01 11:42:57 +03:00
Rémi Verschelde
89f0886425
Merge pull request #65073 from bruvzg/trim_spaces
[TextServer] Add support for trimming edge spaces on line break.
2022-09-01 08:16:52 +02:00
bruvzg
7aad14a4b6
[TextServer] Add support for trimming edge spaces on line break. 2022-09-01 08:11:55 +03:00
clayjohn
385ee5c70b Implement Physical Light Units as an optional setting.
This allows light sources to be specified in physical light units in addition to the regular energy multiplier. In order to avoid loss of precision at high values, brightness values are premultiplied by an exposure normalization value.

In support of Physical Light Units this PR also renames CameraEffects to CameraAttributes.
2022-08-31 12:14:46 -07:00
Rémi Verschelde
d58a1d65a9
Merge pull request #63413 from Calinou/volumetric-fog-add-per-light-energy-2
Add a per-light volumetric fog energy property
2022-08-31 08:47:03 +02:00
Rémi Verschelde
96b470b28e
Merge pull request #63394 from Calinou/curve-gradient-rename-interpolate
Rename Curve/Curve2D/Curve3D/Gradient `interpolate()` to `sample()`
2022-08-31 08:37:12 +02:00