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