LoadLevelAsync

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

LoadLevelAsync

Сообщение echo 28 фев 2013, 13:12

Здравствуйте! Объясните дураку - написано что асинхронная подгрузка уровня происходит как-бы незаметно и типа "на бэкграунде", но у меня когда загружается уровень подобным образом, всё равно всё зависает и не разгоняется пока уровень не загрузится. В чём тогда смысл? Я могу и обычным образом загрузить уровень с таким же эффектом. Или я то-то не так делаю? Вот собственно код:
using UnityEngine;
Синтаксис:
Используется csharp
using System.Collections;

public class LevelsLoad : MonoBehaviour {
       
        public string Level;

    public void OnTriggerEnter(Collider collision) {
                if(collision.CompareTag("Player")){
                        StartCoroutine (Load ());
                }    
    }
       
    IEnumerator Load() {
        AsyncOperation async = Application.LoadLevelAsync(Level);
        yield return async;
        Debug.Log("Loading complete");
    }  
}
Аватара пользователя
echo
UNIт
 
Сообщения: 140
Зарегистрирован: 30 окт 2011, 17:27
Откуда: От верблюда
  • Сайт

Re: LoadLevelAsync

Сообщение Woolf 28 фев 2013, 13:39

Для начала, подобные вещи лучше делать так:

Синтаксис:
Используется csharp
public class LevelsLoad : MonoBehaviour {
       
    public string Level;
    private bool isLoading;

    public void OnTriggerEnter(Collider collision) {
                if(collision.CompareTag("Player")){
                    if (!isLoading)  StartCoroutine (Load ());
                }    
    }
       
    IEnumerator Load() {
        isLoading=true;
        AsyncOperation async = Application.LoadLevelAsync(Level);
        yield return async;
        isLoading=false;
        Debug.Log("Loading complete");
    }  
}


Во вторых - а что вы хотите получить в итоге?
Обратите внимание, что написано в доке: Note that background loading performance in the Unity Editor is much lower than in the web player or standalone build. In the Editor you might also get more loading hiccups than in the player.

Вы пробовали сборку проверить?
Разработчик theFisherOnline - там, где клюёт
Разработчик Atom Fishing II - Первая 3D MMO про рыбалку
Разработчик Atom Fishing - Рыбалка на поплавок, донку, нахлыст, блесну в постъядерный период.
Аватара пользователя
Woolf
Адепт
 
Сообщения: 7179
Зарегистрирован: 02 мар 2009, 16:59

Re: LoadLevelAsync

Сообщение echo 28 фев 2013, 14:21

Да, действительно, в сборке намного быстрее. Спасибо. Извиняюсь что зря потревожил :)
_ttp://zero0.16mb.com/Core/
_ttp://www.indiedb.com/games/zer0
Аватара пользователя
echo
UNIт
 
Сообщения: 140
Зарегистрирован: 30 окт 2011, 17:27
Откуда: От верблюда
  • Сайт


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 25