Jump to content

Meshing a grain sim via VDB gets inflated at rendertime


Strob

Recommended Posts

Hi everyone,

I am trying to use a grain simulation to create a sticky gum effect.

 (like this video) but I have a problem with the meshing.

To create a skin out of my grain I first convert my grain to vdb (with vdb from particlesfluid) and then I use convertvdb with the polygon polygon option to convert this to a polygon “skin”. Everything looks perfect in the viewport but when I try to render, it is inflated at rendertime, ie:  it’s not a perfect match with what I see in the viewport. If instead of grains, I use a sphere that I convert to vdb volume and then back to poly with the same convertvdb node with the polygon option I don’t get this volume increase at rendertime.

See yourself:

convertVDBbug.JPG

Is this a bug? Do you know any workaround I could get mantra to render the same result as I see in the viewport when using grain as a source?

I saw this thread where someone talk about creating properties in a shader to get to render vdb isosurface directly without converting to poly: https://www.sidefx.com/forum/topic/29678/ But I still have to investigate that one, looks a bit complicated.

As another workaround I could render my sim correctly by writing the vdb to disk and loading it in max to render with vray and it rendered correctly. But still I would like to know why mantra can't do it.

thanks

 

 

 

Link to comment
Share on other sites

I found a workaround.

 

I just reloaded the vdb file in houdini and converted to poly and then it rendered correctly.

So the same vdb converted to poly directly does not work but if I write it to disk first and then load it back and convert the same way, it does work. So I think it just confirmed that it's a bug.

I submited it to SESI.

convertVDBbugB.JPG

Edited by Strob
Link to comment
Share on other sites

Finally it turns out it was not really a bug... but rather an automated feature of the shelf tool that turns on  the "Render as Points: Render Only Points" option in the object's render::geometry tab. We can see this on /obj/grain_particles. When I set this to any other choice the vdb to poly will render correctly.

So if you use grain to render anything else than points you have to know that you have to change that option. 

Edited by Strob
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...