How to model realistic surface bubbles that touch glass

I’m looking for a way to model coffee bubbles specifically. But they need to be seen from the Outside of the glass. Here are a couple images to illustrate the look of the bubbles I’d be looking for. It would apply to other things as well, but coffee is what I’m after for now.


The carafe is the look I’m going for. I rendered that product actually, but they ended up replacing all the online images with photographs. But when I rendered it, I skipped the bubbles and just photoshopped in bubbles from a few different photos. But I’d like to see if I can learn a technique for modeling it…if possible.

I tried placing a bunch of bubbles around and up the glass a bit, but this was in 2.79 and while I was still early in my learning what blender could do. One issue I had there was the boolean against the glass would frequently fail. I’m guessing that is Much better now, but perhaps I’d be going about it all wrong, so hopefully you folks could help.

One idea for positioning them would be to use MassFX in paint mode. It’s pretty cheap for being such a useful tool. For those that don’t know, it essentially uses physics on a collection of objects to drop onto a collision object(s). But then those dropped objects become passive rigid body objects with a right click and you can keep dropping things.
A downside there is those objects only drop straight down, so you would have to tilt the pot, drop some. Then tilt the pot, drop more, and repeat until done.

Another thought, that I don’t have much experience with yet since it’s pretty new, is geometry nodes. I Love me some nodes. To be Truly realistic, the bubbles end up not being round when they touch another object. I have no idea how to accomplish that. Also the bubbles go Under the liquid as well.

So the basic steps would be, distribute the bubbles. Use those bubbles as a boolean object to subtract from the liquid. Use the glass as a boolean object to subtract from the bubbles.

Any good ideas? I’d love to be able to do this in Some sort of repeatable way. And I know, based on how I just described that, there are other issues like not getting the surface tension between bubbles. And you Should have smooth transitions between bubbles and liquid.

I suppose you could duplicate the bubbles and boolean union them all together, then boolean union that with the liquid. Then take the original bubbles, add a displace modifier to it just to shrink them all slightly based on their normals. Then you would just have to figure out a way to create the smooth transition between the outer portion of the bubbles.
When you think of bubbles, typically it’s an object with zero thickness. But looking at something like this, it is best created With thickness. Really the bubble is just air inside of coffee, so the outside of the bubble is just more of the whatever the liquid is, right?

I’m still thinking about how it might be achieved. If you folks have ideas I’d love to hear them.

1 Like

You could instance a bubble to a particle system and then once you got it looking almost right …convert it to a real object then duplicate parts rearrange etc to get it to what you want…
A quick system with the coffee object as the emitter and the outer glass as a collision.

You can basically use METABALLS. And for bubbles inside coffee, reverse bubble surface normals.

You can use particles and materials together. You don’t need create all bubbles with particles. Only big bubbles can be particles, micro bubbles can create with texture, Normal and Displace maps. Like this:

Do you want Dispersion or not? If you want you can use VSHADE.