Rhino BETA Feature: Transparency Color and Refraction

In the Rhino BETA, 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 anticipate how they would appear in the final Render. The difference is especially striking when visualizing gemstones, where realism truly matters.

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.

This works on both Windows and Mac, and on Windows in both the OpenGL and Direct3D display pipelines.

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 BETA 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).

The refraction algorithm was reworked during the BETA. Thin planar objects such as window panes refract correctly now, thicker glass no longer reads as a solid block of ice, and glass no longer shows the self-reflection artifacts it used to. Quality also holds up while you tumble the view rather than dropping to a rougher approximation.

Keep in mind that screen-space refraction is still an 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

Try It

  1. Download the Rhino BETA for Windows or Mac.
  2. Download and open a model with glass or gem materials in it — there is a ready-made one in the Try It section of the Transparency feature page.
  3. Double-click the Perspective viewport title to maximize the view.
  4. Click the dropdown arrow on Perspective and select Rendered. The glass objects will appear transparent, colored, and refracting.
  5. Tumble the view to see the effect update interactively.

Current known limitations

  • Rendered mode slows down the more transparent objects are in the scene.
  • Clarity — frosted or blurred transparency — is not supported by screen-space refraction. Use Raytraced mode or Render for that.
  • Transparent objects sitting next to or partially occluded by opaque objects can still show occasional artifacts, though the sorting that caused color transparency to drop out at certain camera angles has been fixed.

Download the Rhino BETA and Try It Out!

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

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.

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.

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?)

RH-89019 is fixed in Rhino WIP

A catch-up on this thread, since a few things above are now out of date.

Direct3D is supported. @Jean-Go and @Holo — transparency color and refraction both work in the Direct3D pipeline now, since the February BETA builds. That covers RH-88182 (Direct3D: Refraction not supported) and RH-89019 (Direct3D: Glass and Gem materials have no colors). The note quoted above about refraction possibly not making it to V9 no longer applies.

Refraction quality was reworked. @Holo, your observation about thickness in post #4 is largely handled — thin planar objects like window panes refract properly now, and thicker glass no longer looks like a solid block of ice. The refraction algorithm was rewritten during the BETA, which also cleared up the glass self-reflection artifacts.

Also fixed since this post went up: colored transparency dropping out at certain camera angles, and the pink glass issue on Mac — that one is RH-87852, not RH-87750 as cited in post #6.

Still not supported: clarity, i.e. frosted or blurred transparency, in screen-space refraction. That one is tracked for after 9.0. For frosted glass, Raytraced mode or the Render command is still the way.

The top post has been updated with all of this, plus a short Try It section. Thanks everyone for the testing and the sample files — the D3D ring model in particular drove a good chunk of this.