Дневник разработчиков #40: GEM2 — мифы и реальность

GEM2 мёртв. Да здравствует GEM2!

Подходите ближе к костру, друзья. Я расскажу вам историю. Историю о борьбе, смерти и перерождении одного отважного игрового движка. В комментариях часто можно прочитать, что нет уж сил терпеть опостылевший второй GEM и подавайте-ка сюда третий, и, желательно, на вчера. Сколько можно выпускать и перевыпускать чего-то там — делайте новое. Хватит использовать мёртвый GEM2. Доколе! Нужно что-то делать!

Друзья, не спешите брать ваши интернет-транспаранты в руки. Скорее всего дело в банальном недопонимании. Вся эта тема с движками не так проста как кажется. Одни думают, что движок это то, что “рендерит красивые модельки с крутыми шейдерами и всё”. Другие, что он полностью определяет какой будет игра. Третьи, что GEM3 лучше чем GEM2 потому что очевидно же! Третий же всегда лучше.

Видимо некоторые моменты нуждаются в пояснении. Википедия говорит нам, что “Игрово́й движо́к — центральный программный компонент компьютерных и видеоигр или других интерактивных приложений с графикой, обрабатываемой в реальном времени. Он обеспечивает основные технологии, упрощает разработку…” То-есть движок это основа и, зачастую, довольно гибкая. В этом легко убедиться если просто сравнить игры, которые выходят на одном и том же движке. Вряд ли кто-то скажет что Lineage II и Star Wars: Republic Commando очень уж похожи. А уж Tyranny и Fallout Shelter тем более не назовешь близнецами. Да и В тылу врага 2…

… не сложно отличить по картинке от Soldiers:Arena.

GEM2 жив!

Движок определяет основные правила, и существенно упрощает работу над созданием игры, потому что не нужно делать все с нуля. Но не забывайте, что это средство и средство вполне изменяемое в правильных руках. Большинство того о чем мы пишем в дневниках это и есть правки в движок. Все эти окопы, медики, фортификации, интерфейс, новый режимы и прочее — то чего не хватало и пришлось добавить. Учитывая то количество изменений, что мы внесли он давно перестал быть тем GEM2, который вы помните. Год назад мы говорили о версии 2.3 и уже тогда это обозначение было условным. С тех пор он менялся много раз и еще не раз изменится, чтобы соответствовать целям поставленным перед Soldiers:Arena и не так уж важно какую цифру к нему добавить. Если это поможет получить вам нужные ответы, можете называть его хоть GEM42.

И мы говорили в основном о геймплейном функционале. Кроме него есть огромный кусок работ, о котором не так интересно читать (да и писать тоже). Отчасти потому что подобные темы очень сложно доходчиво раскрыть на понятном языке, без использования массы терминов и аббревиатур. Да-да, шуточки про “ответ программиста” тут были бы к месту. И эти незаметные, но важные работы идут постоянно. GEM2 многому научился.

  • Заботливо поддерживать частичные и полные локализации. На данный момент почти все кроме right-to-left языков.
  • Информировать игрока о его успехах в сессии, рейтингах, доступных командирах и их опыте.
  • Работать с памятью по стандартам C++11. Выделение, освобождение, подсчет количества ссылок на объекты теперь проходит лучше без использования старых костылей.
  • Улучшил систему квантования юнитов. А мы о чем говорили? Термины-то вот они. Это дает возможность настроить более реальную скорострельность пулемётов, зениток и прочего. Да и AI стал соображать быстрее.
  • Распознавать высокодетальную карту высот в нужных местах. Специально делали, чтобы можно было из Pak40 сбивать яблоко с головы пехотинца в окопе.
  • Понимать Rim shading, Ambient bounced, HDR, LUT, gamma-correction и прочее.
  • Вобрал в себя инструменты для создания игр против ботов, как одиночных, так и многопользовательских.
  • Научился быть толерантным к разным платформам и разрядностям. На прошлом тесте наконец-то наши кодеры смогли поиграть в общей сессии из-под Linux-a и больше не чувствуют себя ущемленными.

Этот список продолжит расти и GEM2 вберет в себя все что нужно для Soldiers:Arena. Друзья, большинство проблем родом из предыдущих игр серии не являются неразрешимыми. Сложными — да. Ресурсозатратными — да. Но не непосильными. Уже сейчас пехота учиться не вспоминать перед броском гранаты выключен ли дома чайник. Да и прыгать через заборы научилась. Мы помним о старых шероховатостях и стараемся их по-возможности править. Осознаем, что в 2017 странно игре не иметь поддержки 64-битных процессоров и новых технологий обработки графики. Но сейчас в приоритете геймплейные решения. И как только большинство функционала будет готово — мы займемся оптимизацией и косметическими правками. А пока просим вас помнить, что GEM2 наш bro и он каждый день делает свои пять подходов, чтобы стать еще мощнее:) Всего вам лучшего и PZ.IV.