Rhino BETA Feature: Direct3D Display

Rhion 9.0.26006.14225 in Direct3D There is a Draw Problem with DrawMeshShaded(Mesh mesh, DisplayMaterial material, int faceIndices); and e.Display.DrawMeshFalseColors();

Hi @taraskydon

Please provide examples of what you’re doing so that we don’t have to type everything up, guessing about what’s being done and how. It’s quicker and more efficient if we can just run something and place breakpoints. It also means I’ll be able to look at things “now” (sooner than later).

Thanks,

-Jeff

Rhion 9.0.26006.14225 Unfortunately, this compilation is very unstable and GH C# node does not work in Grasshopper. I will write a test when a stable version appears. :sweat_smile:

Hi Taraskydon -

I’m not sure what this means. Have you reported a problem in a different thread?
-wim

No, I haven’t created a thread to address this issue. It’s very obvious. I don’t think it’s worth my time.

CSMeshShadeFaceInRhino9.zip (430.4 KB) I created a test. Please check it on your side. @wim @jeff

CSProjectTemplate5.rhp (41 KB) command TestConduitMeshShaded

I get display artifacts when moving an object:


2026-01-14_PatchFail.3dm (3.3 MB)

Sysinfo

Rhino 9 SR0 2026-1-13 (Rhino WIP, 9.0.26013.12305, Git hash:master @ 8c202752270c241e0a0b2e7326d1f869fc570aa1)
License type: Commercial, Build 2026-01-13
License details: Cloud Zoo
Expires on: 2026-02-27

Windows 11 (10.0.26200 SR0.0) or greater (Physical RAM: 32GB)
.NET 9.0.1

Computer platform: DESKTOP

Standard graphics configuration using DirectX
Primary display: NVIDIA GeForce RTX 2070 (NVidia) Memory: 8GB, Driver date: 12-2-2025 (M-D-Y). DirectX(11)
> Accelerated graphics device with 4 adapter port(s)
- Windows Main Display attached to adapter port #0

Secondary graphics devices.
None found.

DirectX Settings
Safe mode: Off

OpenBLAS: OpenBLAS 0.3.30 DYNAMIC_ARCH NO_AFFINITY Zen MAX_THREADS=64.

Rhino plugins that do not ship with Rhino

Rhino plugins that ship with Rhino
C:\Program Files\Rhino 9 WIP\Plug-ins\Commands.rhp “Commands” 9.0.26013.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\WebBrowser.rhp “WebBrowser”
C:\Program Files\Rhino 9 WIP\Plug-ins\rdk.rhp “Renderer Development Kit”
C:\Program Files\Rhino 9 WIP\Plug-ins\RhinoScript.rhp “RhinoScript”
C:\Program Files\Rhino 9 WIP\Plug-ins\IdleProcessor.rhp “LeerlaufProzessor”
C:\Program Files\Rhino 9 WIP\Plug-ins\UpdatesAndStatistics\UpdatesAndStatistics.rhp “UpdatesAndStatistics” 9.0.26013.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\RhinoRenderCycles.rhp “Rhino Render” 9.0.26013.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\RhinoRender.rhp “Vorgänger Rhino-Renderer”
C:\Program Files\Rhino 9 WIP\Plug-ins\rdk_etoui.rhp “RDK_EtoUI” 9.0.26013.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\NamedSnapshots.rhp “Snapshots”
C:\Program Files\Rhino 9 WIP\Plug-ins\MeshCommands.rhp “MeshCommands” 9.0.26013.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\RhinoCycles.rhp “RhinoCycles” 9.0.26013.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\Toolbars\Toolbars.rhp “Toolbars” 9.0.26013.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\3dxrhino.rhp “3Dconnexion 3D Mouse”
C:\Program Files\Rhino 9 WIP\Plug-ins\Displacement.rhp “Displacement”
C:\Program Files\Rhino 9 WIP\Plug-ins\SectionTools.rhp “SectionTools”

I’m actually working on this exact problem now… should be fixed today.

-J

I wonder if D3D support will make it easier to run Rhino under linux? Valve has put significant work into making Proton which essentially turns Direct3D calls into Vulkan (amongst other things). Their goal was allowing Windows games to run on Linux (esp their SteamDeck) but a 3D api is a 3D api whether you use it for games or CAD apps so I would think it could be possible that Proton would be a good way to run Rhino on linux.

It might also be a good idea to activate shadows sooner rather than later.
Then, if there are any problems with shadows, they can be fixed without hassle.

I hope there will be proper accurate shadows now in viewport with D3D. That always was a Rhino weakness..

@jeff Hello. Are you experiencing the same issues as I demonstrated in the video? Rhino BETA Feature: Direct3D Display - #49 by taraskydon

Hey @taraskydon

I can see the issue using your example plugin…thanks! However, I haven’t gotten to looking into it yet… I’m hoping to take a look some time today…but my Monday inbox is slammed atm… I’ll let you know how it goes. My guess is that this is something pretty simple, but won’t know until I look.

Thanks,

-J

Here the Direct3D is pretty unusable at the moment on the Dino SubD file. When I select an object or click in another view the (other) objects turn white as shown here:

Windows 11, RTX2070 latest studio drivers.
Plugins: Datasmith exporter (for TwinMotion and Unreal)

I’ll PM you the file if you want to mess around with it.
But I am getting 112 fps vs 27fps in OpenGL, so I am pretty stoked about this.
And it looks good, I just wish for the great colored transparent objects that you implemented for OpenGL :slight_smile:

Ya, I’m tracking this exact issue now… something broke last week.

-J

