Очередной блог разработчиков Mount & Blade 2: Bannerlord
Приветствуем вас, воины Кальрадии!
При создании Mount & Blade II: Bannerlord одной из самых важных (и сложных!) задач для нашей команды стала разработка собственного движка. Эта трудность может показаться излишней, ведь можно было лицензировать готовый движок.
Однако тогда Bannerlord получилась бы совсем не такой, как мы задумывали. Например, игра не поддерживала бы пользовательские модификации! На этой неделе наш программист Гёкхан Урас расскажет подробнее о движке Bannerlord.
ИМЯ
Гёкхан Урас
ГОРОД И СТРАНА
Анкара (Турция)
РАБОТАЕТ В TALEWORLDS
с 2012 года
ОБРАЗОВАНИЕ
Бакалавр наук, факультет информатики Ближневосточного технического университета
ДОЛЖНОСТЬ
Программист движка
ЧТО ВХОДИТ В ВАШИ ПОВСЕДНЕВНЫЕ ОБЯЗАННОСТИ?
«Я почти все время сижу за компьютером, пишу и отлаживаю программный код. В основном я работаю над эффектами постобработки, универсальными шейдерами и оптимизацией нагрузки на центральный процессор. Кроме того, я много занимаюсь инструментами для нашего редактора. Еще я регулярно заглядываю в наш баг-трекер, чтобы узнать, нужно ли что-то срочно исправить. И конечно, постоянно общаюсь с коллегами по команде. Наши программисты хотят создать первоклассный движок, поэтому мы все очень тесно сотрудничаем и прислушиваемся к ценным отзывам коллег из других отделов. Помимо всего этого я стараюсь добавлять в движок новые возможности, чтобы наши художники получили от него графику нужного качества».
Temporal Scalable Ambient Obscurance (TSAO)
ЧТО В BANNERLORD ВАМ НРАВИТСЯ БОЛЬШЕ ВСЕГО?
«Возможности работы с модификациями игры. Их авторы творили настоящие чудеса еще в Warband, а с новым редактором и языком для написания скриптов я даже и представить не могу, что нас ждет. У нас очень мощный редактор! Это целый набор инструментов. В нем есть браузер ресурсов, редактор частиц и текстур, редактор физики ткани, редакторы атмосферы, скелета, растений и материалов. Благодаря системе модульных элементов можно легко повторять каждую иерархию объектов в разных сценах. Еще у нас очень продвинутая система редактирования ландшафта для создания карт высоты, слоев текстур и растительности. Он позволяет быстро импортировать из внешних источников карты высот и веса слоев для доработки в редакторе. Повторная загрузка ресурсов в реальном времени облегчает задачу художникам. Авторы модификаций игры смогут не только создавать сцены, но и привязывать скрипты на языке C# к любым объектам, чтобы создавать новую механику их поведения».
КАКАЯ ЗАДАЧА ПРИ РАЗРАБОТКЕ BANNERLORD ОКАЗАЛАСЬ ДЛЯ ВАС САМОЙ СЛОЖНОЙ?
«У нас было 20 сотрудников, а стало 80. Этот переход стал непростым, хоть я решал эту задачу не один. Нам пришлось многое изменить, чтобы столько людей могли работать эффективно. Мы доработали систему контроля версий и баг-трекер, чтобы они вписывались в новый порядок работы нашего офиса.
Код, написанный программистами движка, влияет на работу всей остальной команды, от геймдизайнеров до художников, поэтому очень важно следить за тем, чтобы никто не страдал от наших ошибок. Для этого мы разработали систему автоматического тестирования. Она отлавливает критические ошибки до того, как с ними столкнутся другие отделы. Еще мы добавили визуальное тестирование — система сравнивает текущие и эталонные снимки экрана, выявляя ошибки в шейдерах, которые без нее всплывали на несколько недель позже. Одновременно мы набрали отличную команду тестеров и научились эффективно сотрудничать с ними. В результате сократилось количество ошибок, которые влияют на работу. На словах все это звучит очень просто. Но менять привычки, в личной жизни или на работе, всегда тяжело».
НАД ЧЕМ ВЫ РАБОТАЕТЕ ПРЯМО СЕЙЧАС?
«Сейчас у меня сразу несколько задач. Я завершаю масштабную реорганизацию кода, который отвечает за визуализацию агентов. Это почти на 15% снизит нагрузку на ЦП. Кроме того, я отлаживаю динамическое изменение резкости теней для мощных конфигураций ПК и одновременно пытаюсь оптимизировать визуализацию теней. Наконец, мы с одним из художников улучшаем тени деревьев. Еще я вношу кое-какие изменения в наш редактор по отзывам наших художников».
Contact Hardening Shadows (CHS)
КАКАЯ ФРАКЦИЯ В BANNERLORD НРАВИТСЯ ВАМ БОЛЬШЕ ВСЕГО?
«Баттания, потому что люблю архитектуру и колоритную атмосферу их городов».
КАКАЯ ЗАДАЧА ПРИ РАЗРАБОТКЕ ДВИЖКА BANNERLORD БЫЛА САМОЙ СЛОЖНОЙ?
«При разработке движка Bannerlord было сложнее всего добиться, чтобы масштабные битвы с участием сотен персонажей не снижали быстродействие или качество графики для игроков. Собственно, эта задача и подтолкнула нас на создание собственного движка. Еще одна нелегкая задача — это поддержка модификаций для каждого элемента игры. Моды давно стали важной частью серии Mount & Blade, и мы должны были подготовить все необходимые инструменты для игроков».
ДВИЖОК УЖЕ ПОЛНОСТЬЮ ГОТОВ ИЛИ ЕЩЕ ДОРАБАТЫВАЕТСЯ?
«Мы продолжаем вносить в него изменения: постоянно стараемся улучшить графику, производительность, удобство использования, работу с модификациями и т. д. На мой взгляд, движок практически готов. Считайте, что сейчас мы выпускаем для него внутренние обновления и исправления. За несколько лет работы мы создали мощный фундамент, поэтому улучшения и новые функции не мешают разработке игры. После выхода игры мы будем и дальше повышать качество движка и, конечно, использовать его для новых проектов в обозримом будущем».