Поделиться через


структура D3D12DDI_DEVICE_FUNCS_CORE_0052 (d3d12umddi.h)

Основные функции устройства.

Синтаксис

typedef struct D3D12DDI_DEVICE_FUNCS_CORE_0052 {
  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_0050                     pfnCalcPrivateCommandQueueSize;
  PFND3D12DDI_CREATECOMMANDQUEUE_0050                              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;
  PFND3D12DDI_CALCPRIVATESCHEDULINGGROUPSIZE_0050                  pfnCalcPrivateSchedulingGroupSize;
  PFND3D12DDI_CREATESCHEDULINGGROUP_0050                           pfnCreateSchedulingGroup;
  PFND3D12DDI_DESTROYSCHEDULINGGROUP_0050                          pfnDestroySchedulingGroup;
  PFND3D12DDI_ENUMERATE_META_COMMANDS_0052                         pfnEnumerateMetaCommands;
  PFND3D12DDI_ENUMERATE_META_COMMAND_PARAMETERS_0052               pfnEnumerateMetaCommandParameters;
  PFND3D12DDI_CALC_PRIVATE_META_COMMAND_SIZE_0052                  pfnCalcPrivateMetaCommandSize;
  PFND3D12DDI_CREATE_META_COMMAND_0052                             pfnCreateMetaCommand;
  PFND3D12DDI_DESTROY_META_COMMAND_0052                            pfnDestroyMetaCommand;
  PFND3D12DDI_GET_META_COMMAND_REQUIRED_PARAMETER_INFO_0052        pfnGetMetaCommandRequiredParameterInfo;
} D3D12DDI_DEVICE_FUNCS_CORE_0052;

Члены

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

Получение дескриптора ЦП для запуска кучи.

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

Задайте пул команд в качестве целевого объекта для средства записи команд.

pfnCalcPrivateSchedulingGroupSize

Вычислите размер частной группы планирования.

pfnCreateSchedulingGroup

Создайте группу планирования.

pfnDestroySchedulingGroup

Уничтожить группу планирования.

pfnEnumerateMetaCommands

Перечисление мета-команд.

pfnEnumerateMetaCommandParameters

Перечисление параметров метакоманд.

pfnCalcPrivateMetaCommandSize

Вычислите размер частной мета-команды.

pfnCreateMetaCommand

Создайте мета-команду.

pfnDestroyMetaCommand

Уничтожить метакоманду.

pfnGetMetaCommandRequiredParameterInfo

Получение необходимых сведений о параметрах метакоманд.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 10 версии 1809
заголовка d3d12umddi.h