Application.LoadLevelAdditiveAsync
Unity3D 2013. 1. 7. 16:43http://docs.unity3d.com/Documentation/ScriptReference/Application.LoadLevelAdditiveAsync.html
static function LoadLevelAdditiveAsync (levelName : string) : AsyncOperation
설명
레벨을 백그라운드에서 부가적(Additively), 비동기적(Asynchronously)으로 불러옵니다.
LoadLevelAsync와는 달리, LoadLevelAdditiveAsync는 현재 레벨의 객체들을 제거하지 않습니다. 새로운 레벨의 객체들이 현재 씬에 추가됩니다. 이 기능은 플레이어가 걸으면서 주위환경에 추가적인 컨텐츠가 로드되는 것과 같이 지속적으로 가상 세계를 생성할때 유용합니다.
유니티는 백그라운드 로딩 스레드에서 씬 안의 모든 에셋과 객체들을 완전히 불러올 것입니다. 이 기능은 사용자가 세계의 서로 각기 다른 부분들이 플레이어의 위치에 따라 끊임없이 로드되고 언로드되는 완전한 스트리밍된 세계를 게임 플레이에 지장없이 생성할 수 있도록 해줍니다.
완료된 AsyncOperation으로 부터 받을 수 있는 isDone 변수는 레벨의 로딩이 완료되었는지를 시스템에 문의할 수 있습니다. LoadLevelAdditiveAsync의 결과는 coroutine에서 yield명령을 수행하는데에도 쓰일 수 있습니다.
플레이어를 빌드할대 유니티는 자동으로 에셋들을 디스크에 연속적으로 최적화하여 LoadLevelAdditiveAsync가 이들을 로드할때에 찾는 시간을 줄이고자 할 것입니다. 에디터에서의 백그라운드 로딩 성능은 웹플레이어나 스탠드얼론 빌드의 그것보다 월등히 낮다는 점을 참고 하십시오. 에디터에서는 플레이어에서보다 좀 더 많은 로딩 지연시간을 겪게 될 것입니다.
이 기능은 Unity Pro를 필요로 합니다.
참고: AsyncOperation, Application.backgroundLoadingPriority, Application.LoadLevelAsync.
'Unity3D' 카테고리의 다른 글
Object.DontDestroyOnLoad (0) | 2013.01.10 |
---|---|
LayerMask.LayerToName (0) | 2013.01.08 |
sublimetext (0) | 2013.01.04 |
지국님 블로그 "HellyBelly" (0) | 2013.01.04 |
Weird execution order when instaniating a gameObject with too many children (0) | 2013.01.03 |