스트리밍 리소스는 리소스를 만들 때 플래그를 지정하여 생성되며, 이는 리소스가 스트리밍 리소스임을 나타냅니다.
스트리밍 리소스로 리소스를 만들 수 있는 시기에 대한 제한 사항은 스트리밍 리소스 만들기 매개 변수에 설명되어 있습니다.
2D 텍스처 배열에 대한 할당과 같이 리소스를 만들 때 비 스트리밍 리소스의 스토리지가 그래픽 시스템에 할당됩니다.
스트리밍 리소스를 만들 때 그래픽 시스템은 리소스 콘텐츠에 대한 스토리지를 할당하지 않습니다. 대신, 애플리케이션이 스트리밍 리소스를 생성할 때, 그래픽 시스템은 타일 표면의 영역에 대해서만 주소 공간을 예약한 후, 애플리케이션에서 타일 매핑을 제어할 수 있게 합니다. 타일의 "매핑"은 단순히 리소스의 논리적 타일이 가리키는 메모리의 물리적 위치를 의미합니다(매핑되지 않은 타일의 경우 NULL).
동일한 이름을 사용했음에도 불구하고 완전히 독립적인 CPU 액세스를 위해 Direct3D 리소스를 매핑한다는 개념과 이 개념을 혼동하지 마세요. 필요에 따라 각 타일의 매핑을 개별적으로 정의하고 변경할 수 있으며, 표면의 모든 타일을 한 번에 매핑할 필요가 없으므로 사용 가능한 메모리 양을 효과적으로 사용할 수 있습니다.
이 단락에서
| 주제 | 설명 |
|---|---|
리소스가 스트리밍 리소스로 생성되면, 리소스를 구성하는 타일은 타일 풀의 특정 위치에서 가져옵니다. 타일 풀은 메모리 풀입니다(애플리케이션에서 볼 수 없는 백그라운드에서 하나 이상의 할당으로 지원됨). |
|
스트리밍 리소스로 만들 수 있는 Direct3D 리소스 유형에 대한 몇 가지 제약 조건이 있습니다. |
|
버퍼를 만들 때 이 섹션의 매개 변수를 사용하여 타일 풀을 정의합니다. |
|
타일 풀은 기존 리소스와 마찬가지로 다른 프로세스와 공유할 수 있습니다. 타일 풀을 참조하는 스트리밍 리소스는 디바이스 및 프로세스 간에 공유할 수 없습니다. |
|
이 섹션에서는 스트리밍 리소스에서 수행할 수 있는 작업을 나열합니다. |
|
타일 풀에 대한 작업에는 타일 풀 크기 조정, 리소스 제공(전체 타일 풀에 대한 시스템에 일시적으로 메모리 생성) 및 리소스 회수가 포함됩니다. |
|
스트리밍 리소스의 영역이 타일링되는 방법 |
스트리밍 리소스를 만들 때 차원, 서식 요소 크기 및 Mipmap 및/또는 배열 조각 수(해당하는 경우)는 전체 노출 영역을 백업하는 데 필요한 타일 수를 결정합니다. |
관련 항목