PouleyKetchoupp
da159cd258
Fix 3D moving platform logic
...
Same thing that was already done in 2D, applies moving platform motion
by using a call to move_and_collide that excludes the platform itself,
instead of making it part of the body motion.
Helps with handling walls and slopes correctly when the character walks
on the moving platform.
Also made some minor adjustments to the 2D version and documentation.
Co-authored-by: fabriceci <fabricecipolla@gmail.com>
2021-08-09 18:55:49 -07:00
PouleyKetchoupp
f101349225
Fix applied rotation from moving platforms in move_and_slide
...
When synchronizing KinematicBody motion with moving the platform using
direct body state, only the linear velocity was taken into account.
This change exposes velocity at local point in direct body state and
uses it in move_and_slide to get the proper velocity that includes
rotations.
2021-08-09 12:04:57 -07:00
Rémi Verschelde
b0b2b7df31
Merge pull request #50257 from Calinou/physicsserver3d-add-set-iterations-3.x
...
Add a method to set the number of physics solver iterations in 3D (3.x)
2021-07-14 07:56:57 +02:00
Hugo Locurcio
9259b4adc4
Add a method to set the number of physics solver iterations in 3D
...
This is only for GodotPhysics, and adds a 3D counterpart to the 2D
method that was recently added.
2021-07-10 16:29:41 +02:00
Hugo Locurcio
4a140294fe
Fix typo in Bullet method name: "collisin" -> "collision"
...
This method is not exposed to scripting, so compatibility with
existing projects should be preserved.
2021-07-07 22:07:32 +02:00
Marcel Admiraal
7e03bd1671
Remove duplicate WARN_PRINTS macro
2021-06-18 12:57:59 +01:00
Marcel Admiraal
5a58516231
Remove duplicate ERR_PRINTS macro
2021-06-16 11:56:25 +01:00
Rémi Verschelde
80e1585a6e
Style: Cleanup uses of double spaces between words
...
Or after punctuation. Tried to leave third-party stuff alone, unless it has
been heavily modified for Godot.
(cherry picked from commit c1c76850cb
)
2021-06-07 12:06:59 +02:00
Rémi Verschelde
140350d767
Style: Enforce braces around if blocks and loops
...
Using clang-tidy's `readability-braces-around-statements`.
https://clang.llvm.org/extra/clang-tidy/checks/readability-braces-around-statements.html
2021-05-05 15:02:01 +02:00
Rémi Verschelde
b4af1eba0a
Style: Enforce use of bool literals instead of integers
...
Using clang-tidy's `modernize-use-bool-literals`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-bool-literals.html
2021-05-04 16:39:13 +02:00
Rémi Verschelde
a828398655
Style: Replaces uses of 0/NULL by nullptr (C++11)
...
Using clang-tidy's `modernize-use-nullptr`.
https://clang.llvm.org/extra/clang-tidy/checks/modernize-use-nullptr.html
2021-05-04 16:30:23 +02:00
Rémi Verschelde
b5e1e05ef2
Style: clang-format: Disable KeepEmptyLinesAtTheStartOfBlocks
2021-05-04 14:45:16 +02:00
Rémi Verschelde
64a63e0861
Style: clang-format: Disable AllowShortCaseLabelsOnASingleLine
2021-05-04 14:45:15 +02:00
Rémi Verschelde
3d15f04668
Style: clang-format: Disable AllowShortIfStatementsOnASingleLine
2021-05-04 14:45:15 +02:00
Rémi Verschelde
6e600cb3f0
Style: Set clang-format Standard to c++14
2021-05-04 14:45:15 +02:00
Rémi Verschelde
e94161dada
SCons: Add explicit dependencies on thirdparty code in cloned env
...
Since we clone the environments to build thirdparty code, we don't get an
explicit dependency on the build objects produced by that environment.
So when we update thirdparty code, Godot code using it is not necessarily
rebuilt (I think it is for changed headers, but not for changed .c/.cpp files),
which can lead to an invalid compilation output (linking old Godot .o files
with a newer, potentially ABI breaking version of thirdparty code).
This was only seen as really problematic with bullet updates (leading to
crashes when rebuilding Godot after a bullet update without cleaning .o files),
but it's safer to fix it everywhere, even if it's a LOT of hacky boilerplate.
(cherry picked from commit c7b53c03ae
)
2021-04-29 16:57:00 +02:00
Marcel Admiraal
1e28e234c5
Check for the use of an empty shape in Bullet Kinematic collisions
...
(cherry picked from commit ff9a6c4e39
)
2021-04-06 22:37:35 +02:00
Duddino
aabb8d78ef
Added some checks to prevent accessing a null collider
...
Previously godot would try to access
`CollisionObjectBullet::bt_collision_object` even if it was null.
Fixes #46651
(cherry picked from commit c47070e165
)
2021-03-07 22:51:06 +01:00
Rémi Verschelde
d298949513
Merge pull request #42882 from madmiraal/fix-39767-3.2
...
[3.2] Set Bullet collision shape index to zero when using a single shape or ConcavePolygonShape
2021-01-14 20:46:06 +01:00
Rémi Verschelde
152415a006
Merge pull request #43924 from madmiraal/fix-43588-3.2
...
[3.2] Fix cast_motion sometimes failing
2021-01-14 20:44:40 +01:00
Rémi Verschelde
f93c2ddc92
Merge pull request #45163 from akien-mga/3.2-cherrypicks
...
Cherry-picks for the 3.2 branch (future 3.2.4) - 16th batch
2021-01-13 17:38:05 +01:00
Rémi Verschelde
652105dcdd
Merge pull request #44704 from madmiraal/fix-44510-3.2
...
[3.2] Add signal to inform joint that body has exited tree
2021-01-13 17:16:19 +01:00
Rémi Verschelde
b64fe918aa
Merge pull request #45160 from madmiraal/fix-45145-3.2
...
[3.2] Only remove Bullet's body constraints when removing body from space
2021-01-13 17:16:01 +01:00
Rémi Verschelde
8a8e0ae2eb
Merge pull request #40990 from madmiraal/fix-40739-3.2
...
[3.2] Reload Bullet space override modifier even when RigidBody is inactive.
2021-01-13 16:44:04 +01:00
Rémi Verschelde
49646383f1
Update copyright statements to 2021
...
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 🎆
(cherry picked from commit b5334d14f7
)
2021-01-13 16:17:06 +01:00
Marcel Admiraal
47657cd140
Only remove Bullet's body constraints when removing body from space
2021-01-13 13:45:40 +00:00
Marcel Admiraal
6b3bab6e54
Add signal to inform joint that body has exited tree
2020-12-31 14:51:07 +00:00
Rémi Verschelde
344a02834b
Merge pull request #43899 from madmiraal/fix-43852-3.2
...
[3.2] Remove any constraints connected to a Bullet body when removing it
2020-12-19 09:31:04 +01:00
Marcel Admiraal
825ad65fc4
Remove Generic6DOFJoint precision property
2020-12-15 10:15:42 +00:00
Marcel Admiraal
2e99b5b137
Fix cast_motion sometimes failing
...
- 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-27 15:32:25 +00:00
Marcel Admiraal
4bfcaeff5a
Remove any constraints connected to a Bullet body when removing it
2020-11-26 18:16:47 +00:00
Rémi Verschelde
fc5b106369
Merge pull request #42168 from madmiraal/fix-42108-3.2
...
[3.2] Remove the unnecessary sync() and the restrictions it imposes on 3D Physics.
2020-11-16 09:33:17 +01:00
Marcel Admiraal
b7d00a364e
Set Bullet collision shape index to zero when using a single shape
...
or ConcavePolygonShape.
2020-10-19 11:50:29 +01:00
Marcel Admiraal
d9d9be07c2
Check entire basis column for zero size when unscaling Bullet basis.
...
(cherry picked from commit 5278e07095
)
2020-10-04 20:52:38 +02:00
Marcel Admiraal
a9b5dc56a6
Check and correct for zero scaling when unscaling Bullet basis.
...
(cherry picked from commit 4b14916288
)
2020-09-24 14:43:06 +02:00
Marcel Admiraal
fc72c3fdf5
Remove the unnecessary sync() and the restrictions it imposes on 3D Physics.
2020-09-18 10:42:59 +01:00
Marcel Admiraal
edc4820430
Fix RigidBodyBullet areasWhereIam element shift.
2020-09-14 18:26:19 +01:00
Rafał Mikrut
808615ec3e
Fixes leak when creating bullet shape
2020-08-05 10:08:05 +02:00
Marcel Admiraal
c1290280ac
Reload Bullet space override modifier even when RigidBody is inactive.
2020-08-03 11:26:44 +01:00
Rémi Verschelde
10544f1cf7
Revert "Move Bullet physics query flush from Bullet space pre-tick callback to"
...
This reverts commit e7d8464f87
.
Fixes #40508 regression.
This will be re-applied and the regression fixed for a future 3.2.x release.
2020-07-28 11:42:04 +02:00
Marcel Admiraal
5692bb4c81
Ensure Bullet HeightMapShape3D data width and depth are at least 2.
...
(cherry picked from commit 236857c92a
)
2020-07-28 00:42:32 +02:00
Rémi Verschelde
400a780050
Revert "Allow Area2D and 3D mouse events without a collision layer"
...
This reverts commit 15850687a8
.
2020-07-27 22:46:04 +02:00
Marcel Admiraal
98aabe111f
Use difference in position to check whether motion in Bullet is too close
...
to zero.
2020-07-18 13:20:19 +01:00
volzhs
cfda32add0
Fix overlappingObjects vector crash
...
use clear_overlaps() instead of clearing overlappingObjects directly
(cherry picked from commit 4e987f5ab9
)
2020-07-15 12:11:31 +02:00
Rémi Verschelde
717d4cbb73
Merge pull request #40309 from madmiraal/fix-40283-3.2
...
[3.2] Set isScratchedSpaceOverrideModificator to false when removing a RigidBodyBullet from a space.
2020-07-13 18:00:12 +02:00
Marcel Admiraal
a3246a5ebe
Set isScratchedSpaceOverrideModificator to false when removing a
...
RigidBodyBullet from a space.
2020-07-12 07:53:32 +01:00
Tomasz Chabora
15850687a8
Allow Area2D and 3D mouse events without a collision layer
...
Co-authored-by: Tomasz Chabora <kobewi4e@gmail.com>
2020-07-11 11:14:12 +01:00
Marcel Admiraal
e7d8464f87
Move Bullet physics query flush from Bullet space pre-tick callback to
...
Bullet physics flush_queries() as is done in Godot physics, and remove
the pre-tick callback.
2020-07-08 11:42:29 +01:00
Marcel Admiraal
d0fb6d6971
Clear a Bullet Area's overlappingObjects vector when removing an area
...
from a space.
(cherry picked from commit a615d359e8
)
2020-07-06 19:17:11 +02:00
Rémi Verschelde
44a516986d
Merge pull request #39084 from madmiraal/backport-37314
...
[3.2] Better damping implementation for Bullet rigid bodies
2020-07-02 13:26:03 +02:00