Commit Graph

1339 Commits

Author SHA1 Message Date
Rémi Verschelde 16f6a5b139
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".

Backported from #70885.
2023-01-10 15:32:59 +01:00
QbieShay a945538eae added options for sorting transparent objects
Co-authored-by: Rémi Verschelde <rverschelde@gmail.com>
Co-authored-by: Clay John <claynjohn@gmail.com>
(cherry picked from commit acdcbefa4e)
2022-12-12 13:33:52 +08:00
hare_ware b012fed826 Fix Skeleton3D falsely assuming all physical bones will be children of their first bone
(cherry picked from commit 913f57f695)
2022-12-05 10:12:10 +08:00
kleonc 7d2701c08b `SpriteBase3D` Fix drawing AtlasTextures with vertical margins differently than in 2D
(cherry picked from commit 0a64c2eba5)
2022-12-05 09:58:20 +08:00
kleonc a9e897d2c3 Move duplicated drawing code from `Sprite3D`/`AnimatedSprite3D` to `SpriteBase3D`
(cherry picked from commit 0bf2b8e813)
2022-12-05 09:58:15 +08:00
bruvzg 84eed3b988 [TextMesh, 3.x] Fix auto-translation and ignore control chars.
(cherry picked from commit efa6b01c97)
2022-12-05 09:40:56 +08:00
Haoyu Qiu f29f387d54 Fix error when having BoneAttachment before PhysicalBone
(cherry picked from commit 3acc0779a4)
2022-12-05 09:30:40 +08:00
Haoyu Qiu 0fdda75fdc Fix NavigationObstacle not estimating radius
(cherry picked from commit acf86efebc)
2022-12-05 09:18:43 +08:00
Haoyu Qiu f8eed6372c Fix NavigationObstacle not registering to default navigation map
(cherry picked from commit fba5a4ab9a)
2022-12-05 09:18:12 +08:00
lawnjelly 0546d268a1 CPUParticles initialize data on set_amount
Fills particle data with zeroes on resize using set_amount(), to prevent garbage data including Nans being sent to VisualServer, which can corrupt the spatial partitioning.

(cherry picked from commit fdd82f4754)
2022-09-20 10:24:56 +02:00
lawnjelly 3e848096e8 Portals - Show RayCast debug helper
Switches the raycast helper to global portal_mode, allowing it to show when portals are active.

(cherry picked from commit 09befec1ed)
2022-09-20 10:23:06 +02:00
fabriceci 6029200662 Hack as a hot fix for Bullet's collision margin issue
(cherry picked from commit b3210c5cd6)
2022-08-30 11:48:24 +02:00
Cory Petkovsek 92eab47591 Fix free(RID) abuse by various classes
(cherry picked from commit f7f112ab1f)
2022-08-30 11:18:02 +02:00
smix8 1309633cdb Fix NavigationObstacle nodes not registering to default navigation map
Fix NavigationObstacle nodes not registering to default navigation map.

(cherry picked from commit 47b39ce4c2)
2022-08-30 11:14:32 +02:00
Josh Jones 61e28c28cd Fix typo when setting NavigationRegion travel_cost
(cherry picked from commit 8c324132d0)
2022-08-08 13:18:43 +02:00
Rémi Verschelde 818f1eed31 Code quality: Fix header guards consistency
Adds `header_guards.sh` bash script, used in CI to validate future
changes. Can be run locally to fix invalid header guards.
2022-07-25 14:53:37 +02:00
lawnjelly d4dc7c4b32 Portals - Allow more logging to be disabled
Some logging messages were still being issued when portals/debug/logging was false. This could be annoying in games that stream in parts of levels and repeatedly call `rooms_convert()`.

This PR allows all but essential logging to be disabled.
2022-07-24 13:44:59 +01:00
Rémi Verschelde 33b5709d53
Merge pull request #61601 from Haydoggo/path-follow-fix-3.x 2022-07-18 09:36:22 +02:00
foxydevloper 5238740fef Add global_translation and global_rotation to Spatial 2022-07-15 21:39:35 -06:00
Hayden e05f969adb Fix crash on NaN offset in path_follower 2d and 3d 2022-07-14 14:30:24 +12:00
bruvzg 7f562030be
Use custom key struct, instead of raw hashes for the Label3D cache to avoid potential hash collisions. 2022-07-04 09:46:38 +03:00
reduz 995281ca90 Fix editor-only visibility for lights
* Update visibility again for editor-only lights if owner changes.

Fixes #26399, supersedes #52327

(cherry picked from commit d69e3791bf)
2022-07-03 03:21:51 +02:00
Rémi Verschelde 86229d0b03
Merge pull request #54239 from Calinou/editor-directionallight-3d-only-show-relevant-properties-3.x
Only show relevant properties in the DirectionalLight inspector (3.x)
2022-07-03 02:02:10 +02:00
saneery cb94797ce4 Add process_mode property to InterpolatedCamera 2022-07-03 01:47:10 +02:00
smix8 381e8dd278 Group NavigationAgent properties
Groups the ill-defined NavigationAgent properties between pathfinding and avoidance to make it more clear which property affects what.

(cherry picked from commit dde09be302)
2022-06-30 19:23:01 +02:00
needleful eb99c7243e Apply baked ambient light settings when baking lights with scene environment 2022-06-21 12:12:47 -07:00
Rémi Verschelde 3c35617c50
Merge pull request #62187 from smix8/nav_nodes_depr_3.5 2022-06-20 18:36:17 +02:00
smix8 693aeaf799 [3.5] Mark Navigation/Navigation2D nodes as deprecated
Mark Navigation/Navigation2D nodes as deprecated. They already just redirect calls to the NavigationServer and have no longer a real purpose. In Godot 4.0 both nodes are already removed for good reasons.
2022-06-20 17:37:55 +02:00
smix8 88e42b2915 Add NavigationAgent desired path distance
Add NavigationAgent desired path distance

