D3D12DDI_DEVICE_FUNCS_CORE_0043 結構 (d3d12umddi.h)
核心裝置功能。
語法
typedef struct D3D12DDI_DEVICE_FUNCS_CORE_0043
{
PFND3D12DDI_CHECKFORMATSUPPORT pfnCheckFormatSupport;
PFND3D12DDI_CHECKMULTISAMPLEQUALITYLEVELS pfnCheckMultisampleQualityLevels;
PFND3D12DDI_GETMIPPACKING pfnGetMipPacking;
PFND3D12DDI_CALCPRIVATEELEMENTLAYOUTSIZE_0010 pfnCalcPrivateElementLayoutSize;
PFND3D12DDI_CREATEELEMENTLAYOUT_0010 pfnCreateElementLayout;
PFND3D12DDI_DESTROYELEMENTLAYOUT pfnDestroyElementLayout;
PFND3D12DDI_CALCPRIVATEBLENDSTATESIZE_0010 pfnCalcPrivateBlendStateSize;
PFND3D12DDI_CREATEBLENDSTATE_0010 pfnCreateBlendState;
PFND3D12DDI_DESTROYBLENDSTATE pfnDestroyBlendState;
PFND3D12DDI_CALCPRIVATEDEPTHSTENCILSTATESIZE_0025 pfnCalcPrivateDepthStencilStateSize;
PFND3D12DDI_CREATEDEPTHSTENCILSTATE_0025 pfnCreateDepthStencilState;
PFND3D12DDI_DESTROYDEPTHSTENCILSTATE pfnDestroyDepthStencilState;
PFND3D12DDI_CALCPRIVATERASTERIZERSTATESIZE_0010 pfnCalcPrivateRasterizerStateSize;
PFND3D12DDI_CREATERASTERIZERSTATE_0010 pfnCreateRasterizerState;
PFND3D12DDI_DESTROYRASTERIZERSTATE pfnDestroyRasterizerState;
PFND3D12DDI_CALC_PRIVATE_SHADER_SIZE_0026 pfnCalcPrivateShaderSize;
PFND3D12DDI_CREATE_SHADER_0026 pfnCreateVertexShader;
PFND3D12DDI_CREATE_SHADER_0026 pfnCreatePixelShader;
PFND3D12DDI_CREATE_SHADER_0026 pfnCreateGeometryShader;
PFND3D12DDI_CREATE_SHADER_0026 pfnCreateComputeShader;
PFND3D12DDI_CALC_PRIVATE_GEOMETRY_SHADER_WITH_STREAM_OUTPUT_0026 pfnCalcPrivateGeometryShaderWithStreamOutput;
PFND3D12DDI_CREATE_GEOMETRY_SHADER_WITH_STREAM_OUTPUT_0026 pfnCreateGeometryShaderWithStreamOutput;
PFND3D12DDI_CALC_PRIVATE_SHADER_SIZE_0026 pfnCalcPrivateTessellationShaderSize;
PFND3D12DDI_CREATE_SHADER_0026 pfnCreateHullShader;
PFND3D12DDI_CREATE_SHADER_0026 pfnCreateDomainShader;
PFND3D12DDI_DESTROYSHADER pfnDestroyShader;
PFND3D12DDI_CALCPRIVATECOMMANDQUEUESIZE_0023 pfnCalcPrivateCommandQueueSize;
PFND3D12DDI_CREATECOMMANDQUEUE_0023 pfnCreateCommandQueue;
PFND3D12DDI_DESTROYCOMMANDQUEUE pfnDestroyCommandQueue;
PFND3D12DDI_CALC_PRIVATE_COMMAND_POOL_SIZE_0040 pfnCalcPrivateCommandPoolSize;
PFND3D12DDI_CREATE_COMMAND_POOL_0040 pfnCreateCommandPool;
PFND3D12DDI_DESTROY_COMMAND_POOL_0040 pfnDestroyCommandPool;
PFND3D12DDI_RESET_COMMAND_POOL_0040 pfnResetCommandPool;
PFND3D12DDI_CALC_PRIVATE_PIPELINE_STATE_SIZE_0033 pfnCalcPrivatePipelineStateSize;
PFND3D12DDI_CREATE_PIPELINE_STATE_0033 pfnCreatePipelineState;
PFND3D12DDI_DESTROY_PIPELINE_STATE pfnDestroyPipelineState;
PFND3D12DDI_CALC_PRIVATE_COMMAND_LIST_SIZE_0040 pfnCalcPrivateCommandListSize;
PFND3D12DDI_CREATE_COMMAND_LIST_0040 pfnCreateCommandList;
PFND3D12DDI_DESTROYCOMMANDLIST pfnDestroyCommandList;
PFND3D12DDI_CALCPRIVATEFENCESIZE pfnCalcPrivateFenceSize;
PFND3D12DDI_CREATEFENCE pfnCreateFence;
PFND3D12DDI_DESTROYFENCE pfnDestroyFence;
PFND3D12DDI_CALC_PRIVATE_DESCRIPTOR_HEAP_SIZE_0001 pfnCalcPrivateDescriptorHeapSize;
PFND3D12DDI_CREATE_DESCRIPTOR_HEAP_0001 pfnCreateDescriptorHeap;
PFND3D12DDI_DESTROY_DESCRIPTOR_HEAP pfnDestroyDescriptorHeap;
PFND3D12DDI_GET_DESCRIPTOR_SIZE_IN_BYTES pfnGetDescriptorSizeInBytes;
PFND3D12DDI_GET_CPU_DESCRIPTOR_HANDLE_FOR_HEAP_START pfnGetCPUDescriptorHandleForHeapStart;
PFND3D12DDI_GET_GPU_DESCRIPTOR_HANDLE_FOR_HEAP_START pfnGetGPUDescriptorHandleForHeapStart;
PFND3D12DDI_CREATE_SHADER_RESOURCE_VIEW_0002 pfnCreateShaderResourceView;
PFND3D12DDI_CREATE_CONSTANT_BUFFER_VIEW pfnCreateConstantBufferView;
PFND3D12DDI_CREATE_SAMPLER pfnCreateSampler;
PFND3D12DDI_CREATE_UNORDERED_ACCESS_VIEW_0002 pfnCreateUnorderedAccessView;
PFND3D12DDI_CREATE_RENDER_TARGET_VIEW_0002 pfnCreateRenderTargetView;
PFND3D12DDI_CREATE_DEPTH_STENCIL_VIEW pfnCreateDepthStencilView;
PFND3D12DDI_CALC_PRIVATE_ROOT_SIGNATURE_SIZE_0013 pfnCalcPrivateRootSignatureSize;
PFND3D12DDI_CREATE_ROOT_SIGNATURE_0013 pfnCreateRootSignature;
PFND3D12DDI_DESTROY_ROOT_SIGNATURE pfnDestroyRootSignature;
PFND3D12DDI_MAPHEAP pfnMapHeap;
PFND3D12DDI_UNMAPHEAP pfnUnmapHeap;
PFND3D12DDI_CALCPRIVATEHEAPANDRESOURCESIZES_0030 pfnCalcPrivateHeapAndResourceSizes;
PFND3D12DDI_CREATEHEAPANDRESOURCE_0030 pfnCreateHeapAndResource;
PFND3D12DDI_DESTROYHEAPANDRESOURCE pfnDestroyHeapAndResource;
PFND3D12DDI_MAKERESIDENT_0001 pfnMakeResident;
PFND3D12DDI_EVICT2 pfnEvict;
PFND3D12DDI_CALCPRIVATEOPENEDHEAPANDRESOURCESIZES_0043 pfnCalcPrivateOpenedHeapAndResourceSizes;
PFND3D12DDI_OPENHEAPANDRESOURCE_0043 pfnOpenHeapAndResource;
PFND3D12DDI_COPY_DESCRIPTORS_0003 pfnCopyDescriptors;
PFND3D12DDI_COPY_DESCRIPTORS_SIMPLE_0003 pfnCopyDescriptorsSimple;
PFND3D12DDI_CALC_PRIVATE_QUERY_HEAP_SIZE_0001 pfnCalcPrivateQueryHeapSize;
PFND3D12DDI_CREATE_QUERY_HEAP_0001 pfnCreateQueryHeap;
PFND3D12DDI_DESTROY_QUERY_HEAP pfnDestroyQueryHeap;
PFND3D12DDI_CALC_PRIVATE_COMMAND_SIGNATURE_SIZE_0001 pfnCalcPrivateCommandSignatureSize;
PFND3D12DDI_CREATE_COMMAND_SIGNATURE_0001 pfnCreateCommandSignature;
PFND3D12DDI_DESTROY_COMMAND_SIGNATURE pfnDestroyCommandSignature;
PFND3D12DDI_CHECKRESOURCEVIRTUALADDRESS pfnCheckResourceVirtualAddress;
PFND3D12DDI_CHECKRESOURCEALLOCATIONINFO_0022 pfnCheckResourceAllocationInfo;
PFND3D12DDI_CHECKSUBRESOURCEINFO pfnCheckSubresourceInfo;
PFND3D12DDI_CHECKEXISITINGRESOURCEALLOCATIONINFO_0022 pfnCheckExistingResourceAllocationInfo;
PFND3D12DDI_OFFERRESOURCES pfnOfferResources;
PFND3D12DDI_RECLAIMRESOURCES_0001 pfnReclaimResources;
PFND3D12DDI_GETIMPLICITPHYSICALADAPTERMASK pfnGetImplicitPhysicalAdapterMask;
PFND3D12DDI_GET_PRESENT_PRIVATE_DRIVER_DATA_SIZE pfnGetPresentPrivateDriverDataSize;
PFND3D12DDI_QUERY_NODE_MAP pfnQueryNodeMap;
PFND3D12DDI_RETRIEVE_SHADER_COMMENT_0003 pfnRetrieveShaderComment;
PFND3D12DDI_CHECKRESOURCEALLOCATIONHANDLE pfnCheckResourceAllocationHandle;
PFND3D12DDI_CALC_PRIVATE_PIPELINE_LIBRARY_SIZE_0010 pfnCalcPrivatePipelineLibrarySize;
PFND3D12DDI_CREATE_PIPELINE_LIBRARY_0010 pfnCreatePipelineLibrary;
PFND3D12DDI_DESTROY_PIPELINE_LIBRARY_0010 pfnDestroyPipelineLibrary;
PFND3D12DDI_ADD_PIPELINE_STATE_TO_LIBRARY_0010 pfnAddPipelineStateToLibrary;
PFND3D12DDI_CALC_SERIALIZED_LIBRARY_SIZE_0010 pfnCalcSerializedLibrarySize;
PFND3D12DDI_SERIALIZE_LIBRARY_0010 pfnSerializeLibrary;
PFND3D12DDI_GET_DEBUG_ALLOCATION_INFO_0014 pfnGetDebugAllocationInfo;
PFND3D12DDI_CALC_PRIVATE_COMMAND_RECORDER_SIZE_0040 pfnCalcPrivateCommandRecorderSize;
PFND3D12DDI_CREATE_COMMAND_RECORDER_0040 pfnCreateCommandRecorder;
PFND3D12DDI_DESTROY_COMMAND_RECORDER_0040 pfnDestroyCommandRecorder;
PFND3D12DDI_COMMAND_RECORDER_SET_COMMAND_POOL_AS_TARGET_0040 pfnCommandRecorderSetCommandPoolAsTarget;
} D3D12DDI_DEVICE_FUNCS_CORE_0043;
成員
pfnCheckFormatSupport
檢查格式支援。
pfnCheckMultisampleQualityLevels
檢查多個樣本質量等級。
pfnGetMipPacking
取得 MIP 封裝。
pfnCalcPrivateElementLayoutSize
計算私用專案配置大小。
pfnCreateElementLayout
建立專案配置。
pfnDestroyElementLayout
終結專案配置。
pfnCalcPrivateBlendStateSize
計算私人混合狀態大小。
pfnCreateBlendState
建立混合狀態。
pfnDestroyBlendState
終結混合狀態。
pfnCalcPrivateDepthStencilStateSize
計算私人深度樣板狀態大小。
pfnCreateDepthStencilState
建立深度樣板狀態。
pfnDestroyDepthStencilState
終結深度樣板狀態。
pfnCalcPrivateRasterizerStateSize
計算私人轉譯器狀態大小。
pfnCreateRasterizerState
建立轉譯器狀態。
pfnDestroyRasterizerState
終結轉譯器狀態。
pfnCalcPrivateShaderSize
計算私人著色器大小。
pfnCreateVertexShader
建立頂點著色器。
pfnCreatePixelShader
建立圖元著色器。
pfnCreateGeometryShader
建立幾何著色器。
pfnCreateComputeShader
建立計算著色器。
pfnCalcPrivateGeometryShaderWithStreamOutput
使用數據流輸出計算私用幾何著色器。
pfnCreateGeometryShaderWithStreamOutput
使用數據流輸出建立幾何著色器。
pfnCalcPrivateTessellationShaderSize
計算私人鑲嵌著色器大小。
pfnCreateHullShader
建立殼層著色器。
pfnCreateDomainShader
建立網域著色器。
pfnDestroyShader
終結著色器。
pfnCalcPrivateCommandQueueSize
計算私人命令佇列大小。
pfnCreateCommandQueue
建立命令佇列。
pfnDestroyCommandQueue
終結命令佇列。
pfnCalcPrivateCommandPoolSize
計算私用命令配置器大小。
pfnCreateCommandPool
建立命令配置器。
pfnDestroyCommandPool
終結命令配置器。
pfnResetCommandPool
重設命令配置器。
pfnCalcPrivatePipelineStateSize
計算私人管線狀態大小。
pfnCreatePipelineState
建立管線狀態。
pfnDestroyPipelineState
終結管線狀態。
pfnCalcPrivateCommandListSize
計算私人命令清單大小。
pfnCreateCommandList
建立命令清單。
pfnDestroyCommandList
終結命令清單。
pfnCalcPrivateFenceSize
計算私人柵欄大小。
pfnCreateFence
建立柵欄。
pfnDestroyFence
終結柵欄。
pfnCalcPrivateDescriptorHeapSize
計算私人描述元堆積大小。
pfnCreateDescriptorHeap
建立描述元堆積。
pfnDestroyDescriptorHeap
終結描述項堆積。
pfnGetDescriptorSizeInBytes
取得以位元組為單位的描述元大小。
pfnGetCPUDescriptorHandleForHeapStart
取得堆積啟動的CPU描述項句柄。
pfnGetGPUDescriptorHandleForHeapStart
取得堆積啟動的 GPU 描述項句柄。
pfnCreateShaderResourceView
建立著色器資源檢視。
pfnCreateConstantBufferView
建立常數緩衝區檢視。
pfnCreateSampler
建立取樣器。
pfnCreateUnorderedAccessView
建立未排序的存取檢視。
pfnCreateRenderTargetView
建立轉譯目標檢視。
pfnCreateDepthStencilView
建立深度樣板檢視。
pfnCalcPrivateRootSignatureSize
計算私人根簽章大小。
pfnCreateRootSignature
建立根簽章。
pfnDestroyRootSignature
終結根簽章。
pfnMapHeap
對應堆積。
pfnUnmapHeap
取消對應堆積。
pfnCalcPrivateHeapAndResourceSizes
計算私人堆積和資源大小。
pfnCreateHeapAndResource
建立堆積和資源。
pfnDestroyHeapAndResource
終結堆積和資源。
pfnMakeResident
建立常駐。
pfnEvict
驅逐。
pfnCalcPrivateOpenedHeapAndResourceSizes
計算私用開啟的堆積和資源大小。
pfnOpenHeapAndResource
開啟堆積和資源。
pfnCopyDescriptors
複製描述項。
pfnCopyDescriptorsSimple
複製描述項範例。
pfnCalcPrivateQueryHeapSize
計算私人查詢堆積大小。
pfnCreateQueryHeap
建立查詢堆積。
pfnDestroyQueryHeap
終結查詢堆積。
pfnCalcPrivateCommandSignatureSize
計算私用命令簽章大小。
pfnCreateCommandSignature
建立命令簽章。
pfnDestroyCommandSignature
終結命令簽章。
pfnCheckResourceVirtualAddress
檢查資源虛擬位址。
pfnCheckResourceAllocationInfo
檢查資源配置資訊。
pfnCheckSubresourceInfo
檢查子資源資訊。
pfnCheckExistingResourceAllocationInfo
檢查現有的資源配置資訊。
pfnOfferResources
提供資源。
pfnReclaimResources
回收資源。
pfnGetImplicitPhysicalAdapterMask
取得隱含的實體配接器遮罩。
pfnGetPresentPrivateDriverDataSize
取得呈現私人驅動程序數據大小。
pfnQueryNodeMap
查詢節點對應。
pfnRetrieveShaderComment
擷取著色器批注。
pfnCheckResourceAllocationHandle
檢查資源配置句柄。
pfnCalcPrivatePipelineLibrarySize
計算私人管線連結庫大小。
pfnCreatePipelineLibrary
建立管線連結庫。
pfnDestroyPipelineLibrary
終結管線連結庫。
pfnAddPipelineStateToLibrary
將管線狀態新增至連結庫。
pfnCalcSerializedLibrarySize
計算串行化連結庫大小。
pfnSerializeLibrary
串行化連結庫。
pfnGetDebugAllocationInfo
取得偵錯配置資訊。
pfnCalcPrivateCommandRecorderSize
計算私人命令錄製器大小。
pfnCreateCommandRecorder
建立命令錄製器。
pfnDestroyCommandRecorder
終結命令錄製器。
pfnCommandRecorderSetCommandPoolAsTarget
將命令集區設定為命令錄製器的目標。
規格需求
需求 | 值 |
---|---|
標頭 | d3d12umddi.h |