summaryrefslogtreecommitdiff
path: root/modules/bullet/space_bullet.cpp
AgeCommit message (Collapse)Author
2021-02-08Initialize class/struct variables with default values in modules/Rafał Mikrut
2021-01-28Use real_t in physics codeAaron Franke
2021-01-14Merge pull request #43923 from madmiraal/fix-43588Rémi Verschelde
Fix cast_motion sometimes failing
2021-01-13Only remove Bullet's body constraints when removing body from spaceMarcel Admiraal
2021-01-01Update copyright statements to 2021Rémi Verschelde
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 🎆
2020-12-31Add signal to inform joint that body has exited treeMarcel Admiraal
2020-12-28Merge pull request #42881 from madmiraal/fix-39767Rémi Verschelde
Set Bullet collision shape index to zero when using a single shape or ConcavePolygonShape
2020-11-27Fix cast_motion sometimes failingMarcel Admiraal
- Fixes Godot physics failing when the cast Shape is inside of, or already colliding with another Shape. - Fixes Bullet physics failing when there is no motion. - Ensures Godot and Bullet physics behave the same. - Updates the documentation to exclude the caveats for the failures and differences.
2020-11-26Remove any constraints connected to a Bullet body when removing itMarcel Admiraal
2020-11-07Reorganized core/ directory, it was too fatty alreadyreduz
-Removed FuncRef, since Callable makes it obsolete -Removed int_types.h as its obsolete in c++11+ -Changed color names code
2020-10-19Set Bullet collision shape index to zero when using a single shapeMarcel Admiraal
or ConcavePolygonShape3D.
2020-10-08Fixed #41040 in an alternative way now that #39726 is revertedAndrea Catania
2020-10-08Revert "Optimized physics object spawn time and optimized shape usage when ↵Andrea Catania
the shape is not scaled" This reverts commit 7709a8349354b469361ec7e1429af0dc8af80b2a.
2020-10-08Revert "- Enhanced the flush mechanism by flushing only needed thing."Andrea Catania
This reverts commit 8d0d6d6921d5dfb398f4ab04e4d3937ab550c4ff.
2020-10-02Updated getters and setters names for toplevelDuroxxigar
2020-08-05Fixes leak when creating bullet shapeRafał Mikrut
2020-07-27Merge pull request #40252 from AndreaCatania/flushRémi Verschelde
Improved Bullet Physics flush algorithm, Lazy collision filter reload, Shape reload regression fix.
2020-07-27- Enhanced the flush mechanism by flushing only needed thing.Andrea Catania
- Flushing Areas before anything else. - Make sure to correctly fetch gravity when the integrate_forces function is used - Lazy reload body when layer and mask changes - Shapes are reloaded just before the physics step starts. - Improved some other parts of the code. - Added override keyword - Using LocalVector
2020-07-18Use difference in position to check whether motion in Bullet is too closeMarcel Admiraal
to zero.
2020-07-08Move Bullet physics query flush from Bullet space pre-tick callback toMarcel Admiraal
Bullet physics flush_queries() as is done in Godot physics, and remove the pre-tick callback.
2020-07-07Merge pull request #39726 from AndreaCatania/add_body_impr_physicsRémi Verschelde
Optimized physics object spawn time
2020-07-07Merge pull request #39735 from AndreaCatania/bullet_phy_add_apiRémi Verschelde
Added BulletPhysics APIs to return internal objects.
2020-06-24Added BulletPhysics APIs to return internal objects and fixed a typo.Andrea Catania
2020-06-24Optimized physics object spawn time and optimized shape usage when the shape ↵Andrea Catania
is not scaled
2020-06-22Merge pull request #39747 from nekomatata/fix-crash-space-queryRémi Verschelde
Fix crashes with invalid shapes in BulletPhysicsDirectSpaceState queries
2020-06-22Fix crashes with invalid shapes in BulletPhysicsDirectSpaceState queriesPouleyKetchoupp
2020-06-21Check for motion in cast_motion() before doing Bullet convexSweepTest().Marcel Admiraal
Also ensure that default closest_safe and closest_unsafe values are defined in cast_motion() and before cast_motion() is called.
2020-05-14Style: Enforce braces around if blocks and loopsRémi Verschelde
Using clang-tidy's `readability-braces-around-statements`. https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2020-05-14Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocksRémi Verschelde
Which means that reduz' beloved style which we all became used to will now be changed automatically to remove the first empty line. This makes us lean closer to 1TBS (the one true brace style) instead of hybridating it with some Allman-inspired spacing. There's still the case of braces around single-statement blocks that needs to be addressed (but clang-format can't help with that, but clang-tidy may if we agree about it). Part of #33027.
2020-05-14Enforce use of bool literals instead of integersRémi Verschelde
Using clang-tidy's `modernize-use-bool-literals`. https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
2020-05-14Port member initialization from constructor to declaration (C++11)Rémi Verschelde
Using `clang-tidy`'s `modernize-use-default-member-init` check and manual review of the changes, and some extra manual changes that `clang-tidy` failed to do. Also went manually through all of `core` to find occurrences that `clang-tidy` couldn't handle, especially all initializations done in a constructor without using initializer lists.
2020-04-27Better damping implementation for Bullet rigid bodiesPouleyKetchoupp
Apply old method for linear & angular damping in Bullet, in order to make it easier to tweak and consistent with Godot Physics.
2020-04-02Replace NULL with nullptrlupoDharkael
2020-03-30doc: Update classref with node renamesRémi Verschelde
A few extra renames for classes which were missed in last week's PRs.
2020-03-27Renaming of servers for coherency.Juan Linietsky
VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
2020-02-26Merge pull request #33690 from Phischermen/area-enhancementRémi Verschelde
Bullet: Fix detection of concave shape in Area
2020-02-24Enabled concave collision detection with Areas in Bullet.Phischermen
2020-02-12ObjectID converted to a structure, fixes many bugs where used incorrectly as ↵Juan Linietsky
32 bits.
2020-02-11Modernized default 3D material, fixes material bugs.Juan Linietsky
2020-02-11Refactored RID/RID_Owner to always use O(1) allocation.Juan Linietsky
* Implements a growing chunked allocator * Removed redudant methods get and getptr, only getornull is supported now.
2020-02-05Remove duplicate WARN_PRINT macro.Marcel Admiraal
2020-02-05Remove duplicate ERR_PRINT macro.Marcel Admiraal
2020-01-11Merge pull request #34225 from madmiraal/fix-34210Rémi Verschelde
Add check for zero length motion at beginning of each sweep test loop in SpaceBullet::test_body_motion
2020-01-01Update copyright statements to 2020Rémi Verschelde
Happy new year to the wonderful Godot community! We're starting a new decade with a well-established, non-profit, free and open source game engine, and tons of further improvements in the pipeline from hundreds of contributors. Godot will keep getting better, and we're looking forward to all the games that the community will keep developing and releasing with it.
2019-12-10Add check for zero length motion at beginning of each sweep test loopMarcel Admiraal
in SpaceBullet::test_body_motion.
2019-12-09Check that motion is not zero before doing a sweep test.Marcel Admiraal
Fixes #25476.
2019-10-08Fixed RigidBody stuttering when changing collision layer/maskPouleyKetchoupp
- Changing collision layer/mask now only updates the broadphase proxy to avoid the velocity to be reset each time (also avoids unnecessary computations) - No rigid body update at all when the collision layer/mask stays the same - Same changes for Area for optimization purpose Fixes #32577
2019-08-12Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in rest of 'modules/'Robin Hübner
2019-08-07Fixed KinematicCollision.get_local_shape() - the local shape id was never ↵PouleyKetchoupp
set during move_and_collide() Fixes #31144
2019-07-23Fix some code found by Coverity Scan and PVS Studioqarmin