에셋 번들을 사용하는 경우, 두 개 이상의 오브젝트에서 하나의 셰이더를 참조하면 Unity에서 중복 셰이더를 컴파일할 수 있습니다. 예시:
이렇게 하면 셰이더가 사용하는 메모리와 저장 공간이 증가하고 드로우 콜 배칭이 중단될 수 있습니다.
이를 방지하려면 다음 방법을 사용하십시오.
머티리얼과 셰이더 배리언트 컬렉션을 에셋 번들에 추가하여 포함할 셰이더 배리언트를 지정할 수 있습니다.
단일 에셋 번들을 생성하면 일부 셰이더가 더 이상 필요하지 않더라도 메모리에 남아 있을 수 있습니다. 이는 에셋 번들을 부분적으로 언로드할 수 없기 때문입니다. 함께 사용하는 각 셰이더 그룹에 대해 별도의 에셋 번들(예: ‘forest’ 에셋 번들, ‘desert’ 에셋 번들)을 생성하여 이를 방지할 수 있습니다. 어드레서블을 사용하는 경우 로드된 에셋 번들 관리 또는 어드레서블 시스템의 메모리 관리를 참조하십시오.