비타Cpp

기능 지원 점검(CheckFeatureSupport) 본문

DirectX12/메모

기능 지원 점검(CheckFeatureSupport)

멍C 2021. 7. 26. 10:59

ID3D12Device::CheckFeatureSupport 메서드는 지원여부를 점검할 수 있는 메서드이다. 이 메서드의 서명은 다음과 같다.

HRESULT CheckFeatureSupport(
  D3D12_FEATURE Feature,
  void          *pFeatureSupportData,
  UINT          FeatureSupportDataSize
);

1. Feature: 이 매개변수는 이 메서드로 지원 여부를 점검할 기능들의 종류를 나타낸다. D3D12_FEATURE 열거형의 다음과 같은 멤버 중 하나를 지정해야 한다.

(a) D3D12_FEATURE_D3D12_OPTIONS : Direct3D 12의 여러 기능.

(b) D3D12_FEATURE_ARCHITECTURE : 하드웨어 아키텍처 기능들.

(c) D3D12_FEATURE_FEATURE_LEVELS : 기능 수준들.

(d) D3D12_FEATURE_FORMAT_SUPPORT : 주어진 텍스처 형식에 대한 기능들(해당 형식을 렌더 대상으로 사용할 수 있는가, 혼합을 적용할 수 있는가 등..)

(e) D3D12_FEATURE_MULTISAMPLE_QUALITY_LEVELS : 다중표본화 기능.

 

2. pFeatureSupportData: 기능 지원 정보가 설정될 구조체를 가리키는 포인터. 구조체의 구체적인 형식은 Feature 매개변수에 지정한 값에 따라 다르다.

(a) D3D12_FEATURE_D3D12_OPTIONS를 지정했다면 D3D12_FEATURE_DATA_D3D12_OPTIONS 인스턴스를 가리키는 포인터를 넣어야한다.

(b) D3D12_FEATURE_ARCHITECTURE를 지정했다면 D3D12_FEATURE_DATA_ARCHITECTURE 인스턴스를 가리키는 포인터를 넣어야 한다.

(c) D3D12_FEATURE_FEATURE_LEVELS를 지정했다면 D3D12_FEATUER_DATA_FEATURE_LEVELS 인스턴스를 가리키는 포인터를 넣어야 한다.

(d) D3D12_FEATURE_FORMAT_SUPPORT를 지정했다면 D3D12_FEATURE_DATA_FORMAT_SUPPORT 인스턴스를 가리키는 포인터를 넣어야 한다.

(e) D3D12_FEATURE_MULTISAMPLE_QUALITY_LEVELS를 지정 했다면 D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS 인스턴스를 가리키는 포인터를 넣어야 한다.

 

3.FeatureSupportDataSize: pFeatureSupportData 매개변수로 전달한 구조체의 크기.

 

 

 

 

Comments