2017-10-11 09:51:48 +02:00
|
|
|
#pragma once
|
|
|
|
|
2017-11-29 07:55:44 +01:00
|
|
|
#include "../dxgi/dxgi_include.h"
|
|
|
|
|
2017-10-11 09:51:48 +02:00
|
|
|
#include <d3d11_1.h>
|
2017-12-27 01:36:45 +01:00
|
|
|
|
|
|
|
// This is not defined in the mingw headers
|
|
|
|
#ifndef D3D11_1_UAV_SLOT_COUNT
|
|
|
|
#define D3D11_1_UAV_SLOT_COUNT 64
|
|
|
|
#endif
|
|
|
|
|
2018-01-12 15:38:07 +01:00
|
|
|
#ifndef D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL
|
|
|
|
#define D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL 0xFFFFFFFF
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifndef D3D11_KEEP_UNORDERED_ACCESS_VIEWS
|
|
|
|
#define D3D11_KEEP_UNORDERED_ACCESS_VIEWS 0xFFFFFFFF
|
|
|
|
#endif
|
|
|
|
|
2018-01-17 15:19:55 +01:00
|
|
|
#define D3D11_DXVK_USE_REMAINING_LAYERS 0xFFFFFFFF
|
|
|
|
#define D3D11_DXVK_USE_REMAINING_LEVELS 0xFFFFFFFF
|
|
|
|
|
2017-12-29 22:20:31 +01:00
|
|
|
// Most of these were copied from d3d11.h
|
2017-12-27 01:36:45 +01:00
|
|
|
// For some strange reason, we cannot use the structures
|
|
|
|
// directly, although others from the same header work.
|
2017-12-29 22:20:31 +01:00
|
|
|
// Some structures are missing from the mingw headers.
|
2018-03-06 18:34:34 +01:00
|
|
|
#ifndef _MSC_VER
|
2017-12-27 01:36:45 +01:00
|
|
|
typedef struct D3D11_FEATURE_DATA_THREADING {
|
|
|
|
BOOL DriverConcurrentCreates;
|
|
|
|
BOOL DriverCommandLists;
|
|
|
|
} D3D11_FEATURE_DATA_THREADING;
|
|
|
|
typedef struct D3D11_FEATURE_DATA_DOUBLES {
|
|
|
|
BOOL DoublePrecisionFloatShaderOps;
|
|
|
|
} D3D11_FEATURE_DATA_DOUBLES;
|
|
|
|
typedef struct D3D11_FEATURE_DATA_FORMAT_SUPPORT {
|
|
|
|
DXGI_FORMAT InFormat;
|
|
|
|
UINT OutFormatSupport;
|
|
|
|
} D3D11_FEATURE_DATA_FORMAT_SUPPORT;
|
2017-12-29 12:51:54 +01:00
|
|
|
typedef struct D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS {
|
|
|
|
BOOL ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x;
|
|
|
|
} D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS;
|
2017-12-28 16:33:42 +01:00
|
|
|
typedef enum D3D11_BUFFEREX_SRV_FLAG {
|
|
|
|
D3D11_BUFFEREX_SRV_FLAG_RAW = 1
|
2017-12-29 22:20:31 +01:00
|
|
|
} D3D11_BUFFEREX_SRV_FLAG;
|
2018-01-11 12:23:55 +01:00
|
|
|
typedef enum D3D11_UAV_FLAG {
|
|
|
|
D3D11_BUFFER_UAV_FLAG_RAW = 0x1,
|
|
|
|
D3D11_BUFFER_UAV_FLAG_APPEND = 0x2,
|
|
|
|
D3D11_BUFFER_UAV_FLAG_COUNTER = 0x4
|
|
|
|
} D3D11_UAV_FLAG;
|
2017-12-29 22:20:31 +01:00
|
|
|
typedef struct D3D11_QUERY_DATA_PIPELINE_STATISTICS {
|
|
|
|
UINT64 IAVertices;
|
|
|
|
UINT64 IAPrimitives;
|
|
|
|
UINT64 VSInvocations;
|
|
|
|
UINT64 GSInvocations;
|
|
|
|
UINT64 GSPrimitives;
|
|
|
|
UINT64 CInvocations;
|
|
|
|
UINT64 CPrimitives;
|
|
|
|
UINT64 PSInvocations;
|
|
|
|
UINT64 HSInvocations;
|
|
|
|
UINT64 DSInvocations;
|
|
|
|
UINT64 CSInvocations;
|
2018-03-06 18:34:34 +01:00
|
|
|
} D3D11_QUERY_DATA_PIPELINE_STATISTICS;
|
2018-03-17 21:38:35 +01:00
|
|
|
typedef struct D3D11_FEATURE_DATA_ARCHITECTURE_INFO {
|
|
|
|
BOOL TileBasedDeferredRenderer;
|
|
|
|
} D3D11_FEATURE_DATA_ARCHITECTURE_INFO;
|
2018-03-21 04:58:31 +01:00
|
|
|
typedef struct D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT {
|
|
|
|
UINT PixelShaderMinPrecision;
|
|
|
|
UINT AllOtherShaderStagesMinPrecision;
|
|
|
|
} D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT;
|
|
|
|
typedef struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT {
|
|
|
|
BOOL SupportsDepthAsTextureWithLessEqualComparisonFilter;
|
|
|
|
} D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT;
|
2018-03-06 18:34:34 +01:00
|
|
|
#endif
|