다음을 통해 공유


볼륨 타일식 리소스

볼륨(3D) 질감은 타일식 리소스로 사용할 수 있으며 타일 해상도는 3차원입니다.

개요

타일식 리소스는 지원 메모리에서 D3D 리소스 개체를 분리합니다(이전에 리소스는 지원 메모리와 1:1 관계였음). 이렇게 하면 텍스처 데이터 스트리밍 및 메모리 사용량 재사용 또는 감소와 같은 다양한 흥미로운 시나리오가 가능합니다.

2D 질감 타일식 리소스는 D3D11.2에서 지원됩니다. D3D12 및 D3D11.3은 3D 타일식 텍스처에 대한 지원을 추가합니다.

타일 방식에서 사용되는 일반적인 리소스 크기는 2D 질감의 경우 4 x 4 타일이고, 3D 질감의 경우 4 x 4 x 4 타일입니다.

비트/픽셀(1샘플/픽셀) 타일 크기(픽셀, w x h x d)
8 64x32x32
16 32x32x32
32 32x32x16
64 32x16x16
128 16x16x16
BC 1,4 128x64x16
BC 2,3,5,6,7 64x64x16

 

타일식 리소스에서는 96bpp 형식, 비디오 형식, R1_UNORM, R8G8_B8G8_UNORM, R8R8_G8B8_UNORM 형식이 지원되지 않습니다.

아래 다이어그램에서 진한 회색은 NULL 타일을 나타냅니다.

질감 3D 타일식 리소스 기본 매핑(가장 자세한 mip)

가장 자세한 밉의 기본 매핑

질감 3D 타일식 리소스 기본 매핑(두 번째로 가장 자세한 mip)

두 번째로 자세한 밉의 기본 매핑

질감 3D 타일식 리소스(가장 자세한 mip)

다음 코드는 가장 자세한 mip에서 3D 타일식 리소스를 설정합니다.

D3D11_TILED_RESOURCE_COORDINATE trCoord;
trCoord.X = 1;
trCoord.Y = 0;
trCoord.Z = 0;
trCoord.Subresource = 0;

D3D11_TILE_REGION_SIZE trSize;
trSize.bUseBox = false;
trSize.NumTiles = 63;

3D 타일형 리소스의 가장 자세한 매핑

질감 3D 타일식 리소스(두 번째로 가장 자세한 mip)

다음 코드는 3D 타일식 리소스 및 두 번째로 가장 자세한 mip를 설정합니다.

D3D11_TILED_RESOURCE_COORDINATE trCoord;
trCoord.X = 1;
trCoord.Y = 0;
trCoord.Z = 0;
trCoord.Subresource = 1;

D3D11_TILE_REGION_SIZE trSize;
trSize.bUseBox = false;
trSize.NumTiles = 6;

두 번째로 가장 자세한 3D 타일형 리소스 매핑

질감 3D 타일식 리소스(단일 타일)

다음 코드는 단일 타일 리소스를 설정합니다.

D3D11_TILED_RESOURCE_COORDINATE trCoord;
trCoord.X = 1;
trCoord.Y = 1;
trCoord.Z = 1;
trCoord.Subresource = 0;

D3D11_TILE_REGION_SIZE trSize;
trSize.bUseBox = true;
trSize.NumTiles = 27;
trSize.Width = 3;
trSize.Height = 3;
trSize.Depth = 3;

단일 타일

질감 3D 타일식 리소스(균일한 상자)

다음 코드는 균일한 상자 타일식 리소스를 설정합니다(trSize.bUseBox = true;) : 문 참조).

D3D11_TILED_RESOURCE_COORDINATE trCoord;
trCoord.X = 0;
trCoord.Y = 1;
trCoord.Z = 0;
trCoord.Subresource = 0;

D3D11_TILE_REGION_SIZE trSize;
trSize.bUseBox = true;
trSize.NumTiles = 27;
trSize.Width = 3;
trSize.Height = 3;
trSize.Depth = 3;

균일한 상자

D3D11.3 타일형 리소스 API

동일한 API 호출은 2D 및 3D 타일식 리소스에서 둘 다 사용됩니다.

열거형

구조체

메서드

Direct3D 11.3 기능