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
Gilles Roudière
48bed5050b
Make TileMapLayers extend Node2D and work as children of TileMap
2024-01-17 16:05:50 +01:00
kobewi
0c7db3cdad
Add AudioStreamPlayerInternal to unify stream players
2024-01-17 13:12:02 +01:00
Yuri Sizov
95b27fe8c7
Reorganize code related to editor theming
...
This change introduces a new EditorThemeManager class
to abstract theme generatio and its subroutines.
Logic related to EditorTheme, EditorColorMap, and editor
icons has been extracted into their respective files with
includes cleaned up.
All related files have been moved to a separate folder to
better scope them in the project. This includes relevant
generated files as well.
2024-01-16 11:57:45 +01: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
Rémi Verschelde
fe76b61743
Merge pull request #87160 from kleonc/tilemap-fix-debug-drawing-truncations-to-ints
...
Fix some `TileMap` debug drawing truncating to ints
2024-01-15 13:31:04 +01:00
Rémi Verschelde
ebc30b93ac
Merge pull request #84465 from KeyboardDanni/deferred_camera
...
Fix Camera2D frame delay (port from 3.x)
2024-01-15 13:22:28 +01:00
kleonc
baa5504700
Fix some TileMap debug drawing truncating to ints
2024-01-14 02:02:46 +01:00
Rémi Verschelde
1b25b4ca5f
Merge pull request #83397 from thiagola92/readability_skeleton_2d_calculate_length_and_rotation
...
Refactor function `calculate_length_and_rotation()` from Skeleton2D
2024-01-11 20:44:26 +01:00
thiagola92
6a05825b24
Refactor function `calculate_length_and_rotation()` from Skeleton2D
2024-01-11 13:35:28 -03:00
kobewi
0e8f90f4c8
Update deferred calls to use Callables
2024-01-09 16:11:47 +01:00
Rémi Verschelde
d8dc554241
Merge pull request #86847 from kleonc/tilemap-make-quadrant-canvas-item-position-local
...
Fix `TileMap` quadrant canvas item position not being local
2024-01-08 14:52:54 +01:00
kleonc
3c25274870
Fix TileMap quadrant canvas item position not being local
2024-01-08 14:20:16 +01:00
Rémi Verschelde
4ca33d318b
Merge pull request #86908 from AdSkipper1337/collision-object-2d-gdextension-virtuals
...
Fix virtual calls for GDExtension in `CollisionObject2D`
2024-01-08 12:01:31 +01:00
Rémi Verschelde
c7fb7273c5
Merge pull request #86811 from TheSofox/light2d-blend-3to4
...
Added compatibility for Blend Mode in `Light2D`/`PointLight2D` when converting from Godot 3 to 4.
2024-01-08 11:57:07 +01:00
Rémi Verschelde
665c3edee2
Merge pull request #86557 from kleonc/polygon2d-with-skeleton-transform-fix
...
Fix Polygon2D to Skeleton2D transform calculation
2024-01-08 11:55:06 +01: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
Nikolai Davydov
0517000e6f
Fix virtual calls for GDExtension in `CollisionObject2D` for _mouse_enter, _mouse_exit, _mouse_shape_enter, _mouse_shape_exit
2024-01-07 05:30:26 +01:00
A Thousand Ships
904ecb1d36
[Core] Prevent copying of `SelfList` and `SelfList::List`
...
Copying of these types is unsafe and should be detected
Also removed unnecessary constructors for `TileMap` `DebugQuadrant` and
`RenderingQuadrant` which used copying of `SelfList::List`
2024-01-07 00:48:23 +01:00
Sofox
58ae3c577c
Added compatibility for Blend Mode in Light2D/PointLight2D when converting from Godot 3 to 4
2024-01-05 15:39:47 +00:00
Gilles Roudière
6bc5b3f812
Move TileMapLayer to its own files
2024-01-05 11:58:21 +01:00
Rémi Verschelde
b88eddb682
Merge pull request #78378 from 0xafbf/curve-evaluate-correct-transform
...
Changed the way the rotation of a curve at a point is evaluated to match PathFollow2D
2024-01-04 16:38:38 +01: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
kleonc
41e4f3c215
Fix Polygon2D to Skeleton2D transform calculation
2023-12-27 18:46:59 +01:00
kobewi
cb0a37f61a
Only update particle velocity when it changes
2023-12-23 18:04:24 +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
5d9dce43bb
Merge pull request #84575 from rsburke4/fix-cpu-tangent-force
...
Fix `CPUParticles2D` tangential force does not match `GPUParticles2D`
2023-12-19 13:01:05 +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
Gilles Roudière
18fe0bd025
Move tile transforms handling cache to TileData
2023-12-13 17:44:59 +01:00
Rémi Verschelde
4943b6e6b3
Merge pull request #84451 from ShirenY/FixSkeletonMeshCulling
...
Transform mesh's AABB to skeleton's space when calculating mesh's bounds
2023-12-12 00:16:51 +01:00
ShirenY
27f71c4e78
Transform mesh's AABB to skeleton's space when calculate mesh's bounds.
2023-12-09 11:41:15 +08:00
Gilles Roudière
fcb8d19de0
Fixes TileMap occluders
2023-12-08 10:07:28 +01:00
Rémi Verschelde
654132cb9c
Merge pull request #85753 from groud/allow_invisible_scene_tiles
...
Keep scene tiles even if the TileMap is invisible
2023-12-04 23:29:33 +01:00
Rémi Verschelde
0e4aead7a1
Merge pull request #85258 from smix8/navregion2d_transform
...
Fix NavigationRegion2D transform update
2023-12-04 23:11:15 +01: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
Gilles Roudière
25e927e56b
Keep scene tiles even if the TileMap is invisible
2023-12-04 18:39:16 +01: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
Rémi Verschelde
efe5c856b8
TileMap: Fix compatibility code for old `cell_quadrant_size` property name
...
Fixes #85423 .
2023-11-28 12:44:07 +01:00
smix8
6fdb16af47
Fix NavigationRegion2D transform update
...
Fixes NavigationRegion2D transform update.
2023-11-23 07:23:20 +01:00
Rémi Verschelde
4065266119
Merge pull request #84968 from groud/fix_tilemap_reparenting
...
Update tilemap physics' world2D on reparenting
2023-11-16 14:53:15 +01:00
Gilles Roudière
dae641625a
Update tilemap physics' world2D on reparenting
...
Co-authored-by: Alon Ran <newdefectus@gmail.com>
2023-11-16 11:31:42 +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
491160c33d
Merge pull request #83888 from KoBeWi/remove_all_properties_instead_of_adding_one
...
Fix TileMap layer reverts and defaults
2023-11-08 19:08:19 +01:00
rsburke
76377230ac
Fixed CPUParticle tangential force to match GPUParticle implimentation
2023-11-07 08:02:43 -05:00
Danni
734166f796
Ensure Camera2D scroll is updated on transform like 3.x
2023-11-05 18:01:34 -05:00
kobewi
b63533bf3f
Fix rotated tile collision not working at runtime
2023-10-31 18:22:26 +01:00
Andrés Botero
acae382010
Changed the way the rotation of a curve at a point is evaluated to match PathFollow2D
2023-10-28 01:23:38 -05:00
A Thousand Ships
3ef6314980
Fix invalid return from some more `_get/_set`
...
Invalidly returned `true` on the non-matched path
2023-10-27 21:26:13 +02:00
Rémi Verschelde
d3fb6c17b6
Merge pull request #83560 from groud/allow_physics_for_hidden_tilemap
...
Allow TileMap physics/navigation to still work when hidden
2023-10-27 11:36:57 +02:00
Gilles Roudière
9d90f1774c
Allow TileMap physics/navigation to still work when hidden
2023-10-26 16:54:35 +02:00
Gilles Roudière
3b5a288bc8
Fix Y-sort origin not working when set in TileMap runtime updates
2023-10-26 15:45:30 +02:00
Gilles Roudière
a2bc599450
Fixes get_used_rect, get_used_cells and get_used_cells_by_id in TileMap after a call to clear()
2023-10-24 14:43:43 +02:00
kobewi
99262705a8
Fix TileMap layer reverts and defaults
2023-10-24 13:44:07 +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
Eoin O'Neill
f17a569ccf
Fix bug where TileMap will not update material correct on assignment
...
This seemed to be a simple case of a missing condition in an if
statement with a few different flags. I'm not super familiar with the
tilemap code but hopefully this is the correct place to add this check.
Fixes #83474
2023-10-16 21:02:46 -07:00
Rémi Verschelde
2ba83f2578
Merge pull request #83427 from kleonc/camera2d-screen-center-position-when-rotated
...
Fix screen center position returned for rotated Camera2D
2023-10-16 13:01:23 +02:00
Rémi Verschelde
cbfa941061
Merge pull request #83365 from Malcolmnixon/fix-disabled-nav-region
...
Fix enabling NavigationRegion3D saved disabled
2023-10-16 13:00:35 +02:00
Rémi Verschelde
75b4fd84e3
Merge pull request #83323 from Rindbee/fix-not-update-remote-local-transform-in-2d
...
Fix cannot update remote after disabling `use_global_coordinates` in `RemoteTransform2D`
2023-10-16 13:00:12 +02:00
kleonc
836d80b306
Fix screen center position returned for rotated Camera2D
2023-10-16 09:02:49 +02:00
Malcolm Nixon
0646b230e4
Fix enabling NavigationRegion3D saved disabled
...
This PR fixes issue #83364 by always registering the region when it enters the tree, and instead using region_set_enabled to control whether its enabled. The same logical changes have been applied to NavigationRegion2D.
2023-10-14 23:17:57 -04:00
风青山
30904ed3bc
Fix cannot update remote after disabling `use_global_coordinates` in `RemoteTransform2D`
...
Due to the optimization in `CanvasItem`, `global_transform` is only
updated when `get_global_transform()` is called, and then notify
`NOTIFICATION_TRANSFORM_CHANGED`. That is, in the case where
`global_transform` is not obtained, the notification will not be sent.
So we use `NOTIFICATION_LOCAL_TRANSFORM_CHANGED` in this case. Use in
combination to prevent certain optimizations.
Same change for `RemoteTransform3D`, to prevent the same optimization
from being used in `Node3D` in the future.
2023-10-15 00:16:52 +08:00
A Thousand Ships
bea7cc784d
Make error suggestion less ambiguous
2023-10-14 14:56:05 +02:00
Rémi Verschelde
1d3854665f
Merge pull request #83273 from groud/disable_tilemap_navigation
...
Allow disabling the built-in tilemap navigation
2023-10-13 22:19:48 +02:00
Gilles Roudière
c820c8d1e6
Allow disabling the built-in tilemap navigation
2023-10-13 17:42:28 +02:00
Rémi Verschelde
9957f1ad4e
Merge pull request #83151 from kleonc/tile-map-layer-draw-index-update
...
Update `TileMap` layer draw index when it's dirty
2023-10-11 18:31:12 +02:00
kleonc
a529bf81b8
Update TileMap layer draw index when it's dirty
2023-10-11 16:55:19 +02:00
Gilles Roudière
a3bfd9b797
Warn users when TileMap is set as Y-sorted but no layer is
2023-10-11 13:44:28 +02:00
QbieShay
c228fe1a0d
Particle internal refactor and additions for more artistic control
...
Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
Co-authored-by: Raul Santos <raulsntos@gmail.com>
Co-authored-by: Mew Pur Pur <85438892+MewPurPur@users.noreply.github.com>
Co-authored-by: Clay John <claynjohn@gmail.com>
2023-10-10 20:03:35 +02:00
Rémi Verschelde
72cdb0b4c5
Merge pull request #82393 from jrouwe/body_changed_state
...
Fix performance regression in RigidBody2D/3D and PhysicalBone3D
2023-10-04 15:35:30 +02:00
bitsawer
12a2177967
Fix notification thread guards
2023-10-02 19:31:54 +03:00
Hugo Locurcio
14f40ec70e
Tweak Gravity Scale property hints to make dragging more useful
...
This also allows a more precise step.
2023-10-01 20:01:46 +02:00
Jorrit Rouwe
eff7f27c48
Fixed performance regression in godot 4.2 in RigidBody2D/3D and PhysicalBone3D
...
After change c118256865
the body state is synched 2x, but this is only needed if _integrate_forces is overridden.
Adding this extra if increases the FPS by 2.5% in a heavy physics scene, see: https://github.com/godot-jolt/godot-jolt/discussions/611
2023-09-26 21:19:58 +02:00
Rémi Verschelde
1a7ea4ba50
Merge pull request #82360 from kleonc/tilemap-tile-animation-time-float-error
...
Fix animated tile time-slice calculation accumulating float errors
2023-09-26 17:52:55 +02:00
Rémi Verschelde
eefe161549
Merge pull request #81610 from Ughuuu/add-angle-limits-and-motor-to-pin-joint-2d
...
Update PinJoint2D API with angle limits and motor speed
2023-09-26 13:45:07 +02:00
kleonc
20d6a9b2e1
Fix animated tile time-slice calculation accumulating float errors
2023-09-26 12:07:42 +02:00
Dragos Daian
0fcfb07246
Update PinJoint2D API with angle limits and motor speed
...
add enabled methods for motor and angular limits
use correct name to get joint
update copyright
2023-09-26 10:29:23 +02:00
Rémi Verschelde
7dccb9e039
Merge pull request #80796 from smix8/navgenerator_2d_4.x
...
Add 2D navigation mesh baking
2023-09-26 08:17:58 +02:00
Rémi Verschelde
023b6b30c1
Merge pull request #73813 from groud/improve_y_sort_performances
...
Greatly improve Y-sort performance on TileMaps
2023-09-25 22:47:22 +02:00
smix8
0ee7e3102b
Add 2D navigation mesh baking
...
Adds 2D navigation mesh baking.
2023-09-25 19:48:14 +02:00
Gilles Roudière
30b94bb8ab
Improve TileMap Y-sorting performance
2023-09-25 18:49:04 +02:00
A Thousand Ships
e45927b2f2
Replace `radians` range hint with `radians_as_degrees`
2023-09-25 08:50:19 +02:00
Rémi Verschelde
04d2aa61a3
Merge pull request #81641 from MewPurPur/bus-go-brrrr-2
...
Add a `bus_renamed` AudioServer signal
2023-09-17 14:47:29 +02:00