Change how WinPixEventRuntime.dll is used under D3D12/Windows. (#14600)

* GPU: D3D12: Missing WinPixEventRuntime.dll now logs warning at device creation time.
* GPU: D3D12: Debug label functions are now a no-op when WinPixEventRuntime.dll is missing.
* Docs: GPU: Debug function documentation now notes WinPixEventRuntime.dll is required under D3D12.
This commit is contained in:
Jakub Wasilewski
2025-12-05 18:40:57 +01:00
committed by GitHub
parent a3992f504c
commit f5ea8805e1
2 changed files with 24 additions and 38 deletions

View File

@@ -2945,9 +2945,9 @@ extern SDL_DECLSPEC void SDLCALL SDL_SetGPUTextureName(
*
* Useful for debugging.
*
* On Direct3D 12, using SDL_InsertGPUDebugLabel will cause validation errors
* unless you have WinPixEventRuntime.dll in your PATH. See
* [here](https://devblogs.microsoft.com/pix/winpixeventruntime/)
* On Direct3D 12, using SDL_InsertGPUDebugLabel requires WinPixEventRuntime.dll
* to be in your PATH or in the same directory as your executable.
* See [here](https://devblogs.microsoft.com/pix/winpixeventruntime/)
* for instructions on how to obtain it.
*
* \param command_buffer a command buffer.
@@ -2968,9 +2968,9 @@ extern SDL_DECLSPEC void SDLCALL SDL_InsertGPUDebugLabel(
* Each call to SDL_PushGPUDebugGroup must have a corresponding call to
* SDL_PopGPUDebugGroup.
*
* On Direct3D 12, using SDL_PushGPUDebugGroup will cause validation errors
* unless you have WinPixEventRuntime.dll in your PATH. See
* [here](https://devblogs.microsoft.com/pix/winpixeventruntime/)
* On Direct3D 12, using SDL_PushGPUDebugGroup requires WinPixEventRuntime.dll
* to be in your PATH or in the same directory as your executable.
* See [here](https://devblogs.microsoft.com/pix/winpixeventruntime/)
* for instructions on how to obtain it.
*
* On some backends (e.g. Metal), pushing a debug group during a
@@ -2992,9 +2992,9 @@ extern SDL_DECLSPEC void SDLCALL SDL_PushGPUDebugGroup(
/**
* Ends the most-recently pushed debug group.
*
* On Direct3D 12, using SDL_PopGPUDebugGroup will cause validation errors
* unless you have WinPixEventRuntime.dll in your PATH. See
* [here](https://devblogs.microsoft.com/pix/winpixeventruntime/)
* On Direct3D 12, using SDL_PopGPUDebugGroup requires WinPixEventRuntime.dll
* to be in your PATH or in the same directory as your executable.
* See [here](https://devblogs.microsoft.com/pix/winpixeventruntime/)
* for instructions on how to obtain it.
*
* \param command_buffer a command buffer.