godot/servers/physics_2d
PouleyKetchoupp 448c41a3e4 Godot Physics collisions and solver processed on threads
Use ThreadWorkPool to process physics step tasks in multiple threads. Collisions are all processed in parallel and solving impulses is
processed in parallel for rigid body islands.

Additional changes:
- Proper islands for soft bodies linked to active bodies
- All moving areas are on separate islands (can be parallelized)
- Fix inconsistencies with body islands (Kinematic bodies could link
bodies together or not depending on the processing order)
- Completely prevent static bodies to be active (it could cause islands
to be wrongly created and cause dangerous multi-threading operations as
well as inconsistencies in created islands)
- Apply impulses only on dynamic bodies to avoid unsafe multi-threaded
operations (static bodies can be on multiple islands)
- Removed inverted iterations when populating body islands, it's now
faster in regular order (maybe after fixing inconsistencies)
2021-04-26 18:26:00 -07:00
..
area_2d_sw.cpp
area_2d_sw.h
area_pair_2d_sw.cpp Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
area_pair_2d_sw.h Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
body_2d_sw.cpp Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
body_2d_sw.h Unexpose _direct_state_changed in PhysicsBody 2021-04-22 23:20:58 -05:00
body_pair_2d_sw.cpp Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
body_pair_2d_sw.h Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
broad_phase_2d_basic.cpp
broad_phase_2d_basic.h
broad_phase_2d_hash_grid.cpp Optimize BroadPhase2dHashGrid to not pair elements on different layers 2021-04-15 17:20:07 -04:00
broad_phase_2d_hash_grid.h Optimize BroadPhase2dHashGrid to not pair elements on different layers 2021-04-15 17:20:07 -04:00
broad_phase_2d_sw.cpp
broad_phase_2d_sw.h
collision_object_2d_sw.cpp
collision_object_2d_sw.h Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
collision_solver_2d_sat.cpp
collision_solver_2d_sat.h
collision_solver_2d_sw.cpp
collision_solver_2d_sw.h
constraint_2d_sw.h Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
joints_2d_sw.cpp Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
joints_2d_sw.h Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
physics_server_2d_sw.cpp Unexpose _direct_state_changed in PhysicsBody 2021-04-22 23:20:58 -05:00
physics_server_2d_sw.h Unexpose _direct_state_changed in PhysicsBody 2021-04-22 23:20:58 -05:00
physics_server_2d_wrap_mt.cpp
physics_server_2d_wrap_mt.h Unexpose _direct_state_changed in PhysicsBody 2021-04-22 23:20:58 -05:00
SCsub
shape_2d_sw.cpp
shape_2d_sw.h
space_2d_sw.cpp
space_2d_sw.h
step_2d_sw.cpp Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00
step_2d_sw.h Godot Physics collisions and solver processed on threads 2021-04-26 18:26:00 -07:00