D3D12DDI_DEVICE_FUNCS_CORE_0072 구조체(d3d12umddi.h)
D3D12 릴리스 7, 빌드 rev 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
힙 시작에 대한 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
백그라운드 처리 모드를 설정합니다.
pfnCalcPrivateAddToStateObjectSize
상태 개체 크기에 대한 프라이빗 추가를 계산합니다. 자세한 내용은 DXR(DirectX 광선 추적) 기능 사양 을 참조하세요.
pfnAddToStateObject
상태 개체에 를 추가합니다. 자세한 내용은 DXR(DirectX 광선 추적) 기능 사양 을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 10, 버전 2004 |
머리글 | d3d12umddi.h |