(cherry picked from commit 07740302f3)
2022-06-20 15:11:09 +02:00
Rémi Verschelde 4137578369 Fix typos with codespell
Using codespell 2.2-dev from current git.

Fix a couple incorrect uses of gendered pronouns.
2022-06-19 13:48:15 +02:00
smix8 c6f9627c74 [3.5] Add NavigationAgent2D/3D set_navigation_map() function
Add NavigationAgent2D/3D set_navigation_map() function. Also fixes some bugs from leftover code before the backport update.
2022-06-16 19:25:52 +02:00
smix8 8bd7c6188b [3.5] Update NavigationServer backport
Backports features and bugfixes from current Godot 4.0 to 3.5 and brings functions and codebase of both version largely in sync to make tutorials more compatible and future backports easier.
2022-06-14 05:55:14 +02:00
Rémi Verschelde 0b048b6d73 SoftBody: Fix attachments property names after #61180
Fixes #61581.

(cherry picked from commit 5c3081dae2)
2022-06-10 14:42:05 +02:00
Rémi Verschelde a9e966c319
Merge pull request #61544 from lawnjelly/vis_notifier_max_dist
VisibilityNotifier - add max_distance feature
2022-06-10 10:57:53 +02:00
lawnjelly 0c5a424f65 VisibilityNotifier - add max_distance feature
Enables turning off objects by distance to the camera in addition to testing whether they are in the view frustum.
2022-06-09 11:37:42 +01:00
smix8 106bf9b793 Add NavigationMesh debug when navmesh is added later through scripts
Add NavigationMesh debug when navmesh is added later through scripts

(cherry picked from commit b6eff47bac)
2022-06-09 10:08:55 +02:00
lawnjelly 1d870403b2 Optimized Mesh Merging
Changes from PoolVector to LocalVector and pre-reserving vectors rather than push_back.
2022-06-07 20:16:51 +01:00
Rémi Verschelde a6b27b526f
Merge pull request #60822 from lawnjelly/fti_add_child_reset 2022-06-03 14:56:19 +02:00
bruvzg eb44e23ca3
[Label3D, 3.x] Monitor default theme font changes, to prevent use of invalid materials. 2022-05-23 18:16:17 +03:00
Haoyu Qiu ff5e671c81 Use float when calculating Label3D line height 2022-05-23 17:58:51 +08:00
bruvzg dc6d8d6098
Backport Label3D node implementation and Sprite*3D material render priority. 2022-05-23 09:14:41 +03:00
smix8 8df9fd076f Process NavigationAgent2D/3D avoidance on demand only
Changes NavigationAgent avoidance callback to a toggle that is disabled by default.
Also fixes a few missing descriptions / wrong warnings.

(cherry picked from commit 7f3688603c)
2022-05-22 19:43:56 +02:00
smix8 88acb5b798 Make Navigation Agents and Obstacles respect parent process mode
Temporarily removes agent from navigation map when parent node cannot process due to SceneTree pause and process_mode property. Normal process_mode does not work as other agents would still avoid the paused agents because they were still active on the navigation map and the rvo world. Also fixes potential crash when region_get_map or agent_get_map is called while no map is set.

(cherry picked from commit 6b51ab66d8)
2022-05-19 15:34:56 +02:00
Haoyu Qiu b657d0c76c Add dedicated macros for property name extraction
* Replace case-by-case extraction with PNAME & GNAME
* Fix group handling when group hint begins with property name
* Exclude properties that are PROPERTY_USAGE_NOEDITOR
2022-05-19 11:31:35 +08:00
smix8 c3b39ca1e9 Disable threaded NavigationMesh bake on unsupported OS
Automatically disables threaded NavigationMesh bake when OS does not support threads.

(cherry picked from commit 49c603e127)
2022-05-16 17:52:07 +02:00
smix8 b11708c50d Expose NavigationObstacle2D/3D get_rid() and add config warning
Exposes get_rid() function for scripting.
Adds configuration warning when obstacle is used with not intended static body parent.

(cherry picked from commit 001d89223f)
2022-05-16 17:52:07 +02:00
smix8 847fab6272 Fix NavigationObstacle2D/3D get_global_transform() error
Fixes NavigationObstacle2D/3D reporting a 'get_global_transform: Condition "!is_inside_tree()" error when estimating the agent radius.

The collisionshapes that are lower in the SceneTree order than the obstacle node are not loaded in the SceneTree yet so the global_transform function fails.

Also adds warning message when this happens.

(cherry picked from commit cc707412e9)
2022-05-16 17:52:07 +02:00
Rémi Verschelde 5e693b6d84 Fix warnings found by Emscripten 3.1.10
Fix `-Wunused-but-set-variable`, `-Wunqualified-std-cast-call`, and
`-Wliteral-range` warnings.

(cherry picked from commit d8935b27a9)
2022-05-16 16:38:26 +02:00
lawnjelly a4c0e2ecce Physics Interpolation - add warnings to RESET_PHYSICS_INTERPOLATION
Adds warnings when NOTIFICATION_RESET_PHYSICS_INTERPOLATION is called and has no effect due to the node being hidden or not interpolated.
2022-05-10 11:17:58 +01:00
lawnjelly 328866ee6a Physics Interpolation - Reset on adding child to SceneTree
For convenience, branches added to the SceneTree now have physics interpolation reset after the first update of the transform to the VisualServer.
2022-05-10 11:09:20 +01:00