Age | Commit message (Collapse) | Author |
|
This returns a double while the other values are all uint64_t. The
clang compiler gives a warning since converting the constant to double
loses precision.
|
|
There seemed to be a bug in area calculation in Face3::get_area()-function. It returned the area of "imaginary" parallelogram instead of the triangle. Therefore the area returned was twice the real area. This manifested itself when using a hydro module for godot ( https://gitlab.com/ringtechsolutions/godot-tools/hydro/hydro ) causing the buoyancy to be two times the expected value.
"Reference": http://www.maths.usyd.edu.au/u/MOW/vectors/vectors-11/v-11-7.html
|
|
Core: Drop custom `copymem`/`zeromem` defines
|
|
We've been using standard C library functions `memcpy`/`memset` for these since
2016 with 67f65f66391327b2967a20a89c3627e1dd6e84eb.
There was still the possibility for third-party platform ports to override the
definitions with a custom header, but this doesn't seem useful anymore.
|
|
Added an occlusion culling system with support for static occluder meshes.
It can be enabled via `Project Settings > Rendering > Occlusion Culling > Use Occlusion Culling`.
Occluders are defined via the new `Occluder3D` resource and instanced using the new
`OccluderInstance3D` node. The occluders can also be automatically baked from a
scene using the built-in editor plugin.
|
|
|
|
Closes #47022.
|
|
|
|
|
|
x, y, z values were updated too early
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Cylinder collision detection uses a mix of SAT and GJKEPA.
GJKEPA is used to find the best separation axis in cases where finding
it analytically is too complex.
Changes in SAT solver:
Added support for generating separation axes for cylinder shape.
Added support for generating contact points with circle feature.
Changes in GJKEPA solver:
Updated from latest Bullet version which includes EPA fixes in some
scenarios.
Setting a lower EPA_ACCURACY to fix accuracy problems with cylinder vs.
cylinder in some cases.
|
|
Make audio bus channels' peak volume consistent
|
|
Channels that are inactive -or when playback has not started yet- will report -200 dB as their peak value (which is also the lowest value possible during playback).
|
|
|
|
Use Math_TAU and deg2rad/etc in more places and optimize code
|
|
|
|
Define GDNative sizes using sizeof(godot_real) and sizeof(int32_t)
|
|
|
|
|
|
Shader optimizations to reduce VGPR usage and increase occupancy
|
|
Clustering is now GPU based, uses an implementation based on the Activision algorithm.
|
|
|
|
CI: Update to clang-format 11 and apply ternary operator changes
|
|
|
|
|
|
|
|
Unified named colors in RichTextLabel
|
|
|
|
Happy new year to the wonderful Godot community!
2020 has been a tough year for most of us personally, but a good year for
Godot development nonetheless with a huge amount of work done towards Godot
4.0 and great improvements backported to the long-lived 3.2 branch.
We've had close to 400 contributors to engine code this year, authoring near
7,000 commit! (And that's only for the `master` branch and for the engine code,
there's a lot more when counting docs, demos and other first-party repos.)
Here's to a great year 2021 for all Godot users 🎆
|
|
|
|
Rename Math::stepify to snapped
|
|
Rename Vector2.tangent() to Vector2.orthogonal()
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
-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.
|
|
|
|
|
|
-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.
|
|
|
|
-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
|