Я долго думал и не раз сомневался в том, стоит ли начинать цикл обучающих статей о разработке игры от самого начала и до готового продукта на AS3. Но, благородя читателям блога все же решил, что дело хоть и не очень благодарное, но зато нужное. Да и мне есть чем поделиться.
Я надеюсь, вы понимаете, что подготовка подобных уроков это большой труд, который требует достаточно много времени, а оно не всегда бывает в достатке. Я не хотел бы выдавать никак не связанные между собой уроки или примеры, которых в Интернете просто завались, поэтому я решил, что цикл записей о тонкостях разработке будет вестись на примере разработки небольшой игры, которую мы будем вместе постепенно разрабатывать, познавая азы разработки игр, принципы игровых алгоритмов, а так же различные тонкости и хитрости. Впрочем, ничего особенного в этом нет. Подобные уроки уже существуют в сети, но их количество ограничено, и в основном они написаны на иностранном для нас языке.
Я много думал о том, в каком жанре следует сделать игру, чтобы дать хотя бы минимальный опыт и. Замечательный Shootorial на AS2 раскрывающий секрет разработки скролл шутеров уже есть на kongregate. com. Наш Русскоговорящий Хитри уже практически раскрыл все хитрости создания платформеров. а так же показал отдельные примеры создания стрелялок. и даже немного затрагивал тему гонок. В общем, после всего этого мне ничего более достойного в голову кроме игры в жанре Tower Defence уже просто не приходит.
Почему TowerDefence?
— возможно спросите вы. На самом деле это достаточно интересный жанр игры с точки зрения разработки. Он нам позволит познакомиться с такими штуками как:
- Создание игровой карты и игрового мира в целом;
- Элементарный редактор уровней;
- Самостоятельная жизнь отдельных объектов в игровом мире и их взаимодействие;
- Простой AI противников;
- Возможно простой поиск пути;
- Еще немного вспомним стрелялки;
- Познакомимся с игровыми интерфейсами;
- Узнаем силу спецэффектов.
Кроме этого за время разработки мы научимся:
- Делать прелоадеры, считать fps, обрабатывать мышку и клавиатуру;
- Научимся элементарной отладке;
- Оптимизировать код и графику;
- Интегрировать в игру сторонние API, url-lock;
- Получим на выходе пачку базовых классов с полезными функциями которые можно будет использовать в любых других проектах.
Я хочу обо всем рассказать достаточно быстро, но будьте готовы к тому, что этот процесс может немного затянуться. Все будет зависеть от моей занятости.
И самое главное, ради чего затевалась собственно эта запись — я хотел сообщить, что я не буду рассказывать о том, как устроен AS3 и как с ним работать, что такое переменные, циклы, классы и ООП в целом. Потому что информация обо всем этом тянет на небольшую книгу, которых написано уже достаточно. Так что, если вы ни разу ничего не программировали на AS3 и не представляете как там все работает, то у вас есть достаточно времени чтобы познакомится с основами этого языка до момента появления уроков.
Для знакомства с основами AS3 я настоятельно рекомендую обзавестись книжкой Essential ActionScript 3.0 — Colin Moock. Советую печатное издание, так как в будущем книга может стать хорошим настольным справочником по AS3. Всю книжку читать не обязательно, для базового освоения AS3 достаточно прочитать и разобраться с примерами первых 12 глав.
Что нам понадобится для работы?
Для самых начинающих и не искушенных будет достаточно одного лишь Adobe Flash IDE версии CS3/CS4/CS5. Триальную версию Flash CS5 вы можете загрузить здесь. Для более удобной работы с кодом я очень рекомендую использовать бесплатный редактор FlashDevelop. но к сожалению по его использованию я не могу дать каких-то конкретных советов, потому что сам я им не пользовался. Но зная редактор кода во Flash IDE и все его недостатки, я не рекомендую использовать его для больших проектов.
Когда начнем?
У меня никогда не получалось работать одновременно над более чем двумя проектами, поэтому я могу с уверенностью сказать, что к работе над уроками я смогу приступить только после того, как закончу работу над Mining Truck 2 🙂 То есть не раньше второй половины сентября, а скорее всего в конце сентября или в начале октября.
P. S. А еще на прошедшем FlashGAMM! Moscow Стефан Кейш сказал, что по его прогнозам этой осенью будут востребованны игры в жанре Tower Defence 😉