Commit Graph

21 Commits

Author SHA1 Message Date
Andrea Catania
8d0d6d6921 - Enhanced the flush mechanism by flushing only needed thing.
- 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-27 08:25:47 +02:00
Andrea Catania
7709a83493 Optimized physics object spawn time and optimized shape usage when the shape is not scaled 2020-06-24 08:54:11 +02:00
Rémi Verschelde
1f6f364a56 Port member initialization from constructor to declaration (C++11)
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-14 10:01:56 +02:00
lupoDharkael
95a1400a2a Replace NULL with nullptr 2020-04-02 13:38:00 +02:00
Rémi Verschelde
a7f49ac9a1 Update copyright statements to 2020
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.
2020-01-01 11:16:22 +01:00
PouleyKetchoupp
655694b394 Fixed RigidBody stuttering when changing collision layer/mask
- 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-10-08 14:40:24 +02:00
Bastiaan Olij
e4dea0595a Add transform support to deal with Bullets centering of shapes 2019-05-07 22:43:10 +10:00
ShyRed
a9d4cde0f5 Allow adding disabled shapes
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-23 18:06:48 +02:00
Rémi Verschelde
b16c309f82 Update copyright statements to 2019
Happy new year to the wonderful Godot community!
2019-01-01 12:58:10 +01:00
Andrea Catania
15305ec91f Optimitzed area overlap checks 2018-10-07 07:14:38 +02:00
Andrea Catania
7d681274f8 Improved code that handles collision shapes, fixes #21945 2018-10-06 16:50:10 +02:00
Rémi Verschelde
277b24dfb7 Make core/ includes absolute, remove subfolders from include path
This allows more consistency in the manner we include core headers,
where previously there would be a mix of absolute, relative and
include path-dependent includes.
2018-09-12 09:52:22 +02:00
Andrea Catania
9b446f1cc3 Optimized in case is used just 1 shape with no transform 2018-09-06 18:19:05 +02:00
AndreaCatania
50c99370d2 Fixed Bullet collision shapes scale 2018-01-08 16:44:33 +01:00
Rémi Verschelde
e4213e66b2 Add missing copyright headers and fix formatting
Using `misc/scripts/fix_headers.py` on all Godot files.
Some missing header guards were added, and the header inclusion order
was fixed in the Bullet module.
2018-01-05 01:22:23 +01:00
Rémi Verschelde
f8b58784bc
Merge pull request #13257 from AndreaCatania/master
Fixed kinematic movement stuck, Changed how shape scale works.
2018-01-04 15:26:23 +01:00
Rémi Verschelde
b50a9114b1 Update copyright statements to 2018
Happy new year to the wonderful Godot community!
2018-01-01 14:40:47 +01:00
AndreaCatania
f4b96cc0a9 Fixed kinematic movement stuck, Changed how shape scale works, Optimized 2017-12-23 18:23:12 +01:00
AndreaCatania
5cfc98cace Fixed bullet get_transform scale 2017-12-08 16:46:41 +01:00
Rémi Verschelde
13c2ff9320 Style: Apply new clang-format 5.0 style to all files 2017-12-07 08:02:00 +01:00
AndreaCatania
fb4871c919 Bullet physics engine implementation
This is a bullet wrapper that allows Godot to use Bullet physics and benefit about all features.
Also it support all specific Godot physics functionality like multi shape body, areas, RayShape, etc..
It improve the Joints, Trimesh shape, and add support to soft body even if Godot is not yet ready to it.
2017-11-04 20:52:59 +01:00