Commit Graph

2336 Commits

Author SHA1 Message Date
Mark DiBarry 6b17d51425 Add alternative pixel rounding 2024-06-29 10:33:39 -04:00
Rémi Verschelde d71c85ce5f
Merge pull request #92016 from KoBeWi/pick_layers_like_a_boss
Allow selecting TileMapLayers by clicking them
2024-06-28 15:55:10 +02:00
Robocraft999 dc6e664fda Fix AnimationSprite2D/3D::play using wrong end_frame
On playing a different animation to the current backwards will start the new animation on the last animations last frame not the new ones
2024-06-26 13:50:44 +02:00
Rémi Verschelde ff9c6332fd
Merge pull request #93368 from rburing/fti_skinning
Physics interpolation: Fix 2D skinning
2024-06-20 16:18:47 +02:00
Ricardo Buring 6d35dcf7c5 Physics interpolation: Fix 2D skinning
Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-06-20 11:35:38 +02:00
Rémi Verschelde 19bf77f666
Merge pull request #91382 from adamscott/sample-player
Add sample playback support
2024-06-19 07:59:07 +02:00
Rémi Verschelde 2b11d0ca96
Merge pull request #93279 from rburing/fti_tile_map_layer
Fix `TileMapLayer` not respecting physics interpolation mode
2024-06-18 23:16:12 +02:00
Ricardo Buring 4c426b0be5 Fix TileMapLayer not respecting physics interpolation mode 2024-06-18 22:05:46 +02:00
Adam Scott 52fa4f05f3
Add samples playback support 2024-06-18 11:06:31 -04:00
Rémi Verschelde 9dca8995b2
Merge pull request #89572 from markdibarry/parallax_scale_regression
Avoid passing zoom scale for ParallaxLayer mirror
2024-06-17 10:57:51 +02:00
kobewi 9f7f1809ff Update Camera2D gizmos when screen size changes 2024-06-11 18:38:43 +02:00
smix8 6b85bc9de2 Fix NavigationRegion2D debug not clearing canvas item
Fixes NavigationRegion2D debug not clearing canvas item on navigation mesh change.
2024-06-10 19:07:57 +02:00
Gilles Roudière c283db2130 Implement X-draw-order switch in TileMapLayer 2024-06-10 15:53:58 +02:00
Rémi Verschelde 4cd39c56fb
Merge pull request #92283 from KoBeWi/code_simpleton
Automatically use property count in PropertyListHelper
2024-05-30 11:47:58 +02:00
Valden 0f50b6b608 Propagate reset_physics_interpolation through RemoteTransform2D/3D 2024-05-28 20:23:25 +02:00
smix8 5f5fe737d2 Improve NavigationRegion2D debug performance
Improves NavigationRegion2D debug performance by replacing the canvas polygon and line commands with a static mesh.
2024-05-28 19:36:35 +02:00
Ricardo Buring efb6a1c23d Fix Parallax2D fixed timestep interpolation
The camera_screen_center value was stale in case of interpolation.
2024-05-26 23:08:35 +02:00
kobewi b365a63403 Automatically use property count in PropertyListHelper 2024-05-25 10:51:37 +02:00
kobewi 6559bb68e6 Remove some TileMap dependencies from TileMapLayer 2024-05-21 11:32:14 +02:00
cosparks 601edc7d3e Fix 2d sdf collision for TileMapLayer 2024-05-20 13:03:02 -07:00
kobewi b758222761 Allow selecting TileMapLayers by clicking them 2024-05-16 15:47:23 +02:00
Rémi Verschelde 77470740de
Merge pull request #91936 from jsjtxietian/body-connect
Avoid duplicate connect in Joint2D and Joint3D `_update_joint`
2024-05-15 12:09:50 +02:00
jsjtxietian 51bc55598c Avoid duplicate connect in `Joint2D::_update_joint` and Joint3D 2024-05-15 11:57:51 +08:00
A Thousand Ships ee79386f7b
[Scene] Add SceneStringNames::pressed 2024-05-14 15:51:28 +02:00
Rémi Verschelde 61b970ea44
Merge pull request #91929 from matheusmdx/fix-error-91914
Fix error in AudioStreamPlayer2D
2024-05-14 12:07:20 +02:00
matheusmdx 305967c021 Fix error in AudioStreamPlayer2D 2024-05-14 02:07:12 -03:00
kobewi 413c11357d Use Core/Scene stringnames consistently 2024-05-13 23:41:07 +02:00
kobewi a262d2d881 Add shorthand for using singleton string names 2024-05-11 18:53:08 +02:00
Gilles Roudière 7705265477 Fix PropertyListHelper::_get_property returning a valid value even if an index is outside the array valid indices
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2024-05-10 10:46:04 +02:00
Silc Lizard (Tokage) Renew de558123bf Fix bone2d scaling
Co-authored-by: Thiago Lages de Alencar <thiagola92@gmail.com>
2024-05-09 22:24:05 +09:00
Rémi Verschelde 594498e718
Merge pull request #90966 from Calinou/debug-draw-use-runtime-colors
Use same colors for editor and running project for collision/path debug
2024-05-07 16:49:31 +02:00
A Thousand Ships 955d5affa8
Reduce and prevent unnecessary random-access to `List`
Random-access access to `List` when iterating is `O(n^2)` (`O(n)` when
accessing a single element)

