Condividi tramite


struttura D3D12DDI_DEVICE_FUNCS_CORE_0040 (d3d12umddi.h)

Funzioni del dispositivo di base.

Sintassi

typedef struct D3D12DDI_DEVICE_FUNCS_CORE_0040
{
    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_0003              pfnCalcPrivateOpenedHeapAndResourceSizes;
    PFND3D12DDI_OPENHEAPANDRESOURCE_0003                                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_0040;

Members

pfnCheckFormatSupport

Controllare il supporto del formato.

pfnCheckMultisampleQualityLevels

Controllare i livelli di qualità multi campione.

pfnGetMipPacking

Ottenere il pacchetto MIP.

pfnCalcPrivateElementLayoutSize

Calcolare le dimensioni del layout degli elementi privati.

pfnCreateElementLayout

Creare il layout degli elementi.

pfnDestroyElementLayout

Eliminare definitivamente il layout degli elementi.

pfnCalcPrivateBlendStateSize

Calcolare le dimensioni dello stato di fusione privato.

pfnCreateBlendState

Creare lo stato di fusione.

pfnDestroyBlendState

Eliminare lo stato di fusione.

pfnCalcPrivateDepthStencilStateSize

Calcolare le dimensioni dello stato dello stencil di profondità privato.

pfnCreateDepthStencilState

Creare lo stato dello stencil di profondità.

pfnDestroyDepthStencilState

Eliminare lo stato dello stencil di profondità.

pfnCalcPrivateRasterizerStateSize

Calcolare le dimensioni dello stato del rasterizzatore privato.

pfnCreateRasterizerState

Creare lo stato del rasterizzatore.

pfnDestroyRasterizerState

Distruggere lo stato del rasterizzatore.

pfnCalcPrivateShaderSize

Calcolare le dimensioni dello shader privato.

pfnCreateVertexShader

Creare il vertex shader.

pfnCreatePixelShader

Creare pixel shader.

pfnCreateGeometryShader

Creare uno shader geometry.

pfnCreateComputeShader

Creare lo shader di calcolo.

pfnCalcPrivateGeometryShaderWithStreamOutput

Calcolare lo shader geometry privato con l'output del flusso.

pfnCreateGeometryShaderWithStreamOutput

Creare geometry shader con output del flusso.

pfnCalcPrivateTessellationShaderSize

Calcolare le dimensioni dello shader a mosaico privato.

pfnCreateHullShader

Creare lo hull shader.

pfnCreateDomainShader

Creare lo shader di dominio.

pfnDestroyShader

Distruggere lo shader.

pfnCalcPrivateCommandQueueSize

Calcolare le dimensioni della coda dei comandi privata.

pfnCreateCommandQueue

Creare la coda dei comandi.

pfnDestroyCommandQueue

Eliminare definitivamente la coda dei comandi.

pfnCalcPrivateCommandPoolSize

Calcolare le dimensioni dell'allocatore del comando privato.

pfnCreateCommandPool

Creare l'allocatore dei comandi.

pfnDestroyCommandPool

Distruggere l'allocatore dei comandi.

pfnResetCommandPool

Reimpostare l'allocatore dei comandi.

pfnCalcPrivatePipelineStateSize

Calcolare le dimensioni dello stato della pipeline privata.

pfnCreatePipelineState

Creare lo stato della pipeline.

pfnDestroyPipelineState

Eliminare definitivamente lo stato della pipeline.

pfnCalcPrivateCommandListSize

Calcolare le dimensioni dell'elenco dei comandi privati.

pfnCreateCommandList

Creare l'elenco dei comandi.

pfnDestroyCommandList

Eliminare definitivamente l'elenco di comandi.

pfnCalcPrivateFenceSize

Calcolare le dimensioni del recinto privato.

pfnCreateFence

Creare un recinto.

pfnDestroyFence

Distruggere il recinto.

pfnCalcPrivateDescriptorHeapSize

Calcolare le dimensioni dell'heap del descrittore privato.

pfnCreateDescriptorHeap

Creare l'heap del descrittore.

pfnDestroyDescriptorHeap

Distruggere l'heap del descrittore.

pfnGetDescriptorSizeInBytes

Ottiene le dimensioni del descrittore in byte.

pfnGetCPUDescriptorHandleForHeapStart

Ottenere l'handle del descrittore della CPU per l'avvio dell'heap.

pfnGetGPUDescriptorHandleForHeapStart

Ottenere l'handle del descrittore GPU per l'avvio dell'heap.

pfnCreateShaderResourceView

Creare la visualizzazione delle risorse dello shader.

pfnCreateConstantBufferView

Creare una visualizzazione buffer costante.

pfnCreateSampler

Creare un campionatore.

pfnCreateUnorderedAccessView

Creare una visualizzazione di accesso non ordinata.

pfnCreateRenderTargetView

Creare la visualizzazione di destinazione di rendering.

pfnCreateDepthStencilView

Creare una visualizzazione depth stencil.

pfnCalcPrivateRootSignatureSize

Calcolare le dimensioni della firma radice privata.

pfnCreateRootSignature

Creare la firma radice.

pfnDestroyRootSignature

Eliminare definitivamente la firma radice.

pfnMapHeap

Heap mappa.

pfnUnmapHeap

Heap di unmap.

pfnCalcPrivateHeapAndResourceSizes

Calcolare le dimensioni dell'heap privato e delle risorse.

pfnCreateHeapAndResource

Creare heap e risorsa.

pfnDestroyHeapAndResource

Eliminare l'heap e la risorsa.

pfnMakeResident

Fai residente.

pfnEvict

Rimuovere.

pfnCalcPrivateOpenedHeapAndResourceSizes

Calcolare le dimensioni dell'heap e delle risorse aperte private.

pfnOpenHeapAndResource

Aprire heap e risorsa.

pfnCopyDescriptors

Copiare i descrittori.

pfnCopyDescriptorsSimple

Copiare l'esempio di descrittori.

pfnCalcPrivateQueryHeapSize

Calcolare le dimensioni dell'heap delle query private.

pfnCreateQueryHeap

Creare l'heap di query.

pfnDestroyQueryHeap

Eliminare definitivamente l'heap di query.

pfnCalcPrivateCommandSignatureSize

Calcolare le dimensioni della firma del comando privato.

pfnCreateCommandSignature

Creare la firma del comando.

pfnDestroyCommandSignature

Eliminare la firma del comando.

pfnCheckResourceVirtualAddress

Controllare l'indirizzo virtuale della risorsa.

pfnCheckResourceAllocationInfo

Controllare le informazioni sull'allocazione delle risorse.

pfnCheckSubresourceInfo

controllare le informazioni sulla sottorisorsa.

pfnCheckExistingResourceAllocationInfo

Controllare le informazioni sull'allocazione delle risorse esistenti.

pfnOfferResources

Offrire risorse.

pfnReclaimResources

Recuperare le risorse.

pfnGetImplicitPhysicalAdapterMask

Ottiene la maschera dell'adattatore fisico implicita.

pfnGetPresentPrivateDriverDataSize

Ottenere le dimensioni dei dati dei driver privati.

pfnQueryNodeMap

Eseguire query sulla mappa dei nodi.

pfnRetrieveShaderComment

Recuperare il commento dello shader.

pfnCheckResourceAllocationHandle

Controllare l'handle di allocazione delle risorse.

pfnCalcPrivatePipelineLibrarySize

Calcolare le dimensioni della libreria della pipeline privata.

pfnCreatePipelineLibrary

Creare la libreria della pipeline.

pfnDestroyPipelineLibrary

Eliminare definitivamente la libreria della pipeline.

pfnAddPipelineStateToLibrary

Aggiungere lo stato della pipeline alla libreria.

pfnCalcSerializedLibrarySize

Calcolare le dimensioni della libreria serializzata.

pfnSerializeLibrary

Serializzare la libreria.

pfnGetDebugAllocationInfo

Ottenere informazioni sull'allocazione di debug.

pfnCalcPrivateCommandRecorderSize

Calcolare le dimensioni del registratore di comandi privato.

pfnCreateCommandRecorder

Creare il registratore dei comandi.

pfnDestroyCommandRecorder

Eliminare il registratore dei comandi.

pfnCommandRecorderSetCommandPoolAsTarget

Impostare il pool di comandi come destinazione per il registratore di comandi.

Requisiti

Requisito Valore
Intestazione d3d12umddi.h