일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- engine
- 다중표본화
- Direct Init
- C++
- RenderTargetView
- CPU
- DirectXTK
- UE4
- DirectX12
- 다이렉트X 튜토리얼
- 프로그래밍
- 다이렉트 초기화
- 동기화
- DirectX
- Direct3D Init
- GPU
- C언어
- DESC
- 전처리문
- Direct3D
- View
- CommandList
- swapchain
- 다이렉트X
- c
- 세팅
- Input Assembler
- 코딩
- vertex
- 게임수학
- Today
- Total
목록Heap (2)
비타Cpp
깊이 버퍼는 그냥 가장 가까운 가시 물체들의 깊이 정보를(그리고 스텐실을 사용하는 경우에는 스텐실 정보도) 저장하는 2차원 텍스처이다. 텍스처는 GPU 자원의 하나이므로, 텍스처 자원을 서술하는 D3D12_RESOURCE_DESC 구조체를 채운 후 ID3D12Device::CreateCommittedResource를 호출하면 깊이·스텐실 버퍼를 생성할 수 있다. D3D12_RESOURCE_DESC구조체의 정의는 다음과 같다. typedef struct D3D12_RESOURCE_DESC { D3D12_RESOURCE_DIMENSION Dimension; UINT64 Alignment; UINT64 Width; UINT Height; UINT16 DepthOrArraySize; UINT16 MipLevel..
다음으로, 응용 프로그램에 필요한 서술자/뷰들을 담을 서술자 힙을 만들어야 한다. 서술자 힙(Descriptor Heap)은 ID3D12DescrptorHeap 인터페이스로 대표된다. 힙을 생성하는 메서드는 ID3D12Device::CreateDescriptorHeap이다. SwapChainBufferCount에 설정된 개수만큼의 렌더 대상 뷰(Render Target View, RTV)들과 하나의 깊이·스텐실 뷰(Depth/Stencil View, DSV)가 필요하다. 렌더 대상 뷰는 교환 사슬에서 렌더링의 대상이 되는 버퍼 자원을 서술하고, 깊이·스텐실 뷰는 깊이 판정을 위한 버퍼자원을 서술한다. 서술자 힙은 서술자 종류마다 따로 만들어야 한다. 다음은 이 힙들을 생성하는 코드이다. //D3DApp...