Rémi Verschelde
96a5d62507
Merge pull request #104355 from YYF233333/hashmap_iter
...
Optimize `ClassDB::get_direct_inheriters_from_class`
2025-03-21 13:03:53 +01:00
Rémi Verschelde
1f682b6554
Merge pull request #104237 from Ivorforce/optimize-thread-pool-waiting
...
Optimize thread pools by avoiding needless locks and unlocks of the `task_mutex`.
2025-03-21 13:03:37 +01:00
Rémi Verschelde
3ceb84f5b2
Merge pull request #104155 from bleikerja/utf8_to_base64_empty_string_fix
...
Fix `Marshalls.utf8_to_base64` shows `"ret.is_empty()" is true` error for empty string
2025-03-21 13:03:28 +01:00
kobewi
602806101c
Improve error messages for add_property_info()
2025-03-20 22:39:09 +01:00
Pāvels Nadtočajevs
abe413ff8c
Fix icons with non-ASCII file names in project manager.
2025-03-20 16:33:01 +02:00
Lukas Tenbrink
143f8e933e
Optimize Color::to_html by allocating less.
2025-03-20 13:42:03 +01:00
Thaddeus Crews
f6a35e2a6e
Merge pull request #86015 from kitbdev/array-initializer-list
...
Add list initialization to Array, Variant, and TypedArray
2025-03-19 17:46:06 -05:00
aaronp64
3eb4e6c6ff
Optimize Array methods with SWAP/std::move
...
Updated Array::shuffle() to use SWAP instead of copying through temporary variables, which makes shuffling simple types around 2x faster, and refcounted object types around 20x faster.
Also updated multiple methods that insert into/modify the array to move their validated Variant to avoid an extra copy, speed increase varies depending on type and how much else the methods are doing, usually around 5-10% faster.
2025-03-19 12:17:14 -04:00
Yufeng Ying
c37c92b450
Optimize ClassDB::get_direct_inheriters_from_class.
...
Co-authored-by: kleonc <9283098+kleonc@users.noreply.github.com >
2025-03-19 23:26:46 +08:00
kobewi
10f6c01b9c
Remove ABS in favor of Math::abs
2025-03-19 13:52:40 +01:00
Rémi Verschelde
64bd03269f
Merge pull request #104286 from Ivorforce/localvector-find
...
Harmonize `String`, `Vector` and `LocalVector` `find` and `rfind`.
2025-03-19 12:27:27 +01:00
Rémi Verschelde
2fa721b1bc
Merge pull request #104127 from Ivorforce/360-noclip
...
Remove `String` clipping constructors.
2025-03-19 12:27:10 +01:00
Rémi Verschelde
65161977e9
Merge pull request #103415 from bruvzg/iv_pools
...
Use single RNG instance for `FileAccessEncrypted` IV generation.
2025-03-19 12:26:38 +01:00
Pablo Andres Fuente
e2bef7041e
Fix StreamPeerGZIP::finish() internal buffer size usage
...
Fixes #97201
Instead of using and arbitrary fixed size for the internal buffer,
the remaining available bytes of the internal `RingBuffer` is used.
Also add unit tests for `StreamPeerGZIP`.
2025-03-19 09:56:32 +01:00
Thaddeus Crews
fdbf6ecc9f
Merge pull request #98408 from rune-scape/stringlikevariantorder-in-place
...
StringLikeVariantOrder: Compare in-place
2025-03-18 14:42:58 -05:00
Thaddeus Crews
5c90aad2d9
Merge pull request #101964 from YYF233333/opt_for_size
...
Don't inline certain functions for smaller binary size
2025-03-18 14:42:37 -05:00
Thaddeus Crews
c8a94993bf
Merge pull request #103961 from bruvzg/win_pos_sync
...
Sync `display/window/size/initial_position_type` and `Window::WINDOW_INITIAL_POSITION_` enum.
2025-03-18 14:42:33 -05:00
rune-scape
0c7d78f455
StringLikeVariantOrder: Compare in-place
2025-03-18 11:21:30 -07:00
Yyf2333
b28d6d1fa3
Don't inline certain functions for smaller binary size.
...
Co-authored-by: Thaddeus Crews <repiteo@outlook.com >
2025-03-18 21:40:25 +08:00
Lukas Tenbrink
fde71e0382
Harmonize String, Vector and LocalVector find and rfind.
...
Use `Span::find` for `LocalVector::find`, accepting negative `p_from`.
Return `-1` for invalid `p_from` values in `rfind`.
Accept negative values for `p_from` in `find`, starting from the back.
2025-03-18 12:37:36 +01:00
Thaddeus Crews
85258ec1a5
Merge pull request #102662 from groud/chunk_tilemap_physics
...
Chunk tilemap physics
2025-03-17 16:03:29 -05:00
Thaddeus Crews
1b631edf67
Merge pull request #104129 from dsnopek/gdextension-get-used-classes
...
GDExtension: Add mechanism to get which classes an extension is using
2025-03-17 16:03:27 -05:00
Thaddeus Crews
f98cddfc71
Merge pull request #101994 from fire/vsk-save-dds-4.4
...
Add DDS image load and save functionality
2025-03-17 16:03:26 -05:00
Thaddeus Crews
bb60b05ca4
Merge pull request #104182 from Ivorforce/small-little-string-function
...
Add missing `String + char *` function, to avoid unnecessary right side allocation to `String`.
2025-03-17 16:03:25 -05:00
Thaddeus Crews
06f0c6369e
Merge pull request #104273 from Ivorforce/fabs-absf
...
Simplify and optimize `Math::absf` implementation to use `::fabs` and `::fabsf`.
2025-03-17 16:03:24 -05:00
Thaddeus Crews
5750d4feca
Merge pull request #104183 from Repiteo/core/zero-constructible-expanded
...
Core: Expand `is_zero_constructible` coverage
2025-03-17 16:03:22 -05:00
David Snopek
2dff9fef37
GDExtension: Add mechanism to get which classes an extension is using
2025-03-17 15:27:14 -05:00
Thaddeus Crews
ea62170dac
Core: Add constexpr constructors/operators to math structs
...
• Begin integrating `constexpr` on math tests; use `static_assert` where appropriate
2025-03-17 12:15:31 -05:00
Thaddeus Crews
4320800621
Core: Expand is_zero_constructible coverage
2025-03-17 11:45:26 -05:00
Lukas Tenbrink
8c14766597
Add missing String + char * function, to avoid unnecessary right side allocation to String.
2025-03-17 17:31:35 +01:00
Thaddeus Crews
b1d13c5173
Merge pull request #103932 from Ivorforce/span-algorithms-header
...
Move `CowData` `find`, `rfind` and `count` to `Span`
2025-03-17 10:52:18 -05:00
Thaddeus Crews
82f284d9fe
Merge pull request #104187 from Ivorforce/file-access-compressed-memcpy
...
Optimize `FileAccessCompressed::get_buffer` by using `memcpy`.
2025-03-17 10:52:16 -05:00
Lukas Tenbrink
24c11dea16
Simplify and optimize absf implementation to use std::fabs.
2025-03-17 14:50:15 +01:00
Lukas Tenbrink
a9745aac5c
Optimize reverb by removing stray volatile from the undenormalize function signature.
2025-03-16 15:50:50 +01:00
Lukas Tenbrink
9d30732c5b
Optimize thread pools by avoiding needless locks and unlocks of the task_mutex.
2025-03-16 15:33:55 +01:00
Lukas Tenbrink
b67e213b16
Optimize FileAccessCompressed::get_buffer by using memcpy.
2025-03-16 12:22:06 +01:00
Zae
0013d30c92
Fix hash issue with OptimizedTranslation caused by signed char
2025-03-16 15:21:06 +08:00
Lukas Tenbrink
49e860159a
Move CowData find, rfind and count to Span.
2025-03-16 03:31:11 +01:00
Lukas Tenbrink
b4f6663afa
Recycle zstd decompression context if possible, avoiding repeated allocations.
2025-03-15 15:39:18 +01:00
Lukas Tenbrink
a23f630781
Remove String clipping constructors.
...
Callers should instead call constructors with explicit encoding names, with known length `Span`.
2025-03-15 12:34:44 +01:00
bleikerja
e6a8c4b43f
Fix Marshalls.utf8_to_base64 shows 'ret.is_empty() is true' error for empty String
2025-03-15 10:31:24 +01:00
K. S. Ernest (iFire) Lee
69b281295c
Add DDS image load and save functionality
...
Save and load DDS from Image class.
Co-authored-by: BlueCube3310 <53150244+BlueCube3310@users.noreply.github.com >
2025-03-14 19:31:43 -07:00
Thaddeus Crews
b377562b52
Merge pull request #91660 from AThousandShips/methodinfo_vec
...
[Core] Use `Vector` for `MethodInfo::arguments`
2025-03-14 10:06:13 -05:00
Thaddeus Crews
1700a84275
Merge pull request #104049 from Ivorforce/string-dedup-char32
...
De-duplicate `String` single-char constructor
2025-03-14 10:06:12 -05:00
Thaddeus Crews
cf4ebb63a0
Merge pull request #104109 from Ivorforce/resize-zeroed
...
Use `resize_zeroed` instead of `resize` then `fill(0)` in several places.
2025-03-14 10:06:10 -05:00
Thaddeus Crews
4292f2464c
Merge pull request #104113 from aaronfranke/projection-construct
...
Add missing Projection constructor with 16 `real_t` values
2025-03-14 10:06:07 -05:00
Lukas Tenbrink
f4de2cd22a
Use resize_zeroed instead of resize then fill(0) in several places.
2025-03-14 12:09:39 +01:00
Aaron Franke
ced61da848
Add missing Projection constructor with 16 real_t values
2025-03-14 02:57:19 -07:00
Lukas Tenbrink
6759d3b812
Fix "Unicode parsing error" spam when opening editor.
2025-03-14 08:32:26 +01:00
Rémi Verschelde
6ed10dee37
Merge pull request #104060 from bruvzg/resloader_ids
...
Fix `Invalid Task ID` errors in `ResourceLoader`.
2025-03-14 00:08:59 +01:00