How to set the light scattering effect in Composer?

I added omnisurface material to prim in usd composer and constructed the glass model by setting abbe value in Transmission, but the glass did not have the ideal light scattering effect under light.

@yang110462 just out of curiosity, what’s the desired effect vs what you are seeing? and what renderer have you tried and/or are you using in Composer?

I used an mdl renderer in composer. According to my expectation, the correct dispersion phenomenon is that the white light passing through the prism will be dispersed into multiple colored light due to the different wavelength. In fact, the prism set by me will indeed have the prism effect when observed directly, but in the composer’s scene, the prism is more like an obstacle, and the light seems to be unable to pass through the prism and only has the shadow effect.

to clarify, the renderer i was referring to was the option for viewport display. RTX-Realtime, RTX-Interactive (path tracing), Iray, etc. the reason being some renderers are more accurate than others in representing realistic behaviors.

here is a thread that may have some pointers for you:

and from the doc with some addition insights thatcmay be relevant:

https://docs.omniverse.nvidia.com/materials-and-rendering/latest/materials.html?highlight=abbe#transmission-specular-transmission

@yang110462 ,

I tested this in Iray and I believe this is still not possible even in Path Tracer yet (caustics yes in all mode be it accurate or other wise but this abbe dispersion only visible in Iray ). You will also notice that in other rendering mode except Iray, the light does not pass through to the other side, the only way to do this is to turn off cast shadow on the glass object.

https://forums.developer.nvidia.com/t/can-iray-in-omniverse-render-glass-dispersion-like-offline-render-should/253985

I’m not sure. Do you mean I should set the ray tracing rendering mode? If I understand you correctly, I think I have tested this and it still doesn’t work.

I saw the content shown in the link you attached, which is exactly the effect I want, but I have set abbe to a value greater than 1 in OmniSurfaceBase, but there is still no effect, I would like to ask you how to set the lighting and other parameters? I would appreciate it if you could send me a template!

@yang110462

I found the file and have attached it below. Just render in Iray and the effect should be visible.

Test_light_prism_001.zip (105.9 KB)

Thank you very much for your help! There is also a small problem, I have not used iray renderer. After searching some materials, I still have not figured out how to use iray renderer to render this usd scene. Is iray integrated into USD Composer as a plug-in? Or do you want to download a separate application with integrated iray renderer to open usd files?

The Iray comes by default, just need to switch rendering engine by clicking the drop down in the screenshot below. Select RTX accurate Iray.

image

I can now see the correct results! This problem has been bothering me for a long time, but it is finally solved! I really appreciate you, brother!

@yang110462

Glad to help, just a note on using Iray to render… its pretty unstable and prone to crash your system if your vram is max out so don’t be surprised if it do as you can see it already max out your vram on your 3080TI .

Yes, I noticed that too, and the rendering process is slow at the moment, so I’m going to reduce the rendering pressure on the GPU by lowering some parameters.

RTX Accurate or IRAY is the most accurate rendering engine of the three we currently offer, but it is the oldest and the slowest rendering engine.

1 Like