You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Issue description:
I'm trying to create dynamic 2d water, with damping and dispersion physics in the water surface. The water has Area2D with CollisionPolygon2D to detect RigidBody2D collision to calculate speed and apply force in a surface vertice. But the CollisionPolygon2D has the same poygon as the body (note: the water body and surface is drawed, not using a Polygon2D), so every frame is changing. But when a body enter the water, duplicate the "splash" function, but when the Collision is not changed, the "splash" function is called once.
OBS: I already tried using _physics_process(delta) function in instead of _process(delta) function to change the polygon, but the signal output more.
Steps to reproduce:
Create a Area2D;
Create a CollisionPolygon2D as child;
In a script, every frame change the 'polygon' property of the CollisionPolygon2D;
Connect the 'body_entered' signal to the script;
To analyse the output, put a print function on the signal;
Put a RigidBody2D (or other body falling to the Area2D) on the scene;
I have same issue when I use Animation Player and change polygons dynamically. At the end of animation I tried to disable collision, but signal still emit. It makes impossible do "slashes" with Area2d+CollisionPolygon2d
Godot version:
3.1 Beta 3
OS/device including version:
Windows 10 Pro
Issue description:
I'm trying to create dynamic 2d water, with damping and dispersion physics in the water surface. The water has Area2D with CollisionPolygon2D to detect RigidBody2D collision to calculate speed and apply force in a surface vertice. But the CollisionPolygon2D has the same poygon as the body (note: the water body and surface is drawed, not using a Polygon2D), so every frame is changing. But when a body enter the water, duplicate the "splash" function, but when the Collision is not changed, the "splash" function is called once.
OBS: I already tried using _physics_process(delta) function in instead of _process(delta) function to change the polygon, but the signal output more.
Steps to reproduce:
Minimal reproduction project:
collision duplication.zip
The text was updated successfully, but these errors were encountered: