Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
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
Archives
Today
Total
관리 메뉴

codingfarm

18. 상수 버퍼 본문

computer graphics/DirectX12

18. 상수 버퍼

scarecrow1992 2021. 7. 18. 17:26
  • 버퍼 : shader 프로그램에서 참조하는 자료를 담는 GPU 자원(ID3D12Resource)의 예
  • 버퍼의 종류 : 텍스처, 기타 버퍼 자원등

 

0. 상수 버퍼(Constant Buffer)

  • 정의 : shader가 참조하기 상수 data를 담기 위한 저장 공간
  • 특징
    1. 잦은 수정이 필요
      • default heap이 아닌 upload heap에 만드는것이 이상적
    2. 크기가 하드웨어 최소 할당 크기(256 byte)의 배수여야한다.

 

 

1. 상수 버퍼 생성

 Create Committed Resource 함수로 생성, ID3D12Resource 인스턴스에 할당

 

2. Data Upload

map 함수로 매핑한후 data copy를 해주고, unmap을 진행해준다

 

3. 상수 버퍼 서술자

  • D3D12_DESCRIPTOR_HEAP_TYPE_CBV_SRV_UAV 형식의 descriptor heap에 담긴다.
  • ID3D12Device::CreateConstantBufferView 함수를 호출하여 생성
  • D3D12_CONSTANT_BUFFER_VIEW_DESC 구조체에 view의 특성을 서술

 

 

 

 

 

 

'computer graphics > DirectX12' 카테고리의 다른 글

22. 삼각형 그리기 2  (0) 2021.08.05
20. 삼각형 그리기  (0) 2021.07.27
16. 정점 버퍼(Vertex Buffer)  (0) 2021.07.04
12. 다중표본화(multisampling)  (0) 2021.07.04
8. 교환사슬과 더블버퍼링  (0) 2021.07.04
Comments