Announcement

Collapse
No announcement yet.

Voxelize Objects Higher?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Voxelize Objects Higher?

    I'm having an issue with simulation geometry that has a very slight incline. The geometry is shaped like a drain so there is a very slight incline to guide the liquid toward the drain. Presumably, the voxelization causes noticeable steps in the sim mesh's reflection pass. I have confirmed that increasing the resolution increases the frequency of this stepping of course. I can also say that enabling motion blur makes the stepping more noticeable.

    Is there any way around this issue? If not, a feature request could be the ability to voxelize collision geometry to a higher or lower resolution than the sim if that would help get a smooth collision shape for this type of shape. It's also possible that this wouldn't help if the simulator is still limited to it's own resolution so I'm still trying to consider a solution if that's the case

    Thanks!
    Josh Clos
    FX / 3D Generalist

  • #2
    Hey,

    Right now the drill in this case would be to slice off the Phoenix mesh with a render cutter. The cutter renders only the fluid inside it, so if you inverse it, it will render only the fluid OUTside it. Set the inclined geometry as an inverse render cutter and change the render mode to Isosurface, so the cut is smooth.

    Cheers!
    Svetlin Nikolov, Ex Lead Phoenix developer

    Comment


    • #3
      That's a good idea and works for thicker fluid volumes; unfortunately in this case, it's a very thin layer of fluid (seems like a single layer of particles at certain times) so I see the voxelization pattern on the top. Currently, I'm using the ground geometry as a vray matte object in render but the issue is still there (because its on both sides of the mesh). I don't think it's a problem with Phoenix but possibly a fundamental limitation with voxelization and very thin fluids.

      The sim involves fluid going down a drain so I am emitting bits of fluid that slowly approach the drain but over time the emitted fluid spreads out to what seems like a single layer of particles. Do substeps affect how quickly a fluid spreads out? Currently I'm using 3 steps to avoid instability since my scale is small (less than 1 meter square). Maybe this needs to be done with an SPH solver or something.

      I'm going to add a push modifier to my matte ground geo. Maybe it will be better just to remove the thin layers of fluid in this case.

      Thanks for the suggestion!
      Last edited by joshclos; 01-11-2018, 10:40 AM.
      Josh Clos
      FX / 3D Generalist

      Comment


      • #4
        Hmmm, if you switch on the particle preview, do you see any grid patterns in the particles themselves? If you do, then this is something we need to look at and fix. Otherwise I'm afraid that in this case the chain of particles -> voxels -> mesh that is the current way to mesh Phoenix FLIP liquids is to blame and we need to implement a direct particle mesher. Do you happen to have Frost at hand? Is it looking the same way it it as well?

        There is another behavior I've seen - when you spill a very thin layer of liquid, the difference between the areas where the particles are just a single layer and where they are two layers stacked over one another would be very visible. This does not usually look like grid artifacts, so it might not be the issue you are having.

        Something you could try if you haven't already would be the mesh smoothing with "use liquid particles" enabled, and then adjusting the strength of the smoothing and the particles size. This method tries to cope with some of the limitations of particle voxelization before meshing.

        I don't think the steps per frame would be directly involved into how the liquid spreads out - maybe indirectly. Depending on how strong surface tension you have, using more steps per frame would allow more surface tension iterations to run and would bunch up the particles more.

        Cheers!
        Svetlin Nikolov, Ex Lead Phoenix developer

        Comment


        • #5
          This is a very interesting test. Using Frost is a great idea and it works but the pattern is still there. I have seen the issue you mentioned about having 1-2 layers of particles before but this issue is slightly different I think. The liquid particles for phoenix look normal and do not have a noticeable seam so I looked into it more and found a way to replicate the issue even without Phoenix.

          • In 3DS Max:
          1) Create box (0.5 x 0.5 x 0.01)
          2) Rotate 5 degrees in X or Y axis
          3) Create PRT volume to fill the box with particles
          4) Frost mesh those particles (I was using zhu/bridson mesher)

          These steps will produce the issue even with a large particle radius. It seems that when particles are gradually inclined like this, it creates these noticeable "seams" in the topology. I guess I just never came across this issue before because most of the time the fluids are flying all over. I found that the issue can be dramatically reduced by adding a relax modifier which will spread out those seams but of course will also sacrifice detail and potentially offsetting from foam positions. Using Phoenix's mesh smoothing helps to reduce the artifact and I also found that using higher surface tension in the simulation will help prevent the situation from happening by creating more stacked particles and creating more than a single layer for the mesher to use.

          It's safe to say this is not a problem with Phoenix and also does not seem to be related to voxelization. But it was a great learning experience!

          As always, thanks for your help!
          Last edited by joshclos; 02-11-2018, 12:19 PM.
          Josh Clos
          FX / 3D Generalist

          Comment

          Working...
          X