Godot version:
Godot 3.0 and 3.0.1
OS/device including version:
Windows 8.1 x64
Issue description:
Using several areas together gives unexpected bug only in bullet
Steps to reproduce:
Make destructive (queue_free) collision of several areas (in the reproduction project, 8 (4 colliding with 4) and above areas cause the bug. Godot physics doesn't give errors.
Here is the log:
0:00:01:0469 - Condition ' !area_in && !E ' is true.
----------
Tipo:Error
Descripci贸n:
Tiempo: 0:00:01:0469
C Error: Condition ' !area_in && !E ' is true.
C Fuente: scene\3d\area.cpp:357
C Funci贸n: Area::_area_inout
Minimal reproduction project:
The test project will throw several areas against them, but only half of the areas should survive, bullet gives great accuracy in this case, since godot physics sometimes doesn't detect the collisions, but gives the errors.
CC @AndreaCatania
Fixed #17899 can you please confirm it?
Hello, sorry for the delay, since is my first time compiling godot, i'm not sure if this is my fault, but applying this PR makes that instead of the error, the running game window closes. The editor gives this error: " drivers\windows\stream_peer_tcp_winsock.cpp:203 - Server disconnected!". Applied the PR using "cherry pick" command from git GUI to a local repo master.
I don't think the problem is this PR because I didn't touched stream_peer_tcp_winsock.cpp file, Try to clone and build my branch directly
@Superwaitsum Now you can simply build the master branch of godot
Sadly it's still giving me the error (stream_peer_tcp_winsock), but will wait for the next unofficial hugo pro build to confirm since it may be my VS2017 (though reverting the commit makes it not happen but conserving the bug)
@Superwaitsum the error you get is unrelated to this issue (and unrelated to the fix as well). What you have is the same as #17882.
@vnen, thanks for mentioning that bug before me giving a confirmation of it happening also in calinou's builds. Don't know why it happens since adding this fix, but seems to be the same error. Maybe should #17899 reverted until #17882 is fixed? (since previous errors didn't close the game's window). Also the bug demo project could be used to know what causes #17882.
Just found the cause of the bug, there was an array clearing missing. @AndreaCatania, is my fix ok?
https://github.com/Superwaitsum/godot/commit/6d06c08603419eee5312d0616c09f135b2cd6a3e
I already fix this problem. Do You continue to get it? Also clear the array there is useless
For some reason, without that array clearing, this happens:
https://streamable.com/g5ttj
Trying to fix it, found your comment about clearing the array and that worked
Let me check it, I'll let you know
@Superwaitsum check this #18081 Good spotting :)
Thanks!! . It is working correctly now.