Предварительный загрузчик ActionScript 3.0 мгновенно завершает работу

У меня было много проблем, пытаясь заставить работать предварительный загрузчик в ActionScript 3.0. Я также использую Animate CC.

Чтобы попытаться понять, как заставить его работать, я загрузил Simple NG Loader с сайта Newgrounds https://www.newgrounds.com/downloads/preloaders/, чтобы убедиться, что у меня работает предварительный загрузчик. Затем я получил от Google 4 изображения с высоким разрешением, около 10000x10000 пикселей каждое, добавив до 85 МБ, чтобы убедиться, что их более чем достаточно для загрузки.

Я поместил предварительный загрузчик на первый кадр, а все изображения - на второй вместе с «stop ();».

Когда я играю, прелоадер мгновенно завершает свою работу, но на некоторое время у меня остается белый экран, прежде чем в конечном итоге появятся изображения.

Если я играю в него с помощью автономного флеш-плеера, он моментально вылетает.

Я был бы очень признателен за помощь с этим!


person RandomlyFish    schedule 15.04.2016    source источник
comment
Я не смотрел на загрузчик NG, но вы должны понимать, что когда SWF-файл виден, он уже загрузил все, поэтому все, что находится в кадре 2, также уже загружено. Вероятно, происходит сбой из-за того, что ваши изображения слишком велики для выделенной памяти. Максимальная ширина или высота составляет 8 191 пиксель. Общая ширина X высота не может превышать 16 777 215 пикселей. В любом случае, самый простой способ протестировать прелоадер - загрузить изображение из онлайн-источника. Найдите подсказку в этом ответе.   -  person VC.One    schedule 15.04.2016
comment
Насколько я помню, swf предварительно загружает только первый кадр, прежде чем он станет видимым, поэтому изображения на кадре 2 должны быть загружены позже (если только объекты не отмечены для экспорта в кадре 1 в свойствах объекта). Но обычно фильм должен останавливаться на кадре 1 (где находится предварительный загрузчик) и воспроизводиться после завершения загрузки.   -  person Philarmon    schedule 15.04.2016
comment
@ VC.One Значит, чтобы убедиться, что SWF-файл виден во время загрузки, я не могу вручную разместить изображения на кадре 2? Я провел больше тестов, и автономный проигрыватель больше не вылетает, он просто сделал это при первом тестировании. Я проверил ответ, который вы связали, и я хочу, чтобы он работал только с одним swf, поэтому я последовал варианту 1. Использование этого кода не дало большой разницы, поскольку он все равно мгновенно завершается. Если я отслеживаю процент в onProgress, он дает мне только 100 раз. Затем первый кадр остается замороженным, что и происходит с загрузчиком NG.   -  person RandomlyFish    schedule 16.04.2016
comment
@Philarmon Значит, я должен изменить его так, чтобы он экспортировал все классы во фрейме 2?   -  person RandomlyFish    schedule 16.04.2016


Ответы (1)


Проблема, вероятно, в том, что игра уже будет полностью загружена, когда вы запустите swf во флеш-памяти. Вам необходимо настроить флэш-плеер на «Имитацию загрузки». Сделайте следующее:

  • Нажмите ctrl + enter в вашем ide, чтобы запустить swf
  • Нажмите «Просмотр» в меню SWF-файла и нажмите «Моделировать загрузку».
  • SWF перезапустится и сделает вид, что загружается. Если вы снова откроете просмотр, вы можете выбрать скорость загрузки, перейдя в «Настройки загрузки».
person Snukus    schedule 15.04.2016
comment
К сожалению, они не включили имитацию загрузки в Animate CC. Я мог бы провести аналогичный тест в CS5.5, но я работаю над проектом в CC, который на самом деле не работает в более ранних версиях Flash. - person RandomlyFish; 16.04.2016