Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Bug / Crash  Frequent crash after assign the FluidPassCompute
#7
(13-05-2024, 10:01 AM)josemendez Wrote: Hi,

I'm unable to reproduce this. Tried adding a ObiSolver+ObiEmitter to a prefab, and:
- Disable the solver GameObject in editor, then enable its once in play mode.
- Instantiate the prefab at runtime.

The unity package you shared only contains a couple fluid blueprints (Spikebor/Integration/Runtime/Obi/Fluid/Data) a blend file and a couple prefabs (Spikebor/Integration/Runtime/Obi/Common/FBX). There's no scenes or scripts in its, so I've tried spawning both pool prefabs but no error takes place. Could you share a scene that reproduces this issue?

kind regards,

Hello bro, sorry for the unprofessional report. Now I've packed a new complete package for better report.
package: https://drive.google.com/file/d/1_MhPsBk...sp=sharing
can also use my PipelineAsset at Assets/Spike/SpikePipelineAsset.asset, test with Unity 2022.3.16f1 and URP 14.

In this you will find :
Scene: Assets/Spike/Scenes/Test OBI.unity
When you start the game, you can have these buttons on screen.

Button Group 1:
Spawn Fluid, Spawn Ball, Spawn Dino.
This group will spawn those actors into the "masterSolver", which letting the fluid to be mixed, and fluid can collide with balls and dino.

Button Group 2:
Spawn Small Pool, Spawn Big Pool.
Those are different than Group 1 because each pool has its own Solver, not using the masterSolver.

Last button: Clear spawned: this can clear both those from Group 1 and 2, to re-test with different scenarios.

Problem with button Group 1 (ObiBone vs other actors):
The balls and fluids can interact with each other as intended. But the Dino will likely crash the Editor.
I suspect because the dino with ObiBone is using the ShapeMatching constraint, and it crash the Editor because when the fluid spawn, particles of the fluid also try to shape matching with the ObiBone of the Dino, which is very wrong. But what to do in this case? where I want the ObiBone to interact with the Fluids and Softbodies, it should share one masterSolver with those right? If the Dino has its own solver, then it will ignore the other actors.

Before going to testing Group2, pls clear them all by using the last button.
Problem with button Group 2 (Pools):
Start with spawning the SmallPool, everything will be great.
But as soon as you spawn the BigPool, or clear, and respawn BigPool a few times, you will hit the point where Editor crashes.
This part I have no idea what may cause this.

Those smallPool and bigPool prefab also can have a chance to crash the Editor when you open them. Look into the gameobject TEST in the scene with the script TestObi, it has references to those pool prefabs.

Another question about Fluid:
So each Emitter has their ObiFluidSurfaceMesher with different asset data, like for example different VoxelSize.
If my game scene make use of 5 different ObiFluidRenderingPass assets for different kind of fluids, should I add them all to the RendererFeatures list?
If I have too many of them in the list, will they affect performance? Or is there better workflow that I'm unaware of pls tell me thanks.

Best regards.
Reply


Messages In This Thread
RE: Frequent crash after assign the FluidPassCompute - by spikebor - 13-05-2024, 05:33 PM