Announcement

Collapse
No announcement yet.

Refraction override challenge

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Refraction override challenge

    Hi all, I've got a challenge here I really need to solve in a single render layer/pass and not in comp. Wondering if there's a way it can be done...

    Suppose I have a character who I want to render as a semi-transparent ghost - I want his front faces semi transparent, but his backfaces and and self-penetrating parts to be invisible.

    I can set his materials to transparent (IOR=1) and set an override on the refraction material so his backfaces and interpenetrating faces render with a different material. If the override material is completely transparent it works like a perfect double-exposure effect.

    Now suppose the ghost walks behind a glass bottle or another ghost, the trick doesn't work because he's invisible in the refractions. Is there a way I can make him invisible to his own refraction rays, but visible to any other refraction rays? (Assume the ghost is one mesh and uses one material)

    I thought I could do it with VRay Exclusion Lists, and add each ghost to it's own Exclusion List, but doing that doesn't seem to do anything in Vray 3.40.02

  • #2
    There are a few additional V-Ray outputs of the samplerInfo node; two of them are "object ID" and "parent object ID" (the parent is the object at the beginning of a ray). Using a condition node, you might be able to isolate the refraction rays that start from the same object and hit the same object, and all other rays, and use that to drive a refraction texture map or something.

    Best regards,
    Vlado
    I only act like I know everything, Rogers.

    Comment


    • #3
      Thanks Vlado, yep this does work. Testing objectID == parentObjectID works great provided I assign unique IDs to each ghost, and glass object (or leave the glass objects without IDs).

      I kept pushing with Exclusion Lists, and I think the failure to respect 'self' in a list might be a bug, but the objectID solution will work out just fine for this.

      Cheers.

      Comment

      Working...
      X