[D3D12] Include recent D3D12 headers from the Microsoft GitHub

This commit is contained in:
Triang3l 2026-01-14 23:05:08 +03:00
parent 9535e610b0
commit c4e1242fa2
6 changed files with 40 additions and 5 deletions

3
.gitmodules vendored
View file

@ -85,3 +85,6 @@
[submodule "third_party/VulkanMemoryAllocator"]
path = third_party/VulkanMemoryAllocator
url = https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git
[submodule "third_party/DirectX-Headers"]
path = third_party/DirectX-Headers
url = https://github.com/microsoft/DirectX-Headers.git

View file

@ -13,11 +13,17 @@
// Must be included before D3D and DXGI for things like NOMINMAX.
#include "xenia/base/platform_win.h"
// Include the up to date versions of the headers of DXGI and Direct3D 12 rather
// than the ones from the Windows SDK before other headers that may also
// potentially include their headers.
#include "xenia/ui/dxgi_include_win.h"
#include "third_party/DirectX-Headers/include/directx/d3d12.h"
#include "third_party/DirectX-Headers/include/directx/d3d12sdklayers.h"
#include <DXProgrammableCapture.h>
#include <d3d12.h>
#include <d3d12sdklayers.h>
#include <d3dcompiler.h>
#include <dxgi1_5.h>
#include <dxgidebug.h>
// For Microsoft::WRL::ComPtr.
#include <wrl/client.h>

View file

@ -0,0 +1,23 @@
/**
******************************************************************************
* Xenia : Xbox 360 Emulator Research Project *
******************************************************************************
* Copyright 2026 Ben Vanik. All rights reserved. *
* Released under the BSD license - see LICENSE in the root for more details. *
******************************************************************************
*/
#ifndef XENIA_UI_DXGI_INCLUDE_WIN_H_
#define XENIA_UI_DXGI_INCLUDE_WIN_H_
// Must be included before Windows headers for definitions like NOMINMAX.
#include "xenia/base/platform_win.h"
// Include the up to date versions of the DXGI header dependencies rather than
// the ones from the Windows SDK before including the DXGI header.
#include "third_party/DirectX-Headers/include/directx/dxgicommon.h"
#include "third_party/DirectX-Headers/include/directx/dxgiformat.h"
#include <dxgi1_5.h>
#endif // XENIA_UI_DXGI_INCLUDE_WIN_H_

View file

@ -39,7 +39,8 @@
// Windows handle types.
#include "xenia/base/platform_win.h"
#include <dxgi.h>
#include "xenia/ui/dxgi_include_win.h"
#include <wrl/client.h>
#endif // XE_PLATFORM

View file

@ -19,8 +19,9 @@
// Must be included before Windows headers for things like NOMINMAX.
#include "xenia/base/platform_win.h"
#include "xenia/ui/dxgi_include_win.h"
#include <ShellScalingApi.h>
#include <dxgi.h>
namespace xe {
namespace ui {

1
third_party/DirectX-Headers vendored Submodule

@ -0,0 +1 @@
Subproject commit 33374754f65baac0500dda6187e371136357246f