Jump to content

VDB Advection - how to stick UV's to surface as it grows? (Dual Rest Fields?)


AustinW

Recommended Posts

Thanks in advance for the help!
I'm advecting a vdb so it grows over time. Once turned back into polygons, I'm hoping to stick UV's on it.

The setup
- I promote my uv's to point attribute and in the initial "VDB from polygons" I created a new surface attribute to store the uvs
- I advect both vdb volumes in a sop solver, and then convert the vdb to polygons.
- I then use an "attribute from volume" node to transfer the uv's from the volume onto the mesh.

This works for the first frame, but as expected distorts and breaks down pretty quickly as the volume grows.
I've researched and found examples of using the "dual rest fields" option in the Pyro and Flip Solver and then blending between the two rest states to "reset" the texture distortion as the mesh grows.
There is a great example of this by Jesper Rahlff here (https://forums.odforce.net/topic/49461-lava-flow-question/?do=findComment&comment=227475).

Great! I can create a rest field but...
- What exactly is rest2? how is it different from rest1?
- And how would I go about setting it up here without using the pyro or flip solver?

If you have a better way to achieve this always open to that too :)

advect_setup.png

advect_solver_setup.png

stretched_uvs.png

VDB_Advect_UV_rnd_v02.hiplc

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...