Сделать хорошую игру

" В игры играют люди"

Эту фразу стоит чаще проговаривать начинающим разработчикам игр. Как бы ужасно не был написан код - его не увидит игрок. А вот увидят, услышат, войдут в игровой мир фантазии - многие! И какова же будет радость услышать приятный звук музыки, бодрящий гимн, настраивающий на битву с врагами или льющийся сказочной романтикой распев головоломки. Чёткие текстуры эффектов и гармонично подобранные цвета не дают устать глазам.

Видео- и аудио- исполнение - основные элементы, посредством которых человек взаимодействует с миром игры, вливается в игровой процесс.


Разработка любой программы – это всегда планирование, много планирования.

Этап 0. Начинаем с создания концепции игры. Думаем, о чем она будет, ее сюжет, жанр, целевая аудитория. Понадобятся только – хорошая фантазия и понимание существующего игрового рынка. Смотрим Google Play, App Store, игровые журналы на подобии Играмании, ЛКИ. Обязательно заглядываем в раздел с не очень популярными играми. Читаем отзывы на игры с оценкой от 5 до 8 из 10.

Если планируем создавать игру с друзьями, устраиваем «мозговой штурм» и отбираем самые интересные идеи. Бывает, что в игре ничего особенного нет, а в неё играют. В чём дело? Дело в исполнении, а не в идеи игры: хорошо проработаны уровни, анимация игровых объектов, качество текстур, звуки игрового мира, музыка.

Этап 1. Помимо исполняемой части, потребуется графика, звук, текстовая информация. Всем этим можно заняться самостоятельно, но профессионалы, справятся с этими задачами намного лучше и быстрее. Но они стоят денег.

Что касается исполняемой части, (игровой программы), то для ее написания нужно не только знание языка программирования, но и представление о принципах создания игр. Хорошим вариантом здесь будет написание алгоритма на так называемом «псевдокоде», то есть просто описание всех действий на русском языке. Именно это описание в конечном счете и будем программировать. Альтернативой этому пути является выбор готовых движков (фреймворков) или даже конструкторов, в которых уже есть инструменты для создания карт, работы с текстурами, звуком и т.п.

Этап 2. Приступаем к написанию программы. В общем случае игра должна правильно и корректно работать с графикой, звуковым сопровождением, реагировать на команды и действия пользователя задуманным образом. Методы реализации всех этих задач зависят от конкретного языка программирования. Этот этап также включает тесты и отладку программы.

Этап 3. Когда готова минимально-играбельная версия – отдаём её на тестирование друзьям или родственникам, которые помогут посмотреть на игру свежим взглядом. Крупные разработчики игр используют для этого специальную фокус-группу игроков – тестеров, которые проверяют все возможности игровой программы в поисках несоответствий, возможностей для жульничества, логических и программных ошибок.
Этот этап важен тем, чтобы получить как можно больше обратной связи и быстро допилить то, что критично.

Графика и звук, дизайн

На хорошую игру приятно смотреть и интересно слышать реакцию мира на действия пользователя. Не знаешь как это сделать? Читай статью. Ресурсы для программ можно найти здесь, здесь, здесь, музыка и звуки здесь, здесь. Никаких кодерских цветов! Подобрать палитру помогут здесь, здесь.

Инструменты разработчика

Использование конструктора игр ускоряет разработку, но не надо забывать про качество и технологичность игры. Попробуйте писать игры с помощью движков: sfml, другие. Используйте OpenAL, OpenGL, DirectX, HTML5.

Монтаж видео

Как сделать хорошее видео читай здесь. Снять экран можно с помощью Fraps или Camstudio. Программы для видео и аудио монтажа. Примеры обзоров, на которые стоит ориентироваться: первый, второй, третий

* При использовании чужих ресурсов не забывайте соблюдать условия лицензии
* Помните, что ваша работа будет показана гостям выставки

Совет начинающему: "Начните!"

  • Не надо сразу создавать игру круче чем LineAge, SkyRim, WoW (список продолжить самому). Даже крупные разработчики не берутся за большие проекты. Начните с чего-то простого по геймплею: Пакман, платформер, но не MMORPG или шутеры.
  • Нужна команда. Для начала достаточно 3-х человек. Лучше, если эти люди будут выполнять несколько ролей. Роли в проекте: кодер, звуковик, дизайнер, сценарист, тестировщик. Вот такая конфигурация для трёх человек оптимальна: кодер+дизайнер+тестировщик, кодер+звуковик+тестировщик, сценарист+звуковик+дизайнер+тестировщик.
  • Главное – быть реалистом. Оцените свои силы и выберите со своей командой то, что вы точно сделаете за месяц или два. Этого времени достаточно, чтобы сделать основную часть игровой механики и минимально оживить игровой мир (реакция объектов мира за счёт звука и текстур).
  • Чтобы научиться можно повторять чужие идеи. Но прорабатывать их надо максимально: код, игровые звуки, текстуры. Лучше один-два хороших, проработанных проекта, чем ведро из недоделок.
  • Вам не нужен сайт для вашей игры. Сегодня достаточно создать ВК-группу. И то, она понадобится лишь тогда, когда у вас будет во что играть. Поэтому не тратьте силы на распространение того, чего у вас нет.
  • Не тратьте время на документацию, а просто визуализируйте. Составьте список того, что вы хотите видеть в игре, выкиньте из него то, без чего она не потеряет свой смысл. Например, игровое меню не так важно как возможность собирать бонусы по карте, поэтому лучше потратить время на разработку взаимодействия с бонусами.
  • Используйте конструкторы или движки, если вы плохо программируете. Но хорошо овладейте этим инструментом. Необходимость в навыках программирования проявится со временем.
  • Будьте аккуратны с лицензиями на инструменты разработки, звуки, текстуры, модели, шрифты и подобное.
  • Очень важно довести свой проект до той промежуточной стадии, когда будет готова какая-то значимая часть, которую можно продемонстрировать.