Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Архитектура игры на AIR. (http://www.flasher.ru/forum/showthread.php?t=211538)

Bletraut 17.09.2015 17:26

Архитектура игры на AIR.
 
Собственно я делаю игру на AIR для гринлайта. У меня очень много 3д моделей, всяких текстур и прочего. Проект создаю в фд. Так вот, как лучше всего мне подключать игровые ресурсы, просто эмбеддить их или как вообще?

Zebestov 17.09.2015 17:28

Только не Embed. Так не делают.
Все нужно загружать/выгружать по месту.

Bletraut 17.09.2015 17:51

Т.е. через лоадеры? Но тогда же ресурсы игры могут изменить. И как её устанавливать будут? Как там всё запаковать тогда?

illuzor 17.09.2015 17:58

Цитата:

Все нужно загружать/выгружать по месту.
Для пк не критично, памяти много.

Zebestov 17.09.2015 18:15

Цитата:

Сообщение от illuzor (Сообщение 1186888)
Для пк не критично, памяти много.

Тогда почему чуть не в каждой игре мы видим "LOADING…" после каждого чиха?

Цитата:

Сообщение от Bletraut (Сообщение 1186887)
Т.е. через лоадеры? Но тогда же ресурсы игры могут изменить. И как её устанавливать будут? Как там всё запаковать тогда?

В конечном счете да, через Loader. Можно пользоваться уже готовыми и удобными Asset Manager-ами. Ресурсы можно зашифровать чем-то быстреньким, вроде XOR-а того же. Устанавливается все из файла .air, который содержит все ресурсы приложения в виде файлов и папок, которые после установки будут находиться в папке File.applicationDirectory.

Bletraut 17.09.2015 18:23

Цитата:

Тогда почему чуть не в каждой игре мы видим "LOADING…" после каждого чиха?
У меня в игре много 3д моделей. И вот перед каждым уровнем у меня парсится 3д модель уровня, а это какое-то время. Думаю там так же, либо какая-то генерация идет.

Zebestov 17.09.2015 18:26

Може и так, не спорю. На мобилах (моя привычная платформа) это роскошь, поэтому вариант "грузануть/заэмбеддить все сразу" — это не вариант вообще =)

Bletraut 17.09.2015 18:54

Цитата:

Може и так, не спорю. На мобилах (моя привычная платформа) это роскошь, поэтому вариант "грузануть/заэмбеддить все сразу" — это не вариант вообще =)
У меня ПК, поэтому я жирую. А вот можно сразу ByteArray лоадером загрузить, а затем этот byteArray в Vector.<Number> перегнать, это же быстрее, чем парсинг модели?

Добавлено через 37 секунд
Вообще я раньше играл в игру "Машинариум" и вот там куча каких-то левых ресурсов была. Вот как они хранились.

Zebestov 17.09.2015 19:00

Очевидно FileStream придется кстати.

AlexCooper 17.09.2015 19:27

Цитата:

Сообщение от Bletraut (Сообщение 1186898)
затем этот byteArray в Vector.<Number> перегнать

Простите что? Расскажите, быть может я отстал от жизни.

По поводу ресурсов, конечно же хранить локально и грузить в рантайме. Как минимум вы сможете реализовать полноценный клиент с автообновлением. Конечное решение зависит от разработчика, кто упаковывает графику в zip + LayoutManager. Кто просто в корне приложения. Лично я, если ресурсы большие, то упаковываю и передаю архивами. Само же приложение при обновлении/первом запуске разпаковывает ресурсы из архива + отдельный файл-конфиг с меткой версии ресурсов и удаляет архив. Приложение так же не грузит все ресурсы, а только лишь те которые нужны


Часовой пояс GMT +4, время: 02:40.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.