Jump to content

'smooth' vdb according to normals ?


Recommended Posts

Hello

 

Does anyone know a way I could get the normal data to 'smooth' vdbs ? I'm trying to remesh geometry (polytovdb>smooth>convert vdb), but I always seem to get these hard edges

 

I might be overlooking something or it's something complicated.

 

 

In the following screenshot (which would be a more complicated mesh, of course) 1) is my base geo with smooth normals 2) is my vdb and 3) is the vdb i woul like to have. I can't always smooth incoming geo, unfortunately. 

 

Thanks!

 

bernie

 

ivyzCXs.png?1

Link to comment
Share on other sites

Not based on technical knowledge on how VDB are built but from my experience. Not to be taken as absolute truth. Open thoughts on your problem:

What makes the eye think a low poly model is actually "smooth" is that viewports can average consecutive polygon's normals into one.
While it appears seamless, the actual geometry is still made of sharp edges.

When you convert to vdb, there is no viewport trick to blend the different polygons into a smooth surface, basically it's creating a voxel inside your geometry but none outside --> sharp edges are visible as if you switch your viewport to flat shaded.

Adding a VDBsmooth on top of that will indeed smooth the edges but more like doing a fillet than a smooth over the whole geometry. In the sense that it will not create the "outside" voxel needed to turn a flat surface into a smooth rounded one (see sketch) but will rearrange existing voxels to have a smoother distribution and smooth edges.

This is also why it does not work for your large low poly objects.

Considering this, you most likely need to refine your hard edges with more polygons to achieve what you are looking for.
First obvious idea would be to detect creases in your geo and only subdivide needed areas. Any reason why you "can't always smooth incoming geo" ? might be a lead to work around the problem.

 

 

If you are stuck to VDBs, have you tried to use VDBreshape to dilate, VDBsmooth then erode.

It should increase the radius of the "fillet" on edges at the cost of a loss of details.
Sharp edge can come as the 2nd input of your convertVDB later to relatively bring details back if needed.
 

post-10914-0-43469300-1449162756_thumb.p

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...