I've modelled a can like mesh with an uneven base. Inside the can is another can flush at the bottom but smaller in all dimensions.

Now I need a third mesh that fills this space in a way that water would if you poured it in but it needs to be a solid mesh.

I've been messing around with fluids but think this might be a red herring as I don't need any animation.

I've looked high and low but I'm probably (hopefully?) searching the wrong way for it!

  • $\begingroup$ Try to duplicate the inner part of the mesh and flip normals. $\endgroup$
    – Denis
    Commented Apr 27, 2016 at 19:39

1 Answer 1


Indeed as you mentioned, you could use fluids sim for this, it is it's main purpose after all.

However fluid simulations come with a bunch of problems of third own attached. They are complex, computationally expensive, consume lots of hard drive space (cache), especially if you aim for high quality, and they certainly can cause a lot of artifacts and glitches that you will have to deal with.

If you need no animation it is certainly overkill. In your case, if you nave everything modeled already I would say all you need is to duplicate your meshes, deal with the intersection areas, invert their normals and you will have a perfect fluid filling your can with a minimal amount of work.

Have in mind however that it is not advised to have coincident faces and overlapping geometry.

In most cases, the way computer graphics work, you need not model the fluids surfaces that are in contact with other opaque surfaces or objects, only the "transparent" ones that are either in contact with air or other transparent surfaces (like glass, ice, etc).

So depending on what you want to do with oyur model you may not need to model the fluids surface that is in contact with your cans.

Check this good tutorial about rendering a glass of water, it contains valuable information about the issue and may help you reach what you need



You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .