Age | Commit message (Collapse) | Author |
|
Include paths are processed from left to right, so we use Prepend to
ensure that paths to bundled thirdparty files will have precedence over
system paths (e.g. `/usr/include` should have lowest priority).
|
|
Allow adding disabled shapes
|
|
Many contributors (me included) did not fully understand what CCFLAGS,
CXXFLAGS and CPPFLAGS refer to exactly, and were thus not using them
in the way they are intended to be.
As per the SCons manual: https://www.scons.org/doc/HTML/scons-user/apa.html
- CCFLAGS: General options that are passed to the C and C++ compilers.
- CFLAGS: General options that are passed to the C compiler (C only;
not C++).
- CXXFLAGS: General options that are passed to the C++ compiler. By
default, this includes the value of $CCFLAGS, so that setting
$CCFLAGS affects both C and C++ compilation.
- CPPFLAGS: User-specified C preprocessor options. These will be
included in any command that uses the C preprocessor, including not
just compilation of C and C++ source files [...], but also [...]
Fortran [...] and [...] assembly language source file[s].
TL;DR: Compiler options go to CCFLAGS, unless they must be restricted
to either C (CFLAGS) or C++ (CXXFLAGS). Preprocessor defines go to
CPPFLAGS.
|
|
Adds the ability to directly add disabled shapes to a collision object. Before this commit a shape has always been assumed to be enabled and had to be disabled in an extra step.
|
|
|
|
Implemented terrain raycast acceleration
|
|
Fix missing re-activation of bullet physics sleep feature
|
|
|
|
Adds the missing option of re-enabling the sleep feature in bullet physics once a body had the sleep feature disabled.
|
|
|
|
|
|
|
|
|
|
Optimized area check
|
|
|
|
Scaling the depth was the wrong solution for the KinematicBody jitter
because it causes jitter with RigidBody. Instead scale the margin that
is ignored to allow KinematicBody to still pick up the ray shape in the
kinematic test when the shape is just at margin distance from another
one. This solution does not cause jitter with either KinematicBody or
RigidBody.
|
|
Fix RayShape collision when used with a KinematicBody (Bullet Physics)
|
|
- Added code handling non-compound collision to recover_from_penetration_ray()
which is now needed due to the optimization avoiding the use of compound
collisions when only a single collision shape is used.
- Removed arbitrary margin applied in the collision algorithm of RayShapes
which causes jittered movement. For lack of a better replacement and for
lack of any explanation on why it has been introduced, it's now using the
shape's margin property instead which is small enough to not show visible
jitter.
- Tried to get rid of inconsistent uses of the collision margin.
- Removed hack from GodotDeepPenetrationContactResultCallback::addContactPoint
for RayShape collision as it's no longer needed as the collision algorithm
of RayShapes correctly calculates the contact normal for a while now.
Fixes #25227.
|
|
Fixed area collision report with concave
|
|
|
|
Added support to scale areas, fixes #23448
|
|
|
|
Fix many asan and ubsan reported issues
|
|
The code already referred to "Basis", it's just the file name that was different for some reason.
|
|
|
|
level of chunks
|
|
|
|
This allows most demos to run without any ubsan or asan errors. There
are still some things in thirdpart/ and some things in AudioServer that
needs a look but this fixes a lot of issues. This should help debug less
obvious issues, hopefully.
This fixes #25217 and fixes #25218
|
|
|
|
Fixes #25301.
|
|
|
|
Happy new year to the wonderful Godot community!
|
|
|
|
`PhysicsDirectSpaceState.get_rest_info()` now provides normals in result
Addresses issue 24558
|
|
Allow to create a heightmap collision shape from an image
|
|
Added function to control 6DOF precision
|
|
|
|
Fixes some out-of-bounds problems when there are more collisions than
have been requested for. This extends what has been done in 444b8471a3.
Fixes godotengine/godot#23990
|
|
|
|
Exposing more of bullets 6DOF spring constraints
|
|
Nulling mainShape when it's deleted to avoid double free.
Initialising vector in inertia calculation to work around bug in bullet.
|
|
-Also added set_deferred, this was missing.
|
|
Adding angular and linear springs
Added getters
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fixes the following Clang 7 warnings:
```
core/object.cpp:44:1: warning: '_ObjectDebugLock' defined as a struct here but previously declared as a class [-Wmismatched-tags]
core/variant_call.cpp:43:1: warning: '_VariantCall' defined as a struct here but previously declared as a class [-Wmismatched-tags]
drivers/gles3/rasterizer_storage_gles3.h:765:2: warning: 'MultiMesh' defined as a struct here but previously declared as a class [-Wmismatched-tags]
editor/editor_node.h:794:1: warning: 'EditorProgress' defined as a struct here but previously declared as a class [-Wmismatched-tags]
modules/bullet/rigid_body_bullet.h:230:17: warning: class 'KinematicUtilities' was previously declared as a struct [-Wmismatched-tags]
modules/bullet/space_bullet.h:60:1: warning: class 'btSoftBodyWorldInfo' was previously declared as a struct [-Wmismatched-tags]
scene/resources/world_2d.cpp:40:1: warning: 'SpatialIndexer2D' defined as a struct here but previously declared as a class [-Wmismatched-tags]
scene/resources/world.cpp:39:1: warning: 'SpatialIndexer' defined as a struct here but previously declared as a class [-Wmismatched-tags]
servers/audio/reverb_sw.cpp:60:1: warning: 'ReverbParamsSW' defined as a struct here but previously declared as a class [-Wmismatched-tags]
thirdparty/bullet/BulletSoftBody/btSoftBody.h:43:1: warning: 'btSoftBodyWorldInfo' defined as a struct here but previously declared as a class [-Wmismatched-tags]
```
|