Arnold for 3ds Max Forum
Rendering with Arnold in 3ds Max using the MaxtoA plug-in.
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Object_id through Glass/ transmission

Message 1 of 3
294 Views, 2 Replies

Object_id through Glass/ transmission

Im making an animation in 3Dsmax, In the Standard Surface material I activated Transmit AOVs.

All the layers are working right (specular, coat, alpha, diffuse, etc) except the object_id. When object is behind the glass, is completely black.

There is a way how to make the object_id work though glass?

Labels (3)
Message 2 of 3
in reply to: osukas

The quick way.

You can parse out a custom beauty through Emission and either Arnold ray switcher or my OSL RPRaySwitch shader.
Note this is not doable through a custom AOV due to the fact that Object IDs overwrite the glass, so you need a multi ray type solution.


Message 3 of 3
in reply to: osukas

Thanks, the Ray Switcher will be useful for other stuff I have to do.

Your answer gave me an idea.


I used a Switch Shader for my object (Luckily my scene has few elements). Used an Integer Value to control all my switches. For Channel 0 I used the Object ID, and for Channel 1 the Main Shaders.

Instead of doing 2 glass Shaders, I used the Integer to Multiply my COAT and SPECULAR values, so the glass is clean when I use INT 0, and only get transmission data. Tested it and my mask rendered very fast.

Curious question, I saw that the shaders you´re using are Physical Material, instead of Arnold Standard Surface. Physical works better in Max than the Standard Surface? (Im new using arnold)

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Technology Administrators

Autodesk Design & Make Report