summaryrefslogtreecommitdiff
path: root/modules/bullet
AgeCommit message (Collapse)Author
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-07-06Clear a Bullet Area's overlappingObjects vector when removing an areaMarcel Admiraal
from a space.
2020-07-02Merge pull request #37350 from aaronfranke/force-impulseRémi Verschelde
Refactor physics force and impulse code to use (force, position) order
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-21Merge pull request #34236 from madmiraal/enable-bullet-debugRémi Verschelde
Enable Bullet DEBUG on debug builds.
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-06-02Refactor physics force and impulse codeAaron Franke
2020-05-29Merge pull request #39085 from madmiraal/fix-39059Rémi Verschelde
Correct Bullet's default Area angular damp value.
2020-05-27Split `Geometry` singleton into `Geometry2D` and `Geometry3D`Andrii Doroshenko (Xrayez)
Extra `_2d` suffixes are removed from 2D methods accoringly.
2020-05-27Correct Bullet's default Area angular damp value.Marcel Admiraal
2020-05-19Style: Fix unnecessary semicolons that confused clang-formatRémi Verschelde
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: Enforce separation line between function definitionsRémi Verschelde
I couldn't find a tool that enforces it, so I went the manual route: ``` find -name "thirdparty" -prune \ -o -name "*.cpp" -o -name "*.h" -o -name "*.m" -o -name "*.mm" \ -o -name "*.glsl" > files perl -0777 -pi -e 's/\n}\n([^#])/\n}\n\n\1/g' $(cat files) misc/scripts/fix_style.sh -c ``` This adds a newline after all `}` on the first column, unless they are followed by `#` (typically `#endif`). This leads to having lots of places with two lines between function/class definitions, but clang-format then fixes it as we enforce max one line of separation. This doesn't fix potential occurrences of function definitions which are indented (e.g. for a helper class defined in a .cpp), but it's better than nothing. Also can't be made to run easily on CI/hooks so we'll have to be careful with new code. Part of #33027.
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-05-10Revert "Renamed plane's d to distance"Rémi Verschelde
This reverts commit ec7b481170dcd6a7b4cf0e6c1221e204ff7945f3. This was wrong, `d` is not a distance but the `d` constant in the parametric equation `ax + by + cz = d` describing the plane.
2020-05-10Style: clang-format: Disable AllowShortCaseLabelsOnASingleLineRémi Verschelde
Part of #33027.
2020-05-10Style: clang-format: Disable AllowShortIfStatementsOnASingleLineRémi Verschelde
Part of #33027, also discussed in #29848. Enforcing the use of brackets even on single line statements would be preferred, but `clang-format` doesn't have this functionality yet.
2020-05-10Renamed plane's d to distanceMarcus Elg
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-27Update to bullet master (2.90)PouleyKetchoupp
2020-04-20DocData: Skip unexposed classesRémi Verschelde
Properly expose classes that we actually want accessible.
2020-04-14Fix set_sleep_state in Bullet body direct statePouleyKetchoupp
It was inverted, it should set the body to be active when sleep is disabled.
2020-04-02Replace NULL with nullptrlupoDharkael
2020-04-02Merge pull request #37504 from qarmin/out_of_bound_cursorRémi Verschelde
Fix array out of bounds access caused by uninitialised variables
2020-04-01Enable Bullet DEBUG on debug builds.Marcel Admiraal
2020-04-01Fix out of bound array access caused by unassigned variableRafał Mikrut
2020-03-30Merge pull request #37436 from akien-mga/doc-node-renamesRémi Verschelde
doc: Update classref with node renames
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-30SCons: Format buildsystem files with psf/blackRémi Verschelde
Configured for a max line length of 120 characters. psf/black is very opinionated and purposely doesn't leave much room for configuration. The output is mostly OK so that should be fine for us, but some things worth noting: - Manually wrapped strings will be reflowed, so by using a line length of 120 for the sake of preserving readability for our long command calls, it also means that some manually wrapped strings are back on the same line and should be manually merged again. - Code generators using string concatenation extensively look awful, since black puts each operand on a single line. We need to refactor these generators to use more pythonic string formatting, for which many options are available (`%`, `format` or f-strings). - CI checks and a pre-commit hook will be added to ensure that future buildsystem changes are well-formatted.
2020-03-27Renaming of servers for coherency.Juan Linietsky
VisualServer -> RenderingServer PhysicsServer -> PhysicsServer3D Physics2DServer -> PhysicsServer2D NavigationServer -> NavigationServer3D Navigation2DServer -> NavigationServer2D Also renamed corresponding files.
2020-03-27Renamed 2D and 3D nodes to make their types explicitJuan Linietsky
Fixes #30736.
2020-03-17Style: Set clang-format Standard to Cpp11Rémi Verschelde
For us, it practically only changes the fact that `A<A<int>>` is now used instead of the C++03 compatible `A<A<int> >`. Note: clang-format 10+ changed the `Standard` arguments to fully specified `c++11`, `c++14`, etc. versions, but we can't use `c++17` now if we want to preserve compatibility with clang-format 8 and 9. `Cpp11` is still supported as deprecated alias for `Latest`.
2020-03-09change an exclamation mark to a dotPierre Caye
2020-02-26Merge pull request #33690 from Phischermen/area-enhancementRémi Verschelde
Bullet: Fix detection of concave shape in Area
2020-02-25Variant: Added 64-bit packed arrays, renamed Variant::REAL to FLOAT.Juan Linietsky
- Renames PackedIntArray to PackedInt32Array. - Renames PackedFloatArray to PackedFloat32Array. - Adds PackedInt64Array and PackedFloat64Array. - Renames Variant::REAL to Variant::FLOAT for consistency. Packed arrays are for storing large amount of data and creating stuff like meshes, buffers. textures, etc. Forcing them to be 64 is a huge waste of memory. That said, many users requested the ability to have 64 bits packed arrays for their games, so this is just an optional added type. For Variant, the float datatype is always 64 bits, and exposed as `float`. We still have `real_t` which is the datatype that can change from 32 to 64 bits depending on a compile flag (not entirely working right now, but that's the idea). It affects math related datatypes and code only. Neither Variant nor PackedArray make use of real_t, which is only intended for math precision, so the term is removed from there to keep only float.
2020-02-24Enabled concave collision detection with Areas in Bullet.Phischermen
2020-02-23Changed default capsule axis to verticalYuri Roubinsky
Co-authored-by: Hugo Locurcio <https://hugo.pro>
2020-02-20Reworked signal connection system, added support for Callable and Signal ↵Juan Linietsky
objects and made them default.
2020-02-18PoolVector is gone, replaced by VectorJuan Linietsky
Typed `PoolTypeArray` types are now renamed `PackedTypeArray` and are sugar for `Vector<Type>`.
2020-02-13Remove more deprecated methods and codeRémi Verschelde
2020-02-12ObjectID converted to a structure, fixes many bugs where used incorrectly as ↵Juan Linietsky
32 bits.
2020-02-11Fix code formatting issues and VS compilationRémi Verschelde
Also temporarily disable multicheck build so that we get a full build even when there are style issues on Vulkan. Fixes #33356.
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.