AS3 Preloader Внутренний или Внешний? - PullRequest
1 голос
/ 13 февраля 2011

Мне было интересно, каким будет лучший способ загрузить мою флеш игру.Я знаю, как сделать внешний предварительный загрузчик, но если я хочу загрузить .swf игры на сайт, такой как newgrounds, думаю, мне нужен внутренний предварительный загрузчик.игра отображается только после загрузки SWF на 100%.Во время его загрузки я просто вижу белый экран с серым "...", который, я предполагаю, встроен во флеш-плеер.Структура игры закодирована в файл .as с именем AsteroidsGame.as.Может быть, это вызывает проблемы?Я не знаю, но я бы очень признателен за помощь в настройке и запуске прелоадера.

Спасибо.

Ответы [ 2 ]

1 голос
/ 13 февраля 2011

Короче говоря, при загрузке флэш-плеер запустится в кадре 1 и будет оставаться там до тех пор, пока все данные в кадре 1 не будут загружены.Только тогда он перейдет к следующему кадру.Вы можете получить подробный отчет о том, сколько байтов данных экспортировано в каждый кадр, установив флажок «Создать отчет о сборке» на вкладке «Flash» в разделе «Файл-> Настройки издателя»

.Идет загрузка отображения, добавьте TextField с именем «loader_txt» в кадре 1 и добавьте этот код в действии:

  stop();

  this.addEventListener(Event.ENTER_FRAME, loading);

  function loading(e:Event):void{

      var total:Number = this.stage.loaderInfo.bytesTotal;
      var loaded:Number = this.stage.loaderInfo.bytesLoaded;

      loader_txt.text = Math.floor((loaded/total)*100)+ "%";

    if (total == loaded){
      play();
      this.removeEventListener(Event.ENTER_FRAME, loading);
    }

  }

Чтобы убедиться, что ваши активы и код ActionScript экспортированы за пределы кадра 1, поэтому приведенный выше код может сработатьсразу же, когда флэш-фильм начинает загружаться, перейдите в «Файл-> Параметры публикации», выберите вкладку «Flash» и нажмите кнопку «Настройки ...» справа от «Сценарий».Диалог должен появиться.В этом диалоговом окне в разделе «Экспортировать классы во фрейме:» введите 2.

Для ресурсов в библиотеке вам может потребоваться сделать аналогичную вещь.Щелкните правой кнопкой мыши на активе библиотеки и выберите свойства, и вы увидите возможность снять флажок «Экспортировать в кадре 1».Если вы снимите этот флажок (что означает, что флэш-фильм может начать воспроизводиться до загрузки этого ресурса), вам нужно будет убедиться, что у вас есть ссылка на этот символ где-то за кадром 1 на временной шкале, в противном случае Flash пропустит его при компиляции.

Удачи!

1 голос
/ 13 февраля 2011

Внешний.При наличии соответствующих разрешений безопасности вы сможете загружать контент из удаленного местоположения в оболочку практически в любой среде.

Задержка, которую вы видите при загрузке с помощью внутреннего загрузчика, вероятно, вызвана библиотечными активами, для которых вы экспортируетеActionscript во время выполнения.Они будут экспортированы в первый кадр.пока этот кадр не загрузится, вы не увидите никакой предварительной загрузки, и ваша логика предварительного загрузчика будет переходить к проценту загрузки этого первого кадра, как только он завершит экспорт этих ресурсов.

...