// ------------------------------------------------------------------------------ // // This code was generated by a tool. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // // ------------------------------------------------------------------------------ namespace Win32.Graphics.Direct3D12; /// /// D3D12_COMMAND_QUEUE_DESC public partial struct CommandQueueDescription { /// public CommandListType Type; /// public int Priority; /// public CommandQueueFlags Flags; /// public uint NodeMask; } /// /// D3D12_INPUT_ELEMENT_DESC public partial struct InputElementDescription { /// public unsafe byte* SemanticName; /// public uint SemanticIndex; /// public Graphics.Dxgi.Common.Format Format; /// public uint InputSlot; /// public uint AlignedByteOffset; /// public InputClassification InputSlotClass; /// public uint InstanceDataStepRate; } /// /// D3D12_SO_DECLARATION_ENTRY public partial struct SODeclarationEntry { /// public uint Stream; /// public unsafe byte* SemanticName; /// public uint SemanticIndex; /// public byte StartComponent; /// public byte ComponentCount; /// public byte OutputSlot; } /// /// D3D12_BOX public partial struct Box { /// public uint left; /// public uint top; /// public uint front; /// public uint right; /// public uint bottom; /// public uint back; } /// /// D3D12_DEPTH_STENCILOP_DESC public partial struct DepthStencilOperationDescription { /// public StencilOperation StencilFailOp; /// public StencilOperation StencilDepthFailOp; /// public StencilOperation StencilPassOp; /// public ComparisonFunction StencilFunc; } /// /// D3D12_DEPTH_STENCIL_DESC public partial struct DepthStencilDescription { /// public Bool32 DepthEnable; /// public DepthWriteMask DepthWriteMask; /// public ComparisonFunction DepthFunc; /// public Bool32 StencilEnable; /// public byte StencilReadMask; /// public byte StencilWriteMask; /// public DepthStencilOperationDescription FrontFace; /// public DepthStencilOperationDescription BackFace; } /// /// D3D12_DEPTH_STENCIL_DESC1 public partial struct DepthStencilDescription1 { /// public Bool32 DepthEnable; /// public DepthWriteMask DepthWriteMask; /// public ComparisonFunction DepthFunc; /// public Bool32 StencilEnable; /// public byte StencilReadMask; /// public byte StencilWriteMask; /// public DepthStencilOperationDescription FrontFace; /// public DepthStencilOperationDescription BackFace; /// public Bool32 DepthBoundsTestEnable; } /// /// D3D12_DEPTH_STENCILOP_DESC1 public partial struct DepthStencilOpDescription1 { /// public StencilOperation StencilFailOp; /// public StencilOperation StencilDepthFailOp; /// public StencilOperation StencilPassOp; /// public ComparisonFunction StencilFunc; /// public byte StencilReadMask; /// public byte StencilWriteMask; } /// /// D3D12_DEPTH_STENCIL_DESC2 public partial struct DepthStencilDescription2 { /// public Bool32 DepthEnable; /// public DepthWriteMask DepthWriteMask; /// public ComparisonFunction DepthFunc; /// public Bool32 StencilEnable; /// public DepthStencilOpDescription1 FrontFace; /// public DepthStencilOpDescription1 BackFace; /// public Bool32 DepthBoundsTestEnable; } /// /// D3D12_RENDER_TARGET_BLEND_DESC public partial struct RenderTargetBlendDescription { /// public Bool32 BlendEnable; /// public Bool32 LogicOpEnable; /// public Blend SrcBlend; /// public Blend DestBlend; /// public BlendOperation BlendOp; /// public Blend SrcBlendAlpha; /// public Blend DestBlendAlpha; /// public BlendOperation BlendOpAlpha; /// public LogicOperation LogicOp; /// public ColorWriteEnable RenderTargetWriteMask; } /// /// D3D12_BLEND_DESC public partial struct BlendDescription { /// public Bool32 AlphaToCoverageEnable; /// public Bool32 IndependentBlendEnable; /// public RenderTarget__FixedBuffer RenderTarget; public unsafe struct RenderTarget__FixedBuffer { public RenderTargetBlendDescription e0; public RenderTargetBlendDescription e1; public RenderTargetBlendDescription e2; public RenderTargetBlendDescription e3; public RenderTargetBlendDescription e4; public RenderTargetBlendDescription e5; public RenderTargetBlendDescription e6; public RenderTargetBlendDescription e7; [UnscopedRef] public ref RenderTargetBlendDescription this[int index] { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref AsSpan()[index]; } } [UnscopedRef] [MethodImpl(MethodImplOptions.AggressiveInlining)] public Span AsSpan() { return MemoryMarshal.CreateSpan(ref e0, 8); } } } /// /// D3D12_RASTERIZER_DESC public partial struct RasterizerDescription { /// public FillMode FillMode; /// public CullMode CullMode; /// public Bool32 FrontCounterClockwise; /// public int DepthBias; /// public float DepthBiasClamp; /// public float SlopeScaledDepthBias; /// public Bool32 DepthClipEnable; /// public Bool32 MultisampleEnable; /// public Bool32 AntialiasedLineEnable; /// public uint ForcedSampleCount; /// public ConservativeRasterizationMode ConservativeRaster; } /// /// D3D12_RASTERIZER_DESC1 public partial struct RasterizerDescription1 { /// public FillMode FillMode; /// public CullMode CullMode; /// public Bool32 FrontCounterClockwise; /// public float DepthBias; /// public float DepthBiasClamp; /// public float SlopeScaledDepthBias; /// public Bool32 DepthClipEnable; /// public Bool32 MultisampleEnable; /// public Bool32 AntialiasedLineEnable; /// public uint ForcedSampleCount; /// public ConservativeRasterizationMode ConservativeRaster; } /// /// D3D12_RASTERIZER_DESC2 public partial struct RasterizerDescription2 { /// public FillMode FillMode; /// public CullMode CullMode; /// public Bool32 FrontCounterClockwise; /// public float DepthBias; /// public float DepthBiasClamp; /// public float SlopeScaledDepthBias; /// public Bool32 DepthClipEnable; /// public LineRasterizationMode LineRasterizationMode; /// public uint ForcedSampleCount; /// public ConservativeRasterizationMode ConservativeRaster; } /// /// D3D12_SHADER_BYTECODE public partial struct ShaderBytecode { /// public unsafe void* pShaderBytecode; /// public nuint BytecodeLength; } /// /// D3D12_STREAM_OUTPUT_DESC public partial struct StreamOutputDescription { /// public unsafe SODeclarationEntry* pSODeclaration; /// public uint NumEntries; /// public unsafe uint* pBufferStrides; /// public uint NumStrides; /// public uint RasterizedStream; } /// /// D3D12_INPUT_LAYOUT_DESC public partial struct InputLayoutDescription { /// public unsafe InputElementDescription* pInputElementDescs; /// public uint NumElements; } /// /// D3D12_CACHED_PIPELINE_STATE public partial struct CachedPipelineState { /// public unsafe void* pCachedBlob; /// public nuint CachedBlobSizeInBytes; } /// /// D3D12_GRAPHICS_PIPELINE_STATE_DESC public partial struct GraphicsPipelineStateDescription { /// public unsafe ID3D12RootSignature* pRootSignature; /// public ShaderBytecode VS; /// public ShaderBytecode PS; /// public ShaderBytecode DS; /// public ShaderBytecode HS; /// public ShaderBytecode GS; /// public StreamOutputDescription StreamOutput; /// public BlendDescription BlendState; /// public uint SampleMask; /// public RasterizerDescription RasterizerState; /// public DepthStencilDescription DepthStencilState; /// public InputLayoutDescription InputLayout; /// public IndexBufferStripCutValue IBStripCutValue; /// public PrimitiveTopologyType PrimitiveTopologyType; /// public uint NumRenderTargets; /// public RTVFormats__FixedBuffer RTVFormats; public unsafe struct RTVFormats__FixedBuffer { public Graphics.Dxgi.Common.Format e0; public Graphics.Dxgi.Common.Format e1; public Graphics.Dxgi.Common.Format e2; public Graphics.Dxgi.Common.Format e3; public Graphics.Dxgi.Common.Format e4; public Graphics.Dxgi.Common.Format e5; public Graphics.Dxgi.Common.Format e6; public Graphics.Dxgi.Common.Format e7; [UnscopedRef] public ref Graphics.Dxgi.Common.Format this[int index] { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref AsSpan()[index]; } } [UnscopedRef] [MethodImpl(MethodImplOptions.AggressiveInlining)] public Span AsSpan() { return MemoryMarshal.CreateSpan(ref e0, 8); } } /// public Graphics.Dxgi.Common.Format DSVFormat; /// public Graphics.Dxgi.Common.SampleDescription SampleDesc; /// public uint NodeMask; /// public CachedPipelineState CachedPSO; /// public PipelineStateFlags Flags; } /// /// D3D12_COMPUTE_PIPELINE_STATE_DESC public partial struct ComputePipelineStateDescription { /// public unsafe ID3D12RootSignature* pRootSignature; /// public ShaderBytecode CS; /// public uint NodeMask; /// public CachedPipelineState CachedPSO; /// public PipelineStateFlags Flags; } /// /// D3D12_RT_FORMAT_ARRAY public partial struct RtFormatArray { /// public RTFormats__FixedBuffer RTFormats; public unsafe struct RTFormats__FixedBuffer { public Graphics.Dxgi.Common.Format e0; public Graphics.Dxgi.Common.Format e1; public Graphics.Dxgi.Common.Format e2; public Graphics.Dxgi.Common.Format e3; public Graphics.Dxgi.Common.Format e4; public Graphics.Dxgi.Common.Format e5; public Graphics.Dxgi.Common.Format e6; public Graphics.Dxgi.Common.Format e7; [UnscopedRef] public ref Graphics.Dxgi.Common.Format this[int index] { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref AsSpan()[index]; } } [UnscopedRef] [MethodImpl(MethodImplOptions.AggressiveInlining)] public Span AsSpan() { return MemoryMarshal.CreateSpan(ref e0, 8); } } /// public uint NumRenderTargets; } /// /// D3D12_PIPELINE_STATE_STREAM_DESC public partial struct PipelineStateStreamDescription { /// public nuint SizeInBytes; /// public unsafe void* pPipelineStateSubobjectStream; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS public partial struct FeatureDataD3D12Options { /// public Bool32 DoublePrecisionFloatShaderOps; /// public Bool32 OutputMergerLogicOp; /// public ShaderMinPrecisionSupport MinPrecisionSupport; /// public TiledResourcesTier TiledResourcesTier; /// public ResourceBindingTier ResourceBindingTier; /// public Bool32 PSSpecifiedStencilRefSupported; /// public Bool32 TypedUAVLoadAdditionalFormats; /// public Bool32 ROVsSupported; /// public ConservativeRasterizationTier ConservativeRasterizationTier; /// public uint MaxGPUVirtualAddressBitsPerResource; /// public Bool32 StandardSwizzle64KBSupported; /// public CrossNodeSharingTier CrossNodeSharingTier; /// public Bool32 CrossAdapterRowMajorTextureSupported; /// public Bool32 VPAndRTArrayIndexFromAnyShaderFeedingRasterizerSupportedWithoutGSEmulation; /// public ResourceHeapTier ResourceHeapTier; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS1 public partial struct FeatureDataD3D12Options1 { /// public Bool32 WaveOps; /// public uint WaveLaneCountMin; /// public uint WaveLaneCountMax; /// public uint TotalLaneCount; /// public Bool32 ExpandedComputeResourceStates; /// public Bool32 Int64ShaderOps; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS2 public partial struct FeatureDataD3D12Options2 { /// public Bool32 DepthBoundsTestSupported; /// public ProgrammableSamplePositionsTier ProgrammableSamplePositionsTier; } /// /// D3D12_FEATURE_DATA_ROOT_SIGNATURE public partial struct FeatureDataRootSignature { /// public RootSignatureVersion HighestVersion; } /// /// D3D12_FEATURE_DATA_ARCHITECTURE public partial struct FeatureDataArchitecture { /// public uint NodeIndex; /// public Bool32 TileBasedRenderer; /// public Bool32 UMA; /// public Bool32 CacheCoherentUMA; } /// /// D3D12_FEATURE_DATA_ARCHITECTURE1 public partial struct FeatureDataArchitecture1 { /// public uint NodeIndex; /// public Bool32 TileBasedRenderer; /// public Bool32 UMA; /// public Bool32 CacheCoherentUMA; /// public Bool32 IsolatedMMU; } /// /// D3D12_FEATURE_DATA_FEATURE_LEVELS public partial struct FeatureDataFeatureLevels { /// public uint NumFeatureLevels; /// public unsafe Graphics.Direct3D.FeatureLevel* pFeatureLevelsRequested; /// public Graphics.Direct3D.FeatureLevel MaxSupportedFeatureLevel; } /// /// D3D12_FEATURE_DATA_SHADER_MODEL public partial struct FeatureDataShaderModel { /// public ShaderModel HighestShaderModel; } /// /// D3D12_FEATURE_DATA_FORMAT_SUPPORT public partial struct FeatureDataFormatSupport { /// public Graphics.Dxgi.Common.Format Format; /// public FormatSupport1 Support1; /// public FormatSupport2 Support2; } /// /// D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS public partial struct FeatureDataMultisampleQualityLevels { /// public Graphics.Dxgi.Common.Format Format; /// public uint SampleCount; /// public MultisampleQualityLevelFlags Flags; /// public uint NumQualityLevels; } /// /// D3D12_FEATURE_DATA_FORMAT_INFO public partial struct FeatureDataFormatInfo { /// public Graphics.Dxgi.Common.Format Format; /// public byte PlaneCount; } /// /// D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT public partial struct FeatureDataGpuVirtualAddressSupport { /// public uint MaxGPUVirtualAddressBitsPerResource; /// public uint MaxGPUVirtualAddressBitsPerProcess; } /// /// D3D12_FEATURE_DATA_SHADER_CACHE public partial struct FeatureDataShaderCache { /// public ShaderCacheSupportFlags SupportFlags; } /// /// D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY public partial struct FeatureDataCommandQueuePriority { /// public CommandListType CommandListType; /// public uint Priority; /// public Bool32 PriorityForTypeIsSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS3 public partial struct FeatureDataD3D12Options3 { /// public Bool32 CopyQueueTimestampQueriesSupported; /// public Bool32 CastingFullyTypedFormatSupported; /// public CommandListSupportFlags WriteBufferImmediateSupportFlags; /// public ViewInstancingTier ViewInstancingTier; /// public Bool32 BarycentricsSupported; } /// /// D3D12_FEATURE_DATA_EXISTING_HEAPS public partial struct FeatureDataExistingHeaps { /// public Bool32 Supported; } /// /// D3D12_FEATURE_DATA_DISPLAYABLE public partial struct FeatureDataDisplayable { /// public Bool32 DisplayableTexture; /// public SharedResourceCompatibilityTier SharedResourceCompatibilityTier; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS4 public partial struct FeatureDataD3D12Options4 { /// public Bool32 MSAA64KBAlignedTextureSupported; /// public SharedResourceCompatibilityTier SharedResourceCompatibilityTier; /// public Bool32 Native16BitShaderOpsSupported; } /// /// D3D12_FEATURE_DATA_SERIALIZATION public partial struct FeatureDataSerialization { /// public uint NodeIndex; /// public HeapSerializationTier HeapSerializationTier; } /// /// D3D12_FEATURE_DATA_CROSS_NODE public partial struct FeatureDataCrossNode { /// public CrossNodeSharingTier SharingTier; /// public Bool32 AtomicShaderInstructions; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS5 public partial struct FeatureDataD3D12Options5 { /// public Bool32 SRVOnlyTiledResourceTier3; /// public RenderPassTier RenderPassesTier; /// public RaytracingTier RaytracingTier; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS6 public partial struct FeatureDataD3D12Options6 { /// public Bool32 AdditionalShadingRatesSupported; /// public Bool32 PerPrimitiveShadingRateSupportedWithViewportIndexing; /// public VariableShadingRateTier VariableShadingRateTier; /// public uint ShadingRateImageTileSize; /// public Bool32 BackgroundProcessingSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS7 public partial struct FeatureDataD3D12Options7 { /// public MeshShaderTier MeshShaderTier; /// public SamplerFeedbackTier SamplerFeedbackTier; } /// /// D3D12_FEATURE_DATA_QUERY_META_COMMAND public partial struct FeatureDataQueryMetaCommand { /// public Guid CommandId; /// public uint NodeMask; /// public unsafe void* pQueryInputData; /// public nuint QueryInputDataSizeInBytes; /// public unsafe void* pQueryOutputData; /// public nuint QueryOutputDataSizeInBytes; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS8 public partial struct FeatureDataD3D12Options8 { /// public Bool32 UnalignedBlockTexturesSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS9 public partial struct FeatureDataD3D12Options9 { /// public Bool32 MeshShaderPipelineStatsSupported; /// public Bool32 MeshShaderSupportsFullRangeRenderTargetArrayIndex; /// public Bool32 AtomicInt64OnTypedResourceSupported; /// public Bool32 AtomicInt64OnGroupSharedSupported; /// public Bool32 DerivativesInMeshAndAmplificationShadersSupported; /// public WaveMmaTier WaveMMATier; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS10 public partial struct FeatureDataD3D12Options10 { /// public Bool32 VariableRateShadingSumCombinerSupported; /// public Bool32 MeshShaderPerPrimitiveShadingRateSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS11 public partial struct FeatureDataD3D12Options11 { /// public Bool32 AtomicInt64OnDescriptorHeapResourceSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS12 public partial struct FeatureDataD3D12Options12 { /// public TriState MSPrimitivesPipelineStatisticIncludesCulledPrimitives; /// public Bool32 EnhancedBarriersSupported; /// public Bool32 RelaxedFormatCastingSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS13 public partial struct FeatureDataD3D12Options13 { /// public Bool32 UnrestrictedBufferTextureCopyPitchSupported; /// public Bool32 UnrestrictedVertexElementAlignmentSupported; /// public Bool32 InvertedViewportHeightFlipsYSupported; /// public Bool32 InvertedViewportDepthFlipsZSupported; /// public Bool32 TextureCopyBetweenDimensionsSupported; /// public Bool32 AlphaBlendFactorSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS14 public partial struct FeatureDataD3D12Options14 { /// public Bool32 AdvancedTextureOpsSupported; /// public Bool32 WriteableMSAATexturesSupported; /// public Bool32 IndependentFrontAndBackStencilRefMaskSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS15 public partial struct FeatureDataD3D12Options15 { /// public Bool32 TriangleFanSupported; /// public Bool32 DynamicIndexBufferStripCutSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS16 public partial struct FeatureDataD3D12Options16 { /// public Bool32 DynamicDepthBiasSupported; /// public Bool32 GPUUploadHeapSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS17 public partial struct FeatureDataD3D12Options17 { /// public Bool32 NonNormalizedCoordinateSamplersSupported; /// public Bool32 ManualWriteTrackingResourceSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS18 public partial struct FeatureDataD3D12Options18 { /// public Bool32 RenderPassesValid; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS19 public partial struct FeatureDataD3D12Options19 { /// public Bool32 MismatchingOutputDimensionsSupported; /// public uint SupportedSampleCountsWithNoOutputs; /// public Bool32 PointSamplingAddressesNeverRoundUp; /// public Bool32 RasterizerDesc2Supported; /// public Bool32 NarrowQuadrilateralLinesSupported; /// public Bool32 AnisoFilterWithPointMipSupported; /// public uint MaxSamplerDescriptorHeapSize; /// public uint MaxSamplerDescriptorHeapSizeWithStaticSamplers; /// public uint MaxViewDescriptorHeapSize; /// public Bool32 ComputeOnlyCustomHeapSupported; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS20 public partial struct FeatureDataD3D12Options20 { /// public Bool32 ComputeOnlyWriteWatchSupported; /// public RecreateAtTier RecreateAtTier; } /// /// D3D12_FEATURE_DATA_D3D12_OPTIONS21 public partial struct FeatureDataD3D12Options21 { /// public WorkGraphsTier WorkGraphsTier; /// public ExecuteIndirectTier ExecuteIndirectTier; /// public Bool32 SampleCmpGradientAndBiasSupported; /// public Bool32 ExtendedCommandInfoSupported; } /// /// D3D12_FEATURE_DATA_PREDICATION public partial struct FeatureDataPredication { /// public Bool32 Supported; } /// /// D3D12_FEATURE_DATA_HARDWARE_COPY public partial struct FeatureDataHardwareCopy { /// public Bool32 Supported; } /// /// D3D12_RESOURCE_ALLOCATION_INFO public partial struct ResourceAllocationInfo { /// public ulong SizeInBytes; /// public ulong Alignment; } /// /// D3D12_RESOURCE_ALLOCATION_INFO1 public partial struct ResourceAllocationInfo1 { /// public ulong Offset; /// public ulong Alignment; /// public ulong SizeInBytes; } /// /// D3D12_HEAP_PROPERTIES public partial struct HeapProperties { /// public HeapType Type; /// public CpuPageProperty CPUPageProperty; /// public MemoryPool MemoryPoolPreference; /// public uint CreationNodeMask; /// public uint VisibleNodeMask; } /// /// D3D12_HEAP_DESC public partial struct HeapDescription { /// public ulong SizeInBytes; /// public HeapProperties Properties; /// public ulong Alignment; /// public HeapFlags Flags; } /// /// D3D12_FEATURE_DATA_PLACED_RESOURCE_SUPPORT_INFO public partial struct FeatureDataPlacedResourceSupportInfo { /// public Graphics.Dxgi.Common.Format Format; /// public ResourceDimension Dimension; /// public HeapProperties DestHeapProperties; /// public Bool32 Supported; } /// /// D3D12_MIP_REGION public partial struct MipRegion { /// public uint Width; /// public uint Height; /// public uint Depth; } /// /// D3D12_RESOURCE_DESC public partial struct ResourceDescription { /// public ResourceDimension Dimension; /// public ulong Alignment; /// public ulong Width; /// public uint Height; /// public ushort DepthOrArraySize; /// public ushort MipLevels; /// public Graphics.Dxgi.Common.Format Format; /// public Graphics.Dxgi.Common.SampleDescription SampleDesc; /// public TextureLayout Layout; /// public ResourceFlags Flags; } /// /// D3D12_RESOURCE_DESC1 public partial struct ResourceDescription1 { /// public ResourceDimension Dimension; /// public ulong Alignment; /// public ulong Width; /// public uint Height; /// public ushort DepthOrArraySize; /// public ushort MipLevels; /// public Graphics.Dxgi.Common.Format Format; /// public Graphics.Dxgi.Common.SampleDescription SampleDesc; /// public TextureLayout Layout; /// public ResourceFlags Flags; /// public MipRegion SamplerFeedbackMipRegion; } /// /// D3D12_DEPTH_STENCIL_VALUE public partial struct DepthStencilValue { /// public float Depth; /// public byte Stencil; } /// /// D3D12_CLEAR_VALUE public partial struct ClearValue { /// public Graphics.Dxgi.Common.Format Format; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public unsafe Span Color { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return MemoryMarshal.CreateSpan(ref Anonymous.Color[0], 4); } } [UnscopedRef] public ref DepthStencilValue DepthStencil { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.DepthStencil; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public unsafe fixed float Color[4]; /// [FieldOffset(0)] public DepthStencilValue DepthStencil; } } /// /// D3D12_RANGE public partial struct Range { /// public nuint Begin; /// public nuint End; } /// /// D3D12_RANGE_UINT64 public partial struct RangeUInt64 { /// public ulong Begin; /// public ulong End; } /// /// D3D12_SUBRESOURCE_RANGE_UINT64 public partial struct SubresourceRangeUInt64 { /// public uint Subresource; /// public RangeUInt64 Range; } /// /// D3D12_SUBRESOURCE_INFO public partial struct SubresourceInfo { /// public ulong Offset; /// public uint RowPitch; /// public uint DepthPitch; } /// /// D3D12_TILED_RESOURCE_COORDINATE public partial struct TiledResourceCoordinate { /// public uint X; /// public uint Y; /// public uint Z; /// public uint Subresource; } /// /// D3D12_TILE_REGION_SIZE public partial struct TileRegionSize { /// public uint NumTiles; /// public Bool32 UseBox; /// public uint Width; /// public ushort Height; /// public ushort Depth; } /// /// D3D12_SUBRESOURCE_TILING public partial struct SubresourceTiling { /// public uint WidthInTiles; /// public ushort HeightInTiles; /// public ushort DepthInTiles; /// public uint StartTileIndexInOverallResource; } /// /// D3D12_TILE_SHAPE public partial struct TileShape { /// public uint WidthInTexels; /// public uint HeightInTexels; /// public uint DepthInTexels; } /// /// D3D12_PACKED_MIP_INFO public partial struct PackedMipInfo { /// public byte NumStandardMips; /// public byte NumPackedMips; /// public uint NumTilesForPackedMips; /// public uint StartTileIndexInOverallResource; } /// /// D3D12_RESOURCE_TRANSITION_BARRIER public partial struct ResourceTransitionBarrier { /// public unsafe ID3D12Resource* pResource; /// public uint Subresource; /// public ResourceStates StateBefore; /// public ResourceStates StateAfter; } /// /// D3D12_RESOURCE_ALIASING_BARRIER public partial struct ResourceAliasingBarrier { /// public unsafe ID3D12Resource* pResourceBefore; /// public unsafe ID3D12Resource* pResourceAfter; } /// /// D3D12_RESOURCE_UAV_BARRIER public partial struct ResourceUavBarrier { /// public unsafe ID3D12Resource* pResource; } /// /// D3D12_RESOURCE_BARRIER public partial struct ResourceBarrier { /// public ResourceBarrierType Type; /// public ResourceBarrierFlags Flags; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref ResourceTransitionBarrier Transition { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Transition; } } [UnscopedRef] public ref ResourceAliasingBarrier Aliasing { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Aliasing; } } [UnscopedRef] public ref ResourceUavBarrier UAV { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.UAV; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public ResourceTransitionBarrier Transition; /// [FieldOffset(0)] public ResourceAliasingBarrier Aliasing; /// [FieldOffset(0)] public ResourceUavBarrier UAV; } } /// /// D3D12_SUBRESOURCE_FOOTPRINT public partial struct SubresourceFootprint { /// public Graphics.Dxgi.Common.Format Format; /// public uint Width; /// public uint Height; /// public uint Depth; /// public uint RowPitch; } /// /// D3D12_PLACED_SUBRESOURCE_FOOTPRINT public partial struct PlacedSubresourceFootprint { /// public ulong Offset; /// public SubresourceFootprint Footprint; } /// /// D3D12_TEXTURE_COPY_LOCATION public partial struct TextureCopyLocation { /// public unsafe ID3D12Resource* pResource; /// public TextureCopyType Type; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref PlacedSubresourceFootprint PlacedFootprint { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.PlacedFootprint; } } [UnscopedRef] public ref uint SubresourceIndex { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.SubresourceIndex; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public PlacedSubresourceFootprint PlacedFootprint; /// [FieldOffset(0)] public uint SubresourceIndex; } } /// /// D3D12_SAMPLE_POSITION public partial struct SamplePosition { /// public sbyte X; /// public sbyte Y; } /// /// D3D12_VIEW_INSTANCE_LOCATION public partial struct ViewInstanceLocation { /// public uint ViewportArrayIndex; /// public uint RenderTargetArrayIndex; } /// /// D3D12_VIEW_INSTANCING_DESC public partial struct ViewInstancingDescription { /// public uint ViewInstanceCount; /// public unsafe ViewInstanceLocation* pViewInstanceLocations; /// public ViewInstancingFlags Flags; } /// /// D3D12_BUFFER_SRV public partial struct BufferSrv { /// public ulong FirstElement; /// public uint NumElements; /// public uint StructureByteStride; /// public BufferSrvFlags Flags; } /// /// D3D12_TEX1D_SRV public partial struct Texture1DSrv { /// public uint MostDetailedMip; /// public uint MipLevels; /// public float ResourceMinLODClamp; } /// /// D3D12_TEX1D_ARRAY_SRV public partial struct Texture1DArraySrv { /// public uint MostDetailedMip; /// public uint MipLevels; /// public uint FirstArraySlice; /// public uint ArraySize; /// public float ResourceMinLODClamp; } /// /// D3D12_TEX2D_SRV public partial struct Texture2DSrv { /// public uint MostDetailedMip; /// public uint MipLevels; /// public uint PlaneSlice; /// public float ResourceMinLODClamp; } /// /// D3D12_TEX2D_ARRAY_SRV public partial struct Texture2DArraySrv { /// public uint MostDetailedMip; /// public uint MipLevels; /// public uint FirstArraySlice; /// public uint ArraySize; /// public uint PlaneSlice; /// public float ResourceMinLODClamp; } /// /// D3D12_TEX3D_SRV public partial struct Texture3DSrv { /// public uint MostDetailedMip; /// public uint MipLevels; /// public float ResourceMinLODClamp; } /// /// D3D12_TEXCUBE_SRV public partial struct TexureCubeSrv { /// public uint MostDetailedMip; /// public uint MipLevels; /// public float ResourceMinLODClamp; } /// /// D3D12_TEXCUBE_ARRAY_SRV public partial struct TexureCubeArraySrv { /// public uint MostDetailedMip; /// public uint MipLevels; /// public uint First2DArrayFace; /// public uint NumCubes; /// public float ResourceMinLODClamp; } /// /// D3D12_TEX2DMS_SRV public partial struct Texture2DMsSrv { /// public uint UnusedField_NothingToDefine; } /// /// D3D12_TEX2DMS_ARRAY_SRV public partial struct Texture2DMsArraySrv { /// public uint FirstArraySlice; /// public uint ArraySize; } /// /// D3D12_RAYTRACING_ACCELERATION_STRUCTURE_SRV public partial struct RaytracingAccelerationStructureSrv { /// public ulong Location; } /// /// D3D12_SHADER_RESOURCE_VIEW_DESC public partial struct ShaderResourceViewDescription { /// public Graphics.Dxgi.Common.Format Format; /// public SrvDimension ViewDimension; /// public uint Shader4ComponentMapping; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref BufferSrv Buffer { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Buffer; } } [UnscopedRef] public ref Texture1DSrv Texture1D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture1D; } } [UnscopedRef] public ref Texture1DArraySrv Texture1DArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture1DArray; } } [UnscopedRef] public ref Texture2DSrv Texture2D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2D; } } [UnscopedRef] public ref Texture2DArraySrv Texture2DArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DArray; } } [UnscopedRef] public ref Texture2DMsSrv Texture2DMS { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DMS; } } [UnscopedRef] public ref Texture2DMsArraySrv Texture2DMSArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DMSArray; } } [UnscopedRef] public ref Texture3DSrv Texture3D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture3D; } } [UnscopedRef] public ref TexureCubeSrv TextureCube { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.TextureCube; } } [UnscopedRef] public ref TexureCubeArraySrv TextureCubeArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.TextureCubeArray; } } [UnscopedRef] public ref RaytracingAccelerationStructureSrv RaytracingAccelerationStructure { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.RaytracingAccelerationStructure; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public BufferSrv Buffer; /// [FieldOffset(0)] public Texture1DSrv Texture1D; /// [FieldOffset(0)] public Texture1DArraySrv Texture1DArray; /// [FieldOffset(0)] public Texture2DSrv Texture2D; /// [FieldOffset(0)] public Texture2DArraySrv Texture2DArray; /// [FieldOffset(0)] public Texture2DMsSrv Texture2DMS; /// [FieldOffset(0)] public Texture2DMsArraySrv Texture2DMSArray; /// [FieldOffset(0)] public Texture3DSrv Texture3D; /// [FieldOffset(0)] public TexureCubeSrv TextureCube; /// [FieldOffset(0)] public TexureCubeArraySrv TextureCubeArray; /// [FieldOffset(0)] public RaytracingAccelerationStructureSrv RaytracingAccelerationStructure; } } /// /// D3D12_CONSTANT_BUFFER_VIEW_DESC public partial struct ConstantBufferViewDescription { /// public ulong BufferLocation; /// public uint SizeInBytes; } /// /// D3D12_SAMPLER_DESC public partial struct SamplerDescription { /// public Filter Filter; /// public TextureAddressMode AddressU; /// public TextureAddressMode AddressV; /// public TextureAddressMode AddressW; /// public float MipLODBias; /// public uint MaxAnisotropy; /// public ComparisonFunction ComparisonFunc; /// public unsafe fixed float BorderColor[4]; /// public float MinLOD; /// public float MaxLOD; } /// /// D3D12_SAMPLER_DESC2 public partial struct SamplerDescription2 { /// public Filter Filter; /// public TextureAddressMode AddressU; /// public TextureAddressMode AddressV; /// public TextureAddressMode AddressW; /// public float MipLODBias; /// public uint MaxAnisotropy; /// public ComparisonFunction ComparisonFunc; /// public _Anonymous_e__Union Anonymous; /// public float MinLOD; /// public float MaxLOD; /// public SamplerFlags Flags; [UnscopedRef] public unsafe Span FloatBorderColor { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return MemoryMarshal.CreateSpan(ref Anonymous.FloatBorderColor[0], 4); } } [UnscopedRef] public unsafe Span UintBorderColor { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return MemoryMarshal.CreateSpan(ref Anonymous.UintBorderColor[0], 4); } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public unsafe fixed float FloatBorderColor[4]; /// [FieldOffset(0)] public unsafe fixed uint UintBorderColor[4]; } } /// /// D3D12_BUFFER_UAV public partial struct BufferUav { /// public ulong FirstElement; /// public uint NumElements; /// public uint StructureByteStride; /// public ulong CounterOffsetInBytes; /// public BufferUavFlags Flags; } /// /// D3D12_TEX1D_UAV public partial struct Texture1DUav { /// public uint MipSlice; } /// /// D3D12_TEX1D_ARRAY_UAV public partial struct Texture1DArrayUav { /// public uint MipSlice; /// public uint FirstArraySlice; /// public uint ArraySize; } /// /// D3D12_TEX2D_UAV public partial struct Texture2DUav { /// public uint MipSlice; /// public uint PlaneSlice; } /// /// D3D12_TEX2D_ARRAY_UAV public partial struct Texture2DArrayUav { /// public uint MipSlice; /// public uint FirstArraySlice; /// public uint ArraySize; /// public uint PlaneSlice; } /// /// D3D12_TEX2DMS_UAV public partial struct Texture2DMsUav { /// public uint UnusedField_NothingToDefine; } /// /// D3D12_TEX2DMS_ARRAY_UAV public partial struct Texture2DMsArrayUav { /// public uint FirstArraySlice; /// public uint ArraySize; } /// /// D3D12_TEX3D_UAV public partial struct Texture3DUav { /// public uint MipSlice; /// public uint FirstWSlice; /// public uint WSize; } /// /// D3D12_UNORDERED_ACCESS_VIEW_DESC public partial struct UnorderedAccessViewDescription { /// public Graphics.Dxgi.Common.Format Format; /// public UavDimension ViewDimension; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref BufferUav Buffer { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Buffer; } } [UnscopedRef] public ref Texture1DUav Texture1D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture1D; } } [UnscopedRef] public ref Texture1DArrayUav Texture1DArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture1DArray; } } [UnscopedRef] public ref Texture2DUav Texture2D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2D; } } [UnscopedRef] public ref Texture2DArrayUav Texture2DArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DArray; } } [UnscopedRef] public ref Texture2DMsUav Texture2DMS { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DMS; } } [UnscopedRef] public ref Texture2DMsArrayUav Texture2DMSArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DMSArray; } } [UnscopedRef] public ref Texture3DUav Texture3D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture3D; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public BufferUav Buffer; /// [FieldOffset(0)] public Texture1DUav Texture1D; /// [FieldOffset(0)] public Texture1DArrayUav Texture1DArray; /// [FieldOffset(0)] public Texture2DUav Texture2D; /// [FieldOffset(0)] public Texture2DArrayUav Texture2DArray; /// [FieldOffset(0)] public Texture2DMsUav Texture2DMS; /// [FieldOffset(0)] public Texture2DMsArrayUav Texture2DMSArray; /// [FieldOffset(0)] public Texture3DUav Texture3D; } } /// /// D3D12_BUFFER_RTV public partial struct BufferRtv { /// public ulong FirstElement; /// public uint NumElements; } /// /// D3D12_TEX1D_RTV public partial struct Texture1DRtv { /// public uint MipSlice; } /// /// D3D12_TEX1D_ARRAY_RTV public partial struct Texture1DArrayRtv { /// public uint MipSlice; /// public uint FirstArraySlice; /// public uint ArraySize; } /// /// D3D12_TEX2D_RTV public partial struct Texture2DRtv { /// public uint MipSlice; /// public uint PlaneSlice; } /// /// D3D12_TEX2DMS_RTV public partial struct Texture2DMsRtv { /// public uint UnusedField_NothingToDefine; } /// /// D3D12_TEX2D_ARRAY_RTV public partial struct Texture2DArrayRtv { /// public uint MipSlice; /// public uint FirstArraySlice; /// public uint ArraySize; /// public uint PlaneSlice; } /// /// D3D12_TEX2DMS_ARRAY_RTV public partial struct Texture2DMsArrayRtv { /// public uint FirstArraySlice; /// public uint ArraySize; } /// /// D3D12_TEX3D_RTV public partial struct Texture3DRtv { /// public uint MipSlice; /// public uint FirstWSlice; /// public uint WSize; } /// /// D3D12_RENDER_TARGET_VIEW_DESC public partial struct RenderTargetViewDescription { /// public Graphics.Dxgi.Common.Format Format; /// public RtvDimension ViewDimension; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref BufferRtv Buffer { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Buffer; } } [UnscopedRef] public ref Texture1DRtv Texture1D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture1D; } } [UnscopedRef] public ref Texture1DArrayRtv Texture1DArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture1DArray; } } [UnscopedRef] public ref Texture2DRtv Texture2D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2D; } } [UnscopedRef] public ref Texture2DArrayRtv Texture2DArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DArray; } } [UnscopedRef] public ref Texture2DMsRtv Texture2DMS { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DMS; } } [UnscopedRef] public ref Texture2DMsArrayRtv Texture2DMSArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DMSArray; } } [UnscopedRef] public ref Texture3DRtv Texture3D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture3D; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public BufferRtv Buffer; /// [FieldOffset(0)] public Texture1DRtv Texture1D; /// [FieldOffset(0)] public Texture1DArrayRtv Texture1DArray; /// [FieldOffset(0)] public Texture2DRtv Texture2D; /// [FieldOffset(0)] public Texture2DArrayRtv Texture2DArray; /// [FieldOffset(0)] public Texture2DMsRtv Texture2DMS; /// [FieldOffset(0)] public Texture2DMsArrayRtv Texture2DMSArray; /// [FieldOffset(0)] public Texture3DRtv Texture3D; } } /// /// D3D12_TEX1D_DSV public partial struct Texture1DDsv { /// public uint MipSlice; } /// /// D3D12_TEX1D_ARRAY_DSV public partial struct Texture1DArrayDsv { /// public uint MipSlice; /// public uint FirstArraySlice; /// public uint ArraySize; } /// /// D3D12_TEX2D_DSV public partial struct Texture2DDsv { /// public uint MipSlice; } /// /// D3D12_TEX2D_ARRAY_DSV public partial struct Texture2DArrayDsv { /// public uint MipSlice; /// public uint FirstArraySlice; /// public uint ArraySize; } /// /// D3D12_TEX2DMS_DSV public partial struct Texture2DMsDsv { /// public uint UnusedField_NothingToDefine; } /// /// D3D12_TEX2DMS_ARRAY_DSV public partial struct Texture2DMsArrayDsv { /// public uint FirstArraySlice; /// public uint ArraySize; } /// /// D3D12_DEPTH_STENCIL_VIEW_DESC public partial struct DepthStencilViewDescription { /// public Graphics.Dxgi.Common.Format Format; /// public DsvDimension ViewDimension; /// public DsvFlags Flags; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref Texture1DDsv Texture1D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture1D; } } [UnscopedRef] public ref Texture1DArrayDsv Texture1DArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture1DArray; } } [UnscopedRef] public ref Texture2DDsv Texture2D { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2D; } } [UnscopedRef] public ref Texture2DArrayDsv Texture2DArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DArray; } } [UnscopedRef] public ref Texture2DMsDsv Texture2DMS { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DMS; } } [UnscopedRef] public ref Texture2DMsArrayDsv Texture2DMSArray { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Texture2DMSArray; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public Texture1DDsv Texture1D; /// [FieldOffset(0)] public Texture1DArrayDsv Texture1DArray; /// [FieldOffset(0)] public Texture2DDsv Texture2D; /// [FieldOffset(0)] public Texture2DArrayDsv Texture2DArray; /// [FieldOffset(0)] public Texture2DMsDsv Texture2DMS; /// [FieldOffset(0)] public Texture2DMsArrayDsv Texture2DMSArray; } } /// /// D3D12_DESCRIPTOR_HEAP_DESC public partial struct DescriptorHeapDescription { /// public DescriptorHeapType Type; /// public uint NumDescriptors; /// public DescriptorHeapFlags Flags; /// public uint NodeMask; } /// /// D3D12_DESCRIPTOR_RANGE public partial struct DescriptorRange { /// public DescriptorRangeType RangeType; /// public uint NumDescriptors; /// public uint BaseShaderRegister; /// public uint RegisterSpace; /// public uint OffsetInDescriptorsFromTableStart; } /// /// D3D12_ROOT_DESCRIPTOR_TABLE public partial struct RootDescriptorTable { /// public uint NumDescriptorRanges; /// public unsafe DescriptorRange* pDescriptorRanges; } /// /// D3D12_ROOT_CONSTANTS public partial struct RootConstants { /// public uint ShaderRegister; /// public uint RegisterSpace; /// public uint Num32BitValues; } /// /// D3D12_ROOT_DESCRIPTOR public partial struct RootDescriptor { /// public uint ShaderRegister; /// public uint RegisterSpace; } /// /// D3D12_ROOT_PARAMETER public partial struct RootParameter { /// public RootParameterType ParameterType; /// public _Anonymous_e__Union Anonymous; /// public ShaderVisibility ShaderVisibility; [UnscopedRef] public ref RootDescriptorTable DescriptorTable { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.DescriptorTable; } } [UnscopedRef] public ref RootConstants Constants { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Constants; } } [UnscopedRef] public ref RootDescriptor Descriptor { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Descriptor; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public RootDescriptorTable DescriptorTable; /// [FieldOffset(0)] public RootConstants Constants; /// [FieldOffset(0)] public RootDescriptor Descriptor; } } /// /// D3D12_STATIC_SAMPLER_DESC public partial struct StaticSamplerDescription { /// public Filter Filter; /// public TextureAddressMode AddressU; /// public TextureAddressMode AddressV; /// public TextureAddressMode AddressW; /// public float MipLODBias; /// public uint MaxAnisotropy; /// public ComparisonFunction ComparisonFunc; /// public StaticBorderColor BorderColor; /// public float MinLOD; /// public float MaxLOD; /// public uint ShaderRegister; /// public uint RegisterSpace; /// public ShaderVisibility ShaderVisibility; } /// /// D3D12_STATIC_SAMPLER_DESC1 public partial struct StaticSamplerDescription1 { /// public Filter Filter; /// public TextureAddressMode AddressU; /// public TextureAddressMode AddressV; /// public TextureAddressMode AddressW; /// public float MipLODBias; /// public uint MaxAnisotropy; /// public ComparisonFunction ComparisonFunc; /// public StaticBorderColor BorderColor; /// public float MinLOD; /// public float MaxLOD; /// public uint ShaderRegister; /// public uint RegisterSpace; /// public ShaderVisibility ShaderVisibility; /// public SamplerFlags Flags; } /// /// D3D12_ROOT_SIGNATURE_DESC public partial struct RootSignatureDescription { /// public uint NumParameters; /// public unsafe RootParameter* pParameters; /// public uint NumStaticSamplers; /// public unsafe StaticSamplerDescription* pStaticSamplers; /// public RootSignatureFlags Flags; } /// /// D3D12_DESCRIPTOR_RANGE1 public partial struct DescriptorRange1 { /// public DescriptorRangeType RangeType; /// public uint NumDescriptors; /// public uint BaseShaderRegister; /// public uint RegisterSpace; /// public DescriptorRangeFlags Flags; /// public uint OffsetInDescriptorsFromTableStart; } /// /// D3D12_ROOT_DESCRIPTOR_TABLE1 public partial struct RootDescriptorTable1 { /// public uint NumDescriptorRanges; /// public unsafe DescriptorRange1* pDescriptorRanges; } /// /// D3D12_ROOT_DESCRIPTOR1 public partial struct RootDescriptor1 { /// public uint ShaderRegister; /// public uint RegisterSpace; /// public RootDescriptorFlags Flags; } /// /// D3D12_ROOT_PARAMETER1 public partial struct RootParameter1 { /// public RootParameterType ParameterType; /// public _Anonymous_e__Union Anonymous; /// public ShaderVisibility ShaderVisibility; [UnscopedRef] public ref RootDescriptorTable1 DescriptorTable { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.DescriptorTable; } } [UnscopedRef] public ref RootConstants Constants { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Constants; } } [UnscopedRef] public ref RootDescriptor1 Descriptor { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Descriptor; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public RootDescriptorTable1 DescriptorTable; /// [FieldOffset(0)] public RootConstants Constants; /// [FieldOffset(0)] public RootDescriptor1 Descriptor; } } /// /// D3D12_ROOT_SIGNATURE_DESC1 public partial struct RootSignatureDescription1 { /// public uint NumParameters; /// public unsafe RootParameter1* pParameters; /// public uint NumStaticSamplers; /// public unsafe StaticSamplerDescription* pStaticSamplers; /// public RootSignatureFlags Flags; } /// /// D3D12_ROOT_SIGNATURE_DESC2 public partial struct RootSignatureDescription2 { /// public uint NumParameters; /// public unsafe RootParameter1* pParameters; /// public uint NumStaticSamplers; /// public unsafe StaticSamplerDescription1* pStaticSamplers; /// public RootSignatureFlags Flags; } /// /// D3D12_VERSIONED_ROOT_SIGNATURE_DESC public partial struct VersionedRootSignatureDescription { /// public RootSignatureVersion Version; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref RootSignatureDescription Desc_1_0 { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Desc_1_0; } } [UnscopedRef] public ref RootSignatureDescription1 Desc_1_1 { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Desc_1_1; } } [UnscopedRef] public ref RootSignatureDescription2 Desc_1_2 { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Desc_1_2; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public RootSignatureDescription Desc_1_0; /// [FieldOffset(0)] public RootSignatureDescription1 Desc_1_1; /// [FieldOffset(0)] public RootSignatureDescription2 Desc_1_2; } } /// /// D3D12_CPU_DESCRIPTOR_HANDLE public partial struct CpuDescriptorHandle { /// public nuint ptr; } /// /// D3D12_GPU_DESCRIPTOR_HANDLE public partial struct GpuDescriptorHandle { /// public ulong ptr; } /// /// D3D12_DISCARD_REGION public partial struct DiscardRegion { /// public uint NumRects; /// public unsafe Rect* pRects; /// public uint FirstSubresource; /// public uint NumSubresources; } /// /// D3D12_QUERY_HEAP_DESC public partial struct QueryHeapDescription { /// public QueryHeapType Type; /// public uint Count; /// public uint NodeMask; } /// /// D3D12_QUERY_DATA_PIPELINE_STATISTICS public partial struct QueryDataPipelineStatistics { /// public ulong IAVertices; /// public ulong IAPrimitives; /// public ulong VSInvocations; /// public ulong GSInvocations; /// public ulong GSPrimitives; /// public ulong CInvocations; /// public ulong CPrimitives; /// public ulong PSInvocations; /// public ulong HSInvocations; /// public ulong DSInvocations; /// public ulong CSInvocations; } /// /// D3D12_QUERY_DATA_PIPELINE_STATISTICS1 public partial struct QueryDataPipelineStatistics1 { /// public ulong IAVertices; /// public ulong IAPrimitives; /// public ulong VSInvocations; /// public ulong GSInvocations; /// public ulong GSPrimitives; /// public ulong CInvocations; /// public ulong CPrimitives; /// public ulong PSInvocations; /// public ulong HSInvocations; /// public ulong DSInvocations; /// public ulong CSInvocations; /// public ulong ASInvocations; /// public ulong MSInvocations; /// public ulong MSPrimitives; } /// /// D3D12_QUERY_DATA_SO_STATISTICS public partial struct QueryDataSOStatistics { /// public ulong NumPrimitivesWritten; /// public ulong PrimitivesStorageNeeded; } /// /// D3D12_STREAM_OUTPUT_BUFFER_VIEW public partial struct StreamOutputBufferView { /// public ulong BufferLocation; /// public ulong SizeInBytes; /// public ulong BufferFilledSizeLocation; } /// /// D3D12_DRAW_ARGUMENTS public partial struct DrawArguments { /// public uint VertexCountPerInstance; /// public uint InstanceCount; /// public uint StartVertexLocation; /// public uint StartInstanceLocation; } /// /// D3D12_DRAW_INDEXED_ARGUMENTS public partial struct DrawIndexedArguments { /// public uint IndexCountPerInstance; /// public uint InstanceCount; /// public uint StartIndexLocation; /// public int BaseVertexLocation; /// public uint StartInstanceLocation; } /// /// D3D12_DISPATCH_ARGUMENTS public partial struct DispatchArguments { /// public uint ThreadGroupCountX; /// public uint ThreadGroupCountY; /// public uint ThreadGroupCountZ; } /// /// D3D12_VERTEX_BUFFER_VIEW public partial struct VertexBufferView { /// public ulong BufferLocation; /// public uint SizeInBytes; /// public uint StrideInBytes; } /// /// D3D12_INDEX_BUFFER_VIEW public partial struct IndexBufferView { /// public ulong BufferLocation; /// public uint SizeInBytes; /// public Graphics.Dxgi.Common.Format Format; } /// /// D3D12_INDIRECT_ARGUMENT_DESC public partial struct IndirectArgumentDescription { /// public IndirectArgumentType Type; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref _Anonymous_e__Union._VertexBuffer_e__Struct VertexBuffer { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.VertexBuffer; } } [UnscopedRef] public ref _Anonymous_e__Union._Constant_e__Struct Constant { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Constant; } } [UnscopedRef] public ref _Anonymous_e__Union._ConstantBufferView_e__Struct ConstantBufferView { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.ConstantBufferView; } } [UnscopedRef] public ref _Anonymous_e__Union._ShaderResourceView_e__Struct ShaderResourceView { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.ShaderResourceView; } } [UnscopedRef] public ref _Anonymous_e__Union._UnorderedAccessView_e__Struct UnorderedAccessView { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.UnorderedAccessView; } } [UnscopedRef] public ref _Anonymous_e__Union._IncrementingConstant_e__Struct IncrementingConstant { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.IncrementingConstant; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public _Anonymous_e__Union._VertexBuffer_e__Struct VertexBuffer; /// [FieldOffset(0)] public _Anonymous_e__Union._Constant_e__Struct Constant; /// [FieldOffset(0)] public _Anonymous_e__Union._ConstantBufferView_e__Struct ConstantBufferView; /// [FieldOffset(0)] public _Anonymous_e__Union._ShaderResourceView_e__Struct ShaderResourceView; /// [FieldOffset(0)] public _Anonymous_e__Union._UnorderedAccessView_e__Struct UnorderedAccessView; /// [FieldOffset(0)] public _Anonymous_e__Union._IncrementingConstant_e__Struct IncrementingConstant; public partial struct _IncrementingConstant_e__Struct { /// public uint RootParameterIndex; /// public uint DestOffsetIn32BitValues; } public partial struct _ShaderResourceView_e__Struct { /// public uint RootParameterIndex; } public partial struct _Constant_e__Struct { /// public uint RootParameterIndex; /// public uint DestOffsetIn32BitValues; /// public uint Num32BitValuesToSet; } public partial struct _UnorderedAccessView_e__Struct { /// public uint RootParameterIndex; } public partial struct _VertexBuffer_e__Struct { /// public uint Slot; } public partial struct _ConstantBufferView_e__Struct { /// public uint RootParameterIndex; } } } /// /// D3D12_COMMAND_SIGNATURE_DESC public partial struct CommandSignatureDescription { /// public uint ByteStride; /// public uint NumArgumentDescs; /// public unsafe IndirectArgumentDescription* pArgumentDescs; /// public uint NodeMask; } /// /// D3D12_WRITEBUFFERIMMEDIATE_PARAMETER public partial struct WriteBufferImmediateParameter { /// public ulong Dest; /// public uint Value; } /// /// D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT public partial struct FeatureDataProtectedResourceSessionSupport { /// public uint NodeIndex; /// public ProtectedResourceSessionSupportFlags Support; } /// /// D3D12_PROTECTED_RESOURCE_SESSION_DESC public partial struct ProtectedResourceSessionDescription { /// public uint NodeMask; /// public ProtectedResourceSessionFlags Flags; } /// /// D3D12_META_COMMAND_PARAMETER_DESC public partial struct MetaCommandParameterDescription { /// public unsafe char* Name; /// public MetaCommandParameterType Type; /// public MetaCommandParameterFlags Flags; /// public ResourceStates RequiredResourceState; /// public uint StructureOffset; } /// /// D3D12_META_COMMAND_DESC public partial struct MetaCommandDescription { /// public Guid Id; /// public unsafe char* Name; /// public GraphicsStates InitializationDirtyState; /// public GraphicsStates ExecutionDirtyState; } /// /// D3D12_PROGRAM_IDENTIFIER public partial struct ProgramIdentifier { /// public unsafe fixed ulong OpaqueData[4]; } /// /// D3D12_NODE_ID public partial struct NodeId { /// public unsafe char* Name; /// public uint ArrayIndex; } /// /// D3D12_WORK_GRAPH_MEMORY_REQUIREMENTS public partial struct WorkGraphMemoryRequirements { /// public ulong MinSizeInBytes; /// public ulong MaxSizeInBytes; /// public uint SizeGranularityInBytes; } /// /// D3D12_STATE_SUBOBJECT public partial struct StateSubObject { /// public StateSubObjectType Type; /// public unsafe void* pDesc; } /// /// D3D12_STATE_OBJECT_CONFIG public partial struct StateObjectConfig { /// public StateObjectFlags Flags; } /// /// D3D12_GLOBAL_ROOT_SIGNATURE public partial struct GlobalRootSignature { /// public unsafe ID3D12RootSignature* pGlobalRootSignature; } /// /// D3D12_LOCAL_ROOT_SIGNATURE public partial struct LocalRootSignature { /// public unsafe ID3D12RootSignature* pLocalRootSignature; } /// /// D3D12_NODE_MASK public partial struct NodeMask { /// public uint Mask; } /// /// D3D12_SAMPLE_MASK public partial struct SampleMask { /// public uint Mask; } /// /// D3D12_IB_STRIP_CUT_VALUE public partial struct IBStripCutValue { /// public IndexBufferStripCutValue IndexBufferStripCutValue; } /// /// D3D12_PRIMITIVE_TOPOLOGY_DESC public partial struct PrimitiveTopologyDescription { /// public PrimitiveTopologyType PrimitiveTopology; } /// /// D3D12_DEPTH_STENCIL_FORMAT public partial struct DepthStencilFormat { /// public Graphics.Dxgi.Common.Format Format; } /// /// D3D12_EXPORT_DESC public partial struct ExportDescription { /// public unsafe char* Name; /// public unsafe char* ExportToRename; /// public ExportFlags Flags; } /// /// D3D12_DXIL_LIBRARY_DESC public partial struct DxilLibraryDescription { /// public ShaderBytecode DXILLibrary; /// public uint NumExports; /// public unsafe ExportDescription* pExports; } /// /// D3D12_EXISTING_COLLECTION_DESC public partial struct ExistingCollectionDescription { /// public unsafe ID3D12StateObject* pExistingCollection; /// public uint NumExports; /// public unsafe ExportDescription* pExports; } /// /// D3D12_SUBOBJECT_TO_EXPORTS_ASSOCIATION public partial struct SubObjectToExportsAssociation { /// public unsafe StateSubObject* pSubobjectToAssociate; /// public uint NumExports; /// public unsafe char** pExports; } /// /// D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION public partial struct DxilSubObjectToExportsAssociation { /// public unsafe char* SubobjectToAssociate; /// public uint NumExports; /// public unsafe char** pExports; } /// /// D3D12_HIT_GROUP_DESC public partial struct HitGroupDescription { /// public unsafe char* HitGroupExport; /// public HitGroupType Type; /// public unsafe char* AnyHitShaderImport; /// public unsafe char* ClosestHitShaderImport; /// public unsafe char* IntersectionShaderImport; } /// /// D3D12_RAYTRACING_SHADER_CONFIG public partial struct RaytracingShaderConfig { /// public uint MaxPayloadSizeInBytes; /// public uint MaxAttributeSizeInBytes; } /// /// D3D12_RAYTRACING_PIPELINE_CONFIG public partial struct RaytracingPipelineConfig { /// public uint MaxTraceRecursionDepth; } /// /// D3D12_RAYTRACING_PIPELINE_CONFIG1 public partial struct RaytracingPipelineConfig1 { /// public uint MaxTraceRecursionDepth; /// public RaytracingPipelineFlags Flags; } /// /// D3D12_NODE_OUTPUT_OVERRIDES public partial struct NodeOutputOverrides { /// public uint OutputIndex; /// public unsafe NodeId* pNewName; /// public unsafe Bool32* pAllowSparseNodes; /// public unsafe uint* pMaxRecords; /// public unsafe uint* pMaxRecordsSharedWithOutputIndex; } /// /// D3D12_BROADCASTING_LAUNCH_OVERRIDES public partial struct BroadcastingLaunchOverrides { /// public unsafe uint* pLocalRootArgumentsTableIndex; /// public unsafe Bool32* pProgramEntry; /// public unsafe NodeId* pNewName; /// public unsafe NodeId* pShareInputOf; /// public unsafe uint* pDispatchGrid; /// public unsafe uint* pMaxDispatchGrid; /// public uint NumOutputOverrides; /// public unsafe NodeOutputOverrides* pOutputOverrides; } /// /// D3D12_COALESCING_LAUNCH_OVERRIDES public partial struct CoalescingLaunchOverrides { /// public unsafe uint* pLocalRootArgumentsTableIndex; /// public unsafe Bool32* pProgramEntry; /// public unsafe NodeId* pNewName; /// public unsafe NodeId* pShareInputOf; /// public uint NumOutputOverrides; /// public unsafe NodeOutputOverrides* pOutputOverrides; } /// /// D3D12_THREAD_LAUNCH_OVERRIDES public partial struct ThreadLaunchOverrides { /// public unsafe uint* pLocalRootArgumentsTableIndex; /// public unsafe Bool32* pProgramEntry; /// public unsafe NodeId* pNewName; /// public unsafe NodeId* pShareInputOf; /// public uint NumOutputOverrides; /// public unsafe NodeOutputOverrides* pOutputOverrides; } /// /// D3D12_COMMON_COMPUTE_NODE_OVERRIDES public partial struct CommonComputeNodeOverrides { /// public unsafe uint* pLocalRootArgumentsTableIndex; /// public unsafe Bool32* pProgramEntry; /// public unsafe NodeId* pNewName; /// public unsafe NodeId* pShareInputOf; /// public uint NumOutputOverrides; /// public unsafe NodeOutputOverrides* pOutputOverrides; } /// /// D3D12_SHADER_NODE public partial struct ShaderNode { /// public unsafe char* Shader; /// public NodeOverridesType OverridesType; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public unsafe ref BroadcastingLaunchOverrides* pBroadcastingLaunchOverrides { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.pBroadcastingLaunchOverrides; } } [UnscopedRef] public unsafe ref CoalescingLaunchOverrides* pCoalescingLaunchOverrides { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.pCoalescingLaunchOverrides; } } [UnscopedRef] public unsafe ref ThreadLaunchOverrides* pThreadLaunchOverrides { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.pThreadLaunchOverrides; } } [UnscopedRef] public unsafe ref CommonComputeNodeOverrides* pCommonComputeNodeOverrides { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.pCommonComputeNodeOverrides; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public unsafe BroadcastingLaunchOverrides* pBroadcastingLaunchOverrides; /// [FieldOffset(0)] public unsafe CoalescingLaunchOverrides* pCoalescingLaunchOverrides; /// [FieldOffset(0)] public unsafe ThreadLaunchOverrides* pThreadLaunchOverrides; /// [FieldOffset(0)] public unsafe CommonComputeNodeOverrides* pCommonComputeNodeOverrides; } } /// /// D3D12_NODE public partial struct Node { /// public NodeType NodeType; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref ShaderNode Shader { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Shader; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public ShaderNode Shader; } } /// /// D3D12_WORK_GRAPH_DESC public partial struct WorkGraphDescription { /// public unsafe char* ProgramName; /// public WorkGraphFlags Flags; /// public uint NumEntrypoints; /// public unsafe NodeId* pEntrypoints; /// public uint NumExplicitlyDefinedNodes; /// public unsafe Node* pExplicitlyDefinedNodes; } /// /// D3D12_GENERIC_PROGRAM_DESC public partial struct GenericProgramDescription { /// public unsafe char* ProgramName; /// public uint NumExports; /// public unsafe char** pExports; /// public uint NumSubobjects; /// public unsafe StateSubObject** ppSubobjects; } /// /// D3D12_STATE_OBJECT_DESC public partial struct StateObjectDescription { /// public StateObjectType Type; /// public uint NumSubobjects; /// public unsafe StateSubObject* pSubobjects; } /// /// D3D12_GPU_VIRTUAL_ADDRESS_AND_STRIDE public partial struct GpuVirtualAddressAndStride { /// public ulong StartAddress; /// public ulong StrideInBytes; } /// /// D3D12_GPU_VIRTUAL_ADDRESS_RANGE public partial struct GpuVirtualAddressRange { /// public ulong StartAddress; /// public ulong SizeInBytes; } /// /// D3D12_GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE public partial struct GpuVirtualAddressRangeAndStride { /// public ulong StartAddress; /// public ulong SizeInBytes; /// public ulong StrideInBytes; } /// /// D3D12_RAYTRACING_GEOMETRY_TRIANGLES_DESC public partial struct RaytracingGeometryTrianglesDescription { /// public ulong Transform3x4; /// public Graphics.Dxgi.Common.Format IndexFormat; /// public Graphics.Dxgi.Common.Format VertexFormat; /// public uint IndexCount; /// public uint VertexCount; /// public ulong IndexBuffer; /// public GpuVirtualAddressAndStride VertexBuffer; } /// /// D3D12_RAYTRACING_AABB public partial struct RaytracingAabb { /// public float MinX; /// public float MinY; /// public float MinZ; /// public float MaxX; /// public float MaxY; /// public float MaxZ; } /// /// D3D12_RAYTRACING_GEOMETRY_AABBS_DESC public partial struct RaytracingGeometryAabbsDescription { /// public ulong AABBCount; /// public GpuVirtualAddressAndStride AABBs; } /// /// D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC public partial struct RaytracingAccelerationStructurePostbuildInfoDescription { /// public ulong DestBuffer; /// public RaytracingAccelerationStructurePostbuildInfoType InfoType; } /// /// D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_COMPACTED_SIZE_DESC public partial struct RaytracingAccelerationStructurePostbuildInfoCompactedSizeDescription { /// public ulong CompactedSizeInBytes; } /// /// D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TOOLS_VISUALIZATION_DESC public partial struct RaytracingAccelerationStructurePostbuildInfoToolsVisualizationDescription { /// public ulong DecodedSizeInBytes; } /// /// D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_TOOLS_VISUALIZATION_HEADER public partial struct BuildRaytracingAccelerationStructureToolsVisualizationHeader { /// public RaytracingAccelerationStructureType Type; /// public uint NumDescs; } /// /// D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION_DESC public partial struct RaytracingAccelerationStructurePostbuildInfoSerializationDescription { /// public ulong SerializedSizeInBytes; /// public ulong NumBottomLevelAccelerationStructurePointers; } /// /// D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER public partial struct SerializedDataDriverMatchingIdentifier { /// public Guid DriverOpaqueGUID; /// public unsafe fixed byte DriverOpaqueVersioningData[16]; } /// /// D3D12_SERIALIZED_RAYTRACING_ACCELERATION_STRUCTURE_HEADER public partial struct SerializedRaytracingAccelerationStructureHeader { /// public SerializedDataDriverMatchingIdentifier DriverMatchingIdentifier; /// public ulong SerializedSizeInBytesIncludingHeader; /// public ulong DeserializedSizeInBytes; /// public ulong NumBottomLevelAccelerationStructurePointersAfterHeader; } /// /// D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_CURRENT_SIZE_DESC public partial struct RaytracingAccelerationStructurePostbuildInfoCurrentSizeDescription { /// public ulong CurrentSizeInBytes; } /// /// D3D12_RAYTRACING_INSTANCE_DESC public partial struct RaytracingInstanceDescription { /// public unsafe fixed float Transform[12]; /// public uint _bitfield1; /// public uint _bitfield2; /// public ulong AccelerationStructure; } /// /// D3D12_RAYTRACING_GEOMETRY_DESC public partial struct RaytracingGeometryDescription { /// public RaytracingGeometryType Type; /// public RaytracingGeometryFlags Flags; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref RaytracingGeometryTrianglesDescription Triangles { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Triangles; } } [UnscopedRef] public ref RaytracingGeometryAabbsDescription AABBs { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.AABBs; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public RaytracingGeometryTrianglesDescription Triangles; /// [FieldOffset(0)] public RaytracingGeometryAabbsDescription AABBs; } } /// /// D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS public partial struct BuildRaytracingAccelerationStructureInputs { /// public RaytracingAccelerationStructureType Type; /// public RaytracingAccelerationStructureBuildFlags Flags; /// public uint NumDescs; /// public ElementsLayout DescsLayout; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref ulong InstanceDescs { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.InstanceDescs; } } [UnscopedRef] public unsafe ref RaytracingGeometryDescription* pGeometryDescs { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.pGeometryDescs; } } [UnscopedRef] public unsafe ref RaytracingGeometryDescription** ppGeometryDescs { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.ppGeometryDescs; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public ulong InstanceDescs; /// [FieldOffset(0)] public unsafe RaytracingGeometryDescription* pGeometryDescs; /// [FieldOffset(0)] public unsafe RaytracingGeometryDescription** ppGeometryDescs; } } /// /// D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC public partial struct BuildRaytracingAccelerationStructureDescription { /// public ulong DestAccelerationStructureData; /// public BuildRaytracingAccelerationStructureInputs Inputs; /// public ulong SourceAccelerationStructureData; /// public ulong ScratchAccelerationStructureData; } /// /// D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO public partial struct RaytracingAccelerationStructurePrebuildInfo { /// public ulong ResultDataMaxSizeInBytes; /// public ulong ScratchDataSizeInBytes; /// public ulong UpdateScratchDataSizeInBytes; } /// /// D3D12_AUTO_BREADCRUMB_NODE public partial struct AutoBreadcrumbNode { /// public unsafe byte* pCommandListDebugNameA; /// public unsafe char* pCommandListDebugNameW; /// public unsafe byte* pCommandQueueDebugNameA; /// public unsafe char* pCommandQueueDebugNameW; /// public unsafe ID3D12GraphicsCommandList* pCommandList; /// public unsafe ID3D12CommandQueue* pCommandQueue; /// public uint BreadcrumbCount; /// public unsafe uint* pLastBreadcrumbValue; /// public unsafe AutoBreadcrumbOperation* pCommandHistory; /// public unsafe AutoBreadcrumbNode* pNext; } /// /// D3D12_DRED_BREADCRUMB_CONTEXT public partial struct DredBreadcrumbContext { /// public uint BreadcrumbIndex; /// public unsafe char* pContextString; } /// /// D3D12_AUTO_BREADCRUMB_NODE1 public partial struct AutoBreadcrumbNode1 { /// public unsafe byte* pCommandListDebugNameA; /// public unsafe char* pCommandListDebugNameW; /// public unsafe byte* pCommandQueueDebugNameA; /// public unsafe char* pCommandQueueDebugNameW; /// public unsafe ID3D12GraphicsCommandList* pCommandList; /// public unsafe ID3D12CommandQueue* pCommandQueue; /// public uint BreadcrumbCount; /// public unsafe uint* pLastBreadcrumbValue; /// public unsafe AutoBreadcrumbOperation* pCommandHistory; /// public unsafe AutoBreadcrumbNode1* pNext; /// public uint BreadcrumbContextsCount; /// public unsafe DredBreadcrumbContext* pBreadcrumbContexts; } /// /// D3D12_DEVICE_REMOVED_EXTENDED_DATA public partial struct DeviceRemovedExtendedData { /// public DredFlags Flags; /// public unsafe AutoBreadcrumbNode* pHeadAutoBreadcrumbNode; } /// /// D3D12_DRED_ALLOCATION_NODE public partial struct DredAllocationNode { /// public unsafe byte* ObjectNameA; /// public unsafe char* ObjectNameW; /// public DredAllocationType AllocationType; /// public unsafe DredAllocationNode* pNext; } /// /// D3D12_DRED_ALLOCATION_NODE1 public partial struct DredAllocationNode1 { /// public unsafe byte* ObjectNameA; /// public unsafe char* ObjectNameW; /// public DredAllocationType AllocationType; /// public unsafe DredAllocationNode1* pNext; /// public unsafe IUnknown* pObject; } /// /// D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT public partial struct DredAutoBreadcrumbsOutput { /// public unsafe AutoBreadcrumbNode* pHeadAutoBreadcrumbNode; } /// /// D3D12_DRED_AUTO_BREADCRUMBS_OUTPUT1 public partial struct DredAutoBreadcrumbsOutput1 { /// public unsafe AutoBreadcrumbNode1* pHeadAutoBreadcrumbNode; } /// /// D3D12_DRED_PAGE_FAULT_OUTPUT public partial struct DredPageFaultOutput { /// public ulong PageFaultVA; /// public unsafe DredAllocationNode* pHeadExistingAllocationNode; /// public unsafe DredAllocationNode* pHeadRecentFreedAllocationNode; } /// /// D3D12_DRED_PAGE_FAULT_OUTPUT1 public partial struct DredPageFaultOutput1 { /// public ulong PageFaultVA; /// public unsafe DredAllocationNode1* pHeadExistingAllocationNode; /// public unsafe DredAllocationNode1* pHeadRecentFreedAllocationNode; } /// /// D3D12_DRED_PAGE_FAULT_OUTPUT2 public partial struct DredPageFaultOutput2 { /// public ulong PageFaultVA; /// public unsafe DredAllocationNode1* pHeadExistingAllocationNode; /// public unsafe DredAllocationNode1* pHeadRecentFreedAllocationNode; /// public DredPageFaultFlags PageFaultFlags; } /// /// D3D12_DEVICE_REMOVED_EXTENDED_DATA1 public partial struct DeviceRemovedExtendedData1 { /// public HResult DeviceRemovedReason; /// public DredAutoBreadcrumbsOutput AutoBreadcrumbsOutput; /// public DredPageFaultOutput PageFaultOutput; } /// /// D3D12_DEVICE_REMOVED_EXTENDED_DATA2 public partial struct DeviceRemovedExtendedData2 { /// public HResult DeviceRemovedReason; /// public DredAutoBreadcrumbsOutput1 AutoBreadcrumbsOutput; /// public DredPageFaultOutput1 PageFaultOutput; } /// /// D3D12_DEVICE_REMOVED_EXTENDED_DATA3 public partial struct DeviceRemovedExtendedData3 { /// public HResult DeviceRemovedReason; /// public DredAutoBreadcrumbsOutput1 AutoBreadcrumbsOutput; /// public DredPageFaultOutput2 PageFaultOutput; /// public DredDeviceState DeviceState; } /// /// D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA public partial struct VersionedDeviceRemovedExtendedData { /// public DredVersion Version; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref DeviceRemovedExtendedData Dred_1_0 { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Dred_1_0; } } [UnscopedRef] public ref DeviceRemovedExtendedData1 Dred_1_1 { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Dred_1_1; } } [UnscopedRef] public ref DeviceRemovedExtendedData2 Dred_1_2 { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Dred_1_2; } } [UnscopedRef] public ref DeviceRemovedExtendedData3 Dred_1_3 { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Dred_1_3; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public DeviceRemovedExtendedData Dred_1_0; /// [FieldOffset(0)] public DeviceRemovedExtendedData1 Dred_1_1; /// [FieldOffset(0)] public DeviceRemovedExtendedData2 Dred_1_2; /// [FieldOffset(0)] public DeviceRemovedExtendedData3 Dred_1_3; } } /// /// D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_TYPE_COUNT public partial struct FeatureDataProtectedResourceSessionTypeCount { /// public uint NodeIndex; /// public uint Count; } /// /// D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_TYPES public partial struct FeatureDataProtectedResourceSessionTypes { /// public uint NodeIndex; /// public uint Count; /// public unsafe Guid* pTypes; } /// /// D3D12_PROTECTED_RESOURCE_SESSION_DESC1 public partial struct ProtectedResourceSessionDescription1 { /// public uint NodeMask; /// public ProtectedResourceSessionFlags Flags; /// public Guid ProtectionType; } /// /// D3D12_RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS public partial struct RenderPassBeginningAccessClearParameters { /// public ClearValue ClearValue; } /// /// D3D12_RENDER_PASS_BEGINNING_ACCESS_PRESERVE_LOCAL_PARAMETERS public partial struct RenderPassBeginningAccessPreserveLocalParameters { /// public uint AdditionalWidth; /// public uint AdditionalHeight; } /// /// D3D12_RENDER_PASS_BEGINNING_ACCESS public partial struct RenderPassBeginningAccess { /// public RenderPassBeginningAccessType Type; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref RenderPassBeginningAccessClearParameters Clear { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Clear; } } [UnscopedRef] public ref RenderPassBeginningAccessPreserveLocalParameters PreserveLocal { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.PreserveLocal; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public RenderPassBeginningAccessClearParameters Clear; /// [FieldOffset(0)] public RenderPassBeginningAccessPreserveLocalParameters PreserveLocal; } } /// /// D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS public partial struct RenderPassEndingAccessResolveSubresourceParameters { /// public uint SrcSubresource; /// public uint DstSubresource; /// public uint DstX; /// public uint DstY; /// public Rect SrcRect; } /// /// D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_PARAMETERS public partial struct RenderPassEndingAccessResolveParameters { /// public unsafe ID3D12Resource* pSrcResource; /// public unsafe ID3D12Resource* pDstResource; /// public uint SubresourceCount; /// public unsafe RenderPassEndingAccessResolveSubresourceParameters* pSubresourceParameters; /// public Graphics.Dxgi.Common.Format Format; /// public ResolveMode ResolveMode; /// public Bool32 PreserveResolveSource; } /// /// D3D12_RENDER_PASS_ENDING_ACCESS_PRESERVE_LOCAL_PARAMETERS public partial struct RenderPassEndingAccessPreserveLocalParameters { /// public uint AdditionalWidth; /// public uint AdditionalHeight; } /// /// D3D12_RENDER_PASS_ENDING_ACCESS public partial struct RenderPassEndingAccess { /// public RenderPassEndingAccessType Type; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref RenderPassEndingAccessResolveParameters Resolve { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.Resolve; } } [UnscopedRef] public ref RenderPassEndingAccessPreserveLocalParameters PreserveLocal { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.PreserveLocal; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public RenderPassEndingAccessResolveParameters Resolve; /// [FieldOffset(0)] public RenderPassEndingAccessPreserveLocalParameters PreserveLocal; } } /// /// D3D12_RENDER_PASS_RENDER_TARGET_DESC public partial struct RenderPassRenderTargetDescription { /// public CpuDescriptorHandle cpuDescriptor; /// public RenderPassBeginningAccess BeginningAccess; /// public RenderPassEndingAccess EndingAccess; } /// /// D3D12_RENDER_PASS_DEPTH_STENCIL_DESC public partial struct RenderPassDepthStencilDescription { /// public CpuDescriptorHandle cpuDescriptor; /// public RenderPassBeginningAccess DepthBeginningAccess; /// public RenderPassBeginningAccess StencilBeginningAccess; /// public RenderPassEndingAccess DepthEndingAccess; /// public RenderPassEndingAccess StencilEndingAccess; } /// /// D3D12_DISPATCH_RAYS_DESC public partial struct DispatchRaysDescription { /// public GpuVirtualAddressRange RayGenerationShaderRecord; /// public GpuVirtualAddressRangeAndStride MissShaderTable; /// public GpuVirtualAddressRangeAndStride HitGroupTable; /// public GpuVirtualAddressRangeAndStride CallableShaderTable; /// public uint Width; /// public uint Height; /// public uint Depth; } /// /// D3D12_SET_WORK_GRAPH_DESC public partial struct SetWorkGraphDescription { /// public ProgramIdentifier ProgramIdentifier; /// public SetWorkGraphFlags Flags; /// public GpuVirtualAddressRange BackingMemory; /// public GpuVirtualAddressRangeAndStride NodeLocalRootArgumentsTable; } /// /// D3D12_SET_RAYTRACING_PIPELINE_DESC public partial struct SetRaytracingPipelineDescription { /// public ProgramIdentifier ProgramIdentifier; } /// /// D3D12_SET_GENERIC_PIPELINE_DESC public partial struct SetGenericPipelineDescription { /// public ProgramIdentifier ProgramIdentifier; } /// /// D3D12_SET_PROGRAM_DESC public partial struct SetProgramDescription { /// public ProgramType Type; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref SetGenericPipelineDescription GenericPipeline { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.GenericPipeline; } } [UnscopedRef] public ref SetRaytracingPipelineDescription RaytracingPipeline { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.RaytracingPipeline; } } [UnscopedRef] public ref SetWorkGraphDescription WorkGraph { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.WorkGraph; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public SetGenericPipelineDescription GenericPipeline; /// [FieldOffset(0)] public SetRaytracingPipelineDescription RaytracingPipeline; /// [FieldOffset(0)] public SetWorkGraphDescription WorkGraph; } } /// /// D3D12_NODE_CPU_INPUT public partial struct NodeCpuInput { /// public uint EntrypointIndex; /// public uint NumRecords; /// public unsafe void* pRecords; /// public ulong RecordStrideInBytes; } /// /// D3D12_NODE_GPU_INPUT public partial struct NodeGpuInput { /// public uint EntrypointIndex; /// public uint NumRecords; /// public GpuVirtualAddressAndStride Records; } /// /// D3D12_MULTI_NODE_CPU_INPUT public partial struct MultiNodeCpuInput { /// public uint NumNodeInputs; /// public unsafe NodeCpuInput* pNodeInputs; /// public ulong NodeInputStrideInBytes; } /// /// D3D12_MULTI_NODE_GPU_INPUT public partial struct MultiNodeGpuInput { /// public uint NumNodeInputs; /// public GpuVirtualAddressAndStride NodeInputs; } /// /// D3D12_DISPATCH_GRAPH_DESC public partial struct DispatchGraphDescription { /// public DispatchMode Mode; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public ref NodeCpuInput NodeCPUInput { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.NodeCPUInput; } } [UnscopedRef] public ref ulong NodeGPUInput { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.NodeGPUInput; } } [UnscopedRef] public ref MultiNodeCpuInput MultiNodeCPUInput { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.MultiNodeCPUInput; } } [UnscopedRef] public ref ulong MultiNodeGPUInput { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.MultiNodeGPUInput; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public NodeCpuInput NodeCPUInput; /// [FieldOffset(0)] public ulong NodeGPUInput; /// [FieldOffset(0)] public MultiNodeCpuInput MultiNodeCPUInput; /// [FieldOffset(0)] public ulong MultiNodeGPUInput; } } /// /// D3D12_SHADER_CACHE_SESSION_DESC public partial struct ShaderCacheSessionDescription { /// public Guid Identifier; /// public ShaderCacheMode Mode; /// public ShaderCacheFlags Flags; /// public uint MaximumInMemoryCacheSizeBytes; /// public uint MaximumInMemoryCacheEntries; /// public uint MaximumValueFileSizeBytes; /// public ulong Version; } /// /// D3D12_BARRIER_SUBRESOURCE_RANGE public partial struct BarrierSubresourceRange { /// public uint IndexOrFirstMipLevel; /// public uint NumMipLevels; /// public uint FirstArraySlice; /// public uint NumArraySlices; /// public uint FirstPlane; /// public uint NumPlanes; } /// /// D3D12_GLOBAL_BARRIER public partial struct GlobalBarrier { /// public BarrierSync SyncBefore; /// public BarrierSync SyncAfter; /// public BarrierAccess AccessBefore; /// public BarrierAccess AccessAfter; } /// /// D3D12_TEXTURE_BARRIER public partial struct TextureBarrier { /// public BarrierSync SyncBefore; /// public BarrierSync SyncAfter; /// public BarrierAccess AccessBefore; /// public BarrierAccess AccessAfter; /// public BarrierLayout LayoutBefore; /// public BarrierLayout LayoutAfter; /// public unsafe ID3D12Resource* pResource; /// public BarrierSubresourceRange Subresources; /// public TextureBarrierFlags Flags; } /// /// D3D12_BUFFER_BARRIER public partial struct BufferBarrier { /// public BarrierSync SyncBefore; /// public BarrierSync SyncAfter; /// public BarrierAccess AccessBefore; /// public BarrierAccess AccessAfter; /// public unsafe ID3D12Resource* pResource; /// public ulong Offset; /// public ulong Size; } /// /// D3D12_BARRIER_GROUP public partial struct BarrierGroup { /// public BarrierType Type; /// public uint NumBarriers; /// public _Anonymous_e__Union Anonymous; [UnscopedRef] public unsafe ref GlobalBarrier* pGlobalBarriers { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.pGlobalBarriers; } } [UnscopedRef] public unsafe ref TextureBarrier* pTextureBarriers { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.pTextureBarriers; } } [UnscopedRef] public unsafe ref BufferBarrier* pBufferBarriers { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { return ref Anonymous.pBufferBarriers; } } [StructLayout(LayoutKind.Explicit)] public partial struct _Anonymous_e__Union { /// [FieldOffset(0)] public unsafe GlobalBarrier* pGlobalBarriers; /// [FieldOffset(0)] public unsafe TextureBarrier* pTextureBarriers; /// [FieldOffset(0)] public unsafe BufferBarrier* pBufferBarriers; } } /// /// D3D12_SUBRESOURCE_DATA public partial struct SubresourceData { /// public unsafe void* pData; /// public nint RowPitch; /// public nint SlicePitch; } /// /// D3D12_MEMCPY_DEST public partial struct MemcpyDest { /// public unsafe void* pData; /// public nuint RowPitch; /// public nuint SlicePitch; } /// /// D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS public partial struct DebugDeviceGpuBasedValidationSettings { /// public uint MaxMessagesPerCommandList; /// public GpuBasedValidationShaderPatchMode DefaultShaderPatchMode; /// public GpuBasedValidationPipelineStateCreateFlags PipelineStateCreateFlags; } /// /// D3D12_DEBUG_DEVICE_GPU_SLOWDOWN_PERFORMANCE_FACTOR public partial struct DebugDeviceGpuSlowdownPerformanceFactor { /// public float SlowdownFactor; } /// /// D3D12_DEBUG_COMMAND_LIST_GPU_BASED_VALIDATION_SETTINGS public partial struct DebugCommandListGpuBasedValidationSettings { /// public GpuBasedValidationShaderPatchMode ShaderPatchMode; } /// /// D3D12_MESSAGE public partial struct Message { /// public MessageCategory Category; /// public MessageSeverity Severity; /// public MessageId ID; /// public unsafe byte* pDescription; /// public nuint DescriptionByteLength; } /// /// D3D12_INFO_QUEUE_FILTER_DESC public partial struct InfoQueueFilterDescription { /// public uint NumCategories; /// public unsafe MessageCategory* pCategoryList; /// public uint NumSeverities; /// public unsafe MessageSeverity* pSeverityList; /// public uint NumIDs; /// public unsafe MessageId* pIDList; } /// /// D3D12_INFO_QUEUE_FILTER public partial struct InfoQueueFilter { /// public InfoQueueFilterDescription AllowList; /// public InfoQueueFilterDescription DenyList; } /// /// D3D12_DEVICE_CONFIGURATION_DESC public partial struct DeviceConfigurationDescription { /// public DeviceFlags Flags; /// public uint GpuBasedValidationFlags; /// public uint SDKVersion; /// public uint NumEnabledExperimentalFeatures; } /// /// D3D12_DISPATCH_MESH_ARGUMENTS public partial struct DispatchMeshArguments { /// public uint ThreadGroupCountX; /// public uint ThreadGroupCountY; /// public uint ThreadGroupCountZ; } /// /// D3D12_SIGNATURE_PARAMETER_DESC public partial struct SignatureParameterDescription { /// public unsafe byte* SemanticName; /// public uint SemanticIndex; /// public uint Register; /// public Graphics.Direct3D.Name SystemValueType; /// public Graphics.Direct3D.RegisterComponentType ComponentType; /// public byte Mask; /// public byte ReadWriteMask; /// public uint Stream; /// public Graphics.Direct3D.MinPrecision MinPrecision; } /// /// D3D12_SHADER_BUFFER_DESC public partial struct ShaderBufferDescription { /// public unsafe byte* Name; /// public Graphics.Direct3D.ConstantBufferType Type; /// public uint Variables; /// public uint Size; /// public uint uFlags; } /// /// D3D12_SHADER_VARIABLE_DESC public partial struct ShaderVariableDescription { /// public unsafe byte* Name; /// public uint StartOffset; /// public uint Size; /// public uint uFlags; /// public unsafe void* DefaultValue; /// public uint StartTexture; /// public uint TextureSize; /// public uint StartSampler; /// public uint SamplerSize; } /// /// D3D12_SHADER_TYPE_DESC public partial struct ShaderTypeDescription { /// public Graphics.Direct3D.ShaderVariableClass Class; /// public Graphics.Direct3D.ShaderVariableType Type; /// public uint Rows; /// public uint Columns; /// public uint Elements; /// public uint Members; /// public uint Offset; /// public unsafe byte* Name; } /// /// D3D12_SHADER_DESC public partial struct ShaderDescription { /// public uint Version; /// public unsafe byte* Creator; /// public uint Flags; /// public uint ConstantBuffers; /// public uint BoundResources; /// public uint InputParameters; /// public uint OutputParameters; /// public uint InstructionCount; /// public uint TempRegisterCount; /// public uint TempArrayCount; /// public uint DefCount; /// public uint DclCount; /// public uint TextureNormalInstructions; /// public uint TextureLoadInstructions; /// public uint TextureCompInstructions; /// public uint TextureBiasInstructions; /// public uint TextureGradientInstructions; /// public uint FloatInstructionCount; /// public uint IntInstructionCount; /// public uint UintInstructionCount; /// public uint StaticFlowControlCount; /// public uint DynamicFlowControlCount; /// public uint MacroInstructionCount; /// public uint ArrayInstructionCount; /// public uint CutInstructionCount; /// public uint EmitInstructionCount; /// public Graphics.Direct3D.PrimitiveTopology GSOutputTopology; /// public uint GSMaxOutputVertexCount; /// public Graphics.Direct3D.Primitive InputPrimitive; /// public uint PatchConstantParameters; /// public uint cGSInstanceCount; /// public uint cControlPoints; /// public Graphics.Direct3D.TessellatorOutputPrimitive HSOutputPrimitive; /// public Graphics.Direct3D.TessellatorPartitioning HSPartitioning; /// public Graphics.Direct3D.TessellatorDomain TessellatorDomain; /// public uint cBarrierInstructions; /// public uint cInterlockedInstructions; /// public uint cTextureStoreInstructions; } /// /// D3D12_SHADER_INPUT_BIND_DESC public partial struct ShaderInputBindDescription { /// public unsafe byte* Name; /// public Graphics.Direct3D.ShaderInputType Type; /// public uint BindPoint; /// public uint BindCount; /// public uint uFlags; /// public Graphics.Direct3D.ResourceReturnType ReturnType; /// public Graphics.Direct3D.SrvDimension Dimension; /// public uint NumSamples; /// public uint Space; /// public uint uID; } /// /// D3D12_LIBRARY_DESC public partial struct LibraryDescription { /// public unsafe byte* Creator; /// public uint Flags; /// public uint FunctionCount; } /// /// D3D12_FUNCTION_DESC public partial struct FunctionDescription { /// public uint Version; /// public unsafe byte* Creator; /// public uint Flags; /// public uint ConstantBuffers; /// public uint BoundResources; /// public uint InstructionCount; /// public uint TempRegisterCount; /// public uint TempArrayCount; /// public uint DefCount; /// public uint DclCount; /// public uint TextureNormalInstructions; /// public uint TextureLoadInstructions; /// public uint TextureCompInstructions; /// public uint TextureBiasInstructions; /// public uint TextureGradientInstructions; /// public uint FloatInstructionCount; /// public uint IntInstructionCount; /// public uint UintInstructionCount; /// public uint StaticFlowControlCount; /// public uint DynamicFlowControlCount; /// public uint MacroInstructionCount; /// public uint ArrayInstructionCount; /// public uint MovInstructionCount; /// public uint MovcInstructionCount; /// public uint ConversionInstructionCount; /// public uint BitwiseInstructionCount; /// public Graphics.Direct3D.FeatureLevel MinFeatureLevel; /// public ulong RequiredFeatureFlags; /// public unsafe byte* Name; /// public int FunctionParameterCount; /// public Bool32 HasReturn; /// public Bool32 Has10Level9VertexShader; /// public Bool32 Has10Level9PixelShader; } /// /// D3D12_PARAMETER_DESC public partial struct ParameterDescription { /// public unsafe byte* Name; /// public unsafe byte* SemanticName; /// public Graphics.Direct3D.ShaderVariableType Type; /// public Graphics.Direct3D.ShaderVariableClass Class; /// public uint Rows; /// public uint Columns; /// public Graphics.Direct3D.InterpolationMode InterpolationMode; /// public Graphics.Direct3D.ParameterFlags Flags; /// public uint FirstInRegister; /// public uint FirstInComponent; /// public uint FirstOutRegister; /// public uint FirstOutComponent; }