* Removed subscript operator, in favor of a more explicit `get`
* Added conversion from `Iterator` to `ConstIterator`
* Remade existing operations into other solutions when applicable
2024-05-04 16:08:55 +02:00
A Thousand Ships 308dbb8c63
[Core] Add scalar versions of `Vector*` `min/max/clamp/snap(ped)`
Convenience for a number of cases operating on single values
2024-05-02 10:31:13 +02:00
kobewi 0b877a9962 Expose is_part_of_edited_scene() 2024-04-26 11:49:38 +02:00
Rémi Verschelde 6149359dac
Merge pull request #91076 from Bn-Fang/master
Fix typo in Camera2D node's anchor mode
2024-04-24 09:59:48 +02:00
johnsonbaugh ef8acbde9a Fix errors and warnings when loading Skeleton2D Modifications
Fixes #73247
2024-04-23 20:42:23 -07:00
Bn-Fang 5d0a229a58 Fixed Typo in Camera 2D node's anchor mode
Fixed the Camera 2D node's anchor mode descriptor from "Fixed TopLeft" to "Fixed Top Left"
2024-04-23 16:24:45 -04:00
Rémi Verschelde 2463e42ea1
Merge pull request #90786 from m4rr5/fix_flipped_line2d_joints
Fix `Line2D` joints with `joint_mode` set to Round rendered "flipped" for a 180 degree angle.
2024-04-23 19:11:22 +02:00
Hugo Locurcio b1a2394b3b
Use same colors for editor and running project for collision/path debug
This harmonizes the appearance of collision shapes and paths between
the editor and running project, in both 2D and 3D.

This means that in 3D, paths are now green and shapes are now cyan
instead of light blue.
2024-04-21 00:58:08 +02:00
kobewi c7b6cf9f6d Don't store TileMapLayer data if empty 2024-04-19 18:05:48 +02: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 043ca7c63c
Merge pull request #88306 from KoBeWi/PropertyListHelper_will_come_for_you
Add PropertyListHelper in all simple cases
2024-04-18 12:24:17 +02:00
Marcel Offermans e64b4243c3 Added a specific check for the corner case that went wrong. 2024-04-17 12:01:01 +02:00
Rémi Verschelde 01eb81ba48
Merge pull request #90752 from groud/fix_tilemap_y_sort
Fix TileMap enabling Y-sort on child nodes
2024-04-17 10:59:04 +02:00
Rémi Verschelde ce0744866d
Merge pull request #90747 from smix8/remove_constrain_avoidance
Remove experimental `constrain_avoidance` from `NavigationRegion2D`
2024-04-17 10:58:55 +02:00
smix8 df66a55ef3 Remove experimental constrain_avoidance from NavigationRegion2D
Removes experimental constrain_avoidance feature from NavigationRegion2D.
2024-04-16 18:02:53 +02:00
Gilles Roudière 96b6199de9 Fix TileMap enabling Y-sort on child nodes 2024-04-16 16:02:55 +02:00
Aaron Franke 77e35cf781
Move NavigationMeshSourceGeometryData(2D/3D) to the 2D/3D subfolders 2024-04-15 18:40:43 -07: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
Rémi Verschelde fac55137a1
Merge pull request #89627 from markdibarry/parallax2d_scroll_scale
Account for scale in scroll logic for `Parallax2D`
2024-04-15 10:00:15 +02:00
Haoyu Qiu 4176102a5e Store ObjectID instead of pointer for KinematicCollision owner 2024-04-15 12:28:36 +08:00
kobewi e95e954c68 Add PropertyListHelper in all simple cases 2024-04-11 18:13:29 +02:00
smix8 1c134f4a3d Add navigation path simplification
Adds navigation path simplification for NavigationServer and NavigationAgent.
2024-04-11 12:32:21 +02:00
markdibarry 18e8b81ffa Account for scale in scroll logic for Parallax2D 2024-04-10 18:05:05 -04:00
Rémi Verschelde e68f03a083
Merge pull request #90282 from jhlothamer/issue_84221
Fix sharing World2D between SubViewports causes 2D lights of one SubViewport to go missing
2024-04-08 15:03:28 +02:00
Rémi Verschelde 2e1f33793f
Merge pull request #90340 from KoBeWi/FixJoint2D
Fix PinJoint2D deferred call error
2024-04-08 11:21:54 +02:00
kobewi 63bff87d7d Fix PinJoint2D deferred call error 2024-04-07 12:21:40 +02:00
Emmanuel Ferdman ea5ecc6b8e
fix: update the location of editor theme 2024-04-06 18:03:13 +03:00
Jason Lothamer b250660ee9 fix issue where Light2D does not re-attach itself to new canvas when viewport worlds are shared 2024-04-05 17:38:42 -04:00
Rémi Verschelde fe784573c4
Merge pull request #90167 from ajreckof/fix-negative-value-for-position_smoothing_speed-being-allowed
Ensure `Camera2D.position_smoothing_speed` is non-negative.
2024-04-05 12:16:14 +02:00
ajreckof 07406af6cc Fix negative value for position_smoothing_speed being allowed. 2024-04-04 17:15:53 +02:00
A Thousand Ships 09edece17d
[TileMap] Fix forcing cleanup on exiting tree/canvas 2024-04-04 14:47:32 +02: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
Gilles Roudière 3cd4b2859c Expose TileMapLayer 2024-04-03 11:02:34 +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
Rémi Verschelde a0d464ae19
Merge pull request #89820 from rburing/concave_collision_polygon_2d
Fix concave `CollisionPolygon2D` debug drawing and docs
2024-03-26 13:45:31 +01:00
markdibarry 2feed4c4b4 Avoid mirror scaling for ParallaxLayer 2024-03-24 09:17:33 -04:00
Rémi Verschelde cd4e4c0fcc
Merge pull request #89111 from AThousandShips/vec_use
Use `Vector*` component-wise `min/max/clamp` functions where applicable
2024-03-24 01:14:51 +01:00
Ricardo Buring b6f07a007a Fix concave CollisionPolygon2D debug drawing and docs 2024-03-23 18:51:39 +01:00
Ricardo Buring 2ed2ccc2d8 Fixed Timestep Interpolation (2D)
Adds fixed timestep interpolation to the rendering server (2D only).
Switchable on and off with a project setting (default is off).

