일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- UE4
- 코딩
- DirectX
- vertex
- 전처리문
- 다중표본화
- 다이렉트X
- 동기화
- CommandList
- 게임수학
- Direct3D Init
- Input Assembler
- engine
- CPU
- 다이렉트 초기화
- DirectX12
- swapchain
- c
- 다이렉트X 튜토리얼
- Direct3D
- GPU
- DirectXTK
- DESC
- C언어
- 프로그래밍
- Direct Init
- View
- C++
- 세팅
- RenderTargetView
- Today
- Total
목록Input Assembler (2)
비타Cpp
GPU가 정점 배열에 접근하려면, 그 정점들을 버퍼라는 GPU 자원(ID3D12Resource)에 넣어 두어야 한다. 정점들을 저장하는 버퍼를 정점 버퍼(Vertex Buffer)라고 부른다. 버퍼는 텍스처보다 단순한 자원이다. 버퍼는 다차원이 아니며, 밉맵이나 필터, 다중 표본화 기능이 없다. 응용 프로그램에서 정점 같은 자료 원소들의 배열을 GPU에 제공해야 할 때에는 항상 버퍼를 사용한다. 정점 버퍼를 생성하려면 D3D12_RESOURCE_DESC를 채우고 ID3D12Device::CreateCommittedResource 메서드를 호출해서 ID3D12Resource객체를 생성한다. Direct3D 12는 D3D12_RESOURCE_DESC를 상속해서 편의용 생성자들과 메서들을 추가한 C++ 래퍼 ..
IA(Input Assembler) 단계에서는 메모리에서 기하 자료(정점과 색인)를 읽어 기하학적 기본 도형(primitive)을 조립한다.(색인은 정점들을 모아서 기본 도형을 형성하는 방식을 결정한다.) 정점(vertex)은 하나의 점을 의미한다. 하지만 Direct3D에서의 정점은 공간적 위치 이외의 정보를 담을 수 있다. 예를 들어 법선 벡터를 추가하거나, 텍스처 좌표를 추가할 수도 있다. 이를 통해 Direct3D에서는 좀 더 복잡한 효과를 유연하게 적용시킬 수 있다. 정점들은 정점 버퍼(vertex buffer)라고 하는 Direct3D 자료구조 안에 담겨서 렌더링 파이프 라인에 묶인다. 정점 버퍼는 그냥 정점들을 연속적인 메모리에 저장하는 자료구조이다. 정점 버퍼에서 기본도형들을 위한 정점의 ..