1
0
Fork 0
Commit Graph

3905 Commits

Author SHA1 Message Date
Pedro J. Estébanez 2f9f0f2d0e Use approximate test when comparing properties, thoroughly 2025-12-29 09:51:52 +01:00
lawnjelly 4389e0fd34
Merge pull request #111584 from Ivorforce/localvector-from-span-explicit
[3.x] Make `Span` -> `LocalVector` conversion function explicit.
2025-10-13 12:14:19 +01:00
Lukas Tenbrink d78e3b050e Make `LocalVector` -> `Span` conversion function explicit. 2025-10-13 12:44:17 +02:00
lawnjelly c59ef69184 `Span` - update more `Geometry` API to use span 2025-10-13 11:25:35 +01:00
lawnjelly 5b8789e83a
Merge pull request #111424 from lawnjelly/span
[3.x] Add `Span` and some basic uses from `Geometry`.
2025-10-13 08:53:06 +01:00
lawnjelly db9921b17f Add `Span` and some basic uses from `Geometry`. 2025-10-11 08:16:27 +01:00
lawnjelly dedf461674 Add blob shadows feature
BlobShadow node (sphere or capsule)
BlobFocus
Backends for GLES2 and GLES3
2025-10-01 06:37:54 +01:00
lawnjelly 3f7046272e
Merge pull request #107702 from lawnjelly/faster_children_iteration
[3.x] Fast child iteration in `Node`, `Spatial`, `CanvasItem`
2025-10-01 05:18:20 +01:00
lawnjelly d0dbb2f0af
Merge pull request #108382 from Faless/mbedtls/3.x_update_to_mbedtls_3.6.4
[3.x] mbedTLS: Update to mbedTLS 3.6.4
2025-09-13 10:29:56 +01:00
lawnjelly 5aed565de5
Merge pull request #107583 from bruvzg/non_ex_fs
[3.x] Backport nonexclusive fullscreen mode.
2025-08-29 15:32:49 +01:00
lawnjelly cd9713e890 Fast child iteration in `Node`, `Spatial`, `CanvasItem` 2025-07-16 03:08:26 +01:00
Fabio Alessandrelli 0770c9a4a3 mbedTLS: Update to mbedTLS 3.6.4
mbedTLS 2.28 is now EOL, and will no longer receive security updates.

This commit backports from Godot 4 the changes needed to update to
mbedTLS 3.6 (new LTS), including TLSv1.3 support.
2025-07-07 17:18:44 +02:00
Lukas Tenbrink 64fa38b53f Use `if constexpr` in `Object::derives_from`. 2025-07-02 13:10:59 +02:00
lawnjelly 0718852d2c Add `EditorSettings` `EDITOR_GET_CACHED` 2025-07-01 17:00:08 +01:00
lawnjelly ac46a86c44 Optimize hotspots with `Object::is_reference()` 2025-06-23 11:05:12 +01:00
lawnjelly aec5bf47dd Optimize hotspots with `Object::derives_from` 2025-06-23 09:15:24 +01:00
Lukas Tenbrink aa63595b83 Use ancestral classes to speed up `Object::cast_to` when possible. 2025-06-22 16:21:42 +02:00
lawnjelly c6f91900da
Merge pull request #107462 from lawnjelly/quick_ancestry
[3.x] Provide quick access to `Object` ancestry
2025-06-22 13:10:17 +01:00
lawnjelly ae786bd43a Provide quick access to `Object` ancestry 2025-06-19 11:04:50 +01:00
Haoyu Qiu 312d13b897 Allow constructing Quat from two Vector3s 2025-06-19 17:39:54 +08:00
Pāvels Nadtočajevs 62e7304ffe
[3.x] Backport nonexclusive fullscreen mode. 2025-06-16 11:31:50 +03:00
lawnjelly 6c3f393623
Merge pull request #107545 from lawnjelly/explicit_pool_vector
[3.x] Remove implicit conversion from `LocalVector` to `PoolVector`
2025-06-16 05:58:55 +01:00
lawnjelly 035ffd8caa Remove implicit conversion from `LocalVector` to `PoolVector` 2025-06-14 20:11:48 +01:00
lawnjelly bd47dc4b29 Remove implicit conversion from `LocalVector` to `Vector` 2025-06-14 19:46:29 +01:00
lawnjelly 187e14b8ac Improve `GLOBAL_GET_CACHED` to use `SpinLock` 2025-04-30 15:06:11 +01:00
lawnjelly 18c01b21e5 Physics Interpolation - Add InterpolatedProperty
And add some basic interpolated properties to Camera.
2025-04-07 08:19:00 +01:00
lawnjelly be6f971f4f Use the in-built casting instead of `dynamic_cast` on all platforms
The in-built casting appears significantly faster than `dynamic_cast`.

Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-03-31 12:46:24 +01:00
lawnjelly a39897953d Make changes for simplified ObjectDB::get_instance() casting 2025-03-31 07:42:34 +01:00
lawnjelly 31935d6d63 Simplified `ObjectDB::get_instance()` casting
Reduces boiler plate by templating `get_instance()` for the cast type, while remaining backward compatible to the existing functionality.
2025-03-30 19:23:16 +01:00
lawnjelly 5155fe5a4f
Merge pull request #103685 from lawnjelly/fti_scene_tree
[3.x] Physics Interpolation - Move 3D FTI to `SceneTree`
2025-03-30 15:46:13 +01:00
lawnjelly 95a494c8e5
Merge pull request #100995 from lawnjelly/move_semantics
[3.x] Add move semantics to core containers.
2025-03-23 10:16:21 +00:00
lawnjelly 0758ad0612 Add GLOBAL_GET cached macros.
GLOBAL_GET is an expensive operation which should not be used each frame / tick.
This PR adds macros which do a cheaper revision check, and only call the expensive GLOBAL_GET when project settings have changed.

