DirectX 11/코드 분석

Index Buffer / World Scale, World Translation

김띠띵 2022. 2. 8. 02:17

결과물

 


코드

IndexDemo.cpp

 


추가

DXGI_FORMAT

더보기

마지막에

GetDC()->IAsetIndexBuffer(indexBuffer, DXGI_FORMAT_R32_UINT, 0); 인 부분이 있는데

여기서 DXGI_FORMAT이란

 

리소스를 어떻게 해석할것인가 인데

리소스 :  Direct3D 파이프라인에서 액세스할 수 있는 메모리 영역, buffer유형과 texture유형이 있다.

 

종류에 R32G32B32, R16,G16,B16,A16...이런식으로 있다고 색과 관련된건아니다.

그냥 데이터가 몇개인지 분류하는 형식이다.

 

예를들어

DXGI_FORMAT_R32 는 어떤 32bit짜리 데이터하나가 있다는것이고

DXGI_FORMAT_R32B32는 어떤 32bit짜리 데이터형 A와 어떤 32bit짜리 데이터형 B가 있다는것이다.

 

그러므로 IAsetIndexBuffer(indexBuffer, DXGI_FORMAT_R32_UINT, 0); 코드에서

DXGI_FORMAT_R32_UINT가 넘어가는 이유는

indexBuffer가 4byte(32bit)UINT 으로 구성되어있다고 뜻하는 말이다.

 

https://docs.microsoft.com/en-us/windows/win32/direct3d10/d3d10-graphics-programming-guide-resources-types#texture-resources

 

Resource Types (Direct3D 10) - Win32 apps

All resources used by the Direct3D pipeline derive from two basic resource types: buffers and textures. A buffer is a collection of raw data (elements); a texture is a collection of texels (texture elements).

docs.microsoft.com