Co-authored-by: lawnjelly <lawnjelly@gmail.com>
2024-03-23 12:28:36 +01:00
A Thousand Ships 79ba22a73f
Use `Vector*` component-wise `min/max/clamp` functions where applicable 2024-03-20 13:47:42 +01: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
markdibarry a62870956a Add new Parallax2D node 2024-03-03 15:46:40 -05: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
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
Gilles Roudière 787c784aca Remove almost all remaining dependencies of TileMapLayer on TileMap 2024-02-29 12:16:50 +01:00
Rémi Verschelde 21e3b2111e
Merge pull request #88862 from smix8/split_physics_classes
Split monolithic physics class files
2024-02-27 16:37:07 +01:00
A Thousand Ships fe203d7003
Prevent threading problems in `TileMap` 2024-02-27 15:38:25 +01:00
smix8 35dafc9fa8 Split monolithic physics class files
Splits monolithic physics class files.
2024-02-27 11:18:16 +01:00
smix8 b044905547 Fix NavigationObstacle2D debug being affected by Node2D transform
Fixes NavigationObstacle2D debug being affected by Node2D transform.
2024-02-27 07:13:36 +01:00
Aaron Franke 1cb531ddb6
Move 2D-only resources to their own folder 2024-02-26 05:22:45 -06:00
Robert Yevdokimov 13e82094ee Remove word duplicates in comments and strings, and fix casing and punctuation 2024-02-23 17:28:28 -05:00
smix8 1cf407e7c9 Add debug visual for NavigationRegion2D bake rect
Adds debug visual for NavigationRegion2D bake rect.
2024-02-23 11:36:49 +01:00
Gilles Roudière 33485e654e Fixes a memory leak with TileMap runtime updates 2024-02-21 13:18:21 +01: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
Micky 445b1e9c5f Allow VisibleOnScreenNotifier2D/3D to have empty `enable_node_path` 2024-02-16 17:34:02 +01:00
kobewi 2c2480ea4e Make TileMapLayers internal 2024-02-15 21:28:04 +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 8b72165b5f
Merge pull request #88190 from Eoin-ONeill-Yokai/bugfix/materials-tilemap2d
Fix regression where a tile's custom material was ignored
2024-02-13 11:25:06 +01:00
Rémi Verschelde 9050ee1542
Merge pull request #87297 from adamscott/2d-pixel-art-stability
Stabilize snapping 2D transforms to pixel
2024-02-12 23:53:51 +01:00
Adam Scott 35b640107f
Stabilize snapping 2D transforms to pixel
Co-authored-by: Danni <34800072+KeyboardDanni@users.noreply.github.com>
2024-02-12 11:04:01 -05:00
Rémi Verschelde effb35dfa7
Merge pull request #88164 from smix8/fix_region_signals
Fix NavigationRegion errors from signal changes
2024-02-12 13:34:53 +01:00
Rémi Verschelde a1aca7e5c9
Merge pull request #88157 from kleonc/tilemap-move-layer-fix-moving-child-nodes
Fix `TileMap::move_layer` incorrectly moving child `TileMapLayer` nodes
2024-02-12 13:34:46 +01:00
Rémi Verschelde 821bf4b533
Merge pull request #88105 from AThousandShips/tile_duplicate_fix
Fix duplicating/copying `TileMap`
2024-02-12 13:34:34 +01:00
Rémi Verschelde 687f840354
Merge pull request #87379 from groud/change_tilemap_editor_to_tilemaplayer_editor
Change TileMapEditor to TileMapLayerEditor
2024-02-12 13:34:04 +01:00