셰이더 그래프에서 생성된 셰이더에 가상 텍스처링 스트리밍(SVT)을 사용할 수 있습니다. 시작하기 전에 프로젝트에서 가상 텍스처링을 활성화해야 합니다. 빌트인 고해상도 렌더 파이프라인 셰이더(예: 릿, 언릿)는 SVT를 지원하지 않습니다.
SVT를 사용하여 텍스처를 스트리밍하려면 가상 텍스처 프로퍼티에 텍스처를 추가해야 합니다. 가상 텍스처 프로퍼티는 관련 텍스처 스택을 정의합니다. 이러한 텍스처를 샘플링하려면 가상 텍스처 프로퍼티를 샘플 가상 텍스처 노드에 연결하십시오. 샘플 가상 텍스처 노드는 하나의 UV 좌표를 입력으로 사용하고, 해당 UV 좌표를 사용하여 모든 텍스처를 샘플링합니다.
가능한 경우 텍스처를 동일한 가상 텍스처 프로퍼티로 결합해야 합니다. 이는 여러 가상 텍스처 프로퍼티를 샘플링하는 것보다 동일한 가상 텍스처 프로퍼티의 일부인 여러 텍스처를 샘플링하는 것이 더 효율적이기 때문입니다.
프래그먼트 단계에서 샘플 가상 텍스처 노드를 사용하면 SVT는 샘플링한 UV를 기반으로 텍스처 타일에서 자동으로 스트리밍을 수행합니다. 이를 위해 샘플 가상 텍스처 노드는 읽은 타일 ID를 렌더 타겟으로 출력합니다. 이 기능을 끄려면 노드 설정을 열고 Automatic Streaming을 비활성화하십시오. 자세한 내용은 가상 텍스처링 스트리밍의 작동 방식을 참조하십시오.
버텍스 단계에서 샘플 가상 텍스처 노드를 사용하려면 먼저 샘플 가상 텍스처 노드에서 Automatic Streaming을 비활성화한 후 Lod Level 모드를 선택해야 합니다. 그런 다음 스크립트를 사용하여 SVT가 타일을 로드하도록 수동으로 요청해야 합니다. 이렇게 하려면 다음과 같이 VirtualTexturing.Streaming.RequestRegion
메서드를 사용하십시오.
VirtualTexturing.Streaming.RequestRegion(Material, Stack ID, Rect, mipmap, numMips)
이 메서드를 사용하여 아직 표시되지 않은 타일을 로드할 수 있으며, 이를 통해 프리페칭 시스템 빌드 등과 같은 작업을 수행할 수 있습니다. 프레임마다 이 메서드를 호출해야 합니다. 그러지 않으면 시스템은 타일이 더 이상 필요하지 않다고 가정하고 다른 타일을 스트리밍할 때 해당 타일을 추방할 수 있습니다.
셰이더 그래프에서 가상 텍스처 프로퍼티의 모든 텍스처 슬롯을 할당해야 합니다.
SVT는 가상 텍스처 프로퍼티에 할당하는 고유한 텍스처 조합을 스트리밍 가상 텍스처의 고유한 섹션에 복사합니다. 따라서 가상 텍스처 프로퍼티에서 다양한 텍스처 조합을 많이 사용할 경우 각 조합이 별도로 저장되므로 프로젝트 빌드 크기가 증가할 수 있습니다.
셰이더 그래프에서 샘플 가상 텍스처 노드를 사용할 경우 몇 가지 제한 사항이 있습니다.
VirtualTexturing.Streaming.RequestRegion
을 참조하십시오.