artifact in displacement

   6324   6   1
User Avatar
Member
9 posts
Joined: June 2013
Offline
Hi,
I am trying to understand how displacement works in houdini. I applied a worly noise to a simple grid pattern.But i am getting some black artifacts in the surface.I am wondering whats causing this.

Attached the hipnc file here.
Any help would be appreciated.


Thanks !!

Attachments:
Displacement.jpg (125.5 KB)
SlopeBasedShaderDebug1.hipnc (265.6 KB)

User Avatar
Member
9 posts
Joined: June 2013
Offline
Btw ..i see it only when i move camera closer to the object and it goes away ..when camera is further …

I tried adding Displacement Bound of 0.08..it goes away
But i am not sure ..if its a right way of doing it..may be my shader setup in wrong in the first place ?
User Avatar
Member
54 posts
Joined: Aug. 2011
Offline
Go to your object node, Render tab - > Dicing tab -> Ray Predicing change to Full Predicing.

This usualy fixes things for me.
User Avatar
Member
575 posts
Joined: Nov. 2005
Offline
displacement bound is probably the way to go, it must have at least the size of the maximum displacement
User Avatar
Staff
2540 posts
Joined: July 2005
Offline
With displacements you should also add the Displacement Bounds property.

When rendering, Mantra constructs the geometry within it's natural (non-displaced) bounding box as Mantra doesn't know the extents of the displacement yet when it is dicing the geometry in to micropolygons.

If the geometry is pushed beyond this bounding box when the displacements are applied, the geometry disappears and you end up with holes as you are experiencing here.

By adding the Displacement Bounds render property, you can tell Mantra how much larger to make this bounding box so that when it pushes the micropolygons around, it can still construct the geometry.

Because displacement bounds increases the size of the object, it also increases the amount of memory that Mantra must use so it is important to set Displacement Bounds large enough to capture the displacements but not overly large as to consume too much memory.
There's at least one school like the old school!
User Avatar
Member
9 posts
Joined: June 2013
Offline
Thanks Guys for ur replies ..
@toms993..thanks that worked as well.

Thanks Jeff for the detailed explanation ….ll keep that in mind..
User Avatar
Staff
2540 posts
Joined: July 2005
Offline
With Displacement Bounds, you need to set this anyway when utilizing displacements.

As for Full Predicing, this can get around some issues with tearing and displacements but is overkill for most things. It forces mantra to grab a lot of memory up front.
There's at least one school like the old school!
  • Quick Links