Co-authored-by: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-03-18 16:28:40 +00:00
lawnjelly 66a2efe491 Physics Interpolation - Move 3D FTI to `SceneTree`
Moves 3D interpolation from `VisualServer` to the client code (`SceneTree`).
Complete rework of 3D physics interpolation, but using the same user API.
2025-03-17 17:55:26 +00:00
Yufeng Ying 2a2ae48d30 Prevent inlining error print functions. 2025-03-05 17:36:59 +08:00
lawnjelly d549b98c5c Add move semantics to core containers.
Adds to SWAP, Variant, StringName, List, CowData and LocalVector.

Co-Authored-By: Lukas Tenbrink <lukas.tenbrink@gmail.com>
2025-01-01 16:00:00 +00:00
Rémi Verschelde fd9bd108af
CI: Update Ubuntu runners to 24.04, but keep 22.04 for Linux builds
Pin clang-format to version 16, and black to 24.10.0.
Keep using Ubuntu 22.04 for Linux builds for portability.
2024-11-07 12:50:17 +01:00
kilian-diener a75460f267 Fix error when non-ASCII characters in resource pack path
Co-authored-by: Haoyu Qiu <timothyqiu32@gmail.com>
2024-11-05 13:23:38 +01:00
lawnjelly 3841d76515
Merge pull request #98234 from timothyqiu/locale-compare-cache
[3.x] Cache results for `TranslationServer.compare_locales()`
2024-10-17 09:00:41 +01:00
lawnjelly 3ee8ecdf25
Merge pull request #96135 from aaronfranke/3.x-bind-array-get-set
[3.x] Bind Array and Pool*Array get and set functions
2024-10-16 14:13:37 +01:00
Haoyu Qiu 7ebb63628d Cache results for `TranslationServer.compare_locales()` 2024-10-16 20:26:13 +08:00
jitspoe 62a8b7c62e [3.x] Do not auto add default script and country codes to the locale. 2024-10-12 01:04:42 -04:00
lawnjelly 26405db222
Merge pull request #95791 from timothyqiu/split-empty-3.x
[3.x] Fix `split_floats` behavior when spaces are used as separators
2024-09-24 14:32:12 +01:00
lawnjelly 8c444fb9c9
Merge pull request #96862 from lawnjelly/selfdestruct_correctness
[3.x] `Object::call()` prevent debug lock accessing dangling pointer
2024-09-12 12:18:04 +01:00
lawnjelly 0ccd559d17 `Object::call()` prevent debug lock accessing dangling pointer
Self deleting an object within a call was leading to crashes due to referencing freed memory, due to a raw pointer stored in the debug lock.

Co-authored-by: RandomShaper <pedrojrulez@gmail.com>
2024-09-12 08:46:27 +01:00
Haoyu Qiu 905e8a39bf Fix parsing of `4.` in Expression 2024-09-12 09:48:20 +08:00
Aaron Franke 699a48d8f1
[3.x] Bind Array and Pool*Array get and set functions 2024-08-26 15:07:12 -07:00
Haoyu Qiu a808f3e877 Fix split_floats behavior when spaces are used as separators 2024-08-19 15:14:10 +08:00
lawnjelly 3771078c02 Verify GLTF indices to prevent crash with corrupt files
Also verify prior to vertex optimization.
2024-07-31 10:39:17 +01:00
lawnjelly 250a7d8788 Physics Interpolation - Fix `Transform2D::interpolate_with()`
Ports the `interpolate_with()` routine from 4.x which works correctly with skew.
2024-07-02 07:42:08 +01:00
lawnjelly 0b30d77384 Physics Interpolation - refactor `Camera` and fix `get_camera_transform()`
* Moves 3D Camera interpolation scene side.
* Automatically switches `get_camera_transform()` to report interpolated transform during `_process()`.
* Fixes `ClippedCamera` to work with physics interpolation.
2024-06-09 12:08:27 +01:00