08-08-2020, 02:07 AM
So my softbody collision setup works well (Obi colliders in different phases). My scene setup is simple : A softbody object falls onto a table surface. The problem is, upon building to an android device, sometimes, the object just falls through the table, completely ignoring any collision with that table.
It happens randomly after 10-12 spawned softbodies - But once it starts happening, the collision ignoring doesn't stop. From thereon, any further softbodies spawned (completely fresh prefabs with newly instantiated solvers) stop interacting with the table at all. The game has to be closed and restarted for table collision to work again temporarily until problem repeats.
Now before you blame the obi collision phases, I have checked and double checked and all instantiated objects are on phases other than the table's phase at all times.
One thing I did note is due to quicker iteration times to debug, I normally use the Quick Enter Play mode feature in Unity a lot (which disables Domain Reload). But Obi collision completely fails instantly if Domain reload is disabled. If I enable Domain reload again, collisions seem to work again.
But regardless of Domain reload on or off in the editor, on the built APK, as mentioned above, the collisions start to fail after a point. It's unpredictable. To make sure, I rebuilt the APK with Domain reload On within the Editor, but same results.
Also, not sure if it's worth mentioning but I'm using different gravity values for the game. The main Physics system has a gravity value of -69.8 and the solver for each softbody is using -39.8. Could such values create issues?
I'm completely lost here, as the scene setup seems fine and I just don't understand why collisions randomly stop working after a point in builds for no reason. No scripts alter the Table's Obi Collider component or it's phase at any point. It behaves as if Domain Reload has been turned off after a point.
What is happening here? Is there any way to force collisions to work within build again? Maybe force domain reload on each spawn? Is domain reload even the culprit here? I don't see how, that's supposed to be within Editor only.
Please help
It happens randomly after 10-12 spawned softbodies - But once it starts happening, the collision ignoring doesn't stop. From thereon, any further softbodies spawned (completely fresh prefabs with newly instantiated solvers) stop interacting with the table at all. The game has to be closed and restarted for table collision to work again temporarily until problem repeats.
Now before you blame the obi collision phases, I have checked and double checked and all instantiated objects are on phases other than the table's phase at all times.
One thing I did note is due to quicker iteration times to debug, I normally use the Quick Enter Play mode feature in Unity a lot (which disables Domain Reload). But Obi collision completely fails instantly if Domain reload is disabled. If I enable Domain reload again, collisions seem to work again.
But regardless of Domain reload on or off in the editor, on the built APK, as mentioned above, the collisions start to fail after a point. It's unpredictable. To make sure, I rebuilt the APK with Domain reload On within the Editor, but same results.
Also, not sure if it's worth mentioning but I'm using different gravity values for the game. The main Physics system has a gravity value of -69.8 and the solver for each softbody is using -39.8. Could such values create issues?
I'm completely lost here, as the scene setup seems fine and I just don't understand why collisions randomly stop working after a point in builds for no reason. No scripts alter the Table's Obi Collider component or it's phase at any point. It behaves as if Domain Reload has been turned off after a point.
What is happening here? Is there any way to force collisions to work within build again? Maybe force domain reload on each spawn? Is domain reload even the culprit here? I don't see how, that's supposed to be within Editor only.
Please help