структура D3D12DDI_DEVICE_FUNCS_CORE_0072 (d3d12umddi.h)
Основные функции устройств, доступные в D3D12 версии 7, сборка ред 2.
Синтаксис
typedef struct D3D12DDI_DEVICE_FUNCS_CORE_0072 {
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;
PFND3D12DDI_CALC_PRIVATE_ADD_TO_STATE_OBJECT_SIZE_0072 pfnCalcPrivateAddToStateObjectSize;
PFND3D12DDI_ADD_TO_STATE_OBJECT_0072 pfnAddToStateObject;
} D3D12DDI_DEVICE_FUNCS_CORE_0072;
Члены
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
Задает режим фоновой обработки.
pfnCalcPrivateAddToStateObjectSize
Вычисление размера частного добавления к размеру объекта состояния. Дополнительные сведения см. в функциональных спецификаций DirectX Raytracing (DXR).
pfnAddToStateObject
Добавление в объект состояния. Дополнительные сведения см. в функциональных спецификаций DirectX Raytracing (DXR).
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 10 версии 2004 |
заголовка | d3d12umddi.h |