Авторы: Андрияш Козловский, Вячеслав Мурыгин, Илья Козырь
Одна из визитных карточек игр серии
S.T.A.L.K.E.R. – система симуляции жизни
A-Life, благодаря которой персонажи и существа в Зоне живут собственной жизнью. A-Life был разработан в
GSC Game World
ради более правдоподобной подачи игровой Зоны: игрок легче поверит в
окружающий его мир, если всё, что он будет наблюдать, станет наиболее
приближенным к реальности. Реализм – это не только фотореалистичные
текстуры и ландшафт, взятый с действительно существующих прототипов, но и
поведение героев, мутантов, которое не вызывало бы со стороны
восприятия негатива. Разработке
AI, особенностям создания игрового движка мы посвятили интервью с "отцом" A-Life и ведущим программистом компании GSC Game World
Дмитрием Ясеневым.
***
GSC-Fan.Com:
Здравствуйте, Дмитрий! До того, как попасть в GSC, вы работали
программистом или это были околокомпьютерные специальности
(администрирование и прочее)?
Дмитрий Ясенев: До GSC
Game World я работал программистом в Информационно-Аналитическом Центре
БИТ над базой данных по законодательству Украины "Право".
GSC-Fan.Com:
Тяжело ли выучиться на компьютерно-игрового программиста? Откуда можно
почерпнуть знания для такой профессии? Возможно ли их получить в вузах,
чтобы уже потом устроиться в компанию-разработчик?
Дмитрий Ясенев:
К сожалению, наши ВУЗы дают только академические знания, прикладному
программированию нужно учиться самому. Мой путь в игровую индустрию
лежал через интерес к искусственному интеллекту. Сначала в качестве
лабораторной работы я написал
клон "филлера", потом заинтересовался играми на доске, в частности,
реверси.
GSC-Fan.Com: Как вы в детстве выражали стремление к компьютерной технике?
Дмитрий Ясенев:
Наверное, все дети, у которых есть доступ к компьютеру, сначала
используют его только для игр. Я тоже любил поиграть, сначала в
"Формулу-1" (была такая игра, GPEGA – Grand Prix EGA, которая работала
на 80x286, а может и 80x086). Ещё мне запомнилась чудесная игра
Transport Tycoon Deluxe. Потом играл в разные стратегии, шутеры. Так как
мои родители – программисты, то я изначально рассчитывал стать
программистом, но, честно говоря, я никогда не думал о том, что буду
когда-то сам разрабатывать игры.
GSC-Fan.Com: С чего начался ваш профессиональный опыт работы в данной области?
Дмитрий Ясенев: С посланного резюме в GSC Game World
GSC-Fan.Com: Вы относитесь к видеоиграм как к развлечению или как к объекту работы?
Дмитрий Ясенев: Смотря к каким
Если я смог погрузиться в игру, отвлекшись от чисто автоматического
нахождения глюков и технических нюансов, то как к развлечению. К
сожалению, это случается далеко не всегда.
GSC-Fan.Com: В
игровых периодических изданиях нередко упоминают возможности игрового
движка. Бывает, что коду движка приписывают едва ли не волшебные
свойства, способные сделать из любой игры успешный продукт. Что же это,
все-таки, такое, и что он включает в себя?
Дмитрий Ясенев:
Самое главное в игре – не движок, а идея и оригинальность. Если это
есть, то всё остальное – в какой-то мере вторично. Да, без красивой
графики в большинстве случаев далеко не уедешь. Но ведь есть игры с
простой реализацией, но шикарной идеей, которая и делает игру
интересной.
GSC-Fan.Com: Какие знания, помимо программирования, важны при написании игрового движка?
Дмитрий Ясенев:
Много чего нужно знать при написании движка. Наверное, основное – это
уметь бороться со сложностью. Ведь современный движок – это система,
состоящая из сотен тысяч строк кода (а иногда и миллионов). Как написать
его так, чтобы он, с одной стороны был функциональным, эффективным,
легко расширялся, работал на разных платформах, максимально используя
ресурсы системы, и при этом вы не боялись, что ошибки будут сыпаться на
каждом шагу. Как организовать пайплайн контента так, чтобы дизайнерам
было удобно, а программистам свободно (например, изменение форматов
ресурсов не приводило к головным болям), чтобы каждый занимался только
своим делом: дизайнеры – "дизайнили", а программисты – программировали.
Как сделать так, чтобы изменения от одних к другим проходили через
автоматические проверки, чтобы исходники ресурсов не терялись, чтобы
ошибки легко исправлялись, и чтобы разрабатывать было легко и приятно. В
этом и есть вызов для программиста, и каждая команда решает его
по-своему.
GSC-Fan.Com: Дмитрий, скажите, программисты
из стран бывшего СССР достаточно ли компетентны и обладают необходимыми
навыками, чтобы работать в крупнейших и самых популярных фирмах занятых в
компьютерно-игровой индустрии? Положа руку на сердце – мечтали бы вы
работать в таких компаниях, как Valve и Activision?
Дмитрий Ясенев:
У меня нет репрезентативной выборки по программистам из бывшего СССР и
всем остальным, поэтому ответить на первую часть вопроса не могу. По
второй части – несмотря на то, что, конечно, есть много компаний, у
которых я мог бы набраться опыта и ценных знаний, я бы не хотел
переезжать куда-то из Украины.
GSC-Fan.Com:
Как заверяют мастаки, главная вина в провалах проектах для ПК-платформы
лежит на программистах – якобы они не в состоянии написать движок
нужного качества, не знают, или не хотят. Вспоминая Чернышевского,
спрашиваем – кто в этой ситуации виноват, и что делать?
Дмитрий Ясенев:
О каких именно провалах идёт речь? И кто пишет проекты на консоли –
разве не те же самые программисты, которые вчера писали для ПК?
GSC-Fan.Com:
В целях экономии времени на разработке, компании приобретают уже
готовые графический и физический движок. Почему же нет продажи движка AI
отдельно от игры?
Дмитрий Ясенев: Почему нет? Они есть. Kynapse, SpirOps, ещё несколько. Я сам написал такую систему, она даже использовалась в одной игре.
GSC-Fan.Com:
Из существующих игровых платформ, какие, на ваш взгляд, наиболее
перспективнее? PC-платформе грозит вымирание? Действительно ли будущее
за консолями?
Дмитрий Ясенев: Миром правят деньги.
Install base ("установленная база") плюс удобство разработки имеют
критическое значение при выборе платформы. Не думаю, что ПК платформе
грозит вымирание, всё-таки компьютеров пока что гораздо больше, чем
приставок. Другое дело, что программы для компьютеров покупают меньше,
чем для приставок.
GSC-Fan.Com: Однажды в Сети
проскользнула новость о том, что в GSC имеется свой собственный
работоспособный порт "S.T.A.L.K.E.R.: Зов Припяти" на Xbox 360. Выходит,
у компании были планы сделать аддон мультиплатформенным еще тогда,
несколько лет назад? Это правда?
Дмитрий Ясенев: Скажем
так, мы немного потренировались на Xbox 360, запустив на нём уровень из
S.T.A.L.K.E.R. с ограниченной функциональностью. Этот опыт помог нам при
разработке нашего нового движка.
GSC-Fan.Com: Заявлено,
что S.T.A.L.K.E.R. 2 выйдет и на консолях. Речь идет только об Xbox
360, или владельцы PlayStation 3 не останутся обиженными?
Дмитрий Ясенев: Это зависит от того, захочет ли этого издатель.
GSC-Fan.Com:
В 2007 вышел Crysis с беспрецедентным уровнем графики, которая
великолепна даже в наши дни. Можете предположить, как такое смогло
получиться у CryTek? Ведь прошло уже столько лет, а картинка до сих пор
радует глаз! Есть ли вероятность, что с точки зрения технологий
S.T.A.L.K.E.R. 2 произведет похожий эффект, как Crysis в свое время?
Дмитрий Ясенев:
CryTek инвестирует очень много в R&D (Research and Development –
"Исследование и конструирование"). Мы себе это позволить не можем. Но
могу вас заверить, что S.T.A.L.K.E.R. 2 будет выглядеть достойно на фоне
своих именитых соперников, и в нём будут инновации, которых, на данный
момент, нет ни в одной другой игре.
GSC-Fan.Com:
Отдельная команда модостроителей в поте лица создаёт "сталкерский" мод
на основе движка игры Crysis. Кстати, ходили слухи, что GSC намерены
купить "мотор" у CryTek. Был ли повод для такого слуха, или в нем нет ни
капли истины? Вы себе представляете S.T.A.L.K.E.R. на CryEngine 3?
Дмитрий Ясенев:
Перед написанием своего движка мы рассматривали различные альтернативы,
в том числе смотрели и CryEngine 2. Я не знаком подробно с CryEngine 3,
поэтому мне тяжело судить об этом.
GSC-Fan.Com: Перед
тем, как садиться за работу над новым "мотором" для S.T.A.L.K.E.R. 2, вы
анализировали, чего хотите добиться в технологическом плане? Чему в
этот раз программисты движка уделили внимание? Какие приоритеты вы перед
собой поставили? Новый движок уже полностью написан?
Дмитрий Ясенев:
Мы анализировали, какую игру мы хотим получить на выходе. Кроме новых
фич (как например, мультиплатформенность) мы уделили особое внимание
нашим старым проблемам: архитектуре движка как такового, редакторам и
пайплайну создания контента, анимационному движку, использованию
многоядерности, проблемам с памятью и т.д.
GSC-Fan.Com: Когда можно будет лицезреть плоды результатов ваших стараний на скриншотах?
Дмитрий Ясенев: Думаю, скоро. Мы активно работаем, но нужно еще немного потерпеть.
GSC-Fan.Com:
Дмитрий, у вас есть пожелания к тем, кто намерен связать свою жизнь с
программированием, фанам S.T.A.L.K.E.R. и посетителям нашего сайта?
Дмитрий Ясенев: Фанам – терпения и понимания; мы сделаем всё, чтобы ваши ожидания оправдались.
Программистам – совершенствоваться, совершенствоваться и
совершенствоваться. Для тех, кто хочет поучаствовать в разработке
S.T.A.L.K.E.R. 2 –
присылайте свои резюме, у нас
набор программистов идёт непрерывно.
Посетителям Вашего сайта – хорошего настроения и удачи!
***
Ну
а мы, со своей стороны, благодарим Дмитрия за общение и желаем ему
побольше сил и вдохновения в своей работе! А поклонников S.T.A.L.K.E.R.,
которым как можно быстрее хочется увидеть первые кадры второй части
игры, просим проявить терпение :)