다음을 통해 공유


하드웨어 기능 지원 확인

이 섹션에서는 API 호출을 사용하여 Direct3D 기능 수준 하드웨어에 대한 형식 지원에 검사 방법을 설명합니다.

D3D11의 경우 ID3D11Device::CheckFormatSupport 를 사용하여 이전 섹션의 정보를 프로그래밍 방식으로 확인합니다. D3D12의 경우 ID3D12::CheckFeatureSupport를 사용합니다.

대상 서식 지정 D3D12 D3D11
Buffer D3D12_FORMAT_SUPPORT1_BUFFER(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_BUFFER(D3D11_FORMAT_SUPPORT)
입력 어셈블러 꼭짓점 버퍼 D3D12_FORMAT_SUPPORT1_IA_VERTEX_BUFFER(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER(D3D11_FORMAT_SUPPORT)
입력 어셈블러 인덱스 버퍼 D3D12_FORMAT_SUPPORT1_IA_INDEX_BUFFER(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER(D3D11_FORMAT_SUPPORT)
스트림 출력 버퍼 D3D12_FORMAT_SUPPORT1_SO_BUFFER(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_SO_BUFFER(D3D11_FORMAT_SUPPORT)
Texture1D D3D12_FORMAT_SUPPORT1_TEXTURE1D(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_TEXTURE1D(D3D11_FORMAT_SUPPORT)
Texture2D D3D12_FORMAT_SUPPORT1_TEXTURE2D(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_TEXTURE2D(D3D11_FORMAT_SUPPORT)
Texture3D D3D12_FORMAT_SUPPORT1_TEXTURE3D(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_TEXTURE3D(D3D11_FORMAT_SUPPORT)
TextureCUBE D3D12_FORMAT_SUPPORT1_TEXTURECUBE(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_TEXTURECUBE(D3D11_FORMAT_SUPPORT)
셰이더 ld D3D12_FORMAT_SUPPORT1_SHADER_LOAD(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_SHADER_LOAD(D3D11_FORMAT_SUPPORT)
셰이더 샘플(모든 필터) D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_SHADER_SAMPLE(D3D11_FORMAT_SUPPORT)
셰이더 sample_c(비교 필터) D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE_COMPARISON(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON(D3D11_FORMAT_SUPPORT)
셰이더 샘플(모노 1_bit_filter) D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE_MONO_TEXT(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT(D3D11_FORMAT_SUPPORT)
셰이더 gather4 D3D12_FORMAT_SUPPORT1_SHADER_GATHER(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_SHADER_GATHER(D3D11_FORMAT_SUPPORT)
셰이더 gather4_c D3D12_FORMAT_SUPPORT1_SHADER_GATHER_COMPARISON(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_SHADER_GATHER_COMPARISON(D3D11_FORMAT_SUPPORT)
밉 맵 D3D12_FORMAT_SUPPORT1_MIP(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_MIP(D3D11_FORMAT_SUPPORT)
Mipmap 자동 생성 참고:
D3D12에는 더 이상 전용 Mipmap 생성 기능이 없습니다. 애플리케이션은 셰이더를 사용하여 자체 구현해야 합니다.


D3D11_FORMAT_SUPPORT_MIP_AUTOGEN(D3D11_FORMAT_SUPPORT)
RenderTarget D3D12_FORMAT_SUPPORT1_RENDER_TARGET(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_RENDER_TARGET(D3D11_FORMAT_SUPPORT)
Blendable RenderTarget D3D12_FORMAT_SUPPORT1_BLENDABLE(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_BLENDABLE(D3D11_FORMAT_SUPPORT)
출력 병합기 논리 작업 D3D12_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP D3D11_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP(D3D11_FORMAT_SUPPORT2)
깊이/스텐실 대상 D3D12_FORMAT_SUPPORT1_DEPTH_STENCIL(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_DEPTH_STENCIL(D3D11_FORMAT_SUPPORT)
원시 UAV 및 SRV
구조적 UAV 및 SRV
형식화된 UAV D3D12_FORMAT_SUPPORT1_TYPED_UNORDERED_ACCESS_VIEW(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW(D3D11_FORMAT_SUPPORT)
UAV 형식 저장소 D3D12_FORMAT_SUPPORT2_UAV_TYPED_STORE(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_UAV_TYPED_STORE(D3D11_FORMAT_SUPPORT2)
UAV 형식 로드 D3D12_FORMAT_SUPPORT2_UAV_TYPED_LOAD(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_UAV_TYPED_LOAD(D3D11_FORMAT_SUPPORT2)
UAV 원자성 추가 D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_ADD(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_ADD(D3D11_FORMAT_SUPPORT2)
UAV 원자 비트 연산 D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS(D3D11_FORMAT_SUPPORT2)
UAV Atomic Cmp&Store/Cmp&Exch D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE(D3D11_FORMAT_SUPPORT2)
UAV 원자성 교환 D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE(D3D11_FORMAT_SUPPORT2)
UAV Atomic Signed Min/Max D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX(D3D11_FORMAT_SUPPORT2)
UAV Atomic Unsigned Min/Max D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX(D3D11_FORMAT_SUPPORT2)
CPU 잠금 가능 참고:
단일 형식만 cpu 액세스(420_OPAQUE)를 배제합니다.


D3D11_FORMAT_SUPPORT_CPU_LOCKABLE(D3D11_FORMAT_SUPPORT)
4x 멀티샘플 RenderTarget D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RENDERTARGET(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET(D3D11_FORMAT_SUPPORT)
8x 다중 샘플 RenderTarget D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RENDERTARGET(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET(D3D11_FORMAT_SUPPORT)
기타 다중 샘플 수 RT D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RENDERTARGET(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET(D3D11_FORMAT_SUPPORT)
다중 샘플 해결 D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RESOLVE(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE(D3D11_FORMAT_SUPPORT)
다중 샘플 로드 D3D12_FORMAT_SUPPORT1_MULTISAMPLE_LOAD(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD(D3D11_FORMAT_SUPPORT)
표시 Scan-Out D3D12_FORMAT_SUPPORT1_DISPLAY(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_DISPLAY(D3D11_FORMAT_SUPPORT)
비트 레이아웃 내에서 캐스팅 D3D12_FORMAT_SUPPORT1_CAST_WITHIN_BIT_LAYOUT(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT(D3D11_FORMAT_SUPPORT)
비디오 디코더 지원 D3D12_FORMAT_SUPPORT1_DECODER_OUTPUT(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_DECODER_OUTPUT(D3D11_FORMAT_SUPPORT)
비디오 프로세서 입력 D3D12_FORMAT_SUPPORT1_VIDEO_PROCESSOR_INPUT(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_INPUT(D3D11_FORMAT_SUPPORT)
비디오 프로세서 출력 D3D12_FORMAT_SUPPORT1_VIDEO_PROCESSOR_OUTPUT(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_VIDEO_PROCESSOR_OUTPUT(D3D11_FORMAT_SUPPORT)
공유 리소스 참고:
모든 형식의 텍스처는 커밋된 리소스를 공유하거나 공유 힙에 배치할 수 있습니다.


D3D11_FORMAT_SUPPORT2_SHAREABLE(D3D11_FORMAT_SUPPORT2)
BackBuffer Castable Even Fully Typed D3D12_FORMAT_SUPPORT1_BACK_BUFFER_CAST(D3D12_FORMAT_SUPPORT1) 참고:
사용할 수 있는 API가 없습니다.


타일형 리소스 D3D12_FORMAT_SUPPORT2_TILED(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_TILED(D3D11_FORMAT_SUPPORT2)
비디오 인코더 D3D12_FORMAT_SUPPORT1_VIDEO_ENCODER(D3D12_FORMAT_SUPPORT1) D3D11_FORMAT_SUPPORT_VIDEO_ENCODER(D3D11_FORMAT_SUPPORT)
다중 평면 오버레이 D3D12_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY(D3D12_FORMAT_SUPPORT2) D3D11_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY(D3D11_FORMAT_SUPPORT2)

D3D12 하드웨어 기능 수준

DXGI_FORMAT

D3D11_FORMAT_SUPPORT

D3D11_FORMAT_SUPPORT2

DXGI 프로그래밍 가이드