Juan Linietsky
fc50728d45
Merge pull request #21808 from AndreaCatania/optitri
...
Optimized bullet trimesh collision
2018-09-07 15:09:26 -03:00
Andrea Catania
6142448417
Update bullet to Master 12409f1118a7c7a266f9071350c70789dfe73bb9
2018-09-07 16:11:04 +02:00
Andrea Catania
88967e4001
Fixing trimesh precision
2018-09-06 18:53:03 +02:00
Andrea Catania
9b446f1cc3
Optimized in case is used just 1 shape with no transform
2018-09-06 18:19:05 +02:00
Andrea Catania
ce138d3449
Fixed bullet area vs Trimesh shape overlap
2018-09-05 13:43:02 +02:00
Andrea Catania
9a67a07a2c
Fixed crash if convex has 0 vertices
2018-08-29 17:34:26 +02:00
Ibrahn Sahir
2a823a38ac
Initialise rays_found count in test_ray_separation.
...
Prevents branch on uninit that could result in crashes with
move_and_slide.
2018-08-29 13:23:14 +01:00
Rémi Verschelde
ddfef86836
Fix build after c2a9cb34
...
`return` statements were missing, and those warnings do not need to be
behind #ifdefs, they do not expose any deprecated API.
2018-08-27 10:10:40 +02:00
Andrea Catania
64b5eaf43c
Correctly set safe_motion on cast_motion query Fixes : #21212
2018-08-26 12:09:52 +02:00
Andrea Catania
c2a9cb343b
Added deprecated to joints un/used parameters
2018-08-26 09:10:30 +02:00
Rémi Verschelde
77185aaf21
Merge pull request #21049 from AndreaCatania/joints
...
Improved 6DOF joint implementation
2018-08-24 17:10:54 +02:00
Rémi Verschelde
52466d57e9
Make some debug prints verbose-only, remove others
2018-08-24 14:59:01 +02:00
Andrea Catania
0b98834b77
Added ray / shape / point / motion / rest cast exclusion of area and or body
2018-08-21 18:51:08 +02:00
Rémi Verschelde
912131fe03
Merge pull request #20101 from panzergame/shape_margin
...
Expose bullet shape margin to UI.
2018-08-21 16:17:11 +02:00
Juan Linietsky
d88d0d457d
Fixes to move and slide and ray separation, implement separation in Godot physics
2018-08-20 17:31:55 -03:00
Juan Linietsky
1b66b08fdb
Merge pull request #20908 from AndreaCatania/kiSlope
...
Improved move_and_slide function stay on slope
2018-08-20 13:24:28 -03:00
John Teasdale
7323f7998b
Bullet picking will now ignore objects without input_ray_pickable
2018-08-19 13:14:12 -07:00
Andrea Catania
0010d9c82a
Added ray shape and move_and_slide with snapping on 3D.
...
Added stop_on_slope on 2d part
2018-08-19 13:45:23 +02:00
Andrea Catania
9826456f2e
Improved move_and_slide function to stay on slope and fall on steep slope
2018-08-18 15:11:51 +02:00
Tristan Porteries
e5bfa98d0f
Expose bullet shape margin to UI.
...
The margin value is exposed into the UI for shape ressource.
This value can be modified through set_margin and get from get_margin
or by using the property margin. Each time the margin is modified
the associated collision shape is recreated and the margin value is
used in ShapeBullet::prepare.
2018-08-16 16:58:15 +02:00
Andrea Catania
a12e3bab23
Improved 6DOF joint implementation, and removed useless function from cone joint
2018-08-15 18:14:32 +02:00
Juan Linietsky
14fd797c53
Merge pull request #20381 from AndreaCatania/phymat_2
...
Improved Physics material
2018-08-07 15:31:26 -03:00
Andrea Catania
5e65e28eed
Removed physics material combination mode. Added rough and absorbent parameter to material. Fixed 'change' signal connection
2018-08-07 19:38:04 +02:00
Marc Gilleron
6cf4f62f2b
Allow to create a heightmap collision shape from an image
2018-08-05 19:43:47 +01:00
Andrea Catania
b469267d94
Fixed SoftBody pinned point offset calculation
2018-08-03 17:44:09 +02:00
Rémi Verschelde
ef93fec789
Merge pull request #15643 from organicpencil/bullet_contact_impulse
...
Expose PhysicsDirectBodyState.get_contact_impulse
2018-07-26 15:36:37 +02:00
Hein-Pieter van Braam
0e29f7974b
Reduce unnecessary COW on Vector by make writing explicit
...
This commit makes operator[] on Vector const and adds a write proxy to it. From
now on writes to Vectors need to happen through the .write proxy. So for
instance:
Vector<int> vec;
vec.push_back(10);
std::cout << vec[0] << std::endl;
vec.write[0] = 20;
Failing to use the .write proxy will cause a compilation error.
In addition COWable datatypes can now embed a CowData pointer to their data.
This means that String, CharString, and VMap no longer use or derive from
Vector.
_ALWAYS_INLINE_ and _FORCE_INLINE_ are now equivalent for debug and non-debug
builds. This is a lot faster for Vector in the editor and while running tests.
The reason why this difference used to exist is because force-inlined methods
used to give a bad debugging experience. After extensive testing with modern
compilers this is no longer the case.
2018-07-26 00:54:16 +02:00
Tiger Caldwell
40c7716586
Modified RigidBody, PhysicsDirectBodyState, PhysicsServer, and their respective 2D counterparts to be more consistent and to include more useful methods.
...
RigidBody:
- Added add_central_force
- Added add_force
- Added add_torque
- Added apply_central_impulse
RigidBody2D:
- Added add_central_force
- Added add_torque
- Added apply_central_impulse
- Added apply_torque_impulse
PhysicsDirectBodyState:
- Added apply_central_impulse
Physics2DDirectBodyState:
- Added add_central_force
- Added add_force
- Added add_torque
- Added apply_central_impulse
- Added apply_impulse
- Added apply_torque_impulse
PhysicsServer:
- Added body_add_force
- Added body_add_torque
- Added body_add_central_force
- Added body_apply_central_impulse
Physics2DServer:
- Added body_add_torque
- Added body_add_central_force
- Added body_apply_central_impulse
- Added body_apply_torque_impulse
Also fixed some small bugs along the way
2018-07-24 05:00:56 -04:00
AndreaCatania
17ebbfb56d
Implemented Soft body
...
- Soft Body Physics node
- Soft Body Rendering
- Soft body Editor
- Soft body importer
2018-07-23 20:50:23 +02:00
Juan Linietsky
1ad20dc2f1
Merge pull request #12403 from AndreaCatania/phymat
...
Physics material
2018-07-23 07:37:03 -03:00
Juan Linietsky
2b9902db06
-Fix disable_3d flag
...
-Add extra flag optimize=[size,speed] to be able to prioritize size
2018-07-21 17:26:49 -03:00
muiroc
0a36e974da
added cylinder shape support
2018-07-01 11:16:54 +02:00
Rémi Verschelde
3334209a73
SCons: Pass env to modules can_build method
...
This allows to disable modules based on the environment,
in particular `env[tools]` which tells us if we are
building the editor or not.
2018-05-30 19:11:36 +02:00
Andrea Catania
97a1011ba1
Improved kinematic test_body_motion code
2018-05-27 14:55:52 +02:00
AndreaCatania
5f66734d2d
Implemented physics material
...
Hidden a function
Fixed travis static check
2018-05-11 03:23:09 +02:00
Rémi Verschelde
de9683b605
Merge pull request #17559 from simedis/joint_motors
...
Implemented interface for bullet linear motors
2018-05-08 10:23:41 +02:00
AndreaCatania
9e57a07fb6
Implemented ragdoll
...
Implementing ragdoll
Implementing ragdoll
Implementing ragdoll
Implementing ragdoll
Implementing ragdoll
a
Implemented implicit hierarchy.
Improved
Added some physics properties
Added bone offset to preserve COM, partially fixed scaling
work in progress
WIP
wip
Implemented Joint Gizmos
Implemented pin joint joint
Implemented all joints
2018-05-07 21:03:16 +02:00
Rémi Verschelde
3018132244
Merge pull request #18204 from tagcup/quat_scale
...
Avoid converting Quat to Euler angles when not necessary.
2018-04-18 13:55:35 +02:00
tagcup
a5e0bb447c
Avoid converting Quat to Euler angles when not necessary.
...
Also ensure that get_scale doesn't arbitrarlity change the signs of scales, ensuring that the combination of get_rotation and get_scale gives the correct basis.
Added various missing functions and constructors.
Should close #17968 .
2018-04-14 15:53:25 -04:00
Andrea Catania
2cfa861222
Removed useless check
2018-04-12 11:37:36 +02:00
Andrea Catania
df2a626b49
Fixed wrong function call
2018-04-12 11:02:43 +02:00
Andrea Catania
f0abdf06ad
Rigidbody wake up when hitten by a kinematic body
2018-04-12 07:59:12 +02:00
Andrea Catania
45b778c7f8
Fixed area overlap cleaning
2018-04-09 09:33:29 +02:00
Rémi Verschelde
bdfa10fc8f
Merge pull request #17899 from AndreaCatania/area_cleaning
...
Fixed physics server area cleaning
2018-04-06 08:15:22 +02:00
Andrea Catania
776942981b
Fixed physics server area cleaning
2018-04-06 07:48:30 +02:00
Rémi Verschelde
e1b9c98032
Merge pull request #17806 from Zylann/fix_heightmap_shape_size_check
...
Make heightmap shape usable in PhysicsServer
2018-04-05 13:29:57 +02:00
Andrea Catania
444b8471a3
Corrected physics query max result checking
2018-04-04 11:55:58 +02:00
Rémi Verschelde
e1fef9bd76
Merge pull request #17959 from AndreaCatania/kinfix2
...
Fixed kinematic sliding on trimesh
2018-04-04 11:21:49 +02:00
Andrea Catania
b050525072
Fixed kinematic sliding on trimesh
2018-04-04 10:49:10 +02:00
Rémi Verschelde
a7dd698d4d
Merge pull request #17900 from AndreaCatania/area_mon
...
physics area added monitorable check
2018-04-03 22:09:56 +02:00
Alexander Alekseev
b569251110
Fix of a possible memory leak: ConcavePolygonShapeBullet::setup was able to exit without releasing the 'shapeInterface' pointer.
2018-04-02 09:29:34 +03:00
Andrea Catania
fe768f4f00
physics area added monitorable check
2018-04-01 11:27:18 +02:00
Marc Gilleron
a66e1af168
Make heightmap shape usable from PhysicsServer
...
- Fixed bad size check
- Fixed bad member initialization
- Removed unused cell_size (Bullet expects us to use localScaling)
- Accept precomputed min/max height, will be calculated if not provided
2018-03-28 20:33:51 +02:00
Geoffrey
09c887f38e
Implemented interface for bullet joint motors
2018-03-16 13:37:15 +01:00
Wilson E. Alvarez
e5ae9750ed
Fixed leak in BulletPhysicsServer
2018-03-13 15:24:30 -04:00
Rémi Verschelde
3fa77b3172
doc: Remove status from hardcoded version string
...
It has no practical use case and just generates noise for each alpha, beta, etc.
2018-02-27 13:40:49 +01:00
Rémi Verschelde
4b9ab27dea
Merge pull request #17021 from AndreaCatania/kinfix
...
Fixed bullet kinematic char sliding
2018-02-27 11:40:11 +01:00
Andrea Catania
e1e78a51aa
Implemented Bullet method omit forces
2018-02-27 08:41:17 +01:00
Andrea Catania
0e446f8aff
Fixed kinematic char sliding
2018-02-25 21:05:14 +01:00
luz.paz
612ab4bbc6
Fix typos with codespell
...
Found via `codespell -q 3 --skip="./thirdparty,./editor/translations" -I ../godot-word-whitelist.txt`
Whitelist consists of:
```
ang
doubleclick
lod
nd
que
te
unselect
```
2018-02-21 19:46:06 +01:00
Rémi Verschelde
497a4e9e25
Merge pull request #16757 from AndreaCatania/kinpush
...
Improved kinematic body, Now can move rigid body
2018-02-20 15:41:10 +01:00
Andrea Catania
6ed392f47a
Improved kinematic body 2D and 3D, Now can move rigid body
2018-02-20 12:43:47 +01:00
Rémi Verschelde
b2aeb02e7d
Merge pull request #16530 from AndreaCatania/rays
...
Improved ray shape (2D and 3D) by addiing the possibility to act as r…
2018-02-19 22:15:49 +01:00
Andrea Catania
ffc3ef8677
Improved ray shape (2D and 3D) by addiing the possibility to act as regular shape
2018-02-19 20:59:57 +01:00
Rémi Verschelde
be67f2e4ba
Merge pull request #16751 from AndreaCatania/moreAPIs
...
Added Physics state APIs
2018-02-19 20:22:18 +01:00
Rémi Verschelde
3c7a39b40c
doc: Update version string in header
2018-02-19 10:46:33 +01:00
Andrea Catania
a930797c31
Added Physics state APIs
2018-02-16 17:48:07 +01:00
Rémi Verschelde
2a754be71a
Merge pull request #16681 from AndreaCatania/kin_t
...
Added return true o collide when no rusult is NULL
2018-02-14 08:28:19 +01:00
Andrea Catania
f48845428d
Added return true o collide when no rusult is NULL
2018-02-14 08:18:48 +01:00
Rémi Verschelde
232e03e5e3
Merge pull request #16547 from Dar13/kinematic_gravity_fix
...
Fixes gravity calculation for kinematic bodies in Bullet
2018-02-14 08:14:38 +01:00
Neil Moore
5fb8a6a6c2
Fixes gravity calculation for kinematic bodies in Bullet
2018-02-13 19:14:10 -05:00
Andrea Catania
a42765dada
Added physics API in order to enable/disable collisions between rigidbody attached to a joint with bullet physics bullet
...
Fixes #16424
2018-02-05 18:54:07 +01:00
Paolo Perkovic
08d4bfacaf
Fix inconsistencies and typos in argument names
2018-02-01 16:47:20 +01:00
Rémi Verschelde
d516aab8fa
doc: Sync with current source
...
Also enhance RigidBody docs as per https://github.com/godotengine/godot-docs/pull/1018
and fix the version tag in all files (not really stable yet, but it makes no sense
to hardcode rc3 at this stage).
2018-01-25 08:50:56 +01:00
Andrea Catania
b1d35f62dd
Improved stabilization of ray shape in Bullet
2018-01-24 16:00:52 +01:00
Mariano Suligoy
d090856560
attemp to fix #15743
2018-01-21 14:23:30 -03:00
Rémi Verschelde
9f479f096c
Fix typos in code and docs with codespell
...
Using v1.11.0 from https://github.com/lucasdemarchi/codespell
2018-01-18 22:01:42 +01:00
AndreaCatania
ecfe932eb8
Fixed bullet physics body shape scaling
2018-01-16 12:53:01 +01:00
Rémi Verschelde
e141845bfb
SCons: Allow unbundling bullet on Linux (only 2.87+)
2018-01-13 15:16:22 +01:00
Rémi Verschelde
e12c89e8c9
bullet: Streamline bundling, remove extraneous src/ folder
...
Document version and how to extract sources in thirdparty/README.md.
Drop unnecessary CMake and Premake files.
Simplify SCsub, drop unused one.
2018-01-13 14:08:45 +01:00
Rémi Verschelde
e28cdc4654
doc: Update version string in XML
2018-01-13 11:43:42 +01:00
Lee Pugh
ac26bf0fb4
Expose PhysicsDirectBodyState.get_contact_impulse
2018-01-12 15:27:45 -06:00
AndreaCatania
c507a4988d
Removed useless error print on bullet shapes
2018-01-08 16:49:04 +01: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
firefly2442
ac2b084fdc
fix typo in switch statement
2017-12-30 21:49:04 -07:00
AndreaCatania
f4b96cc0a9
Fixed kinematic movement stuck, Changed how shape scale works, Optimized
2017-12-23 18:23:12 +01:00
AndreaCatania
0f5c87bfa4
Fixed dispatch callback
2017-12-23 12:36:51 +01:00
AndreaCatania
aea1b2e6c3
Fixed rigidbody sleping, Fixes #13952
2017-12-23 05:13:39 +01:00
AndreaCatania
512c60f1d8
Fixed intersect_shape crash, closes #13697
2017-12-23 00:04:53 +01:00
Andreas Haas
0e624234da
Scons: Build modules in seperate env.
2017-12-13 15:46:35 +01:00
Rémi Verschelde
dfb3634c34
Merge pull request #13836 from AndreaCatania/scale
...
Fixed bullet scale on get_transform and joints
2017-12-11 10:35:09 +01:00
Rémi Verschelde
5cfafaf09e
Merge pull request #14516 from AndreaCatania/patch-2
...
Implemented physics linear and angular lock
2017-12-11 00:13:06 +01:00
AndreaCatania
5dee44bbc1
Implemented physics linear and angular lock
2017-12-10 17:21:14 +01:00
AndreaCatania
785173e899
Ray cast return shape id. Fixes #14473
2017-12-10 12:20:36 +01:00
AndreaCatania
b546cd50a3
Changed how 6DOF limits works
2017-12-09 19:53:08 +01:00
Rémi Verschelde
25b36f18d3
Merge pull request #12756 from Stratos695/master
...
Allowing double-axis lock in RigidBody & KinematicBody (Fixes #12500 )
2017-12-09 13:01:41 +01:00
AndreaCatania
32408f3bfd
Fixed joint scale
2017-12-09 01:22:36 +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
Andrea Catania
2336927043
Fixed bullet server null pointer check
...
Fixed bullet server null pointer check
2017-11-30 20:38:57 +01:00
Rémi Verschelde
bc75fae579
doc: Update header version for 3.0-beta
2017-11-24 09:16:52 +01:00
AndreaCatania
0a0800ebec
Removed shape margin
2017-11-23 14:42:28 +01:00
Rémi Verschelde
3fffe6ccb4
Merge pull request #13202 from AndreaCatania/master
...
Space override scratching when body is add to world
2017-11-23 09:30:27 +01:00
AndreaCatania
8de4df3fe2
Space override scratching when body is add to world
...
Fixes #13182
2017-11-23 01:26:49 +01:00
Rémi Verschelde
2ea5ac17e8
Merge pull request #13159 from AndreaCatania/ray
...
Removed type_mask and fixed some variable name
2017-11-22 16:40:20 +01:00
AndreaCatania
d6e413bb9c
Removed type_mask and fixed some variable name
2017-11-21 22:56:40 +01:00
AndreaCatania
967854f8e9
Set gravity on change body mode
...
Fixes #13140
2017-11-21 18:31:43 +01:00
muiroc
5dac3e857f
bullet cast_motion: reordered null check
2017-11-20 19:00:47 +01:00
Rémi Verschelde
249c11784a
Merge pull request #13046 from AndreaCatania/kinfix
...
Some Bullet bug fix
2017-11-19 20:37:04 +01:00
AndreaCatania
0327a51c12
Added null check in Bullet cast_motion API
2017-11-19 18:21:36 +01:00
AndreaCatania
d250ade37b
Fixed gravity scale
2017-11-19 17:52:45 +01:00
AndreaCatania
aa3e740a53
Removed dynamic_cast from Bullet Server
2017-11-19 17:11:47 +01:00
AndreaCatania
e6ba163031
Fixed kinematic movement on concave shape
2017-11-19 17:01:08 +01:00
Rémi Verschelde
677e95d8d1
doc: Make all module docs self-contained
2017-11-15 21:29:33 +01:00
Eric Rybicki
bd5df84199
Allow double-axis lock in RigidBody and KinematicBody
2017-11-10 22:33:54 +01:00
Juan Linietsky
50a9bd4e23
Merge pull request #12713 from AndreaCatania/master
...
Rewritten kinematic system
2017-11-09 16:08:58 -03:00
AndreaCatania
5f110c5b98
Fixed collision exception - #12681
2017-11-07 19:07:01 +01:00
AndreaCatania
10f879bf88
Rewritten kinematic system
2017-11-07 15:22:09 +01:00
AndreaCatania
2c69f3d0d2
Bullet - Added support to multiple spaces
2017-11-05 18:50:39 +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