This will be fixed in tomorrow’s BOTD. If you’re not setup to get bleeding edge releases, DM me and I’ll provide you a link to the installer once it’s available (assuming you’re willing to risk using a possibly unstable build).

-J

Hey @Holo

Looks like I’m going to need the file… I’m not seeing what you’re describing, and it’s not what I thought it was… Your screenshot made me think initially that you were using Monochrome display mode…which is what is broken atm… But reading your comments again, it sounds like things just all turn white (as if you were in Monochrome or Arctic), which implies you’re in some kind of Shaded or Rendered mode ??? …which I’m not seeing here.

So please provide file and exact steps to reproduce…and any display mode changes you might have made.

Thanks,

-J

Sure thing, sent in DM.

I have a problem with flickering text in D3D, OpenGL is fine.

sys info

Rhino 9 SR0 2026-1-21 (Rhino WIP, 9.0.26021.12305, Git hash:master @ 25816ab94808fc4b336c4a250d80c07f7961795e)
License type: Commercial, build 2026-01-21
License details: Cloud Zoo
Expires on: 2026-03-07

Windows 11 (10.0.26200 SR0.0) or greater (Physical RAM: 63GB)
.NET 9.0.1

Computer platform: LAPTOP - Plugged in [100% battery remaining]

Hybrid graphics configuration using OpenGL
Primary display: Intel(R) Arc™ Pro Graphics (Intel) Memory: 2GB, Driver date: 2-26-2025 (M-D-Y).

Integrated accelerated graphics device with 4 adapter port(s)

  • Windows Main Display is laptop’s integrated screen or built-in port
  • Secondary monitor attached to adapter port #1
    Primary OpenGL: NVIDIA RTX 2000 Ada Generation Laptop GPU (NVidia) Memory: 8GB, Driver date: 10-12-2025 (M-D-Y). OpenGL Ver: 4.6.0 NVIDIA 581.60

Integrated accelerated graphics device (shares primary device ports)

  • Laptop’s primary display device

OpenGL Settings
Safe mode: Off
Use accelerated hardware modes: On
GPU Tessellation is: On
Redraw scene when viewports are exposed: On
Graphics level being used: OpenGL 4.6 (primary GPU’s maximum)

Anti-alias mode: 8x
Mip Map Filtering: Linear
Anisotropic Filtering Mode: High

Vendor Name: NVIDIA Corporation
Render version: 4.6
Shading Language: 4.60 NVIDIA
Driver Date: 10-12-2025
Driver Version: 32.0.15.8160
Maximum Texture size: 32768 x 32768
Z-Buffer depth: 24 bits
Maximum Viewport size: 32768 x 32768
Total Video Memory: 8188 MB

OpenBLAS: OpenBLAS 0.3.30 DYNAMIC_ARCH NO_AFFINITY Haswell MAX_THREADS=64.

Rhino plugins that do not ship with Rhino
C:\Users\piotr\AppData\Roaming\McNeel\Rhinoceros\packages\9.0\NVIDIADenoiser\0.4.3\NVIDIADenoiser.Windows.rhp “NVIDIADenoiser.Windows” 0.4.3.0

Rhino plugins that ship with Rhino
C:\Program Files\Rhino 9 WIP\Plug-ins\SolidTools.rhp “SolidTools”
C:\Program Files\Rhino 9 WIP\Plug-ins\Commands.rhp “Commands” 9.0.26021.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\WebBrowser.rhp “WebBrowser”
C:\Program Files\Rhino 9 WIP\Plug-ins\rdk.rhp “Renderer Development Kit”
C:\Program Files\Rhino 9 WIP\Plug-ins\RhinoScript.rhp “RhinoScript”
C:\Program Files\Rhino 9 WIP\Plug-ins\RhinoBonusTools.rhp “Rhino Bonus Tools”
C:\Program Files\Rhino 9 WIP\Plug-ins\AnimationTools.rhp “AnimationTools”
C:\Program Files\Rhino 9 WIP\Plug-ins\IdleProcessor.rhp “IdleProcessor”
C:\Program Files\Rhino 9 WIP\Plug-ins\UpdatesAndStatistics\UpdatesAndStatistics.rhp “UpdatesAndStatistics” 9.0.26021.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\RhinoRenderCycles.rhp “Rhino Render” 9.0.26021.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\RhinoRender.rhp “Legacy Rhino Render”
C:\Program Files\Rhino 9 WIP\Plug-ins\rdk_etoui.rhp “RDK_EtoUI” 9.0.26021.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\NamedSnapshots.rhp “Snapshots”
C:\Program Files\Rhino 9 WIP\Plug-ins\MeshCommands.rhp “MeshCommands” 9.0.26021.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\IronPython\RhinoDLR_Python.rhp “IronPython” 9.0.26021.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\RhinoCycles.rhp “RhinoCycles” 9.0.26021.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\Grasshopper\GrasshopperPlugin.rhp “Grasshopper” 9.0.26021.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\Toolbars\Toolbars.rhp “Toolbars” 9.0.26021.12305
C:\Program Files\Rhino 9 WIP\Plug-ins\3dxrhino.rhp “3Dconnexion 3D Mouse”
C:\Program Files\Rhino 9 WIP\Plug-ins\Displacement.rhp “Displacement”
C:\Program Files\Rhino 9 WIP\Plug-ins\SectionTools.rhp “SectionTools”

Also, the line quality in D3D is very poor compared to Open GL:

D3D

Open GL

every segment of a dashed line is clear here.

Hello. I checked the fix (9.0.26021.12305, 2026-01-21) and now there are no problems with rendering the Mesh in Direct3D. But now there is a problem with rendering delays, both in Direct3D and in OpenGL. ! Video comparison of Rhino 8 and Rhino 9