Direct3D 12의 새로운 기능
이 항목에서는 다양한 릴리스에 사용할 수 있는 가장 중요한 새로운 Direct3D 12 설명서에 대해 설명합니다.
Direct3D를 가져오고 설치하는 방법에 대한 자세한 내용은 Direct3D 12 프로그래밍 환경 설정을 참조 하세요.
Windows 11의 Direct3D 12
- DirectX Ultimate a.a.a. D3D_FEATURE_LEVEL_12_2.
- HLSL 셰이더 모델 6.6
- ID3D12Device9 인터페이스 및 해당 메서드.
DirectX 민첩성 SDK 1.4도 참조하세요.
Windows 10 2020년 5월 업데이트
이러한 기능 및 API는 Windows 10 버전 2004(10.0; 빌드 19041)-Windows 10 2020년 5월 업데이트라고도 합니다.
- ID3D12Device7 인터페이스 및 해당 메서드.
- ID3D12Device8 인터페이스 및 해당 메서드.
- HLSL 셰이더 모델 6.5 기능: Direct3D 12 DXR(광선 추적) 계층 1.1, 메시 및 증폭 셰이더 및 샘플러 피드백.
- D3D12_HEAP_FLAGS 열거형은 D3D12_HEAP_FLAG_CREATE_NOT_RESIDENT 및 D3D12_HEAP_FLAG_CREATE_NOT_ZEROED 추가하여 업데이트되었습니다. 메모리 할당에 대한 자세한 제어를 참조하세요.
- D3D_SHADER_MODEL 열거형은 D3D_SHADER_MODEL_6_6 상수(실험 수준 기능)를 추가하여 업데이트되었습니다.
Windows 7의 Direct3D 12
- 이제 개발자가 Windows 7의 Direct3D 12 를 사용할 수 있게 되었습니다.
Windows 10 2019년 5월 업데이트
이러한 기능 및 API는 Windows 10 버전 1903(10.0; 빌드 18362)(Windows 10 2019년 5월 업데이트라고도 합니다.
- VRS(가변 속도 음영). 렌더링된 이미지에 따라 다른 속도로 렌더링 성능/전원을 할당할 수 있습니다.
- HLSL 셰이더 모델 6.4. HLSL 셰이더 모델 6.4에 추가된 기계 학습 내장 함수에 대해 설명합니다.
- D3D12_DRED_VERSION 열거형입니다. DRED(Device Removed Extended Data)의 버전을 지정하는 상수를 정의합니다.
- D3D12_FEATURE_DATA_D3D12_OPTIONS6 구조체입니다. 어댑터가 메타 명령에 대해 제공하는 지원 수준을 나타냅니다.
- D3D12_FEATURE_DATA_QUERY_META_COMMAND 구조체입니다. 어댑터가 메타 명령에 대해 제공하는 지원 수준을 나타냅니다.
- D3D12_VARIABLE_SHADING_RATE_TIER 열거형입니다. 음영 속도 계층(가변 속도 음영 또는 VRS의 경우)을 지정하는 상수를 정의합니다.
- ID3D12Device6 인터페이스 및 해당 메서드. 드라이버 백그라운드 처리 최적화 모드를 설정하는 데 사용됩니다. 배경 셰이더 최적화도 참조 하세요.
- ID3D12DeviceRemovedExtendedData 인터페이스 및 해당 메서드. DRED(디바이스 제거된 확장 데이터) 데이터에 대한 런타임 액세스를 제공합니다.
- ID3D12DeviceRemovedExtendedData설정 인터페이스 및 해당 메서드. 디바이스 DRED(확장 데이터 제거) 설정을 제어합니다.
- D3D12GraphicsCommandList5 인터페이스 및 해당 메서드. VRS(가변 속도 음영) 지원.
D3D_SHADER_MODEL 열거형은 D3D_SHADER_MODEL_6_5 상수(실험 수준 기능)를 추가하여 업데이트되었습니다.
D3D12_COMMAND_LIST_TYPE_VIDEO_ENCODE 상수가 추가되어 D3D12_COMMAND_LIST_TYPE 열거형이 업데이트되었습니다.
D3D12_FEATURE_D3D12_OPTIONS6 및 D3D12_FEATURE_QUERY_META_COMMAND 상수가 추가되어 D3D12_FEATURE 열거형이 업데이트되었습니다.
D3D12_RESOURCE_STATE_SHADING_RATE_SOURCE 상수가 추가되어 D3D12_RESOURCE_STATES 열거형이 업데이트되었습니다.
Windows 10, 버전 1809
이러한 기능 및 API는 Windows 10 버전 1809(10.0; 빌드 17763)(Windows 10 2018년 10월 업데이트이라고도 합니다.
- HLSL 셰이더 모델 6.3을 사용하는 Direct3D 12 광선 추적
- Direct3D 12 렌더링 단계
- ID3D12Device5 인터페이스 및 해당 메서드.
Windows 10, 버전 1803
이러한 기능 및 API는 Windows 10 버전 1803(10.0; 빌드 17134)-Windows 10 2018년 4월 업데이트라고도 합니다.
- ID3D12Device4 인터페이스 및 해당 메서드.
Windows 10 버전 1709
이 인터페이스는 Windows 10, 버전 1709의 Direct3D 문서에 추가되었습니다.
- ID3D12Fence1은 펜스를 만들기 위해 전달된 플래그의 검색을 지원하여 펜스 만들기 기능을 확장합니다.
- ID3D12GraphicsCommandList2는 직접 버퍼에 즉치 값 쓰기를 지원하여 사용 가능한 그래픽 명령 목록을 확장합니다.
- ID3D12Device3은 GPU 폴트 또는 디바이스 제거 시나리오의 경우에도 지속되는 시스템 메모리에서 특수 용도 진단 힙을 만들어 가상 어댑터 기능을 확장합니다.
D3D_SHADER_MODEL 열거형에는 셰이더 모델 6.1을 설명하기 위해 추가된 새 D3D_SHADER_MODEL_6_1 값이 있습니다.
D3D12_FEATURE 열거형에는 새 D3D12_FEATURE_D3D12_OPTIONS3 및 D3D12_FEATURE_EXISTING_HEAPS 값도 있습니다. 이름이 의미하는 것처럼 이 값을 사용하여 추가 Direct3D12 옵션을 확인하고 기존 힙 지원을 확인할 수 있습니다.
Windows 10 버전 1703
이 항목은 Windows 10, 버전 1703의 Direct3D 문서에 추가되었습니다.
- ID3D12Device2::CreatePipelineState 메서드 및 D3D12_Pipeline_State_Stream_Desc 구조체는 PSO를 만드는 새롭고 더 강력한 방법을 나타내며 그래픽 및 컴퓨팅 파이프라인을 만들기 위한 인테페이스를 통합합니다.
- ID3D12Device1::CreatePipelineLibrary1 메서드는 파이프라인 라이브러리 인터페이스를 확장하여 새로운 통합 D3D12_Pipeline_State_Stream_Desc 구조로 만든 PSO를 허용합니다.
- 개발자는 D3D12EnableExperimentalFeatures 함수를 통해 개발자 모드에서 머신을 사용하여 특정 내부 개발 기능으로 실험할 수 있습니다.
- 5개의 새 인터페이스가 있습니다(인터페이스 계층 구조 참조).
- 다중 스레드 픽셀 및 컴퓨팅 셰이더에 대한 웨이브 내장 작업을 설명하는 HLSL 셰이더 모델 6.0 개요를 참조하세요.
- ID3D12Device::SetStablePowerState 사용이 변경되었습니다.
- Direct3D 11의 일부 새로운 기능은 Direct3D 11.4 기능에서 설명합니다.
- AtomicCopyBufferUINT 및 AtomicCopyBufferUINT64는 인식된 대기 시간을 줄이기 위해 late-latch를 사용하도록 설정합니다.
- ID3D12Device2::CreatePipelineState 및 OMSetDepthBounds는 지원되는 하드웨어에서 depth-bounds 테스트를 사용하도록 설정합니다.
- ResolveSubresourceRegion은 성능을 최적화할 수 있도록 하위 리소스의 부분 확인을 사용하도록 설정합니다.
- SetSamplePositions는 지원되는 하드웨어에서 프로그래밍 가능한 샘플 위치를 사용하도록 설정합니다.
2016년 11월 문서 업데이트
- ID3D12GraphicsCommandList::DiscardResource에 대한 설명 수정
- “일반으로 상태 감소” 설명(Direct3D 12에서 리소스 장벽을 사용하여 리소스 상태 동기화 참조)
- D3D12의 도우미 구조체 및 함수에서 참조되는 D3dx12.h 헤더 파일은 D3D12 도우미 라이브러리에서 직접 다운로드할 수 있습니다.
2016년 8월 문서 업데이트 2
D3D12 디버그 계층 이해라는 새 가이드 섹션
미리 보기 모드의 세 가지 새 디버그 계층 인터페이스에 대해 설명합니다. ID3D12Debug1, ID3D12DebugCommandList1, ID3D12DebugDevice1.
2016년 8월 문서 업데이트 1
- Direct3D 12에서 리소스 장벽을 사용하여 리소스 상태 동기화 수정
- 다중 큐 리소스 액세스 수정
Windows 10 버전 1607
이 항목은 Windows 10, 버전 1607의 Direct3D 문서에 추가되었습니다.
- 루트 서명 버전 1.1: 앱이 설명자 및 데이터가 정적 또는 일시적인 정도를 지정할 수 있어 그래픽 드라이버 최적화를 지원할 수 있는 업데이트된 루트 서명을 간략하게 설명합니다.
- ID3D12Device1::CreatePipelineLibrary 메서드는 파이프라인 라이브러리 만들기의 장점을 설명합니다.
- 세 가지 새 인터페이스가 있습니다( 인터페이스 계층 참조).
- 다중 스레드 픽셀 및 컴퓨팅 셰이더에 대한 웨이브 내장 작업을 설명하는 HLSL 셰이더 모델 6.0 개요를 참조하세요.
- ID3D12Device::SetStablePowerState 사용이 변경되었습니다.
- Direct3D 11의 일부 새로운 기능은 Direct3D 11.4 기능에서 설명합니다.
- Direct3D 12에서 지원되는 라이브러리 범위가 업데이트되었습니다. Direct3D 12 프로그래밍 환경 설정의 지원되는 도구 및 라이브러리 섹션을 참조하세요.
- 높은 동적 범위 디스플레이 및 고급 색상과 함께 DirectX 사용
- Variable refresh rate displays(변수 새로 고침 빈도 표시)
- DXGI 1.5 Improvements(DXGI 1.5 개선 사항)