package vendor:directx/d3d12

⌘K
Ctrl+K
or
/

    Index

    Types (599)
    Constants (553)
    Variables (82)
    Procedure Groups (0)

    This section is empty.

    Types

    AUTO_BREADCRUMB_NODE ¶

    AUTO_BREADCRUMB_NODE :: struct {
    	pCommandListDebugNameA:  cstring,
    	pCommandListDebugNameW:  [^]u16,
    	pCommandQueueDebugNameA: cstring,
    	pCommandQueueDebugNameW: [^]u16,
    	pCommandList:            ^IGraphicsCommandList,
    	pCommandQueue:           ^ICommandQueue,
    	BreadcrumbCount:         u32,
    	pLastBreadcrumbValue:    ^u32,
    	pCommandHistory:         ^AUTO_BREADCRUMB_OP,
    	pNext:                   ^AUTO_BREADCRUMB_NODE,
    }

    AUTO_BREADCRUMB_NODE1 ¶

    AUTO_BREADCRUMB_NODE1 :: struct {
    	pCommandListDebugNameA:  cstring,
    	pCommandListDebugNameW:  [^]u16,
    	pCommandQueueDebugNameA: cstring,
    	pCommandQueueDebugNameW: [^]u16,
    	pCommandList:            ^IGraphicsCommandList,
    	pCommandQueue:           ^ICommandQueue,
    	BreadcrumbCount:         u32,
    	pLastBreadcrumbValue:    ^u32,
    	pCommandHistory:         ^AUTO_BREADCRUMB_OP,
    	pNext:                   ^AUTO_BREADCRUMB_NODE1,
    	BreadcrumbContextsCount: u32,
    	pBreadcrumbContexts:     ^DRED_BREADCRUMB_CONTEXT,
    }

    AUTO_BREADCRUMB_OP ¶

    AUTO_BREADCRUMB_OP :: enum i32 {
    	SETMARKER                                        = 0, 
    	BEGINEVENT                                       = 1, 
    	ENDEVENT                                         = 2, 
    	DRAWINSTANCED                                    = 3, 
    	DRAWINDEXEDINSTANCED                             = 4, 
    	EXECUTEINDIRECT                                  = 5, 
    	DISPATCH                                         = 6, 
    	COPYBUFFERREGION                                 = 7, 
    	COPYTEXTUREREGION                                = 8, 
    	COPYRESOURCE                                     = 9, 
    	COPYTILES                                        = 10, 
    	RESOLVESUBRESOURCE                               = 11, 
    	CLEARRENDERTARGETVIEW                            = 12, 
    	CLEARUNORDEREDACCESSVIEW                         = 13, 
    	CLEARDEPTHSTENCILVIEW                            = 14, 
    	RESOURCEBARRIER                                  = 15, 
    	EXECUTEBUNDLE                                    = 16, 
    	PRESENT                                          = 17, 
    	RESOLVEQUERYDATA                                 = 18, 
    	BEGINSUBMISSION                                  = 19, 
    	ENDSUBMISSION                                    = 20, 
    	DECODEFRAME                                      = 21, 
    	PROCESSFRAMES                                    = 22, 
    	ATOMICCOPYBUFFERUINT                             = 23, 
    	ATOMICCOPYBUFFERUINT64                           = 24, 
    	RESOLVESUBRESOURCEREGION                         = 25, 
    	WRITEBUFFERIMMEDIATE                             = 26, 
    	DECODEFRAME1                                     = 27, 
    	SETPROTECTEDRESOURCESESSION                      = 28, 
    	DECODEFRAME2                                     = 29, 
    	PROCESSFRAMES1                                   = 30, 
    	BUILDRAYTRACINGACCELERATIONSTRUCTURE             = 31, 
    	EMITRAYTRACINGACCELERATIONSTRUCTUREPOSTBUILDINFO = 32, 
    	COPYRAYTRACINGACCELERATIONSTRUCTURE              = 33, 
    	DISPATCHRAYS                                     = 34, 
    	INITIALIZEMETACOMMAND                            = 35, 
    	EXECUTEMETACOMMAND                               = 36, 
    	ESTIMATEMOTION                                   = 37, 
    	RESOLVEMOTIONVECTORHEAP                          = 38, 
    	SETPIPELINESTATE1                                = 39, 
    	INITIALIZEEXTENSIONCOMMAND                       = 40, 
    	EXECUTEEXTENSIONCOMMAND                          = 41, 
    	DISPATCHMESH                                     = 42, 
    }

    AXIS_SHADING_RATE ¶

    AXIS_SHADING_RATE :: enum i32 {
    	_1X = 0, 
    	_2X = 1, 
    	_4X = 2, 
    }

    BACKGROUND_PROCESSING_MODE ¶

    BACKGROUND_PROCESSING_MODE :: enum i32 {
    	ALLOWED                      = 0, 
    	ALLOW_INTRUSIVE_MEASUREMENTS = 1, 
    	DISABLE_BACKGROUND_WORK      = 2, 
    	DISABLE_PROFILING_BY_SYSTEM  = 3, 
    }

    BLEND ¶

    BLEND :: enum i32 {
    	ZERO             = 1, 
    	ONE              = 2, 
    	SRC_COLOR        = 3, 
    	INV_SRC_COLOR    = 4, 
    	SRC_ALPHA        = 5, 
    	INV_SRC_ALPHA    = 6, 
    	DEST_ALPHA       = 7, 
    	INV_DEST_ALPHA   = 8, 
    	DEST_COLOR       = 9, 
    	INV_DEST_COLOR   = 10, 
    	SRC_ALPHA_SAT    = 11, 
    	BLEND_FACTOR     = 14, 
    	INV_BLEND_FACTOR = 15, 
    	SRC1_COLOR       = 16, 
    	INV_SRC1_COLOR   = 17, 
    	SRC1_ALPHA       = 18, 
    	INV_SRC1_ALPHA   = 19, 
    }

    BLEND_DESC ¶

    BLEND_DESC :: struct {
    	AlphaToCoverageEnable:  sys_windows.BOOL,
    	IndependentBlendEnable: sys_windows.BOOL,
    	RenderTarget:           [8]RENDER_TARGET_BLEND_DESC,
    }

    BLEND_OP ¶

    BLEND_OP :: enum i32 {
    	ADD          = 1, 
    	SUBTRACT     = 2, 
    	REV_SUBTRACT = 3, 
    	MIN          = 4, 
    	MAX          = 5, 
    }

    BOOL ¶

    BOOL :: sys_windows.BOOL

    BOX ¶

    BOX :: struct {
    	left:   u32,
    	top:    u32,
    	front:  u32,
    	right:  u32,
    	bottom: u32,
    	back:   u32,
    }

    BUFFER_RTV ¶

    BUFFER_RTV :: struct {
    	FirstElement: u64,
    	NumElements:  u32,
    }

    BUFFER_SRV ¶

    BUFFER_SRV :: struct {
    	FirstElement:        u64,
    	NumElements:         u32,
    	StructureByteStride: u32,
    	Flags:               BUFFER_SRV_FLAGS,
    }

    BUFFER_SRV_FLAG ¶

    BUFFER_SRV_FLAG :: enum u32 {
    	RAW = 0, 
    }

    BUFFER_SRV_FLAGS ¶

    BUFFER_SRV_FLAGS :: distinct bit_set[BUFFER_SRV_FLAG; u32]

    BUFFER_UAV ¶

    BUFFER_UAV :: struct {
    	FirstElement:         u64,
    	NumElements:          u32,
    	StructureByteStride:  u32,
    	CounterOffsetInBytes: u64,
    	Flags:                BUFFER_UAV_FLAGS,
    }

    BUFFER_UAV_FLAG ¶

    BUFFER_UAV_FLAG :: enum u32 {
    	RAW = 0, 
    }

    BUFFER_UAV_FLAGS ¶

    BUFFER_UAV_FLAGS :: distinct bit_set[BUFFER_UAV_FLAG; u32]

    BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC ¶

    BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC :: struct {
    	DestAccelerationStructureData:    u64,
    	Inputs:                           BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS,
    	SourceAccelerationStructureData:  u64,
    	ScratchAccelerationStructureData: u64,
    }

    BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS ¶

    BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS :: struct {
    	Type:        RAYTRACING_ACCELERATION_STRUCTURE_TYPE,
    	Flags:       RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS,
    	NumDescs:    u32,
    	DescsLayout: ELEMENTS_LAYOUT,
    	using _:     struct #raw_union {
    		InstanceDescs:   u64,
    		pGeometryDescs:  ^RAYTRACING_GEOMETRY_DESC,
    		ppGeometryDescs: ^^RAYTRACING_GEOMETRY_DESC,
    	},
    }

    BUILD_RAYTRACING_ACCELERATION_STRUCTURE_TOOLS_VISUALIZATION_HEADER ¶

    BUILD_RAYTRACING_ACCELERATION_STRUCTURE_TOOLS_VISUALIZATION_HEADER :: struct {
    	Type:     RAYTRACING_ACCELERATION_STRUCTURE_TYPE,
    	NumDescs: u32,
    }

    CACHED_PIPELINE_STATE ¶

    CACHED_PIPELINE_STATE :: struct {
    	pCachedBlob:           rawptr,
    	CachedBlobSizeInBytes: uint,
    }

    CBUFFER_TYPE ¶

    CBUFFER_TYPE :: enum i32 {
    	CBUFFER            = 0, 
    	TBUFFER            = 1, 
    	INTERFACE_POINTERS = 2, 
    	RESOURCE_BIND_INFO = 3, 
    }

    CLEAR_FLAG ¶

    CLEAR_FLAG :: enum u32 {
    	DEPTH   = 0, 
    	STENCIL = 1, 
    }

    CLEAR_FLAGS ¶

    CLEAR_FLAGS :: distinct bit_set[CLEAR_FLAG; u32]

    CLEAR_VALUE ¶

    CLEAR_VALUE :: struct {
    	Format: directx_dxgi.FORMAT,
    	using _: struct #raw_union {
    		Color:        [4]f32,
    		DepthStencil: DEPTH_STENCIL_VALUE,
    	},
    }

    COLOR_WRITE_ENABLE ¶

    COLOR_WRITE_ENABLE :: enum i32 {
    	RED   = 0, 
    	GREEN = 1, 
    	BLUE  = 2, 
    	ALPHA = 3, 
    }

    COLOR_WRITE_ENABLE_MASK ¶

    COLOR_WRITE_ENABLE_MASK :: distinct bit_set[COLOR_WRITE_ENABLE; u32]

    COMMAND_LIST_FLAG ¶

    COMMAND_LIST_FLAG :: enum u32 {
    }

    COMMAND_LIST_FLAGS ¶

    COMMAND_LIST_FLAGS :: distinct bit_set[COMMAND_LIST_FLAG; u32]

    COMMAND_LIST_SUPPORT_FLAG ¶

    COMMAND_LIST_SUPPORT_FLAG :: enum u32 {
    	DIRECT        = 0, 
    	BUNDLE        = 1, 
    	COMPUTE       = 2, 
    	COPY          = 3, 
    	VIDEO_DECODE  = 4, 
    	VIDEO_PROCESS = 5, 
    	VIDEO_ENCODE  = 6, 
    }

    COMMAND_LIST_SUPPORT_FLAGS ¶

    COMMAND_LIST_SUPPORT_FLAGS :: distinct bit_set[COMMAND_LIST_SUPPORT_FLAG; u32]

    COMMAND_LIST_TYPE ¶

    COMMAND_LIST_TYPE :: enum i32 {
    	DIRECT        = 0, 
    	BUNDLE        = 1, 
    	COMPUTE       = 2, 
    	COPY          = 3, 
    	VIDEO_DECODE  = 4, 
    	VIDEO_PROCESS = 5, 
    	VIDEO_ENCODE  = 6, 
    }

    COMMAND_POOL_FLAG ¶

    COMMAND_POOL_FLAG :: enum u32 {
    }

    COMMAND_POOL_FLAGS ¶

    COMMAND_POOL_FLAGS :: distinct bit_set[COMMAND_POOL_FLAG; u32]

    COMMAND_QUEUE_DESC ¶

    COMMAND_QUEUE_DESC :: struct {
    	Type:     COMMAND_LIST_TYPE,
    	Priority: i32,
    	Flags:    COMMAND_QUEUE_FLAGS,
    	NodeMask: u32,
    }

    COMMAND_QUEUE_FLAG ¶

    COMMAND_QUEUE_FLAG :: enum u32 {
    	DISABLE_GPU_TIMEOUT = 0, 
    }

    COMMAND_QUEUE_FLAGS ¶

    COMMAND_QUEUE_FLAGS :: distinct bit_set[COMMAND_QUEUE_FLAG; u32]

    COMMAND_QUEUE_PRIORITY ¶

    COMMAND_QUEUE_PRIORITY :: enum i32 {
    	NORMAL          = 0, 
    	HIGH            = 100, 
    	GLOBAL_REALTIME = 10000, 
    }

    COMMAND_RECORDER_FLAG ¶

    COMMAND_RECORDER_FLAG :: enum u32 {
    }

    COMMAND_RECORDER_FLAGS ¶

    COMMAND_RECORDER_FLAGS :: distinct bit_set[COMMAND_RECORDER_FLAG; u32]

    COMMAND_SIGNATURE_DESC ¶

    COMMAND_SIGNATURE_DESC :: struct {
    	ByteStride:       u32,
    	NumArgumentDescs: u32,
    	pArgumentDescs:   ^INDIRECT_ARGUMENT_DESC,
    	NodeMask:         u32,
    }

    COMPARISON_FUNC ¶

    COMPARISON_FUNC :: enum i32 {
    	NEVER         = 1, 
    	LESS          = 2, 
    	EQUAL         = 3, 
    	LESS_EQUAL    = 4, 
    	GREATER       = 5, 
    	NOT_EQUAL     = 6, 
    	GREATER_EQUAL = 7, 
    	ALWAYS        = 8, 
    }

    COMPUTE_PIPELINE_STATE_DESC ¶

    COMPUTE_PIPELINE_STATE_DESC :: struct {
    	pRootSignature: ^IRootSignature,
    	CS:             SHADER_BYTECODE,
    	NodeMask:       u32,
    	CachedPSO:      CACHED_PIPELINE_STATE,
    	Flags:          PIPELINE_STATE_FLAGS,
    }

    CONSERVATIVE_RASTERIZATION_MODE ¶

    CONSERVATIVE_RASTERIZATION_MODE :: enum i32 {
    	OFF = 0, 
    	ON  = 1, 
    }

    CONSERVATIVE_RASTERIZATION_TIER ¶

    CONSERVATIVE_RASTERIZATION_TIER :: enum i32 {
    	NOT_SUPPORTED = 0, 
    	_1            = 1, 
    	_2            = 2, 
    	_3            = 3, 
    }

    CONSTANT_BUFFER_VIEW_DESC ¶

    CONSTANT_BUFFER_VIEW_DESC :: struct {
    	BufferLocation: u64,
    	SizeInBytes:    u32,
    }

    CPU_DESCRIPTOR_HANDLE ¶

    CPU_DESCRIPTOR_HANDLE :: struct {
    	ptr: uint,
    }

    CPU_PAGE_PROPERTY ¶

    CPU_PAGE_PROPERTY :: enum i32 {
    	UNKNOWN       = 0, 
    	NOT_AVAILABLE = 1, 
    	WRITE_COMBINE = 2, 
    	WRITE_BACK    = 3, 
    }

    CROSS_NODE_SHARING_TIER ¶

    CROSS_NODE_SHARING_TIER :: enum i32 {
    	NOT_SUPPORTED = 0, 
    	_1_EMULATED   = 1, 
    	_1            = 2, 
    	_2            = 3, 
    	_3            = 4, 
    }

    CULL_MODE ¶

    CULL_MODE :: enum i32 {
    	NONE  = 1, 
    	FRONT = 2, 
    	BACK  = 3, 
    }

    DEBUG_COMMAND_LIST_GPU_BASED_VALIDATION_SETTINGS ¶

    DEBUG_COMMAND_LIST_GPU_BASED_VALIDATION_SETTINGS :: struct {
    	ShaderPatchMode: GPU_BASED_VALIDATION_SHADER_PATCH_MODE,
    }

    DEBUG_COMMAND_LIST_PARAMETER_TYPE ¶

    DEBUG_COMMAND_LIST_PARAMETER_TYPE :: enum i32 {
    	DEBUG_COMMAND_LIST_PARAMETER_GPU_BASED_VALIDATION_SETTINGS = 0, 
    }

    DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS ¶

    DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS :: struct {
    	MaxMessagesPerCommandList: u32,
    	DefaultShaderPatchMode:    GPU_BASED_VALIDATION_SHADER_PATCH_MODE,
    	PipelineStateCreateFlags:  GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS,
    }

    DEBUG_DEVICE_GPU_SLOWDOWN_PERFORMANCE_FACTOR ¶

    DEBUG_DEVICE_GPU_SLOWDOWN_PERFORMANCE_FACTOR :: struct {
    	SlowdownFactor: f32,
    }

    DEBUG_DEVICE_PARAMETER_TYPE ¶

    DEBUG_DEVICE_PARAMETER_TYPE :: enum i32 {
    	FEATURE_FLAGS                   = 0, 
    	GPU_BASED_VALIDATION_SETTINGS   = 1, 
    	GPU_SLOWDOWN_PERFORMANCE_FACTOR = 2, 
    }

    DEBUG_FEATURE ¶

    DEBUG_FEATURE :: distinct bit_set[DEBUG_FEATURE_FLAG; u32]

    DEBUG_FEATURE_FLAG ¶

    DEBUG_FEATURE_FLAG :: enum i32 {
    	ALLOW_BEHAVIOR_CHANGING_DEBUG_AIDS     = 0, 
    	CONSERVATIVE_RESOURCE_STATE_TRACKING   = 1, 
    	DISABLE_VIRTUALIZED_BUNDLES_VALIDATION = 2, 
    	EMULATE_WINDOWS7                       = 3, 
    }

    DEPTH_STENCILOP_DESC ¶

    DEPTH_STENCILOP_DESC :: struct {
    	StencilFailOp:      STENCIL_OP,
    	StencilDepthFailOp: STENCIL_OP,
    	StencilPassOp:      STENCIL_OP,
    	StencilFunc:        COMPARISON_FUNC,
    }

    DEPTH_STENCIL_DESC ¶

    DEPTH_STENCIL_DESC :: struct {
    	DepthEnable:      sys_windows.BOOL,
    	DepthWriteMask:   DEPTH_WRITE_MASK,
    	DepthFunc:        COMPARISON_FUNC,
    	StencilEnable:    sys_windows.BOOL,
    	StencilReadMask:  u8,
    	StencilWriteMask: u8,
    	FrontFace:        DEPTH_STENCILOP_DESC,
    	BackFace:         DEPTH_STENCILOP_DESC,
    }

    DEPTH_STENCIL_DESC1 ¶

    DEPTH_STENCIL_DESC1 :: struct {
    	DepthEnable:           sys_windows.BOOL,
    	DepthWriteMask:        DEPTH_WRITE_MASK,
    	DepthFunc:             COMPARISON_FUNC,
    	StencilEnable:         sys_windows.BOOL,
    	StencilReadMask:       u8,
    	StencilWriteMask:      u8,
    	FrontFace:             DEPTH_STENCILOP_DESC,
    	BackFace:              DEPTH_STENCILOP_DESC,
    	DepthBoundsTestEnable: sys_windows.BOOL,
    }

    DEPTH_STENCIL_VALUE ¶

    DEPTH_STENCIL_VALUE :: struct {
    	Depth:   f32,
    	Stencil: u8,
    }

    DEPTH_STENCIL_VIEW_DESC ¶

    DEPTH_STENCIL_VIEW_DESC :: struct {
    	Format:        directx_dxgi.FORMAT,
    	ViewDimension: DSV_DIMENSION,
    	Flags:         DSV_FLAGS,
    	using _:       struct #raw_union {
    		Texture1D:        TEX1D_DSV,
    		Texture1DArray:   TEX1D_ARRAY_DSV,
    		Texture2D:        TEX2D_DSV,
    		Texture2DArray:   TEX2D_ARRAY_DSV,
    		Texture2DMS:      TEX2DMS_DSV,
    		Texture2DMSArray: TEX2DMS_ARRAY_DSV,
    	},
    }

    DEPTH_WRITE_MASK ¶

    DEPTH_WRITE_MASK :: enum i32 {
    	ZERO = 0, 
    	ALL  = 1, 
    }

    DESCRIPTOR_HEAP_DESC ¶

    DESCRIPTOR_HEAP_DESC :: struct {
    	Type:           DESCRIPTOR_HEAP_TYPE,
    	NumDescriptors: u32,
    	Flags:          DESCRIPTOR_HEAP_FLAGS,
    	NodeMask:       u32,
    }

    DESCRIPTOR_HEAP_FLAG ¶

    DESCRIPTOR_HEAP_FLAG :: enum u32 {
    	SHADER_VISIBLE = 0, 
    }

    DESCRIPTOR_HEAP_FLAGS ¶

    DESCRIPTOR_HEAP_FLAGS :: distinct bit_set[DESCRIPTOR_HEAP_FLAG; u32]

    DESCRIPTOR_HEAP_TYPE ¶

    DESCRIPTOR_HEAP_TYPE :: enum i32 {
    	CBV_SRV_UAV = 0, 
    	SAMPLER     = 1, 
    	RTV         = 2, 
    	DSV         = 3, 
    }

    DESCRIPTOR_RANGE ¶

    DESCRIPTOR_RANGE :: struct {
    	RangeType:                         DESCRIPTOR_RANGE_TYPE,
    	NumDescriptors:                    u32,
    	BaseShaderRegister:                u32,
    	RegisterSpace:                     u32,
    	OffsetInDescriptorsFromTableStart: u32,
    }

    DESCRIPTOR_RANGE1 ¶

    DESCRIPTOR_RANGE1 :: struct {
    	RangeType:                         DESCRIPTOR_RANGE_TYPE,
    	NumDescriptors:                    u32,
    	BaseShaderRegister:                u32,
    	RegisterSpace:                     u32,
    	Flags:                             DESCRIPTOR_RANGE_FLAGS,
    	OffsetInDescriptorsFromTableStart: u32,
    }

    DESCRIPTOR_RANGE_FLAG ¶

    DESCRIPTOR_RANGE_FLAG :: enum u32 {
    	DESCRIPTORS_VOLATILE                            = 0, 
    	DATA_VOLATILE                                   = 1, 
    	DATA_STATIC_WHILE_SET_AT_EXECUTE                = 2, 
    	DATA_STATIC                                     = 3, 
    	DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS = 16, 
    }

    DESCRIPTOR_RANGE_FLAGS ¶

    DESCRIPTOR_RANGE_FLAGS :: distinct bit_set[DESCRIPTOR_RANGE_FLAG; u32]

    DESCRIPTOR_RANGE_TYPE ¶

    DESCRIPTOR_RANGE_TYPE :: enum i32 {
    	SRV     = 0, 
    	UAV     = 1, 
    	CBV     = 2, 
    	SAMPLER = 3, 
    }

    DEVICE_REMOVED_EXTENDED_DATA ¶

    DEVICE_REMOVED_EXTENDED_DATA :: struct {
    	Flags:                   DRED_FLAGS,
    	pHeadAutoBreadcrumbNode: ^AUTO_BREADCRUMB_NODE,
    }

    DEVICE_REMOVED_EXTENDED_DATA1 ¶

    DEVICE_REMOVED_EXTENDED_DATA1 :: struct {
    	DeviceRemovedReason:   sys_windows.HRESULT,
    	AutoBreadcrumbsOutput: DRED_AUTO_BREADCRUMBS_OUTPUT,
    	PageFaultOutput:       DRED_PAGE_FAULT_OUTPUT,
    }

    DEVICE_REMOVED_EXTENDED_DATA2 ¶

    DEVICE_REMOVED_EXTENDED_DATA2 :: struct {
    	DeviceRemovedReason:   sys_windows.HRESULT,
    	AutoBreadcrumbsOutput: DRED_AUTO_BREADCRUMBS_OUTPUT1,
    	PageFaultOutput:       DRED_PAGE_FAULT_OUTPUT1,
    }

    DISCARD_REGION ¶

    DISCARD_REGION :: struct {
    	NumRects:         u32,
    	pRects:           ^sys_windows.RECT,
    	FirstSubresource: u32,
    	NumSubresources:  u32,
    }

    DISPATCH_ARGUMENTS ¶

    DISPATCH_ARGUMENTS :: struct {
    	ThreadGroupCountX: u32,
    	ThreadGroupCountY: u32,
    	ThreadGroupCountZ: u32,
    }

    DISPATCH_MESH_ARGUMENTS ¶

    DISPATCH_MESH_ARGUMENTS :: struct {
    	ThreadGroupCountX: u32,
    	ThreadGroupCountY: u32,
    	ThreadGroupCountZ: u32,
    }

    DISPATCH_RAYS_DESC ¶

    DISPATCH_RAYS_DESC :: struct {
    	RayGenerationShaderRecord: GPU_VIRTUAL_ADDRESS_RANGE,
    	MissShaderTable:           GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE,
    	HitGroupTable:             GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE,
    	CallableShaderTable:       GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE,
    	Width:                     u32,
    	Height:                    u32,
    	Depth:                     u32,
    }

    DRAW_ARGUMENTS ¶

    DRAW_ARGUMENTS :: struct {
    	VertexCountPerInstance: u32,
    	InstanceCount:          u32,
    	StartVertexLocation:    u32,
    	StartInstanceLocation:  u32,
    }

    DRAW_INDEXED_ARGUMENTS ¶

    DRAW_INDEXED_ARGUMENTS :: struct {
    	IndexCountPerInstance: u32,
    	InstanceCount:         u32,
    	StartIndexLocation:    u32,
    	BaseVertexLocation:    i32,
    	StartInstanceLocation: u32,
    }

    DRED_ALLOCATION_NODE ¶

    DRED_ALLOCATION_NODE :: struct {
    	ObjectNameA:    cstring,
    	ObjectNameW:    ^i16,
    	AllocationType: DRED_ALLOCATION_TYPE,
    	pNext:          ^DRED_ALLOCATION_NODE,
    }

    DRED_ALLOCATION_NODE1 ¶

    DRED_ALLOCATION_NODE1 :: struct {
    	ObjectNameA:    cstring,
    	ObjectNameW:    ^i16,
    	AllocationType: DRED_ALLOCATION_TYPE,
    	pNext:          ^DRED_ALLOCATION_NODE1,
    	pObject:        ^directx_dxgi.IUnknown,
    }

    DRED_ALLOCATION_TYPE ¶

    DRED_ALLOCATION_TYPE :: enum i32 {
    	COMMAND_QUEUE            = 19, 
    	COMMAND_ALLOCATOR        = 20, 
    	PIPELINE_STATE           = 21, 
    	COMMAND_LIST             = 22, 
    	FENCE                    = 23, 
    	DESCRIPTOR_HEAP          = 24, 
    	HEAP                     = 25, 
    	QUERY_HEAP               = 27, 
    	COMMAND_SIGNATURE        = 28, 
    	PIPELINE_LIBRARY         = 29, 
    	VIDEO_DECODER            = 30, 
    	VIDEO_PROCESSOR          = 32, 
    	RESOURCE                 = 34, 
    	PASS                     = 35, 
    	CRYPTOSESSION            = 36, 
    	CRYPTOSESSIONPOLICY      = 37, 
    	PROTECTEDRESOURCESESSION = 38, 
    	VIDEO_DECODER_HEAP       = 39, 
    	COMMAND_POOL             = 40, 
    	COMMAND_RECORDER         = 41, 
    	STATE_OBJECT             = 42, 
    	METACOMMAND              = 43, 
    	SCHEDULINGGROUP          = 44, 
    	VIDEO_MOTION_ESTIMATOR   = 45, 
    	VIDEO_MOTION_VECTOR_HEAP = 46, 
    	VIDEO_EXTENSION_COMMAND  = 47, 
    	INVALID                  = -1, 
    }

    DRED_AUTO_BREADCRUMBS_OUTPUT ¶

    DRED_AUTO_BREADCRUMBS_OUTPUT :: struct {
    	pHeadAutoBreadcrumbNode: ^AUTO_BREADCRUMB_NODE,
    }

    DRED_AUTO_BREADCRUMBS_OUTPUT1 ¶

    DRED_AUTO_BREADCRUMBS_OUTPUT1 :: struct {
    	pHeadAutoBreadcrumbNode: ^AUTO_BREADCRUMB_NODE1,
    }

    DRED_BREADCRUMB_CONTEXT ¶

    DRED_BREADCRUMB_CONTEXT :: struct {
    	BreadcrumbIndex: u32,
    	pContextString:  [^]u16,
    }

    DRED_ENABLEMENT ¶

    DRED_ENABLEMENT :: enum i32 {
    	SYSTEM_CONTROLLED = 0, 
    	FORCED_OFF        = 1, 
    	FORCED_ON         = 2, 
    }

    DRED_FLAG ¶

    DRED_FLAG :: enum u32 {
    	FORCE_ENABLE            = 0, 
    	DISABLE_AUTOBREADCRUMBS = 1, 
    }

    DRED_FLAGS ¶

    DRED_FLAGS :: distinct bit_set[DRED_FLAG; u32]

    DRED_PAGE_FAULT_OUTPUT ¶

    DRED_PAGE_FAULT_OUTPUT :: struct {
    	PageFaultVA:                    u64,
    	pHeadExistingAllocationNode:    ^DRED_ALLOCATION_NODE,
    	pHeadRecentFreedAllocationNode: ^DRED_ALLOCATION_NODE,
    }

    DRED_PAGE_FAULT_OUTPUT1 ¶

    DRED_PAGE_FAULT_OUTPUT1 :: struct {
    	PageFaultVA:                    u64,
    	pHeadExistingAllocationNode:    ^DRED_ALLOCATION_NODE1,
    	pHeadRecentFreedAllocationNode: ^DRED_ALLOCATION_NODE1,
    }

    DRED_VERSION ¶

    DRED_VERSION :: enum i32 {
    	_1_0 = 1, 
    	_1_1 = 2, 
    	_1_2 = 3, 
    }

    DRIVER_MATCHING_IDENTIFIER_STATUS ¶

    DRIVER_MATCHING_IDENTIFIER_STATUS :: enum i32 {
    	COMPATIBLE_WITH_DEVICE = 0, 
    	UNSUPPORTED_TYPE       = 1, 
    	UNRECOGNIZED           = 2, 
    	INCOMPATIBLE_VERSION   = 3, 
    	INCOMPATIBLE_TYPE      = 4, 
    }

    DRIVER_TYPE ¶

    DRIVER_TYPE :: enum i32 {
    	UNKNOWN   = 0, 
    	HARDWARE  = 1, 
    	REFERENCE = 2, 
    	NULL      = 3, 
    	SOFTWARE  = 4, 
    	WARP      = 5, 
    }

    DSV_DIMENSION ¶

    DSV_DIMENSION :: enum i32 {
    	UNKNOWN          = 0, 
    	TEXTURE1D        = 1, 
    	TEXTURE1DARRAY   = 2, 
    	TEXTURE2D        = 3, 
    	TEXTURE2DARRAY   = 4, 
    	TEXTURE2DMS      = 5, 
    	TEXTURE2DMSARRAY = 6, 
    }

    DSV_FLAG ¶

    DSV_FLAG :: enum u32 {
    	READ_ONLY_DEPTH   = 0, 
    	READ_ONLY_STENCIL = 1, 
    }

    DSV_FLAGS ¶

    DSV_FLAGS :: distinct bit_set[DSV_FLAG; u32]

    DXIL_LIBRARY_DESC ¶

    DXIL_LIBRARY_DESC :: struct {
    	DXILLibrary: SHADER_BYTECODE,
    	NumExports:  u32,
    	pExports:    ^EXPORT_DESC,
    }

    DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION ¶

    DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION :: struct {
    	SubobjectToAssociate: ^i16,
    	NumExports:           u32,
    	pExports:             [^]^i16,
    }

    ELEMENTS_LAYOUT ¶

    ELEMENTS_LAYOUT :: enum i32 {
    	ARRAY             = 0, 
    	ARRAY_OF_POINTERS = 1, 
    }

    EXISTING_COLLECTION_DESC ¶

    EXISTING_COLLECTION_DESC :: struct {
    	pExistingCollection: ^IStateObject,
    	NumExports:          u32,
    	pExports:            ^EXPORT_DESC,
    }

    EXPORT_DESC ¶

    EXPORT_DESC :: struct {
    	Name:           [^]u16,
    	ExportToRename: [^]u16,
    	Flags:          EXPORT_FLAGS,
    }

    EXPORT_FLAG ¶

    EXPORT_FLAG :: enum u32 {
    }

    EXPORT_FLAGS ¶

    EXPORT_FLAGS :: distinct bit_set[EXPORT_FLAG; u32]

    FEATURE ¶

    FEATURE :: enum i32 {
    	OPTIONS                               = 0, 
    	ARCHITECTURE                          = 1, 
    	FEATURE_LEVELS                        = 2, 
    	FORMAT_SUPPORT                        = 3, 
    	MULTISAMPLE_QUALITY_LEVELS            = 4, 
    	FORMAT_INFO                           = 5, 
    	GPU_VIRTUAL_ADDRESS_SUPPORT           = 6, 
    	SHADER_MODEL                          = 7, 
    	OPTIONS1                              = 8, 
    	PROTECTED_RESOURCE_SESSION_SUPPORT    = 10, 
    	ROOT_SIGNATURE                        = 12, 
    	ARCHITECTURE1                         = 16, 
    	OPTIONS2                              = 18, 
    	SHADER_CACHE                          = 19, 
    	COMMAND_QUEUE_PRIORITY                = 20, 
    	OPTIONS3                              = 21, 
    	EXISTING_HEAPS                        = 22, 
    	OPTIONS4                              = 23, 
    	SERIALIZATION                         = 24, 
    	CROSS_NODE                            = 25, 
    	OPTIONS5                              = 27, 
    	OPTIONS6                              = 30, 
    	QUERY_META_COMMAND                    = 31, 
    	OPTIONS7                              = 32, 
    	PROTECTED_RESOURCE_SESSION_TYPE_COUNT = 33, 
    	PROTECTED_RESOURCE_SESSION_TYPES      = 34, 
    }

    FEATURE_DATA_ARCHITECTURE ¶

    FEATURE_DATA_ARCHITECTURE :: struct {
    	NodeIndex:         u32,
    	TileBasedRenderer: sys_windows.BOOL,
    	UMA:               sys_windows.BOOL,
    	CacheCoherentUMA:  sys_windows.BOOL,
    }

    FEATURE_DATA_ARCHITECTURE1 ¶

    FEATURE_DATA_ARCHITECTURE1 :: struct {
    	NodeIndex:         u32,
    	TileBasedRenderer: sys_windows.BOOL,
    	UMA:               sys_windows.BOOL,
    	CacheCoherentUMA:  sys_windows.BOOL,
    	IsolatedMMU:       sys_windows.BOOL,
    }

    FEATURE_DATA_COMMAND_QUEUE_PRIORITY ¶

    FEATURE_DATA_COMMAND_QUEUE_PRIORITY :: struct {
    	CommandListType:            COMMAND_LIST_TYPE,
    	Priority:                   u32,
    	PriorityForTypeIsSupported: sys_windows.BOOL,
    }

    FEATURE_DATA_CROSS_NODE ¶

    FEATURE_DATA_CROSS_NODE :: struct {
    	SharingTier:              CROSS_NODE_SHARING_TIER,
    	AtomicShaderInstructions: sys_windows.BOOL,
    }

    FEATURE_DATA_EXISTING_HEAPS ¶

    FEATURE_DATA_EXISTING_HEAPS :: struct {
    	Supported: sys_windows.BOOL,
    }

    FEATURE_DATA_FEATURE_LEVELS ¶

    FEATURE_DATA_FEATURE_LEVELS :: struct {
    	NumFeatureLevels:         u32,
    	pFeatureLevelsRequested:  ^FEATURE_LEVEL,
    	MaxSupportedFeatureLevel: FEATURE_LEVEL,
    }

    FEATURE_DATA_FORMAT_INFO ¶

    FEATURE_DATA_FORMAT_INFO :: struct {
    	Format:     directx_dxgi.FORMAT,
    	PlaneCount: u8,
    }

    FEATURE_DATA_FORMAT_SUPPORT ¶

    FEATURE_DATA_FORMAT_SUPPORT :: struct {
    	Format:   directx_dxgi.FORMAT,
    	Support1: FORMAT_SUPPORT1,
    	Support2: FORMAT_SUPPORT2,
    }

    FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT ¶

    FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT :: struct {
    	MaxGPUVirtualAddressBitsPerResource: u32,
    	MaxGPUVirtualAddressBitsPerProcess:  u32,
    }

    FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS ¶

    FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS :: struct {
    	Format:           directx_dxgi.FORMAT,
    	SampleCount:      u32,
    	Flags:            MULTISAMPLE_QUALITY_LEVEL_FLAGS,
    	NumQualityLevels: u32,
    }

    FEATURE_DATA_OPTIONS ¶

    FEATURE_DATA_OPTIONS :: struct {
    	DoublePrecisionFloatShaderOps:                                              sys_windows.BOOL,
    	OutputMergerLogicOp:                                                        sys_windows.BOOL,
    	MinPrecisionSupport:                                                        SHADER_MIN_PRECISION_SUPPORT,
    	TiledResourcesTier:                                                         TILED_RESOURCES_TIER,
    	ResourceBindingTier:                                                        RESOURCE_BINDING_TIER,
    	PSSpecifiedStencilRefSupported:                                             sys_windows.BOOL,
    	TypedUAVLoadAdditionalFormats:                                              sys_windows.BOOL,
    	ROVsSupported:                                                              sys_windows.BOOL,
    	ConservativeRasterizationTier:                                              CONSERVATIVE_RASTERIZATION_TIER,
    	MaxGPUVirtualAddressBitsPerResource:                                        u32,
    	StandardSwizzle64KBSupported:                                               sys_windows.BOOL,
    	CrossNodeSharingTier:                                                       CROSS_NODE_SHARING_TIER,
    	CrossAdapterRowMajorTextureSupported:                                       sys_windows.BOOL,
    	VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation: sys_windows.BOOL,
    	ResourceHeapTier:                                                           RESOURCE_HEAP_TIER,
    }

    FEATURE_DATA_OPTIONS1 ¶

    FEATURE_DATA_OPTIONS1 :: struct {
    	WaveOps:                       sys_windows.BOOL,
    	WaveLaneCountMin:              u32,
    	WaveLaneCountMax:              u32,
    	TotalLaneCount:                u32,
    	ExpandedComputeResourceStates: sys_windows.BOOL,
    	Int64ShaderOps:                sys_windows.BOOL,
    }

    FEATURE_DATA_OPTIONS2 ¶

    FEATURE_DATA_OPTIONS2 :: struct {
    	DepthBoundsTestSupported:        sys_windows.BOOL,
    	ProgrammableSamplePositionsTier: PROGRAMMABLE_SAMPLE_POSITIONS_TIER,
    }

    FEATURE_DATA_OPTIONS3 ¶

    FEATURE_DATA_OPTIONS3 :: struct {
    	CopyQueueTimestampQueriesSupported: sys_windows.BOOL,
    	CastingFullyTypedFormatSupported:   sys_windows.BOOL,
    	WriteBufferImmediateSupportFlags:   COMMAND_LIST_SUPPORT_FLAGS,
    	ViewInstancingTier:                 VIEW_INSTANCING_TIER,
    	BarycentricsSupported:              sys_windows.BOOL,
    }

    FEATURE_DATA_OPTIONS4 ¶

    FEATURE_DATA_OPTIONS4 :: struct {
    	MSAA64KBAlignedTextureSupported: sys_windows.BOOL,
    	SharedResourceCompatibilityTier: SHARED_RESOURCE_COMPATIBILITY_TIER,
    	Native16BitShaderOpsSupported:   sys_windows.BOOL,
    }

    FEATURE_DATA_OPTIONS5 ¶

    FEATURE_DATA_OPTIONS5 :: struct {
    	SRVOnlyTiledResourceTier3: sys_windows.BOOL,
    	RenderPassesTier:          RENDER_PASS_TIER,
    	RaytracingTier:            RAYTRACING_TIER,
    }

    FEATURE_DATA_OPTIONS6 ¶

    FEATURE_DATA_OPTIONS6 :: struct {
    	AdditionalShadingRatesSupported:                      sys_windows.BOOL,
    	PerPrimitiveShadingRateSupportedWithViewportIndexing: sys_windows.BOOL,
    	VariableShadingRateTier:                              VARIABLE_SHADING_RATE_TIER,
    	ShadingRateImageTileSize:                             u32,
    	BackgroundProcessingSupported:                        sys_windows.BOOL,
    }

    FEATURE_DATA_OPTIONS7 ¶

    FEATURE_DATA_OPTIONS7 :: struct {
    	MeshShaderTier:      MESH_SHADER_TIER,
    	SamplerFeedbackTier: SAMPLER_FEEDBACK_TIER,
    }

    FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT ¶

    FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT :: struct {
    	NodeIndex: u32,
    	Support:   PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS,
    }

    FEATURE_DATA_PROTECTED_RESOURCE_SESSION_TYPES ¶

    FEATURE_DATA_PROTECTED_RESOURCE_SESSION_TYPES :: struct {
    	NodeIndex: u32,
    	Count:     u32,
    	pTypes:    ^sys_windows.GUID,
    }

    FEATURE_DATA_PROTECTED_RESOURCE_SESSION_TYPE_COUNT ¶

    FEATURE_DATA_PROTECTED_RESOURCE_SESSION_TYPE_COUNT :: struct {
    	NodeIndex: u32,
    	Count:     u32,
    }

    FEATURE_DATA_QUERY_META_COMMAND ¶

    FEATURE_DATA_QUERY_META_COMMAND :: struct {
    	CommandId:                  sys_windows.GUID,
    	NodeMask:                   u32,
    	pQueryInputData:            rawptr,
    	QueryInputDataSizeInBytes:  uint,
    	pQueryOutputData:           rawptr,
    	QueryOutputDataSizeInBytes: uint,
    }

    FEATURE_DATA_ROOT_SIGNATURE ¶

    FEATURE_DATA_ROOT_SIGNATURE :: struct {
    	HighestVersion: ROOT_SIGNATURE_VERSION,
    }

    FEATURE_DATA_SERIALIZATION ¶

    FEATURE_DATA_SERIALIZATION :: struct {
    	NodeIndex:             u32,
    	HeapSerializationTier: HEAP_SERIALIZATION_TIER,
    }

    FEATURE_DATA_SHADER_CACHE ¶

    FEATURE_DATA_SHADER_CACHE :: struct {
    	SupportFlags: SHADER_CACHE_SUPPORT_FLAGS,
    }

    FEATURE_DATA_SHADER_MODEL ¶

    FEATURE_DATA_SHADER_MODEL :: struct {
    	HighestShaderModel: SHADER_MODEL,
    }

    FEATURE_LEVEL ¶

    FEATURE_LEVEL :: enum i32 {
    	_1_0_CORE = 4096, 
    	_9_1      = 37120, 
    	_9_2      = 37376, 
    	_9_3      = 37632, 
    	_10_0     = 40960, 
    	_10_1     = 41216, 
    	_11_0     = 45056, 
    	_11_1     = 45312, 
    	_12_0     = 49152, 
    	_12_1     = 49408, 
    }
    Related Procedures With Parameters

    FENCE_FLAG ¶

    FENCE_FLAG :: enum u32 {
    	SHARED               = 0, 
    	SHARED_CROSS_ADAPTER = 1, 
    	NON_MONITORED        = 2, 
    }

    FENCE_FLAGS ¶

    FENCE_FLAGS :: distinct bit_set[FENCE_FLAG; u32]

    FILL_MODE ¶

    FILL_MODE :: enum i32 {
    	WIREFRAME = 2, 
    	SOLID     = 3, 
    }

    FILTER ¶

    FILTER :: enum i32 {
    	MIN_MAG_MIP_POINT                          = 0, 
    	MIN_MAG_POINT_MIP_LINEAR                   = 1, 
    	MIN_POINT_MAG_LINEAR_MIP_POINT             = 4, 
    	MIN_POINT_MAG_MIP_LINEAR                   = 5, 
    	MIN_LINEAR_MAG_MIP_POINT                   = 16, 
    	MIN_LINEAR_MAG_POINT_MIP_LINEAR            = 17, 
    	MIN_MAG_LINEAR_MIP_POINT                   = 20, 
    	MIN_MAG_MIP_LINEAR                         = 21, 
    	ANISOTROPIC                                = 85, 
    	COMPARISON_MIN_MAG_MIP_POINT               = 128, 
    	COMPARISON_MIN_MAG_POINT_MIP_LINEAR        = 129, 
    	COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT  = 132, 
    	COMPARISON_MIN_POINT_MAG_MIP_LINEAR        = 133, 
    	COMPARISON_MIN_LINEAR_MAG_MIP_POINT        = 144, 
    	COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 145, 
    	COMPARISON_MIN_MAG_LINEAR_MIP_POINT        = 148, 
    	COMPARISON_MIN_MAG_MIP_LINEAR              = 149, 
    	COMPARISON_ANISOTROPIC                     = 213, 
    	MINIMUM_MIN_MAG_MIP_POINT                  = 256, 
    	MINIMUM_MIN_MAG_POINT_MIP_LINEAR           = 257, 
    	MINIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT     = 260, 
    	MINIMUM_MIN_POINT_MAG_MIP_LINEAR           = 261, 
    	MINIMUM_MIN_LINEAR_MAG_MIP_POINT           = 272, 
    	MINIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR    = 273, 
    	MINIMUM_MIN_MAG_LINEAR_MIP_POINT           = 276, 
    	MINIMUM_MIN_MAG_MIP_LINEAR                 = 277, 
    	MINIMUM_ANISOTROPIC                        = 341, 
    	MAXIMUM_MIN_MAG_MIP_POINT                  = 384, 
    	MAXIMUM_MIN_MAG_POINT_MIP_LINEAR           = 385, 
    	MAXIMUM_MIN_POINT_MAG_LINEAR_MIP_POINT     = 388, 
    	MAXIMUM_MIN_POINT_MAG_MIP_LINEAR           = 389, 
    	MAXIMUM_MIN_LINEAR_MAG_MIP_POINT           = 400, 
    	MAXIMUM_MIN_LINEAR_MAG_POINT_MIP_LINEAR    = 401, 
    	MAXIMUM_MIN_MAG_LINEAR_MIP_POINT           = 404, 
    	MAXIMUM_MIN_MAG_MIP_LINEAR                 = 405, 
    	MAXIMUM_ANISOTROPIC                        = 469, 
    }

    FILTER_REDUCTION_TYPE ¶

    FILTER_REDUCTION_TYPE :: enum i32 {
    	STANDARD   = 0, 
    	COMPARISON = 1, 
    	MINIMUM    = 2, 
    	MAXIMUM    = 3, 
    }

    FILTER_TYPE ¶

    FILTER_TYPE :: enum i32 {
    	POINT  = 0, 
    	LINEAR = 1, 
    }

    FORMAT_SUPPORT1 ¶

    FORMAT_SUPPORT1 :: distinct bit_set[FORMAT_SUPPORT1_FLAG; u32]

    FORMAT_SUPPORT1_FLAG ¶

    FORMAT_SUPPORT1_FLAG :: enum i32 {
    	BUFFER                      = 0, 
    	IA_VERTEX_BUFFER            = 1, 
    	IA_INDEX_BUFFER             = 2, 
    	SO_BUFFER                   = 3, 
    	TEXTURE1D                   = 4, 
    	TEXTURE2D                   = 5, 
    	TEXTURE3D                   = 6, 
    	TEXTURECUBE                 = 7, 
    	SHADER_LOAD                 = 8, 
    	SHADER_SAMPLE               = 9, 
    	SHADER_SAMPLE_COMPARISON    = 10, 
    	SHADER_SAMPLE_MONO_TEXT     = 11, 
    	MIP                         = 12, 
    	RENDER_TARGET               = 14, 
    	BLENDABLE                   = 15, 
    	DEPTH_STENCIL               = 16, 
    	MULTISAMPLE_RESOLVE         = 18, 
    	DISPLAY                     = 19, 
    	CAST_WITHIN_BIT_LAYOUT      = 20, 
    	MULTISAMPLE_RENDERTARGET    = 21, 
    	MULTISAMPLE_LOAD            = 22, 
    	SHADER_GATHER               = 23, 
    	BACK_BUFFER_CAST            = 24, 
    	TYPED_UNORDERED_ACCESS_VIEW = 25, 
    	SHADER_GATHER_COMPARISON    = 26, 
    	DECODER_OUTPUT              = 27, 
    	VIDEO_PROCESSOR_OUTPUT      = 28, 
    	VIDEO_PROCESSOR_INPUT       = 29, 
    	VIDEO_ENCODER               = 30, 
    }

    FORMAT_SUPPORT2 ¶

    FORMAT_SUPPORT2 :: distinct bit_set[FORMAT_SUPPORT2_FLAG; u32]

    FORMAT_SUPPORT2_FLAG ¶

    FORMAT_SUPPORT2_FLAG :: enum i32 {
    	UAV_ATOMIC_ADD                               = 0, 
    	UAV_ATOMIC_BITWISE_OPS                       = 1, 
    	UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE = 2, 
    	UAV_ATOMIC_EXCHANGE                          = 3, 
    	UAV_ATOMIC_SIGNED_MIN_OR_MAX                 = 4, 
    	UAV_ATOMIC_UNSIGNED_MIN_OR_MAX               = 5, 
    	UAV_TYPED_LOAD                               = 6, 
    	UAV_TYPED_STORE                              = 7, 
    	OUTPUT_MERGER_LOGIC_OP                       = 8, 
    	TILED                                        = 9, 
    	MULTIPLANE_OVERLAY                           = 14, 
    	SAMPLER_FEEDBACK                             = 15, 
    }

    FUNCTION_DESC ¶

    FUNCTION_DESC :: struct {
    	Version:                     u32,
    	Creator:                     cstring,
    	Flags:                       u32,
    	ConstantBuffers:             u32,
    	BoundResources:              u32,
    	InstructionCount:            u32,
    	TempRegisterCount:           u32,
    	TempArrayCount:              u32,
    	DefCount:                    u32,
    	DclCount:                    u32,
    	TextureNormalInstructions:   u32,
    	TextureLoadInstructions:     u32,
    	TextureCompInstructions:     u32,
    	TextureBiasInstructions:     u32,
    	TextureGradientInstructions: u32,
    	FloatInstructionCount:       u32,
    	IntInstructionCount:         u32,
    	UintInstructionCount:        u32,
    	StaticFlowControlCount:      u32,
    	DynamicFlowControlCount:     u32,
    	MacroInstructionCount:       u32,
    	ArrayInstructionCount:       u32,
    	MovInstructionCount:         u32,
    	MovcInstructionCount:        u32,
    	ConversionInstructionCount:  u32,
    	BitwiseInstructionCount:     u32,
    	MinFeatureLevel:             FEATURE_LEVEL,
    	RequiredFeatureFlags:        u64,
    	Name:                        cstring,
    	FunctionParameterCount:      i32,
    	HasReturn:                   sys_windows.BOOL,
    	Has10Level9VertexShader:     sys_windows.BOOL,
    	Has10Level9PixelShader:      sys_windows.BOOL,
    }

    GLOBAL_ROOT_SIGNATURE ¶

    GLOBAL_ROOT_SIGNATURE :: struct {
    	pGlobalRootSignature: ^IRootSignature,
    }

    GPU_BASED_VALIDATION_FLAG ¶

    GPU_BASED_VALIDATION_FLAG :: enum u32 {
    	DISABLE_STATE_TRACKING = 0, 
    }

    GPU_BASED_VALIDATION_FLAGS ¶

    GPU_BASED_VALIDATION_FLAGS :: distinct bit_set[GPU_BASED_VALIDATION_FLAG; u32]

    GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG ¶

    GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG :: enum u32 {
    	FRONT_LOAD_CREATE_TRACKING_ONLY_SHADERS        = 0, 
    	FRONT_LOAD_CREATE_UNGUARDED_VALIDATION_SHADERS = 1, 
    	FRONT_LOAD_CREATE_GUARDED_VALIDATION_SHADERS   = 2, 
    }

    GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS ¶

    GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS :: distinct bit_set[GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG; u32]

    GPU_BASED_VALIDATION_SHADER_PATCH_MODE ¶

    GPU_BASED_VALIDATION_SHADER_PATCH_MODE :: enum i32 {
    	NONE                                        = 0, 
    	STATE_TRACKING_ONLY                         = 1, 
    	UNGUARDED_VALIDATION                        = 2, 
    	GUARDED_VALIDATION                          = 3, 
    	NUM_GPU_BASED_VALIDATION_SHADER_PATCH_MODES = 4, 
    }

    GPU_DESCRIPTOR_HANDLE ¶

    GPU_DESCRIPTOR_HANDLE :: struct {
    	ptr: u64,
    }

    GPU_VIRTUAL_ADDRESS ¶

    GPU_VIRTUAL_ADDRESS :: u64

    GPU_VIRTUAL_ADDRESS_AND_STRIDE ¶

    GPU_VIRTUAL_ADDRESS_AND_STRIDE :: struct {
    	StartAddress:  u64,
    	StrideInBytes: u64,
    }

    GPU_VIRTUAL_ADDRESS_RANGE ¶

    GPU_VIRTUAL_ADDRESS_RANGE :: struct {
    	StartAddress: u64,
    	SizeInBytes:  u64,
    }

    GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE ¶

    GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE :: struct {
    	StartAddress:  u64,
    	SizeInBytes:   u64,
    	StrideInBytes: u64,
    }

    GRAPHICS_PIPELINE_STATE_DESC ¶

    GRAPHICS_PIPELINE_STATE_DESC :: struct {
    	pRootSignature:        ^IRootSignature,
    	VS:                    SHADER_BYTECODE,
    	PS:                    SHADER_BYTECODE,
    	DS:                    SHADER_BYTECODE,
    	HS:                    SHADER_BYTECODE,
    	GS:                    SHADER_BYTECODE,
    	StreamOutput:          STREAM_OUTPUT_DESC,
    	BlendState:            BLEND_DESC,
    	SampleMask:            u32,
    	RasterizerState:       RASTERIZER_DESC,
    	DepthStencilState:     DEPTH_STENCIL_DESC,
    	InputLayout:           INPUT_LAYOUT_DESC,
    	IBStripCutValue:       INDEX_BUFFER_STRIP_CUT_VALUE,
    	PrimitiveTopologyType: PRIMITIVE_TOPOLOGY_TYPE,
    	NumRenderTargets:      u32,
    	RTVFormats:            [8]directx_dxgi.FORMAT,
    	DSVFormat:             directx_dxgi.FORMAT,
    	SampleDesc:            directx_dxgi.SAMPLE_DESC,
    	NodeMask:              u32,
    	CachedPSO:             CACHED_PIPELINE_STATE,
    	Flags:                 PIPELINE_STATE_FLAGS,
    }

    GRAPHICS_STATES ¶

    GRAPHICS_STATES :: enum i32 {
    	NONE                    = 0, 
    	IA_VERTEX_BUFFERS       = 1, 
    	IA_INDEX_BUFFER         = 2, 
    	IA_PRIMITIVE_TOPOLOGY   = 4, 
    	DESCRIPTOR_HEAP         = 8, 
    	GRAPHICS_ROOT_SIGNATURE = 16, 
    	COMPUTE_ROOT_SIGNATURE  = 32, 
    	RS_VIEWPORTS            = 64, 
    	RS_SCISSOR_RECTS        = 128, 
    	PREDICATION             = 256, 
    	OM_RENDER_TARGETS       = 512, 
    	OM_STENCIL_REF          = 1024, 
    	OM_BLEND_FACTOR         = 2048, 
    	PIPELINE_STATE          = 4096, 
    	SO_TARGETS              = 8192, 
    	OM_DEPTH_BOUNDS         = 16384, 
    	SAMPLE_POSITIONS        = 32768, 
    	VIEW_INSTANCE_MASK      = 65536, 
    }

    GUID ¶

    GUID :: sys_windows.GUID

    HANDLE ¶

    HANDLE :: sys_windows.HANDLE

    HEAP_DESC ¶

    HEAP_DESC :: struct {
    	SizeInBytes: u64,
    	Properties:  HEAP_PROPERTIES,
    	Alignment:   u64,
    	Flags:       HEAP_FLAGS,
    }

    HEAP_FLAG ¶

    HEAP_FLAG :: enum u32 {
    	SHARED                  = 0, 
    	DENY_BUFFERS            = 2, 
    	ALLOW_DISPLAY           = 3, 
    	SHARED_CROSS_ADAPTER    = 5, 
    	DENY_RT_DS_TEXTURES     = 6, 
    	DENY_NON_RT_DS_TEXTURES = 7, 
    	HARDWARE_PROTECTED      = 8, 
    	ALLOW_WRITE_WATCH       = 9, 
    	ALLOW_SHADER_ATOMICS    = 10, 
    	CREATE_NOT_RESIDENT     = 11, 
    	CREATE_NOT_ZEROED       = 12, 
    }

    HEAP_FLAGS ¶

    HEAP_FLAGS :: distinct bit_set[HEAP_FLAG; u32]

    HEAP_PROPERTIES ¶

    HEAP_PROPERTIES :: struct {
    	Type:                 HEAP_TYPE,
    	CPUPageProperty:      CPU_PAGE_PROPERTY,
    	MemoryPoolPreference: MEMORY_POOL,
    	CreationNodeMask:     u32,
    	VisibleNodeMask:      u32,
    }

    HEAP_SERIALIZATION_TIER ¶

    HEAP_SERIALIZATION_TIER :: enum i32 {
    	_0  = 0, 
    	_10 = 10, 
    }

    HEAP_TYPE ¶

    HEAP_TYPE :: enum i32 {
    	DEFAULT  = 1, 
    	UPLOAD   = 2, 
    	READBACK = 3, 
    	CUSTOM   = 4, 
    }

    HIT_GROUP_DESC ¶

    HIT_GROUP_DESC :: struct {
    	HitGroupExport:           ^i16,
    	Type:                     HIT_GROUP_TYPE,
    	AnyHitShaderImport:       ^i16,
    	ClosestHitShaderImport:   ^i16,
    	IntersectionShaderImport: ^i16,
    }

    HIT_GROUP_TYPE ¶

    HIT_GROUP_TYPE :: enum i32 {
    	TRIANGLES            = 0, 
    	PROCEDURAL_PRIMITIVE = 1, 
    }

    HIT_KIND ¶

    HIT_KIND :: enum i32 {
    	TRIANGLE_FRONT_FACE = 254, 
    	TRIANGLE_BACK_FACE  = 255, 
    }

    HMODULE ¶

    HMODULE :: sys_windows.HMODULE

    HRESULT ¶

    HRESULT :: sys_windows.HRESULT

    HWND ¶

    HWND :: sys_windows.HWND

    IBlob ¶

    IBlob :: directx_d3d_compiler.ID3D10Blob

    ICommandAllocator ¶

    ICommandAllocator :: struct #raw_union {
    	id3d12pageable:                IPageable,
    	using id3d12commandallocator_vtable: ^ICommandAllocator_VTable,
    }

    ICommandAllocator_VTable ¶

    ICommandAllocator_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	Reset:                    proc "stdcall" (this: ^ICommandAllocator) -> sys_windows.HRESULT,
    }

    ICommandList ¶

    ICommandList :: struct #raw_union {
    	id3d12devicechild:        IDeviceChild,
    	using id3d12commandlist_vtable: ^ICommandList_VTable,
    }

    ICommandList_VTable ¶

    ICommandList_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	GetType:                  proc "stdcall" (this: ^ICommandList) -> COMMAND_LIST_TYPE,
    }

    ICommandQueue ¶

    ICommandQueue :: struct #raw_union {
    	id3d12pageable:            IPageable,
    	using id3d12commandqueue_vtable: ^ICommandQueue_VTable,
    }

    ICommandQueue_VTable ¶

    ICommandQueue_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	UpdateTileMappings:       proc "stdcall" (this: ^ICommandQueue, pResource: ^IResource, NumResourceRegions: u32, pResourceRegionStartCoordinates: ^TILED_RESOURCE_COORDINATE, pResourceRegionSizes: ^TILE_REGION_SIZE, pHeap: ^IHeap, NumRanges: u32, pRangeFlags: ^TILE_RANGE_FLAGS, pHeapRangeStartOffsets: ^u32, pRangeTileCounts: ^u32, Flags: TILE_MAPPING_FLAGS),
    	CopyTileMappings:         proc "stdcall" (this: ^ICommandQueue, pDstResource: ^IResource, pDstRegionStartCoordinate: ^TILED_RESOURCE_COORDINATE, pSrcResource: ^IResource, pSrcRegionStartCoordinate: ^TILED_RESOURCE_COORDINATE, pRegionSize: ^TILE_REGION_SIZE, Flags: TILE_MAPPING_FLAGS),
    	ExecuteCommandLists:      proc "stdcall" (this: ^ICommandQueue, NumCommandLists: u32, ppCommandLists: ^^ICommandList),
    	SetMarker:                proc "stdcall" (this: ^ICommandQueue, Metadata: u32, pData: rawptr, Size: u32),
    	BeginEvent:               proc "stdcall" (this: ^ICommandQueue, Metadata: u32, pData: rawptr, Size: u32),
    	EndEvent:                 proc "stdcall" (this: ^ICommandQueue),
    	Signal:                   proc "stdcall" (this: ^ICommandQueue, pFence: ^IFence, Value: u64) -> sys_windows.HRESULT,
    	Wait:                     proc "stdcall" (this: ^ICommandQueue, pFence: ^IFence, Value: u64) -> sys_windows.HRESULT,
    	GetTimestampFrequency:    proc "stdcall" (this: ^ICommandQueue, pFrequency: ^u64) -> sys_windows.HRESULT,
    	GetClockCalibration:      proc "stdcall" (this: ^ICommandQueue, pGpuTimestamp: ^u64, pCpuTimestamp: ^u64) -> sys_windows.HRESULT,
    	GetDesc:                  proc "stdcall" (this: ^ICommandQueue) -> COMMAND_QUEUE_DESC,
    }

    ICommandSignature ¶

    ICommandSignature :: struct {
    	id3d12pageable: IPageable,
    }

    ID3DDestructionNotifier ¶

    ID3DDestructionNotifier :: struct #raw_union {
    	iunknown:                       directx_dxgi.IUnknown,
    	using id3ddestructionnotifier_vtable: ^ID3DDestructionNotifier_VTable,
    }

    ID3DDestructionNotifier_VTable ¶

    ID3DDestructionNotifier_VTable :: struct {
    	using iunknown_vtable:         directx_dxgi.IUnknown_VTable,
    	RegisterDestructionCallback:   proc "stdcall" (this: ^ID3DDestructionNotifier, callbackFn: PFN_DESTRUCTION_CALLBACK, pData: rawptr, pCallbackID: ^u32) -> sys_windows.HRESULT,
    	UnregisterDestructionCallback: proc "stdcall" (this: ^ID3DDestructionNotifier, callbackID: u32) -> sys_windows.HRESULT,
    }

    IDebug ¶

    IDebug :: struct #raw_union {
    	iunknown:           directx_dxgi.IUnknown,
    	using id3d12debug_vtable: ^IDebug_VTable,
    }

    IDebug1 ¶

    IDebug1 :: struct #raw_union {
    	iunknown:            directx_dxgi.IUnknown,
    	using id3d12debug1_vtable: ^IDebug1_VTable,
    }

    IDebug1_VTable ¶

    IDebug1_VTable :: struct {
    	using iunknown_vtable:                       directx_dxgi.IUnknown_VTable,
    	EnableDebugLayer:                            proc "stdcall" (this: ^IDebug1),
    	SetEnableGPUBasedValidation:                 proc "stdcall" (this: ^IDebug1, Enable: sys_windows.BOOL),
    	SetEnableSynchronizedCommandQueueValidation: proc "stdcall" (this: ^IDebug1, Enable: sys_windows.BOOL),
    }

    IDebug2 ¶

    IDebug2 :: struct #raw_union {
    	iunknown:            directx_dxgi.IUnknown,
    	using id3d12debug2_vtable: ^IDebug2_VTable,
    }

    IDebug2_VTable ¶

    IDebug2_VTable :: struct {
    	using iunknown_vtable:      directx_dxgi.IUnknown_VTable,
    	SetGPUBasedValidationFlags: proc "stdcall" (this: ^IDebug2, Flags: GPU_BASED_VALIDATION_FLAGS),
    }

    IDebug3 ¶

    IDebug3 :: struct #raw_union {
    	id3d12debug:         IDebug,
    	using id3d12debug3_vtable: ^IDebug3_VTable,
    }

    IDebug3_VTable ¶

    IDebug3_VTable :: struct {
    	using id3d12debug_vtable:                    IDebug_VTable,
    	SetEnableGPUBasedValidation:                 proc "stdcall" (this: ^IDebug3, Enable: sys_windows.BOOL),
    	SetEnableSynchronizedCommandQueueValidation: proc "stdcall" (this: ^IDebug3, Enable: sys_windows.BOOL),
    	SetGPUBasedValidationFlags:                  proc "stdcall" (this: ^IDebug3, Flags: GPU_BASED_VALIDATION_FLAGS),
    }

    IDebugCommandList ¶

    IDebugCommandList :: struct #raw_union {
    	iunknown:                      directx_dxgi.IUnknown,
    	using id3d12debugcommandlist_vtable: ^IDebugCommandList_VTable,
    }

    IDebugCommandList1 ¶

    IDebugCommandList1 :: struct #raw_union {
    	iunknown:                       directx_dxgi.IUnknown,
    	using id3d12debugcommandlist1_vtable: ^IDebugCommandList1_VTable,
    }

    IDebugCommandList1_VTable ¶

    IDebugCommandList1_VTable :: struct {
    	using iunknown_vtable: directx_dxgi.IUnknown_VTable,
    	AssertResourceState: proc "stdcall" (this: ^IDebugCommandList1, pResource: ^IResource, Subresource: u32, State: u32) -> sys_windows.BOOL,
    	SetDebugParameter:   proc "stdcall" (this: ^IDebugCommandList1, Type: DEBUG_COMMAND_LIST_PARAMETER_TYPE, pData: rawptr, DataSize: u32) -> sys_windows.HRESULT,
    	GetDebugParameter:   proc "stdcall" (this: ^IDebugCommandList1, Type: DEBUG_COMMAND_LIST_PARAMETER_TYPE, pData: rawptr, DataSize: u32) -> sys_windows.HRESULT,
    }

    IDebugCommandList2 ¶

    IDebugCommandList2 :: struct #raw_union {
    	id3d12debugcommandlist:         IDebugCommandList,
    	using id3d12debugcommandlist2_vtable: ^IDebugCommandList2_VTable,
    }

    IDebugCommandList2_VTable ¶

    IDebugCommandList2_VTable :: struct {
    	using id3d12debugcommandlist_vtable: IDebugCommandList_VTable,
    	SetDebugParameter:             proc "stdcall" (this: ^IDebugCommandList2, Type: DEBUG_COMMAND_LIST_PARAMETER_TYPE, pData: rawptr, DataSize: u32) -> sys_windows.HRESULT,
    	GetDebugParameter:             proc "stdcall" (this: ^IDebugCommandList2, Type: DEBUG_COMMAND_LIST_PARAMETER_TYPE, pData: rawptr, DataSize: u32) -> sys_windows.HRESULT,
    }

    IDebugCommandList_VTable ¶

    IDebugCommandList_VTable :: struct {
    	using iunknown_vtable: directx_dxgi.IUnknown_VTable,
    	AssertResourceState: proc "stdcall" (this: ^IDebugCommandList, pResource: ^IResource, Subresource: u32, State: u32) -> sys_windows.BOOL,
    	SetFeatureMask:      proc "stdcall" (this: ^IDebugCommandList, Mask: DEBUG_FEATURE) -> sys_windows.HRESULT,
    	GetFeatureMask:      proc "stdcall" (this: ^IDebugCommandList) -> DEBUG_FEATURE,
    }

    IDebugCommandQueue ¶

    IDebugCommandQueue :: struct #raw_union {
    	iunknown:                       directx_dxgi.IUnknown,
    	using id3d12debugcommandqueue_vtable: ^IDebugCommandQueue_VTable,
    }

    IDebugCommandQueue_VTable ¶

    IDebugCommandQueue_VTable :: struct {
    	using iunknown_vtable: directx_dxgi.IUnknown_VTable,
    	AssertResourceState: proc "stdcall" (this: ^IDebugCommandQueue, pResource: ^IResource, Subresource: u32, State: u32) -> sys_windows.BOOL,
    }

    IDebugDevice ¶

    IDebugDevice :: struct #raw_union {
    	iunknown:                 directx_dxgi.IUnknown,
    	using id3d12debugdevice_vtable: ^IDebugDevice_VTable,
    }

    IDebugDevice1 ¶

    IDebugDevice1 :: struct #raw_union {
    	iunknown:                  directx_dxgi.IUnknown,
    	using id3d12debugdevice1_vtable: ^IDebugDevice1_VTable,
    }

    IDebugDevice1_VTable ¶

    IDebugDevice1_VTable :: struct {
    	using iunknown_vtable:   directx_dxgi.IUnknown_VTable,
    	SetDebugParameter:       proc "stdcall" (this: ^IDebugDevice1, Type: DEBUG_DEVICE_PARAMETER_TYPE, pData: rawptr, DataSize: u32) -> sys_windows.HRESULT,
    	GetDebugParameter:       proc "stdcall" (this: ^IDebugDevice1, Type: DEBUG_DEVICE_PARAMETER_TYPE, pData: rawptr, DataSize: u32) -> sys_windows.HRESULT,
    	ReportLiveDeviceObjects: proc "stdcall" (this: ^IDebugDevice1, Flags: RLDO_FLAGS) -> sys_windows.HRESULT,
    }

    IDebugDevice2 ¶

    IDebugDevice2 :: struct #raw_union {
    	id3d12debugdevice:         IDebugDevice,
    	using id3d12debugdevice2_vtable: ^IDebugDevice2_VTable,
    }

    IDebugDevice2_VTable ¶

    IDebugDevice2_VTable :: struct {
    	using id3d12debugdevice_vtable: IDebugDevice_VTable,
    	SetDebugParameter:        proc "stdcall" (this: ^IDebugDevice2, Type: DEBUG_DEVICE_PARAMETER_TYPE, pData: rawptr, DataSize: u32) -> sys_windows.HRESULT,
    	GetDebugParameter:        proc "stdcall" (this: ^IDebugDevice2, Type: DEBUG_DEVICE_PARAMETER_TYPE, pData: rawptr, DataSize: u32) -> sys_windows.HRESULT,
    }

    IDebugDevice_VTable ¶

    IDebugDevice_VTable :: struct {
    	using iunknown_vtable:   directx_dxgi.IUnknown_VTable,
    	SetFeatureMask:          proc "stdcall" (this: ^IDebugDevice, Mask: DEBUG_FEATURE) -> sys_windows.HRESULT,
    	GetFeatureMask:          proc "stdcall" (this: ^IDebugDevice) -> DEBUG_FEATURE,
    	ReportLiveDeviceObjects: proc "stdcall" (this: ^IDebugDevice, Flags: RLDO_FLAGS) -> sys_windows.HRESULT,
    }

    IDebug_VTable ¶

    IDebug_VTable :: struct {
    	using iunknown_vtable: directx_dxgi.IUnknown_VTable,
    	EnableDebugLayer: proc "stdcall" (this: ^IDebug),
    }

    IDescriptorHeap ¶

    IDescriptorHeap :: struct #raw_union {
    	id3d12pageable:              IPageable,
    	using id3d12descriptorheap_vtable: ^IDescriptorHeap_VTable,
    }

    IDescriptorHeap_VTable ¶

    IDescriptorHeap_VTable :: struct {
    	using id3d12devicechild_vtable:     IDeviceChild_VTable,
    	GetDesc:                            proc "stdcall" (this: ^IDescriptorHeap, desc: ^DESCRIPTOR_HEAP_DESC),
    	GetCPUDescriptorHandleForHeapStart: proc "stdcall" (this: ^IDescriptorHeap, handle: ^CPU_DESCRIPTOR_HANDLE),
    	GetGPUDescriptorHandleForHeapStart: proc "stdcall" (this: ^IDescriptorHeap, handle: ^GPU_DESCRIPTOR_HANDLE),
    }

    IDevice ¶

    IDevice :: struct #raw_union {
    	id3d12object:        IObject,
    	using id3d12device_vtable: ^IDevice_VTable,
    }

    IDevice1 ¶

    IDevice1 :: struct #raw_union {
    	id3d12device:         IDevice,
    	using id3d12device1_vtable: ^IDevice1_VTable,
    }

    IDevice1_VTable ¶

    IDevice1_VTable :: struct {
    	using id3d12device_vtable:         IDevice_VTable,
    	CreatePipelineLibrary:             proc "stdcall" (this: ^IDevice1, pLibraryBlob: rawptr, BlobLength: uint, riid: ^sys_windows.GUID, ppPipelineLibrary: ^rawptr) -> sys_windows.HRESULT,
    	SetEventOnMultipleFenceCompletion: proc "stdcall" (this: ^IDevice1, ppFences: ^^IFence, pFenceValues: ^u64, NumFences: u32, Flags: MULTIPLE_FENCE_WAIT_FLAGS, hEvent: sys_windows.HANDLE) -> sys_windows.HRESULT,
    	SetResidencyPriority:              proc "stdcall" (this: ^IDevice1, NumObjects: u32, ppObjects: ^^IPageable, pPriorities: ^RESIDENCY_PRIORITY) -> sys_windows.HRESULT,
    }

    IDevice2 ¶

    IDevice2 :: struct #raw_union {
    	id3d12device1:        IDevice1,
    	using id3d12device2_vtable: ^IDevice2_VTable,
    }

    IDevice2_VTable ¶

    IDevice2_VTable :: struct {
    	using id3d12device1_vtable: IDevice1_VTable,
    	CreatePipelineState:  proc "stdcall" (this: ^IDevice2, pDesc: ^PIPELINE_STATE_STREAM_DESC, riid: ^sys_windows.GUID, ppPipelineState: ^rawptr) -> sys_windows.HRESULT,
    }

    IDevice3 ¶

    IDevice3 :: struct #raw_union {
    	id3d12device2:        IDevice2,
    	using id3d12device3_vtable: ^IDevice3_VTable,
    }

    IDevice3_VTable ¶

    IDevice3_VTable :: struct {
    	using id3d12device2_vtable:      IDevice2_VTable,
    	OpenExistingHeapFromAddress:     proc "stdcall" (this: ^IDevice3, pAddress: rawptr, riid: ^sys_windows.GUID, ppvHeap: ^rawptr) -> sys_windows.HRESULT,
    	OpenExistingHeapFromFileMapping: proc "stdcall" (this: ^IDevice3, hFileMapping: sys_windows.HANDLE, riid: ^sys_windows.GUID, ppvHeap: ^rawptr) -> sys_windows.HRESULT,
    	EnqueueMakeResident:             proc "stdcall" (this: ^IDevice3, Flags: RESIDENCY_FLAGS, NumObjects: u32, ppObjects: ^^IPageable, pFenceToSignal: ^IFence, FenceValueToSignal: u64) -> sys_windows.HRESULT,
    }

    IDevice4 ¶

    IDevice4 :: struct #raw_union {
    	id3d12device3:        IDevice3,
    	using id3d12device4_vtable: ^IDevice4_VTable,
    }

    IDevice4_VTable ¶

    IDevice4_VTable :: struct {
    	using id3d12device3_vtable:     IDevice3_VTable,
    	CreateCommandList1:             proc "stdcall" (this: ^IDevice4, nodeMask: u32, type: COMMAND_LIST_TYPE, flags: COMMAND_LIST_FLAGS, riid: ^sys_windows.GUID, ppCommandList: ^rawptr) -> sys_windows.HRESULT,
    	CreateProtectedResourceSession: proc "stdcall" (this: ^IDevice4, pDesc: ^PROTECTED_RESOURCE_SESSION_DESC, riid: ^sys_windows.GUID, ppSession: ^rawptr) -> sys_windows.HRESULT,
    	CreateCommittedResource1:       proc "stdcall" (this: ^IDevice4, pHeapProperties: ^HEAP_PROPERTIES, HeapFlags: HEAP_FLAGS, pDesc: ^RESOURCE_DESC, InitialResourceState: RESOURCE_STATES, pOptimizedClearValue: ^CLEAR_VALUE, pProtectedSession: ^IProtectedResourceSession, riidResource: ^sys_windows.GUID, ppvResource: ^rawptr) -> sys_windows.HRESULT,
    	CreateHeap1:                    proc "stdcall" (this: ^IDevice4, pDesc: ^HEAP_DESC, pProtectedSession: ^IProtectedResourceSession, riid: ^sys_windows.GUID, ppvHeap: ^rawptr) -> sys_windows.HRESULT,
    	CreateReservedResource1:        proc "stdcall" (this: ^IDevice4, pDesc: ^RESOURCE_DESC, InitialState: RESOURCE_STATES, pOptimizedClearValue: ^CLEAR_VALUE, pProtectedSession: ^IProtectedResourceSession, riid: ^sys_windows.GUID, ppvResource: ^rawptr) -> sys_windows.HRESULT,
    	GetResourceAllocationInfo1:     proc "stdcall" (this: ^IDevice4, RetVal: ^RESOURCE_ALLOCATION_INFO, visibleMask: u32, numResourceDescs: u32, pResourceDescs: ^RESOURCE_DESC, pResourceAllocationInfo1: ^RESOURCE_ALLOCATION_INFO1),
    }

    IDevice5 ¶

    IDevice5 :: struct #raw_union {
    	id3d12device4:        IDevice4,
    	using id3d12device5_vtable: ^IDevice5_VTable,
    }

    IDevice5_VTable ¶

    IDevice5_VTable :: struct {
    	using id3d12device4_vtable:                     IDevice4_VTable,
    	CreateLifetimeTracker:                          proc "stdcall" (this: ^IDevice5, pOwner: ^ILifetimeOwner, riid: ^sys_windows.GUID, ppvTracker: ^rawptr) -> sys_windows.HRESULT,
    	RemoveDevice:                                   proc "stdcall" (this: ^IDevice5),
    	EnumerateMetaCommands:                          proc "stdcall" (this: ^IDevice5, pNumMetaCommands: ^u32, pDescs: ^META_COMMAND_DESC) -> sys_windows.HRESULT,
    	EnumerateMetaCommandParameters:                 proc "stdcall" (this: ^IDevice5, CommandId: ^sys_windows.GUID, Stage: META_COMMAND_PARAMETER_STAGE, pTotalStructureSizeInBytes: ^u32, pParameterCount: ^u32, pParameterDescs: ^META_COMMAND_PARAMETER_DESC) -> sys_windows.HRESULT,
    	CreateMetaCommand:                              proc "stdcall" (this: ^IDevice5, CommandId: ^sys_windows.GUID, NodeMask: u32, pCreationParametersData: rawptr, CreationParametersDataSizeInBytes: uint, riid: ^sys_windows.GUID, ppMetaCommand: ^rawptr) -> sys_windows.HRESULT,
    	CreateStateObject:                              proc "stdcall" (this: ^IDevice5, pDesc: ^STATE_OBJECT_DESC, riid: ^sys_windows.GUID, ppStateObject: ^rawptr) -> sys_windows.HRESULT,
    	GetRaytracingAccelerationStructurePrebuildInfo: proc "stdcall" (this: ^IDevice5, pDesc: ^BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS, pInfo: ^RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO),
    	CheckDriverMatchingIdentifier:                  proc "stdcall" (this: ^IDevice5, SerializedDataType: SERIALIZED_DATA_TYPE, pIdentifierToCheck: ^SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER) -> DRIVER_MATCHING_IDENTIFIER_STATUS,
    }

    IDevice6 ¶

    IDevice6 :: struct #raw_union {
    	id3d12device5:        IDevice5,
    	using id3d12device6_vtable: ^IDevice6_VTable,
    }

    IDevice6_VTable ¶

    IDevice6_VTable :: struct {
    	using id3d12device5_vtable:  IDevice5_VTable,
    	SetBackgroundProcessingMode: proc "stdcall" (this: ^IDevice6, Mode: BACKGROUND_PROCESSING_MODE, MeasurementsAction: MEASUREMENTS_ACTION, hEventToSignalUponCompletion: sys_windows.HANDLE, pbFurtherMeasurementsDesired: ^sys_windows.BOOL) -> sys_windows.HRESULT,
    }

    IDevice7 ¶

    IDevice7 :: struct #raw_union {
    	id3d12device6:        IDevice6,
    	using id3d12device7_vtable: ^IDevice7_VTable,
    }

    IDevice7_VTable ¶

    IDevice7_VTable :: struct {
    	using id3d12device6_vtable:      IDevice6_VTable,
    	AddToStateObject:                proc "stdcall" (this: ^IDevice7, pAddition: ^STATE_OBJECT_DESC, pStateObjectToGrowFrom: ^IStateObject, riid: ^sys_windows.GUID, ppNewStateObject: ^rawptr) -> sys_windows.HRESULT,
    	CreateProtectedResourceSession1: proc "stdcall" (this: ^IDevice7, pDesc: ^PROTECTED_RESOURCE_SESSION_DESC1, riid: ^sys_windows.GUID, ppSession: ^rawptr) -> sys_windows.HRESULT,
    }

    IDevice8 ¶

    IDevice8 :: struct #raw_union {
    	id3d12device7:        IDevice7,
    	using id3d12device8_vtable: ^IDevice8_VTable,
    }

    IDevice8_VTable ¶

    IDevice8_VTable :: struct {
    	using id3d12device7_vtable:               IDevice7_VTable,
    	GetResourceAllocationInfo2:               proc "stdcall" (this: ^IDevice8, RetVal: ^RESOURCE_ALLOCATION_INFO, visibleMask: u32, numResourceDescs: u32, pResourceDescs: ^RESOURCE_DESC1, pResourceAllocationInfo1: ^RESOURCE_ALLOCATION_INFO1),
    	CreateCommittedResource2:                 proc "stdcall" (this: ^IDevice8, pHeapProperties: ^HEAP_PROPERTIES, HeapFlags: HEAP_FLAGS, pDesc: ^RESOURCE_DESC1, InitialResourceState: RESOURCE_STATES, pOptimizedClearValue: ^CLEAR_VALUE, pProtectedSession: ^IProtectedResourceSession, riidResource: ^sys_windows.GUID, ppvResource: ^rawptr) -> sys_windows.HRESULT,
    	CreatePlacedResource1:                    proc "stdcall" (this: ^IDevice8, pHeap: ^IHeap, HeapOffset: u64, pDesc: ^RESOURCE_DESC1, InitialState: RESOURCE_STATES, pOptimizedClearValue: ^CLEAR_VALUE, riid: ^sys_windows.GUID, ppvResource: ^rawptr) -> sys_windows.HRESULT,
    	CreateSamplerFeedbackUnorderedAccessView: proc "stdcall" (this: ^IDevice8, pTargetedResource: ^IResource, pFeedbackResource: ^IResource, DestDescriptor: CPU_DESCRIPTOR_HANDLE),
    	GetCopyableFootprints1:                   proc "stdcall" (this: ^IDevice8, pResourceDesc: ^RESOURCE_DESC1, FirstSubresource: u32, NumSubresources: u32, BaseOffset: u64, pLayouts: ^PLACED_SUBRESOURCE_FOOTPRINT, pNumRows: ^u32, pRowSizeInBytes: ^u64, pTotalBytes: ^u64),
    }

    IDeviceChild ¶

    IDeviceChild :: struct #raw_union {
    	id3d12object:             IObject,
    	using id3d12devicechild_vtable: ^IDeviceChild_VTable,
    }

    IDeviceChild_VTable ¶

    IDeviceChild_VTable :: struct {
    	using id3d12object_vtable: IObject_VTable,
    	GetDevice:           proc "stdcall" (this: ^IDeviceChild, riid: ^sys_windows.GUID, ppvDevice: ^rawptr) -> sys_windows.HRESULT,
    }

    IDeviceRemovedExtendedData ¶

    IDeviceRemovedExtendedData :: struct #raw_union {
    	iunknown:                               directx_dxgi.IUnknown,
    	using id3d12deviceremovedextendeddata_vtable: ^IDeviceRemovedExtendedData_VTable,
    }

    IDeviceRemovedExtendedData1 ¶

    IDeviceRemovedExtendedData1 :: struct #raw_union {
    	id3d12deviceremovedextendeddata:         IDeviceRemovedExtendedData,
    	using id3d12deviceremovedextendeddata1_vtable: ^IDeviceRemovedExtendedData1_VTable,
    }

    IDeviceRemovedExtendedData1_VTable ¶

    IDeviceRemovedExtendedData1_VTable :: struct {
    	using id3d12deviceremovedextendeddata_vtable: IDeviceRemovedExtendedData_VTable,
    	GetAutoBreadcrumbsOutput1:              proc "stdcall" (this: ^IDeviceRemovedExtendedData1, pOutput: ^DRED_AUTO_BREADCRUMBS_OUTPUT1) -> sys_windows.HRESULT,
    	GetPageFaultAllocationOutput1:          proc "stdcall" (this: ^IDeviceRemovedExtendedData1, pOutput: ^DRED_PAGE_FAULT_OUTPUT1) -> sys_windows.HRESULT,
    }

    IDeviceRemovedExtendedDataSettings ¶

    IDeviceRemovedExtendedDataSettings :: struct #raw_union {
    	iunknown:                                       directx_dxgi.IUnknown,
    	using id3d12deviceremovedextendeddatasettings_vtable: ^IDeviceRemovedExtendedDataSettings_VTable,
    }

    IDeviceRemovedExtendedDataSettings1 ¶

    IDeviceRemovedExtendedDataSettings1 :: struct #raw_union {
    	id3d12deviceremovedextendeddatasettings:         IDeviceRemovedExtendedDataSettings,
    	using id3d12deviceremovedextendeddatasettings1_vtable: ^IDeviceRemovedExtendedDataSettings1_VTable,
    }

    IDeviceRemovedExtendedDataSettings1_VTable ¶

    IDeviceRemovedExtendedDataSettings1_VTable :: struct {
    	using id3d12deviceremovedextendeddatasettings_vtable: IDeviceRemovedExtendedDataSettings_VTable,
    	SetBreadcrumbContextEnablement:                 proc "stdcall" (this: ^IDeviceRemovedExtendedDataSettings1, Enablement: DRED_ENABLEMENT),
    }

    IDeviceRemovedExtendedDataSettings_VTable ¶

    IDeviceRemovedExtendedDataSettings_VTable :: struct {
    	using iunknown_vtable:        directx_dxgi.IUnknown_VTable,
    	SetAutoBreadcrumbsEnablement: proc "stdcall" (this: ^IDeviceRemovedExtendedDataSettings, Enablement: DRED_ENABLEMENT),
    	SetPageFaultEnablement:       proc "stdcall" (this: ^IDeviceRemovedExtendedDataSettings, Enablement: DRED_ENABLEMENT),
    	SetWatsonDumpEnablement:      proc "stdcall" (this: ^IDeviceRemovedExtendedDataSettings, Enablement: DRED_ENABLEMENT),
    }

    IDeviceRemovedExtendedData_VTable ¶

    IDeviceRemovedExtendedData_VTable :: struct {
    	using iunknown_vtable:        directx_dxgi.IUnknown_VTable,
    	GetAutoBreadcrumbsOutput:     proc "stdcall" (this: ^IDeviceRemovedExtendedData, pOutput: ^DRED_AUTO_BREADCRUMBS_OUTPUT) -> sys_windows.HRESULT,
    	GetPageFaultAllocationOutput: proc "stdcall" (this: ^IDeviceRemovedExtendedData, pOutput: ^DRED_PAGE_FAULT_OUTPUT) -> sys_windows.HRESULT,
    }

    IDevice_VTable ¶

    IDevice_VTable :: struct {
    	using id3d12object_vtable:        IObject_VTable,
    	GetNodeCount:                     proc "stdcall" (this: ^IDevice) -> u32,
    	CreateCommandQueue:               proc "stdcall" (this: ^IDevice, pDesc: ^COMMAND_QUEUE_DESC, riid: ^sys_windows.GUID, ppCommandQueue: ^rawptr) -> sys_windows.HRESULT,
    	CreateCommandAllocator:           proc "stdcall" (this: ^IDevice, type: COMMAND_LIST_TYPE, riid: ^sys_windows.GUID, ppCommandAllocator: ^rawptr) -> sys_windows.HRESULT,
    	CreateGraphicsPipelineState:      proc "stdcall" (this: ^IDevice, pDesc: ^GRAPHICS_PIPELINE_STATE_DESC, riid: ^sys_windows.GUID, ppPipelineState: ^rawptr) -> sys_windows.HRESULT,
    	CreateComputePipelineState:       proc "stdcall" (this: ^IDevice, pDesc: ^COMPUTE_PIPELINE_STATE_DESC, riid: ^sys_windows.GUID, ppPipelineState: ^rawptr) -> sys_windows.HRESULT,
    	CreateCommandList:                proc "stdcall" (this: ^IDevice, nodeMask: u32, type: COMMAND_LIST_TYPE, pCommandAllocator: ^ICommandAllocator, pInitialState: ^IPipelineState, riid: ^sys_windows.GUID, ppCommandList: ^rawptr) -> sys_windows.HRESULT,
    	CheckFeatureSupport:              proc "stdcall" (this: ^IDevice, Feature: FEATURE, pFeatureSupportData: rawptr, FeatureSupportDataSize: u32) -> sys_windows.HRESULT,
    	CreateDescriptorHeap:             proc "stdcall" (this: ^IDevice, pDescriptorHeapDesc: ^DESCRIPTOR_HEAP_DESC, riid: ^sys_windows.GUID, ppvHeap: ^rawptr) -> sys_windows.HRESULT,
    	GetDescriptorHandleIncrementSize: proc "stdcall" (this: ^IDevice, DescriptorHeapType: DESCRIPTOR_HEAP_TYPE) -> u32,
    	CreateRootSignature:              proc "stdcall" (this: ^IDevice, nodeMask: u32, pBlobWithRootSignature: rawptr, blobLengthInBytes: uint, riid: ^sys_windows.GUID, ppvRootSignature: ^rawptr) -> sys_windows.HRESULT,
    	CreateConstantBufferView:         proc "stdcall" (this: ^IDevice, pDesc: ^CONSTANT_BUFFER_VIEW_DESC, DestDescriptor: CPU_DESCRIPTOR_HANDLE),
    	CreateShaderResourceView:         proc "stdcall" (this: ^IDevice, pResource: ^IResource, pDesc: ^SHADER_RESOURCE_VIEW_DESC, DestDescriptor: CPU_DESCRIPTOR_HANDLE),
    	CreateUnorderedAccessView:        proc "stdcall" (this: ^IDevice, pResource: ^IResource, pCounterResource: ^IResource, pDesc: ^UNORDERED_ACCESS_VIEW_DESC, DestDescriptor: CPU_DESCRIPTOR_HANDLE),
    	CreateRenderTargetView:           proc "stdcall" (this: ^IDevice, pResource: ^IResource, pDesc: ^RENDER_TARGET_VIEW_DESC, DestDescriptor: CPU_DESCRIPTOR_HANDLE),
    	CreateDepthStencilView:           proc "stdcall" (this: ^IDevice, pResource: ^IResource, pDesc: ^DEPTH_STENCIL_VIEW_DESC, DestDescriptor: CPU_DESCRIPTOR_HANDLE),
    	CreateSampler:                    proc "stdcall" (this: ^IDevice, pDesc: ^SAMPLER_DESC, DestDescriptor: CPU_DESCRIPTOR_HANDLE),
    	CopyDescriptors:                  proc "stdcall" (this: ^IDevice, NumDestDescriptorRanges: u32, pDestDescriptorRangeStarts: ^CPU_DESCRIPTOR_HANDLE, pDestDescriptorRangeSizes: ^u32, NumSrcDescriptorRanges: u32, pSrcDescriptorRangeStarts: ^CPU_DESCRIPTOR_HANDLE, pSrcDescriptorRangeSizes: ^u32, DescriptorHeapsType: DESCRIPTOR_HEAP_TYPE),
    	CopyDescriptorsSimple:            proc "stdcall" (this: ^IDevice, NumDescriptors: u32, DestDescriptorRangeStart: CPU_DESCRIPTOR_HANDLE, SrcDescriptorRangeStart: CPU_DESCRIPTOR_HANDLE, DescriptorHeapsType: DESCRIPTOR_HEAP_TYPE),
    	GetResourceAllocationInfo:        proc "stdcall" (this: ^IDevice, RetVal: ^RESOURCE_ALLOCATION_INFO, visibleMask: u32, numResourceDescs: u32, pResourceDescs: ^RESOURCE_DESC),
    	GetCustomHeapProperties:          proc "stdcall" (this: ^IDevice, nodeMask: u32, heapType: HEAP_TYPE) -> HEAP_PROPERTIES,
    	CreateCommittedResource:          proc "stdcall" (this: ^IDevice, pHeapProperties: ^HEAP_PROPERTIES, HeapFlags: HEAP_FLAGS, pDesc: ^RESOURCE_DESC, InitialResourceState: RESOURCE_STATES, pOptimizedClearValue: ^CLEAR_VALUE, riidResource: ^sys_windows.GUID, ppvResource: ^rawptr) -> sys_windows.HRESULT,
    	CreateHeap:                       proc "stdcall" (this: ^IDevice, pDesc: ^HEAP_DESC, riid: ^sys_windows.GUID, ppvHeap: ^rawptr) -> sys_windows.HRESULT,
    	CreatePlacedResource:             proc "stdcall" (this: ^IDevice, pHeap: ^IHeap, HeapOffset: u64, pDesc: ^RESOURCE_DESC, InitialState: RESOURCE_STATES, pOptimizedClearValue: ^CLEAR_VALUE, riid: ^sys_windows.GUID, ppvResource: ^rawptr) -> sys_windows.HRESULT,
    	CreateReservedResource:           proc "stdcall" (this: ^IDevice, pDesc: ^RESOURCE_DESC, InitialState: RESOURCE_STATES, pOptimizedClearValue: ^CLEAR_VALUE, riid: ^sys_windows.GUID, ppvResource: ^rawptr) -> sys_windows.HRESULT,
    	CreateSharedHandle:               proc "stdcall" (this: ^IDevice, pObject: ^IDeviceChild, pAttributes: ^sys_windows.SECURITY_ATTRIBUTES, Access: u32, Name: [^]u16, pHandle: ^sys_windows.HANDLE) -> sys_windows.HRESULT,
    	OpenSharedHandle:                 proc "stdcall" (this: ^IDevice, NTHandle: sys_windows.HANDLE, riid: ^sys_windows.GUID, ppvObj: ^rawptr) -> sys_windows.HRESULT,
    	OpenSharedHandleByName:           proc "stdcall" (this: ^IDevice, Name: [^]u16, Access: u32, pNTHandle: ^sys_windows.HANDLE) -> sys_windows.HRESULT,
    	MakeResident:                     proc "stdcall" (this: ^IDevice, NumObjects: u32, ppObjects: ^^IPageable) -> sys_windows.HRESULT,
    	Evict:                            proc "stdcall" (this: ^IDevice, NumObjects: u32, ppObjects: ^^IPageable) -> sys_windows.HRESULT,
    	CreateFence:                      proc "stdcall" (this: ^IDevice, InitialValue: u64, Flags: FENCE_FLAGS, riid: ^sys_windows.GUID, ppFence: ^rawptr) -> sys_windows.HRESULT,
    	GetDeviceRemovedReason:           proc "stdcall" (this: ^IDevice) -> sys_windows.HRESULT,
    	GetCopyableFootprints:            proc "stdcall" (this: ^IDevice, pResourceDesc: ^RESOURCE_DESC, FirstSubresource: u32, NumSubresources: u32, BaseOffset: u64, pLayouts: ^PLACED_SUBRESOURCE_FOOTPRINT, pNumRows: ^u32, pRowSizeInBytes: ^u64, pTotalBytes: ^u64),
    	CreateQueryHeap:                  proc "stdcall" (this: ^IDevice, pDesc: ^QUERY_HEAP_DESC, riid: ^sys_windows.GUID, ppvHeap: ^rawptr) -> sys_windows.HRESULT,
    	SetStablePowerState:              proc "stdcall" (this: ^IDevice, Enable: sys_windows.BOOL) -> sys_windows.HRESULT,
    	CreateCommandSignature:           proc "stdcall" (this: ^IDevice, pDesc: ^COMMAND_SIGNATURE_DESC, pRootSignature: ^IRootSignature, riid: ^sys_windows.GUID, ppvCommandSignature: ^rawptr) -> sys_windows.HRESULT,
    	GetResourceTiling:                proc "stdcall" (this: ^IDevice, pTiledResource: ^IResource, pNumTilesForEntireResource: ^u32, pPackedMipDesc: ^PACKED_MIP_INFO, pStandardTileShapeForNonPackedMips: ^TILE_SHAPE, pNumSubresourceTilings: ^u32, FirstSubresourceTilingToGet: u32, pSubresourceTilingsForNonPackedMips: ^SUBRESOURCE_TILING),
    	GetAdapterLuid:                   proc "stdcall" (this: ^IDevice) -> sys_windows.LUID,
    }

    IFence ¶

    IFence :: struct #raw_union {
    	id3d12pageable:     IPageable,
    	using id3d12fence_vtable: ^IFence_VTable,
    }

    IFence1 ¶

    IFence1 :: struct #raw_union {
    	id3d12fence:         IFence,
    	using id3d12fence1_vtable: ^IFence1_VTable,
    }

    IFence1_VTable ¶

    IFence1_VTable :: struct {
    	id3d12fence_vtable: IFence_VTable,
    	GetCreationFlags:   proc "stdcall" (this: ^IFence1) -> FENCE_FLAGS,
    }

    IFence_VTable ¶

    IFence_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	GetCompletedValue:        proc "stdcall" (this: ^IFence) -> u64,
    	SetEventOnCompletion:     proc "stdcall" (this: ^IFence, Value: u64, hEvent: sys_windows.HANDLE) -> sys_windows.HRESULT,
    	Signal:                   proc "stdcall" (this: ^IFence, Value: u64) -> sys_windows.HRESULT,
    }

    IFunctionParameterReflection ¶

    IFunctionParameterReflection :: struct {
    	using id3d12functionparameterreflection_vtable: ^IFunctionParameterReflection_VTable,
    }

    IFunctionParameterReflection_VTable ¶

    IFunctionParameterReflection_VTable :: struct {
    	GetDesc: proc "stdcall" (this: ^IFunctionParameterReflection, pDesc: ^PARAMETER_DESC) -> sys_windows.HRESULT,
    }

    IFunctionReflection ¶

    IFunctionReflection :: struct {
    	using id3d12functionreflection_vtable: ^IFunctionReflection_VTable,
    }

    IFunctionReflection_VTable ¶

    IFunctionReflection_VTable :: struct {
    	GetDesc:                      proc "stdcall" (this: ^IFunctionReflection, pDesc: ^FUNCTION_DESC) -> sys_windows.HRESULT,
    	GetConstantBufferByIndex:     proc "stdcall" (this: ^IFunctionReflection, BufferIndex: u32) -> ^IShaderReflectionConstantBuffer,
    	GetConstantBufferByName:      proc "stdcall" (this: ^IFunctionReflection, Name: cstring) -> ^IShaderReflectionConstantBuffer,
    	GetResourceBindingDesc:       proc "stdcall" (this: ^IFunctionReflection, ResourceIndex: u32, pDesc: ^SHADER_INPUT_BIND_DESC) -> sys_windows.HRESULT,
    	GetVariableByName:            proc "stdcall" (this: ^IFunctionReflection, Name: cstring) -> ^IShaderReflectionVariable,
    	GetResourceBindingDescByName: proc "stdcall" (this: ^IFunctionReflection, Name: cstring, pDesc: ^SHADER_INPUT_BIND_DESC) -> sys_windows.HRESULT,
    	GetFunctionParameter:         proc "stdcall" (this: ^IFunctionReflection, ParameterIndex: i32) -> ^IFunctionParameterReflection,
    }

    IGraphicsCommandList ¶

    IGraphicsCommandList :: struct #raw_union {
    	id3d12commandlist:                ICommandList,
    	using id3d12graphicscommandlist_vtable: ^IGraphicsCommandList_VTable,
    }

    IGraphicsCommandList1 ¶

    IGraphicsCommandList1 :: struct #raw_union {
    	id3d12graphicscommandlist:         IGraphicsCommandList,
    	using id3d12graphicscommandlist1_vtable: ^IGraphicsCommandList1_VTable,
    }

    IGraphicsCommandList1_VTable ¶

    IGraphicsCommandList1_VTable :: struct {
    	using id3d12graphicscommandlist_vtable: IGraphicsCommandList_VTable,
    	AtomicCopyBufferUINT:             proc "stdcall" (this: ^IGraphicsCommandList1, pDstBuffer: ^IResource, DstOffset: u64, pSrcBuffer: ^IResource, SrcOffset: u64, Dependencies: u32, ppDependentResources: ^^IResource, pDependentSubresourceRanges: ^SUBRESOURCE_RANGE_UINT64),
    	AtomicCopyBufferUINT64:           proc "stdcall" (this: ^IGraphicsCommandList1, pDstBuffer: ^IResource, DstOffset: u64, pSrcBuffer: ^IResource, SrcOffset: u64, Dependencies: u32, ppDependentResources: ^^IResource, pDependentSubresourceRanges: ^SUBRESOURCE_RANGE_UINT64),
    	OMSetDepthBounds:                 proc "stdcall" (this: ^IGraphicsCommandList1, Min: f32, Max: f32),
    	SetSamplePositions:               proc "stdcall" (this: ^IGraphicsCommandList1, NumSamplesPerPixel: u32, NumPixels: u32, pSamplePositions: ^SAMPLE_POSITION),
    	ResolveSubresourceRegion:         proc "stdcall" (this: ^IGraphicsCommandList1, pDstResource: ^IResource, DstSubresource: u32, DstX: u32, DstY: u32, pSrcResource: ^IResource, SrcSubresource: u32, pSrcRect: ^sys_windows.RECT, Format: directx_dxgi.FORMAT, ResolveMode: RESOLVE_MODE),
    	SetViewInstanceMask:              proc "stdcall" (this: ^IGraphicsCommandList1, Mask: u32),
    }

    IGraphicsCommandList2 ¶

    IGraphicsCommandList2 :: struct #raw_union {
    	id3d12graphicscommandlist1:        IGraphicsCommandList1,
    	using id3d12graphicscommandlist2_vtable: ^IGraphicsCommandList2_VTable,
    }

    IGraphicsCommandList2_VTable ¶

    IGraphicsCommandList2_VTable :: struct {
    	using id3d12graphicscommandlist1_vtable: IGraphicsCommandList1_VTable,
    	WriteBufferImmediate:              proc "stdcall" (this: ^IGraphicsCommandList2, Count: u32, pParams: ^WRITEBUFFERIMMEDIATE_PARAMETER, pModes: ^WRITEBUFFERIMMEDIATE_MODE),
    }

    IGraphicsCommandList3 ¶

    IGraphicsCommandList3 :: struct #raw_union {
    	id3d12graphicscommandlist2:        IGraphicsCommandList2,
    	using id3d12graphicscommandlist3_vtable: ^IGraphicsCommandList3_VTable,
    }

    IGraphicsCommandList3_VTable ¶

    IGraphicsCommandList3_VTable :: struct {
    	using id3d12graphicscommandlist2_vtable: IGraphicsCommandList2_VTable,
    	SetProtectedResourceSession:       proc "stdcall" (this: ^IGraphicsCommandList3, pProtectedResourceSession: ^IProtectedResourceSession),
    }

    IGraphicsCommandList4 ¶

    IGraphicsCommandList4 :: struct #raw_union {
    	id3d12graphicscommandlist3:        IGraphicsCommandList3,
    	using id3d12graphicscommandlist4_vtable: ^IGraphicsCommandList4_VTable,
    }

    IGraphicsCommandList4_VTable ¶

    IGraphicsCommandList4_VTable :: struct {
    	using id3d12graphicscommandlist3_vtable:          IGraphicsCommandList3_VTable,
    	BeginRenderPass:                                  proc "stdcall" (this: ^IGraphicsCommandList4, NumRenderTargets: u32, pRenderTargets: ^RENDER_PASS_RENDER_TARGET_DESC, pDepthStencil: ^RENDER_PASS_DEPTH_STENCIL_DESC, Flags: RENDER_PASS_FLAGS),
    	EndRenderPass:                                    proc "stdcall" (this: ^IGraphicsCommandList4),
    	InitializeMetaCommand:                            proc "stdcall" (this: ^IGraphicsCommandList4, pMetaCommand: ^IMetaCommand, pInitializationParametersData: rawptr, InitializationParametersDataSizeInBytes: uint),
    	ExecuteMetaCommand:                               proc "stdcall" (this: ^IGraphicsCommandList4, pMetaCommand: ^IMetaCommand, pExecutionParametersData: rawptr, ExecutionParametersDataSizeInBytes: uint),
    	BuildRaytracingAccelerationStructure:             proc "stdcall" (this: ^IGraphicsCommandList4, pDesc: ^BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC, NumPostbuildInfoDescs: u32, pPostbuildInfoDescs: ^RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC),
    	EmitRaytracingAccelerationStructurePostbuildInfo: proc "stdcall" (this: ^IGraphicsCommandList4, pDesc: ^RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC, NumSourceAccelerationStructures: u32, pSourceAccelerationStructureData: ^u64),
    	CopyRaytracingAccelerationStructure:              proc "stdcall" (this: ^IGraphicsCommandList4, DestAccelerationStructureData: u64, SourceAccelerationStructureData: u64, Mode: RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE),
    	SetPipelineState1:                                proc "stdcall" (this: ^IGraphicsCommandList4, pStateObject: ^IStateObject),
    	DispatchRays:                                     proc "stdcall" (this: ^IGraphicsCommandList4, pDesc: ^DISPATCH_RAYS_DESC),
    }

    IGraphicsCommandList5 ¶

    IGraphicsCommandList5 :: struct #raw_union {
    	id3d12graphicscommandlist4:        IGraphicsCommandList4,
    	using id3d12graphicscommandlist5_vtable: ^IGraphicsCommandList5_VTable,
    }

    IGraphicsCommandList5_VTable ¶

    IGraphicsCommandList5_VTable :: struct {
    	using id3d12graphicscommandlist4_vtable: IGraphicsCommandList4_VTable,
    	RSSetShadingRate:                  proc "stdcall" (this: ^IGraphicsCommandList5, baseShadingRate: SHADING_RATE, combiners: ^SHADING_RATE_COMBINER),
    	RSSetShadingRateImage:             proc "stdcall" (this: ^IGraphicsCommandList5, shadingRateImage: ^IResource),
    }

    IGraphicsCommandList6 ¶

    IGraphicsCommandList6 :: struct #raw_union {
    	id3d12graphicscommandlist5:        IGraphicsCommandList5,
    	using id3d12graphicscommandlist6_vtable: ^IGraphicsCommandList6_VTable,
    }

    IGraphicsCommandList6_VTable ¶

    IGraphicsCommandList6_VTable :: struct {
    	using id3d12graphicscommandlist5_vtable: IGraphicsCommandList5_VTable,
    	DispatchMesh:                      proc "stdcall" (this: ^IGraphicsCommandList6, ThreadGroupCountX: u32, ThreadGroupCountY: u32, ThreadGroupCountZ: u32),
    }

    IGraphicsCommandList_VTable ¶

    IGraphicsCommandList_VTable :: struct {
    	using id3d12commandlist_vtable:     ICommandList_VTable,
    	Close:                              proc "stdcall" (this: ^IGraphicsCommandList) -> sys_windows.HRESULT,
    	Reset:                              proc "stdcall" (this: ^IGraphicsCommandList, pAllocator: ^ICommandAllocator, pInitialState: ^IPipelineState) -> sys_windows.HRESULT,
    	ClearState:                         proc "stdcall" (this: ^IGraphicsCommandList, pPipelineState: ^IPipelineState),
    	DrawInstanced:                      proc "stdcall" (this: ^IGraphicsCommandList, VertexCountPerInstance: u32, InstanceCount: u32, StartVertexLocation: u32, StartInstanceLocation: u32),
    	DrawIndexedInstanced:               proc "stdcall" (this: ^IGraphicsCommandList, IndexCountPerInstance: u32, InstanceCount: u32, StartIndexLocation: u32, BaseVertexLocation: i32, StartInstanceLocation: u32),
    	Dispatch:                           proc "stdcall" (this: ^IGraphicsCommandList, ThreadGroupCountX: u32, ThreadGroupCountY: u32, ThreadGroupCountZ: u32),
    	CopyBufferRegion:                   proc "stdcall" (this: ^IGraphicsCommandList, pDstBuffer: ^IResource, DstOffset: u64, pSrcBuffer: ^IResource, SrcOffset: u64, NumBytes: u64),
    	CopyTextureRegion:                  proc "stdcall" (this: ^IGraphicsCommandList, pDst: ^TEXTURE_COPY_LOCATION, DstX: u32, DstY: u32, DstZ: u32, pSrc: ^TEXTURE_COPY_LOCATION, pSrcBox: ^BOX),
    	CopyResource:                       proc "stdcall" (this: ^IGraphicsCommandList, pDstResource: ^IResource, pSrcResource: ^IResource),
    	CopyTiles:                          proc "stdcall" (this: ^IGraphicsCommandList, pTiledResource: ^IResource, pTileRegionStartCoordinate: ^TILED_RESOURCE_COORDINATE, pTileRegionSize: ^TILE_REGION_SIZE, pBuffer: ^IResource, BufferStartOffsetInBytes: u64, Flags: TILE_COPY_FLAGS),
    	ResolveSubresource:                 proc "stdcall" (this: ^IGraphicsCommandList, pDstResource: ^IResource, DstSubresource: u32, pSrcResource: ^IResource, SrcSubresource: u32, Format: directx_dxgi.FORMAT),
    	IASetPrimitiveTopology:             proc "stdcall" (this: ^IGraphicsCommandList, PrimitiveTopology: PRIMITIVE_TOPOLOGY),
    	RSSetViewports:                     proc "stdcall" (this: ^IGraphicsCommandList, NumViewports: u32, pViewports: ^VIEWPORT),
    	RSSetScissorRects:                  proc "stdcall" (this: ^IGraphicsCommandList, NumRects: u32, pRects: ^sys_windows.RECT),
    	OMSetBlendFactor:                   proc "stdcall" (this: ^IGraphicsCommandList, BlendFactor: ^[4]f32),
    	OMSetStencilRef:                    proc "stdcall" (this: ^IGraphicsCommandList, StencilRef: u32),
    	SetPipelineState:                   proc "stdcall" (this: ^IGraphicsCommandList, pPipelineState: ^IPipelineState),
    	ResourceBarrier:                    proc "stdcall" (this: ^IGraphicsCommandList, NumBarriers: u32, pBarriers: ^RESOURCE_BARRIER),
    	ExecuteBundle:                      proc "stdcall" (this: ^IGraphicsCommandList, pCommandList: ^IGraphicsCommandList),
    	SetDescriptorHeaps:                 proc "stdcall" (this: ^IGraphicsCommandList, NumDescriptorHeaps: u32, ppDescriptorHeaps: ^^IDescriptorHeap),
    	SetComputeRootSignature:            proc "stdcall" (this: ^IGraphicsCommandList, pRootSignature: ^IRootSignature),
    	SetGraphicsRootSignature:           proc "stdcall" (this: ^IGraphicsCommandList, pRootSignature: ^IRootSignature),
    	SetComputeRootDescriptorTable:      proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, BaseDescriptor: GPU_DESCRIPTOR_HANDLE),
    	SetGraphicsRootDescriptorTable:     proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, BaseDescriptor: GPU_DESCRIPTOR_HANDLE),
    	SetComputeRoot32BitConstant:        proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, SrcData: u32, DestOffsetIn32BitValues: u32),
    	SetGraphicsRoot32BitConstant:       proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, SrcData: u32, DestOffsetIn32BitValues: u32),
    	SetComputeRoot32BitConstants:       proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, Num32BitValuesToSet: u32, pSrcData: rawptr, DestOffsetIn32BitValues: u32),
    	SetGraphicsRoot32BitConstants:      proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, Num32BitValuesToSet: u32, pSrcData: rawptr, DestOffsetIn32BitValues: u32),
    	SetComputeRootConstantBufferView:   proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, BufferLocation: u64),
    	SetGraphicsRootConstantBufferView:  proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, BufferLocation: u64),
    	SetComputeRootShaderResourceView:   proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, BufferLocation: u64),
    	SetGraphicsRootShaderResourceView:  proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, BufferLocation: u64),
    	SetComputeRootUnorderedAccessView:  proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, BufferLocation: u64),
    	SetGraphicsRootUnorderedAccessView: proc "stdcall" (this: ^IGraphicsCommandList, RootParameterIndex: u32, BufferLocation: u64),
    	IASetIndexBuffer:                   proc "stdcall" (this: ^IGraphicsCommandList, pView: ^INDEX_BUFFER_VIEW),
    	IASetVertexBuffers:                 proc "stdcall" (this: ^IGraphicsCommandList, StartSlot: u32, NumViews: u32, pViews: ^VERTEX_BUFFER_VIEW),
    	SOSetTargets:                       proc "stdcall" (this: ^IGraphicsCommandList, StartSlot: u32, NumViews: u32, pViews: ^STREAM_OUTPUT_BUFFER_VIEW),
    	OMSetRenderTargets:                 proc "stdcall" (this: ^IGraphicsCommandList, NumRenderTargetDescriptors: u32, pRenderTargetDescriptors: ^CPU_DESCRIPTOR_HANDLE, RTsSingleHandleToDescriptorRange: sys_windows.BOOL, pDepthStencilDescriptor: ^CPU_DESCRIPTOR_HANDLE),
    	ClearDepthStencilView:              proc "stdcall" (this: ^IGraphicsCommandList, DepthStencilView: CPU_DESCRIPTOR_HANDLE, ClearFlags: CLEAR_FLAGS, Depth: f32, Stencil: u8, NumRects: u32, pRects: ^sys_windows.RECT),
    	ClearRenderTargetView:              proc "stdcall" (this: ^IGraphicsCommandList, RenderTargetView: CPU_DESCRIPTOR_HANDLE, ColorRGBA: ^[4]f32, NumRects: u32, pRects: ^sys_windows.RECT),
    	ClearUnorderedAccessViewUint:       proc "stdcall" (this: ^IGraphicsCommandList, ViewGPUHandleInCurrentHeap: GPU_DESCRIPTOR_HANDLE, ViewCPUHandle: CPU_DESCRIPTOR_HANDLE, pResource: ^IResource, Values: ^[4]u32, NumRects: u32, pRects: ^sys_windows.RECT),
    	ClearUnorderedAccessViewFloat:      proc "stdcall" (this: ^IGraphicsCommandList, ViewGPUHandleInCurrentHeap: GPU_DESCRIPTOR_HANDLE, ViewCPUHandle: CPU_DESCRIPTOR_HANDLE, pResource: ^IResource, Values: ^[4]f32, NumRects: u32, pRects: ^sys_windows.RECT),
    	DiscardResource:                    proc "stdcall" (this: ^IGraphicsCommandList, pResource: ^IResource, pRegion: ^DISCARD_REGION),
    	BeginQuery:                         proc "stdcall" (this: ^IGraphicsCommandList, pQueryHeap: ^IQueryHeap, Type: QUERY_TYPE, Index: u32),
    	EndQuery:                           proc "stdcall" (this: ^IGraphicsCommandList, pQueryHeap: ^IQueryHeap, Type: QUERY_TYPE, Index: u32),
    	ResolveQueryData:                   proc "stdcall" (this: ^IGraphicsCommandList, pQueryHeap: ^IQueryHeap, Type: QUERY_TYPE, StartIndex: u32, NumQueries: u32, pDestinationBuffer: ^IResource, AlignedDestinationBufferOffset: u64),
    	SetPredication:                     proc "stdcall" (this: ^IGraphicsCommandList, pBuffer: ^IResource, AlignedBufferOffset: u64, Operation: PREDICATION_OP),
    	SetMarker:                          proc "stdcall" (this: ^IGraphicsCommandList, Metadata: u32, pData: rawptr, Size: u32),
    	BeginEvent:                         proc "stdcall" (this: ^IGraphicsCommandList, Metadata: u32, pData: rawptr, Size: u32),
    	EndEvent:                           proc "stdcall" (this: ^IGraphicsCommandList),
    	ExecuteIndirect:                    proc "stdcall" (this: ^IGraphicsCommandList, pCommandSignature: ^ICommandSignature, MaxCommandCount: u32, pArgumentBuffer: ^IResource, ArgumentBufferOffset: u64, pCountBuffer: ^IResource, CountBufferOffset: u64),
    }

    IHeap ¶

    IHeap :: struct #raw_union {
    	id3d12pageable:    IPageable,
    	using id3d12heap_vtable: ^IHeap_VTable,
    }

    IHeap1 ¶

    IHeap1 :: struct #raw_union {
    	id3d12heap:         IHeap,
    	using id3d12heap1_vtable: ^IHeap1_VTable,
    }

    IHeap1_VTable ¶

    IHeap1_VTable :: struct {
    	using id3d12heap_vtable:     IHeap_VTable,
    	GetProtectedResourceSession: proc "stdcall" (this: ^IHeap1, riid: ^sys_windows.GUID, ppProtectedSession: ^rawptr) -> sys_windows.HRESULT,
    }

    IHeap_VTable ¶

    IHeap_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	GetDesc:                  proc "stdcall" (this: ^IHeap) -> HEAP_DESC,
    }

    IID ¶

    IID :: sys_windows.GUID

    IInfoQueue ¶

    IInfoQueue :: struct #raw_union {
    	iunknown:               directx_dxgi.IUnknown,
    	using id3d12infoqueue_vtable: ^IInfoQueue_VTable,
    }

    IInfoQueue1 ¶

    IInfoQueue1 :: struct #raw_union {
    	iinfo_queue:            IInfoQueue,
    	using idxgiinfoqueue1_vtable: ^IInfoQueue1_VTable,
    }

    IInfoQueue1_VTable ¶

    IInfoQueue1_VTable :: struct {
    	using idxgiinfoqueue_vtable: IInfoQueue_VTable,
    	RegisterMessageCallback:   proc "stdcall" (this: ^IInfoQueue1, CallbackFunc: PFN_MESSAGE_CALLBACK, CallbackFilterFlags: MESSAGE_CALLBACK_FLAGS, pContext: rawptr, pCallbackCookie: ^u32) -> sys_windows.HRESULT,
    	UnregisterMessageCallback: proc "stdcall" (this: ^IInfoQueue1, pCallbackCookie: u32) -> sys_windows.HRESULT,
    }

    IInfoQueue_VTable ¶

    IInfoQueue_VTable :: struct {
    	using iunknown_vtable:                        directx_dxgi.IUnknown_VTable,
    	SetMessageCountLimit:                         proc "stdcall" (this: ^IInfoQueue, MessageCountLimit: u64) -> sys_windows.HRESULT,
    	ClearStoredMessages:                          proc "stdcall" (this: ^IInfoQueue),
    	GetMessageA:                                  proc "stdcall" (this: ^IInfoQueue, MessageIndex: u64, pMessage: ^MESSAGE, pMessageByteLength: ^uint) -> sys_windows.HRESULT,
    	GetNumMessagesAllowedByStorageFilter:         proc "stdcall" (this: ^IInfoQueue) -> u64,
    	GetNumMessagesDeniedByStorageFilter:          proc "stdcall" (this: ^IInfoQueue) -> u64,
    	GetNumStoredMessages:                         proc "stdcall" (this: ^IInfoQueue) -> u64,
    	GetNumStoredMessagesAllowedByRetrievalFilter: proc "stdcall" (this: ^IInfoQueue) -> u64,
    	GetNumMessagesDiscardedByMessageCountLimit:   proc "stdcall" (this: ^IInfoQueue) -> u64,
    	GetMessageCountLimit:                         proc "stdcall" (this: ^IInfoQueue) -> u64,
    	AddStorageFilterEntries:                      proc "stdcall" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER) -> sys_windows.HRESULT,
    	GetStorageFilter:                             proc "stdcall" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER, pFilterByteLength: ^uint) -> sys_windows.HRESULT,
    	ClearStorageFilter:                           proc "stdcall" (this: ^IInfoQueue),
    	PushEmptyStorageFilter:                       proc "stdcall" (this: ^IInfoQueue) -> sys_windows.HRESULT,
    	PushCopyOfStorageFilter:                      proc "stdcall" (this: ^IInfoQueue) -> sys_windows.HRESULT,
    	PushStorageFilter:                            proc "stdcall" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER) -> sys_windows.HRESULT,
    	PopStorageFilter:                             proc "stdcall" (this: ^IInfoQueue),
    	GetStorageFilterStackSize:                    proc "stdcall" (this: ^IInfoQueue) -> u32,
    	AddRetrievalFilterEntries:                    proc "stdcall" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER) -> sys_windows.HRESULT,
    	GetRetrievalFilter:                           proc "stdcall" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER, pFilterByteLength: ^uint) -> sys_windows.HRESULT,
    	ClearRetrievalFilter:                         proc "stdcall" (this: ^IInfoQueue),
    	PushEmptyRetrievalFilter:                     proc "stdcall" (this: ^IInfoQueue) -> sys_windows.HRESULT,
    	PushCopyOfRetrievalFilter:                    proc "stdcall" (this: ^IInfoQueue) -> sys_windows.HRESULT,
    	PushRetrievalFilter:                          proc "stdcall" (this: ^IInfoQueue, pFilter: ^INFO_QUEUE_FILTER) -> sys_windows.HRESULT,
    	PopRetrievalFilter:                           proc "stdcall" (this: ^IInfoQueue),
    	GetRetrievalFilterStackSize:                  proc "stdcall" (this: ^IInfoQueue) -> u32,
    	AddMessage:                                   proc "stdcall" (this: ^IInfoQueue, Category: MESSAGE_CATEGORY, Severity: MESSAGE_SEVERITY, ID: MESSAGE_ID, pDescription: cstring) -> sys_windows.HRESULT,
    	AddApplicationMessage:                        proc "stdcall" (this: ^IInfoQueue, Severity: MESSAGE_SEVERITY, pDescription: cstring) -> sys_windows.HRESULT,
    	SetBreakOnCategory:                           proc "stdcall" (this: ^IInfoQueue, Category: MESSAGE_CATEGORY, bEnable: sys_windows.BOOL) -> sys_windows.HRESULT,
    	SetBreakOnSeverity:                           proc "stdcall" (this: ^IInfoQueue, Severity: MESSAGE_SEVERITY, bEnable: sys_windows.BOOL) -> sys_windows.HRESULT,
    	SetBreakOnID:                                 proc "stdcall" (this: ^IInfoQueue, ID: MESSAGE_ID, bEnable: sys_windows.BOOL) -> sys_windows.HRESULT,
    	GetBreakOnCategory:                           proc "stdcall" (this: ^IInfoQueue, Category: MESSAGE_CATEGORY) -> sys_windows.BOOL,
    	GetBreakOnSeverity:                           proc "stdcall" (this: ^IInfoQueue, Severity: MESSAGE_SEVERITY) -> sys_windows.BOOL,
    	GetBreakOnID:                                 proc "stdcall" (this: ^IInfoQueue, ID: MESSAGE_ID) -> sys_windows.BOOL,
    	SetMuteDebugOutput:                           proc "stdcall" (this: ^IInfoQueue, bMute: sys_windows.BOOL),
    	GetMuteDebugOutput:                           proc "stdcall" (this: ^IInfoQueue) -> sys_windows.BOOL,
    }

    ILibraryReflection ¶

    ILibraryReflection :: struct #raw_union {
    	iunknown:                       directx_dxgi.IUnknown,
    	using id3d12libraryreflection_vtable: ^ILibraryReflection_VTable,
    }

    ILibraryReflection_VTable ¶

    ILibraryReflection_VTable :: struct {
    	using iunknown_vtable: directx_dxgi.IUnknown_VTable,
    	GetDesc:            proc "stdcall" (this: ^ILibraryReflection, pDesc: ^LIBRARY_DESC) -> sys_windows.HRESULT,
    	GetFunctionByIndex: proc "stdcall" (this: ^ILibraryReflection, FunctionIndex: i32) -> ^IFunctionReflection,
    }

    ILifetimeOwner ¶

    ILifetimeOwner :: struct #raw_union {
    	iunknown:                   directx_dxgi.IUnknown,
    	using id3d12lifetimeowner_vtable: ^ILifetimeOwner_VTable,
    }

    ILifetimeOwner_VTable ¶

    ILifetimeOwner_VTable :: struct {
    	using iunknown_vtable: directx_dxgi.IUnknown_VTable,
    	LifetimeStateUpdated: proc "stdcall" (this: ^ILifetimeOwner, NewState: LIFETIME_STATE),
    }

    ILifetimeTracker ¶

    ILifetimeTracker :: struct #raw_union {
    	id3d12devicechild:            IDeviceChild,
    	using id3d12lifetimetracker_vtable: ^ILifetimeTracker_VTable,
    }

    ILifetimeTracker_VTable ¶

    ILifetimeTracker_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	DestroyOwnedObject:       proc "stdcall" (this: ^ILifetimeTracker, pObject: ^IDeviceChild) -> sys_windows.HRESULT,
    }

    IMetaCommand ¶

    IMetaCommand :: struct #raw_union {
    	id3d12pageable:           IPageable,
    	using id3d12metacommand_vtable: ^IMetaCommand_VTable,
    }

    IMetaCommand_VTable ¶

    IMetaCommand_VTable :: struct {
    	using id3d12devicechild_vtable:   IDeviceChild_VTable,
    	GetRequiredParameterResourceSize: proc "stdcall" (this: ^IMetaCommand, Stage: META_COMMAND_PARAMETER_STAGE, ParameterIndex: u32) -> u64,
    }

    IModule ¶

    IModule :: directx_d3d_compiler.ID3D11Module

    IModuleInstance ¶

    IModuleInstance :: directx_d3d_compiler.ID3D11ModuleInstance

    INDEX_BUFFER_STRIP_CUT_VALUE ¶

    INDEX_BUFFER_STRIP_CUT_VALUE :: enum i32 {
    	DISABLED    = 0, 
    	_0xFFFF     = 1, 
    	_0xFFFFFFFF = 2, 
    }

    INDEX_BUFFER_VIEW ¶

    INDEX_BUFFER_VIEW :: struct {
    	BufferLocation: u64,
    	SizeInBytes:    u32,
    	Format:         directx_dxgi.FORMAT,
    }

    INDIRECT_ARGUMENT_DESC ¶

    INDIRECT_ARGUMENT_DESC :: struct {
    	Type: INDIRECT_ARGUMENT_TYPE,
    	using _: struct #raw_union {
    		VertexBuffer:        struct {
    			Slot: u32,
    		},
    		Constant:            struct {
    			RootParameterIndex:      u32,
    			DestOffsetIn32BitValues: u32,
    			Num32BitValuesToSet:     u32,
    		},
    		ConstantBufferView:  struct {
    			RootParameterIndex: u32,
    		},
    		ShaderResourceView:  struct {
    			RootParameterIndex: u32,
    		},
    		UnorderedAccessView: struct {
    			RootParameterIndex: u32,
    		},
    	},
    }

    INDIRECT_ARGUMENT_TYPE ¶

    INDIRECT_ARGUMENT_TYPE :: enum i32 {
    	DRAW                  = 0, 
    	DRAW_INDEXED          = 1, 
    	DISPATCH              = 2, 
    	VERTEX_BUFFER_VIEW    = 3, 
    	INDEX_BUFFER_VIEW     = 4, 
    	CONSTANT              = 5, 
    	CONSTANT_BUFFER_VIEW  = 6, 
    	SHADER_RESOURCE_VIEW  = 7, 
    	UNORDERED_ACCESS_VIEW = 8, 
    	DISPATCH_RAYS         = 9, 
    	DISPATCH_MESH         = 10, 
    }

    INFO_QUEUE_FILTER ¶

    INFO_QUEUE_FILTER :: struct {
    	AllowList: INFO_QUEUE_FILTER_DESC,
    	DenyList:  INFO_QUEUE_FILTER_DESC,
    }

    INFO_QUEUE_FILTER_DESC ¶

    INFO_QUEUE_FILTER_DESC :: struct {
    	NumCategories: u32,
    	pCategoryList: ^MESSAGE_CATEGORY,
    	NumSeverities: u32,
    	pSeverityList: ^MESSAGE_SEVERITY,
    	NumIDs:        u32,
    	pIDList:       ^MESSAGE_ID,
    }

    INPUT_CLASSIFICATION ¶

    INPUT_CLASSIFICATION :: enum i32 {
    	PER_VERTEX_DATA   = 0, 
    	PER_INSTANCE_DATA = 1, 
    }

    INPUT_ELEMENT_DESC ¶

    INPUT_ELEMENT_DESC :: struct {
    	SemanticName:         cstring,
    	SemanticIndex:        u32,
    	Format:               directx_dxgi.FORMAT,
    	InputSlot:            u32,
    	AlignedByteOffset:    u32,
    	InputSlotClass:       INPUT_CLASSIFICATION,
    	InstanceDataStepRate: u32,
    }

    INPUT_LAYOUT_DESC ¶

    INPUT_LAYOUT_DESC :: struct {
    	pInputElementDescs: ^INPUT_ELEMENT_DESC,
    	NumElements:        u32,
    }

    INTERPOLATION_MODE ¶

    INTERPOLATION_MODE :: enum i32 {
    	UNDEFINED                     = 0, 
    	CONSTANT                      = 1, 
    	LINEAR                        = 2, 
    	LINEAR_CENTROID               = 3, 
    	LINEAR_NOPERSPECTIVE          = 4, 
    	LINEAR_NOPERSPECTIVE_CENTROID = 5, 
    	LINEAR_SAMPLE                 = 6, 
    	LINEAR_NOPERSPECTIVE_SAMPLE   = 7, 
    }

    IObject ¶

    IObject :: struct #raw_union {
    	iunknown:            directx_dxgi.IUnknown,
    	using id3d12object_vtable: ^IObject_VTable,
    }

    IObject_VTable ¶

    IObject_VTable :: struct {
    	using iunknown_vtable:   directx_dxgi.IUnknown_VTable,
    	GetPrivateData:          proc "stdcall" (this: ^IObject, guid: ^sys_windows.GUID, pDataSize: ^u32, pData: rawptr) -> sys_windows.HRESULT,
    	SetPrivateData:          proc "stdcall" (this: ^IObject, guid: ^sys_windows.GUID, DataSize: u32, pData: rawptr) -> sys_windows.HRESULT,
    	SetPrivateDataInterface: proc "stdcall" (this: ^IObject, guid: ^sys_windows.GUID, pData: ^directx_dxgi.IUnknown) -> sys_windows.HRESULT,
    	SetName:                 proc "stdcall" (this: ^IObject, Name: [^]u16) -> sys_windows.HRESULT,
    }

    IPageable ¶

    IPageable :: struct {
    	using id3d12devicechild: IDeviceChild,
    }

    IPipelineLibrary ¶

    IPipelineLibrary :: struct #raw_union {
    	id3d12devicechild:            IDeviceChild,
    	using id3d12pipelinelibrary_vtable: ^IPipelineLibrary_VTable,
    }

    IPipelineLibrary1 ¶

    IPipelineLibrary1 :: struct #raw_union {
    	id3d12pipelinelibrary:         IPipelineLibrary,
    	using id3d12pipelinelibrary1_vtable: ^IPipelineLibrary1_VTable,
    }

    IPipelineLibrary1_VTable ¶

    IPipelineLibrary1_VTable :: struct {
    	using id3d12pipelinelibrary_vtable: IPipelineLibrary_VTable,
    	LoadPipeline:                 proc "stdcall" (this: ^IPipelineLibrary1, pName: [^]u16, pDesc: ^PIPELINE_STATE_STREAM_DESC, riid: ^sys_windows.GUID, ppPipelineState: ^rawptr) -> sys_windows.HRESULT,
    }

    IPipelineLibrary_VTable ¶

    IPipelineLibrary_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	StorePipeline:            proc "stdcall" (this: ^IPipelineLibrary, pName: [^]u16, pPipeline: ^IPipelineState) -> sys_windows.HRESULT,
    	LoadGraphicsPipeline:     proc "stdcall" (this: ^IPipelineLibrary, pName: [^]u16, pDesc: ^GRAPHICS_PIPELINE_STATE_DESC, riid: ^sys_windows.GUID, ppPipelineState: ^rawptr) -> sys_windows.HRESULT,
    	LoadComputePipeline:      proc "stdcall" (this: ^IPipelineLibrary, pName: [^]u16, pDesc: ^COMPUTE_PIPELINE_STATE_DESC, riid: ^sys_windows.GUID, ppPipelineState: ^rawptr) -> sys_windows.HRESULT,
    	GetSerializedSize:        proc "stdcall" (this: ^IPipelineLibrary) -> uint,
    	Serialize:                proc "stdcall" (this: ^IPipelineLibrary, pData: rawptr, DataSizeInBytes: uint) -> sys_windows.HRESULT,
    }

    IPipelineState ¶

    IPipelineState :: struct #raw_union {
    	id3d12pageable:             IPageable,
    	using id3d12pipelinestate_vtable: ^IPipelineState_VTable,
    }

    IPipelineState_VTable ¶

    IPipelineState_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	GetCachedBlob:            proc "stdcall" (this: ^IPipelineState, ppBlob: ^^directx_d3d_compiler.ID3D10Blob) -> sys_windows.HRESULT,
    }

    IProtectedResourceSession ¶

    IProtectedResourceSession :: struct #raw_union {
    	id3d12protectedsession:                IProtectedSession,
    	using id3d12protectedresourcesession_vtable: ^IProtectedResourceSession_VTable,
    }

    IProtectedResourceSession1 ¶

    IProtectedResourceSession1 :: struct #raw_union {
    	id3d12protectedresourcesession:         IProtectedResourceSession,
    	using id3d12protectedresourcesession1_vtable: ^IProtectedResourceSession1_VTable,
    }

    IProtectedResourceSession1_VTable ¶

    IProtectedResourceSession1_VTable :: struct {
    	using id3d12protectedresourcesession_vtable: IProtectedResourceSession_VTable,
    	GetDesc1:                              proc "stdcall" (this: ^IProtectedResourceSession1) -> PROTECTED_RESOURCE_SESSION_DESC1,
    }

    IProtectedResourceSession_VTable ¶

    IProtectedResourceSession_VTable :: struct {
    	using id3d12protectedsession_vtable: IProtectedSession_VTable,
    	GetDesc:                       proc "stdcall" (this: ^IProtectedResourceSession) -> PROTECTED_RESOURCE_SESSION_DESC,
    }

    IProtectedSession ¶

    IProtectedSession :: struct #raw_union {
    	id3d12devicechild:             IDeviceChild,
    	using id3d12protectedsession_vtable: ^IProtectedSession_VTable,
    }

    IProtectedSession_VTable ¶

    IProtectedSession_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	GetStatusFence:           proc "stdcall" (this: ^IProtectedSession, riid: ^sys_windows.GUID, ppFence: ^rawptr) -> sys_windows.HRESULT,
    	GetSessionStatus:         proc "stdcall" (this: ^IProtectedSession) -> PROTECTED_SESSION_STATUS,
    }

    IQueryHeap ¶

    IQueryHeap :: struct {
    	id3d12pageable: IPageable,
    }

    IResource ¶

    IResource :: struct #raw_union {
    	id3d12pageable:        IPageable,
    	using id3d12resource_vtable: ^IResource_VTable,
    }

    IResource1 ¶

    IResource1 :: struct #raw_union {
    	id3d12resource:         IResource,
    	using id3d12resource1_vtable: ^IResource1_VTable,
    }

    IResource1_VTable ¶

    IResource1_VTable :: struct {
    	using id3d12resource_vtable: IResource_VTable,
    	GetProtectedResourceSession: proc "stdcall" (this: ^IResource1, riid: ^sys_windows.GUID, ppProtectedSession: ^rawptr) -> sys_windows.HRESULT,
    }

    IResource2 ¶

    IResource2 :: struct #raw_union {
    	id3d12resource1:        IResource1,
    	using id3d12resource2_vtable: ^IResource2_VTable,
    }

    IResource2_VTable ¶

    IResource2_VTable :: struct {
    	using id3d12resource1_vtable: IResource1_VTable,
    	GetDesc1:               proc "stdcall" (this: ^IResource2) -> RESOURCE_DESC1,
    }

    IResource_VTable ¶

    IResource_VTable :: struct {
    	using id3d12devicechild_vtable: IDeviceChild_VTable,
    	Map:                      proc "stdcall" (this: ^IResource, Subresource: u32, pReadRange: ^RANGE, ppData: ^rawptr) -> sys_windows.HRESULT,
    	Unmap:                    proc "stdcall" (this: ^IResource, Subresource: u32, pWrittenRange: ^RANGE),
    	GetDesc:                  proc "stdcall" (this: ^IResource) -> RESOURCE_DESC,
    	GetGPUVirtualAddress:     proc "stdcall" (this: ^IResource) -> u64,
    	WriteToSubresource:       proc "stdcall" (this: ^IResource, DstSubresource: u32, pDstBox: ^BOX, pSrcData: rawptr, SrcRowPitch: u32, SrcDepthPitch: u32) -> sys_windows.HRESULT,
    	ReadFromSubresource:      proc "stdcall" (this: ^IResource, pDstData: rawptr, DstRowPitch: u32, DstDepthPitch: u32, SrcSubresource: u32, pSrcBox: ^BOX) -> sys_windows.HRESULT,
    	GetHeapProperties:        proc "stdcall" (this: ^IResource, pHeapProperties: ^HEAP_PROPERTIES, pHeapFlags: ^HEAP_FLAGS) -> sys_windows.HRESULT,
    }

    IRootSignature ¶

    IRootSignature :: struct {
    	using id3d12devicechild: IDeviceChild,
    }

    IRootSignatureDeserializer ¶

    IRootSignatureDeserializer :: struct #raw_union {
    	iunknown:                               directx_dxgi.IUnknown,
    	using id3d12rootsignaturedeserializer_vtable: ^IRootSignatureDeserializer_VTable,
    }

    IRootSignatureDeserializer_VTable ¶

    IRootSignatureDeserializer_VTable :: struct {
    	using iunknown_vtable: directx_dxgi.IUnknown_VTable,
    	GetRootSignatureDesc: proc "stdcall" (this: ^IRootSignatureDeserializer) -> ^ROOT_SIGNATURE_DESC,
    }

    IShaderReflection ¶

    IShaderReflection :: struct #raw_union {
    	iunknown:                      directx_dxgi.IUnknown,
    	using id3d12shaderreflection_vtable: ^IShaderReflection_VTable,
    }

    IShaderReflectionConstantBuffer ¶

    IShaderReflectionConstantBuffer :: struct {
    	using id3d12shaderreflectionconstantbuffer_vtable: ^IShaderReflectionConstantBuffer_VTable,
    }

    IShaderReflectionConstantBuffer_VTable ¶

    IShaderReflectionConstantBuffer_VTable :: struct {
    	GetDesc:            proc "stdcall" (this: ^IShaderReflectionConstantBuffer, pDesc: ^SHADER_BUFFER_DESC) -> sys_windows.HRESULT,
    	GetVariableByIndex: proc "stdcall" (this: ^IShaderReflectionConstantBuffer, Index: u32) -> ^IShaderReflectionVariable,
    	GetVariableByName:  proc "stdcall" (this: ^IShaderReflectionConstantBuffer, Name: cstring) -> ^IShaderReflectionVariable,
    }

    IShaderReflectionType ¶

    IShaderReflectionType :: struct {
    	using id3d12shaderreflectiontype_vtable: ^IShaderReflectionType_VTable,
    }

    IShaderReflectionType_VTable ¶

    IShaderReflectionType_VTable :: struct {
    	GetDesc:              proc "stdcall" (this: ^IShaderReflectionType, pDesc: ^SHADER_TYPE_DESC) -> sys_windows.HRESULT,
    	GetMemberTypeByIndex: proc "stdcall" (this: ^IShaderReflectionType, Index: u32) -> ^IShaderReflectionType,
    	GetMemberTypeByName:  proc "stdcall" (this: ^IShaderReflectionType, Name: cstring) -> ^IShaderReflectionType,
    	GetMemberTypeName:    proc "stdcall" (this: ^IShaderReflectionType, Index: u32) -> cstring,
    	IsEqual:              proc "stdcall" (this: ^IShaderReflectionType, pType: ^IShaderReflectionType) -> sys_windows.HRESULT,
    	GetSubType:           proc "stdcall" (this: ^IShaderReflectionType) -> ^IShaderReflectionType,
    	GetBaseClass:         proc "stdcall" (this: ^IShaderReflectionType) -> ^IShaderReflectionType,
    	GetNumInterfaces:     proc "stdcall" (this: ^IShaderReflectionType) -> u32,
    	GetInterfaceByIndex:  proc "stdcall" (this: ^IShaderReflectionType, uIndex: u32) -> ^IShaderReflectionType,
    	IsOfType:             proc "stdcall" (this: ^IShaderReflectionType, pType: ^IShaderReflectionType) -> sys_windows.HRESULT,
    	ImplementsInterface:  proc "stdcall" (this: ^IShaderReflectionType, pBase: ^IShaderReflectionType) -> sys_windows.HRESULT,
    }

    IShaderReflectionVariable ¶

    IShaderReflectionVariable :: struct {
    	using id3d12shaderreflectionvariable_vtable: ^IShaderReflectionVariable_VTable,
    }

    IShaderReflectionVariable_VTable ¶

    IShaderReflectionVariable_VTable :: struct {
    	GetDesc:          proc "stdcall" (this: ^IShaderReflectionVariable, pDesc: ^SHADER_VARIABLE_DESC) -> sys_windows.HRESULT,
    	GetType:          proc "stdcall" (this: ^IShaderReflectionVariable) -> ^IShaderReflectionType,
    	GetBuffer:        proc "stdcall" (this: ^IShaderReflectionVariable) -> ^IShaderReflectionConstantBuffer,
    	GetInterfaceSlot: proc "stdcall" (this: ^IShaderReflectionVariable, uArrayIndex: u32) -> u32,
    }

    IShaderReflection_VTable ¶

    IShaderReflection_VTable :: struct {
    	using iunknown_vtable:         directx_dxgi.IUnknown_VTable,
    	GetDesc:                       proc "stdcall" (this: ^IShaderReflection, pDesc: ^SHADER_DESC) -> sys_windows.HRESULT,
    	GetConstantBufferByIndex:      proc "stdcall" (this: ^IShaderReflection, Index: u32) -> ^IShaderReflectionConstantBuffer,
    	GetConstantBufferByName:       proc "stdcall" (this: ^IShaderReflection, Name: cstring) -> ^IShaderReflectionConstantBuffer,
    	GetResourceBindingDesc:        proc "stdcall" (this: ^IShaderReflection, ResourceIndex: u32, pDesc: ^SHADER_INPUT_BIND_DESC) -> sys_windows.HRESULT,
    	GetInputParameterDesc:         proc "stdcall" (this: ^IShaderReflection, ParameterIndex: u32, pDesc: ^SIGNATURE_PARAMETER_DESC) -> sys_windows.HRESULT,
    	GetOutputParameterDesc:        proc "stdcall" (this: ^IShaderReflection, ParameterIndex: u32, pDesc: ^SIGNATURE_PARAMETER_DESC) -> sys_windows.HRESULT,
    	GetPatchConstantParameterDesc: proc "stdcall" (this: ^IShaderReflection, ParameterIndex: u32, pDesc: ^SIGNATURE_PARAMETER_DESC) -> sys_windows.HRESULT,
    	GetVariableByName:             proc "stdcall" (this: ^IShaderReflection, Name: cstring) -> ^IShaderReflectionVariable,
    	GetResourceBindingDescByName:  proc "stdcall" (this: ^IShaderReflection, Name: cstring, pDesc: ^SHADER_INPUT_BIND_DESC) -> sys_windows.HRESULT,
    	GetMovInstructionCount:        proc "stdcall" (this: ^IShaderReflection) -> u32,
    	GetMovcInstructionCount:       proc "stdcall" (this: ^IShaderReflection) -> u32,
    	GetConversionInstructionCount: proc "stdcall" (this: ^IShaderReflection) -> u32,
    	GetBitwiseInstructionCount:    proc "stdcall" (this: ^IShaderReflection) -> u32,
    	GetGSInputPrimitive:           proc "stdcall" (this: ^IShaderReflection) -> PRIMITIVE,
    	IsSampleFrequencyShader:       proc "stdcall" (this: ^IShaderReflection) -> sys_windows.BOOL,
    	GetNumInterfaceSlots:          proc "stdcall" (this: ^IShaderReflection) -> u32,
    	GetMinFeatureLevel:            proc "stdcall" (this: ^IShaderReflection, pLevel: ^FEATURE_LEVEL) -> sys_windows.HRESULT,
    	GetThreadGroupSize:            proc "stdcall" (this: ^IShaderReflection, pSizeX: ^u32, pSizeY: ^u32, pSizeZ: ^u32) -> u32,
    	GetRequiresFlags:              proc "stdcall" (this: ^IShaderReflection) -> SHADER_REQUIRES_FLAGS,
    }

    ISharingContract ¶

    ISharingContract :: struct #raw_union {
    	iunknown:                     directx_dxgi.IUnknown,
    	using id3d12sharingcontract_vtable: ^ISharingContract_VTable,
    }

    ISharingContract_VTable ¶

    ISharingContract_VTable :: struct {
    	using iunknown_vtable: directx_dxgi.IUnknown_VTable,
    	Present:             proc "stdcall" (this: ^ISharingContract, pResource: ^IResource, Subresource: u32, window: sys_windows.HWND),
    	SharedFenceSignal:   proc "stdcall" (this: ^ISharingContract, pFence: ^IFence, FenceValue: u64),
    	BeginCapturableWork: proc "stdcall" (this: ^ISharingContract, guid: ^sys_windows.GUID),
    	EndCapturableWork:   proc "stdcall" (this: ^ISharingContract, guid: ^sys_windows.GUID),
    }

    IStateObject ¶

    IStateObject :: struct {
    	id3d12pageable: IPageable,
    }

    IStateObjectProperties ¶

    IStateObjectProperties :: struct #raw_union {
    	iunknown:                           directx_dxgi.IUnknown,
    	using id3d12stateobjectproperties_vtable: ^IStateObjectProperties_VTable,
    }

    IStateObjectProperties_VTable ¶

    IStateObjectProperties_VTable :: struct {
    	using iunknown_vtable: directx_dxgi.IUnknown_VTable,
    	GetShaderIdentifier:  proc "stdcall" (this: ^IStateObjectProperties, pExportName: [^]u16) -> rawptr,
    	GetShaderStackSize:   proc "stdcall" (this: ^IStateObjectProperties, pExportName: [^]u16) -> u64,
    	GetPipelineStackSize: proc "stdcall" (this: ^IStateObjectProperties) -> u64,
    	SetPipelineStackSize: proc "stdcall" (this: ^IStateObjectProperties, PipelineStackSizeInBytes: u64),
    }

    ISwapChainAssistant ¶

    ISwapChainAssistant :: struct #raw_union {
    	iunknown:                        directx_dxgi.IUnknown,
    	using id3d12swapchainassistant_vtable: ^ISwapChainAssistant_VTable,
    }

    ISwapChainAssistant_VTable ¶

    ISwapChainAssistant_VTable :: struct {
    	using iunknown_vtable:             directx_dxgi.IUnknown_VTable,
    	GetLUID:                           proc "stdcall" (this: ^ISwapChainAssistant) -> sys_windows.LUID,
    	GetSwapChainObject:                proc "stdcall" (this: ^ISwapChainAssistant, riid: ^sys_windows.GUID, ppv: ^rawptr) -> sys_windows.HRESULT,
    	GetCurrentResourceAndCommandQueue: proc "stdcall" (this: ^ISwapChainAssistant, riidResource: ^sys_windows.GUID, ppvResource: ^rawptr, riidQueue: ^sys_windows.GUID, ppvQueue: ^rawptr) -> sys_windows.HRESULT,
    	InsertImplicitSync:                proc "stdcall" (this: ^ISwapChainAssistant) -> sys_windows.HRESULT,
    }

    ITools ¶

    ITools :: struct #raw_union {
    	iunknown:           directx_dxgi.IUnknown,
    	using id3d12tools_vtable: ^ITools_VTable,
    }

    ITools_VTable ¶

    ITools_VTable :: struct {
    	using iunknown_vtable:        directx_dxgi.IUnknown_VTable,
    	EnableShaderInstrumentation:  proc "stdcall" (this: ^ITools, bEnable: sys_windows.BOOL),
    	ShaderInstrumentationEnabled: proc "stdcall" (this: ^ITools) -> sys_windows.BOOL,
    }

    IUnknown ¶

    IUnknown :: directx_dxgi.IUnknown

    IUnknown_VTable ¶

    IUnknown_VTable :: directx_dxgi.IUnknown_VTable

    IVersionedRootSignatureDeserializer ¶

    IVersionedRootSignatureDeserializer :: struct #raw_union {
    	iunknown:                                        directx_dxgi.IUnknown,
    	using id3d12versionedrootsignaturedeserializer_vtable: ^IVersionedRootSignatureDeserializer_VTable,
    }

    IVersionedRootSignatureDeserializer_VTable ¶

    IVersionedRootSignatureDeserializer_VTable :: struct {
    	using iunknown_vtable:           directx_dxgi.IUnknown_VTable,
    	GetRootSignatureDescAtVersion:   proc "stdcall" (this: ^IVersionedRootSignatureDeserializer, convertToVersion: ROOT_SIGNATURE_VERSION, ppDesc: ^^VERSIONED_ROOT_SIGNATURE_DESC) -> sys_windows.HRESULT,
    	GetUnconvertedRootSignatureDesc: proc "stdcall" (this: ^IVersionedRootSignatureDeserializer) -> ^VERSIONED_ROOT_SIGNATURE_DESC,
    }

    LIBRARY_DESC ¶

    LIBRARY_DESC :: struct {
    	Creator:       cstring,
    	Flags:         u32,
    	FunctionCount: u32,
    }

    LIFETIME_STATE ¶

    LIFETIME_STATE :: enum i32 {
    	IN_USE     = 0, 
    	NOT_IN_USE = 1, 
    }

    LOCAL_ROOT_SIGNATURE ¶

    LOCAL_ROOT_SIGNATURE :: struct {
    	pLocalRootSignature: ^IRootSignature,
    }

    LOGIC_OP ¶

    LOGIC_OP :: enum i32 {
    	CLEAR         = 0, 
    	SET           = 1, 
    	COPY          = 2, 
    	COPY_INVERTED = 3, 
    	NOOP          = 4, 
    	INVERT        = 5, 
    	AND           = 6, 
    	NAND          = 7, 
    	OR            = 8, 
    	NOR           = 9, 
    	XOR           = 10, 
    	EQUIV         = 11, 
    	AND_REVERSE   = 12, 
    	AND_INVERTED  = 13, 
    	OR_REVERSE    = 14, 
    	OR_INVERTED   = 15, 
    }

    LUID ¶

    LUID :: sys_windows.LUID

    MEASUREMENTS_ACTION ¶

    MEASUREMENTS_ACTION :: enum i32 {
    	KEEP_ALL                     = 0, 
    	COMMIT_RESULTS               = 1, 
    	COMMIT_RESULTS_HIGH_PRIORITY = 2, 
    	DISCARD_PREVIOUS             = 3, 
    }

    MEMCPY_DEST ¶

    MEMCPY_DEST :: struct {
    	pData:      rawptr,
    	RowPitch:   uint,
    	SlicePitch: uint,
    }

    MEMORY_POOL ¶

    MEMORY_POOL :: enum i32 {
    	UNKNOWN = 0, 
    	L0      = 1, 
    	L1      = 2, 
    }

    MESH_SHADER_TIER ¶

    MESH_SHADER_TIER :: enum i32 {
    	NOT_SUPPORTED = 0, 
    	_1            = 10, 
    }

    MESSAGE ¶

    MESSAGE :: struct {
    	Category:              MESSAGE_CATEGORY,
    	Severity:              MESSAGE_SEVERITY,
    	ID:                    MESSAGE_ID,
    	pDescription:          cstring,
    	DescriptionByteLength: uint,
    }

    MESSAGE_CALLBACK_FLAG ¶

    MESSAGE_CALLBACK_FLAG :: enum int {
    	IGNORE_FILTERS = 0, 
    }

    MESSAGE_CALLBACK_FLAGS ¶

    MESSAGE_CALLBACK_FLAGS :: distinct bit_set[MESSAGE_CALLBACK_FLAG; u32]

    MESSAGE_CATEGORY ¶

    MESSAGE_CATEGORY :: enum i32 {
    	APPLICATION_DEFINED   = 0, 
    	MISCELLANEOUS         = 1, 
    	INITIALIZATION        = 2, 
    	CLEANUP               = 3, 
    	COMPILATION           = 4, 
    	STATE_CREATION        = 5, 
    	STATE_SETTING         = 6, 
    	STATE_GETTING         = 7, 
    	RESOURCE_MANIPULATION = 8, 
    	EXECUTION             = 9, 
    	SHADER                = 10, 
    }

    MESSAGE_ID ¶

    MESSAGE_ID :: enum i32 {
    	UNKNOWN                                                                                       = 0, 
    	STRING_FROM_APPLICATION                                                                       = 1, 
    	CORRUPTED_THIS                                                                                = 2, 
    	CORRUPTED_PARAMETER1                                                                          = 3, 
    	CORRUPTED_PARAMETER2                                                                          = 4, 
    	CORRUPTED_PARAMETER3                                                                          = 5, 
    	CORRUPTED_PARAMETER4                                                                          = 6, 
    	CORRUPTED_PARAMETER5                                                                          = 7, 
    	CORRUPTED_PARAMETER6                                                                          = 8, 
    	CORRUPTED_PARAMETER7                                                                          = 9, 
    	CORRUPTED_PARAMETER8                                                                          = 10, 
    	CORRUPTED_PARAMETER9                                                                          = 11, 
    	CORRUPTED_PARAMETER10                                                                         = 12, 
    	CORRUPTED_PARAMETER11                                                                         = 13, 
    	CORRUPTED_PARAMETER12                                                                         = 14, 
    	CORRUPTED_PARAMETER13                                                                         = 15, 
    	CORRUPTED_PARAMETER14                                                                         = 16, 
    	CORRUPTED_PARAMETER15                                                                         = 17, 
    	CORRUPTED_MULTITHREADING                                                                      = 18, 
    	MESSAGE_REPORTING_OUTOFMEMORY                                                                 = 19, 
    	GETPRIVATEDATA_MOREDATA                                                                       = 20, 
    	SETPRIVATEDATA_INVALIDFREEDATA                                                                = 21, 
    	SETPRIVATEDATA_CHANGINGPARAMS                                                                 = 24, 
    	SETPRIVATEDATA_OUTOFMEMORY                                                                    = 25, 
    	CREATESHADERRESOURCEVIEW_UNRECOGNIZEDFORMAT                                                   = 26, 
    	CREATESHADERRESOURCEVIEW_INVALIDDESC                                                          = 27, 
    	CREATESHADERRESOURCEVIEW_INVALIDFORMAT                                                        = 28, 
    	CREATESHADERRESOURCEVIEW_INVALIDVIDEOPLANESLICE                                               = 29, 
    	CREATESHADERRESOURCEVIEW_INVALIDPLANESLICE                                                    = 30, 
    	CREATESHADERRESOURCEVIEW_INVALIDDIMENSIONS                                                    = 31, 
    	CREATESHADERRESOURCEVIEW_INVALIDRESOURCE                                                      = 32, 
    	CREATERENDERTARGETVIEW_UNRECOGNIZEDFORMAT                                                     = 35, 
    	CREATERENDERTARGETVIEW_UNSUPPORTEDFORMAT                                                      = 36, 
    	CREATERENDERTARGETVIEW_INVALIDDESC                                                            = 37, 
    	CREATERENDERTARGETVIEW_INVALIDFORMAT                                                          = 38, 
    	CREATERENDERTARGETVIEW_INVALIDVIDEOPLANESLICE                                                 = 39, 
    	CREATERENDERTARGETVIEW_INVALIDPLANESLICE                                                      = 40, 
    	CREATERENDERTARGETVIEW_INVALIDDIMENSIONS                                                      = 41, 
    	CREATERENDERTARGETVIEW_INVALIDRESOURCE                                                        = 42, 
    	CREATEDEPTHSTENCILVIEW_UNRECOGNIZEDFORMAT                                                     = 45, 
    	CREATEDEPTHSTENCILVIEW_INVALIDDESC                                                            = 46, 
    	CREATEDEPTHSTENCILVIEW_INVALIDFORMAT                                                          = 47, 
    	CREATEDEPTHSTENCILVIEW_INVALIDDIMENSIONS                                                      = 48, 
    	CREATEDEPTHSTENCILVIEW_INVALIDRESOURCE                                                        = 49, 
    	CREATEINPUTLAYOUT_OUTOFMEMORY                                                                 = 52, 
    	CREATEINPUTLAYOUT_TOOMANYELEMENTS                                                             = 53, 
    	CREATEINPUTLAYOUT_INVALIDFORMAT                                                               = 54, 
    	CREATEINPUTLAYOUT_INCOMPATIBLEFORMAT                                                          = 55, 
    	CREATEINPUTLAYOUT_INVALIDSLOT                                                                 = 56, 
    	CREATEINPUTLAYOUT_INVALIDINPUTSLOTCLASS                                                       = 57, 
    	CREATEINPUTLAYOUT_STEPRATESLOTCLASSMISMATCH                                                   = 58, 
    	CREATEINPUTLAYOUT_INVALIDSLOTCLASSCHANGE                                                      = 59, 
    	CREATEINPUTLAYOUT_INVALIDSTEPRATECHANGE                                                       = 60, 
    	CREATEINPUTLAYOUT_INVALIDALIGNMENT                                                            = 61, 
    	CREATEINPUTLAYOUT_DUPLICATESEMANTIC                                                           = 62, 
    	CREATEINPUTLAYOUT_UNPARSEABLEINPUTSIGNATURE                                                   = 63, 
    	CREATEINPUTLAYOUT_NULLSEMANTIC                                                                = 64, 
    	CREATEINPUTLAYOUT_MISSINGELEMENT                                                              = 65, 
    	CREATEVERTEXSHADER_OUTOFMEMORY                                                                = 66, 
    	CREATEVERTEXSHADER_INVALIDSHADERBYTECODE                                                      = 67, 
    	CREATEVERTEXSHADER_INVALIDSHADERTYPE                                                          = 68, 
    	CREATEGEOMETRYSHADER_OUTOFMEMORY                                                              = 69, 
    	CREATEGEOMETRYSHADER_INVALIDSHADERBYTECODE                                                    = 70, 
    	CREATEGEOMETRYSHADER_INVALIDSHADERTYPE                                                        = 71, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTOFMEMORY                                              = 72, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERBYTECODE                                    = 73, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE                                        = 74, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMENTRIES                                        = 75, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSTREAMSTRIDEUNUSED                                 = 76, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_OUTPUTSLOT0EXPECTED                                      = 79, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSLOT                                        = 80, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_ONLYONEELEMENTPERSLOT                                    = 81, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDCOMPONENTCOUNT                                    = 82, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTARTCOMPONENTANDCOMPONENTCOUNT                   = 83, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDGAPDEFINITION                                     = 84, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_REPEATEDOUTPUT                                           = 85, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDOUTPUTSTREAMSTRIDE                                = 86, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGSEMANTIC                                          = 87, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MASKMISMATCH                                             = 88, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_CANTHAVEONLYGAPS                                         = 89, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DECLTOOCOMPLEX                                           = 90, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_MISSINGOUTPUTSIGNATURE                                   = 91, 
    	CREATEPIXELSHADER_OUTOFMEMORY                                                                 = 92, 
    	CREATEPIXELSHADER_INVALIDSHADERBYTECODE                                                       = 93, 
    	CREATEPIXELSHADER_INVALIDSHADERTYPE                                                           = 94, 
    	CREATERASTERIZERSTATE_INVALIDFILLMODE                                                         = 95, 
    	CREATERASTERIZERSTATE_INVALIDCULLMODE                                                         = 96, 
    	CREATERASTERIZERSTATE_INVALIDDEPTHBIASCLAMP                                                   = 97, 
    	CREATERASTERIZERSTATE_INVALIDSLOPESCALEDDEPTHBIAS                                             = 98, 
    	CREATEDEPTHSTENCILSTATE_INVALIDDEPTHWRITEMASK                                                 = 100, 
    	CREATEDEPTHSTENCILSTATE_INVALIDDEPTHFUNC                                                      = 101, 
    	CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFAILOP                                         = 102, 
    	CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILZFAILOP                                        = 103, 
    	CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILPASSOP                                         = 104, 
    	CREATEDEPTHSTENCILSTATE_INVALIDFRONTFACESTENCILFUNC                                           = 105, 
    	CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFAILOP                                          = 106, 
    	CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILZFAILOP                                         = 107, 
    	CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILPASSOP                                          = 108, 
    	CREATEDEPTHSTENCILSTATE_INVALIDBACKFACESTENCILFUNC                                            = 109, 
    	CREATEBLENDSTATE_INVALIDSRCBLEND                                                              = 111, 
    	CREATEBLENDSTATE_INVALIDDESTBLEND                                                             = 112, 
    	CREATEBLENDSTATE_INVALIDBLENDOP                                                               = 113, 
    	CREATEBLENDSTATE_INVALIDSRCBLENDALPHA                                                         = 114, 
    	CREATEBLENDSTATE_INVALIDDESTBLENDALPHA                                                        = 115, 
    	CREATEBLENDSTATE_INVALIDBLENDOPALPHA                                                          = 116, 
    	CREATEBLENDSTATE_INVALIDRENDERTARGETWRITEMASK                                                 = 117, 
    	CLEARDEPTHSTENCILVIEW_INVALID                                                                 = 135, 
    	COMMAND_LIST_DRAW_ROOT_SIGNATURE_NOT_SET                                                      = 200, 
    	COMMAND_LIST_DRAW_ROOT_SIGNATURE_MISMATCH                                                     = 201, 
    	COMMAND_LIST_DRAW_VERTEX_BUFFER_NOT_SET                                                       = 202, 
    	COMMAND_LIST_DRAW_VERTEX_BUFFER_STRIDE_TOO_SMALL                                              = 209, 
    	COMMAND_LIST_DRAW_VERTEX_BUFFER_TOO_SMALL                                                     = 210, 
    	COMMAND_LIST_DRAW_INDEX_BUFFER_NOT_SET                                                        = 211, 
    	COMMAND_LIST_DRAW_INDEX_BUFFER_FORMAT_INVALID                                                 = 212, 
    	COMMAND_LIST_DRAW_INDEX_BUFFER_TOO_SMALL                                                      = 213, 
    	COMMAND_LIST_DRAW_INVALID_PRIMITIVETOPOLOGY                                                   = 219, 
    	COMMAND_LIST_DRAW_VERTEX_STRIDE_UNALIGNED                                                     = 221, 
    	COMMAND_LIST_DRAW_INDEX_OFFSET_UNALIGNED                                                      = 222, 
    	DEVICE_REMOVAL_PROCESS_AT_FAULT                                                               = 232, 
    	DEVICE_REMOVAL_PROCESS_POSSIBLY_AT_FAULT                                                      = 233, 
    	DEVICE_REMOVAL_PROCESS_NOT_AT_FAULT                                                           = 234, 
    	CREATEINPUTLAYOUT_TRAILING_DIGIT_IN_SEMANTIC                                                  = 239, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_TRAILING_DIGIT_IN_SEMANTIC                               = 240, 
    	CREATEINPUTLAYOUT_TYPE_MISMATCH                                                               = 245, 
    	CREATEINPUTLAYOUT_EMPTY_LAYOUT                                                                = 253, 
    	LIVE_OBJECT_SUMMARY                                                                           = 255, 
    	LIVE_DEVICE                                                                                   = 274, 
    	LIVE_SWAPCHAIN                                                                                = 275, 
    	CREATEDEPTHSTENCILVIEW_INVALIDFLAGS                                                           = 276, 
    	CREATEVERTEXSHADER_INVALIDCLASSLINKAGE                                                        = 277, 
    	CREATEGEOMETRYSHADER_INVALIDCLASSLINKAGE                                                      = 278, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAMTORASTERIZER                                = 280, 
    	CREATEPIXELSHADER_INVALIDCLASSLINKAGE                                                         = 283, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDSTREAM                                            = 284, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDENTRIES                                        = 285, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UNEXPECTEDSTRIDES                                        = 286, 
    	CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_INVALIDNUMSTRIDES                                        = 287, 
    	CREATEHULLSHADER_OUTOFMEMORY                                                                  = 289, 
    	CREATEHULLSHADER_INVALIDSHADERBYTECODE                                                        = 290, 
    	CREATEHULLSHADER_INVALIDSHADERTYPE                                                            = 291, 
    	CREATEHULLSHADER_INVALIDCLASSLINKAGE                                                          = 292, 
    	CREATEDOMAINSHADER_OUTOFMEMORY                                                                = 294, 
    	CREATEDOMAINSHADER_INVALIDSHADERBYTECODE                                                      = 295, 
    	CREATEDOMAINSHADER_INVALIDSHADERTYPE                                                          = 296, 
    	CREATEDOMAINSHADER_INVALIDCLASSLINKAGE                                                        = 297, 
    	RESOURCE_UNMAP_NOTMAPPED                                                                      = 310, 
    	DEVICE_CHECKFEATURESUPPORT_MISMATCHED_DATA_SIZE                                               = 318, 
    	CREATECOMPUTESHADER_OUTOFMEMORY                                                               = 321, 
    	CREATECOMPUTESHADER_INVALIDSHADERBYTECODE                                                     = 322, 
    	CREATECOMPUTESHADER_INVALIDCLASSLINKAGE                                                       = 323, 
    	DEVICE_CREATEVERTEXSHADER_DOUBLEFLOATOPSNOTSUPPORTED                                          = 331, 
    	DEVICE_CREATEHULLSHADER_DOUBLEFLOATOPSNOTSUPPORTED                                            = 332, 
    	DEVICE_CREATEDOMAINSHADER_DOUBLEFLOATOPSNOTSUPPORTED                                          = 333, 
    	DEVICE_CREATEGEOMETRYSHADER_DOUBLEFLOATOPSNOTSUPPORTED                                        = 334, 
    	DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEFLOATOPSNOTSUPPORTED                        = 335, 
    	DEVICE_CREATEPIXELSHADER_DOUBLEFLOATOPSNOTSUPPORTED                                           = 336, 
    	DEVICE_CREATECOMPUTESHADER_DOUBLEFLOATOPSNOTSUPPORTED                                         = 337, 
    	CREATEUNORDEREDACCESSVIEW_INVALIDRESOURCE                                                     = 340, 
    	CREATEUNORDEREDACCESSVIEW_INVALIDDESC                                                         = 341, 
    	CREATEUNORDEREDACCESSVIEW_INVALIDFORMAT                                                       = 342, 
    	CREATEUNORDEREDACCESSVIEW_INVALIDVIDEOPLANESLICE                                              = 343, 
    	CREATEUNORDEREDACCESSVIEW_INVALIDPLANESLICE                                                   = 344, 
    	CREATEUNORDEREDACCESSVIEW_INVALIDDIMENSIONS                                                   = 345, 
    	CREATEUNORDEREDACCESSVIEW_UNRECOGNIZEDFORMAT                                                  = 346, 
    	CREATEUNORDEREDACCESSVIEW_INVALIDFLAGS                                                        = 354, 
    	CREATERASTERIZERSTATE_INVALIDFORCEDSAMPLECOUNT                                                = 401, 
    	CREATEBLENDSTATE_INVALIDLOGICOPS                                                              = 403, 
    	DEVICE_CREATEVERTEXSHADER_DOUBLEEXTENSIONSNOTSUPPORTED                                        = 410, 
    	DEVICE_CREATEHULLSHADER_DOUBLEEXTENSIONSNOTSUPPORTED                                          = 412, 
    	DEVICE_CREATEDOMAINSHADER_DOUBLEEXTENSIONSNOTSUPPORTED                                        = 414, 
    	DEVICE_CREATEGEOMETRYSHADER_DOUBLEEXTENSIONSNOTSUPPORTED                                      = 416, 
    	DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_DOUBLEEXTENSIONSNOTSUPPORTED                      = 418, 
    	DEVICE_CREATEPIXELSHADER_DOUBLEEXTENSIONSNOTSUPPORTED                                         = 420, 
    	DEVICE_CREATECOMPUTESHADER_DOUBLEEXTENSIONSNOTSUPPORTED                                       = 422, 
    	DEVICE_CREATEVERTEXSHADER_UAVSNOTSUPPORTED                                                    = 425, 
    	DEVICE_CREATEHULLSHADER_UAVSNOTSUPPORTED                                                      = 426, 
    	DEVICE_CREATEDOMAINSHADER_UAVSNOTSUPPORTED                                                    = 427, 
    	DEVICE_CREATEGEOMETRYSHADER_UAVSNOTSUPPORTED                                                  = 428, 
    	DEVICE_CREATEGEOMETRYSHADERWITHSTREAMOUTPUT_UAVSNOTSUPPORTED                                  = 429, 
    	DEVICE_CREATEPIXELSHADER_UAVSNOTSUPPORTED                                                     = 430, 
    	DEVICE_CREATECOMPUTESHADER_UAVSNOTSUPPORTED                                                   = 431, 
    	DEVICE_CLEARVIEW_INVALIDSOURCERECT                                                            = 447, 
    	DEVICE_CLEARVIEW_EMPTYRECT                                                                    = 448, 
    	UPDATETILEMAPPINGS_INVALID_PARAMETER                                                          = 493, 
    	COPYTILEMAPPINGS_INVALID_PARAMETER                                                            = 494, 
    	CREATEDEVICE_INVALIDARGS                                                                      = 506, 
    	CREATEDEVICE_WARNING                                                                          = 507, 
    	RESOURCE_BARRIER_INVALID_TYPE                                                                 = 519, 
    	RESOURCE_BARRIER_NULL_POINTER                                                                 = 520, 
    	RESOURCE_BARRIER_INVALID_SUBRESOURCE                                                          = 521, 
    	RESOURCE_BARRIER_RESERVED_BITS                                                                = 522, 
    	RESOURCE_BARRIER_MISSING_BIND_FLAGS                                                           = 523, 
    	RESOURCE_BARRIER_MISMATCHING_MISC_FLAGS                                                       = 524, 
    	RESOURCE_BARRIER_MATCHING_STATES                                                              = 525, 
    	RESOURCE_BARRIER_INVALID_COMBINATION                                                          = 526, 
    	RESOURCE_BARRIER_BEFORE_AFTER_MISMATCH                                                        = 527, 
    	RESOURCE_BARRIER_INVALID_RESOURCE                                                             = 528, 
    	RESOURCE_BARRIER_SAMPLE_COUNT                                                                 = 529, 
    	RESOURCE_BARRIER_INVALID_FLAGS                                                                = 530, 
    	RESOURCE_BARRIER_INVALID_COMBINED_FLAGS                                                       = 531, 
    	RESOURCE_BARRIER_INVALID_FLAGS_FOR_FORMAT                                                     = 532, 
    	RESOURCE_BARRIER_INVALID_SPLIT_BARRIER                                                        = 533, 
    	RESOURCE_BARRIER_UNMATCHED_END                                                                = 534, 
    	RESOURCE_BARRIER_UNMATCHED_BEGIN                                                              = 535, 
    	RESOURCE_BARRIER_INVALID_FLAG                                                                 = 536, 
    	RESOURCE_BARRIER_INVALID_COMMAND_LIST_TYPE                                                    = 537, 
    	INVALID_SUBRESOURCE_STATE                                                                     = 538, 
    	COMMAND_ALLOCATOR_CONTENTION                                                                  = 540, 
    	COMMAND_ALLOCATOR_RESET                                                                       = 541, 
    	COMMAND_ALLOCATOR_RESET_BUNDLE                                                                = 542, 
    	COMMAND_ALLOCATOR_CANNOT_RESET                                                                = 543, 
    	COMMAND_LIST_OPEN                                                                             = 544, 
    	INVALID_BUNDLE_API                                                                            = 546, 
    	COMMAND_LIST_CLOSED                                                                           = 547, 
    	WRONG_COMMAND_ALLOCATOR_TYPE                                                                  = 549, 
    	COMMAND_ALLOCATOR_SYNC                                                                        = 552, 
    	COMMAND_LIST_SYNC                                                                             = 553, 
    	SET_DESCRIPTOR_HEAP_INVALID                                                                   = 554, 
    	CREATE_COMMANDQUEUE                                                                           = 557, 
    	CREATE_COMMANDALLOCATOR                                                                       = 558, 
    	CREATE_PIPELINESTATE                                                                          = 559, 
    	CREATE_COMMANDLIST12                                                                          = 560, 
    	CREATE_RESOURCE                                                                               = 562, 
    	CREATE_DESCRIPTORHEAP                                                                         = 563, 
    	CREATE_ROOTSIGNATURE                                                                          = 564, 
    	CREATE_LIBRARY                                                                                = 565, 
    	CREATE_HEAP                                                                                   = 566, 
    	CREATE_MONITOREDFENCE                                                                         = 567, 
    	CREATE_QUERYHEAP                                                                              = 568, 
    	CREATE_COMMANDSIGNATURE                                                                       = 569, 
    	LIVE_COMMANDQUEUE                                                                             = 570, 
    	LIVE_COMMANDALLOCATOR                                                                         = 571, 
    	LIVE_PIPELINESTATE                                                                            = 572, 
    	LIVE_COMMANDLIST12                                                                            = 573, 
    	LIVE_RESOURCE                                                                                 = 575, 
    	LIVE_DESCRIPTORHEAP                                                                           = 576, 
    	LIVE_ROOTSIGNATURE                                                                            = 577, 
    	LIVE_LIBRARY                                                                                  = 578, 
    	LIVE_HEAP                                                                                     = 579, 
    	LIVE_MONITOREDFENCE                                                                           = 580, 
    	LIVE_QUERYHEAP                                                                                = 581, 
    	LIVE_COMMANDSIGNATURE                                                                         = 582, 
    	DESTROY_COMMANDQUEUE                                                                          = 583, 
    	DESTROY_COMMANDALLOCATOR                                                                      = 584, 
    	DESTROY_PIPELINESTATE                                                                         = 585, 
    	DESTROY_COMMANDLIST12                                                                         = 586, 
    	DESTROY_RESOURCE                                                                              = 588, 
    	DESTROY_DESCRIPTORHEAP                                                                        = 589, 
    	DESTROY_ROOTSIGNATURE                                                                         = 590, 
    	DESTROY_LIBRARY                                                                               = 591, 
    	DESTROY_HEAP                                                                                  = 592, 
    	DESTROY_MONITOREDFENCE                                                                        = 593, 
    	DESTROY_QUERYHEAP                                                                             = 594, 
    	DESTROY_COMMANDSIGNATURE                                                                      = 595, 
    	CREATERESOURCE_INVALIDDIMENSIONS                                                              = 597, 
    	CREATERESOURCE_INVALIDMISCFLAGS                                                               = 599, 
    	CREATERESOURCE_INVALIDARG_RETURN                                                              = 602, 
    	CREATERESOURCE_OUTOFMEMORY_RETURN                                                             = 603, 
    	CREATERESOURCE_INVALIDDESC                                                                    = 604, 
    	POSSIBLY_INVALID_SUBRESOURCE_STATE                                                            = 607, 
    	INVALID_USE_OF_NON_RESIDENT_RESOURCE                                                          = 608, 
    	POSSIBLE_INVALID_USE_OF_NON_RESIDENT_RESOURCE                                                 = 609, 
    	BUNDLE_PIPELINE_STATE_MISMATCH                                                                = 610, 
    	PRIMITIVE_TOPOLOGY_MISMATCH_PIPELINE_STATE                                                    = 611, 
    	RENDER_TARGET_FORMAT_MISMATCH_PIPELINE_STATE                                                  = 613, 
    	RENDER_TARGET_SAMPLE_DESC_MISMATCH_PIPELINE_STATE                                             = 614, 
    	DEPTH_STENCIL_FORMAT_MISMATCH_PIPELINE_STATE                                                  = 615, 
    	DEPTH_STENCIL_SAMPLE_DESC_MISMATCH_PIPELINE_STATE                                             = 616, 
    	CREATESHADER_INVALIDBYTECODE                                                                  = 622, 
    	CREATEHEAP_NULLDESC                                                                           = 623, 
    	CREATEHEAP_INVALIDSIZE                                                                        = 624, 
    	CREATEHEAP_UNRECOGNIZEDHEAPTYPE                                                               = 625, 
    	CREATEHEAP_UNRECOGNIZEDCPUPAGEPROPERTIES                                                      = 626, 
    	CREATEHEAP_UNRECOGNIZEDMEMORYPOOL                                                             = 627, 
    	CREATEHEAP_INVALIDPROPERTIES                                                                  = 628, 
    	CREATEHEAP_INVALIDALIGNMENT                                                                   = 629, 
    	CREATEHEAP_UNRECOGNIZEDMISCFLAGS                                                              = 630, 
    	CREATEHEAP_INVALIDMISCFLAGS                                                                   = 631, 
    	CREATEHEAP_INVALIDARG_RETURN                                                                  = 632, 
    	CREATEHEAP_OUTOFMEMORY_RETURN                                                                 = 633, 
    	CREATERESOURCEANDHEAP_NULLHEAPPROPERTIES                                                      = 634, 
    	CREATERESOURCEANDHEAP_UNRECOGNIZEDHEAPTYPE                                                    = 635, 
    	CREATERESOURCEANDHEAP_UNRECOGNIZEDCPUPAGEPROPERTIES                                           = 636, 
    	CREATERESOURCEANDHEAP_UNRECOGNIZEDMEMORYPOOL                                                  = 637, 
    	CREATERESOURCEANDHEAP_INVALIDHEAPPROPERTIES                                                   = 638, 
    	CREATERESOURCEANDHEAP_UNRECOGNIZEDHEAPMISCFLAGS                                               = 639, 
    	CREATERESOURCEANDHEAP_INVALIDHEAPMISCFLAGS                                                    = 640, 
    	CREATERESOURCEANDHEAP_INVALIDARG_RETURN                                                       = 641, 
    	CREATERESOURCEANDHEAP_OUTOFMEMORY_RETURN                                                      = 642, 
    	GETCUSTOMHEAPPROPERTIES_UNRECOGNIZEDHEAPTYPE                                                  = 643, 
    	GETCUSTOMHEAPPROPERTIES_INVALIDHEAPTYPE                                                       = 644, 
    	CREATE_DESCRIPTOR_HEAP_INVALID_DESC                                                           = 645, 
    	INVALID_DESCRIPTOR_HANDLE                                                                     = 646, 
    	CREATERASTERIZERSTATE_INVALID_CONSERVATIVERASTERMODE                                          = 647, 
    	CREATE_CONSTANT_BUFFER_VIEW_INVALID_RESOURCE                                                  = 649, 
    	CREATE_CONSTANT_BUFFER_VIEW_INVALID_DESC                                                      = 650, 
    	CREATE_UNORDEREDACCESS_VIEW_INVALID_COUNTER_USAGE                                             = 652, 
    	COPY_DESCRIPTORS_INVALID_RANGES                                                               = 653, 
    	COPY_DESCRIPTORS_WRITE_ONLY_DESCRIPTOR                                                        = 654, 
    	CREATEGRAPHICSPIPELINESTATE_RTV_FORMAT_NOT_UNKNOWN                                            = 655, 
    	CREATEGRAPHICSPIPELINESTATE_INVALID_RENDER_TARGET_COUNT                                       = 656, 
    	CREATEGRAPHICSPIPELINESTATE_VERTEX_SHADER_NOT_SET                                             = 657, 
    	CREATEGRAPHICSPIPELINESTATE_INPUTLAYOUT_NOT_SET                                               = 658, 
    	CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_HS_DS_SIGNATURE_MISMATCH                           = 659, 
    	CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_REGISTERINDEX                                      = 660, 
    	CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_COMPONENTTYPE                                      = 661, 
    	CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_REGISTERMASK                                       = 662, 
    	CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_SYSTEMVALUE                                        = 663, 
    	CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_NEVERWRITTEN_ALWAYSREADS                           = 664, 
    	CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_MINPRECISION                                       = 665, 
    	CREATEGRAPHICSPIPELINESTATE_SHADER_LINKAGE_SEMANTICNAME_NOT_FOUND                             = 666, 
    	CREATEGRAPHICSPIPELINESTATE_HS_XOR_DS_MISMATCH                                                = 667, 
    	CREATEGRAPHICSPIPELINESTATE_HULL_SHADER_INPUT_TOPOLOGY_MISMATCH                               = 668, 
    	CREATEGRAPHICSPIPELINESTATE_HS_DS_CONTROL_POINT_COUNT_MISMATCH                                = 669, 
    	CREATEGRAPHICSPIPELINESTATE_HS_DS_TESSELLATOR_DOMAIN_MISMATCH                                 = 670, 
    	CREATEGRAPHICSPIPELINESTATE_INVALID_USE_OF_CENTER_MULTISAMPLE_PATTERN                         = 671, 
    	CREATEGRAPHICSPIPELINESTATE_INVALID_USE_OF_FORCED_SAMPLE_COUNT                                = 672, 
    	CREATEGRAPHICSPIPELINESTATE_INVALID_PRIMITIVETOPOLOGY                                         = 673, 
    	CREATEGRAPHICSPIPELINESTATE_INVALID_SYSTEMVALUE                                               = 674, 
    	CREATEGRAPHICSPIPELINESTATE_OM_DUAL_SOURCE_BLENDING_CAN_ONLY_HAVE_RENDER_TARGET_0             = 675, 
    	CREATEGRAPHICSPIPELINESTATE_OM_RENDER_TARGET_DOES_NOT_SUPPORT_BLENDING                        = 676, 
    	CREATEGRAPHICSPIPELINESTATE_PS_OUTPUT_TYPE_MISMATCH                                           = 677, 
    	CREATEGRAPHICSPIPELINESTATE_OM_RENDER_TARGET_DOES_NOT_SUPPORT_LOGIC_OPS                       = 678, 
    	CREATEGRAPHICSPIPELINESTATE_RENDERTARGETVIEW_NOT_SET                                          = 679, 
    	CREATEGRAPHICSPIPELINESTATE_DEPTHSTENCILVIEW_NOT_SET                                          = 680, 
    	CREATEGRAPHICSPIPELINESTATE_GS_INPUT_PRIMITIVE_MISMATCH                                       = 681, 
    	CREATEGRAPHICSPIPELINESTATE_POSITION_NOT_PRESENT                                              = 682, 
    	CREATEGRAPHICSPIPELINESTATE_MISSING_ROOT_SIGNATURE_FLAGS                                      = 683, 
    	CREATEGRAPHICSPIPELINESTATE_INVALID_INDEX_BUFFER_PROPERTIES                                   = 684, 
    	CREATEGRAPHICSPIPELINESTATE_INVALID_SAMPLE_DESC                                               = 685, 
    	CREATEGRAPHICSPIPELINESTATE_HS_ROOT_SIGNATURE_MISMATCH                                        = 686, 
    	CREATEGRAPHICSPIPELINESTATE_DS_ROOT_SIGNATURE_MISMATCH                                        = 687, 
    	CREATEGRAPHICSPIPELINESTATE_VS_ROOT_SIGNATURE_MISMATCH                                        = 688, 
    	CREATEGRAPHICSPIPELINESTATE_GS_ROOT_SIGNATURE_MISMATCH                                        = 689, 
    	CREATEGRAPHICSPIPELINESTATE_PS_ROOT_SIGNATURE_MISMATCH                                        = 690, 
    	CREATEGRAPHICSPIPELINESTATE_MISSING_ROOT_SIGNATURE                                            = 691, 
    	EXECUTE_BUNDLE_OPEN_BUNDLE                                                                    = 692, 
    	EXECUTE_BUNDLE_DESCRIPTOR_HEAP_MISMATCH                                                       = 693, 
    	EXECUTE_BUNDLE_TYPE                                                                           = 694, 
    	DRAW_EMPTY_SCISSOR_RECTANGLE                                                                  = 695, 
    	CREATE_ROOT_SIGNATURE_BLOB_NOT_FOUND                                                          = 696, 
    	CREATE_ROOT_SIGNATURE_DESERIALIZE_FAILED                                                      = 697, 
    	CREATE_ROOT_SIGNATURE_INVALID_CONFIGURATION                                                   = 698, 
    	CREATE_ROOT_SIGNATURE_NOT_SUPPORTED_ON_DEVICE                                                 = 699, 
    	CREATERESOURCEANDHEAP_NULLRESOURCEPROPERTIES                                                  = 700, 
    	CREATERESOURCEANDHEAP_NULLHEAP                                                                = 701, 
    	GETRESOURCEALLOCATIONINFO_INVALIDRDESCS                                                       = 702, 
    	MAKERESIDENT_NULLOBJECTARRAY                                                                  = 703, 
    	EVICT_NULLOBJECTARRAY                                                                         = 705, 
    	SET_DESCRIPTOR_TABLE_INVALID                                                                  = 708, 
    	SET_ROOT_CONSTANT_INVALID                                                                     = 709, 
    	SET_ROOT_CONSTANT_BUFFER_VIEW_INVALID                                                         = 710, 
    	SET_ROOT_SHADER_RESOURCE_VIEW_INVALID                                                         = 711, 
    	SET_ROOT_UNORDERED_ACCESS_VIEW_INVALID                                                        = 712, 
    	SET_VERTEX_BUFFERS_INVALID_DESC                                                               = 713, 
    	SET_INDEX_BUFFER_INVALID_DESC                                                                 = 715, 
    	SET_STREAM_OUTPUT_BUFFERS_INVALID_DESC                                                        = 717, 
    	CREATERESOURCE_UNRECOGNIZEDDIMENSIONALITY                                                     = 718, 
    	CREATERESOURCE_UNRECOGNIZEDLAYOUT                                                             = 719, 
    	CREATERESOURCE_INVALIDDIMENSIONALITY                                                          = 720, 
    	CREATERESOURCE_INVALIDALIGNMENT                                                               = 721, 
    	CREATERESOURCE_INVALIDMIPLEVELS                                                               = 722, 
    	CREATERESOURCE_INVALIDSAMPLEDESC                                                              = 723, 
    	CREATERESOURCE_INVALIDLAYOUT                                                                  = 724, 
    	SET_INDEX_BUFFER_INVALID                                                                      = 725, 
    	SET_VERTEX_BUFFERS_INVALID                                                                    = 726, 
    	SET_STREAM_OUTPUT_BUFFERS_INVALID                                                             = 727, 
    	SET_RENDER_TARGETS_INVALID                                                                    = 728, 
    	CREATEQUERY_HEAP_INVALID_PARAMETERS                                                           = 729, 
    	BEGIN_END_QUERY_INVALID_PARAMETERS                                                            = 731, 
    	CLOSE_COMMAND_LIST_OPEN_QUERY                                                                 = 732, 
    	RESOLVE_QUERY_DATA_INVALID_PARAMETERS                                                         = 733, 
    	SET_PREDICATION_INVALID_PARAMETERS                                                            = 734, 
    	TIMESTAMPS_NOT_SUPPORTED                                                                      = 735, 
    	CREATERESOURCE_UNRECOGNIZEDFORMAT                                                             = 737, 
    	CREATERESOURCE_INVALIDFORMAT                                                                  = 738, 
    	GETCOPYABLEFOOTPRINTS_INVALIDSUBRESOURCERANGE                                                 = 739, 
    	GETCOPYABLEFOOTPRINTS_INVALIDBASEOFFSET                                                       = 740, 
    	GETCOPYABLELAYOUT_INVALIDSUBRESOURCERANGE                                                     = 739, 
    	GETCOPYABLELAYOUT_INVALIDBASEOFFSET                                                           = 740, 
    	RESOURCE_BARRIER_INVALID_HEAP                                                                 = 741, 
    	CREATE_SAMPLER_INVALID                                                                        = 742, 
    	CREATECOMMANDSIGNATURE_INVALID                                                                = 743, 
    	EXECUTE_INDIRECT_INVALID_PARAMETERS                                                           = 744, 
    	GETGPUVIRTUALADDRESS_INVALID_RESOURCE_DIMENSION                                               = 745, 
    	CREATERESOURCE_INVALIDCLEARVALUE                                                              = 815, 
    	CREATERESOURCE_UNRECOGNIZEDCLEARVALUEFORMAT                                                   = 816, 
    	CREATERESOURCE_INVALIDCLEARVALUEFORMAT                                                        = 817, 
    	CREATERESOURCE_CLEARVALUEDENORMFLUSH                                                          = 818, 
    	CLEARRENDERTARGETVIEW_MISMATCHINGCLEARVALUE                                                   = 820, 
    	CLEARDEPTHSTENCILVIEW_MISMATCHINGCLEARVALUE                                                   = 821, 
    	MAP_INVALIDHEAP                                                                               = 822, 
    	UNMAP_INVALIDHEAP                                                                             = 823, 
    	MAP_INVALIDRESOURCE                                                                           = 824, 
    	UNMAP_INVALIDRESOURCE                                                                         = 825, 
    	MAP_INVALIDSUBRESOURCE                                                                        = 826, 
    	UNMAP_INVALIDSUBRESOURCE                                                                      = 827, 
    	MAP_INVALIDRANGE                                                                              = 828, 
    	UNMAP_INVALIDRANGE                                                                            = 829, 
    	MAP_INVALIDDATAPOINTER                                                                        = 832, 
    	MAP_INVALIDARG_RETURN                                                                         = 833, 
    	MAP_OUTOFMEMORY_RETURN                                                                        = 834, 
    	EXECUTECOMMANDLISTS_BUNDLENOTSUPPORTED                                                        = 835, 
    	EXECUTECOMMANDLISTS_COMMANDLISTMISMATCH                                                       = 836, 
    	EXECUTECOMMANDLISTS_OPENCOMMANDLIST                                                           = 837, 
    	EXECUTECOMMANDLISTS_FAILEDCOMMANDLIST                                                         = 838, 
    	COPYBUFFERREGION_NULLDST                                                                      = 839, 
    	COPYBUFFERREGION_INVALIDDSTRESOURCEDIMENSION                                                  = 840, 
    	COPYBUFFERREGION_DSTRANGEOUTOFBOUNDS                                                          = 841, 
    	COPYBUFFERREGION_NULLSRC                                                                      = 842, 
    	COPYBUFFERREGION_INVALIDSRCRESOURCEDIMENSION                                                  = 843, 
    	COPYBUFFERREGION_SRCRANGEOUTOFBOUNDS                                                          = 844, 
    	COPYBUFFERREGION_INVALIDCOPYFLAGS                                                             = 845, 
    	COPYTEXTUREREGION_NULLDST                                                                     = 846, 
    	COPYTEXTUREREGION_UNRECOGNIZEDDSTTYPE                                                         = 847, 
    	COPYTEXTUREREGION_INVALIDDSTRESOURCEDIMENSION                                                 = 848, 
    	COPYTEXTUREREGION_INVALIDDSTRESOURCE                                                          = 849, 
    	COPYTEXTUREREGION_INVALIDDSTSUBRESOURCE                                                       = 850, 
    	COPYTEXTUREREGION_INVALIDDSTOFFSET                                                            = 851, 
    	COPYTEXTUREREGION_UNRECOGNIZEDDSTFORMAT                                                       = 852, 
    	COPYTEXTUREREGION_INVALIDDSTFORMAT                                                            = 853, 
    	COPYTEXTUREREGION_INVALIDDSTDIMENSIONS                                                        = 854, 
    	COPYTEXTUREREGION_INVALIDDSTROWPITCH                                                          = 855, 
    	COPYTEXTUREREGION_INVALIDDSTPLACEMENT                                                         = 856, 
    	COPYTEXTUREREGION_INVALIDDSTDSPLACEDFOOTPRINTFORMAT                                           = 857, 
    	COPYTEXTUREREGION_DSTREGIONOUTOFBOUNDS                                                        = 858, 
    	COPYTEXTUREREGION_NULLSRC                                                                     = 859, 
    	COPYTEXTUREREGION_UNRECOGNIZEDSRCTYPE                                                         = 860, 
    	COPYTEXTUREREGION_INVALIDSRCRESOURCEDIMENSION                                                 = 861, 
    	COPYTEXTUREREGION_INVALIDSRCRESOURCE                                                          = 862, 
    	COPYTEXTUREREGION_INVALIDSRCSUBRESOURCE                                                       = 863, 
    	COPYTEXTUREREGION_INVALIDSRCOFFSET                                                            = 864, 
    	COPYTEXTUREREGION_UNRECOGNIZEDSRCFORMAT                                                       = 865, 
    	COPYTEXTUREREGION_INVALIDSRCFORMAT                                                            = 866, 
    	COPYTEXTUREREGION_INVALIDSRCDIMENSIONS                                                        = 867, 
    	COPYTEXTUREREGION_INVALIDSRCROWPITCH                                                          = 868, 
    	COPYTEXTUREREGION_INVALIDSRCPLACEMENT                                                         = 869, 
    	COPYTEXTUREREGION_INVALIDSRCDSPLACEDFOOTPRINTFORMAT                                           = 870, 
    	COPYTEXTUREREGION_SRCREGIONOUTOFBOUNDS                                                        = 871, 
    	COPYTEXTUREREGION_INVALIDDSTCOORDINATES                                                       = 872, 
    	COPYTEXTUREREGION_INVALIDSRCBOX                                                               = 873, 
    	COPYTEXTUREREGION_FORMATMISMATCH                                                              = 874, 
    	COPYTEXTUREREGION_EMPTYBOX                                                                    = 875, 
    	COPYTEXTUREREGION_INVALIDCOPYFLAGS                                                            = 876, 
    	RESOLVESUBRESOURCE_INVALID_SUBRESOURCE_INDEX                                                  = 877, 
    	RESOLVESUBRESOURCE_INVALID_FORMAT                                                             = 878, 
    	RESOLVESUBRESOURCE_RESOURCE_MISMATCH                                                          = 879, 
    	RESOLVESUBRESOURCE_INVALID_SAMPLE_COUNT                                                       = 880, 
    	CREATECOMPUTEPIPELINESTATE_INVALID_SHADER                                                     = 881, 
    	CREATECOMPUTEPIPELINESTATE_CS_ROOT_SIGNATURE_MISMATCH                                         = 882, 
    	CREATECOMPUTEPIPELINESTATE_MISSING_ROOT_SIGNATURE                                             = 883, 
    	CREATEPIPELINESTATE_INVALIDCACHEDBLOB                                                         = 884, 
    	CREATEPIPELINESTATE_CACHEDBLOBADAPTERMISMATCH                                                 = 885, 
    	CREATEPIPELINESTATE_CACHEDBLOBDRIVERVERSIONMISMATCH                                           = 886, 
    	CREATEPIPELINESTATE_CACHEDBLOBDESCMISMATCH                                                    = 887, 
    	CREATEPIPELINESTATE_CACHEDBLOBIGNORED                                                         = 888, 
    	WRITETOSUBRESOURCE_INVALIDHEAP                                                                = 889, 
    	WRITETOSUBRESOURCE_INVALIDRESOURCE                                                            = 890, 
    	WRITETOSUBRESOURCE_INVALIDBOX                                                                 = 891, 
    	WRITETOSUBRESOURCE_INVALIDSUBRESOURCE                                                         = 892, 
    	WRITETOSUBRESOURCE_EMPTYBOX                                                                   = 893, 
    	READFROMSUBRESOURCE_INVALIDHEAP                                                               = 894, 
    	READFROMSUBRESOURCE_INVALIDRESOURCE                                                           = 895, 
    	READFROMSUBRESOURCE_INVALIDBOX                                                                = 896, 
    	READFROMSUBRESOURCE_INVALIDSUBRESOURCE                                                        = 897, 
    	READFROMSUBRESOURCE_EMPTYBOX                                                                  = 898, 
    	TOO_MANY_NODES_SPECIFIED                                                                      = 899, 
    	INVALID_NODE_INDEX                                                                            = 900, 
    	GETHEAPPROPERTIES_INVALIDRESOURCE                                                             = 901, 
    	NODE_MASK_MISMATCH                                                                            = 902, 
    	COMMAND_LIST_OUTOFMEMORY                                                                      = 903, 
    	COMMAND_LIST_MULTIPLE_SWAPCHAIN_BUFFER_REFERENCES                                             = 904, 
    	COMMAND_LIST_TOO_MANY_SWAPCHAIN_REFERENCES                                                    = 905, 
    	COMMAND_QUEUE_TOO_MANY_SWAPCHAIN_REFERENCES                                                   = 906, 
    	EXECUTECOMMANDLISTS_WRONGSWAPCHAINBUFFERREFERENCE                                             = 907, 
    	COMMAND_LIST_SETRENDERTARGETS_INVALIDNUMRENDERTARGETS                                         = 908, 
    	CREATE_QUEUE_INVALID_TYPE                                                                     = 909, 
    	CREATE_QUEUE_INVALID_FLAGS                                                                    = 910, 
    	CREATESHAREDRESOURCE_INVALIDFLAGS                                                             = 911, 
    	CREATESHAREDRESOURCE_INVALIDFORMAT                                                            = 912, 
    	CREATESHAREDHEAP_INVALIDFLAGS                                                                 = 913, 
    	REFLECTSHAREDPROPERTIES_UNRECOGNIZEDPROPERTIES                                                = 914, 
    	REFLECTSHAREDPROPERTIES_INVALIDSIZE                                                           = 915, 
    	REFLECTSHAREDPROPERTIES_INVALIDOBJECT                                                         = 916, 
    	KEYEDMUTEX_INVALIDOBJECT                                                                      = 917, 
    	KEYEDMUTEX_INVALIDKEY                                                                         = 918, 
    	KEYEDMUTEX_WRONGSTATE                                                                         = 919, 
    	CREATE_QUEUE_INVALID_PRIORITY                                                                 = 920, 
    	OBJECT_DELETED_WHILE_STILL_IN_USE                                                             = 921, 
    	CREATEPIPELINESTATE_INVALID_FLAGS                                                             = 922, 
    	HEAP_ADDRESS_RANGE_HAS_NO_RESOURCE                                                            = 923, 
    	COMMAND_LIST_DRAW_RENDER_TARGET_DELETED                                                       = 924, 
    	CREATEGRAPHICSPIPELINESTATE_ALL_RENDER_TARGETS_HAVE_UNKNOWN_FORMAT                            = 925, 
    	HEAP_ADDRESS_RANGE_INTERSECTS_MULTIPLE_BUFFERS                                                = 926, 
    	EXECUTECOMMANDLISTS_GPU_WRITTEN_READBACK_RESOURCE_MAPPED                                      = 927, 
    	UNMAP_RANGE_NOT_EMPTY                                                                         = 929, 
    	MAP_INVALID_NULLRANGE                                                                         = 930, 
    	UNMAP_INVALID_NULLRANGE                                                                       = 931, 
    	NO_GRAPHICS_API_SUPPORT                                                                       = 932, 
    	NO_COMPUTE_API_SUPPORT                                                                        = 933, 
    	RESOLVESUBRESOURCE_RESOURCE_FLAGS_NOT_SUPPORTED                                               = 934, 
    	GPU_BASED_VALIDATION_ROOT_ARGUMENT_UNINITIALIZED                                              = 935, 
    	GPU_BASED_VALIDATION_DESCRIPTOR_HEAP_INDEX_OUT_OF_BOUNDS                                      = 936, 
    	GPU_BASED_VALIDATION_DESCRIPTOR_TABLE_REGISTER_INDEX_OUT_OF_BOUNDS                            = 937, 
    	GPU_BASED_VALIDATION_DESCRIPTOR_UNINITIALIZED                                                 = 938, 
    	GPU_BASED_VALIDATION_DESCRIPTOR_TYPE_MISMATCH                                                 = 939, 
    	GPU_BASED_VALIDATION_SRV_RESOURCE_DIMENSION_MISMATCH                                          = 940, 
    	GPU_BASED_VALIDATION_UAV_RESOURCE_DIMENSION_MISMATCH                                          = 941, 
    	GPU_BASED_VALIDATION_INCOMPATIBLE_RESOURCE_STATE                                              = 942, 
    	COPYRESOURCE_NULLDST                                                                          = 943, 
    	COPYRESOURCE_INVALIDDSTRESOURCE                                                               = 944, 
    	COPYRESOURCE_NULLSRC                                                                          = 945, 
    	COPYRESOURCE_INVALIDSRCRESOURCE                                                               = 946, 
    	RESOLVESUBRESOURCE_NULLDST                                                                    = 947, 
    	RESOLVESUBRESOURCE_INVALIDDSTRESOURCE                                                         = 948, 
    	RESOLVESUBRESOURCE_NULLSRC                                                                    = 949, 
    	RESOLVESUBRESOURCE_INVALIDSRCRESOURCE                                                         = 950, 
    	PIPELINE_STATE_TYPE_MISMATCH                                                                  = 951, 
    	COMMAND_LIST_DISPATCH_ROOT_SIGNATURE_NOT_SET                                                  = 952, 
    	COMMAND_LIST_DISPATCH_ROOT_SIGNATURE_MISMATCH                                                 = 953, 
    	RESOURCE_BARRIER_ZERO_BARRIERS                                                                = 954, 
    	BEGIN_END_EVENT_MISMATCH                                                                      = 955, 
    	RESOURCE_BARRIER_POSSIBLE_BEFORE_AFTER_MISMATCH                                               = 956, 
    	RESOURCE_BARRIER_MISMATCHING_BEGIN_END                                                        = 957, 
    	GPU_BASED_VALIDATION_INVALID_RESOURCE                                                         = 958, 
    	USE_OF_ZERO_REFCOUNT_OBJECT                                                                   = 959, 
    	OBJECT_EVICTED_WHILE_STILL_IN_USE                                                             = 960, 
    	GPU_BASED_VALIDATION_ROOT_DESCRIPTOR_ACCESS_OUT_OF_BOUNDS                                     = 961, 
    	CREATEPIPELINELIBRARY_INVALIDLIBRARYBLOB                                                      = 962, 
    	CREATEPIPELINELIBRARY_DRIVERVERSIONMISMATCH                                                   = 963, 
    	CREATEPIPELINELIBRARY_ADAPTERVERSIONMISMATCH                                                  = 964, 
    	CREATEPIPELINELIBRARY_UNSUPPORTED                                                             = 965, 
    	CREATE_PIPELINELIBRARY                                                                        = 966, 
    	LIVE_PIPELINELIBRARY                                                                          = 967, 
    	DESTROY_PIPELINELIBRARY                                                                       = 968, 
    	STOREPIPELINE_NONAME                                                                          = 969, 
    	STOREPIPELINE_DUPLICATENAME                                                                   = 970, 
    	LOADPIPELINE_NAMENOTFOUND                                                                     = 971, 
    	LOADPIPELINE_INVALIDDESC                                                                      = 972, 
    	PIPELINELIBRARY_SERIALIZE_NOTENOUGHMEMORY                                                     = 973, 
    	CREATEGRAPHICSPIPELINESTATE_PS_OUTPUT_RT_OUTPUT_MISMATCH                                      = 974, 
    	SETEVENTONMULTIPLEFENCECOMPLETION_INVALIDFLAGS                                                = 975, 
    	CREATE_QUEUE_VIDEO_NOT_SUPPORTED                                                              = 976, 
    	CREATE_COMMAND_ALLOCATOR_VIDEO_NOT_SUPPORTED                                                  = 977, 
    	CREATEQUERY_HEAP_VIDEO_DECODE_STATISTICS_NOT_SUPPORTED                                        = 978, 
    	CREATE_VIDEODECODECOMMANDLIST                                                                 = 979, 
    	CREATE_VIDEODECODER                                                                           = 980, 
    	CREATE_VIDEODECODESTREAM                                                                      = 981, 
    	LIVE_VIDEODECODECOMMANDLIST                                                                   = 982, 
    	LIVE_VIDEODECODER                                                                             = 983, 
    	LIVE_VIDEODECODESTREAM                                                                        = 984, 
    	DESTROY_VIDEODECODECOMMANDLIST                                                                = 985, 
    	DESTROY_VIDEODECODER                                                                          = 986, 
    	DESTROY_VIDEODECODESTREAM                                                                     = 987, 
    	DECODE_FRAME_INVALID_PARAMETERS                                                               = 988, 
    	DEPRECATED_API                                                                                = 989, 
    	RESOURCE_BARRIER_MISMATCHING_COMMAND_LIST_TYPE                                                = 990, 
    	COMMAND_LIST_DESCRIPTOR_TABLE_NOT_SET                                                         = 991, 
    	COMMAND_LIST_ROOT_CONSTANT_BUFFER_VIEW_NOT_SET                                                = 992, 
    	COMMAND_LIST_ROOT_SHADER_RESOURCE_VIEW_NOT_SET                                                = 993, 
    	COMMAND_LIST_ROOT_UNORDERED_ACCESS_VIEW_NOT_SET                                               = 994, 
    	DISCARD_INVALID_SUBRESOURCE_RANGE                                                             = 995, 
    	DISCARD_ONE_SUBRESOURCE_FOR_MIPS_WITH_RECTS                                                   = 996, 
    	DISCARD_NO_RECTS_FOR_NON_TEXTURE2D                                                            = 997, 
    	COPY_ON_SAME_SUBRESOURCE                                                                      = 998, 
    	SETRESIDENCYPRIORITY_INVALID_PAGEABLE                                                         = 999, 
    	GPU_BASED_VALIDATION_UNSUPPORTED                                                              = 1000, 
    	STATIC_DESCRIPTOR_INVALID_DESCRIPTOR_CHANGE                                                   = 1001, 
    	DATA_STATIC_DESCRIPTOR_INVALID_DATA_CHANGE                                                    = 1002, 
    	DATA_STATIC_WHILE_SET_AT_EXECUTE_DESCRIPTOR_INVALID_DATA_CHANGE                               = 1003, 
    	EXECUTE_BUNDLE_STATIC_DESCRIPTOR_DATA_STATIC_NOT_SET                                          = 1004, 
    	GPU_BASED_VALIDATION_RESOURCE_ACCESS_OUT_OF_BOUNDS                                            = 1005, 
    	GPU_BASED_VALIDATION_SAMPLER_MODE_MISMATCH                                                    = 1006, 
    	CREATE_FENCE_INVALID_FLAGS                                                                    = 1007, 
    	RESOURCE_BARRIER_DUPLICATE_SUBRESOURCE_TRANSITIONS                                            = 1008, 
    	SETRESIDENCYPRIORITY_INVALID_PRIORITY                                                         = 1009, 
    	CREATE_DESCRIPTOR_HEAP_LARGE_NUM_DESCRIPTORS                                                  = 1013, 
    	BEGIN_EVENT                                                                                   = 1014, 
    	END_EVENT                                                                                     = 1015, 
    	CREATEDEVICE_DEBUG_LAYER_STARTUP_OPTIONS                                                      = 1016, 
    	CREATEDEPTHSTENCILSTATE_DEPTHBOUNDSTEST_UNSUPPORTED                                           = 1017, 
    	CREATEPIPELINESTATE_DUPLICATE_SUBOBJECT                                                       = 1018, 
    	CREATEPIPELINESTATE_UNKNOWN_SUBOBJECT                                                         = 1019, 
    	CREATEPIPELINESTATE_ZERO_SIZE_STREAM                                                          = 1020, 
    	CREATEPIPELINESTATE_INVALID_STREAM                                                            = 1021, 
    	CREATEPIPELINESTATE_CANNOT_DEDUCE_TYPE                                                        = 1022, 
    	COMMAND_LIST_STATIC_DESCRIPTOR_RESOURCE_DIMENSION_MISMATCH                                    = 1023, 
    	CREATE_COMMAND_QUEUE_INSUFFICIENT_PRIVILEGE_FOR_GLOBAL_REALTIME                               = 1024, 
    	CREATE_COMMAND_QUEUE_INSUFFICIENT_HARDWARE_SUPPORT_FOR_GLOBAL_REALTIME                        = 1025, 
    	ATOMICCOPYBUFFER_INVALID_ARCHITECTURE                                                         = 1026, 
    	ATOMICCOPYBUFFER_NULL_DST                                                                     = 1027, 
    	ATOMICCOPYBUFFER_INVALID_DST_RESOURCE_DIMENSION                                               = 1028, 
    	ATOMICCOPYBUFFER_DST_RANGE_OUT_OF_BOUNDS                                                      = 1029, 
    	ATOMICCOPYBUFFER_NULL_SRC                                                                     = 1030, 
    	ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE_DIMENSION                                               = 1031, 
    	ATOMICCOPYBUFFER_SRC_RANGE_OUT_OF_BOUNDS                                                      = 1032, 
    	ATOMICCOPYBUFFER_INVALID_OFFSET_ALIGNMENT                                                     = 1033, 
    	ATOMICCOPYBUFFER_NULL_DEPENDENT_RESOURCES                                                     = 1034, 
    	ATOMICCOPYBUFFER_NULL_DEPENDENT_SUBRESOURCE_RANGES                                            = 1035, 
    	ATOMICCOPYBUFFER_INVALID_DEPENDENT_RESOURCE                                                   = 1036, 
    	ATOMICCOPYBUFFER_INVALID_DEPENDENT_SUBRESOURCE_RANGE                                          = 1037, 
    	ATOMICCOPYBUFFER_DEPENDENT_SUBRESOURCE_OUT_OF_BOUNDS                                          = 1038, 
    	ATOMICCOPYBUFFER_DEPENDENT_RANGE_OUT_OF_BOUNDS                                                = 1039, 
    	ATOMICCOPYBUFFER_ZERO_DEPENDENCIES                                                            = 1040, 
    	DEVICE_CREATE_SHARED_HANDLE_INVALIDARG                                                        = 1041, 
    	DESCRIPTOR_HANDLE_WITH_INVALID_RESOURCE                                                       = 1042, 
    	SETDEPTHBOUNDS_INVALIDARGS                                                                    = 1043, 
    	GPU_BASED_VALIDATION_RESOURCE_STATE_IMPRECISE                                                 = 1044, 
    	COMMAND_LIST_PIPELINE_STATE_NOT_SET                                                           = 1045, 
    	CREATEGRAPHICSPIPELINESTATE_SHADER_MODEL_MISMATCH                                             = 1046, 
    	OBJECT_ACCESSED_WHILE_STILL_IN_USE                                                            = 1047, 
    	PROGRAMMABLE_MSAA_UNSUPPORTED                                                                 = 1048, 
    	SETSAMPLEPOSITIONS_INVALIDARGS                                                                = 1049, 
    	RESOLVESUBRESOURCEREGION_INVALID_RECT                                                         = 1050, 
    	CREATE_VIDEODECODECOMMANDQUEUE                                                                = 1051, 
    	CREATE_VIDEOPROCESSCOMMANDLIST                                                                = 1052, 
    	CREATE_VIDEOPROCESSCOMMANDQUEUE                                                               = 1053, 
    	LIVE_VIDEODECODECOMMANDQUEUE                                                                  = 1054, 
    	LIVE_VIDEOPROCESSCOMMANDLIST                                                                  = 1055, 
    	LIVE_VIDEOPROCESSCOMMANDQUEUE                                                                 = 1056, 
    	DESTROY_VIDEODECODECOMMANDQUEUE                                                               = 1057, 
    	DESTROY_VIDEOPROCESSCOMMANDLIST                                                               = 1058, 
    	DESTROY_VIDEOPROCESSCOMMANDQUEUE                                                              = 1059, 
    	CREATE_VIDEOPROCESSOR                                                                         = 1060, 
    	CREATE_VIDEOPROCESSSTREAM                                                                     = 1061, 
    	LIVE_VIDEOPROCESSOR                                                                           = 1062, 
    	LIVE_VIDEOPROCESSSTREAM                                                                       = 1063, 
    	DESTROY_VIDEOPROCESSOR                                                                        = 1064, 
    	DESTROY_VIDEOPROCESSSTREAM                                                                    = 1065, 
    	PROCESS_FRAME_INVALID_PARAMETERS                                                              = 1066, 
    	COPY_INVALIDLAYOUT                                                                            = 1067, 
    	CREATE_CRYPTO_SESSION                                                                         = 1068, 
    	CREATE_CRYPTO_SESSION_POLICY                                                                  = 1069, 
    	CREATE_PROTECTED_RESOURCE_SESSION                                                             = 1070, 
    	LIVE_CRYPTO_SESSION                                                                           = 1071, 
    	LIVE_CRYPTO_SESSION_POLICY                                                                    = 1072, 
    	LIVE_PROTECTED_RESOURCE_SESSION                                                               = 1073, 
    	DESTROY_CRYPTO_SESSION                                                                        = 1074, 
    	DESTROY_CRYPTO_SESSION_POLICY                                                                 = 1075, 
    	DESTROY_PROTECTED_RESOURCE_SESSION                                                            = 1076, 
    	PROTECTED_RESOURCE_SESSION_UNSUPPORTED                                                        = 1077, 
    	FENCE_INVALIDOPERATION                                                                        = 1078, 
    	CREATEQUERY_HEAP_COPY_QUEUE_TIMESTAMPS_NOT_SUPPORTED                                          = 1079, 
    	SAMPLEPOSITIONS_MISMATCH_DEFERRED                                                             = 1080, 
    	SAMPLEPOSITIONS_MISMATCH_RECORDTIME_ASSUMEDFROMFIRSTUSE                                       = 1081, 
    	SAMPLEPOSITIONS_MISMATCH_RECORDTIME_ASSUMEDFROMCLEAR                                          = 1082, 
    	CREATE_VIDEODECODERHEAP                                                                       = 1083, 
    	LIVE_VIDEODECODERHEAP                                                                         = 1084, 
    	DESTROY_VIDEODECODERHEAP                                                                      = 1085, 
    	OPENEXISTINGHEAP_INVALIDARG_RETURN                                                            = 1086, 
    	OPENEXISTINGHEAP_OUTOFMEMORY_RETURN                                                           = 1087, 
    	OPENEXISTINGHEAP_INVALIDADDRESS                                                               = 1088, 
    	OPENEXISTINGHEAP_INVALIDHANDLE                                                                = 1089, 
    	WRITEBUFFERIMMEDIATE_INVALID_DEST                                                             = 1090, 
    	WRITEBUFFERIMMEDIATE_INVALID_MODE                                                             = 1091, 
    	WRITEBUFFERIMMEDIATE_INVALID_ALIGNMENT                                                        = 1092, 
    	WRITEBUFFERIMMEDIATE_NOT_SUPPORTED                                                            = 1093, 
    	SETVIEWINSTANCEMASK_INVALIDARGS                                                               = 1094, 
    	VIEW_INSTANCING_UNSUPPORTED                                                                   = 1095, 
    	VIEW_INSTANCING_INVALIDARGS                                                                   = 1096, 
    	COPYTEXTUREREGION_MISMATCH_DECODE_REFERENCE_ONLY_FLAG                                         = 1097, 
    	COPYRESOURCE_MISMATCH_DECODE_REFERENCE_ONLY_FLAG                                              = 1098, 
    	CREATE_VIDEO_DECODE_HEAP_CAPS_FAILURE                                                         = 1099, 
    	CREATE_VIDEO_DECODE_HEAP_CAPS_UNSUPPORTED                                                     = 1100, 
    	VIDEO_DECODE_SUPPORT_INVALID_INPUT                                                            = 1101, 
    	CREATE_VIDEO_DECODER_UNSUPPORTED                                                              = 1102, 
    	CREATEGRAPHICSPIPELINESTATE_METADATA_ERROR                                                    = 1103, 
    	CREATEGRAPHICSPIPELINESTATE_VIEW_INSTANCING_VERTEX_SIZE_EXCEEDED                              = 1104, 
    	CREATEGRAPHICSPIPELINESTATE_RUNTIME_INTERNAL_ERROR                                            = 1105, 
    	NO_VIDEO_API_SUPPORT                                                                          = 1106, 
    	VIDEO_PROCESS_SUPPORT_INVALID_INPUT                                                           = 1107, 
    	CREATE_VIDEO_PROCESSOR_CAPS_FAILURE                                                           = 1108, 
    	VIDEO_PROCESS_SUPPORT_UNSUPPORTED_FORMAT                                                      = 1109, 
    	VIDEO_DECODE_FRAME_INVALID_ARGUMENT                                                           = 1110, 
    	ENQUEUE_MAKE_RESIDENT_INVALID_FLAGS                                                           = 1111, 
    	OPENEXISTINGHEAP_UNSUPPORTED                                                                  = 1112, 
    	VIDEO_PROCESS_FRAMES_INVALID_ARGUMENT                                                         = 1113, 
    	VIDEO_DECODE_SUPPORT_UNSUPPORTED                                                              = 1114, 
    	CREATE_COMMANDRECORDER                                                                        = 1115, 
    	LIVE_COMMANDRECORDER                                                                          = 1116, 
    	DESTROY_COMMANDRECORDER                                                                       = 1117, 
    	CREATE_COMMAND_RECORDER_VIDEO_NOT_SUPPORTED                                                   = 1118, 
    	CREATE_COMMAND_RECORDER_INVALID_SUPPORT_FLAGS                                                 = 1119, 
    	CREATE_COMMAND_RECORDER_INVALID_FLAGS                                                         = 1120, 
    	CREATE_COMMAND_RECORDER_MORE_RECORDERS_THAN_LOGICAL_PROCESSORS                                = 1121, 
    	CREATE_COMMANDPOOL                                                                            = 1122, 
    	LIVE_COMMANDPOOL                                                                              = 1123, 
    	DESTROY_COMMANDPOOL                                                                           = 1124, 
    	CREATE_COMMAND_POOL_INVALID_FLAGS                                                             = 1125, 
    	CREATE_COMMAND_LIST_VIDEO_NOT_SUPPORTED                                                       = 1126, 
    	COMMAND_RECORDER_SUPPORT_FLAGS_MISMATCH                                                       = 1127, 
    	COMMAND_RECORDER_CONTENTION                                                                   = 1128, 
    	COMMAND_RECORDER_USAGE_WITH_CREATECOMMANDLIST_COMMAND_LIST                                    = 1129, 
    	COMMAND_ALLOCATOR_USAGE_WITH_CREATECOMMANDLIST1_COMMAND_LIST                                  = 1130, 
    	CANNOT_EXECUTE_EMPTY_COMMAND_LIST                                                             = 1131, 
    	CANNOT_RESET_COMMAND_POOL_WITH_OPEN_COMMAND_LISTS                                             = 1132, 
    	CANNOT_USE_COMMAND_RECORDER_WITHOUT_CURRENT_TARGET                                            = 1133, 
    	CANNOT_CHANGE_COMMAND_RECORDER_TARGET_WHILE_RECORDING                                         = 1134, 
    	COMMAND_POOL_SYNC                                                                             = 1135, 
    	EVICT_UNDERFLOW                                                                               = 1136, 
    	CREATE_META_COMMAND                                                                           = 1137, 
    	LIVE_META_COMMAND                                                                             = 1138, 
    	DESTROY_META_COMMAND                                                                          = 1139, 
    	COPYBUFFERREGION_INVALID_DST_RESOURCE                                                         = 1140, 
    	COPYBUFFERREGION_INVALID_SRC_RESOURCE                                                         = 1141, 
    	ATOMICCOPYBUFFER_INVALID_DST_RESOURCE                                                         = 1142, 
    	ATOMICCOPYBUFFER_INVALID_SRC_RESOURCE                                                         = 1143, 
    	CREATEPLACEDRESOURCEONBUFFER_NULL_BUFFER                                                      = 1144, 
    	CREATEPLACEDRESOURCEONBUFFER_NULL_RESOURCE_DESC                                               = 1145, 
    	CREATEPLACEDRESOURCEONBUFFER_UNSUPPORTED                                                      = 1146, 
    	CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_DIMENSION                                         = 1147, 
    	CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_FLAGS                                             = 1148, 
    	CREATEPLACEDRESOURCEONBUFFER_INVALID_BUFFER_OFFSET                                            = 1149, 
    	CREATEPLACEDRESOURCEONBUFFER_INVALID_RESOURCE_DIMENSION                                       = 1150, 
    	CREATEPLACEDRESOURCEONBUFFER_INVALID_RESOURCE_FLAGS                                           = 1151, 
    	CREATEPLACEDRESOURCEONBUFFER_OUTOFMEMORY_RETURN                                               = 1152, 
    	CANNOT_CREATE_GRAPHICS_AND_VIDEO_COMMAND_RECORDER                                             = 1153, 
    	UPDATETILEMAPPINGS_POSSIBLY_MISMATCHING_PROPERTIES                                            = 1154, 
    	CREATE_COMMAND_LIST_INVALID_COMMAND_LIST_TYPE                                                 = 1155, 
    	CLEARUNORDEREDACCESSVIEW_INCOMPATIBLE_WITH_STRUCTURED_BUFFERS                                 = 1156, 
    	COMPUTE_ONLY_DEVICE_OPERATION_UNSUPPORTED                                                     = 1157, 
    	BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INVALID                                               = 1158, 
    	EMIT_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_INVALID                                 = 1159, 
    	COPY_RAYTRACING_ACCELERATION_STRUCTURE_INVALID                                                = 1160, 
    	DISPATCH_RAYS_INVALID                                                                         = 1161, 
    	GET_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_INVALID                                   = 1162, 
    	CREATE_LIFETIMETRACKER                                                                        = 1163, 
    	LIVE_LIFETIMETRACKER                                                                          = 1164, 
    	DESTROY_LIFETIMETRACKER                                                                       = 1165, 
    	DESTROYOWNEDOBJECT_OBJECTNOTOWNED                                                             = 1166, 
    	CREATE_TRACKEDWORKLOAD                                                                        = 1167, 
    	LIVE_TRACKEDWORKLOAD                                                                          = 1168, 
    	DESTROY_TRACKEDWORKLOAD                                                                       = 1169, 
    	RENDER_PASS_ERROR                                                                             = 1170, 
    	META_COMMAND_ID_INVALID                                                                       = 1171, 
    	META_COMMAND_UNSUPPORTED_PARAMS                                                               = 1172, 
    	META_COMMAND_FAILED_ENUMERATION                                                               = 1173, 
    	META_COMMAND_PARAMETER_SIZE_MISMATCH                                                          = 1174, 
    	UNINITIALIZED_META_COMMAND                                                                    = 1175, 
    	META_COMMAND_INVALID_GPU_VIRTUAL_ADDRESS                                                      = 1176, 
    	CREATE_VIDEOENCODECOMMANDLIST                                                                 = 1177, 
    	LIVE_VIDEOENCODECOMMANDLIST                                                                   = 1178, 
    	DESTROY_VIDEOENCODECOMMANDLIST                                                                = 1179, 
    	CREATE_VIDEOENCODECOMMANDQUEUE                                                                = 1180, 
    	LIVE_VIDEOENCODECOMMANDQUEUE                                                                  = 1181, 
    	DESTROY_VIDEOENCODECOMMANDQUEUE                                                               = 1182, 
    	CREATE_VIDEOMOTIONESTIMATOR                                                                   = 1183, 
    	LIVE_VIDEOMOTIONESTIMATOR                                                                     = 1184, 
    	DESTROY_VIDEOMOTIONESTIMATOR                                                                  = 1185, 
    	CREATE_VIDEOMOTIONVECTORHEAP                                                                  = 1186, 
    	LIVE_VIDEOMOTIONVECTORHEAP                                                                    = 1187, 
    	DESTROY_VIDEOMOTIONVECTORHEAP                                                                 = 1188, 
    	MULTIPLE_TRACKED_WORKLOADS                                                                    = 1189, 
    	MULTIPLE_TRACKED_WORKLOAD_PAIRS                                                               = 1190, 
    	OUT_OF_ORDER_TRACKED_WORKLOAD_PAIR                                                            = 1191, 
    	CANNOT_ADD_TRACKED_WORKLOAD                                                                   = 1192, 
    	INCOMPLETE_TRACKED_WORKLOAD_PAIR                                                              = 1193, 
    	CREATE_STATE_OBJECT_ERROR                                                                     = 1194, 
    	GET_SHADER_IDENTIFIER_ERROR                                                                   = 1195, 
    	GET_SHADER_STACK_SIZE_ERROR                                                                   = 1196, 
    	GET_PIPELINE_STACK_SIZE_ERROR                                                                 = 1197, 
    	SET_PIPELINE_STACK_SIZE_ERROR                                                                 = 1198, 
    	GET_SHADER_IDENTIFIER_SIZE_INVALID                                                            = 1199, 
    	CHECK_DRIVER_MATCHING_IDENTIFIER_INVALID                                                      = 1200, 
    	CHECK_DRIVER_MATCHING_IDENTIFIER_DRIVER_REPORTED_ISSUE                                        = 1201, 
    	RENDER_PASS_INVALID_RESOURCE_BARRIER                                                          = 1202, 
    	RENDER_PASS_DISALLOWED_API_CALLED                                                             = 1203, 
    	RENDER_PASS_CANNOT_NEST_RENDER_PASSES                                                         = 1204, 
    	RENDER_PASS_CANNOT_END_WITHOUT_BEGIN                                                          = 1205, 
    	RENDER_PASS_CANNOT_CLOSE_COMMAND_LIST                                                         = 1206, 
    	RENDER_PASS_GPU_WORK_WHILE_SUSPENDED                                                          = 1207, 
    	RENDER_PASS_MISMATCHING_SUSPEND_RESUME                                                        = 1208, 
    	RENDER_PASS_NO_PRIOR_SUSPEND_WITHIN_EXECUTECOMMANDLISTS                                       = 1209, 
    	RENDER_PASS_NO_SUBSEQUENT_RESUME_WITHIN_EXECUTECOMMANDLISTS                                   = 1210, 
    	TRACKED_WORKLOAD_COMMAND_QUEUE_MISMATCH                                                       = 1211, 
    	TRACKED_WORKLOAD_NOT_SUPPORTED                                                                = 1212, 
    	RENDER_PASS_MISMATCHING_NO_ACCESS                                                             = 1213, 
    	RENDER_PASS_UNSUPPORTED_RESOLVE                                                               = 1214, 
    	CLEARUNORDEREDACCESSVIEW_INVALID_RESOURCE_PTR                                                 = 1215, 
    	WINDOWS7_FENCE_OUTOFORDER_SIGNAL                                                              = 1216, 
    	WINDOWS7_FENCE_OUTOFORDER_WAIT                                                                = 1217, 
    	VIDEO_CREATE_MOTION_ESTIMATOR_INVALID_ARGUMENT                                                = 1218, 
    	VIDEO_CREATE_MOTION_VECTOR_HEAP_INVALID_ARGUMENT                                              = 1219, 
    	ESTIMATE_MOTION_INVALID_ARGUMENT                                                              = 1220, 
    	RESOLVE_MOTION_VECTOR_HEAP_INVALID_ARGUMENT                                                   = 1221, 
    	GETGPUVIRTUALADDRESS_INVALID_HEAP_TYPE                                                        = 1222, 
    	SET_BACKGROUND_PROCESSING_MODE_INVALID_ARGUMENT                                               = 1223, 
    	CREATE_COMMAND_LIST_INVALID_COMMAND_LIST_TYPE_FOR_FEATURE_LEVEL                               = 1224, 
    	CREATE_VIDEOEXTENSIONCOMMAND                                                                  = 1225, 
    	LIVE_VIDEOEXTENSIONCOMMAND                                                                    = 1226, 
    	DESTROY_VIDEOEXTENSIONCOMMAND                                                                 = 1227, 
    	INVALID_VIDEO_EXTENSION_COMMAND_ID                                                            = 1228, 
    	VIDEO_EXTENSION_COMMAND_INVALID_ARGUMENT                                                      = 1229, 
    	CREATE_ROOT_SIGNATURE_NOT_UNIQUE_IN_DXIL_LIBRARY                                              = 1230, 
    	VARIABLE_SHADING_RATE_NOT_ALLOWED_WITH_TIR                                                    = 1231, 
    	GEOMETRY_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE = 1232, 
    	RSSETSHADING_RATE_INVALID_SHADING_RATE                                                        = 1233, 
    	RSSETSHADING_RATE_SHADING_RATE_NOT_PERMITTED_BY_CAP                                           = 1234, 
    	RSSETSHADING_RATE_INVALID_COMBINER                                                            = 1235, 
    	RSSETSHADINGRATEIMAGE_REQUIRES_TIER_2                                                         = 1236, 
    	RSSETSHADINGRATE_REQUIRES_TIER_1                                                              = 1237, 
    	SHADING_RATE_IMAGE_INCORRECT_FORMAT                                                           = 1238, 
    	SHADING_RATE_IMAGE_INCORRECT_ARRAY_SIZE                                                       = 1239, 
    	SHADING_RATE_IMAGE_INCORRECT_MIP_LEVEL                                                        = 1240, 
    	SHADING_RATE_IMAGE_INCORRECT_SAMPLE_COUNT                                                     = 1241, 
    	SHADING_RATE_IMAGE_INCORRECT_SAMPLE_QUALITY                                                   = 1242, 
    	NON_RETAIL_SHADER_MODEL_WONT_VALIDATE                                                         = 1243, 
    	CREATEGRAPHICSPIPELINESTATE_AS_ROOT_SIGNATURE_MISMATCH                                        = 1244, 
    	CREATEGRAPHICSPIPELINESTATE_MS_ROOT_SIGNATURE_MISMATCH                                        = 1245, 
    	ADD_TO_STATE_OBJECT_ERROR                                                                     = 1246, 
    	CREATE_PROTECTED_RESOURCE_SESSION_INVALID_ARGUMENT                                            = 1247, 
    	CREATEGRAPHICSPIPELINESTATE_MS_PSO_DESC_MISMATCH                                              = 1248, 
    	CREATEPIPELINESTATE_MS_INCOMPLETE_TYPE                                                        = 1249, 
    	CREATEGRAPHICSPIPELINESTATE_AS_NOT_MS_MISMATCH                                                = 1250, 
    	CREATEGRAPHICSPIPELINESTATE_MS_NOT_PS_MISMATCH                                                = 1251, 
    	NONZERO_SAMPLER_FEEDBACK_MIP_REGION_WITH_INCOMPATIBLE_FORMAT                                  = 1252, 
    	CREATEGRAPHICSPIPELINESTATE_INPUTLAYOUT_SHADER_MISMATCH                                       = 1253, 
    	EMPTY_DISPATCH                                                                                = 1254, 
    	RESOURCE_FORMAT_REQUIRES_SAMPLER_FEEDBACK_CAPABILITY                                          = 1255, 
    	SAMPLER_FEEDBACK_MAP_INVALID_MIP_REGION                                                       = 1256, 
    	SAMPLER_FEEDBACK_MAP_INVALID_DIMENSION                                                        = 1257, 
    	SAMPLER_FEEDBACK_MAP_INVALID_SAMPLE_COUNT                                                     = 1258, 
    	SAMPLER_FEEDBACK_MAP_INVALID_SAMPLE_QUALITY                                                   = 1259, 
    	SAMPLER_FEEDBACK_MAP_INVALID_LAYOUT                                                           = 1260, 
    	SAMPLER_FEEDBACK_MAP_REQUIRES_UNORDERED_ACCESS_FLAG                                           = 1261, 
    	SAMPLER_FEEDBACK_CREATE_UAV_NULL_ARGUMENTS                                                    = 1262, 
    	SAMPLER_FEEDBACK_UAV_REQUIRES_SAMPLER_FEEDBACK_CAPABILITY                                     = 1263, 
    	SAMPLER_FEEDBACK_CREATE_UAV_REQUIRES_FEEDBACK_MAP_FORMAT                                      = 1264, 
    	CREATEMESHSHADER_INVALIDSHADERBYTECODE                                                        = 1265, 
    	CREATEMESHSHADER_OUTOFMEMORY                                                                  = 1266, 
    	CREATEMESHSHADERWITHSTREAMOUTPUT_INVALIDSHADERTYPE                                            = 1267, 
    	RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_TRANSCODE_INVALID_FORMAT                                  = 1268, 
    	RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_INVALID_MIP_LEVEL_COUNT                                   = 1269, 
    	RESOLVESUBRESOURCE_SAMPLER_FEEDBACK_TRANSCODE_ARRAY_SIZE_MISMATCH                             = 1270, 
    	SAMPLER_FEEDBACK_CREATE_UAV_MISMATCHING_TARGETED_RESOURCE                                     = 1271, 
    	CREATEMESHSHADER_OUTPUTEXCEEDSMAXSIZE                                                         = 1272, 
    	CREATEMESHSHADER_GROUPSHAREDEXCEEDSMAXSIZE                                                    = 1273, 
    	VERTEX_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE   = 1274, 
    	MESH_SHADER_OUTPUTTING_BOTH_VIEWPORT_ARRAY_INDEX_AND_SHADING_RATE_NOT_SUPPORTED_ON_DEVICE     = 1275, 
    	CREATEMESHSHADER_MISMATCHEDASMSPAYLOADSIZE                                                    = 1276, 
    	CREATE_ROOT_SIGNATURE_UNBOUNDED_STATIC_DESCRIPTORS                                            = 1277, 
    	CREATEAMPLIFICATIONSHADER_INVALIDSHADERBYTECODE                                               = 1278, 
    	CREATEAMPLIFICATIONSHADER_OUTOFMEMORY                                                         = 1279, 
    	MESSAGES_END                                                                                  = 1280, 
    }

    MESSAGE_SEVERITY ¶

    MESSAGE_SEVERITY :: enum i32 {
    	CORRUPTION = 0, 
    	ERROR      = 1, 
    	WARNING    = 2, 
    	INFO       = 3, 
    	MESSAGE    = 4, 
    }

    META_COMMAND_DESC ¶

    META_COMMAND_DESC :: struct {
    	Id:                       sys_windows.GUID,
    	Name:                     [^]u16,
    	InitializationDirtyState: GRAPHICS_STATES,
    	ExecutionDirtyState:      GRAPHICS_STATES,
    }

    META_COMMAND_PARAMETER_DESC ¶

    META_COMMAND_PARAMETER_DESC :: struct {
    	Name:                  [^]u16,
    	Type:                  META_COMMAND_PARAMETER_TYPE,
    	Flags:                 META_COMMAND_PARAMETER_FLAGS,
    	RequiredResourceState: RESOURCE_STATES,
    	StructureOffset:       u32,
    }

    META_COMMAND_PARAMETER_FLAG ¶

    META_COMMAND_PARAMETER_FLAG :: enum u32 {
    	INPUT  = 0, 
    	OUTPUT = 1, 
    }

    META_COMMAND_PARAMETER_FLAGS ¶

    META_COMMAND_PARAMETER_FLAGS :: distinct bit_set[META_COMMAND_PARAMETER_FLAG; u32]

    META_COMMAND_PARAMETER_STAGE ¶

    META_COMMAND_PARAMETER_STAGE :: enum i32 {
    	CREATION       = 0, 
    	INITIALIZATION = 1, 
    	EXECUTION      = 2, 
    }

    META_COMMAND_PARAMETER_TYPE ¶

    META_COMMAND_PARAMETER_TYPE :: enum i32 {
    	FLOAT                                       = 0, 
    	UINT64                                      = 1, 
    	GPU_VIRTUAL_ADDRESS                         = 2, 
    	CPU_DESCRIPTOR_HANDLE_HEAP_TYPE_CBV_SRV_UAV = 3, 
    	GPU_DESCRIPTOR_HANDLE_HEAP_TYPE_CBV_SRV_UAV = 4, 
    }

    MIN_PRECISION ¶

    MIN_PRECISION :: enum i32 {
    	DEFAULT   = 0, 
    	FLOAT_16  = 1, 
    	FLOAT_2_8 = 2, 
    	RESERVED  = 3, 
    	SINT_16   = 4, 
    	UINT_16   = 5, 
    	ANY_16    = 240, 
    	ANY_10    = 241, 
    }

    MIP_REGION ¶

    MIP_REGION :: struct {
    	Width:  u32,
    	Height: u32,
    	Depth:  u32,
    }

    MULTIPLE_FENCE_WAIT_FLAG ¶

    MULTIPLE_FENCE_WAIT_FLAG :: enum u32 {
    	ANY = 0, 
    }

    MULTIPLE_FENCE_WAIT_FLAGS ¶

    MULTIPLE_FENCE_WAIT_FLAGS :: distinct bit_set[MULTIPLE_FENCE_WAIT_FLAG; u32]

    MULTISAMPLE_QUALITY_LEVEL_FLAG ¶

    MULTISAMPLE_QUALITY_LEVEL_FLAG :: enum u32 {
    	TILED_RESOURCE = 0, 
    }

    MULTISAMPLE_QUALITY_LEVEL_FLAGS ¶

    MULTISAMPLE_QUALITY_LEVEL_FLAGS :: distinct bit_set[MULTISAMPLE_QUALITY_LEVEL_FLAG; u32]

    NAME ¶

    NAME :: enum i32 {
    	UNDEFINED                     = 0, 
    	POSITION                      = 1, 
    	CLIP_DISTANCE                 = 2, 
    	CULL_DISTANCE                 = 3, 
    	RENDER_TARGET_ARRAY_INDEX     = 4, 
    	VIEWPORT_ARRAY_INDEX          = 5, 
    	VERTEX_ID                     = 6, 
    	PRIMITIVE_ID                  = 7, 
    	INSTANCE_ID                   = 8, 
    	IS_FRONT_FACE                 = 9, 
    	SAMPLE_INDEX                  = 10, 
    	FINAL_QUAD_EDGE_TESSFACTOR    = 11, 
    	FINAL_QUAD_INSIDE_TESSFACTOR  = 12, 
    	FINAL_TRI_EDGE_TESSFACTOR     = 13, 
    	FINAL_TRI_INSIDE_TESSFACTOR   = 14, 
    	FINAL_LINE_DETAIL_TESSFACTOR  = 15, 
    	FINAL_LINE_DENSITY_TESSFACTOR = 16, 
    	BARYCENTRICS                  = 23, 
    	SHADINGRATE                   = 24, 
    	CULLPRIMITIVE                 = 25, 
    	TARGET                        = 64, 
    	DEPTH                         = 65, 
    	COVERAGE                      = 66, 
    	DEPTH_GREATER_EQUAL           = 67, 
    	DEPTH_LESS_EQUAL              = 68, 
    	STENCIL_REF                   = 69, 
    	INNER_COVERAGE                = 70, 
    }

    NODE_MASK ¶

    NODE_MASK :: struct {
    	NodeMask: u32,
    }

    PACKED_MIP_INFO ¶

    PACKED_MIP_INFO :: struct {
    	NumStandardMips:                 u8,
    	NumPackedMips:                   u8,
    	NumTilesForPackedMips:           u32,
    	StartTileIndexInOverallResource: u32,
    }

    PARAMETER_DESC ¶

    PARAMETER_DESC :: struct {
    	Name:              cstring,
    	SemanticName:      cstring,
    	Type:              SHADER_VARIABLE_TYPE,
    	Class:             SHADER_VARIABLE_CLASS,
    	Rows:              u32,
    	Columns:           u32,
    	InterpolationMode: INTERPOLATION_MODE,
    	Flags:             PARAMETER_FLAGS,
    	FirstInRegister:   u32,
    	FirstInComponent:  u32,
    	FirstOutRegister:  u32,
    	FirstOutComponent: u32,
    }

    PARAMETER_FLAG ¶

    PARAMETER_FLAG :: enum u32 {
    	IN  = 0, 
    	OUT = 1, 
    }

    PARAMETER_FLAGS ¶

    PARAMETER_FLAGS :: distinct bit_set[PARAMETER_FLAG; u32]

    PFN_CREATE_DEVICE ¶

    PFN_CREATE_DEVICE :: proc "c" (a0: ^directx_dxgi.IUnknown, a1: FEATURE_LEVEL, a2: ^sys_windows.GUID, a3: ^rawptr) -> sys_windows.HRESULT

    PFN_CREATE_ROOT_SIGNATURE_DESERIALIZER ¶

    PFN_CREATE_ROOT_SIGNATURE_DESERIALIZER :: proc "c" (a0: rawptr, a1: uint, a2: ^sys_windows.GUID, a3: ^rawptr) -> sys_windows.HRESULT

    PFN_CREATE_VERSIONED_ROOT_SIGNATURE_DESERIALIZER ¶

    PFN_CREATE_VERSIONED_ROOT_SIGNATURE_DESERIALIZER :: proc "c" (a0: rawptr, a1: uint, a2: ^sys_windows.GUID, a3: ^rawptr) -> sys_windows.HRESULT

    PFN_DESTRUCTION_CALLBACK ¶

    PFN_DESTRUCTION_CALLBACK :: proc "c" (a0: rawptr)

    PFN_GET_DEBUG_INTERFACE ¶

    PFN_GET_DEBUG_INTERFACE :: proc "c" (a0: ^sys_windows.GUID, a1: ^rawptr) -> sys_windows.HRESULT

    PFN_MESSAGE_CALLBACK ¶

    PFN_MESSAGE_CALLBACK :: proc "c" (Category: MESSAGE_CATEGORY, Severity: MESSAGE_SEVERITY, ID: MESSAGE_ID, pDescription: cstring, pContext: rawptr)

    PFN_SERIALIZE_ROOT_SIGNATURE ¶

    PFN_SERIALIZE_ROOT_SIGNATURE :: proc "c" (a0: ^ROOT_SIGNATURE_DESC, a1: ROOT_SIGNATURE_VERSION, a2: ^^directx_d3d_compiler.ID3D10Blob, a3: ^^directx_d3d_compiler.ID3D10Blob) -> sys_windows.HRESULT

    PFN_SERIALIZE_VERSIONED_ROOT_SIGNATURE ¶

    PFN_SERIALIZE_VERSIONED_ROOT_SIGNATURE :: proc "c" (a0: ^VERSIONED_ROOT_SIGNATURE_DESC, a1: ^^directx_d3d_compiler.ID3D10Blob, a2: ^^directx_d3d_compiler.ID3D10Blob) -> sys_windows.HRESULT

    PIPELINE_STATE_FLAG ¶

    PIPELINE_STATE_FLAG :: enum u32 {
    	TOOL_DEBUG = 0, 
    }

    PIPELINE_STATE_FLAGS ¶

    PIPELINE_STATE_FLAGS :: distinct bit_set[PIPELINE_STATE_FLAG; u32]

    PIPELINE_STATE_STREAM_DESC ¶

    PIPELINE_STATE_STREAM_DESC :: struct {
    	SizeInBytes:                   uint,
    	pPipelineStateSubobjectStream: rawptr,
    }

    PIPELINE_STATE_SUBOBJECT_TYPE ¶

    PIPELINE_STATE_SUBOBJECT_TYPE :: enum i32 {
    	ROOT_SIGNATURE        = 0, 
    	VS                    = 1, 
    	PS                    = 2, 
    	DS                    = 3, 
    	HS                    = 4, 
    	GS                    = 5, 
    	CS                    = 6, 
    	STREAM_OUTPUT         = 7, 
    	BLEND                 = 8, 
    	SAMPLE_MASK           = 9, 
    	RASTERIZER            = 10, 
    	DEPTH_STENCIL         = 11, 
    	INPUT_LAYOUT          = 12, 
    	IB_STRIP_CUT_VALUE    = 13, 
    	PRIMITIVE_TOPOLOGY    = 14, 
    	RENDER_TARGET_FORMATS = 15, 
    	DEPTH_STENCIL_FORMAT  = 16, 
    	SAMPLE_DESC           = 17, 
    	NODE_MASK             = 18, 
    	CACHED_PSO            = 19, 
    	FLAGS                 = 20, 
    	DEPTH_STENCIL1        = 21, 
    	VIEW_INSTANCING       = 22, 
    	AS                    = 24, 
    	MS                    = 25, 
    	MAX_VALID             = 26, 
    }

    PLACED_SUBRESOURCE_FOOTPRINT ¶

    PLACED_SUBRESOURCE_FOOTPRINT :: struct {
    	Offset:    u64,
    	Footprint: SUBRESOURCE_FOOTPRINT,
    }

    PREDICATION_OP ¶

    PREDICATION_OP :: enum i32 {
    	EQUAL_ZERO     = 0, 
    	NOT_EQUAL_ZERO = 1, 
    }

    PRIMITIVE ¶

    PRIMITIVE :: enum i32 {
    	UNDEFINED               = 0, 
    	POINT                   = 1, 
    	LINE                    = 2, 
    	TRIANGLE                = 3, 
    	LINE_ADJ                = 6, 
    	TRIANGLE_ADJ            = 7, 
    	_1_CONTROL_POINT_PATCH  = 8, 
    	_2_CONTROL_POINT_PATCH  = 9, 
    	_3_CONTROL_POINT_PATCH  = 10, 
    	_4_CONTROL_POINT_PATCH  = 11, 
    	_5_CONTROL_POINT_PATCH  = 12, 
    	_6_CONTROL_POINT_PATCH  = 13, 
    	_7_CONTROL_POINT_PATCH  = 14, 
    	_8_CONTROL_POINT_PATCH  = 15, 
    	_9_CONTROL_POINT_PATCH  = 16, 
    	_10_CONTROL_POINT_PATCH = 17, 
    	_11_CONTROL_POINT_PATCH = 18, 
    	_12_CONTROL_POINT_PATCH = 19, 
    	_13_CONTROL_POINT_PATCH = 20, 
    	_14_CONTROL_POINT_PATCH = 21, 
    	_15_CONTROL_POINT_PATCH = 22, 
    	_16_CONTROL_POINT_PATCH = 23, 
    	_17_CONTROL_POINT_PATCH = 24, 
    	_18_CONTROL_POINT_PATCH = 25, 
    	_19_CONTROL_POINT_PATCH = 26, 
    	_20_CONTROL_POINT_PATCH = 27, 
    	_21_CONTROL_POINT_PATCH = 28, 
    	_22_CONTROL_POINT_PATCH = 29, 
    	_23_CONTROL_POINT_PATCH = 30, 
    	_24_CONTROL_POINT_PATCH = 31, 
    	_25_CONTROL_POINT_PATCH = 32, 
    	_26_CONTROL_POINT_PATCH = 33, 
    	_27_CONTROL_POINT_PATCH = 34, 
    	_28_CONTROL_POINT_PATCH = 35, 
    	_29_CONTROL_POINT_PATCH = 36, 
    	_30_CONTROL_POINT_PATCH = 37, 
    	_31_CONTROL_POINT_PATCH = 38, 
    	_32_CONTROL_POINT_PATCH = 39, 
    }

    PRIMITIVE_TOPOLOGY ¶

    PRIMITIVE_TOPOLOGY :: enum i32 {
    	UNDEFINED                   = 0, 
    	POINTLIST                   = 1, 
    	LINELIST                    = 2, 
    	LINESTRIP                   = 3, 
    	TRIANGLELIST                = 4, 
    	TRIANGLESTRIP               = 5, 
    	LINELIST_ADJ                = 10, 
    	LINESTRIP_ADJ               = 11, 
    	TRIANGLELIST_ADJ            = 12, 
    	TRIANGLESTRIP_ADJ           = 13, 
    	_1_CONTROL_POINT_PATCHLIST  = 33, 
    	_2_CONTROL_POINT_PATCHLIST  = 34, 
    	_3_CONTROL_POINT_PATCHLIST  = 35, 
    	_4_CONTROL_POINT_PATCHLIST  = 36, 
    	_5_CONTROL_POINT_PATCHLIST  = 37, 
    	_6_CONTROL_POINT_PATCHLIST  = 38, 
    	_7_CONTROL_POINT_PATCHLIST  = 39, 
    	_8_CONTROL_POINT_PATCHLIST  = 40, 
    	_9_CONTROL_POINT_PATCHLIST  = 41, 
    	_10_CONTROL_POINT_PATCHLIST = 42, 
    	_11_CONTROL_POINT_PATCHLIST = 43, 
    	_12_CONTROL_POINT_PATCHLIST = 44, 
    	_13_CONTROL_POINT_PATCHLIST = 45, 
    	_14_CONTROL_POINT_PATCHLIST = 46, 
    	_15_CONTROL_POINT_PATCHLIST = 47, 
    	_16_CONTROL_POINT_PATCHLIST = 48, 
    	_17_CONTROL_POINT_PATCHLIST = 49, 
    	_18_CONTROL_POINT_PATCHLIST = 50, 
    	_19_CONTROL_POINT_PATCHLIST = 51, 
    	_20_CONTROL_POINT_PATCHLIST = 52, 
    	_21_CONTROL_POINT_PATCHLIST = 53, 
    	_22_CONTROL_POINT_PATCHLIST = 54, 
    	_23_CONTROL_POINT_PATCHLIST = 55, 
    	_24_CONTROL_POINT_PATCHLIST = 56, 
    	_25_CONTROL_POINT_PATCHLIST = 57, 
    	_26_CONTROL_POINT_PATCHLIST = 58, 
    	_27_CONTROL_POINT_PATCHLIST = 59, 
    	_28_CONTROL_POINT_PATCHLIST = 60, 
    	_29_CONTROL_POINT_PATCHLIST = 61, 
    	_30_CONTROL_POINT_PATCHLIST = 62, 
    	_31_CONTROL_POINT_PATCHLIST = 63, 
    	_32_CONTROL_POINT_PATCHLIST = 64, 
    }

    PRIMITIVE_TOPOLOGY_TYPE ¶

    PRIMITIVE_TOPOLOGY_TYPE :: enum i32 {
    	UNDEFINED = 0, 
    	POINT     = 1, 
    	LINE      = 2, 
    	TRIANGLE  = 3, 
    	PATCH     = 4, 
    }

    PROGRAMMABLE_SAMPLE_POSITIONS_TIER ¶

    PROGRAMMABLE_SAMPLE_POSITIONS_TIER :: enum i32 {
    	NOT_SUPPORTED = 0, 
    	_1            = 1, 
    	_2            = 2, 
    }

    PROTECTED_RESOURCE_SESSION_DESC ¶

    PROTECTED_RESOURCE_SESSION_DESC :: struct {
    	NodeMask: u32,
    	Flags:    PROTECTED_RESOURCE_SESSION_FLAGS,
    }

    PROTECTED_RESOURCE_SESSION_DESC1 ¶

    PROTECTED_RESOURCE_SESSION_DESC1 :: struct {
    	NodeMask:       u32,
    	Flags:          PROTECTED_RESOURCE_SESSION_FLAGS,
    	ProtectionType: sys_windows.GUID,
    }

    PROTECTED_RESOURCE_SESSION_FLAG ¶

    PROTECTED_RESOURCE_SESSION_FLAG :: enum u32 {
    }

    PROTECTED_RESOURCE_SESSION_FLAGS ¶

    PROTECTED_RESOURCE_SESSION_FLAGS :: distinct bit_set[PROTECTED_RESOURCE_SESSION_FLAG; u32]

    PROTECTED_RESOURCE_SESSION_SUPPORT_FLAG ¶

    PROTECTED_RESOURCE_SESSION_SUPPORT_FLAG :: enum u32 {
    	SUPPORTED = 0, 
    }

    PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS ¶

    PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS :: distinct bit_set[PROTECTED_RESOURCE_SESSION_SUPPORT_FLAG; u32]

    PROTECTED_SESSION_STATUS ¶

    PROTECTED_SESSION_STATUS :: enum i32 {
    	OK      = 0, 
    	INVALID = 1, 
    }

    QUERY_DATA_PIPELINE_STATISTICS ¶

    QUERY_DATA_PIPELINE_STATISTICS :: struct {
    	IAVertices:    u64,
    	IAPrimitives:  u64,
    	VSInvocations: u64,
    	GSInvocations: u64,
    	GSPrimitives:  u64,
    	CInvocations:  u64,
    	CPrimitives:   u64,
    	PSInvocations: u64,
    	HSInvocations: u64,
    	DSInvocations: u64,
    	CSInvocations: u64,
    }

    QUERY_DATA_SO_STATISTICS ¶

    QUERY_DATA_SO_STATISTICS :: struct {
    	NumPrimitivesWritten:    u64,
    	PrimitivesStorageNeeded: u64,
    }

    QUERY_HEAP_DESC ¶

    QUERY_HEAP_DESC :: struct {
    	Type:     QUERY_HEAP_TYPE,
    	Count:    u32,
    	NodeMask: u32,
    }

    QUERY_HEAP_TYPE ¶

    QUERY_HEAP_TYPE :: enum i32 {
    	OCCLUSION               = 0, 
    	TIMESTAMP               = 1, 
    	PIPELINE_STATISTICS     = 2, 
    	SO_STATISTICS           = 3, 
    	VIDEO_DECODE_STATISTICS = 4, 
    	COPY_QUEUE_TIMESTAMP    = 5, 
    }

    QUERY_TYPE ¶

    QUERY_TYPE :: enum i32 {
    	OCCLUSION               = 0, 
    	BINARY_OCCLUSION        = 1, 
    	TIMESTAMP               = 2, 
    	PIPELINE_STATISTICS     = 3, 
    	SO_STATISTICS_STREAM0   = 4, 
    	SO_STATISTICS_STREAM1   = 5, 
    	SO_STATISTICS_STREAM2   = 6, 
    	SO_STATISTICS_STREAM3   = 7, 
    	VIDEO_DECODE_STATISTICS = 8, 
    }

    RANGE ¶

    RANGE :: struct {
    	Begin: uint,
    	End:   uint,
    }

    RANGE_UINT64 ¶

    RANGE_UINT64 :: struct {
    	Begin: u64,
    	End:   u64,
    }

    RASTERIZER_DESC ¶

    RASTERIZER_DESC :: struct {
    	FillMode:              FILL_MODE,
    	CullMode:              CULL_MODE,
    	FrontCounterClockwise: sys_windows.BOOL,
    	DepthBias:             i32,
    	DepthBiasClamp:        f32,
    	SlopeScaledDepthBias:  f32,
    	DepthClipEnable:       sys_windows.BOOL,
    	MultisampleEnable:     sys_windows.BOOL,
    	AntialiasedLineEnable: sys_windows.BOOL,
    	ForcedSampleCount:     u32,
    	ConservativeRaster:    CONSERVATIVE_RASTERIZATION_MODE,
    }

    RAYTRACING_AABB ¶

    RAYTRACING_AABB :: struct {
    	MinX: f32,
    	MinY: f32,
    	MinZ: f32,
    	MaxX: f32,
    	MaxY: f32,
    	MaxZ: f32,
    }

    RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG ¶

    RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG :: enum u32 {
    	ALLOW_UPDATE      = 0, 
    	ALLOW_COMPACTION  = 1, 
    	PREFER_FAST_TRACE = 2, 
    	PREFER_FAST_BUILD = 3, 
    	MINIMIZE_MEMORY   = 4, 
    	PERFORM_UPDATE    = 5, 
    }

    RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS ¶

    RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS :: distinct bit_set[RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAG; u32]

    RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE ¶

    RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE :: enum i32 {
    	CLONE                          = 0, 
    	COMPACT                        = 1, 
    	VISUALIZATION_DECODE_FOR_TOOLS = 2, 
    	SERIALIZE                      = 3, 
    	DESERIALIZE                    = 4, 
    }

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_COMPACTED_SIZE_DESC ¶

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_COMPACTED_SIZE_DESC :: struct {
    	CompactedSizeInBytes: u64,
    }

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_CURRENT_SIZE_DESC ¶

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_CURRENT_SIZE_DESC :: struct {
    	CurrentSizeInBytes: u64,
    }

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC ¶

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC :: struct {
    	DestBuffer: u64,
    	InfoType:   RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE,
    }

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION_DESC ¶

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION_DESC :: struct {
    	SerializedSizeInBytes:                       u64,
    	NumBottomLevelAccelerationStructurePointers: u64,
    }

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TOOLS_VISUALIZATION_DESC ¶

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TOOLS_VISUALIZATION_DESC :: struct {
    	DecodedSizeInBytes: u64,
    }

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE ¶

    RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE :: enum i32 {
    	COMPACTED_SIZE      = 0, 
    	TOOLS_VISUALIZATION = 1, 
    	SERIALIZATION       = 2, 
    	CURRENT_SIZE        = 3, 
    }

    RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO ¶

    RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO :: struct {
    	ResultDataMaxSizeInBytes:     u64,
    	ScratchDataSizeInBytes:       u64,
    	UpdateScratchDataSizeInBytes: u64,
    }

    RAYTRACING_ACCELERATION_STRUCTURE_SRV ¶

    RAYTRACING_ACCELERATION_STRUCTURE_SRV :: struct {
    	Location: u64,
    }

    RAYTRACING_ACCELERATION_STRUCTURE_TYPE ¶

    RAYTRACING_ACCELERATION_STRUCTURE_TYPE :: enum i32 {
    	TOP_LEVEL    = 0, 
    	BOTTOM_LEVEL = 1, 
    }

    RAYTRACING_GEOMETRY_AABBS_DESC ¶

    RAYTRACING_GEOMETRY_AABBS_DESC :: struct {
    	AABBCount: u64,
    	AABBs:     GPU_VIRTUAL_ADDRESS_AND_STRIDE,
    }

    RAYTRACING_GEOMETRY_DESC ¶

    RAYTRACING_GEOMETRY_DESC :: struct {
    	Type:  RAYTRACING_GEOMETRY_TYPE,
    	Flags: RAYTRACING_GEOMETRY_FLAGS,
    	using _: struct #raw_union {
    		Triangles: RAYTRACING_GEOMETRY_TRIANGLES_DESC,
    		AABBs:     RAYTRACING_GEOMETRY_AABBS_DESC,
    	},
    }

    RAYTRACING_GEOMETRY_FLAG ¶

    RAYTRACING_GEOMETRY_FLAG :: enum u32 {
    	OPAQUE                         = 0, 
    	NO_DUPLICATE_ANYHIT_INVOCATION = 1, 
    }

    RAYTRACING_GEOMETRY_FLAGS ¶

    RAYTRACING_GEOMETRY_FLAGS :: distinct bit_set[RAYTRACING_GEOMETRY_FLAG; u32]

    RAYTRACING_GEOMETRY_TRIANGLES_DESC ¶

    RAYTRACING_GEOMETRY_TRIANGLES_DESC :: struct {
    	Transform3x4: u64,
    	IndexFormat:  directx_dxgi.FORMAT,
    	VertexFormat: directx_dxgi.FORMAT,
    	IndexCount:   u32,
    	VertexCount:  u32,
    	IndexBuffer:  u64,
    	VertexBuffer: GPU_VIRTUAL_ADDRESS_AND_STRIDE,
    }

    RAYTRACING_GEOMETRY_TYPE ¶

    RAYTRACING_GEOMETRY_TYPE :: enum i32 {
    	TRIANGLES                  = 0, 
    	PROCEDURAL_PRIMITIVE_AABBS = 1, 
    }

    RAYTRACING_INSTANCE_DESC ¶

    RAYTRACING_INSTANCE_DESC :: struct {
    	Transform:                           [3][4]f32,
    	InstanceID:                          u32,
    	InstanceContributionToHitGroupIndex: u32,
    	AccelerationStructure:               u64,
    }

    RAYTRACING_INSTANCE_FLAG ¶

    RAYTRACING_INSTANCE_FLAG :: enum u32 {
    	TRIANGLE_CULL_DISABLE           = 0, 
    	TRIANGLE_FRONT_COUNTERCLOCKWISE = 1, 
    	FORCE_OPAQUE                    = 2, 
    	FORCE_NON_OPAQUE                = 3, 
    }

    RAYTRACING_INSTANCE_FLAGS ¶

    RAYTRACING_INSTANCE_FLAGS :: distinct bit_set[RAYTRACING_INSTANCE_FLAG; u32]

    RAYTRACING_PIPELINE_CONFIG ¶

    RAYTRACING_PIPELINE_CONFIG :: struct {
    	MaxTraceRecursionDepth: u32,
    }

    RAYTRACING_PIPELINE_CONFIG1 ¶

    RAYTRACING_PIPELINE_CONFIG1 :: struct {
    	MaxTraceRecursionDepth: u32,
    	Flags:                  RAYTRACING_PIPELINE_FLAGS,
    }

    RAYTRACING_PIPELINE_FLAG ¶

    RAYTRACING_PIPELINE_FLAG :: enum u32 {
    	SKIP_TRIANGLES             = 8, 
    	SKIP_PROCEDURAL_PRIMITIVES = 9, 
    }

    RAYTRACING_PIPELINE_FLAGS ¶

    RAYTRACING_PIPELINE_FLAGS :: distinct bit_set[RAYTRACING_PIPELINE_FLAG; u32]

    RAYTRACING_SHADER_CONFIG ¶

    RAYTRACING_SHADER_CONFIG :: struct {
    	MaxPayloadSizeInBytes:   u32,
    	MaxAttributeSizeInBytes: u32,
    }

    RAYTRACING_TIER ¶

    RAYTRACING_TIER :: enum i32 {
    	NOT_SUPPORTED = 0, 
    	_1_0          = 10, 
    	_1_1          = 11, 
    }

    RAY_FLAG ¶

    RAY_FLAG :: enum u32 {
    	FORCE_OPAQUE                    = 0, 
    	FORCE_NON_OPAQUE                = 1, 
    	ACCEPT_FIRST_HIT_AND_END_SEARCH = 2, 
    	SKIP_CLOSEST_HIT_SHADER         = 3, 
    	CULL_BACK_FACING_TRIANGLES      = 4, 
    	CULL_FRONT_FACING_TRIANGLES     = 5, 
    	CULL_OPAQUE                     = 6, 
    	CULL_NON_OPAQUE                 = 7, 
    	SKIP_TRIANGLES                  = 8, 
    	SKIP_PROCEDURAL_PRIMITIVES      = 9, 
    }

    RAY_FLAGS ¶

    RAY_FLAGS :: distinct bit_set[RAY_FLAG; u32]

    RECT ¶

    RECT :: sys_windows.RECT

    REGISTER_COMPONENT_TYPE ¶

    REGISTER_COMPONENT_TYPE :: enum i32 {
    	UNKNOWN = 0, 
    	UINT32  = 1, 
    	SINT32  = 2, 
    	FLOAT32 = 3, 
    }

    RENDER_PASS_BEGINNING_ACCESS ¶

    RENDER_PASS_BEGINNING_ACCESS :: struct {
    	Type: RENDER_PASS_BEGINNING_ACCESS_TYPE,
    	using _: struct {
    		Clear: RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS,
    	},
    }

    RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS ¶

    RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS :: struct {
    	ClearValue: CLEAR_VALUE,
    }

    RENDER_PASS_BEGINNING_ACCESS_TYPE ¶

    RENDER_PASS_BEGINNING_ACCESS_TYPE :: enum i32 {
    	DISCARD   = 0, 
    	PRESERVE  = 1, 
    	CLEAR     = 2, 
    	NO_ACCESS = 3, 
    }

    RENDER_PASS_DEPTH_STENCIL_DESC ¶

    RENDER_PASS_DEPTH_STENCIL_DESC :: struct {
    	cpuDescriptor:          CPU_DESCRIPTOR_HANDLE,
    	DepthBeginningAccess:   RENDER_PASS_BEGINNING_ACCESS,
    	StencilBeginningAccess: RENDER_PASS_BEGINNING_ACCESS,
    	DepthEndingAccess:      RENDER_PASS_ENDING_ACCESS,
    	StencilEndingAccess:    RENDER_PASS_ENDING_ACCESS,
    }

    RENDER_PASS_ENDING_ACCESS ¶

    RENDER_PASS_ENDING_ACCESS :: struct {
    	Type: RENDER_PASS_ENDING_ACCESS_TYPE,
    	using _: struct {
    		Resolve: RENDER_PASS_ENDING_ACCESS_RESOLVE_PARAMETERS,
    	},
    }

    RENDER_PASS_ENDING_ACCESS_RESOLVE_PARAMETERS ¶

    RENDER_PASS_ENDING_ACCESS_RESOLVE_PARAMETERS :: struct {
    	pSrcResource:           ^IResource,
    	pDstResource:           ^IResource,
    	SubresourceCount:       u32,
    	pSubresourceParameters: ^RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS,
    	Format:                 directx_dxgi.FORMAT,
    	ResolveMode:            RESOLVE_MODE,
    	PreserveResolveSource:  sys_windows.BOOL,
    }

    RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS ¶

    RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS :: struct {
    	SrcSubresource: u32,
    	DstSubresource: u32,
    	DstX:           u32,
    	DstY:           u32,
    	SrcRect:        sys_windows.RECT,
    }

    RENDER_PASS_ENDING_ACCESS_TYPE ¶

    RENDER_PASS_ENDING_ACCESS_TYPE :: enum i32 {
    	DISCARD   = 0, 
    	PRESERVE  = 1, 
    	RESOLVE   = 2, 
    	NO_ACCESS = 3, 
    }

    RENDER_PASS_FLAG ¶

    RENDER_PASS_FLAG :: enum u32 {
    	ALLOW_UAV_WRITES = 0, 
    	SUSPENDING_PASS  = 1, 
    	RESUMING_PASS    = 2, 
    }

    RENDER_PASS_FLAGS ¶

    RENDER_PASS_FLAGS :: distinct bit_set[RENDER_PASS_FLAG; u32]

    RENDER_PASS_RENDER_TARGET_DESC ¶

    RENDER_PASS_RENDER_TARGET_DESC :: struct {
    	cpuDescriptor:   CPU_DESCRIPTOR_HANDLE,
    	BeginningAccess: RENDER_PASS_BEGINNING_ACCESS,
    	EndingAccess:    RENDER_PASS_ENDING_ACCESS,
    }

    RENDER_PASS_TIER ¶

    RENDER_PASS_TIER :: enum i32 {
    	_0 = 0, 
    	_1 = 1, 
    	_2 = 2, 
    }

    RENDER_TARGET_BLEND_DESC ¶

    RENDER_TARGET_BLEND_DESC :: struct {
    	BlendEnable:           sys_windows.BOOL,
    	LogicOpEnable:         sys_windows.BOOL,
    	SrcBlend:              BLEND,
    	DestBlend:             BLEND,
    	BlendOp:               BLEND_OP,
    	SrcBlendAlpha:         BLEND,
    	DestBlendAlpha:        BLEND,
    	BlendOpAlpha:          BLEND_OP,
    	LogicOp:               LOGIC_OP,
    	RenderTargetWriteMask: u8,
    }

    RENDER_TARGET_VIEW_DESC ¶

    RENDER_TARGET_VIEW_DESC :: struct {
    	Format:        directx_dxgi.FORMAT,
    	ViewDimension: RTV_DIMENSION,
    	using _:       struct #raw_union {
    		Buffer:           BUFFER_RTV,
    		Texture1D:        TEX1D_RTV,
    		Texture1DArray:   TEX1D_ARRAY_RTV,
    		Texture2D:        TEX2D_RTV,
    		Texture2DArray:   TEX2D_ARRAY_RTV,
    		Texture2DMS:      TEX2DMS_RTV,
    		Texture2DMSArray: TEX2DMS_ARRAY_RTV,
    		Texture3D:        TEX3D_RTV,
    	},
    }

    RESIDENCY_FLAG ¶

    RESIDENCY_FLAG :: enum u32 {
    	DENY_OVERBUDGET = 0, 
    }

    RESIDENCY_FLAGS ¶

    RESIDENCY_FLAGS :: distinct bit_set[RESIDENCY_FLAG; u32]

    RESIDENCY_PRIORITY ¶

    RESIDENCY_PRIORITY :: enum i32 {
    	MINIMUM = 671088640, 
    	LOW     = 1342177280, 
    	NORMAL  = 2013265920, 
    	HIGH    = -1610457200, 
    	MAXIMUM = -939524096, 
    }

    RESOLVE_MODE ¶

    RESOLVE_MODE :: enum i32 {
    	DECOMPRESS              = 0, 
    	MIN                     = 1, 
    	MAX                     = 2, 
    	AVERAGE                 = 3, 
    	ENCODE_SAMPLER_FEEDBACK = 4, 
    	DECODE_SAMPLER_FEEDBACK = 5, 
    }

    RESOURCE_ALIASING_BARRIER ¶

    RESOURCE_ALIASING_BARRIER :: struct {
    	pResourceBefore: ^IResource,
    	pResourceAfter:  ^IResource,
    }

    RESOURCE_ALLOCATION_INFO ¶

    RESOURCE_ALLOCATION_INFO :: struct {
    	SizeInBytes: u64,
    	Alignment:   u64,
    }

    RESOURCE_ALLOCATION_INFO1 ¶

    RESOURCE_ALLOCATION_INFO1 :: struct {
    	Offset:      u64,
    	Alignment:   u64,
    	SizeInBytes: u64,
    }

    RESOURCE_BARRIER ¶

    RESOURCE_BARRIER :: struct {
    	Type:  RESOURCE_BARRIER_TYPE,
    	Flags: RESOURCE_BARRIER_FLAGS,
    	using _: struct #raw_union {
    		Transition: RESOURCE_TRANSITION_BARRIER,
    		Aliasing:   RESOURCE_ALIASING_BARRIER,
    		UAV:        RESOURCE_UAV_BARRIER,
    	},
    }

    RESOURCE_BARRIER_FLAG ¶

    RESOURCE_BARRIER_FLAG :: enum u32 {
    	BEGIN_ONLY = 0, 
    	END_ONLY   = 1, 
    }

    RESOURCE_BARRIER_FLAGS ¶

    RESOURCE_BARRIER_FLAGS :: distinct bit_set[RESOURCE_BARRIER_FLAG; u32]

    RESOURCE_BARRIER_TYPE ¶

    RESOURCE_BARRIER_TYPE :: enum i32 {
    	TRANSITION = 0, 
    	ALIASING   = 1, 
    	UAV        = 2, 
    }

    RESOURCE_BINDING_TIER ¶

    RESOURCE_BINDING_TIER :: enum i32 {
    	_1 = 1, 
    	_2 = 2, 
    	_3 = 3, 
    }

    RESOURCE_DESC ¶

    RESOURCE_DESC :: struct {
    	Dimension:        RESOURCE_DIMENSION,
    	Alignment:        u64,
    	Width:            u64,
    	Height:           u32,
    	DepthOrArraySize: u16,
    	MipLevels:        u16,
    	Format:           directx_dxgi.FORMAT,
    	SampleDesc:       directx_dxgi.SAMPLE_DESC,
    	Layout:           TEXTURE_LAYOUT,
    	Flags:            RESOURCE_FLAGS,
    }

    RESOURCE_DESC1 ¶

    RESOURCE_DESC1 :: struct {
    	Dimension:                RESOURCE_DIMENSION,
    	Alignment:                u64,
    	Width:                    u64,
    	Height:                   u32,
    	DepthOrArraySize:         u16,
    	MipLevels:                u16,
    	Format:                   directx_dxgi.FORMAT,
    	SampleDesc:               directx_dxgi.SAMPLE_DESC,
    	Layout:                   TEXTURE_LAYOUT,
    	Flags:                    RESOURCE_FLAGS,
    	SamplerFeedbackMipRegion: MIP_REGION,
    }

    RESOURCE_DIMENSION ¶

    RESOURCE_DIMENSION :: enum i32 {
    	UNKNOWN   = 0, 
    	BUFFER    = 1, 
    	TEXTURE1D = 2, 
    	TEXTURE2D = 3, 
    	TEXTURE3D = 4, 
    }

    RESOURCE_FLAG ¶

    RESOURCE_FLAG :: enum u32 {
    	ALLOW_RENDER_TARGET         = 0, 
    	ALLOW_DEPTH_STENCIL         = 1, 
    	ALLOW_UNORDERED_ACCESS      = 2, 
    	DENY_SHADER_RESOURCE        = 3, 
    	ALLOW_CROSS_ADAPTER         = 4, 
    	ALLOW_SIMULTANEOUS_ACCESS   = 5, 
    	VIDEO_DECODE_REFERENCE_ONLY = 6, 
    }

    RESOURCE_FLAGS ¶

    RESOURCE_FLAGS :: distinct bit_set[RESOURCE_FLAG; u32]

    RESOURCE_HEAP_TIER ¶

    RESOURCE_HEAP_TIER :: enum i32 {
    	_1 = 1, 
    	_2 = 2, 
    }

    RESOURCE_RETURN_TYPE ¶

    RESOURCE_RETURN_TYPE :: enum i32 {
    	UNORM     = 1, 
    	SNORM     = 2, 
    	SINT      = 3, 
    	UINT      = 4, 
    	FLOAT     = 5, 
    	MIXED     = 6, 
    	DOUBLE    = 7, 
    	CONTINUED = 8, 
    }

    RESOURCE_STATE ¶

    RESOURCE_STATE :: enum i32 {
    	VERTEX_AND_CONSTANT_BUFFER        = 0, 
    	INDEX_BUFFER                      = 1, 
    	RENDER_TARGET                     = 2, 
    	UNORDERED_ACCESS                  = 3, 
    	DEPTH_WRITE                       = 4, 
    	DEPTH_READ                        = 5, 
    	NON_PIXEL_SHADER_RESOURCE         = 6, 
    	PIXEL_SHADER_RESOURCE             = 7, 
    	STREAM_OUT                        = 8, 
    	INDIRECT_ARGUMENT                 = 9, 
    	COPY_DEST                         = 10, 
    	COPY_SOURCE                       = 11, 
    	RESOLVE_DEST                      = 12, 
    	RESOLVE_SOURCE                    = 13, 
    	RAYTRACING_ACCELERATION_STRUCTURE = 22, 
    	SHADING_RATE_SOURCE               = 24, 
    	PREDICATION                       = 9, 
    	VIDEO_DECODE_READ                 = 16, 
    	VIDEO_DECODE_WRITE                = 17, 
    	VIDEO_PROCESS_READ                = 18, 
    	VIDEO_PROCESS_WRITE               = 19, 
    	VIDEO_ENCODE_READ                 = 21, 
    	VIDEO_ENCODE_WRITE                = 23, 
    }

    RESOURCE_STATES ¶

    RESOURCE_STATES :: distinct bit_set[RESOURCE_STATE; u32]

    RESOURCE_TRANSITION_BARRIER ¶

    RESOURCE_TRANSITION_BARRIER :: struct {
    	pResource:   ^IResource,
    	Subresource: u32,
    	StateBefore: RESOURCE_STATES,
    	StateAfter:  RESOURCE_STATES,
    }

    RESOURCE_UAV_BARRIER ¶

    RESOURCE_UAV_BARRIER :: struct {
    	pResource: ^IResource,
    }

    RLDO_FLAG ¶

    RLDO_FLAG :: enum u32 {
    	SUMMARY         = 0, 
    	DETAIL          = 1, 
    	IGNORE_INTERNAL = 2, 
    }

    RLDO_FLAGS ¶

    RLDO_FLAGS :: distinct bit_set[RLDO_FLAG; u32]

    ROOT_CONSTANTS ¶

    ROOT_CONSTANTS :: struct {
    	ShaderRegister: u32,
    	RegisterSpace:  u32,
    	Num32BitValues: u32,
    }

    ROOT_DESCRIPTOR ¶

    ROOT_DESCRIPTOR :: struct {
    	ShaderRegister: u32,
    	RegisterSpace:  u32,
    }

    ROOT_DESCRIPTOR1 ¶

    ROOT_DESCRIPTOR1 :: struct {
    	ShaderRegister: u32,
    	RegisterSpace:  u32,
    	Flags:          ROOT_DESCRIPTOR_FLAGS,
    }

    ROOT_DESCRIPTOR_FLAG ¶

    ROOT_DESCRIPTOR_FLAG :: enum u32 {
    	DATA_VOLATILE                    = 2, 
    	DATA_STATIC_WHILE_SET_AT_EXECUTE = 3, 
    	DATA_STATIC                      = 4, 
    }

    ROOT_DESCRIPTOR_FLAGS ¶

    ROOT_DESCRIPTOR_FLAGS :: distinct bit_set[ROOT_DESCRIPTOR_FLAG; u32]

    ROOT_DESCRIPTOR_TABLE ¶

    ROOT_DESCRIPTOR_TABLE :: struct {
    	NumDescriptorRanges: u32,
    	pDescriptorRanges:   ^DESCRIPTOR_RANGE,
    }

    ROOT_DESCRIPTOR_TABLE1 ¶

    ROOT_DESCRIPTOR_TABLE1 :: struct {
    	NumDescriptorRanges: u32,
    	pDescriptorRanges:   ^DESCRIPTOR_RANGE1,
    }

    ROOT_PARAMETER ¶

    ROOT_PARAMETER :: struct {
    	ParameterType:    ROOT_PARAMETER_TYPE,
    	using _:          struct #raw_union {
    		DescriptorTable: ROOT_DESCRIPTOR_TABLE,
    		Constants:       ROOT_CONSTANTS,
    		Descriptor:      ROOT_DESCRIPTOR,
    	},
    	ShaderVisibility: SHADER_VISIBILITY,
    }

    ROOT_PARAMETER1 ¶

    ROOT_PARAMETER1 :: struct {
    	ParameterType:    ROOT_PARAMETER_TYPE,
    	using _:          struct #raw_union {
    		DescriptorTable: ROOT_DESCRIPTOR_TABLE1,
    		Constants:       ROOT_CONSTANTS,
    		Descriptor:      ROOT_DESCRIPTOR1,
    	},
    	ShaderVisibility: SHADER_VISIBILITY,
    }

    ROOT_PARAMETER_TYPE ¶

    ROOT_PARAMETER_TYPE :: enum i32 {
    	DESCRIPTOR_TABLE = 0, 
    	_32BIT_CONSTANTS = 1, 
    	CBV              = 2, 
    	SRV              = 3, 
    	UAV              = 4, 
    }

    ROOT_SIGNATURE_DESC ¶

    ROOT_SIGNATURE_DESC :: struct {
    	NumParameters:     u32,
    	pParameters:       ^ROOT_PARAMETER,
    	NumStaticSamplers: u32,
    	pStaticSamplers:   ^STATIC_SAMPLER_DESC,
    	Flags:             ROOT_SIGNATURE_FLAGS,
    }
    Related Procedures With Parameters

    ROOT_SIGNATURE_DESC1 ¶

    ROOT_SIGNATURE_DESC1 :: struct {
    	NumParameters:     u32,
    	pParameters:       ^ROOT_PARAMETER1,
    	NumStaticSamplers: u32,
    	pStaticSamplers:   ^STATIC_SAMPLER_DESC,
    	Flags:             ROOT_SIGNATURE_FLAGS,
    }

    ROOT_SIGNATURE_FLAG ¶

    ROOT_SIGNATURE_FLAG :: enum u32 {
    	ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT    = 0, 
    	DENY_VERTEX_SHADER_ROOT_ACCESS        = 1, 
    	DENY_HULL_SHADER_ROOT_ACCESS          = 2, 
    	DENY_DOMAIN_SHADER_ROOT_ACCESS        = 3, 
    	DENY_GEOMETRY_SHADER_ROOT_ACCESS      = 4, 
    	DENY_PIXEL_SHADER_ROOT_ACCESS         = 5, 
    	ALLOW_STREAM_OUTPUT                   = 6, 
    	LOCAL_ROOT_SIGNATURE                  = 7, 
    	DENY_AMPLIFICATION_SHADER_ROOT_ACCESS = 8, 
    	DENY_MESH_SHADER_ROOT_ACCESS          = 9, 
    	CBV_SRV_UAV_HEAP_DIRECTLY_INDEXED     = 10, 
    	SAMPLER_HEAP_DIRECTLY_INDEXED         = 11, 
    }

    ROOT_SIGNATURE_FLAGS ¶

    ROOT_SIGNATURE_FLAGS :: distinct bit_set[ROOT_SIGNATURE_FLAG; u32]

    ROOT_SIGNATURE_VERSION ¶

    ROOT_SIGNATURE_VERSION :: enum i32 {
    	_1   = 1, 
    	_1_0 = 1, 
    	_1_1 = 2, 
    }
    Related Procedures With Parameters

    RTV_DIMENSION ¶

    RTV_DIMENSION :: enum i32 {
    	UNKNOWN          = 0, 
    	BUFFER           = 1, 
    	TEXTURE1D        = 2, 
    	TEXTURE1DARRAY   = 3, 
    	TEXTURE2D        = 4, 
    	TEXTURE2DARRAY   = 5, 
    	TEXTURE2DMS      = 6, 
    	TEXTURE2DMSARRAY = 7, 
    	TEXTURE3D        = 8, 
    }

    RT_FORMAT_ARRAY ¶

    RT_FORMAT_ARRAY :: struct {
    	RTFormats:        [8]directx_dxgi.FORMAT,
    	NumRenderTargets: u32,
    }

    SAMPLER_DESC ¶

    SAMPLER_DESC :: struct {
    	Filter:         FILTER,
    	AddressU:       TEXTURE_ADDRESS_MODE,
    	AddressV:       TEXTURE_ADDRESS_MODE,
    	AddressW:       TEXTURE_ADDRESS_MODE,
    	MipLODBias:     f32,
    	MaxAnisotropy:  u32,
    	ComparisonFunc: COMPARISON_FUNC,
    	BorderColor:    [4]f32,
    	MinLOD:         f32,
    	MaxLOD:         f32,
    }

    SAMPLER_FEEDBACK_TIER ¶

    SAMPLER_FEEDBACK_TIER :: enum i32 {
    	NOT_SUPPORTED = 0, 
    	_0_9          = 90, 
    	_1_0          = 100, 
    }

    SAMPLE_POSITION ¶

    SAMPLE_POSITION :: struct {
    	X: i8,
    	Y: i8,
    }

    SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER ¶

    SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER :: struct {
    	DriverOpaqueGUID:           sys_windows.GUID,
    	DriverOpaqueVersioningData: [16]u8,
    }

    SERIALIZED_DATA_TYPE ¶

    SERIALIZED_DATA_TYPE :: enum i32 {
    	SERIALIZED_DATA_RAYTRACING_ACCELERATION_STRUCTURE = 0, 
    }

    SERIALIZED_RAYTRACING_ACCELERATION_STRUCTURE_HEADER ¶

    SERIALIZED_RAYTRACING_ACCELERATION_STRUCTURE_HEADER :: struct {
    	DriverMatchingIdentifier:                               SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER,
    	SerializedSizeInBytesIncludingHeader:                   u64,
    	DeserializedSizeInBytes:                                u64,
    	NumBottomLevelAccelerationStructurePointersAfterHeader: u64,
    }

    SHADER_BUFFER_DESC ¶

    SHADER_BUFFER_DESC :: struct {
    	Name:      cstring,
    	Type:      CBUFFER_TYPE,
    	Variables: u32,
    	Size:      u32,
    	uFlags:    u32,
    }

    SHADER_BYTECODE ¶

    SHADER_BYTECODE :: struct {
    	pShaderBytecode: rawptr,
    	BytecodeLength:  uint,
    }

    SHADER_CACHE_SUPPORT_FLAG ¶

    SHADER_CACHE_SUPPORT_FLAG :: enum u32 {
    	SINGLE_PSO             = 0, 
    	LIBRARY                = 1, 
    	AUTOMATIC_INPROC_CACHE = 2, 
    	AUTOMATIC_DISK_CACHE   = 3, 
    }

    SHADER_CACHE_SUPPORT_FLAGS ¶

    SHADER_CACHE_SUPPORT_FLAGS :: distinct bit_set[SHADER_CACHE_SUPPORT_FLAG; u32]

    SHADER_CBUFFER_FLAG ¶

    SHADER_CBUFFER_FLAG :: enum u32 {
    	USERPACKED = 0, 
    }

    SHADER_CBUFFER_FLAGS ¶

    SHADER_CBUFFER_FLAGS :: distinct bit_set[SHADER_CBUFFER_FLAG; u32]

    SHADER_COMPONENT_MAPPING ¶

    SHADER_COMPONENT_MAPPING :: enum i32 {
    	FROM_MEMORY_COMPONENT_0 = 0, 
    	FROM_MEMORY_COMPONENT_1 = 1, 
    	FROM_MEMORY_COMPONENT_2 = 2, 
    	FROM_MEMORY_COMPONENT_3 = 3, 
    	FORCE_VALUE_0           = 4, 
    	FORCE_VALUE_1           = 5, 
    }

    SHADER_DESC ¶

    SHADER_DESC :: struct {
    	Version:                     u32,
    	Creator:                     cstring,
    	Flags:                       u32,
    	ConstantBuffers:             u32,
    	BoundResources:              u32,
    	InputParameters:             u32,
    	OutputParameters:            u32,
    	InstructionCount:            u32,
    	TempRegisterCount:           u32,
    	TempArrayCount:              u32,
    	DefCount:                    u32,
    	DclCount:                    u32,
    	TextureNormalInstructions:   u32,
    	TextureLoadInstructions:     u32,
    	TextureCompInstructions:     u32,
    	TextureBiasInstructions:     u32,
    	TextureGradientInstructions: u32,
    	FloatInstructionCount:       u32,
    	IntInstructionCount:         u32,
    	UintInstructionCount:        u32,
    	StaticFlowControlCount:      u32,
    	DynamicFlowControlCount:     u32,
    	MacroInstructionCount:       u32,
    	ArrayInstructionCount:       u32,
    	CutInstructionCount:         u32,
    	EmitInstructionCount:        u32,
    	GSOutputTopology:            PRIMITIVE_TOPOLOGY,
    	GSMaxOutputVertexCount:      u32,
    	InputPrimitive:              PRIMITIVE,
    	PatchConstantParameters:     u32,
    	cGSInstanceCount:            u32,
    	cControlPoints:              u32,
    	HSOutputPrimitive:           TESSELLATOR_OUTPUT_PRIMITIVE,
    	HSPartitioning:              TESSELLATOR_PARTITIONING,
    	TessellatorDomain:           TESSELLATOR_DOMAIN,
    	cBarrierInstructions:        u32,
    	cInterlockedInstructions:    u32,
    	cTextureStoreInstructions:   u32,
    }

    SHADER_INPUT_BIND_DESC ¶

    SHADER_INPUT_BIND_DESC :: struct {
    	Name:       cstring,
    	Type:       SHADER_INPUT_TYPE,
    	BindPoint:  u32,
    	BindCount:  u32,
    	uFlags:     u32,
    	ReturnType: RESOURCE_RETURN_TYPE,
    	Dimension:  SRV_DIMENSION,
    	NumSamples: u32,
    	Space:      u32,
    	uID:        u32,
    }

    SHADER_INPUT_FLAG ¶

    SHADER_INPUT_FLAG :: enum u32 {
    	USERPACKED          = 0, 
    	COMPARISON_SAMPLER  = 1, 
    	TEXTURE_COMPONENT_0 = 2, 
    	TEXTURE_COMPONENT_1 = 3, 
    	UNUSED              = 4, 
    }

    SHADER_INPUT_FLAGS ¶

    SHADER_INPUT_FLAGS :: distinct bit_set[SHADER_INPUT_FLAG; u32]

    SHADER_INPUT_TYPE ¶

    SHADER_INPUT_TYPE :: enum i32 {
    	CBUFFER                       = 0, 
    	TBUFFER                       = 1, 
    	TEXTURE                       = 2, 
    	SAMPLER                       = 3, 
    	UAV_RWTYPED                   = 4, 
    	STRUCTURED                    = 5, 
    	UAV_RWSTRUCTURED              = 6, 
    	BYTEADDRESS                   = 7, 
    	UAV_RWBYTEADDRESS             = 8, 
    	UAV_APPEND_STRUCTURED         = 9, 
    	UAV_CONSUME_STRUCTURED        = 10, 
    	UAV_RWSTRUCTURED_WITH_COUNTER = 11, 
    	RTACCELERATIONSTRUCTURE       = 12, 
    	UAV_FEEDBACKTEXTURE           = 13, 
    }

    SHADER_MIN_PRECISION_SUPPORT ¶

    SHADER_MIN_PRECISION_SUPPORT :: enum i32 {
    	NONE    = 0, 
    	_10_BIT = 1, 
    	_16_BIT = 2, 
    }

    SHADER_MODEL ¶

    SHADER_MODEL :: enum i32 {
    	_5_1 = 81, 
    	_6_0 = 96, 
    	_6_1 = 97, 
    	_6_2 = 98, 
    	_6_3 = 99, 
    	_6_4 = 100, 
    	_6_5 = 101, 
    	_6_6 = 102, 
    }

    SHADER_REQUIRES ¶

    SHADER_REQUIRES :: enum u64 {
    	DOUBLES                                                        = 0, 
    	EARLY_DEPTH_STENCIL                                            = 1, 
    	UAVS_AT_EVERY_STAGE                                            = 2, 
    	_64_UAVS                                                       = 3, 
    	MINIMUM_PRECISION                                              = 4, 
    	_11_1_DOUBLE_EXTENSIONS                                        = 5, 
    	_11_1_SHADER_EXTENSIONS                                        = 6, 
    	LEVEL_9_COMPARISON_FILTERING                                   = 7, 
    	TILED_RESOURCES                                                = 8, 
    	STENCIL_REF                                                    = 9, 
    	INNER_COVERAGE                                                 = 10, 
    	TYPED_UAV_LOAD_ADDITIONAL_FORMATS                              = 11, 
    	ROVS                                                           = 12, 
    	VIEWPORT_AND_RT_ARRAY_INDEX_FROM_ANY_SHADER_FEEDING_RASTERIZER = 13, 
    	WAVE_OPS                                                       = 14, 
    	INT64_OPS                                                      = 15, 
    	VIEW_ID                                                        = 16, 
    	BARYCENTRICS                                                   = 17, 
    	NATIVE_16BIT_OPS                                               = 18, 
    	SHADING_RATE                                                   = 19, 
    	RAYTRACING_TIER_1_1                                            = 20, 
    	SAMPLER_FEEDBACK                                               = 21, 
    	ATOMIC_INT64_ON_TYPED_RESOURCE                                 = 22, 
    	ATOMIC_INT64_ON_GROUP_SHARED                                   = 23, 
    	DERIVATIVES_IN_MESH_AND_AMPLIFICATION_SHADERS                  = 24, 
    	RESOURCE_DESCRIPTOR_HEAP_INDEXING                              = 25, 
    	SAMPLER_DESCRIPTOR_HEAP_INDEXING                               = 26, 
    	WAVE_MMA                                                       = 27, 
    	ATOMIC_INT64_ON_DESCRIPTOR_HEAP_RESOURCE                       = 28, 
    }

    SHADER_REQUIRES_FLAGS ¶

    SHADER_REQUIRES_FLAGS :: distinct bit_set[SHADER_REQUIRES; u64]

    SHADER_RESOURCE_VIEW_DESC ¶

    SHADER_RESOURCE_VIEW_DESC :: struct {
    	Format:                  directx_dxgi.FORMAT,
    	ViewDimension:           SRV_DIMENSION,
    	Shader4ComponentMapping: u32,
    	using _:                 struct #raw_union {
    		Buffer:                          BUFFER_SRV,
    		Texture1D:                       TEX1D_SRV,
    		Texture1DArray:                  TEX1D_ARRAY_SRV,
    		Texture2D:                       TEX2D_SRV,
    		Texture2DArray:                  TEX2D_ARRAY_SRV,
    		Texture2DMS:                     TEX2DMS_SRV,
    		Texture2DMSArray:                TEX2DMS_ARRAY_SRV,
    		Texture3D:                       TEX3D_SRV,
    		TextureCube:                     TEXCUBE_SRV,
    		TextureCubeArray:                TEXCUBE_ARRAY_SRV,
    		RaytracingAccelerationStructure: RAYTRACING_ACCELERATION_STRUCTURE_SRV,
    	},
    }

    SHADER_TYPE_DESC ¶

    SHADER_TYPE_DESC :: struct {
    	Class:    SHADER_VARIABLE_CLASS,
    	Type:     SHADER_VARIABLE_TYPE,
    	Rows:     u32,
    	Columns:  u32,
    	Elements: u32,
    	Members:  u32,
    	Offset:   u32,
    	Name:     cstring,
    }

    SHADER_VARIABLE_CLASS ¶

    SHADER_VARIABLE_CLASS :: enum i32 {
    	SCALAR            = 0, 
    	VECTOR            = 1, 
    	MATRIX_ROWS       = 2, 
    	MATRIX_COLUMNS    = 3, 
    	OBJECT            = 4, 
    	STRUCT            = 5, 
    	INTERFACE_CLASS   = 6, 
    	INTERFACE_POINTER = 7, 
    }

    SHADER_VARIABLE_DESC ¶

    SHADER_VARIABLE_DESC :: struct {
    	Name:         cstring,
    	StartOffset:  u32,
    	Size:         u32,
    	uFlags:       u32,
    	DefaultValue: rawptr,
    	StartTexture: u32,
    	TextureSize:  u32,
    	StartSampler: u32,
    	SamplerSize:  u32,
    }

    SHADER_VARIABLE_FLAG ¶

    SHADER_VARIABLE_FLAG :: enum u32 {
    	USERPACKED          = 0, 
    	USED                = 1, 
    	INTERFACE_POINTER   = 2, 
    	INTERFACE_PARAMETER = 3, 
    }

    SHADER_VARIABLE_FLAGS ¶

    SHADER_VARIABLE_FLAGS :: distinct bit_set[SHADER_VARIABLE_FLAG; u32]

    SHADER_VARIABLE_TYPE ¶

    SHADER_VARIABLE_TYPE :: enum i32 {
    	VOID                      = 0, 
    	BOOL                      = 1, 
    	INT                       = 2, 
    	FLOAT                     = 3, 
    	STRING                    = 4, 
    	TEXTURE                   = 5, 
    	TEXTURE1D                 = 6, 
    	TEXTURE2D                 = 7, 
    	TEXTURE3D                 = 8, 
    	TEXTURECUBE               = 9, 
    	SAMPLER                   = 10, 
    	SAMPLER1D                 = 11, 
    	SAMPLER2D                 = 12, 
    	SAMPLER3D                 = 13, 
    	SAMPLERCUBE               = 14, 
    	PIXELSHADER               = 15, 
    	VERTEXSHADER              = 16, 
    	PIXELFRAGMENT             = 17, 
    	VERTEXFRAGMENT            = 18, 
    	UINT                      = 19, 
    	UINT8                     = 20, 
    	GEOMETRYSHADER            = 21, 
    	RASTERIZER                = 22, 
    	DEPTHSTENCIL              = 23, 
    	BLEND                     = 24, 
    	BUFFER                    = 25, 
    	CBUFFER                   = 26, 
    	TBUFFER                   = 27, 
    	TEXTURE1DARRAY            = 28, 
    	TEXTURE2DARRAY            = 29, 
    	RENDERTARGETVIEW          = 30, 
    	DEPTHSTENCILVIEW          = 31, 
    	TEXTURE2DMS               = 32, 
    	TEXTURE2DMSARRAY          = 33, 
    	TEXTURECUBEARRAY          = 34, 
    	HULLSHADER                = 35, 
    	DOMAINSHADER              = 36, 
    	INTERFACE_POINTER         = 37, 
    	COMPUTESHADER             = 38, 
    	DOUBLE                    = 39, 
    	RWTEXTURE1D               = 40, 
    	RWTEXTURE1DARRAY          = 41, 
    	RWTEXTURE2D               = 42, 
    	RWTEXTURE2DARRAY          = 43, 
    	RWTEXTURE3D               = 44, 
    	RWBUFFER                  = 45, 
    	BYTEADDRESS_BUFFER        = 46, 
    	RWBYTEADDRESS_BUFFER      = 47, 
    	STRUCTURED_BUFFER         = 48, 
    	RWSTRUCTURED_BUFFER       = 49, 
    	APPEND_STRUCTURED_BUFFER  = 50, 
    	CONSUME_STRUCTURED_BUFFER = 51, 
    	MIN8FLOAT                 = 52, 
    	MIN10FLOAT                = 53, 
    	MIN16FLOAT                = 54, 
    	MIN12INT                  = 55, 
    	MIN16INT                  = 56, 
    	MIN16UINT                 = 57, 
    }

    SHADER_VERSION_TYPE ¶

    SHADER_VERSION_TYPE :: enum u32 {
    	PIXEL_SHADER          = 0, 
    	VERTEX_SHADER         = 1, 
    	GEOMETRY_SHADER       = 2, 
    	HULL_SHADER           = 3, 
    	DOMAIN_SHADER         = 4, 
    	COMPUTE_SHADER        = 5, 
    	LIBRARY               = 6, 
    	RAY_GENERATION_SHADER = 7, 
    	INTERSECTION_SHADER   = 8, 
    	ANY_HIT_SHADER        = 9, 
    	CLOSEST_HIT_SHADER    = 10, 
    	MISS_SHADER           = 11, 
    	CALLABLE_SHADER       = 12, 
    	MESH_SHADER           = 13, 
    	AMPLIFICATION_SHADER  = 14, 
    	RESERVED0             = 65520, 
    }
    Related Procedures With Returns

    SHADER_VISIBILITY ¶

    SHADER_VISIBILITY :: enum i32 {
    	ALL           = 0, 
    	VERTEX        = 1, 
    	HULL          = 2, 
    	DOMAIN        = 3, 
    	GEOMETRY      = 4, 
    	PIXEL         = 5, 
    	AMPLIFICATION = 6, 
    	MESH          = 7, 
    }

    SHADING_RATE ¶

    SHADING_RATE :: enum i32 {
    	_1X1 = 0, 
    	_1X2 = 1, 
    	_2X1 = 4, 
    	_2X2 = 5, 
    	_2X4 = 6, 
    	_4X2 = 9, 
    	_4X4 = 10, 
    }

    SHADING_RATE_COMBINER ¶

    SHADING_RATE_COMBINER :: enum i32 {
    	PASSTHROUGH = 0, 
    	OVERRIDE    = 1, 
    	MIN         = 2, 
    	MAX         = 3, 
    	SUM         = 4, 
    }

    SHARED_RESOURCE_COMPATIBILITY_TIER ¶

    SHARED_RESOURCE_COMPATIBILITY_TIER :: enum i32 {
    	_0 = 0, 
    	_1 = 1, 
    	_2 = 2, 
    }

    SIGNATURE_PARAMETER_DESC ¶

    SIGNATURE_PARAMETER_DESC :: struct {
    	SemanticName:    cstring,
    	SemanticIndex:   u32,
    	Register:        u32,
    	SystemValueType: NAME,
    	ComponentType:   REGISTER_COMPONENT_TYPE,
    	Mask:            u8,
    	ReadWriteMask:   u8,
    	Stream:          u32,
    	MinPrecision:    MIN_PRECISION,
    }

    SO_DECLARATION_ENTRY ¶

    SO_DECLARATION_ENTRY :: struct {
    	Stream:         u32,
    	SemanticName:   cstring,
    	SemanticIndex:  u32,
    	StartComponent: u8,
    	ComponentCount: u8,
    	OutputSlot:     u8,
    }

    SRV_DIMENSION ¶

    SRV_DIMENSION :: enum i32 {
    	UNKNOWN                           = 0, 
    	BUFFER                            = 1, 
    	TEXTURE1D                         = 2, 
    	TEXTURE1DARRAY                    = 3, 
    	TEXTURE2D                         = 4, 
    	TEXTURE2DARRAY                    = 5, 
    	TEXTURE2DMS                       = 6, 
    	TEXTURE2DMSARRAY                  = 7, 
    	TEXTURE3D                         = 8, 
    	TEXTURECUBE                       = 9, 
    	TEXTURECUBEARRAY                  = 10, 
    	BUFFEREX                          = 11, 
    	RAYTRACING_ACCELERATION_STRUCTURE = 11, 
    }

    STATE_OBJECT_CONFIG ¶

    STATE_OBJECT_CONFIG :: struct {
    	Flags: STATE_OBJECT_FLAGS,
    }

    STATE_OBJECT_DESC ¶

    STATE_OBJECT_DESC :: struct {
    	Type:          STATE_OBJECT_TYPE,
    	NumSubobjects: u32,
    	pSubobjects:   ^STATE_SUBOBJECT,
    }

    STATE_OBJECT_FLAG ¶

    STATE_OBJECT_FLAG :: enum u32 {
    	ALLOW_LOCAL_DEPENDENCIES_ON_EXTERNAL_DEFINITIONS = 0, 
    	ALLOW_EXTERNAL_DEPENDENCIES_ON_LOCAL_DEFINITIONS = 1, 
    	ALLOW_STATE_OBJECT_ADDITIONS                     = 2, 
    }

    STATE_OBJECT_FLAGS ¶

    STATE_OBJECT_FLAGS :: distinct bit_set[STATE_OBJECT_FLAG; u32]

    STATE_OBJECT_TYPE ¶

    STATE_OBJECT_TYPE :: enum i32 {
    	COLLECTION          = 0, 
    	RAYTRACING_PIPELINE = 3, 
    }

    STATE_SUBOBJECT ¶

    STATE_SUBOBJECT :: struct {
    	Type:  STATE_SUBOBJECT_TYPE,
    	pDesc: rawptr,
    }

    STATE_SUBOBJECT_TYPE ¶

    STATE_SUBOBJECT_TYPE :: enum i32 {
    	STATE_OBJECT_CONFIG                   = 0, 
    	GLOBAL_ROOT_SIGNATURE                 = 1, 
    	LOCAL_ROOT_SIGNATURE                  = 2, 
    	NODE_MASK                             = 3, 
    	DXIL_LIBRARY                          = 5, 
    	EXISTING_COLLECTION                   = 6, 
    	SUBOBJECT_TO_EXPORTS_ASSOCIATION      = 7, 
    	DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION = 8, 
    	RAYTRACING_SHADER_CONFIG              = 9, 
    	RAYTRACING_PIPELINE_CONFIG            = 10, 
    	HIT_GROUP                             = 11, 
    	RAYTRACING_PIPELINE_CONFIG1           = 12, 
    	MAX_VALID                             = 13, 
    }

    STATIC_BORDER_COLOR ¶

    STATIC_BORDER_COLOR :: enum i32 {
    	TRANSPARENT_BLACK = 0, 
    	OPAQUE_BLACK      = 1, 
    	OPAQUE_WHITE      = 2, 
    }

    STATIC_SAMPLER_DESC ¶

    STATIC_SAMPLER_DESC :: struct {
    	Filter:           FILTER,
    	AddressU:         TEXTURE_ADDRESS_MODE,
    	AddressV:         TEXTURE_ADDRESS_MODE,
    	AddressW:         TEXTURE_ADDRESS_MODE,
    	MipLODBias:       f32,
    	MaxAnisotropy:    u32,
    	ComparisonFunc:   COMPARISON_FUNC,
    	BorderColor:      STATIC_BORDER_COLOR,
    	MinLOD:           f32,
    	MaxLOD:           f32,
    	ShaderRegister:   u32,
    	RegisterSpace:    u32,
    	ShaderVisibility: SHADER_VISIBILITY,
    }

    STENCIL_OP ¶

    STENCIL_OP :: enum i32 {
    	KEEP     = 1, 
    	ZERO     = 2, 
    	REPLACE  = 3, 
    	INCR_SAT = 4, 
    	DECR_SAT = 5, 
    	INVERT   = 6, 
    	INCR     = 7, 
    	DECR     = 8, 
    }

    STREAM_OUTPUT_BUFFER_VIEW ¶

    STREAM_OUTPUT_BUFFER_VIEW :: struct {
    	BufferLocation:           u64,
    	SizeInBytes:              u64,
    	BufferFilledSizeLocation: u64,
    }

    STREAM_OUTPUT_DESC ¶

    STREAM_OUTPUT_DESC :: struct {
    	pSODeclaration:   ^SO_DECLARATION_ENTRY,
    	NumEntries:       u32,
    	pBufferStrides:   ^u32,
    	NumStrides:       u32,
    	RasterizedStream: u32,
    }

    SUBOBJECT_TO_EXPORTS_ASSOCIATION ¶

    SUBOBJECT_TO_EXPORTS_ASSOCIATION :: struct {
    	pSubobjectToAssociate: ^STATE_SUBOBJECT,
    	NumExports:            u32,
    	pExports:              [^]^i16,
    }

    SUBRESOURCE_DATA ¶

    SUBRESOURCE_DATA :: struct {
    	pData:      rawptr,
    	RowPitch:   i64,
    	SlicePitch: i64,
    }

    SUBRESOURCE_FOOTPRINT ¶

    SUBRESOURCE_FOOTPRINT :: struct {
    	Format:   directx_dxgi.FORMAT,
    	Width:    u32,
    	Height:   u32,
    	Depth:    u32,
    	RowPitch: u32,
    }

    SUBRESOURCE_INFO ¶

    SUBRESOURCE_INFO :: struct {
    	Offset:     u64,
    	RowPitch:   u32,
    	DepthPitch: u32,
    }

    SUBRESOURCE_RANGE_UINT64 ¶

    SUBRESOURCE_RANGE_UINT64 :: struct {
    	Subresource: u32,
    	Range:       RANGE_UINT64,
    }

    SUBRESOURCE_TILING ¶

    SUBRESOURCE_TILING :: struct {
    	WidthInTiles:                    u32,
    	HeightInTiles:                   u16,
    	DepthInTiles:                    u16,
    	StartTileIndexInOverallResource: u32,
    }

    TESSELLATOR_DOMAIN ¶

    TESSELLATOR_DOMAIN :: enum i32 {
    	UNDEFINED = 0, 
    	ISOLINE   = 1, 
    	TRI       = 2, 
    	QUAD      = 3, 
    }

    TESSELLATOR_OUTPUT_PRIMITIVE ¶

    TESSELLATOR_OUTPUT_PRIMITIVE :: enum i32 {
    	UNDEFINED    = 0, 
    	POINT        = 1, 
    	LINE         = 2, 
    	TRIANGLE_CW  = 3, 
    	TRIANGLE_CCW = 4, 
    }

    TESSELLATOR_PARTITIONING ¶

    TESSELLATOR_PARTITIONING :: enum i32 {
    	UNDEFINED       = 0, 
    	INTEGER         = 1, 
    	POW2            = 2, 
    	FRACTIONAL_ODD  = 3, 
    	FRACTIONAL_EVEN = 4, 
    }

    TEX1D_ARRAY_DSV ¶

    TEX1D_ARRAY_DSV :: struct {
    	MipSlice:        u32,
    	FirstArraySlice: u32,
    	ArraySize:       u32,
    }

    TEX1D_ARRAY_RTV ¶

    TEX1D_ARRAY_RTV :: struct {
    	MipSlice:        u32,
    	FirstArraySlice: u32,
    	ArraySize:       u32,
    }

    TEX1D_ARRAY_SRV ¶

    TEX1D_ARRAY_SRV :: struct {
    	MostDetailedMip:     u32,
    	MipLevels:           u32,
    	FirstArraySlice:     u32,
    	ArraySize:           u32,
    	ResourceMinLODClamp: f32,
    }

    TEX1D_ARRAY_UAV ¶

    TEX1D_ARRAY_UAV :: struct {
    	MipSlice:        u32,
    	FirstArraySlice: u32,
    	ArraySize:       u32,
    }

    TEX1D_DSV ¶

    TEX1D_DSV :: struct {
    	MipSlice: u32,
    }

    TEX1D_RTV ¶

    TEX1D_RTV :: struct {
    	MipSlice: u32,
    }

    TEX1D_SRV ¶

    TEX1D_SRV :: struct {
    	MostDetailedMip:     u32,
    	MipLevels:           u32,
    	ResourceMinLODClamp: f32,
    }

    TEX1D_UAV ¶

    TEX1D_UAV :: struct {
    	MipSlice: u32,
    }

    TEX2DMS_ARRAY_DSV ¶

    TEX2DMS_ARRAY_DSV :: struct {
    	FirstArraySlice: u32,
    	ArraySize:       u32,
    }

    TEX2DMS_ARRAY_RTV ¶

    TEX2DMS_ARRAY_RTV :: struct {
    	FirstArraySlice: u32,
    	ArraySize:       u32,
    }

    TEX2DMS_ARRAY_SRV ¶

    TEX2DMS_ARRAY_SRV :: struct {
    	FirstArraySlice: u32,
    	ArraySize:       u32,
    }

    TEX2DMS_DSV ¶

    TEX2DMS_DSV :: struct {
    	UnusedField_NothingToDefine: u32,
    }

    TEX2DMS_RTV ¶

    TEX2DMS_RTV :: struct {
    	UnusedField_NothingToDefine: u32,
    }

    TEX2DMS_SRV ¶

    TEX2DMS_SRV :: struct {
    	UnusedField_NothingToDefine: u32,
    }

    TEX2D_ARRAY_DSV ¶

    TEX2D_ARRAY_DSV :: struct {
    	MipSlice:        u32,
    	FirstArraySlice: u32,
    	ArraySize:       u32,
    }

    TEX2D_ARRAY_RTV ¶

    TEX2D_ARRAY_RTV :: struct {
    	MipSlice:        u32,
    	FirstArraySlice: u32,
    	ArraySize:       u32,
    	PlaneSlice:      u32,
    }

    TEX2D_ARRAY_SRV ¶

    TEX2D_ARRAY_SRV :: struct {
    	MostDetailedMip:     u32,
    	MipLevels:           u32,
    	FirstArraySlice:     u32,
    	ArraySize:           u32,
    	PlaneSlice:          u32,
    	ResourceMinLODClamp: f32,
    }

    TEX2D_ARRAY_UAV ¶

    TEX2D_ARRAY_UAV :: struct {
    	MipSlice:        u32,
    	FirstArraySlice: u32,
    	ArraySize:       u32,
    	PlaneSlice:      u32,
    }

    TEX2D_DSV ¶

    TEX2D_DSV :: struct {
    	MipSlice: u32,
    }

    TEX2D_RTV ¶

    TEX2D_RTV :: struct {
    	MipSlice:   u32,
    	PlaneSlice: u32,
    }

    TEX2D_SRV ¶

    TEX2D_SRV :: struct {
    	MostDetailedMip:     u32,
    	MipLevels:           u32,
    	PlaneSlice:          u32,
    	ResourceMinLODClamp: f32,
    }

    TEX2D_UAV ¶

    TEX2D_UAV :: struct {
    	MipSlice:   u32,
    	PlaneSlice: u32,
    }

    TEX3D_RTV ¶

    TEX3D_RTV :: struct {
    	MipSlice:    u32,
    	FirstWSlice: u32,
    	WSize:       u32,
    }

    TEX3D_SRV ¶

    TEX3D_SRV :: struct {
    	MostDetailedMip:     u32,
    	MipLevels:           u32,
    	ResourceMinLODClamp: f32,
    }

    TEX3D_UAV ¶

    TEX3D_UAV :: struct {
    	MipSlice:    u32,
    	FirstWSlice: u32,
    	WSize:       u32,
    }

    TEXCUBE_ARRAY_SRV ¶

    TEXCUBE_ARRAY_SRV :: struct {
    	MostDetailedMip:     u32,
    	MipLevels:           u32,
    	First2DArrayFace:    u32,
    	NumCubes:            u32,
    	ResourceMinLODClamp: f32,
    }

    TEXCUBE_SRV ¶

    TEXCUBE_SRV :: struct {
    	MostDetailedMip:     u32,
    	MipLevels:           u32,
    	ResourceMinLODClamp: f32,
    }

    TEXTURE_ADDRESS_MODE ¶

    TEXTURE_ADDRESS_MODE :: enum i32 {
    	WRAP        = 1, 
    	MIRROR      = 2, 
    	CLAMP       = 3, 
    	BORDER      = 4, 
    	MIRROR_ONCE = 5, 
    }

    TEXTURE_COPY_LOCATION ¶

    TEXTURE_COPY_LOCATION :: struct {
    	pResource: ^IResource,
    	Type:      TEXTURE_COPY_TYPE,
    	using _:   struct #raw_union {
    		PlacedFootprint:  PLACED_SUBRESOURCE_FOOTPRINT,
    		SubresourceIndex: u32,
    	},
    }

    TEXTURE_COPY_TYPE ¶

    TEXTURE_COPY_TYPE :: enum i32 {
    	SUBRESOURCE_INDEX = 0, 
    	PLACED_FOOTPRINT  = 1, 
    }

    TEXTURE_LAYOUT ¶

    TEXTURE_LAYOUT :: enum i32 {
    	UNKNOWN                 = 0, 
    	ROW_MAJOR               = 1, 
    	_64KB_UNDEFINED_SWIZZLE = 2, 
    	_64KB_STANDARD_SWIZZLE  = 3, 
    }

    TILED_RESOURCES_TIER ¶

    TILED_RESOURCES_TIER :: enum i32 {
    	NOT_SUPPORTED = 0, 
    	_1            = 1, 
    	_2            = 2, 
    	_3            = 3, 
    	_4            = 4, 
    }

    TILED_RESOURCE_COORDINATE ¶

    TILED_RESOURCE_COORDINATE :: struct {
    	X:           u32,
    	Y:           u32,
    	Z:           u32,
    	Subresource: u32,
    }

    TILE_COPY_FLAG ¶

    TILE_COPY_FLAG :: enum u32 {
    	NO_HAZARD                                = 0, 
    	LINEAR_BUFFER_TO_SWIZZLED_TILED_RESOURCE = 1, 
    	SWIZZLED_TILED_RESOURCE_TO_LINEAR_BUFFER = 2, 
    }

    TILE_COPY_FLAGS ¶

    TILE_COPY_FLAGS :: distinct bit_set[TILE_COPY_FLAG; u32]

    TILE_MAPPING_FLAG ¶

    TILE_MAPPING_FLAG :: enum u32 {
    	NO_HAZARD = 0, 
    }

    TILE_MAPPING_FLAGS ¶

    TILE_MAPPING_FLAGS :: distinct bit_set[TILE_MAPPING_FLAG; u32]

    TILE_RANGE_FLAG ¶

    TILE_RANGE_FLAG :: enum u32 {
    	NULL              = 0, 
    	SKIP              = 1, 
    	REUSE_SINGLE_TILE = 2, 
    }

    TILE_RANGE_FLAGS ¶

    TILE_RANGE_FLAGS :: distinct bit_set[TILE_RANGE_FLAG; u32]

    TILE_REGION_SIZE ¶

    TILE_REGION_SIZE :: struct {
    	NumTiles: u32,
    	UseBox:   sys_windows.BOOL,
    	Width:    u32,
    	Height:   u16,
    	Depth:    u16,
    }

    TILE_SHAPE ¶

    TILE_SHAPE :: struct {
    	WidthInTexels:  u32,
    	HeightInTexels: u32,
    	DepthInTexels:  u32,
    }

    UAV_DIMENSION ¶

    UAV_DIMENSION :: enum i32 {
    	UNKNOWN        = 0, 
    	BUFFER         = 1, 
    	TEXTURE1D      = 2, 
    	TEXTURE1DARRAY = 3, 
    	TEXTURE2D      = 4, 
    	TEXTURE2DARRAY = 5, 
    	TEXTURE3D      = 8, 
    }

    UNORDERED_ACCESS_VIEW_DESC ¶

    UNORDERED_ACCESS_VIEW_DESC :: struct {
    	Format:        directx_dxgi.FORMAT,
    	ViewDimension: UAV_DIMENSION,
    	using _:       struct #raw_union {
    		Buffer:         BUFFER_UAV,
    		Texture1D:      TEX1D_UAV,
    		Texture1DArray: TEX1D_ARRAY_UAV,
    		Texture2D:      TEX2D_UAV,
    		Texture2DArray: TEX2D_ARRAY_UAV,
    		Texture3D:      TEX3D_UAV,
    	},
    }

    UUID ¶

    UUID :: sys_windows.GUID

    VARIABLE_SHADING_RATE_TIER ¶

    VARIABLE_SHADING_RATE_TIER :: enum i32 {
    	NOT_SUPPORTED = 0, 
    	_1            = 1, 
    	_2            = 2, 
    }

    VERSIONED_DEVICE_REMOVED_EXTENDED_DATA ¶

    VERSIONED_DEVICE_REMOVED_EXTENDED_DATA :: struct {
    	Version: DRED_VERSION,
    	using _: struct #raw_union {
    		Dred_1_0: DEVICE_REMOVED_EXTENDED_DATA,
    		Dred_1_1: DEVICE_REMOVED_EXTENDED_DATA1,
    		Dred_1_2: DEVICE_REMOVED_EXTENDED_DATA2,
    	},
    }

    VERSIONED_ROOT_SIGNATURE_DESC ¶

    VERSIONED_ROOT_SIGNATURE_DESC :: struct {
    	Version: ROOT_SIGNATURE_VERSION,
    	using _: struct #raw_union {
    		Desc_1_0: ROOT_SIGNATURE_DESC,
    		Desc_1_1: ROOT_SIGNATURE_DESC1,
    	},
    }
    Related Procedures With Parameters

    VERTEX_BUFFER_VIEW ¶

    VERTEX_BUFFER_VIEW :: struct {
    	BufferLocation: u64,
    	SizeInBytes:    u32,
    	StrideInBytes:  u32,
    }

    VIEWPORT ¶

    VIEWPORT :: struct {
    	TopLeftX: f32,
    	TopLeftY: f32,
    	Width:    f32,
    	Height:   f32,
    	MinDepth: f32,
    	MaxDepth: f32,
    }

    VIEW_INSTANCE_LOCATION ¶

    VIEW_INSTANCE_LOCATION :: struct {
    	ViewportArrayIndex:     u32,
    	RenderTargetArrayIndex: u32,
    }

    VIEW_INSTANCING_DESC ¶

    VIEW_INSTANCING_DESC :: struct {
    	ViewInstanceCount:      u32,
    	pViewInstanceLocations: ^VIEW_INSTANCE_LOCATION,
    	Flags:                  VIEW_INSTANCING_FLAGS,
    }

    VIEW_INSTANCING_FLAG ¶

    VIEW_INSTANCING_FLAG :: enum u32 {
    	ENABLE_VIEW_INSTANCE_MASKING = 0, 
    }

    VIEW_INSTANCING_FLAGS ¶

    VIEW_INSTANCING_FLAGS :: distinct bit_set[VIEW_INSTANCING_FLAG; u32]

    VIEW_INSTANCING_TIER ¶

    VIEW_INSTANCING_TIER :: enum i32 {
    	NOT_SUPPORTED = 0, 
    	_1            = 1, 
    	_2            = 2, 
    	_3            = 3, 
    }

    WRITEBUFFERIMMEDIATE_MODE ¶

    WRITEBUFFERIMMEDIATE_MODE :: enum i32 {
    	DEFAULT    = 0, 
    	MARKER_IN  = 1, 
    	MARKER_OUT = 2, 
    }

    WRITEBUFFERIMMEDIATE_PARAMETER ¶

    WRITEBUFFERIMMEDIATE_PARAMETER :: struct {
    	Dest:  u64,
    	Value: u32,
    }

    Constants

    ANISOTROPIC_FILTERING_BIT ¶

    ANISOTROPIC_FILTERING_BIT :: 0x40

    APPEND_ALIGNED_ELEMENT ¶

    APPEND_ALIGNED_ELEMENT :: 0xffffffff

    ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT ¶

    ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT :: 9

    CLIP_OR_CULL_DISTANCE_COUNT ¶

    CLIP_OR_CULL_DISTANCE_COUNT :: 8

    CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT ¶

    CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT :: 2

    COLOR_WRITE_ENABLE_ALL ¶

    COLOR_WRITE_ENABLE_ALL :: COLOR_WRITE_ENABLE_MASK{.RED, .GREEN, .BLUE, .ALPHA}

    COLOR_WRITE_ENABLE_ALPHA ¶

    COLOR_WRITE_ENABLE_ALPHA :: COLOR_WRITE_ENABLE_MASK{.ALPHA}

    COLOR_WRITE_ENABLE_BLUE ¶

    COLOR_WRITE_ENABLE_BLUE :: COLOR_WRITE_ENABLE_MASK{.BLUE}

    COLOR_WRITE_ENABLE_GREEN ¶

    COLOR_WRITE_ENABLE_GREEN :: COLOR_WRITE_ENABLE_MASK{.GREEN}

    COLOR_WRITE_ENABLE_RED ¶

    COLOR_WRITE_ENABLE_RED :: COLOR_WRITE_ENABLE_MASK{.RED}

    COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT ¶

    COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT :: 14

    COMMONSHADER_CONSTANT_BUFFER_COMPONENTS ¶

    COMMONSHADER_CONSTANT_BUFFER_COMPONENTS :: 4

    COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT ¶

    COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT :: 32

    COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT ¶

    COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT :: 15

    COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT ¶

    COMMONSHADER_CONSTANT_BUFFER_PARTIAL_UPDATE_EXTENTS_BYTE_ALIGNMENT :: 16

    COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS ¶

    COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS :: 4

    COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT ¶

    COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT :: 15

    COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST ¶

    COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST :: 1

    COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS ¶

    COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS :: 1

    COMMONSHADER_FLOWCONTROL_NESTING_LIMIT ¶

    COMMONSHADER_FLOWCONTROL_NESTING_LIMIT :: 64

    COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS ¶

    COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS :: 4

    COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT ¶

    COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT :: 1

    COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST ¶

    COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST :: 1

    COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS ¶

    COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS :: 1

    COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT ¶

    COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT :: 32

    COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS ¶

    COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS :: 1

    COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT ¶

    COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT :: 128

    COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST ¶

    COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST :: 1

    COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS ¶

    COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS :: 1

    COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT ¶

    COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT :: 128

    COMMONSHADER_SAMPLER_REGISTER_COMPONENTS ¶

    COMMONSHADER_SAMPLER_REGISTER_COMPONENTS :: 1

    COMMONSHADER_SAMPLER_REGISTER_COUNT ¶

    COMMONSHADER_SAMPLER_REGISTER_COUNT :: 16

    COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST ¶

    COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST :: 1

    COMMONSHADER_SAMPLER_REGISTER_READ_PORTS ¶

    COMMONSHADER_SAMPLER_REGISTER_READ_PORTS :: 1

    COMMONSHADER_SAMPLER_SLOT_COUNT ¶

    COMMONSHADER_SAMPLER_SLOT_COUNT :: 16

    COMMONSHADER_SUBROUTINE_NESTING_LIMIT ¶

    COMMONSHADER_SUBROUTINE_NESTING_LIMIT :: 32

    COMMONSHADER_TEMP_REGISTER_COMPONENTS ¶

    COMMONSHADER_TEMP_REGISTER_COMPONENTS :: 4

    COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT ¶

    COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT :: 32

    COMMONSHADER_TEMP_REGISTER_COUNT ¶

    COMMONSHADER_TEMP_REGISTER_COUNT :: 4096

    COMMONSHADER_TEMP_REGISTER_READS_PER_INST ¶

    COMMONSHADER_TEMP_REGISTER_READS_PER_INST :: 3

    COMMONSHADER_TEMP_REGISTER_READ_PORTS ¶

    COMMONSHADER_TEMP_REGISTER_READ_PORTS :: 3

    COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX ¶

    COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX :: 10

    COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN ¶

    COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN :: -10

    COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE ¶

    COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE :: -8

    COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE ¶

    COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE :: 7

    COMPONENT_MASK_W ¶

    COMPONENT_MASK_W :: 8

    COMPONENT_MASK_X ¶

    COMPONENT_MASK_X :: 1

    COMPONENT_MASK_Y ¶

    COMPONENT_MASK_Y :: 2

    COMPONENT_MASK_Z ¶

    COMPONENT_MASK_Z :: 4

    CONSTANT_BUFFER_DATA_PLACEMENT_ALIGNMENT ¶

    CONSTANT_BUFFER_DATA_PLACEMENT_ALIGNMENT :: 256

    CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET00_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 256

    CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET00_MAX_NUM_THREADS_PER_GROUP :: 64

    CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET01_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 240

    CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET01_MAX_NUM_THREADS_PER_GROUP :: 68

    CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET02_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 224

    CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET02_MAX_NUM_THREADS_PER_GROUP :: 72

    CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET03_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 208

    CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET03_MAX_NUM_THREADS_PER_GROUP :: 76

    CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET04_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 192

    CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET04_MAX_NUM_THREADS_PER_GROUP :: 84

    CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET05_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 176

    CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET05_MAX_NUM_THREADS_PER_GROUP :: 92

    CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET06_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 160

    CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET06_MAX_NUM_THREADS_PER_GROUP :: 100

    CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET07_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 144

    CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET07_MAX_NUM_THREADS_PER_GROUP :: 112

    CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET08_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 128

    CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET08_MAX_NUM_THREADS_PER_GROUP :: 128

    CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET09_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 112

    CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET09_MAX_NUM_THREADS_PER_GROUP :: 144

    CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET10_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 96

    CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET10_MAX_NUM_THREADS_PER_GROUP :: 168

    CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET11_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 80

    CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET11_MAX_NUM_THREADS_PER_GROUP :: 204

    CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET12_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 64

    CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET12_MAX_NUM_THREADS_PER_GROUP :: 256

    CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET13_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 48

    CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET13_MAX_NUM_THREADS_PER_GROUP :: 340

    CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET14_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 32

    CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET14_MAX_NUM_THREADS_PER_GROUP :: 512

    CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD ¶

    CS_4_X_BUCKET15_MAX_BYTES_TGSM_WRITABLE_PER_THREAD :: 16

    CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP ¶

    CS_4_X_BUCKET15_MAX_NUM_THREADS_PER_GROUP :: 768

    CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION ¶

    CS_4_X_DISPATCH_MAX_THREAD_GROUPS_IN_Z_DIMENSION :: 1

    CS_4_X_RAW_UAV_BYTE_ALIGNMENT ¶

    CS_4_X_RAW_UAV_BYTE_ALIGNMENT :: 256

    CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP ¶

    CS_4_X_THREAD_GROUP_MAX_THREADS_PER_GROUP :: 768

    CS_4_X_THREAD_GROUP_MAX_X ¶

    CS_4_X_THREAD_GROUP_MAX_X :: 768

    CS_4_X_THREAD_GROUP_MAX_Y ¶

    CS_4_X_THREAD_GROUP_MAX_Y :: 768

    CS_4_X_UAV_REGISTER_COUNT ¶

    CS_4_X_UAV_REGISTER_COUNT :: 1

    CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION ¶

    CS_DISPATCH_MAX_THREAD_GROUPS_PER_DIMENSION :: 65535

    CS_TGSM_REGISTER_COUNT ¶

    CS_TGSM_REGISTER_COUNT :: 8192

    CS_TGSM_REGISTER_READS_PER_INST ¶

    CS_TGSM_REGISTER_READS_PER_INST :: 1

    CS_TGSM_RESOURCE_REGISTER_COMPONENTS ¶

    CS_TGSM_RESOURCE_REGISTER_COMPONENTS :: 1

    CS_TGSM_RESOURCE_REGISTER_READ_PORTS ¶

    CS_TGSM_RESOURCE_REGISTER_READ_PORTS :: 1

    CS_THREADGROUPID_REGISTER_COMPONENTS ¶

    CS_THREADGROUPID_REGISTER_COMPONENTS :: 3

    CS_THREADGROUPID_REGISTER_COUNT ¶

    CS_THREADGROUPID_REGISTER_COUNT :: 1

    CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS ¶

    CS_THREADIDINGROUPFLATTENED_REGISTER_COMPONENTS :: 1

    CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT ¶

    CS_THREADIDINGROUPFLATTENED_REGISTER_COUNT :: 1

    CS_THREADIDINGROUP_REGISTER_COMPONENTS ¶

    CS_THREADIDINGROUP_REGISTER_COMPONENTS :: 3

    CS_THREADIDINGROUP_REGISTER_COUNT ¶

    CS_THREADIDINGROUP_REGISTER_COUNT :: 1

    CS_THREADID_REGISTER_COMPONENTS ¶

    CS_THREADID_REGISTER_COMPONENTS :: 3

    CS_THREADID_REGISTER_COUNT ¶

    CS_THREADID_REGISTER_COUNT :: 1

    CS_THREAD_GROUP_MAX_THREADS_PER_GROUP ¶

    CS_THREAD_GROUP_MAX_THREADS_PER_GROUP :: 1024

    CS_THREAD_GROUP_MAX_X ¶

    CS_THREAD_GROUP_MAX_X :: 1024

    CS_THREAD_GROUP_MAX_Y ¶

    CS_THREAD_GROUP_MAX_Y :: 1024

    CS_THREAD_GROUP_MAX_Z ¶

    CS_THREAD_GROUP_MAX_Z :: 64

    CS_THREAD_GROUP_MIN_X ¶

    CS_THREAD_GROUP_MIN_X :: 1

    CS_THREAD_GROUP_MIN_Y ¶

    CS_THREAD_GROUP_MIN_Y :: 1

    CS_THREAD_GROUP_MIN_Z ¶

    CS_THREAD_GROUP_MIN_Z :: 1

    CS_THREAD_LOCAL_TEMP_REGISTER_POOL ¶

    CS_THREAD_LOCAL_TEMP_REGISTER_POOL :: 16384

    DEFAULT_BLEND_FACTOR_ALPHA ¶

    DEFAULT_BLEND_FACTOR_ALPHA :: 1.0

    DEFAULT_BLEND_FACTOR_BLUE ¶

    DEFAULT_BLEND_FACTOR_BLUE :: 1.0

    DEFAULT_BLEND_FACTOR_GREEN ¶

    DEFAULT_BLEND_FACTOR_GREEN :: 1.0

    DEFAULT_BLEND_FACTOR_RED ¶

    DEFAULT_BLEND_FACTOR_RED :: 1.0

    DEFAULT_BORDER_COLOR_COMPONENT ¶

    DEFAULT_BORDER_COLOR_COMPONENT :: 0.0

    DEFAULT_DEPTH_BIAS ¶

    DEFAULT_DEPTH_BIAS :: 0

    DEFAULT_DEPTH_BIAS_CLAMP ¶

    DEFAULT_DEPTH_BIAS_CLAMP :: 0.0

    DEFAULT_MAX_ANISOTROPY ¶

    DEFAULT_MAX_ANISOTROPY :: 16

    DEFAULT_MIP_LOD_BIAS ¶

    DEFAULT_MIP_LOD_BIAS :: 0.0

    DEFAULT_MSAA_RESOURCE_PLACEMENT_ALIGNMENT ¶

    DEFAULT_MSAA_RESOURCE_PLACEMENT_ALIGNMENT :: 4194304

    DEFAULT_RENDER_TARGET_ARRAY_INDEX ¶

    DEFAULT_RENDER_TARGET_ARRAY_INDEX :: 0

    DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT ¶

    DEFAULT_RESOURCE_PLACEMENT_ALIGNMENT :: 65536

    DEFAULT_SAMPLE_MASK ¶

    DEFAULT_SAMPLE_MASK :: 0xffffffff

    DEFAULT_SCISSOR_ENDX ¶

    DEFAULT_SCISSOR_ENDX :: 0

    DEFAULT_SCISSOR_ENDY ¶

    DEFAULT_SCISSOR_ENDY :: 0

    DEFAULT_SCISSOR_STARTX ¶

    DEFAULT_SCISSOR_STARTX :: 0

    DEFAULT_SCISSOR_STARTY ¶

    DEFAULT_SCISSOR_STARTY :: 0

    DEFAULT_SLOPE_SCALED_DEPTH_BIAS ¶

    DEFAULT_SLOPE_SCALED_DEPTH_BIAS :: 0.0

    DEFAULT_STENCIL_READ_MASK ¶

    DEFAULT_STENCIL_READ_MASK :: 0xff

    DEFAULT_STENCIL_REFERENCE ¶

    DEFAULT_STENCIL_REFERENCE :: 0

    DEFAULT_STENCIL_WRITE_MASK ¶

    DEFAULT_STENCIL_WRITE_MASK :: 0xff

    DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX ¶

    DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX :: 0

    DEFAULT_VIEWPORT_HEIGHT ¶

    DEFAULT_VIEWPORT_HEIGHT :: 0

    DEFAULT_VIEWPORT_MAX_DEPTH ¶

    DEFAULT_VIEWPORT_MAX_DEPTH :: 0.0

    DEFAULT_VIEWPORT_MIN_DEPTH ¶

    DEFAULT_VIEWPORT_MIN_DEPTH :: 0.0

    DEFAULT_VIEWPORT_TOPLEFTX ¶

    DEFAULT_VIEWPORT_TOPLEFTX :: 0

    DEFAULT_VIEWPORT_TOPLEFTY ¶

    DEFAULT_VIEWPORT_TOPLEFTY :: 0

    DEFAULT_VIEWPORT_WIDTH ¶

    DEFAULT_VIEWPORT_WIDTH :: 0

    DESCRIPTOR_RANGE_OFFSET_APPEND ¶

    DESCRIPTOR_RANGE_OFFSET_APPEND :: 0xffffffff

    DRIVER_RESERVED_REGISTER_SPACE_VALUES_END ¶

    DRIVER_RESERVED_REGISTER_SPACE_VALUES_END :: 0xfffffff7

    DRIVER_RESERVED_REGISTER_SPACE_VALUES_START ¶

    DRIVER_RESERVED_REGISTER_SPACE_VALUES_START :: 0xfffffff0

    DS_INPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS ¶

    DS_INPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS :: 3968

    DS_INPUT_CONTROL_POINT_REGISTER_COMPONENTS ¶

    DS_INPUT_CONTROL_POINT_REGISTER_COMPONENTS :: 4

    DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT ¶

    DS_INPUT_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT :: 32

    DS_INPUT_CONTROL_POINT_REGISTER_COUNT ¶

    DS_INPUT_CONTROL_POINT_REGISTER_COUNT :: 32

    DS_INPUT_CONTROL_POINT_REGISTER_READS_PER_INST ¶

    DS_INPUT_CONTROL_POINT_REGISTER_READS_PER_INST :: 2

    DS_INPUT_CONTROL_POINT_REGISTER_READ_PORTS ¶

    DS_INPUT_CONTROL_POINT_REGISTER_READ_PORTS :: 1

    DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENTS ¶

    DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENTS :: 3

    DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENT_BIT_COUNT ¶

    DS_INPUT_DOMAIN_POINT_REGISTER_COMPONENT_BIT_COUNT :: 32

    DS_INPUT_DOMAIN_POINT_REGISTER_COUNT ¶

    DS_INPUT_DOMAIN_POINT_REGISTER_COUNT :: 1

    DS_INPUT_DOMAIN_POINT_REGISTER_READS_PER_INST ¶

    DS_INPUT_DOMAIN_POINT_REGISTER_READS_PER_INST :: 2

    DS_INPUT_DOMAIN_POINT_REGISTER_READ_PORTS ¶

    DS_INPUT_DOMAIN_POINT_REGISTER_READ_PORTS :: 1

    DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENTS ¶

    DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENTS :: 4

    DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT ¶

    DS_INPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT :: 32

    DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT ¶

    DS_INPUT_PATCH_CONSTANT_REGISTER_COUNT :: 32

    DS_INPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST ¶

    DS_INPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST :: 2

    DS_INPUT_PATCH_CONSTANT_REGISTER_READ_PORTS ¶

    DS_INPUT_PATCH_CONSTANT_REGISTER_READ_PORTS :: 1

    DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS ¶

    DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS :: 1

    DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT ¶

    DS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32

    DS_INPUT_PRIMITIVE_ID_REGISTER_COUNT ¶

    DS_INPUT_PRIMITIVE_ID_REGISTER_COUNT :: 1

    DS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST ¶

    DS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST :: 2

    DS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS ¶

    DS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS :: 1

    DS_OUTPUT_REGISTER_COMPONENTS ¶

    DS_OUTPUT_REGISTER_COMPONENTS :: 4

    DS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT ¶

    DS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT :: 32

    DS_OUTPUT_REGISTER_COUNT ¶

    DS_OUTPUT_REGISTER_COUNT :: 32

    FILTER_REDUCTION_TYPE_MASK ¶

    FILTER_REDUCTION_TYPE_MASK :: 0x3

    FILTER_REDUCTION_TYPE_SHIFT ¶

    FILTER_REDUCTION_TYPE_SHIFT :: 7

    FILTER_TYPE_MASK ¶

    FILTER_TYPE_MASK :: 0x3

    FL9_1_DEFAULT_MAX_ANISOTROPY ¶

    FL9_1_DEFAULT_MAX_ANISOTROPY :: 2

    FL9_1_IA_PRIMITIVE_MAX_COUNT ¶

    FL9_1_IA_PRIMITIVE_MAX_COUNT :: 65535

    FL9_1_MAX_TEXTURE_REPEAT ¶

    FL9_1_MAX_TEXTURE_REPEAT :: 128

    FL9_1_REQ_TEXTURE1D_U_DIMENSION ¶

    FL9_1_REQ_TEXTURE1D_U_DIMENSION :: 2048

    FL9_1_REQ_TEXTURE2D_U_OR_V_DIMENSION ¶

    FL9_1_REQ_TEXTURE2D_U_OR_V_DIMENSION :: 2048

    FL9_1_REQ_TEXTURE3D_U_V_OR_W_DIMENSION ¶

    FL9_1_REQ_TEXTURE3D_U_V_OR_W_DIMENSION :: 256

    FL9_1_REQ_TEXTURECUBE_DIMENSION ¶

    FL9_1_REQ_TEXTURECUBE_DIMENSION :: 512

    FL9_1_SIMULTANEOUS_RENDER_TARGET_COUNT ¶

    FL9_1_SIMULTANEOUS_RENDER_TARGET_COUNT :: 1

    FL9_2_IA_PRIMITIVE_MAX_COUNT ¶

    FL9_2_IA_PRIMITIVE_MAX_COUNT :: 1048575

    FL9_2_MAX_TEXTURE_REPEAT ¶

    FL9_2_MAX_TEXTURE_REPEAT :: 2048

    FL9_3_MAX_TEXTURE_REPEAT ¶

    FL9_3_MAX_TEXTURE_REPEAT :: 8192

    FL9_3_REQ_TEXTURE1D_U_DIMENSION ¶

    FL9_3_REQ_TEXTURE1D_U_DIMENSION :: 4096

    FL9_3_REQ_TEXTURE2D_U_OR_V_DIMENSION ¶

    FL9_3_REQ_TEXTURE2D_U_OR_V_DIMENSION :: 4096

    FL9_3_REQ_TEXTURECUBE_DIMENSION ¶

    FL9_3_REQ_TEXTURECUBE_DIMENSION :: 4096

    FL9_3_SIMULTANEOUS_RENDER_TARGET_COUNT ¶

    FL9_3_SIMULTANEOUS_RENDER_TARGET_COUNT :: 4

    FLOAT16_FUSED_TOLERANCE_IN_ULP ¶

    FLOAT16_FUSED_TOLERANCE_IN_ULP :: 0.6

    FLOAT32_MAX ¶

    FLOAT32_MAX :: 3.402823466e+38

    FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP ¶

    FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP :: 0.6

    FLOAT_TO_SRGB_EXPONENT_DENOMINATOR ¶

    FLOAT_TO_SRGB_EXPONENT_DENOMINATOR :: 2.4

    FLOAT_TO_SRGB_EXPONENT_NUMERATOR ¶

    FLOAT_TO_SRGB_EXPONENT_NUMERATOR :: 1.0

    FLOAT_TO_SRGB_OFFSET ¶

    FLOAT_TO_SRGB_OFFSET :: 0.055

    FLOAT_TO_SRGB_SCALE_1 ¶

    FLOAT_TO_SRGB_SCALE_1 :: 12.92

    FLOAT_TO_SRGB_SCALE_2 ¶

    FLOAT_TO_SRGB_SCALE_2 :: 1.055

    FLOAT_TO_SRGB_THRESHOLD ¶

    FLOAT_TO_SRGB_THRESHOLD :: 0.0031308

    FTOI_INSTRUCTION_MAX_INPUT ¶

    FTOI_INSTRUCTION_MAX_INPUT :: 2147483647.999

    FTOI_INSTRUCTION_MIN_INPUT ¶

    FTOI_INSTRUCTION_MIN_INPUT :: -2147483648.999

    FTOU_INSTRUCTION_MAX_INPUT ¶

    FTOU_INSTRUCTION_MAX_INPUT :: 4294967295.999

    FTOU_INSTRUCTION_MIN_INPUT ¶

    FTOU_INSTRUCTION_MIN_INPUT :: 0.0

    GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_VALID_MASK ¶

    GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_VALID_MASK :: GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS{.FRONT_LOAD_CREATE_TRACKING_ONLY_SHADERS, .FRONT_LOAD_CREATE_UNGUARDED_VALIDATION_SHADERS, .FRONT_LOAD_CREATE_GUARDED_VALIDATION_SHADERS}

    GS_INPUT_INSTANCE_ID_READS_PER_INST ¶

    GS_INPUT_INSTANCE_ID_READS_PER_INST :: 2

    GS_INPUT_INSTANCE_ID_READ_PORTS ¶

    GS_INPUT_INSTANCE_ID_READ_PORTS :: 1

    GS_INPUT_INSTANCE_ID_REGISTER_COMPONENTS ¶

    GS_INPUT_INSTANCE_ID_REGISTER_COMPONENTS :: 1

    GS_INPUT_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT ¶

    GS_INPUT_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32

    GS_INPUT_INSTANCE_ID_REGISTER_COUNT ¶

    GS_INPUT_INSTANCE_ID_REGISTER_COUNT :: 1

    GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS ¶

    GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS :: 1

    GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT ¶

    GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT :: 32

    GS_INPUT_PRIM_CONST_REGISTER_COUNT ¶

    GS_INPUT_PRIM_CONST_REGISTER_COUNT :: 1

    GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST ¶

    GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST :: 2

    GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS ¶

    GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS :: 1

    GS_INPUT_REGISTER_COMPONENTS ¶

    GS_INPUT_REGISTER_COMPONENTS :: 4

    GS_INPUT_REGISTER_COMPONENT_BIT_COUNT ¶

    GS_INPUT_REGISTER_COMPONENT_BIT_COUNT :: 32

    GS_INPUT_REGISTER_COUNT ¶

    GS_INPUT_REGISTER_COUNT :: 32

    GS_INPUT_REGISTER_READS_PER_INST ¶

    GS_INPUT_REGISTER_READS_PER_INST :: 2

    GS_INPUT_REGISTER_READ_PORTS ¶

    GS_INPUT_REGISTER_READ_PORTS :: 1

    GS_INPUT_REGISTER_VERTICES ¶

    GS_INPUT_REGISTER_VERTICES :: 32

    GS_MAX_INSTANCE_COUNT ¶

    GS_MAX_INSTANCE_COUNT :: 32

    GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES ¶

    GS_MAX_OUTPUT_VERTEX_COUNT_ACROSS_INSTANCES :: 1024

    GS_OUTPUT_ELEMENTS ¶

    GS_OUTPUT_ELEMENTS :: 32

    GS_OUTPUT_REGISTER_COMPONENTS ¶

    GS_OUTPUT_REGISTER_COMPONENTS :: 4

    GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT ¶

    GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT :: 32

    GS_OUTPUT_REGISTER_COUNT ¶

    GS_OUTPUT_REGISTER_COUNT :: 32

    HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES ¶

    HEAP_FLAG_ALLOW_ALL_BUFFERS_AND_TEXTURES :: HEAP_FLAGS{}

    HEAP_FLAG_ALLOW_ONLY_BUFFERS ¶

    HEAP_FLAG_ALLOW_ONLY_BUFFERS :: HEAP_FLAGS{.DENY_RT_DS_TEXTURES, .DENY_NON_RT_DS_TEXTURES}

    HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES ¶

    HEAP_FLAG_ALLOW_ONLY_NON_RT_DS_TEXTURES :: HEAP_FLAGS{.DENY_BUFFERS, .DENY_RT_DS_TEXTURES}

    HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES ¶

    HEAP_FLAG_ALLOW_ONLY_RT_DS_TEXTURES :: HEAP_FLAGS{.DENY_BUFFERS, .DENY_NON_RT_DS_TEXTURES}

    HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT ¶

    HS_CONTROL_POINT_PHASE_INPUT_REGISTER_COUNT :: 32

    HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT ¶

    HS_CONTROL_POINT_PHASE_OUTPUT_REGISTER_COUNT :: 32

    HS_CONTROL_POINT_REGISTER_COMPONENTS ¶

    HS_CONTROL_POINT_REGISTER_COMPONENTS :: 4

    HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT ¶

    HS_CONTROL_POINT_REGISTER_COMPONENT_BIT_COUNT :: 32

    HS_CONTROL_POINT_REGISTER_READS_PER_INST ¶

    HS_CONTROL_POINT_REGISTER_READS_PER_INST :: 2

    HS_CONTROL_POINT_REGISTER_READ_PORTS ¶

    HS_CONTROL_POINT_REGISTER_READ_PORTS :: 1

    HS_FORK_PHASE_INSTANCE_COUNT_UPPER_BOUND ¶

    HS_FORK_PHASE_INSTANCE_COUNT_UPPER_BOUND :: 0xffffffff

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENTS ¶

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENTS :: 1

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT ¶

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_COUNT ¶

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_COUNT :: 1

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_READS_PER_INST ¶

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_READS_PER_INST :: 2

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_READ_PORTS ¶

    HS_INPUT_FORK_INSTANCE_ID_REGISTER_READ_PORTS :: 1

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENTS ¶

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENTS :: 1

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT ¶

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COUNT ¶

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_COUNT :: 1

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READS_PER_INST ¶

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READS_PER_INST :: 2

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READ_PORTS ¶

    HS_INPUT_JOIN_INSTANCE_ID_REGISTER_READ_PORTS :: 1

    HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS ¶

    HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENTS :: 1

    HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT ¶

    HS_INPUT_PRIMITIVE_ID_REGISTER_COMPONENT_BIT_COUNT :: 32

    HS_INPUT_PRIMITIVE_ID_REGISTER_COUNT ¶

    HS_INPUT_PRIMITIVE_ID_REGISTER_COUNT :: 1

    HS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST ¶

    HS_INPUT_PRIMITIVE_ID_REGISTER_READS_PER_INST :: 2

    HS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS ¶

    HS_INPUT_PRIMITIVE_ID_REGISTER_READ_PORTS :: 1

    HS_JOIN_PHASE_INSTANCE_COUNT_UPPER_BOUND ¶

    HS_JOIN_PHASE_INSTANCE_COUNT_UPPER_BOUND :: 0xffffffff

    HS_MAXTESSFACTOR_LOWER_BOUND ¶

    HS_MAXTESSFACTOR_LOWER_BOUND :: 1.0

    HS_MAXTESSFACTOR_UPPER_BOUND ¶

    HS_MAXTESSFACTOR_UPPER_BOUND :: 64.0

    HS_OUTPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS ¶

    HS_OUTPUT_CONTROL_POINTS_MAX_TOTAL_SCALARS :: 3968

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENTS ¶

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENTS :: 1

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENT_BIT_COUNT ¶

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COMPONENT_BIT_COUNT :: 32

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COUNT ¶

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_COUNT :: 1

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READS_PER_INST ¶

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READS_PER_INST :: 2

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READ_PORTS ¶

    HS_OUTPUT_CONTROL_POINT_ID_REGISTER_READ_PORTS :: 1

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENTS ¶

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENTS :: 4

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT ¶

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_COMPONENT_BIT_COUNT :: 32

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT ¶

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_COUNT :: 32

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST ¶

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_READS_PER_INST :: 2

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_READ_PORTS ¶

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_READ_PORTS :: 1

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_SCALAR_COMPONENTS ¶

    HS_OUTPUT_PATCH_CONSTANT_REGISTER_SCALAR_COMPONENTS :: 128

    IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES ¶

    IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES :: 0

    IA_DEFAULT_PRIMITIVE_TOPOLOGY ¶

    IA_DEFAULT_PRIMITIVE_TOPOLOGY :: 0

    IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES ¶

    IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES :: 0

    IA_INDEX_INPUT_RESOURCE_SLOT_COUNT ¶

    IA_INDEX_INPUT_RESOURCE_SLOT_COUNT :: 1

    IA_INSTANCE_ID_BIT_COUNT ¶

    IA_INSTANCE_ID_BIT_COUNT :: 32

    IA_INTEGER_ARITHMETIC_BIT_COUNT ¶

    IA_INTEGER_ARITHMETIC_BIT_COUNT :: 32

    IA_PATCH_MAX_CONTROL_POINT_COUNT ¶

    IA_PATCH_MAX_CONTROL_POINT_COUNT :: 32

    IA_PRIMITIVE_ID_BIT_COUNT ¶

    IA_PRIMITIVE_ID_BIT_COUNT :: 32

    IA_VERTEX_ID_BIT_COUNT ¶

    IA_VERTEX_ID_BIT_COUNT :: 32

    IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT ¶

    IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT :: 32

    IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS ¶

    IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS :: 128

    IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT ¶

    IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT :: 32

    ICommandAllocator_UUID_STRING ¶

    ICommandAllocator_UUID_STRING :: "6102dee4-af59-4b09-b999-b44d73f09b24"

    ICommandList_UUID_STRING ¶

    ICommandList_UUID_STRING :: "7116d91c-e7e4-47ce-b8c6-ec8168f437e5"

    ICommandQueue_UUID_STRING ¶

    ICommandQueue_UUID_STRING :: "0ec870a6-5d7e-4c22-8cfc-5baae07616ed"

    ICommandSignature_UUID_STRING ¶

    ICommandSignature_UUID_STRING :: "c36a797c-ec80-4f0a-8985-a7b2475082d1"

    ID3DDestructionNotifier_UUID_STRING ¶

    ID3DDestructionNotifier_UUID_STRING :: "a06eb39a-50da-425b-8c31-4eecd6c270f3"

    IDebug1_UUID_STRING ¶

    IDebug1_UUID_STRING :: "affaa4ca-63fe-4d8e-b8ad-159000af4304"

    IDebug2_UUID ¶

    IDebug2_UUID :: "93a665c4-a3b2-4e5d-b692-a26ae14e3374"

    IDebug3_UUID_STRING ¶

    IDebug3_UUID_STRING :: "5cf4e58f-f671-4ff1-a542-3686e3d153d1"

    IDebugCommandList1_UUID_STRING ¶

    IDebugCommandList1_UUID_STRING :: "102ca951-311b-4b01-b11f-ecb83e061b37"

    IDebugCommandList2_UUID_STRING ¶

    IDebugCommandList2_UUID_STRING :: "aeb575cf-4e06-48be-ba3b-c450fc96652e"

    IDebugCommandList_UUID_STRING ¶

    IDebugCommandList_UUID_STRING :: "09e0bf36-54ac-484f-8847-4baeeab6053f"

    IDebugCommandQueue_UUID_STRING ¶

    IDebugCommandQueue_UUID_STRING :: "09e0bf36-54ac-484f-8847-4baeeab6053a"

    IDebugDevice1_UUID_STRING ¶

    IDebugDevice1_UUID_STRING :: "a9b71770-d099-4a65-a698-3dee10020f88"

    IDebugDevice2_UUID_STRING ¶

    IDebugDevice2_UUID_STRING :: "60eccbc1-378d-4df1-894c-f8ac5ce4d7dd"

    IDebugDevice_UUID_STRING ¶

    IDebugDevice_UUID_STRING :: "3febd6dd-4973-4787-8194-e45f9e28923e"

    IDebug_UUID_STRING ¶

    IDebug_UUID_STRING :: "344488b7-6846-474b-b989-f027448245e0"

    IDescriptorHeap_UUID_STRING ¶

    IDescriptorHeap_UUID_STRING :: "8efb471d-616c-4f49-90f7-127bb763fa51"

    IDevice1_UUID_STRING ¶

    IDevice1_UUID_STRING :: "77acce80-638e-4e65-8895-c1f23386863e"

    IDevice2_UUID_STRING ¶

    IDevice2_UUID_STRING :: "30baa41e-b15b-475c-a0bb-1af5c5b64328"

    IDevice3_UUID_STRING ¶

    IDevice3_UUID_STRING :: "81dadc15-2bad-4392-93c5-101345c4aa98"

    IDevice4_UUID_STRING ¶

    IDevice4_UUID_STRING :: "e865df17-a9ee-46f9-a463-3098315aa2e5"

    IDevice5_UUID_STRING ¶

    IDevice5_UUID_STRING :: "8b4f173b-2fea-4b80-8f58-4307191ab95d"

    IDevice6_UUID_STRING ¶

    IDevice6_UUID_STRING :: "c70b221b-40e4-4a17-89af-025a0727a6dc"

    IDevice7_UUID_STRING ¶

    IDevice7_UUID_STRING :: "5c014b53-68a1-4b9b-8bd1-dd6046b9358b"

    IDevice8_UUID_STRING ¶

    IDevice8_UUID_STRING :: "9218E6BB-F944-4F7E-A75C-B1B2C7B701F3"

    IDeviceChild_UUID_STRING ¶

    IDeviceChild_UUID_STRING :: "905db94b-a00c-4140-9df5-2b64ca9ea357"

    IDeviceRemovedExtendedData1_UUID_STRING ¶

    IDeviceRemovedExtendedData1_UUID_STRING :: "9727A022-CF1D-4DDA-9EBA-EFFA653FC506"

    IDeviceRemovedExtendedDataSettings1_UUID_STRING ¶

    IDeviceRemovedExtendedDataSettings1_UUID_STRING :: "DBD5AE51-3317-4F0A-ADF9-1D7CEDCAAE0B"

    IDeviceRemovedExtendedDataSettings_UUID_STRING ¶

    IDeviceRemovedExtendedDataSettings_UUID_STRING :: "82BC481C-6B9B-4030-AEDB-7EE3D1DF1E63"

    IDeviceRemovedExtendedData_UUID_STRING ¶

    IDeviceRemovedExtendedData_UUID_STRING :: "98931D33-5AE8-4791-AA3C-1A73A2934E71"

    IDevice_UUID_STRING ¶

    IDevice_UUID_STRING :: "189819f1-1db6-4b57-be54-1821339b85f7"

    IFence1_UUID_STRING ¶

    IFence1_UUID_STRING :: "433685fe-e22b-4ca0-a8db-b5b4f4dd0e4a"

    IFence_UUID_STRING ¶

    IFence_UUID_STRING :: "0a753dcf-c4d8-4b91-adf6-be5a60d95a76"

    IFunctionParameterReflection_UUID_STRING ¶

    IFunctionParameterReflection_UUID_STRING :: "EC25F42D-7006-4F2B-B33E-02CC3375733F"

    IFunctionReflection_UUID_STRING ¶

    IFunctionReflection_UUID_STRING :: "1108795C-2772-4BA9-B2A8-D464DC7E2799"

    IGraphicsCommandList1_UUID_STRING ¶

    IGraphicsCommandList1_UUID_STRING :: "553103fb-1fe7-4557-bb38-946d7d0e7ca7"

    IGraphicsCommandList2_UUID_STRING ¶

    IGraphicsCommandList2_UUID_STRING :: "38C3E585-FF17-412C-9150-4FC6F9D72A28"

    IGraphicsCommandList3_UUID_STRING ¶

    IGraphicsCommandList3_UUID_STRING :: "6FDA83A7-B84C-4E38-9AC8-C7BD22016B3D"

    IGraphicsCommandList4_UUID_STRING ¶

    IGraphicsCommandList4_UUID_STRING :: "8754318e-d3a9-4541-98cf-645b50dc4874"

    IGraphicsCommandList5_UUID_STRING ¶

    IGraphicsCommandList5_UUID_STRING :: "55050859-4024-474c-87f5-6472eaee44ea"

    IGraphicsCommandList6_UUID_STRING ¶

    IGraphicsCommandList6_UUID_STRING :: "c3827890-e548-4cfa-96cf-5689a9370f80"

    IGraphicsCommandList_UUID_STRING ¶

    IGraphicsCommandList_UUID_STRING :: "5b160d0f-ac1b-4185-8ba8-b3ae42a5a455"

    IHeap1_UUID_STRING ¶

    IHeap1_UUID_STRING :: "572F7389-2168-49E3-9693-D6DF5871BF6D"

    IHeap_UUID_STRING ¶

    IHeap_UUID_STRING :: "6b3b2502-6e51-45b3-90ee-9884265e8df3"

    IInfoQueue1_UUID_STRING ¶

    IInfoQueue1_UUID_STRING :: "2852dd88-b484-4c0c-b6b1-67168500e600"

    IInfoQueue_UUID_STRING ¶

    IInfoQueue_UUID_STRING :: "0742a90b-c387-483f-b946-30a7e4e61458"

    ILibraryReflection_UUID_STRING ¶

    ILibraryReflection_UUID_STRING :: "8E349D19-54DB-4A56-9DC9-119D87BDB804"

    ILifetimeOwner_UUID_STRING ¶

    ILifetimeOwner_UUID_STRING :: "e667af9f-cd56-4f46-83ce-032e595d70a8"

    ILifetimeTracker_UUID_STRING ¶

    ILifetimeTracker_UUID_STRING :: "3fd03d36-4eb1-424a-a582-494ecb8ba813"

    IMetaCommand_UUID_STRING ¶

    IMetaCommand_UUID_STRING :: "DBB84C27-36CE-4FC9-B801-F048C46AC570"

    INFO_QUEUE_DEFAULT_MESSAGE_COUNT_LIMIT ¶

    INFO_QUEUE_DEFAULT_MESSAGE_COUNT_LIMIT :: 1024

    INTEGER_DIVIDE_BY_ZERO_QUOTIENT ¶

    INTEGER_DIVIDE_BY_ZERO_QUOTIENT :: 0xffffffff

    INTEGER_DIVIDE_BY_ZERO_REMAINDER ¶

    INTEGER_DIVIDE_BY_ZERO_REMAINDER :: 0xffffffff

    IObject_UUID_STRING ¶

    IObject_UUID_STRING :: "c4fec28f-7966-4e95-9f94-f431cb56c3b8"

    IPageable_UUID_STRING ¶

    IPageable_UUID_STRING :: "63ee58fb-1268-4835-86da-f008ce62f0d6"

    IPipelineLibrary1_UUID_STRING ¶

    IPipelineLibrary1_UUID_STRING :: "80eabf42-2568-4e5e-bd82-c37f86961dc3"

    IPipelineLibrary_UUID_STRING ¶

    IPipelineLibrary_UUID_STRING :: "c64226a8-9201-46af-b4cc-53fb9ff7414f"

    IPipelineState_UUID_STRING ¶

    IPipelineState_UUID_STRING :: "765a30f3-f624-4c6f-a828-ace948622445"

    IProtectedResourceSession1_UUID_STRING ¶

    IProtectedResourceSession1_UUID_STRING :: "D6F12DD6-76FB-406E-8961-4296EEFC0409"

    IProtectedResourceSession_UUID_STRING ¶

    IProtectedResourceSession_UUID_STRING :: "6CD696F4-F289-40CC-8091-5A6C0A099C3D"

    IProtectedSession_UUID_STRING ¶

    IProtectedSession_UUID_STRING :: "A1533D18-0AC1-4084-85B9-89A96116806B"

    IQueryHeap_UUID_STRING ¶

    IQueryHeap_UUID_STRING :: "0d9658ae-ed45-469e-a61d-970ec583cab4"

    IResource1_UUID_STRING ¶

    IResource1_UUID_STRING :: "9D5E227A-4430-4161-88B3-3ECA6BB16E19"

    IResource2_UUID_STRING ¶

    IResource2_UUID_STRING :: "BE36EC3B-EA85-4AEB-A45A-E9D76404A495"

    IResource_UUID_STRING ¶

    IResource_UUID_STRING :: "696442be-a72e-4059-bc79-5b5c98040fad"

    IRootSignatureDeserializer_UUID_STRING ¶

    IRootSignatureDeserializer_UUID_STRING :: "34AB647B-3CC8-46AC-841B-C0965645C046"

    IRootSignature_UUID_STRING ¶

    IRootSignature_UUID_STRING :: "c54a6b66-72df-4ee8-8be5-a946a1429214"

    IShaderReflectionConstantBuffer_UUID_STRING ¶

    IShaderReflectionConstantBuffer_UUID_STRING :: "C59598B4-48B3-4869-B9B1-B1618B14A8B7"

    IShaderReflectionType_UUID_STRING ¶

    IShaderReflectionType_UUID_STRING :: "E913C351-783D-48CA-A1D1-4F306284AD56"

    IShaderReflectionVariable_UUID_STRING ¶

    IShaderReflectionVariable_UUID_STRING :: "8337A8A6-A216-444A-B2F4-314733A73AEA"

    IShaderReflection_UUID_STRING ¶

    IShaderReflection_UUID_STRING :: "5A58797D-A72C-478D-8BA2-EFC6B0EFE88E"

    ISharingContract_UUID_STRING ¶

    ISharingContract_UUID_STRING :: "0adf7d52-929c-4e61-addb-ffed30de66ef"

    IStateObjectProperties_UUID_STRING ¶

    IStateObjectProperties_UUID_STRING :: "de5fa827-9bf9-4f26-89ff-d7f56fde3860"

    IStateObject_UUID_STRING ¶

    IStateObject_UUID_STRING :: "47016943-fca8-4594-93ea-af258b55346d"

    ISwapChainAssistant_UUID_STRING ¶

    ISwapChainAssistant_UUID_STRING :: "f1df64b6-57fd-49cd-8807-c0eb88b45c8f"

    ITools_UUID_STRING ¶

    ITools_UUID_STRING :: "7071e1f0-e84b-4b33-974f-12fa49de65c5"

    IVersionedRootSignatureDeserializer_UUID_STRING ¶

    IVersionedRootSignatureDeserializer_UUID_STRING :: "7F91CE67-090C-4BB7-B78E-ED8FF2E31DA0"

    KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL ¶

    KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL :: 0xffffffff

    KEEP_UNORDERED_ACCESS_VIEWS ¶

    KEEP_UNORDERED_ACCESS_VIEWS :: 0xffffffff

    LINEAR_GAMMA ¶

    LINEAR_GAMMA :: 1.0

    MAG_FILTER_SHIFT ¶

    MAG_FILTER_SHIFT :: 2

    MAJOR_VERSION ¶

    MAJOR_VERSION :: 12

    MAX_BORDER_COLOR_COMPONENT ¶

    MAX_BORDER_COLOR_COMPONENT :: 1.0

    MAX_DEPTH ¶

    MAX_DEPTH :: 1.0

    MAX_LIVE_STATIC_SAMPLERS ¶

    MAX_LIVE_STATIC_SAMPLERS :: 2032

    MAX_MAXANISOTROPY ¶

    MAX_MAXANISOTROPY :: 16

    MAX_MULTISAMPLE_SAMPLE_COUNT ¶

    MAX_MULTISAMPLE_SAMPLE_COUNT :: 32

    MAX_POSITION_VALUE ¶

    MAX_POSITION_VALUE :: 3.402823466e+34

    MAX_ROOT_COST ¶

    MAX_ROOT_COST :: 64

    MAX_SHADER_VISIBLE_DESCRIPTOR_HEAP_SIZE_TIER_1 ¶

    MAX_SHADER_VISIBLE_DESCRIPTOR_HEAP_SIZE_TIER_1 :: 1000000

    MAX_SHADER_VISIBLE_DESCRIPTOR_HEAP_SIZE_TIER_2 ¶

    MAX_SHADER_VISIBLE_DESCRIPTOR_HEAP_SIZE_TIER_2 :: 1000000

    MAX_SHADER_VISIBLE_SAMPLER_HEAP_SIZE ¶

    MAX_SHADER_VISIBLE_SAMPLER_HEAP_SIZE :: 2048

    MAX_TEXTURE_DIMENSION_2_TO_EXP ¶

    MAX_TEXTURE_DIMENSION_2_TO_EXP :: 17

    MAX_VIEW_INSTANCE_COUNT ¶

    MAX_VIEW_INSTANCE_COUNT :: 4

    MINOR_VERSION ¶

    MINOR_VERSION :: 0

    MIN_BORDER_COLOR_COMPONENT ¶

    MIN_BORDER_COLOR_COMPONENT :: 0.0

    MIN_DEPTH ¶

    MIN_DEPTH :: 0.0

    MIN_FILTER_SHIFT ¶

    MIN_FILTER_SHIFT :: 4

    MIN_MAXANISOTROPY ¶

    MIN_MAXANISOTROPY :: 0

    MIP_FILTER_SHIFT ¶

    MIP_FILTER_SHIFT :: 0

    MIP_LOD_BIAS_MAX ¶

    MIP_LOD_BIAS_MAX :: 15.99

    MIP_LOD_BIAS_MIN ¶

    MIP_LOD_BIAS_MIN :: -16.0

    MIP_LOD_FRACTIONAL_BIT_COUNT ¶

    MIP_LOD_FRACTIONAL_BIT_COUNT :: 8

    MIP_LOD_RANGE_BIT_COUNT ¶

    MIP_LOD_RANGE_BIT_COUNT :: 8

    MULTIPLE_FENCE_WAIT_FLAG_ALL ¶

    MULTIPLE_FENCE_WAIT_FLAG_ALL :: MULTIPLE_FENCE_WAIT_FLAGS{}

    MULTIPLE_FENCE_WAIT_FLAG_ANY ¶

    MULTIPLE_FENCE_WAIT_FLAG_ANY :: MULTIPLE_FENCE_WAIT_FLAGS{.ANY}

    MULTIPLE_FENCE_WAIT_FLAG_NONE ¶

    MULTIPLE_FENCE_WAIT_FLAG_NONE :: MULTIPLE_FENCE_WAIT_FLAGS{}

    MULTISAMPLE_ANTIALIAS_LINE_WIDTH ¶

    MULTISAMPLE_ANTIALIAS_LINE_WIDTH :: 1.4

    NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT ¶

    NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT :: 0

    OS_RESERVED_REGISTER_SPACE_VALUES_END ¶

    OS_RESERVED_REGISTER_SPACE_VALUES_END :: 0xffffffff

    OS_RESERVED_REGISTER_SPACE_VALUES_START ¶

    OS_RESERVED_REGISTER_SPACE_VALUES_START :: 0xfffffff8

    PACKED_TILE ¶

    PACKED_TILE :: 0xffffffff

    PIXEL_ADDRESS_RANGE_BIT_COUNT ¶

    PIXEL_ADDRESS_RANGE_BIT_COUNT :: 15

    PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT ¶

    PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT :: 16

    PS_CS_UAV_REGISTER_COMPONENTS ¶

    PS_CS_UAV_REGISTER_COMPONENTS :: 1

    PS_CS_UAV_REGISTER_COUNT ¶

    PS_CS_UAV_REGISTER_COUNT :: 8

    PS_CS_UAV_REGISTER_READS_PER_INST ¶

    PS_CS_UAV_REGISTER_READS_PER_INST :: 1

    PS_CS_UAV_REGISTER_READ_PORTS ¶

    PS_CS_UAV_REGISTER_READ_PORTS :: 1

    PS_FRONTFACING_DEFAULT_VALUE ¶

    PS_FRONTFACING_DEFAULT_VALUE :: 0xffffffff

    PS_FRONTFACING_FALSE_VALUE ¶

    PS_FRONTFACING_FALSE_VALUE :: 0

    PS_FRONTFACING_TRUE_VALUE ¶

    PS_FRONTFACING_TRUE_VALUE :: 0xffffffff

    PS_INPUT_REGISTER_COMPONENTS ¶

    PS_INPUT_REGISTER_COMPONENTS :: 4

    PS_INPUT_REGISTER_COMPONENT_BIT_COUNT ¶

    PS_INPUT_REGISTER_COMPONENT_BIT_COUNT :: 32

    PS_INPUT_REGISTER_COUNT ¶

    PS_INPUT_REGISTER_COUNT :: 32

    PS_INPUT_REGISTER_READS_PER_INST ¶

    PS_INPUT_REGISTER_READS_PER_INST :: 2

    PS_INPUT_REGISTER_READ_PORTS ¶

    PS_INPUT_REGISTER_READ_PORTS :: 1

    PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT ¶

    PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT :: 0.0

    PS_OUTPUT_DEPTH_REGISTER_COMPONENTS ¶

    PS_OUTPUT_DEPTH_REGISTER_COMPONENTS :: 1

    PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT ¶

    PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT :: 32

    PS_OUTPUT_DEPTH_REGISTER_COUNT ¶

    PS_OUTPUT_DEPTH_REGISTER_COUNT :: 1

    PS_OUTPUT_MASK_REGISTER_COMPONENTS ¶

    PS_OUTPUT_MASK_REGISTER_COMPONENTS :: 1

    PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT ¶

    PS_OUTPUT_MASK_REGISTER_COMPONENT_BIT_COUNT :: 32

    PS_OUTPUT_MASK_REGISTER_COUNT ¶

    PS_OUTPUT_MASK_REGISTER_COUNT :: 1

    PS_OUTPUT_REGISTER_COMPONENTS ¶

    PS_OUTPUT_REGISTER_COMPONENTS :: 4

    PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT ¶

    PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT :: 32

    PS_OUTPUT_REGISTER_COUNT ¶

    PS_OUTPUT_REGISTER_COUNT :: 8

    PS_PIXEL_CENTER_FRACTIONAL_COMPONENT ¶

    PS_PIXEL_CENTER_FRACTIONAL_COMPONENT :: 0.5

    RAW_UAV_SRV_BYTE_ALIGNMENT ¶

    RAW_UAV_SRV_BYTE_ALIGNMENT :: 16

    RAYTRACING_AABB_BYTE_ALIGNMENT ¶

    RAYTRACING_AABB_BYTE_ALIGNMENT :: 8

    RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT ¶

    RAYTRACING_ACCELERATION_STRUCTURE_BYTE_ALIGNMENT :: 256

    RAYTRACING_INSTANCE_DESCS_BYTE_ALIGNMENT ¶

    RAYTRACING_INSTANCE_DESCS_BYTE_ALIGNMENT :: 16

    RAYTRACING_MAX_ATTRIBUTE_SIZE_IN_BYTES ¶

    RAYTRACING_MAX_ATTRIBUTE_SIZE_IN_BYTES :: 32

    RAYTRACING_MAX_DECLARABLE_TRACE_RECURSION_DEPTH ¶

    RAYTRACING_MAX_DECLARABLE_TRACE_RECURSION_DEPTH :: 31

    RAYTRACING_MAX_GEOMETRIES_PER_BOTTOM_LEVEL_ACCELERATION_STRUCTURE ¶

    RAYTRACING_MAX_GEOMETRIES_PER_BOTTOM_LEVEL_ACCELERATION_STRUCTURE :: 16777216

    RAYTRACING_MAX_INSTANCES_PER_TOP_LEVEL_ACCELERATION_STRUCTURE ¶

    RAYTRACING_MAX_INSTANCES_PER_TOP_LEVEL_ACCELERATION_STRUCTURE :: 16777216

    RAYTRACING_MAX_PRIMITIVES_PER_BOTTOM_LEVEL_ACCELERATION_STRUCTURE ¶

    RAYTRACING_MAX_PRIMITIVES_PER_BOTTOM_LEVEL_ACCELERATION_STRUCTURE :: 536870912

    RAYTRACING_MAX_RAY_GENERATION_SHADER_THREADS ¶

    RAYTRACING_MAX_RAY_GENERATION_SHADER_THREADS :: 1073741824

    RAYTRACING_MAX_SHADER_RECORD_STRIDE ¶

    RAYTRACING_MAX_SHADER_RECORD_STRIDE :: 4096

    RAYTRACING_SHADER_RECORD_BYTE_ALIGNMENT ¶

    RAYTRACING_SHADER_RECORD_BYTE_ALIGNMENT :: 32

    RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT ¶

    RAYTRACING_SHADER_TABLE_BYTE_ALIGNMENT :: 64

    RAYTRACING_TRANSFORM3X4_BYTE_ALIGNMENT ¶

    RAYTRACING_TRANSFORM3X4_BYTE_ALIGNMENT :: 16

    REQ_BLEND_OBJECT_COUNT_PER_DEVICE ¶

    REQ_BLEND_OBJECT_COUNT_PER_DEVICE :: 4096

    REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP ¶

    REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP :: 27

    REQ_CONSTANT_BUFFER_ELEMENT_COUNT ¶

    REQ_CONSTANT_BUFFER_ELEMENT_COUNT :: 4096

    REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE ¶

    REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_DEVICE :: 4096

    REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP ¶

    REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP :: 32

    REQ_DRAW_VERTEX_COUNT_2_TO_EXP ¶

    REQ_DRAW_VERTEX_COUNT_2_TO_EXP :: 32

    REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION ¶

    REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION :: 16384

    REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT ¶

    REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT :: 1024

    REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT ¶

    REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT :: 4096

    REQ_MAXANISOTROPY ¶

    REQ_MAXANISOTROPY :: 16

    REQ_MIP_LEVELS ¶

    REQ_MIP_LEVELS :: 15

    REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES ¶

    REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES :: 2048

    REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE ¶

    REQ_RASTERIZER_OBJECT_COUNT_PER_DEVICE :: 4096

    REQ_RENDER_TO_BUFFER_WINDOW_WIDTH ¶

    REQ_RENDER_TO_BUFFER_WINDOW_WIDTH :: 16384

    REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM ¶

    REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_A_TERM :: 128

    REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM ¶

    REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_B_TERM :: 0.25

    REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM ¶

    REQ_RESOURCE_SIZE_IN_MEGABYTES_EXPRESSION_C_TERM :: 2048

    REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP ¶

    REQ_RESOURCE_VIEW_COUNT_PER_DEVICE_2_TO_EXP :: 20

    REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE ¶

    REQ_SAMPLER_OBJECT_COUNT_PER_DEVICE :: 4096

    REQ_SUBRESOURCES ¶

    REQ_SUBRESOURCES :: 30720

    REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION ¶

    REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION :: 2048

    REQ_TEXTURE1D_U_DIMENSION ¶

    REQ_TEXTURE1D_U_DIMENSION :: 16384

    REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION ¶

    REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION :: 2048

    REQ_TEXTURE2D_U_OR_V_DIMENSION ¶

    REQ_TEXTURE2D_U_OR_V_DIMENSION :: 16384

    REQ_TEXTURE3D_U_V_OR_W_DIMENSION ¶

    REQ_TEXTURE3D_U_V_OR_W_DIMENSION :: 2048

    REQ_TEXTURECUBE_DIMENSION ¶

    REQ_TEXTURECUBE_DIMENSION :: 16384

    RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL ¶

    RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL :: 0

    RESOURCE_BARRIER_ALL_SUBRESOURCES ¶

    RESOURCE_BARRIER_ALL_SUBRESOURCES :: 0xffffffff

    RESOURCE_STATE_ALL_SHADER_RESOURCE ¶

    RESOURCE_STATE_ALL_SHADER_RESOURCE :: RESOURCE_STATES{.SHADING_RATE_SOURCE, .INDEX_BUFFER}

    RESOURCE_STATE_COMMON ¶

    RESOURCE_STATE_COMMON :: RESOURCE_STATES{}

    RESOURCE_STATE_GENERIC_READ ¶

    RESOURCE_STATE_GENERIC_READ :: RESOURCE_STATES{.VERTEX_AND_CONSTANT_BUFFER, .INDEX_BUFFER, .NON_PIXEL_SHADER_RESOURCE, .PIXEL_SHADER_RESOURCE, .INDIRECT_ARGUMENT, .COPY_SOURCE}

    RESOURCE_STATE_PRESENT ¶

    RESOURCE_STATE_PRESENT :: RESOURCE_STATES{}

    RETURN_PARAMETER_INDEX ¶

    RETURN_PARAMETER_INDEX :: -1

    RS_SET_SHADING_RATE_COMBINER_COUNT ¶

    RS_SET_SHADING_RATE_COMBINER_COUNT :: 2

    SHADER_COMPONENT_MAPPING_MASK ¶

    SHADER_COMPONENT_MAPPING_MASK :: 0x7

    SHADER_COMPONENT_MAPPING_SHIFT ¶

    SHADER_COMPONENT_MAPPING_SHIFT :: 3

    SHADER_IDENTIFIER_SIZE_IN_BYTES ¶

    SHADER_IDENTIFIER_SIZE_IN_BYTES :: 32

    SHADER_MAJOR_VERSION ¶

    SHADER_MAJOR_VERSION :: 5

    SHADER_MAX_INSTANCES ¶

    SHADER_MAX_INSTANCES :: 65535

    SHADER_MAX_INTERFACES ¶

    SHADER_MAX_INTERFACES :: 253

    SHADER_MAX_INTERFACE_CALL_SITES ¶

    SHADER_MAX_INTERFACE_CALL_SITES :: 4096

    SHADER_MAX_TYPES ¶

    SHADER_MAX_TYPES :: 65535

    SHADER_MINOR_VERSION ¶

    SHADER_MINOR_VERSION :: 1

    SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS ¶

    SHADER_REQUIRES_11_1_DOUBLE_EXTENSIONS :: 0x00000020

    SHADER_REQUIRES_11_1_SHADER_EXTENSIONS ¶

    SHADER_REQUIRES_11_1_SHADER_EXTENSIONS :: 0x00000040

    SHADER_REQUIRES_64_UAVS ¶

    SHADER_REQUIRES_64_UAVS :: 0x00000008

    SHADER_REQUIRES_DOUBLES ¶

    SHADER_REQUIRES_DOUBLES :: 0x00000001

    SHADER_REQUIRES_EARLY_DEPTH_STENCIL ¶

    SHADER_REQUIRES_EARLY_DEPTH_STENCIL :: 0x00000002

    SHADER_REQUIRES_INNER_COVERAGE ¶

    SHADER_REQUIRES_INNER_COVERAGE :: 0x00000400

    SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING ¶

    SHADER_REQUIRES_LEVEL_9_COMPARISON_FILTERING :: 0x00000080

    SHADER_REQUIRES_MINIMUM_PRECISION ¶

    SHADER_REQUIRES_MINIMUM_PRECISION :: 0x00000010

    SHADER_REQUIRES_ROVS ¶

    SHADER_REQUIRES_ROVS :: 0x00001000

    SHADER_REQUIRES_STENCIL_REF ¶

    SHADER_REQUIRES_STENCIL_REF :: 0x00000200

    SHADER_REQUIRES_TILED_RESOURCES ¶

    SHADER_REQUIRES_TILED_RESOURCES :: 0x00000100

    SHADER_REQUIRES_TYPED_UAV_LOAD_ADDITIONAL_FORMATS ¶

    SHADER_REQUIRES_TYPED_UAV_LOAD_ADDITIONAL_FORMATS :: 0x00000800

    SHADER_REQUIRES_UAVS_AT_EVERY_STAGE ¶

    SHADER_REQUIRES_UAVS_AT_EVERY_STAGE :: 0x00000004

    SHADER_REQUIRES_VIEWPORT_AND_RT_ARRAY_INDEX_FROM_ANY_SHADER_FEEDING_RASTERIZER ¶

    SHADER_REQUIRES_VIEWPORT_AND_RT_ARRAY_INDEX_FROM_ANY_SHADER_FEEDING_RASTERIZER :: 0x00002000

    SHADING_RATE_VALID_MASK ¶

    SHADING_RATE_VALID_MASK :: 3

    SHADING_RATE_X_AXIS_SHIFT ¶

    SHADING_RATE_X_AXIS_SHIFT :: 2

    SHIFT_INSTRUCTION_PAD_VALUE ¶

    SHIFT_INSTRUCTION_PAD_VALUE :: 0

    SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT ¶

    SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT :: 5

    SIMULTANEOUS_RENDER_TARGET_COUNT ¶

    SIMULTANEOUS_RENDER_TARGET_COUNT :: 8

    SMALL_MSAA_RESOURCE_PLACEMENT_ALIGNMENT ¶

    SMALL_MSAA_RESOURCE_PLACEMENT_ALIGNMENT :: 65536

    SMALL_RESOURCE_PLACEMENT_ALIGNMENT ¶

    SMALL_RESOURCE_PLACEMENT_ALIGNMENT :: 4096

    SO_BUFFER_MAX_STRIDE_IN_BYTES ¶

    SO_BUFFER_MAX_STRIDE_IN_BYTES :: 2048

    SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES ¶

    SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES :: 512

    SO_BUFFER_SLOT_COUNT ¶

    SO_BUFFER_SLOT_COUNT :: 4

    SO_DDI_REGISTER_INDEX_DENOTING_GAP ¶

    SO_DDI_REGISTER_INDEX_DENOTING_GAP :: 0xffffffff

    SO_NO_RASTERIZED_STREAM ¶

    SO_NO_RASTERIZED_STREAM :: 0xffffffff

    SO_OUTPUT_COMPONENT_COUNT ¶

    SO_OUTPUT_COMPONENT_COUNT :: 128

    SO_STREAM_COUNT ¶

    SO_STREAM_COUNT :: 4

    SPEC_DATE_DAY ¶

    SPEC_DATE_DAY :: 14

    SPEC_DATE_MONTH ¶

    SPEC_DATE_MONTH :: 11

    SPEC_DATE_YEAR ¶

    SPEC_DATE_YEAR :: 2014

    SPEC_VERSION ¶

    SPEC_VERSION :: 1.16

    SRGB_GAMMA ¶

    SRGB_GAMMA :: 2.2

    SRGB_TO_FLOAT_DENOMINATOR_1 ¶

    SRGB_TO_FLOAT_DENOMINATOR_1 :: 12.92

    SRGB_TO_FLOAT_DENOMINATOR_2 ¶

    SRGB_TO_FLOAT_DENOMINATOR_2 :: 1.055

    SRGB_TO_FLOAT_EXPONENT ¶

    SRGB_TO_FLOAT_EXPONENT :: 2.4

    SRGB_TO_FLOAT_OFFSET ¶

    SRGB_TO_FLOAT_OFFSET :: 0.055

    SRGB_TO_FLOAT_THRESHOLD ¶

    SRGB_TO_FLOAT_THRESHOLD :: 0.04045

    SRGB_TO_FLOAT_TOLERANCE_IN_ULP ¶

    SRGB_TO_FLOAT_TOLERANCE_IN_ULP :: 0.5

    STANDARD_COMPONENT_BIT_COUNT ¶

    STANDARD_COMPONENT_BIT_COUNT :: 32

    STANDARD_COMPONENT_BIT_COUNT_DOUBLED ¶

    STANDARD_COMPONENT_BIT_COUNT_DOUBLED :: 64

    STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE ¶

    STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE :: 4

    STANDARD_PIXEL_COMPONENT_COUNT ¶

    STANDARD_PIXEL_COMPONENT_COUNT :: 128

    STANDARD_PIXEL_ELEMENT_COUNT ¶

    STANDARD_PIXEL_ELEMENT_COUNT :: 32

    STANDARD_VECTOR_SIZE ¶

    STANDARD_VECTOR_SIZE :: 4

    STANDARD_VERTEX_ELEMENT_COUNT ¶

    STANDARD_VERTEX_ELEMENT_COUNT :: 32

    STANDARD_VERTEX_TOTAL_COMPONENT_COUNT ¶

    STANDARD_VERTEX_TOTAL_COMPONENT_COUNT :: 64

    SUBPIXEL_FRACTIONAL_BIT_COUNT ¶

    SUBPIXEL_FRACTIONAL_BIT_COUNT :: 8

    SUBTEXEL_FRACTIONAL_BIT_COUNT ¶

    SUBTEXEL_FRACTIONAL_BIT_COUNT :: 8

    SYSTEM_RESERVED_REGISTER_SPACE_VALUES_END ¶

    SYSTEM_RESERVED_REGISTER_SPACE_VALUES_END :: 0xffffffff

    SYSTEM_RESERVED_REGISTER_SPACE_VALUES_START ¶

    SYSTEM_RESERVED_REGISTER_SPACE_VALUES_START :: 0xfffffff0

    TESSELLATOR_MAX_EVEN_TESSELLATION_FACTOR ¶

    TESSELLATOR_MAX_EVEN_TESSELLATION_FACTOR :: 64

    TESSELLATOR_MAX_ISOLINE_DENSITY_TESSELLATION_FACTOR ¶

    TESSELLATOR_MAX_ISOLINE_DENSITY_TESSELLATION_FACTOR :: 64

    TESSELLATOR_MAX_ODD_TESSELLATION_FACTOR ¶

    TESSELLATOR_MAX_ODD_TESSELLATION_FACTOR :: 63

    TESSELLATOR_MAX_TESSELLATION_FACTOR ¶

    TESSELLATOR_MAX_TESSELLATION_FACTOR :: 64

    TESSELLATOR_MIN_EVEN_TESSELLATION_FACTOR ¶

    TESSELLATOR_MIN_EVEN_TESSELLATION_FACTOR :: 2

    TESSELLATOR_MIN_ISOLINE_DENSITY_TESSELLATION_FACTOR ¶

    TESSELLATOR_MIN_ISOLINE_DENSITY_TESSELLATION_FACTOR :: 1

    TESSELLATOR_MIN_ODD_TESSELLATION_FACTOR ¶

    TESSELLATOR_MIN_ODD_TESSELLATION_FACTOR :: 1

    TEXEL_ADDRESS_RANGE_BIT_COUNT ¶

    TEXEL_ADDRESS_RANGE_BIT_COUNT :: 16

    TEXTURE_DATA_PITCH_ALIGNMENT ¶

    TEXTURE_DATA_PITCH_ALIGNMENT :: 256

    TEXTURE_DATA_PLACEMENT_ALIGNMENT ¶

    TEXTURE_DATA_PLACEMENT_ALIGNMENT :: 512

    TILED_RESOURCE_TILE_SIZE_IN_BYTES ¶

    TILED_RESOURCE_TILE_SIZE_IN_BYTES :: 65536

    TRACKED_WORKLOAD_MAX_INSTANCES ¶

    TRACKED_WORKLOAD_MAX_INSTANCES :: 32

    UAV_COUNTER_PLACEMENT_ALIGNMENT ¶

    UAV_COUNTER_PLACEMENT_ALIGNMENT :: 4096

    UAV_SLOT_COUNT ¶

    UAV_SLOT_COUNT :: 64

    UNBOUND_MEMORY_ACCESS_RESULT ¶

    UNBOUND_MEMORY_ACCESS_RESULT :: 0

    VIDEO_DECODE_MAX_ARGUMENTS ¶

    VIDEO_DECODE_MAX_ARGUMENTS :: 10

    VIDEO_DECODE_MAX_HISTOGRAM_COMPONENTS ¶

    VIDEO_DECODE_MAX_HISTOGRAM_COMPONENTS :: 4

    VIDEO_DECODE_MIN_BITSTREAM_OFFSET_ALIGNMENT ¶

    VIDEO_DECODE_MIN_BITSTREAM_OFFSET_ALIGNMENT :: 256

    VIDEO_DECODE_MIN_HISTOGRAM_OFFSET_ALIGNMENT ¶

    VIDEO_DECODE_MIN_HISTOGRAM_OFFSET_ALIGNMENT :: 256

    VIDEO_DECODE_STATUS_MACROBLOCKS_AFFECTED_UNKNOWN ¶

    VIDEO_DECODE_STATUS_MACROBLOCKS_AFFECTED_UNKNOWN :: 0xffffffff

    VIDEO_PROCESS_MAX_FILTERS ¶

    VIDEO_PROCESS_MAX_FILTERS :: 32

    VIDEO_PROCESS_STEREO_VIEWS ¶

    VIDEO_PROCESS_STEREO_VIEWS :: 2

    VIEWPORT_AND_SCISSORRECT_MAX_INDEX ¶

    VIEWPORT_AND_SCISSORRECT_MAX_INDEX :: 15

    VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE ¶

    VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE :: 16

    VIEWPORT_BOUNDS_MAX ¶

    VIEWPORT_BOUNDS_MAX :: 32767

    VIEWPORT_BOUNDS_MIN ¶

    VIEWPORT_BOUNDS_MIN :: -32768

    VS_INPUT_REGISTER_COMPONENTS ¶

    VS_INPUT_REGISTER_COMPONENTS :: 4

    VS_INPUT_REGISTER_COMPONENT_BIT_COUNT ¶

    VS_INPUT_REGISTER_COMPONENT_BIT_COUNT :: 32

    VS_INPUT_REGISTER_COUNT ¶

    VS_INPUT_REGISTER_COUNT :: 32

    VS_INPUT_REGISTER_READS_PER_INST ¶

    VS_INPUT_REGISTER_READS_PER_INST :: 2

    VS_INPUT_REGISTER_READ_PORTS ¶

    VS_INPUT_REGISTER_READ_PORTS :: 1

    VS_OUTPUT_REGISTER_COMPONENTS ¶

    VS_OUTPUT_REGISTER_COMPONENTS :: 4

    VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT ¶

    VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT :: 32

    VS_OUTPUT_REGISTER_COUNT ¶

    VS_OUTPUT_REGISTER_COUNT :: 32

    WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT ¶

    WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT :: 10

    WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP ¶

    WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP :: 25

    WHQL_DRAW_VERTEX_COUNT_2_TO_EXP ¶

    WHQL_DRAW_VERTEX_COUNT_2_TO_EXP :: 25

    Variables

    DEBUG_D3D12 ¶

    @(link_name="DXGI_DEBUG_D3D12")
    DEBUG_D3D12: sys_windows.GUID

    ExperimentalShaderModels ¶

    ExperimentalShaderModels: sys_windows.GUID

    ICommandAllocator_UUID ¶

    ICommandAllocator_UUID: ^sys_windows.GUID = …

    ICommandList_UUID ¶

    ICommandList_UUID: ^sys_windows.GUID = …

    ICommandQueue_UUID ¶

    ICommandQueue_UUID: ^sys_windows.GUID = …

    ICommandSignature_UUID ¶

    ICommandSignature_UUID: ^sys_windows.GUID = …

    ID3DDestructionNotifier_UUID ¶

    ID3DDestructionNotifier_UUID: ^sys_windows.GUID = …

    IDebug1_UUID ¶

    IDebug1_UUID: ^sys_windows.GUID = …

    IDebug3_UUID ¶

    IDebug3_UUID: ^sys_windows.GUID = …

    IDebugCommandList1_UUID ¶

    IDebugCommandList1_UUID: ^sys_windows.GUID = …

    IDebugCommandList2_UUID ¶

    IDebugCommandList2_UUID: ^sys_windows.GUID = …

    IDebugCommandList_UUID ¶

    IDebugCommandList_UUID: ^sys_windows.GUID = …

    IDebugCommandQueue_UUID ¶

    IDebugCommandQueue_UUID: ^sys_windows.GUID = …

    IDebugDevice1_UUID ¶

    IDebugDevice1_UUID: ^sys_windows.GUID = …

    IDebugDevice2_UUID ¶

    IDebugDevice2_UUID: ^sys_windows.GUID = …

    IDebugDevice_UUID ¶

    IDebugDevice_UUID: ^sys_windows.GUID = …

    IDebug_UUID ¶

    IDebug_UUID: ^sys_windows.GUID = …

    IDescriptorHeap_UUID ¶

    IDescriptorHeap_UUID: ^sys_windows.GUID = …

    IDevice1_UUID ¶

    IDevice1_UUID: ^sys_windows.GUID = …

    IDevice2_UUID ¶

    IDevice2_UUID: ^sys_windows.GUID = …

    IDevice3_UUID ¶

    IDevice3_UUID: ^sys_windows.GUID = …

    IDevice4_UUID ¶

    IDevice4_UUID: ^sys_windows.GUID = …

    IDevice5_UUID ¶

    IDevice5_UUID: ^sys_windows.GUID = …

    IDevice6_UUID ¶

    IDevice6_UUID: ^sys_windows.GUID = …

    IDevice7_UUID ¶

    IDevice7_UUID: ^sys_windows.GUID = …

    IDevice8_UUID ¶

    IDevice8_UUID: ^sys_windows.GUID = …

    IDeviceChild_UUID ¶

    IDeviceChild_UUID: ^sys_windows.GUID = …

    IDeviceRemovedExtendedData1_UUID ¶

    IDeviceRemovedExtendedData1_UUID: ^sys_windows.GUID = …

    IDeviceRemovedExtendedDataSettings1_UUID ¶

    IDeviceRemovedExtendedDataSettings1_UUID: ^sys_windows.GUID = …

    IDeviceRemovedExtendedDataSettings_UUID ¶

    IDeviceRemovedExtendedDataSettings_UUID: ^sys_windows.GUID = …

    IDeviceRemovedExtendedData_UUID ¶

    IDeviceRemovedExtendedData_UUID: ^sys_windows.GUID = …

    IDevice_UUID ¶

    IDevice_UUID: ^sys_windows.GUID = …

    IFence1_UUID ¶

    IFence1_UUID: ^sys_windows.GUID = …

    IFence_UUID ¶

    IFence_UUID: ^sys_windows.GUID = …

    IFunctionParameterReflection_UUID ¶

    IFunctionParameterReflection_UUID: ^sys_windows.GUID = …

    IFunctionReflection_UUID ¶

    IFunctionReflection_UUID: ^sys_windows.GUID = …

    IGraphicsCommandList1_UUID ¶

    IGraphicsCommandList1_UUID: ^sys_windows.GUID = …

    IGraphicsCommandList2_UUID ¶

    IGraphicsCommandList2_UUID: ^sys_windows.GUID = …

    IGraphicsCommandList3_UUID ¶

    IGraphicsCommandList3_UUID: ^sys_windows.GUID = …

    IGraphicsCommandList4_UUID ¶

    IGraphicsCommandList4_UUID: ^sys_windows.GUID = …

    IGraphicsCommandList5_UUID ¶

    IGraphicsCommandList5_UUID: ^sys_windows.GUID = …

    IGraphicsCommandList6_UUID ¶

    IGraphicsCommandList6_UUID: ^sys_windows.GUID = …

    IGraphicsCommandList_UUID ¶

    IGraphicsCommandList_UUID: ^sys_windows.GUID = …

    IHeap1_UUID ¶

    IHeap1_UUID: ^sys_windows.GUID = …

    IHeap_UUID ¶

    IHeap_UUID: ^sys_windows.GUID = …

    IInfoQueue1_UUID ¶

    IInfoQueue1_UUID: ^sys_windows.GUID = …

    IInfoQueue_UUID ¶

    IInfoQueue_UUID: ^sys_windows.GUID = …

    ILibraryReflection_UUID ¶

    ILibraryReflection_UUID: ^sys_windows.GUID = …

    ILifetimeOwner_UUID ¶

    ILifetimeOwner_UUID: ^sys_windows.GUID = …

    ILifetimeTracker_UUID ¶

    ILifetimeTracker_UUID: ^sys_windows.GUID = …

    IMetaCommand_UUID ¶

    IMetaCommand_UUID: ^sys_windows.GUID = …

    IObject_UUID ¶

    IObject_UUID: ^sys_windows.GUID = …

    IPageable_UUID ¶

    IPageable_UUID: ^sys_windows.GUID = …

    IPipelineLibrary1_UUID ¶

    IPipelineLibrary1_UUID: ^sys_windows.GUID = …

    IPipelineLibrary_UUID ¶

    IPipelineLibrary_UUID: ^sys_windows.GUID = …

    IPipelineState_UUID ¶

    IPipelineState_UUID: ^sys_windows.GUID = …

    IProtectedResourceSession1_UUID ¶

    IProtectedResourceSession1_UUID: ^sys_windows.GUID = …

    IProtectedResourceSession_UUID ¶

    IProtectedResourceSession_UUID: ^sys_windows.GUID = …

    IProtectedSession_UUID ¶

    IProtectedSession_UUID: ^sys_windows.GUID = …

    IQueryHeap_UUID ¶

    IQueryHeap_UUID: ^sys_windows.GUID = …

    IResource1_UUID ¶

    IResource1_UUID: ^sys_windows.GUID = …

    IResource2_UUID ¶

    IResource2_UUID: ^sys_windows.GUID = …

    IResource_UUID ¶

    IResource_UUID: ^sys_windows.GUID = …

    IRootSignatureDeserializer_UUID ¶

    IRootSignatureDeserializer_UUID: ^sys_windows.GUID = …

    IRootSignature_UUID ¶

    IRootSignature_UUID: ^sys_windows.GUID = …

    IShaderReflectionConstantBuffer_UUID ¶

    IShaderReflectionConstantBuffer_UUID: ^sys_windows.GUID = …

    IShaderReflectionType_UUID ¶

    IShaderReflectionType_UUID: ^sys_windows.GUID = …

    IShaderReflectionVariable_UUID ¶

    IShaderReflectionVariable_UUID: ^sys_windows.GUID = …

    IShaderReflection_UUID ¶

    IShaderReflection_UUID: ^sys_windows.GUID = …

    ISharingContract_UUID ¶

    ISharingContract_UUID: ^sys_windows.GUID = …

    IStateObjectProperties_IID ¶

    IStateObjectProperties_IID: ^sys_windows.GUID = …

    IStateObject_UUID ¶

    IStateObject_UUID: ^sys_windows.GUID = …

    ISwapChainAssistant_UUID ¶

    ISwapChainAssistant_UUID: ^sys_windows.GUID = …

    ITools_UUID ¶

    ITools_UUID: ^sys_windows.GUID = …

    IVersionedRootSignatureDeserializer_UUID ¶

    IVersionedRootSignatureDeserializer_UUID: ^sys_windows.GUID = …

    MetaCommand ¶

    MetaCommand: sys_windows.GUID

    PROTECTED_RESOURCES_SESSION_HARDWARE_PROTECTED ¶

    @(link_name="D3D12_PROTECTED_RESOURCES_SESSION_HARDWARE_PROTECTED")
    PROTECTED_RESOURCES_SESSION_HARDWARE_PROTECTED: sys_windows.GUID

    TEXTURE_LAYOUT_64KB_STANDARD_SWIZZLE ¶

    TEXTURE_LAYOUT_64KB_STANDARD_SWIZZLE: sys_windows.GUID

    TEXTURE_LAYOUT_ROW_MAJOR ¶

    TEXTURE_LAYOUT_ROW_MAJOR: sys_windows.GUID

    TiledResourceTier4 ¶

    TiledResourceTier4: sys_windows.GUID

    WKPDID_CommentStringW ¶

    WKPDID_CommentStringW: sys_windows.GUID

    WKPDID_D3DDebugObjectNameW ¶

    WKPDID_D3DDebugObjectNameW: sys_windows.GUID

    Procedures

    CreateDevice ¶

    CreateDevice :: proc "stdcall" (pAdapter: ^directx_dxgi.IUnknown, MinimumFeatureLevel: FEATURE_LEVEL, riid: ^sys_windows.GUID, ppDevice: ^rawptr) -> sys_windows.HRESULT ---

    CreateRootSignatureDeserializer ¶

    CreateRootSignatureDeserializer :: proc "stdcall" (pSrcData: rawptr, SrcDataSizeInBytes: uint, pRootSignatureDeserializerInterface: ^sys_windows.GUID, ppRootSignatureDeserializer: ^rawptr) -> sys_windows.HRESULT ---

    CreateVersionedRootSignatureDeserializer ¶

    CreateVersionedRootSignatureDeserializer :: proc "stdcall" (pSrcData: rawptr, SrcDataSizeInBytes: uint, pRootSignatureDeserializerInterface: ^sys_windows.GUID, ppRootSignatureDeserializer: ^rawptr) -> sys_windows.HRESULT ---

    EnableExperimentalFeatures ¶

    EnableExperimentalFeatures :: proc "stdcall" (NumFeatures: u32, pIIDs: ^sys_windows.GUID, pConfigurationStructs: rawptr, pConfigurationStructSizes: ^u32) -> sys_windows.HRESULT ---

    GetDebugInterface ¶

    GetDebugInterface :: proc "stdcall" (riid: ^sys_windows.GUID, ppvDebug: ^rawptr) -> sys_windows.HRESULT ---

    SerializeRootSignature ¶

    SerializeRootSignature :: proc "stdcall" (pRootSignature: ^ROOT_SIGNATURE_DESC, Version: ROOT_SIGNATURE_VERSION, ppBlob: ^^directx_d3d_compiler.ID3D10Blob, ppErrorBlob: ^^directx_d3d_compiler.ID3D10Blob) -> sys_windows.HRESULT ---

    SerializeVersionedRootSignature ¶

    SerializeVersionedRootSignature :: proc "stdcall" (pRootSignature: ^VERSIONED_ROOT_SIGNATURE_DESC, ppBlob: ^^directx_d3d_compiler.ID3D10Blob, ppErrorBlob: ^^directx_d3d_compiler.ID3D10Blob) -> sys_windows.HRESULT ---

    shver_get_major ¶

    shver_get_major :: proc "contextless" (version: u32) -> u8 {…}

    shver_get_minor ¶

    shver_get_minor :: proc "contextless" (version: u32) -> u8 {…}

    shver_get_type ¶

    shver_get_type :: proc "contextless" (version: u32) -> SHADER_VERSION_TYPE {…}

    Procedure Groups

    This section is empty.

    Source Files

    Generation Information

    Generated with odin version dev-2024-03 (vendor "odin") Windows_amd64 @ 2024-03-27 21:08:31.224345300 +0000 UTC