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

Основные функции устройств, доступные в D3D12, выпуск 6, сборка версии 3.

Синтаксис

typedef struct D3D12DDI_DEVICE_FUNCS_CORE_0063 {
  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;
  PFND3D12DDI_CALC_PRIVATE_STATE_OBJECT_SIZE_0054                      pfnCalcPrivateStateObjectSize;
  PFND3D12DDI_CREATE_STATE_OBJECT_0054                                 pfnCreateStateObject;
  PFND3D12DDI_DESTROY_STATE_OBJECT_0054                                pfnDestroyStateObject;
  PFND3D12DDI_GET_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO_0054 pfnGetRaytracingAccelerationStructurePrebuildInfo;
  PFND3D12DDI_CHECK_DRIVER_MATCHING_IDENTIFIER_0054                    pfnCheckDriverMatchingIdentifier;
  PFND3D12DDI_GET_SHADER_IDENTIFIER_0054                               pfnGetShaderIdentifier;
  PFND3D12DDI_GET_SHADER_STACK_SIZE_0054                               pfnGetShaderStackSize;
  PFND3D12DDI_GET_PIPELINE_STACK_SIZE_0054                             pfnGetPipelineStackSize;
  PFND3D12DDI_SET_PIPELINE_STACK_SIZE_0054                             pfnSetPipelineStackSize;
  PFND3D12DDI_SET_BACKGROUND_PROCESSING_MODE_0063                      pfnSetBackgroundProcessingMode;
} D3D12DDI_DEVICE_FUNCS_CORE_0063;

Члены

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

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

pfnCalcPrivateStateObjectSize

Вычислите размер объекта частного состояния.

pfnCreateStateObject

Создание объекта состояния.

pfnDestroyStateObject

Уничтожить объект состояния.

pfnGetRaytracingAccelerationStructurePrebuildInfo

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

pfnCheckDriverMatchingIdentifier

Проверьте соответствующий идентификатор драйвера.

pfnGetShaderIdentifier

Получение идентификатора шейдера.

pfnGetShaderStackSize

Получение размера стека шейдера.

pfnGetPipelineStackSize

Получение размера стека конвейера.

pfnSetPipelineStackSize

Задайте размер стека конвейера.

pfnSetBackgroundProcessingMode

Задает режим фоновой обработки.

Требования

Требование Значение
Минимальная версия клиента Windows 10 версии 1903
Верхняя часть d3d12umddi.h