<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/opengl-on-directx-conformance-upstreaming-of-the-d3d12-driver-jkxe1lgqg" -->

---
title: OpenGL on DirectX: Conformance & upstreaming of the...
description: Collabora and Microsoft have passed the OpenGL 3.3 conformance tests using a D3D12 mapping layer, and the D3D12 driver has been upstreamed into Mesa 3D. The...
canonical: https://daily.dev/posts/opengl-on-directx-conformance-upstreaming-of-the-d3d12-driver-jkxe1lgqg
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: OpenGL on DirectX: Conformance & upstreaming of the D3D12 driver | daily.dev
og:description: Collabora and Microsoft have passed the OpenGL 3.3 conformance tests using a D3D12 mapping layer, and the D3D12 driver has been upstreamed into Mesa 3D. The...
og:url: https://daily.dev/posts/opengl-on-directx-conformance-upstreaming-of-the-d3d12-driver-jkxe1lgqg
og:image: https://api.daily.dev/og/posts/JkxE1lGQG.png
og:image:alt: OpenGL on DirectX: Conformance & upstreaming of the D3D12 driver
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# OpenGL on DirectX: Conformance & upstreaming of the D3D12 driver

**[Collabora Blog](https://daily.dev/sources/collabora)** · 7 min read · 0 upvotes · 0 comments

## Summary

Collabora and Microsoft have passed the OpenGL 3.3 conformance tests using a D3D12 mapping layer, and the D3D12 driver has been upstreamed into Mesa 3D. The work enables OpenGL (and OpenCL) support on hardware without native OpenGL drivers, most notably allowing Photoshop to run on Windows on ARM. Conformance was achieved cleanly on WARP (November 2020) and NVIDIA (February 2021) configurations. The post details the unique challenges of layered implementations — including bugs in D3D12 runtimes, vendor drivers, and hardware — and explains how WARP's Microsoft ownership made it the most tractable target. The D3D12 driver was merged via Mesa MR 7477, with CI testing added on top of WARP to catch regressions. WSL support is noted as the next milestone.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.collabora.com/news-and-blog/news-and-events/opengl-directx-conformance-upstreaming-d3d12.html>

## Questions this post answers

### Which GPU configurations pass the OpenGL 3.3 CTS when running on top of D3D12 via Mesa's D3D12 driver?

The Mesa/D3D12 layer passes the OpenGL 3.3 CTS cleanly on two configurations: WARP (Microsoft's software rasterizer, conformant since November 24, 2020) and NVIDIA (conformant since February 26, 2021). An Intel GPU submission was halted due to driver failures and was pending updated Intel drivers. Vendor-driver bugs on other hardware remain an open challenge for layered implementations.

_Engineers targeting OpenGL on Windows ARM track driver conformance updates like these on daily.dev._

### What Mesa merge request upstreamed the D3D12 OpenGL driver?

The D3D12 driver was upstreamed into Mesa via Merge Request 7477, with the OpenCL compiler following in Merge Request 7565. After upstreaming, the D3D12 driver was added to Mesa's GitLab CI pipeline, running tests on top of WARP to catch regressions early.

_Developers following Mesa upstream changes find the relevant MRs and context faster on daily.dev._

### Why is passing the OpenGL CTS on a layered implementation like GLon12 harder than on a native driver?

Layered implementations face additional bug sources beyond their own driver code: bugs in the D3D12 runtime (fixable with Microsoft's help), and bugs in third-party vendor drivers or hardware that are opaque and uncontrollable. Unlike native drivers, layered implementations cannot easily file waivers for vendor-driver issues, and workarounds are risky because it's unclear when underlying fixes will ship or which hardware/software combinations are affected.

_Graphics engineers navigating conformance for layered or cross-API drivers stay current on daily.dev._

## Similar posts on daily.dev

- [WSL, WINE updates speed cross-OS app performance](https://daily.dev/posts/wsl-wine-updates-speed-cross-os-app-performance-qlnrurfzl) · The Register · 0 upvotes · 0 comments
- [Imagination Talks Up Their Open-Source Vulkan Driver, Volcanic Architecture Plans](https://daily.dev/posts/imagination-talks-up-their-open-source-vulkan-driver-volcanic-architecture-plans-4jp2nhfyg) · Phoronix · 0 upvotes · 0 comments
- [Cracking Windows Open: Porting RADV to WIN32](https://daily.dev/posts/cracking-windows-open-porting-radv-to-win32-f2n59xdec) · Hacker News · 0 upvotes · 0 comments

---

Tags: [#mesa](https://daily.dev/tags/mesa)

[View this post on daily.dev](https://daily.dev/posts/opengl-on-directx-conformance-upstreaming-of-the-d3d12-driver-jkxe1lgqg)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"OpenGL on DirectX: Conformance & upstreaming of the D3D12 driver","url":"https://daily.dev/posts/opengl-on-directx-conformance-upstreaming-of-the-d3d12-driver-jkxe1lgqg","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/opengl-on-directx-conformance-upstreaming-of-the-d3d12-driver-jkxe1lgqg"},"datePublished":"2026-08-11T08:56:17.404Z","dateModified":"2026-08-11T09:34:01.603Z","description":"Collabora and Microsoft have passed the OpenGL 3.3 conformance tests using a D3D12 mapping layer, and the D3D12 driver has been upstreamed into Mesa 3D. The...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/1f0d61bf7c77bcefc9e0fe71043d45c0?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/1f0d61bf7c77bcefc9e0fe71043d45c0?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Collabora Blog","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Collabora Blog","logo":"https://media.daily.dev/image/upload/s--ZGZ0FjqS--/f_auto,q_auto/v1786438306/logos/collabora?_a=BAMAMicg0","url":"https://daily.dev/sources/collabora"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/opengl-on-directx-conformance-upstreaming-of-the-d3d12-driver-jkxe1lgqg","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"mesa","timeRequired":"PT7M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Collabora Blog","item":"https://daily.dev/sources/collabora"},{"@type":"ListItem","position":3,"name":"OpenGL on DirectX: Conformance & upstreaming of the D3D12 driver"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/opengl-on-directx-conformance-upstreaming-of-the-d3d12-driver-jkxe1lgqg#faq","mainEntity":[{"@type":"Question","name":"Which GPU configurations pass the OpenGL 3.3 CTS when running on top of D3D12 via Mesa's D3D12 driver?","acceptedAnswer":{"@type":"Answer","text":"The Mesa/D3D12 layer passes the OpenGL 3.3 CTS cleanly on two configurations: WARP (Microsoft's software rasterizer, conformant since November 24, 2020) and NVIDIA (conformant since February 26, 2021). An Intel GPU submission was halted due to driver failures and was pending updated Intel drivers. Vendor-driver bugs on other hardware remain an open challenge for layered implementations. Engineers targeting OpenGL on Windows ARM track driver conformance updates like these on daily.dev."}},{"@type":"Question","name":"What Mesa merge request upstreamed the D3D12 OpenGL driver?","acceptedAnswer":{"@type":"Answer","text":"The D3D12 driver was upstreamed into Mesa via Merge Request 7477, with the OpenCL compiler following in Merge Request 7565. After upstreaming, the D3D12 driver was added to Mesa's GitLab CI pipeline, running tests on top of WARP to catch regressions early. Developers following Mesa upstream changes find the relevant MRs and context faster on daily.dev."}},{"@type":"Question","name":"Why is passing the OpenGL CTS on a layered implementation like GLon12 harder than on a native driver?","acceptedAnswer":{"@type":"Answer","text":"Layered implementations face additional bug sources beyond their own driver code: bugs in the D3D12 runtime (fixable with Microsoft's help), and bugs in third-party vendor drivers or hardware that are opaque and uncontrollable. Unlike native drivers, layered implementations cannot easily file waivers for vendor-driver issues, and workarounds are risky because it's unclear when underlying fixes will ship or which hardware/software combinations are affected. Graphics engineers navigating conformance for layered or cross-API drivers stay current on daily.dev."}}]}
```

