summaryrefslogtreecommitdiff
path: root/servers/physics
AgeCommit message (Collapse)Author
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-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-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-01-16Merge pull request #33615 from raphael10241024/fix_shape_changeRémi Verschelde
refresh area2d collision when shape changes
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-10Removed unused variables, add some constants numbersRafał Mikrut
2019-11-14refresh area2d collision when shape changes, close #33369RaphaelHunter
2019-10-15Activate Body(2D)SW when switching to rigid or character mode.Marcel Admiraal
2019-10-12Fix mismatch between RigidBody(2D) and Body(2D)SW can_sleep defaults.Marcel Admiraal
- Set Body2DSW can_sleep default to true. - Set Body2D can_sleep default to true.
2019-09-25Added some obvious errors explanationsqarmin
2019-08-22Fix custom inertia in physics2d, closes#30838RaphaelHunter
2019-08-12Remove redundant author doc commentsIAmActuallyCthulhu
2019-08-09Replace 'ERR_EXPLAIN' with 'ERR_FAIL_*_MSG' in "main" and "servers" directoriesMichael Alexsander Silva Dias
2019-08-07Add some code changes/fixes proposed by Coverity and Clang Tidyqarmin
2019-07-31Reverted fix that makes sense for collision_solver_2d_sat but not for the 3d ↵PouleyKetchoupp
version (original commit: aab8da25ad2c3e6d2df03abbc8e35c1725938c40) Fixes #30886
2019-07-23Fix some code found by Coverity Scan and PVS Studioqarmin
2019-07-20Changed some code showed in LGTM and Coverageqarmin
2019-07-06Added release function to PoolVector::Access.Ibrahn Sahir
For clarity, assign-to-release idiom for PoolVector::Read/Write replaced with a function call. Existing uses replaced (or removed if already handled by scope)
2019-07-01Merge pull request #29951 from raphael10241024/add_physics_2d_optimizeRémi Verschelde
add 2d physic optimization similar to 3d physics
2019-06-26Some code changed with Clang-Tidyqarmin
2019-06-21add 2d physic optimization simlilar to 3d physicsyakun.zhang
2019-06-20Merge pull request #29283 from qarmin/fix_some_always_same_valuesRémi Verschelde
Remove always true/false values
2019-06-20Fix always true/false valuesqarmin
2019-06-19Merge pull request #27310 from KoBeWi/angular_dankRémi Verschelde
Make angular_damp of new Area nodes match the global default
2019-05-09Change "ID" to lowercase "id"Aaron Franke
Reasoning: ID is not an acronym, it is simply short for identification, so it logically should not be capitalized. But even if it was an acronym, other acronyms in Godot are not capitalized, like p_rid, p_ip, and p_json.
2019-05-02Merge pull request #27415 from aqnuep/kinematicbody_fixesRémi Verschelde
KinematicBody performance and quality improvements
2019-04-30Merge pull request #27371 from ShyRed/fixdisabled2dcollisionsRémi Verschelde
Allow adding disabled shapes
2019-04-25Use approximate equallity methods in many placesAaron Franke
2019-04-23Allow adding disabled shapesShyRed
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.
2019-04-22Merge pull request #27673 from qarmin/small_fixesRémi Verschelde
Small fixes, mostly duplicated code
2019-04-09Style: Apply new changes from clang-format 8.0Rémi Verschelde
It seems to stay compatible with formatting done by clang-format 6.0 and 7.0, so contributors can keep using those versions for now (they will not undo those changes).
2019-04-08Small fixes, mostly dupicated codeqarmin
2019-04-01Make angular_damp of new Area nodes match the global defaultTomasz Chabora
2019-03-27KinematicBody performance and quality improvementsDaniel Rakos
With this change finally one can use compound collisions (like those created by Gridmaps) without serious performance issues. The previous KinematicBody code for Bullet was practically doing a whole bunch of unnecessary calculations. Gridmaps with fairly large octant sizes (in my case 32) can get up to 10000x speedup with this change (literally!). I expect the FPS demo to get a fair speedup as well. List of fixes and improvements: - Fixed a general bug in move_and_slide that affects both GodotPhysics and Bullet, where ray shapes would be ignored unless the stop_on_slope parameter is disabled. Not sure where that came from, but looking at the 2D physics code it was obvious there's a difference. - Enabled the dynamic AABB tree that Bullet uses to allow broadphase collision tests against individual shapes of compound shapes. This is crucial to get good performance with Gridmaps and in general improves the performance whenever a KinematicBody collides with compound collision shapes. - Added code to the broadphase collision detection code used by the Bullet module for KinematicBodies to also do broadphase on the sub-shapes of compound collision shapes. This is possible thanks to the dynamic AABB tree that was previously disabled and it's the change that provides the biggest performance boost. - Now broadphase test is only done once per KinematicBody in Bullet instead of once per each of its shapes which was completely unnecessary. - Fixed the way how the ray separation results are populated in Bullet which was completely broken previously, overwriting previous results and similar non-sense. - Fixed ray shapes for good now. Previously the margin set in the editor was not respected at all, and the KinematicBody code for ray separation was complete bogus, thus all previous attempts to fix it were mislead. - Fixed an obvious bug also in GodotPhysics where an out-of-bounds index was used in the ray result array. There are a whole set of other problems with the KinematicBody code of Bullet which cost performance and may cause unexpected behavior, but those are not addressed in this change (need to keep it "simple"). Not sure whether this fixes any outstanding Github issues but I wouldn't be surprised.
2019-03-02Make query checks less agressive, fixes #24694Juan Linietsky
2019-02-21Fix warnings seen with -Wignored-qualifiers.marxin
2019-02-20Add -Wshadow=local to warnings and fix reported issues.marxin
Fixes #25316.
2019-02-16Support multiple ray shapes in kinematicbody, fixes #25050Juan Linietsky
2019-02-16Add a minimum treshold for acquiring rest contacts to avoid numerical ↵Juan Linietsky
precision issues. Fixes #25074
2019-02-16Allow kinematic bodies without shapes to still move, fixes #24775Juan Linietsky
2019-02-13Fix typos with codespellRémi Verschelde
Using codespell 1.14.0. Method: ``` $ cat > ../godot-word-whitelist.txt << EOF ang doubleclick lod nd numer que te unselect EOF $ codespell -w -q 3 -I ../godot-word-whitelist.txt --skip="./thirdparty,*.po" $ git diff // undo unwanted changes ```
2019-02-12Core: Ensure classes match their header filenameRémi Verschelde
Also drop some unused files. Renamed: - `core/dvector.h` -> `pool_vector.h` - `core/io/resource_import.h` -> `resource_importer.h` - `core/sort.h` -> `sort_array.h` - `core/string_db.h` -> `string_name.h` Dropped: - `core/allocators.h` - `core/os/shell.h` - `core/variant_construct_string.cpp`
2019-02-09[Core] Rename Matrix3 file to BasisAaron Franke
The code already referred to "Basis", it's just the file name that was different for some reason.
2019-01-01Update copyright statements to 2019Rémi Verschelde
Happy new year to the wonderful Godot community!
2018-12-12Disabled CollisionShape and CollisionShape2D are not processed nowStanislav
Fixes #24183
2018-11-27Added function to control 6DOF precisionAndrea Catania
2018-11-17Merge pull request #23668 from sdfgeoff/fix_angular_constraintsRémi Verschelde
Exposing more of bullets 6DOF spring constraints
2018-11-16-Make sure monitorable cant be flipped while flushing queries, fixes #17330Juan Linietsky
-Also added set_deferred, this was missing.