godot/scene/3d
Pedro J. Estébanez 3e5e8b6c9e Fix multiple issues with 2D & 3D physics
- Use `NOTIFICATION_ENTER`/`EXIT_WORLD` for `Area` (intead of `*_TREE`).
- Now both bodies' and areas' constraints are cleaned up.
- And now also that happens as soon as the space is set to null (i.e., when exiting the tree) instead of only at freeing time.
- When clearing constraints, the loop goes on to the next if the current is already released, instead of breaking.
- When one has been already released, no error is shown from now on, as it's something expected, since a pair (our kind of constraint of interest) can be freed by any of its involved collision objects and the other will try again.
- Implement index shifting (or marking as -1) for shapes indices in collision pairs shapes are removed.
- Standarize behavior of bodies and areas so that anything that invalidates a given pair gives the same result (collision mask, actual collision, etc); for instance, triggering area enter/exit signals.
- Add missing member initializations.
- Extend the new-space-equals-area/body-current-space test to every case.
- Fix 3D ray-casts early accepting Areas (skipping the mask check).
- Fix unpairing of large elements (2D's `BroadPhase2DHashGrid`).

Some of these prevent random crashes caused by constraints with dangling pointers to involved objects.
Fixes #8856.
Fixes #7589.
Fixes #6676.
And maybe others.
2017-06-19 12:02:50 +02:00
..
area.cpp Fix multiple issues with 2D & 3D physics 2017-06-19 12:02:50 +02:00
area.h Merge pull request #8317 from RandomShaper/fix-area-monitoring-2.1 2017-04-08 22:47:44 +02:00
baked_light_instance.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
baked_light_instance.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
body_shape.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
body_shape.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
bone_attachment.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
bone_attachment.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
camera.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
camera.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
character_camera.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
character_camera.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
collision_object.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
collision_object.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
collision_polygon.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
collision_polygon.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
immediate_geometry.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
immediate_geometry.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
interpolated_camera.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
interpolated_camera.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
light.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
light.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
listener.cpp Bring that Whole New World to the Old Continent too 2017-03-19 00:36:26 +01:00
listener.h Bring that Whole New World to the Old Continent too 2017-03-19 00:36:26 +01:00
mesh_instance.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
mesh_instance.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
multimesh_instance.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
multimesh_instance.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
navigation_mesh.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
navigation_mesh.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
navigation.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
navigation.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
particles.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
particles.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
path.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
path.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
physics_body.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
physics_body.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
physics_joint.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
physics_joint.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
portal.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
portal.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
position_3d.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
position_3d.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
proximity_group.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
proximity_group.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
quad.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
quad.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
ray_cast.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
ray_cast.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
room_instance.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
room_instance.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
scenario_fx.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
scenario_fx.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
SCsub style: Fix PEP8 whitespace issues in Python files 2016-11-02 22:28:28 +01:00
skeleton.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
skeleton.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial_indexer.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial_indexer.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial_player.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial_player.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial_sample_player.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial_sample_player.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial_stream_player.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial_stream_player.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
spatial.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
sprite_3d.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
sprite_3d.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
test_cube.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
test_cube.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
vehicle_body.cpp GDScript can now tell if the wheel is in contact with the ground; change roll influence of the wheel in editor 2017-05-19 11:50:23 +02:00
vehicle_body.h GDScript can now tell if the wheel is in contact with the ground; change roll influence of the wheel in editor 2017-05-19 11:50:23 +02:00
visibility_notifier.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
visibility_notifier.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
visual_instance.cpp Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00
visual_instance.h Add "Godot Engine contributors" copyright line 2017-04-08 00:45:24 +02:00