![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Dec 2010
Сообщений: 177
|
Перешел с компиляции FlashIDE на компиляцию в FleshDevelop, в связи с чем, полностью изменился подход, графика отдельно в swc, и на каждый граф объект вешается обертка (wrapper/decorator).
Встала задача создать эффективный менеджер парсинга графики из swc и создания объектов оберток. Начал смотреть в сторону порождающих паттернов: Abstract Factory, Builder, Factory Method, Prototype и пр. Но изучить их и применить для решения данной задачи не так то легко, т.к. только начал изучение. В общем виде, в Flash IDE создаются уровни игры, т.е. расставляются по местам граф объекты, задаются имена и сохраняются с именами/классами Level1, Level2…. и далее экспортируются в swc библиотеку. В FD я не наследую классы от графики swc, а просто создаю уровни level1 = new Level1(); и далее перебираю клипы внутри уровня или обращаюсь по имени getChildByName), создавая для каждого граф. подобъекта уровня свою обертку. Подскажите, какие паттерны/приемы/схемы вы используете для создания гибкого менеджера, который парсит swc и вешает обертки граф. объектам для анипулирования игровыми объектами? Последний раз редактировалось Alexmody; 07.01.2011 в 23:42. |
|
|||||
|
по-моему, лучше будет написать собственный редактор уровней на основе view используемого в приложении, и сохранять уровни в любом удобном формате (xml, json, собственный формат).
данные о графических объектах брать из библиотек описанных в картах ресурсов. |
|
|||||
|
Цитата:
Дело тут в том, что придется перекомпиливать всё это дело по велению геймдизайнера, но что хуже это даже менее удобно: если не надо отображать все объекты разом, придется это дело перед началом игры забивать в память. Вариант mayakwd один из самых разумных.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
|
Насчет формата - рекомендую yaml. Спрыгнул на него с XML - доволен очень (:
__________________
while(1) {} |
|
|||||
|
потому, что вам придется «городить» двойную работу, помимо просто описательного процесса для каждого блока во flash ide придется еще делать дополнительную карту чтобы описывать какой блок что делает.
это чудовищный способ. |
|
|||||
|
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
во первых, автору: вы имели в виду swc а не src (это констатация, а не вопрос)
во вторых, вам помогут: декоратор/мост и стратегия ну и и все остальные надцать паттернов. в третьих - обёртка. в четвертых: парсить swc не надо - это просто набор классов.
__________________
Отряд Котовскага Последний раз редактировалось Котяра; 07.01.2011 в 22:38. |
|
|||||
|
Регистрация: Dec 2010
Сообщений: 177
|
mayakwd
>>по-моему, лучше будет написать собственный редактор уровней на основе view Да, предполагаю, что свой редактор и xml это лучший вариант, но сейчас нет времени его писать, к тому же с каждым новой игрой его придется значительно переделывать. Psycho Tiger >>Можно давать разные имена, типа circle1, circle2, square1... Но как-то это дело костыльно. >>Дело тут в том, что придется перекомпиливать всё это дело по велению геймдизайнера, но что хуже это >>даже менее удобно: если не надо отображать все объекты разом, придется это дело перед началом игры >>забивать в память. Задавать имена в Flash IDE или еще хуже параметры в именах клипах это очень трудоемко и неэффективно + перекомпиляция swc при изменении имени/параметра. Поэтому пока что в резерве вариант, где в FD парсятся левелы на наличие вложенных граф объектов и создаются необходимые классы обертки на основе индентификаторов классов граф объектов, что позволяет для каждого граф объекта в Flash IDE не прописывать имя/параметры. Котяра >>декоратор/мост >>в третьих - обёртка. На сколько я читал, декоратор и обвертка это одно и тоже, сначала было название wrapper, а потом сменили на Decorator. Спасибо, почитаю в первую очередь о стратегии и мосте. Последний раз редактировалось Alexmody; 07.01.2011 в 23:54. |
|
|||||
|
Цитата:
С другой стороны есть тут и подводные камни... Но с ними можно столкнутся и в других ситуациях, например делая исключительно визуальные ассеты с приминением, например partigen(редактор систем частиц для людей, а не программистов)... Но врятли собственный редактор получится без глюков и не потребует множества доработок... Особенно если подразумиается, что редактором будет пользоваться не только разработчик, но и например геймдизайенр... Добавлено через 7 минут Кстати, если влом разбираться с JSFL, можно предложить еще вариант: Dev-версия работает с уровнями подгружая их из swf, в качестве редактора вся мощь Flash IDE , но есть затраты на загрузку и парсинг всех этих уровней при старте игры...В той же Dev-версии есть функция серриализации и сохранения игровых уровней в XML Release-версия уже не грузит swf, а грузит XML(ну или эмбэдит их, не важно).
__________________
Искренне Ваш, Джек. |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:02. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|