아래 단계에 따라 스프라이트 아틀라스를 만드십시오.
스프라이트 아틀라스 에셋을 생성하려면 Asset > Create > Sprite Atlas 로 이동하십시오. 그러면 Unity가 Asset 폴더에 * .spriteatlas 파일 확장자가 붙은 스프라이트 아틀라스를 생성합니다.
Objects for Packing 리스트는 스프라이트 아틀라스 내에서 현재 선택된 항목을 표시합니다. Texture2D와 스프라이트 에셋을 이 리스트에 넣을 수 있습니다. 폴더를 리스트에 직접 끌어다 놓으면 폴더 내 모든 유효한 콘텐츠를 리스트에 자동으로 추가합니다(폴더만 리스트에 나타남).
리스트에 대한 특정 항목을 선택하려면 다음 단계를 따르십시오.
스프라이트 아틀라스 에셋을 선택하고 인스펙터 창에서 Objects For Packing 리스트를 찾습니다. 여기에는 Unity가 스프라이트 아틀라스를 빌드할 때 패킹할 항목 리스트가 표시됩니다.
항목을 추가하려면 리스트 오른쪽 하단의 더하기(+) 아이콘을 선택하여 새로운 행을 만듭니다. 유효한 에셋을 빈 행으로 드래그하여 리스트에 추가하거나, 행 오른쪽에 있는 원 모양 아이콘을 선택하여 Select Object 창을 엽니다. 오브젝트 피커 창에서 에셋을 선택하여 리스트에 추가합니다.
리스트에서 항목을 제거하려면 Objects For Packing 리스트의 오른쪽 하단에 있는 빼기(-) 아이콘을 클릭합니다. 항목을 교체하려면 다른 항목을 교체할 항목이 있는 행으로 드래그합니다. 그러면 리스트의 항목이 교체됩니다.
Pack Preview 를 선택하여 Asset Preview 창에서 결합된 아틀라스 텍스처를 미리봅니다.
모든 스프라이트 아틀라스는 생성 시 기본적으로 Include in Build 가 활성화되어 있습니다. 즉, Unity는 스프라이트 아틀라스를 프로젝트의 빌드에 포함하고 빌드의 런타임 시점에 자동으로 로드합니다. 프로젝트 빌드에 포함할 스프라이트 아틀라스를 제어하려면 ‘Include in Build’ 프로퍼티를 활성화하거나 비활성화하십시오.
’Include in Build’를 해제하면 이 동작이 비활성화되고, 배포용 스프라이트 아틀라스를 준비할 때 완료됩니다.
스프라이트가 씬에서 활성화되면 Unity는 해당 스프라이트가 속한 스프라이트 아틀라스와 거기에 포함된 모든 텍스처를 로드합니다. 이는 Unity가 매우 큰 텍스처가 포함된 스프라이트 아틀라스를 로드하지만 씬 내에서 해당 텍스처를 사용하는 요소가 없을 경우 과도한 성능 오버헤드가 발생합니다.
스프라이트 아틀라스 사용을 최적화하려면 씬에서 활성화된 모든 또는 대부분의 스프라이트가 동일한 아틀라스에 속해 있어야 합니다. 일반적인 용도에 따라 스프라이트 텍스처를 여러 개의 작은 아틀라스로 분할하는 것이 좋습니다.
성능 오버헤드를 줄이는 또 다른 방법은 스프라이트 아틀라스의 패킹된 텍스처 간에 빈 공간을 줄이는 것입니다. 이렇게 하면 스프라이트 아틀라스의 크기가 감소합니다. 이렇게 하려면 스프라이트 아틀라스를 선택하고 인스펙터 설정의 하단에 있는 팩 미리보기 창에서 패킹된 아틀라스 텍스처를 검사하십시오. 이용 가능한 미리보기가 없으면 Objects for Packing 리스트 아래의 Pack Preview 버튼을 선택하여 패킹된 텍스처를 생성해야 합니다.
과도한 빈 공간이 눈에 띄면 패킹된 텍스처의 크기를 수동으로 줄여서 빈 공간을 작게 만들고 아틀라스의 크기를 최적화할 수 있습니다. 이렇게 하려면 인스펙터 창 하단의 Platform-specific overrides 패널로 이동하십시오. 그런 다음 Max Texture Size 설정의 드롭다운 메뉴에서 낮은 값을 선택하고, Pack Preview를 선택하여 패킹된 텍스처를 다시 생성해야 합니다.
Max Texture Size 값이 스프라이트 아틀라스 텍스처의 현재 크기보다 작으면 Unity는 패킹된 텍스처 크기를 줄여서 설정된 Max Texture Size 값에 최대한 맞추고 불필요한 빈 공간을 자동으로 잘라냅니다. 선택한 스프라이트 텍스처가 스프라이트 아틀라스의 Max Texture Size 설정을 초과하는 경우 스프라이트 아틀라스는 Max Texture Size 설정을 무시하고 스프라이트 텍스처를 원래 크기로 포함하는 데 필요한 최소 크기를 유지합니다.