대부분의 Unity 에셋은 빌드될 때 프로젝트에 합쳐집니다. 그러나 때로는 파일을 타겟 컴퓨터의 일반 파일시스템에 저장하여 경로명을 통해 액세스할 수 있도록 하는 편이 유용합니다. iOS 디바이스에 동영상 파일을 배포할 때가 바로 그러한 예입니다. PlayMovie
함수를 통해 재생하기 위해서는 오리지널 동영상 파일이 반드시 파일시스템의 어떤 위치에서 사용 가능해야 합니다.
Unity 프로젝트에 StreamingAssets(대소문자 구분)이라는 이름의 폴더에 위치한 모든 파일은 타겟 컴퓨터의 특정 폴더에 그대로 복사됩니다. Application.streamingAssetsPath 프로퍼티를 사용하여 이 폴더를 검색할 수 있습니다. StreamingAssets 폴더의 위치를 얻으려면 항상 Application.streamingAssetsPath
를 사용하는 것이 좋습니다. 이것은 항상 애플리케이션이 실행되고 있는 플랫폼에 있는 해당 위치를 정확하게 가리킵니다.
이 폴더의 위치는 플랫폼마다 다릅니다. 대소문자를 구분한다는 것을 참조하십시오.
데스크톱 컴퓨터(Mac OS 또는 Windows)에서는 다음 코드를 사용하여 파일의 위치를 얻을 수 있습니다.
path = Application.dataPath + "/StreamingAssets";
iOS에서는 다음을 사용해야 합니다.
path = Application.dataPath + "/Raw";
Android에서는 다음을 사용해야 합니다.
path = "jar:file://" + Application.dataPath + "!/assets/";
Android에서 파일은 .jar 압축 파일(보통 .zip 압축 파일과 거의 같은 포맷)에 들어 있습니다. Unity의 WWW 클래스로 파일을 가져오지 않으면 추가 소프트웨어를 사용해야만 .jar 아카이브 내부를 보고 파일을 가져올 수 있습니다.
참고: StreamingAssets 폴더에서 .dll 파일은 컴파일에 포함되지 않습니다.