Age | Commit message (Collapse) | Author |
|
|
|
|
|
Rename Math::stepify to snapped
|
|
Rename Vector2.tangent() to Vector2.orthogonal()
|
|
Rename Rect2 and Rect2i grow_margin() to grow_side()
|
|
Rename MainLoop methods to match Node methods
|
|
|
|
|
|
|
|
To get counts of items before getting the list, which is useful for
GDNative so users can pre-allocate the buffer with the correct size
without having to get the list twice.
|
|
-Uses a single array with all data
-Massive performance improvement
-Does not support threads yet, but code is now thread friendly
|
|
|
|
|
|
The calls to the BVH need to use the world space AABB, rather than local space for it to work. Also, update was not being called which is required to update the AABB as objects move.
|
|
Replace Octree by DynamicBVH in cull code
|
|
Fix the `String::get_base_dir()` logic to properly check for top level directories on Windows
|
|
-Much greater pairing/unpairing performance
-For now, using it for culling too, but this will change in a couple of days.
-Added a paged allocator, to efficiently alloc/free some types of objects.
|
|
directories on Windows.
|
|
|
|
|
|
|
|
Used for reusable stacks, or filling arrays from multiple threads efficiently.
|
|
Add support for duplicate() for Packed*Array, and they are pass by ref in godot 4.0
|
|
Expose `PROPERTY_HINT_TYPE_STRING` to scripting
|
|
Make `property_list_changed_notify()` protected in `Object`
|
|
Add a Dynamic BVH implementation.
|
|
As a bonus, to have consistency between use Beziers and create insert tracks, use Beziers also gets a default via editor settings that is used when the confirmation dialog is disabled, instead of just falling back to creating non-Bezier tracks.
|
|
|
|
-Based on Bullet Dbvh, has style and functional changes.
-Provides efficient pairing
-Needed to optimize rendering
-Needed to optimize physics
This PR is up for others to review the implementation.
|
|
|
|
Add interpolation parameter to resize_to_po2()
|
|
Image::resize_to_po2() now takes an optional p_interpolation parameter
that it passes directly to resize() with default value INTERPOLATE_BILINEAR.
|
|
-Happens on import by default for all models
-Just works (tm)
-Biasing can be later adjusted per node or per viewport (as well as globally)
-Disabled AABB.get_support test because its broken
|
|
Since we clone the environments to build thirdparty code, we don't get an
explicit dependency on the build objects produced by that environment.
So when we update thirdparty code, Godot code using it is not necessarily
rebuilt (I think it is for changed headers, but not for changed .c/.cpp files),
which can lead to an invalid compilation output (linking old Godot .o files
with a newer, potentially ABI breaking version of thirdparty code).
This was only seen as really problematic with bullet updates (leading to
crashes when rebuilding Godot after a bullet update without cleaning .o files),
but it's safer to fix it everywhere, even if it's a LOT of hacky boilerplate.
|
|
|
|
|
|
Add a project setting to enable stdout flushing in release builds
|
|
Add PtrConstruct template to use in Variant constructors
|
|
To be consistent with the enum in Variant so missing types can be more
easily spotted.
|
|
Since the PtrToArg::encode requires the value to be constructed
previously. With PtrConstruct this is not required.
|
|
Use pointer parameters in Variant function pointers
|
|
encrypted files.
|
|
This can be used in server builds for journalctl compatibility.
|
|
|
|
Don't handle BaseException in build scripts
|
|
|
|
|
|
We haven't had a proper implementation for COMPRESS_PVRTC2 (which is PVRTC1 2-bpp) in years,
so let's drop it instead of keeping a compress type which doesn't work.
The other enum values were renamed to clarify that our PVRTC2 and PVRTC4 are respectively
PVRTC1 2-bpp and PVRTC1 4-bpp. PVRTC2 2-bpp and 4-bpp are not implemented yet.
|
|
|
|
Instead of references. This is needed because those function pointers
are used in GDNative which needs to work with plain C, which doesn't
support passing parameters by reference.
|