Rhino WIP Feature: Transparency Color and Refraction

In the Rhino WIP, we’ve added transparency color and refraction support in the Rendered display mode.

What Is This Feature?

This feature makes transparent objects properly show their color in Rendered mode. Transparent objects now also bend light for a more realistic effect.

Why Transparency Color And Refraction?

Transparency and refraction are supported in Raytraced mode or in the built-in Renderer. However, final Render images can take time to calculate, making it hard to iterate and make adjustments on the fly.

Rendered mode is great as a quick visualization tool. However, transparent objects didn’t look or behave realistically, making it harder to predict how they would appear in the final Render. This was especially missing when visualizing gemstones.

How It Works

You should not need to do anything differently from before. Simply enter Rendered mode and ensure a transparent object is visible in the viewport. The Glass or Gem materials from the Materials panel will have default IOR (index of refraction) values for this display feature to utilize.

More information

This feature ensures that transparent objects properly display their colors in Rendered mode. For example, a red, transparent object now actually appears red in the viewport and properly filters its color based on whatever color is seen through it.

In addition, Rhino WIP supports screen-space refraction. This effect approximates the bending of light through materials based on their index of refraction (e.g., glass, diamond, or water).

Keep in mind that screen-space refraction is only a crude approximation of the effect, and if you want the real deal, switch to Raytraced mode or the Render command.


Refracting clear diamond and a ruby

Current known limitations

  • Rendered mode slows down the more transparent objects are in the scene. To mitigate this, the effect is downgraded while manipulating the view.
  • There are some visual glitches in some cases when transparent objects are next to or partially occluded by opaque objects.

Download the Rhino WIP and Try It Out!

32 Likes

Hi @DavidEranen
This is great! Thanks for making it happen :flexed_biceps:
-Jakob

1 Like

Update: Refraction is now also supported on Mac!

-David

Just tested the latest WIP and stumbled upon this little gem when I did a check to see if finally colored glass was colored, and now it is so much more!!! Refraction was a real treat!.

Here is a super simple test just to see the effect.

One thing I noticed is that it doesn’t support thickness yet. But if I hollow it out physically then it looks fine. So it would be nice if thickness will be supported in the future.

2 Likes

I see some odd behavior with any transparency setting in Rendered.
Might deserve a separate (bug report) thread, but since it could be related to this topic I’ll share it here. Feel free to move it.

Steps to reproduce:

  • fresh start of Rhino9 WIP, new file, create some solids, assign a newly created material (vanilla plastic with only transparency changed to anything other than 0%)

Expected:

  • Solids with that material assigned should appear transparent.

Observed:

  • Solids turn magenta, the higher the transparency value, the stronger the magenta saturation. Object are not displayed as transparent.

Cross-check:

  • All things equal, in Raytraced the objects are correctly displayed as transparent.



SysInfo-FS_250609.txt (13.0 KB)

This is a known issue on MacOS, logged as RH-87750 Glass Renders Pink.

1 Like

Thanks Nathan!
Let me add that this is seemingly true for any transparency across all material types (Glass, Plastic, Custom …)

RH-87852 is fixed in Rhino WIP

There is no problem when using OpenGL, but it does not work properly when using Direct3D.

Hi Jean -

What doesn’t work properly? Can you post a simple 3dm file?
-wim

I think he is referring to both color and refraction on transparent materials like glass and gem (++)
This is what D3D looks like here:
latest build (9.0.25231.12305, 2025-08-19)

And openGL looks like this:

And raytraced for color comparison:

D3D ring.3dm (2.8 MB)

Hei -

I’m not seeing that on transparent plastic but put this on the list for the glass and gem materials.
RH-89019 Display:D3D: Color of Glass and Gem

That’s on the list as RH-88182 Direct3D: Refraction not supported
-wim

I see it says: “There is still a chance that the refraction feature won’t make it to V9.”

Please do what you can to implement this. Having this eye candy even if it only supports OpenGL is a great feature. (And then add it to the other pipelines as the development of R9 continues after release maybe?)

1 Like

RH-89019 is fixed in Rhino WIP

1 Like