특징
- 텍스처는 다차원 배열이다. ( ex. 1~3차원 배열 )
- 배열 원소는 다양한 형태를 가지고 있다. ( ex. 픽셀에 대한 색상값, 3차원 벡터 등 )
- 텍스처는 단순히 자료구조의 성격뿐 아니라, 어떠한 특별한 연산도 적용할 수 있다.
( ex. GPU의 멀티 샘플링, 필터링 등 ) - 텍스처의 원소는 정해진 특정 format만 사용할 수 있다. ( ex. DXGI_FORMAT )
DXGI FORMAT
DXGI FORMAT은 텍스처 배열에 적용할 수 있는 원소들의 형태를 지정하는 열거형이다.
- DXGI_FORMAT_R32G32B32_FLOAT ( 32bit, float )
- DXGI_FORMAT_R16G16B16A16_UNORM ( 16bit, float [0,1] 범위 )
- DXGI_FORMAT_R16G16B16A16_TYPELESS ( 16bit, 타입 없음 )
- DXGI_FORMAT_D32_FLOAT_S8X24_UINT ( 32bit, texel float 깊이 값 [0, 255] 범위, 부호없는 8bit 정수 스텐실 값, padding(채움)용도로만 사용되는 24bit로 구성 )
- DXGI_FORMAT_D32_FLOAT ( 24bit 부호없는 값, [0, 1] 범위 )
- DXGI_FORMAT_D16_UNORM ( 16bit 텍셀, [0, 1]범위 부호없는 깊이값 )
- DXGI_FORMAT_D24_UNORM_S8_UINT ( 24bit 텍셀 깊이 버퍼, 8bit 스텐실 버퍼 )
TYPELESS는 원소의 형태를 열거형으로 특정하지 않고, 메모리만 확보해둔다.
필요할 때 직접 형변환을 해서 사용한다.
깊이 버퍼
- 깊이 버퍼는 이미지 정보가 없는 텍스처 값이다.
- [0, 1] 사이의 정규화된 값으로 표현이 된다.
- 해상도 픽셀과 1:1로 대응된다.
- 프로그램은 렌더링되기전에 후면 버퍼를 기본 색상(검은색, 흰색)등으로 지우는 과정을 거친다.
깊이 버퍼도 마찬가지로 최대 깊이인 1.0을 기본값으로 사용해 지워진다.
참고 사이트
https://learn.microsoft.com/ko-kr/windows/win32/api/dxgiformat/ne-dxgiformat-dxgi_format
'과거 자료' 카테고리의 다른 글
[#1] 게임 프레임워크 만들기 - 메인 윈도우 초기화 (0) | 2022.12.19 |
---|---|
[DX12] IDXGISwapChain (dxgi.h) (0) | 2022.12.12 |
[DX12] Microsoft::WRL::ComPtr (0) | 2022.12.12 |
[DX12] DirectX12 노트 정리 계획 (0) | 2022.12.11 |
[#5] (펌) Transpose 사용 이유와 HLSL의 열우선 이유 (0) | 2022.12.01 |