[PR #12677] DxEngine: Fix shader compilation on pre-D3D11 hardware #29186

Open
opened 2026-01-31 09:33:20 +00:00 by claunia · 0 comments
Owner

Original Pull Request: https://github.com/microsoft/terminal/pull/12677

State: closed
Merged: Yes


  • Drop engine support for DirectX 9.1
    Practically no one has such old hardware anymore and AtlasEngine additionally
    drops support for 10.0. The fallback also didn't work properly,
    because the FeatureLevels array failed to include 9.2 and 9.3.
    We'll simply fall back to WARP on all such devices.
  • Optimize shaders during compilation
    The two new flags increase shader performance sometimes significantly.
  • Fix shader feature level flags
    D3D feature level 10.0 only support 4.0 and 10.1 only 4.1 shaders.

PR Checklist

Validation Steps Performed

  • Add WindowsTerminal.exe in dxcpl.exe
  • Add a basic experimental.pixelShaderPath
  • All forced feature levels between 9_1 and 11_1 render as expected
**Original Pull Request:** https://github.com/microsoft/terminal/pull/12677 **State:** closed **Merged:** Yes --- * Drop engine support for DirectX 9.1 Practically no one has such old hardware anymore and AtlasEngine additionally drops support for 10.0. The fallback also didn't work properly, because the `FeatureLevels` array failed to include 9.2 and 9.3. We'll simply fall back to WARP on all such devices. * Optimize shaders during compilation The two new flags increase shader performance sometimes significantly. * Fix shader feature level flags D3D feature level 10.0 only support 4.0 and 10.1 only 4.1 shaders. ## PR Checklist * [x] Closes #12655 * [x] I work here * [x] Tests added/passed ## Validation Steps Performed * Add `WindowsTerminal.exe` in `dxcpl.exe` * Add a basic `experimental.pixelShaderPath` * All forced feature levels between `9_1` and `11_1` render as expected ✅
claunia added the pull-request label 2026-01-31 09:33:20 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#29186