Home Creators Posts Import Register Favorites Logout
haven't archived this post yet. have a subscription? use the importer!

Videos

Downloads

  • Volume_Displacement_Shader_02.zip

Missing 1 full-res photo, 1 file, as this post has not yet been imported.

Content

EDIT: Reuploaded the scene file, forgot to attach one piece of geo.

Admittedly this is a deep first dive into shading volumes using Mantra and Houdini's mat-context. However we wanted to get this out of our system as we received quite a few messages asking how to achieve this effect.

It was popularized by the incredibly talented Lee Griggs (http://leegriggs.com/abstract-render) using Arnold.

However the exact same technique can be done in Houdini's very own Mantra. Have fun shading!

Files

Previews only

Volumes 101 pt. 20: Volume Displacement Shader

Comments

Ryan

What is the default "Current" space that the displacement globals is in? Is it similar to Tangent Space?

entagma

Hi Pixelsmith, usually (in shading) it's camera space - in this case you could also disable the transform1-node in the materialbuilder (volumetric_displacement_02.hip)... Cheers, Mo

Jerrod Dockan

is it possible to create same displacement in actual volume? instead of just a rendered image

entagma

Hi Jerrod, yes that's absolutely possible, yet the advantage of this technique is that your base volume doesn't need such a high resolution as if you'd implement direct volumetric displacement. Cheers, Mo

alex

Thanks for another awesome video! However, I'm slightly confused here - what exactly is N in volume context? Certainly it is not normal as volumes don't have one. Is it volume gradient that is computed on the fly? Also, there is a Pyro Displace node, what is its purpose, if you can do just fine without it? Also, shouldn't you add displacement bounds properties to Output Collect for displacement to work properly?

entagma

Hi Alex and thanks for your input. You're absolutely right: N in volume context is the volume's gradient which is computed at render time. I couldn't get the pyro displace to work properly and couldn't find much help on it so I decided to roll my own displacement - if you happen to stumble upon any proper documentation, please let me know. Displacement bounds can be a good idea although until now I always added them onto the geo in the obj-context. However in this case the results were almost identical so I ommited them. Cheers :) Mo

entagma

Seems like a volume (or shader) that has a very high density value and no (or few) in-between values where the geometry that defined the volume ends. One idea would be to try using a smooth vdb sop to get rid of those aliasing artefacts. Cheers, Mo

paul silcox

Very useful techniques. Thanks Moritz.

Daryl Dunlap

Redshift user here.....curious as to what the Render times/RAM usage for Volume Displacement Rendering is in Mantra?

entagma

Didn't really pay attention to RAM usage I must admit. However render times were quite long (Mantra on a single CPU i7) at around 1h per 2560x1440px frame. Daryl - do you have any insight if something similar is possible in redshift? That would be my next attempt.