D3D12DDI_DEVICE_FUNCS_CORE_0063 구조체(d3d12umddi.h)

D3D12 릴리스 6, 빌드 rev 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

힙 시작에 대한 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

명령 풀을 명령 레코더의 대상으로 설정합니다.

pfnCalcPrivateSchedulingGroupSize

프라이빗 일정 그룹 크기를 계산합니다.

pfnCreateSchedulingGroup

일정 그룹을 만듭니다.

pfnDestroySchedulingGroup

예약 그룹을 삭제합니다.

pfnEnumerateMetaCommands

메타 명령을 열거합니다.

pfnEnumerateMetaCommandParameters

메타 명령 매개 변수를 열거합니다.

pfnCalcPrivateMetaCommandSize

프라이빗 메타 명령 크기를 계산합니다.

pfnCreateMetaCommand

메타 명령을 만듭니다.

pfnDestroyMetaCommand

메타 명령을 삭제합니다.

pfnGetMetaCommandRequiredParameterInfo

필수 메타 명령 매개 변수 정보를 가져옵니다.

pfnCalcPrivateStateObjectSize

프라이빗 상태 개체 크기를 계산합니다.

pfnCreateStateObject

상태 개체를 만듭니다.

pfnDestroyStateObject

상태 개체를 삭제합니다.

pfnGetRaytracingAccelerationStructurePrebuildInfo

광선 추적 가속 구조 사전 빌드 정보를 가져옵니다.

pfnCheckDriverMatchingIdentifier

드라이버 일치 식별자를 확인합니다.

pfnGetShaderIdentifier

셰이더 식별자를 가져옵니다.

pfnGetShaderStackSize

셰이더 스택 크기를 가져옵니다.

pfnGetPipelineStackSize

파이프라인 스택 크기를 가져옵니다.

pfnSetPipelineStackSize

파이프라인 스택 크기를 설정합니다.

pfnSetBackgroundProcessingMode

백그라운드 처리 모드를 설정합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10, 버전 1903
머리글 d3d12umddi.h