Ingmar Franz (duerer)

6 answers · asked @ video mark 2:56 · Lesson: The Principled Volume Shader · Course: Fundamentals of Blender Materials and Shading

OpenVDB object creation in Blender?

Off topic: Can I create such an OpenVDB object in Blender, too?

  • Yes, you can make a fire/smoke simulation in Blender and save the data (in Blender 2.83 the cache is set to OpenVDB by default) en then import it in any file.

    • Thanks, @spikeyxxx ! The colors beeing accessed by entering "v" into the appropriate shader field reminded me e little bit at vector displacement maps which I've already successfully baken in Blender.

    • What?! You can bake Vector Displacement Maps in Blender?

      I have seen a tutorial a few years ago on how to do this with a hack; is that what you are referring to? Looked way too complicated for me at the time and I forgot about it. Do you know an 'easy' way of doing this?

      Those 'v' colors are the speed vectors if I'm not mistaken. As in Fluid Sims.

    • Yes, I've done this with a "Multires Modifier" used for baking two emission shader maps color-coding the position of the surface points of an undistorted mesh primitive and the same with the more complex mesh created by sculpting on a higher "Multires" level. The colors came from a "Geometry" node using the "Position" output socket. I had to set a margin for the UV maps in order to avoid gaps at the outer edges which would have caused seams when using the final vector displacement map:

      The left object is the vector displacement copy of the original on the right side using also .micropolygon displacement. I've muted the emission shader wireframe grid as you can see in see node tree.  File is here.

      I remember having seen videos of this guy here who did this with the help of Python. But I've found instructions elsewhere - if I remember correctly on Blenderartists.org -  and did some experiments on my own until I had success.

    • Thanks duerer !

      Not completely clear yet how this is done, but I'll experiment.

      Didn't know that this was possible.

    • spikeyxxx This is currently the "easiest" way of creating a "Vector Displacement Map" in Blender as far as I know it. The key element is the "Multires Modifier" which you turn off before baking the map for the unsubdivided mesh primitive and which you turn on (showing your sculpted details on a higher "Multires" subdivision level) before baking the map for your target map. The "Multires Modifier" keeps the UV map of your original mesh primitive intact  even with the sculpted details beeing visible when the  "Multires Modifier" is active. The difference of both UV map is your vector displacement map.