One_KWS

Addressable System #3 - Remote Asset 본문

Unity

Addressable System #3 - Remote Asset

One-Kim 2023. 2. 21. 21:38

서버에 에셋 업로드하기

Remote Build를 통해 에셋을 서버에 업로드하고 런타임중 서버로부터 에셋을 로드하여 사용할 수 있다.

 

AWS S3 버킷 생성

AWS 홈페이지에서 모든 서비스 - 스토리지 - S3를 클릭한다.

버킷 만들기를 클릭하여 새로운 버킷을 생성하고 아무 파일이나 업로드를 한 후 클릭하면 객체 URL을 볼 수 있다. 해당 객체 URL에서 버킷이름까지만 복사한다.

 

Addressable Group 생성

서버로 업로드할 어드레서블 그룹을 생성한 후 이전 예제에서 만들어 놓은 에셋을 새 그룹으로 옮긴다.

Addressable  Profile 생성

Window/Asset Management/Addressables/Profiles를 클릭하여 Addressable Profiles 창을 띄운다.

처음에는 Default라는 Profile이 만들어져 있다. Create - New Profile을 클릭하여 Profile을 새로 만들어 준다.

서버로부터 에셋을 가져오기 위해서는 RemotePath를 수정해 주어야 한다. '/[buildTarget]' 부분만 남겨두고 모두 지운 후 아까 복사해둔 S3 주소를 앞에다 붙여넣기한다.

AddressableAssetsData 폴더 안에 있는AddressableAssetSettings에서 Profile을 아까 만든 Profile로 바꿔준다.

Profile이 바뀌면서 Catalog의 Build Path와 Load Path가 바뀐것을 볼 수 있다. Catalog - Build Remote Catalog를 체크해준다.

Addressables Group에서 Build - New Build - Default Build Scirpt를 클릭하여 에셋을 빌드해준다. 빌드가 완료된 후 프로젝트 폴더안에 있는 ServerData폴더에 현재 플랫폼 폴더가 생기고 안에 빌드된 에셋 번들이 생성된 것을 볼 수 있다.

이제 이 파일들을 서버로 업로드 해주자. 앞에서 생성한 S3 버킷에 ServerData 폴더 안에 생성된 현재 플랫폼 이름의 폴더를 업로드 한다. 업로드가 완료되면 파일들을 모두 선택한 후 작업/퍼블릭으로 설정을 클릭하여 퍼블릭으로 바꿔준다.

다시 유니티로 돌아와서 Addressables Group에서 Play Mode Script - Use Existing Build를 선택한 후 플레이를 눌러 실행시켜보면 서버에서 에셋을 잘 불러오는 것을 볼 수 있다.