11
$\begingroup$

I can model ice cubes as slightly misshapen transparent cubes with the refractive index of water, but they don't look convincing. They look like lumps of glass rather than ice.

Looking at real ice cubes I can intuitively describe some differences but I don't know what physical properties to change to match them:

  • Ice cubes are wet. Mine look like dry glass.
  • Ice cubes are transparent in places and not in others.
  • Ice cubes often have cracks that are visible despite not separating.

In this instance I am trying to model ice cubes on a surface (in air, not floating in water).

What techniques do I need to include in order to increase the realism?

I am not looking for real time techniques, just to produce still images. I would like the ice to be photorealistic even close up, and to cast realistic caustics and shadows.

I've tried using curved edges and coating my ice cubes with a thin layer of transparent material to simulate a melted layer of water, but it doesn't seem to give the impression of being wet. I've also tried embedding a transparent sphere half the size of the cube at its centre, with a fog effect, but it doesn't blend into the cube naturally - it just looks embedded. Even a series of nested spheres with gradually increasing fog still doesn't look right.

$\endgroup$
  • $\begingroup$ I think you would also be interested in techniques to simulate Rough Refraction such as those described in www-sop.inria.fr/reves/Basilic/2011/DBSHR11/…. Look at the screenshots and see how it could benefit ice cube rendering ! $\endgroup$ – wip Aug 10 '15 at 22:21
  • 1
    $\begingroup$ @wil While those results for rough surfaces are very impressive (especially for a real-time algorithm), ice tends to be very smooth on the surface, and rough inside - almost the opposite effect. $\endgroup$ – trichoplax Aug 10 '15 at 22:31
  • 3
    $\begingroup$ Maybe questionslike this would require pictures $\endgroup$ – joojaa Aug 11 '15 at 4:44
  • 2
    $\begingroup$ Do you want to render stills or animation? If the cube is to be animated are you looking for real-time effects? And yes, if this wasn't the private beta, an image of your current results would be nice. $\endgroup$ – Martin Ender Aug 11 '15 at 9:00
3
$\begingroup$

According to Wikipedia, ice has a slightly lower IOR than non-frozen water, though I don't know how much that difference would affect the results.

The "opaque"-looking parts of an ice cube are caused by clusters of microscopic bubbles formed during freezing. You might be able to model those using geometry, but given the scale and number I suspect that some kind of participating media model would probably be a better fit. (Though I don't know of any.)

Also, remember that most non-submerged ice you'll see is going to very soon form a thin layer of liquid water interfacing it with the air, so this might significantly alter its appearance too.

$\endgroup$
4
$\begingroup$

Two big ones you're missing:

  1. Angle-dependent reflection. This is one possible cause of your "transparent in places and not in others" effect, and the most likely cause of the missing wetness.

  2. Ice cubes usually have air bubbles trapped inside. This shows up as a white volumetric haze denser in the center of the cube (for small bubbles) or distinct bubbles (for large ones). This is the other likely cause of your "transparent in places and not in others".

The techniques for modeling these depend on what rendering method you're using.

$\endgroup$
4
$\begingroup$

I've found that bump mapping when calculating lighting and refraction rays can add a lot to the look of ice. It makes the ice look textured and imperfect, like a melting ice cube would look.

I sort of wonder if maybe animating a bump map could help make it look wet, as water sheets / droplets ran down it's surface.

The images below look pretty nice, but they would probably look even better with the internal imperfections that other people are talking about.

enter image description here

enter image description here

enter image description here

Here's my shadertoy where I got the screenshots from: https://www.shadertoy.com/view/ldj3zz#

$\endgroup$
  • 2
    $\begingroup$ This seems close to being a link-only answer. Could you include an explanation so that this can be understood even without following the link? $\endgroup$ – trichoplax Aug 11 '15 at 11:21
  • $\begingroup$ Apologies, you are correct. I should have given screenshots at least, and it turns out i even linked to the wrong link! $\endgroup$ – Alan Wolfe Aug 11 '15 at 15:55
  • 1
    $\begingroup$ Thanks for the images, but it would also be interesting to see an explanation of how this works and why it improves the appearance. A good answer should provide understanding without the need to leave the site - then the links are there for further reading in more detail. $\endgroup$ – trichoplax Aug 11 '15 at 20:43
  • $\begingroup$ I mentioned you apply bump mapping to lighting and refraction calculations. Would you expect my answer to explain bump mapping? $\endgroup$ – Alan Wolfe Aug 11 '15 at 20:48
  • 1
    $\begingroup$ I had an awesome chance to see ice cubes close up today during dinner, and they seemed to actually be pretty smooth and without bumps. I think the vital part of this is giving them that "wet" look. $\endgroup$ – yuriks Aug 12 '15 at 0:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.