# How to achieve white “fog” effect within an ice cube?

I modelled a set of ice cubes. I'm content with the result, but when I look at an actual ice cube from my fridge, it has a white foggy cloud within, like a microstructure. I'm trying to recreate that effect. For this I created some spheres within the ice cubes and applied a Volume Scatter material with density 1. This won't work. The result is gray and faint. I also tried the Volume Absorption, but it turns grayish too. I really need something more whitish, but not using the Emission shader. Also it has to be like a cloud, more opaque in the middle, more transparent on the sides (maybe some Fresnel here?). Anybody has an idea how to do it?

Here is a photo, the best I could get. As you can see its pretty full of this white microstructure, not very transparent.

• could you possibly share a photo of the ice cube from your fridge as well, and maybe a blend of one of the ice cubes on blend-exchange.giantcowfilms.com ? Then it would be easier for us to try out things :) – aliasguru Aug 17 '16 at 16:37
• Probably worth mention Gleb Alexandrow's tutorial about How To Create Realistic Ice in Blender – Carlo Aug 17 '16 at 17:20

Here's a try using point density for the fog effect.

There are two cubes in the image, I just beveled them slightly, the outer cube's material is basically a glass setup, except that I used an image texture to affect the roughness, and add some variation to the surface structure.

Some explanation on the light path and math>maximum nodes, in the ice material setup:

The light path node determines what type of ray is currently being traced, and by using the Math>Maximum node, outputs 0 if it is not the specified ray connected to the math node, and 1 if it is for the corresponding socket of the mix shader. (0= top socket, 1= bottom socket of the mix shader). If either shadow, or reflection rays are traced in this case, then the maximum node outputs 1, and the material uses the transparent shader. For all other rays, it returns 0, and uses the glass shader. Using this setup provides more transparent shadows, which is desirable here as we have a second object inside the first.

Here is the node setup for the 'outer cube':

The second cube, which is the inside the first has a particle system attached to it. The particles are set up basically at the default settings. I only increased the count to 2200, and set the end to 15. Experiment here, and have fun with it. Here is the final distribution of the particles on the rendered frame from my example below:

The point density material, is added to the 'inner cube' object. The setup is as follows:

The additional Math>Add nodes after the Multiply are optional, but give more control over the material. I used them to adjust the brightness and density of the particles individually, rather than using the Multiply node alone, as that affects both together.

Also, if you really want to avoid using an emission shader, just use the volume scatter, but I personally found the emission shader to have a nicer look.

Here is the result, it's not perfection but perhaps it will give you some ideas to experiment with.

• nice approach! never thought of point density before – aliasguru Aug 20 '16 at 5:32
• Very nice! May I ask you to show the particles final distribution and say a few words about the Math node after the light path? What's the difference from using "Is shadow ray" only? – Carlo Aug 20 '16 at 11:08
• @Carlo, I've made some edits, let me know if anything else should be clarified. – Timaroberts Aug 21 '16 at 3:45

Wanna Get Crazy?

I'm no expert, but I'm related to someone who teaches CG. I play around trying to make my own game, but I've actually asked a very similar question. What I learned through research was basically to "Make Fog" inside the cubes instead of trying to attack it with a shader. If you get a real handle on the particle system toggles, you can do convincing things, like use a Mesh as a container for smoke. I've done this with one my character models and it comes out pretty cool.

One thing I really don't know is if you can have several systems in one Scene or if you can use the "interior" of each of your cubes in one system. But in a nutshell, you make a box either around or inside your cube(s), place this little "generator" inside your mesh, toggle a few things I forget now, and run the simulation for a good couple of steps, and grab a random frame and render that.

But research the Smoke and Cloud and Wind particle stuff. Its more work, but if you want something to be quality, you have to put that work in. Good luck.

• this is more of a comment than an answer..and very vague at that.. – zeffii Aug 21 '16 at 7:34

give it a volume shader with a procedural cloud texture