Describe the issue
With DirectX Driver set to D3DMetal, QEMURenderServer aborts about 20 seconds into launching a Direct3D 11 game. Metal rejects a texture view that D3DMetal constructs, and Metal's validation calls abort().
The game then exits and Civilization V falls back to its DirectX 9 executable, so from inside the guest the failure looks like "the game won't start in DX11".
Configuration
- UTM 5.0.5 (124) Beta
- macOS 27.0 (26A428), Mac16,11 (M4 Pro, 64 GB), SIP enabled
- Display:
virtio-ramfb-gl (GPU Supported)
- Renderer Backend: ANGLE (Metal); Vulkan Driver: MoltenVK; DirectX Driver: D3DMetal
- Guest: Windows 11 Home ARM64 build 26200, UTM Guest Tools 0.1.273
- Guest display driver:
viogpu3d / neptune_umd.dll 100.6.101.58000. dxdiag reports Direct3D Acceleration: Enabled, feature levels 12_1–9_x, no problems found.
Steps to reproduce
- Windows 11 ARM64 guest with the experimental graphics driver from Guest Tools.
- Set DirectX Driver to D3DMetal, restart the VM.
- Install Sid Meier's Civilization V (Steam app 8930).
- Run
CivilizationV_DX11.exe.
Result
The process runs and responds for ~20 s while shaders compile, then QEMURenderServer aborts:
Exception Type: EXC_CRASH (SIGABRT)
Triggered by Thread: 7, Dispatch queue: Async Queue
Code Type: X86-64 (Translated)
4 libsystem_c.dylib __assert_rtn + 314
6 Metal MTLReportFailure + 532
7 Metal _MTLMessageContextEndNewNSErrorOrAbort(...) + 1371
8 Metal _mtlValidateArgumentsForTextureViewOnDevice + 595
9 IOGPU -[IOGPUMetalTexture initWithTextureInternal:pixelFormat:textureType:levels:slices:swizzle:compressedView:] + 168
13 AGXMetalG16X -[AGXTexture newTextureViewWithPixelFormat:textureType:levels:slices:swizzle:] + 99
14 D3DMetal D3DMTexture::GetView(D3DMTextureViewDesc&, DXGI_FORMAT) + 572
So GetView requests a pixel format / texture type combination that Metal's argument validation rejects for a texture view, and Metal aborts the process rather than returning an error.
Note on architecture
The crashing worker is X86-64 (Translated) and loads Frameworks/D3DMetal.framework (com.elppa.D3DMetal 3.0) under Rosetta, while Frameworks/d3dmetal-native.framework is also loaded in the same process. If the native build is meant to be selected on Apple Silicon, it is not being used here.
With DXMT instead
The same game crashes QEMURenderServer a different way — at process start, in sandbox setup ("Process is not in an inherited sandbox"), matching #7716. So neither DirectX backend gets this title rendering.
Full crash report attached.
QEMURenderServer-2026-09-17-133040.txt
Describe the issue
With DirectX Driver set to D3DMetal,
QEMURenderServeraborts about 20 seconds into launching a Direct3D 11 game. Metal rejects a texture view that D3DMetal constructs, and Metal's validation callsabort().The game then exits and Civilization V falls back to its DirectX 9 executable, so from inside the guest the failure looks like "the game won't start in DX11".
Configuration
virtio-ramfb-gl (GPU Supported)viogpu3d/neptune_umd.dll100.6.101.58000. dxdiag reports Direct3D Acceleration: Enabled, feature levels 12_1–9_x, no problems found.Steps to reproduce
CivilizationV_DX11.exe.Result
The process runs and responds for ~20 s while shaders compile, then
QEMURenderServeraborts:So
GetViewrequests a pixel format / texture type combination that Metal's argument validation rejects for a texture view, and Metal aborts the process rather than returning an error.Note on architecture
The crashing worker is
X86-64 (Translated)and loadsFrameworks/D3DMetal.framework(com.elppa.D3DMetal3.0) under Rosetta, whileFrameworks/d3dmetal-native.frameworkis also loaded in the same process. If the native build is meant to be selected on Apple Silicon, it is not being used here.With DXMT instead
The same game crashes
QEMURenderServera different way — at process start, in sandbox setup ("Process is not in an inherited sandbox"), matching #7716. So neither DirectX backend gets this title rendering.Full crash report attached.
QEMURenderServer-2026-09-17-133040.txt