| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Android > Организация архитектуры игры |
| Автор: ProgrammistRoman 28.7.2013, 00:42 |
| Я хочу написать игру под Android с использованием, скорее всего, AndEngine. Я уже пробовал делать что-то на других движках и под винду, но все это just for fun. Сейчас хочется написать что-то нормальное, но я не знаю, как лучше организовать архитектуру приложения, т.е. как лучше отделить рисование, AI и т.д. Я использовал для некоторых приложений шаблоны mvc и mvvm, но в данном случае думаю это не подойдет, а создавать один класс-одиночку с нитью, в котором будет много всего - как-то тоже не очень. Поэтому может быть есть какие-то красивые и эффективные решения?) |
| Автор: ProgrammistRoman 2.8.2013, 17:26 |
| Хм ... наверное глуповатый вопрос задал, надо было побольше погуглить сперва ... Вот я нашел такую диаграммку, что вы можете сказать по этому поводу? Стоит ли использовать? http://s1.ipicture.ru/Gallery/Viewfull/29042477.html |
| Автор: Dapo 9.8.2013, 04:51 |
| Я использую такую схему: 1. SplashActivity 2. MainActivity - MainMenuScene - LevelsMenuScene - IngameMenuScene - EndgameMenuScene - GameScene 3. ResourceManager управляющий ресурсами для сцен Схема общая, набор сцен варьируется. |
| Автор: ProgrammistRoman 11.8.2013, 12:31 |
| А у вас, если не секрет, какие версии приложения есть? В смысле платная/бесплатная/обе. Просто я хотел бы сделать две версии, но хочется так все разделить, чтобы основа (ядро) было общее, чтобы можно было с минимумом проблем более менее отлаженную бесплатную версию использовать для создания платной. |
| Автор: Dapo 19.8.2013, 10:48 |
| Для платной и бесплатной у меня разные проекты. соответственно имена пакетов com.mygame.pro и com.mygame.lite например. код либо тупо дублируется, либо выносится в библиотеку. Да, кстати, если вы собираетесь дебажить бесплатную версию с помощью пользователей, чтобы потом выпустить платную, то не советую. Карма будет одна. |
| Автор: Dapo 19.8.2013, 18:44 |
| Да ну как не идеально... Такое же как и обычное, без модулей... А такие вещи как AI нужно, конечно выносить в отдельную библу (если предполагается использовать в разных проектах) |