Автор: Альберт Мадянов «Albert»

Опубликовано: 04.12.2007

Изменено: 04.12.2007

Постоянная ссылка

Комментарии [6]

Игровой движок Unigine (Вопросы и ответы)


Сайт UralDev взял интервью у Дениса Шергина - менеджера компании Unigine Corp., которая разрабатывает одноименный игровой движок, и которая уже давно известна многим игровым разработчикам. Эта статья освещает общие технологические вопросы движка Unigine, и будет интересна широкому кругу посетителей УралДев.


Сайт UralDev взял интервью у Дениса Шергина - менеджера компании Unigine Corp., которая разрабатывает одноименный игровой движок, и которая уже давно известна многим игровым разработчикам. Эта статья освещает общие технологические вопросы движка Unigine, и надеюсь будет интересна широкому кругу посетителей УралДев.

 

UralDev: Приветствую Денис, расскажите как давно существует компания Unigine Corp. и сколько уже длится разработка одноименного движка.

Денис Шергин: Здравствуйте, Альберт. Компания существует с 2005 года, разработка движка была начата в январе 2004 года. Соответственно, скоро будет 4 года разработки.

UD: Что сейчас представляет собой движок Unigine?

ДШ: Unigine сейчас – это не просто движок, это целая технологическая платформа. Непосредственно же сам движок содержит мощный рендер, поддерживающий практически все современные технологии (кстати, он одинаково эффективно работает со всеми тремя распространенными графическими API: DirectX 9 / DirectX 10 / OpenGL). Unigine поддерживает многоядерные процессоры, работает на различных версиях MS Windows (включая Vista) и Linux, поддерживает 32 и 64 битные платформы.

Помимо этого, в движке сейчас присутствуют: физический модуль, система менеджмента виртуального мира (полностью поддерживающая фоновую подгрузку данных), поддержка множества типов объектов (включая анимированные модели, системы частиц и многое другое), система скриптов UnigineScript, звуковая подсистема, полнофункциональный GUI. Перечислять можно еще очень долго, поэтому, чтобы не утомлять наших читателей, советую посмотреть им список возможностей на нашем сайте (http://unigine.com/features/).

UD: На какую категорию клиентов нацелен движок Unigine? Инди, молодые студии, опытные разработчики?

ДШ: С самой первой версии Unigine мы старались сделать наши технологии как можно более доступными для широкой аудитории. У нас есть специальная программа лицензирования для маленьких независимых студий, по которой они могут получить Unigine всего за 25% от базовой стоимости (оставшиеся 75% выплачиваются только после подписания договора с издателем) – это вполне по карману даже энтузиастам-одиночкам. Однако, основной своей аудиторией мы считаем опытных разработчиков. Это объясняется тем, что современный уровень технологий предъявляет очень серьезные требования к квалификации разработчика, команда без опыта работы просто не сможет вытянуть проект на конкурентоспособный уровень. В первую очередь это относится к арту, разумеется – так, на одного персонажа может уйти 2-4 недели работы даже профессионала с опытом, что уж тут говорить о тех, кто еще только «набивает руку».

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

UD: Когда выйдет полноценный релиз 0.4? Сейчас версия 0.4 все еще бета?

ДШ: Официальный релиз v0.4 будет весной 2008. Несмотря на это, уже больше года эта версия активно используется в разработке нескольких проектов (к сожалению, неанонсированных, поэтому более конкретно сказать не могу из-за всевозможных NDA). Вообще, понятие фиксированной версии слабо применимо к middleware такого класса – так, например, популярный Unreal Engine 3 до сих пор в разработке, хотя лицензировать эту технологию Epic Games начали еще в начале 2005 года, и уже вышло несколько проектов на основе UE3.

Текущая версия периодически дополнительно стабилизируется, полностью тестируется и предоставляется клиентам. Цикл обновлений – обычно 2 недели. Таким образом, лицензиаты постоянно имеют доступ до наиболее продвинутой версии Unigine. Для клиентов это удобно тем, что они имеют возможность очень быстро получать запрошенную ими функциональность.

Вообще, разработка Unigine v0.4 очень сильно отошла от первоначального плана из-за пересмотренного списка возможностей (большую часть из того, что сейчас есть в v0.4, планировалось включать только в последующих версиях). После нескольких релизов серии v0.3x было принято решение создать новую платформу «на вырост», очень много времени было потрачено на тщательное проектирование. Однако, сейчас уже можно утверждать, что эти усилия были совершенно не напрасны – Unigine v0.4 представляет собой легко расширяемую систему, ее прогнозируемый срок жизни до очередного серьезного перепроектирования – не менее 5-7 лет.

UD: Что может предложить движок Unigine в плане самых современных визуальных технологий (освещение, тени, спецэффекты)?

ДШ: Рендер Unigine v0.4 предоставляет: попиксельное динамическое освещение, разные типы теней, три типа шейдинга (по Фонгу, Орен-Наяру и анизотропный), HDR, parallax occlusion mapping, поддержку текстур повышенной точности (16 бит на канал), очень мощные системы частиц, динамическую воду с линией прибоя, специальные материалы для растительности, обширный набор эффектов постобработки (глубина резкости, преломление, glow, motion blur, цветокоррекция и еще ОЧЕНЬ много другого).

Одна из интересных возможностей, недавно добавленных в Unigine – полноценная поддержка стерео режима, что актуально в связи с появлением массовых стерео 3D устройств (сейчас мы плотно сотрудничаем с производителями таких аппаратных решений). Вообще, очень интересно смотреть на свои же 3D демки в стерео режиме – реалистичность картинки значительно повышается.

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

UnigineEditor UnigineEditor

UD: В свойствах движка указывается подсистема физики. Это собственная физическая разработка или вы используете какую-то стандартную библиотеку? Поддерживаете ли вы модный в последнее время Ageia PhysX?

ДШ: В состав Unigine входит наш собственный физический модуль, созданный полностью с нуля. Так как физика тесно связана с системой управления миром, наличие собственной физики является наиболее производительным и логически верным решением. С другой стороны, при желании клиенты могут использовать любую другую физическую библиотеку, которая им по душе – так, например, в одном из проектов была реализована интеграция PhysX в Unigine всего за 2 человеко-недели (кстати, позднее этот клиент вернулся к нашему решению). В настоящее время наша физика предоставляет симуляции физики твердого тела, ragdoll, позволяет создавать произвольные механизмы и транспортные средства. Настройка физики осуществляется в визуальном редакторе, т.е. это доступно даже левел-дизайнерам, без вмешательства программистов.

UnigineEditor UnigineEditor

UD: Есть в движке встроенная поддержка работы по сети?

ДШ: Пока что только в зачаточном виде (базовый интерфейс до сокетов). Несмотря на это, на базе Unigine успешно создаются онлайновые проекты. Например, пару недель назад мы уже тестировали достаточно функциональный прототип MMORPG, который был создан нашими клиентами всего за пол-года. Разработка полноценной сетевой подсистемы – первоочередная задача для следующей версии, сейчас как раз подыскиваем подходящих специалистов в команду.

UD: У вас есть собственный игровой редактор UnigineEditor, насколько сильно он интегрирован с движком. Может ли игровой дизайнер работать с игрой только в этом редакторе, не прибегая к помощи программистов и другим средствам?

ДШ: UnigineEditor, по сути, работает на базе движка, «поверх» него. Таким образом, дизайнер сразу же видит финальное качество картинки, не требуется переключаться в другую программу или ждать компиляцию ресурсов. Не прибегая к помощи программистов, можно создать виртуальный мир, наполненный объектами и эффектами. Однако, создать игру от начала и до конца в нем пока что не получится, игровая логика все равно требует написания определенного количества кода программистом. В настоящее время мы интенсивно работаем над редактором, день ото дня он становится все удобнее и дружелюбнее к художникам, однако многое еще хочется улучшить.

Кстати, UnigineEditor – это далеко не единственный инструмент, идущий вместе с Unigine, помимо него мы предоставляем: продвинутый просмотрщик ресурсов, редактор ландшафта, утилиты для работы с картами нормалей, генератор ambient occlusion текстур, многофункциональный конвертер изображений, плагины импорта/экспорта к 3ds Max и Maya, упаковщик ресурсов.

UnigineEditor UnigineEditor

UD: Каковы текущие расценки на движок Unigine для продвинутой студии (версия в исходниках)? И какие есть у вас варианты лицензирования для начинающих разработчиков?

ДШ: Самая дорогой вариант лицензирования Unigine сейчас – $20k, это совершенно смешная цена по сравнению со стоимостью конкурирующих решений. Для начинающих независимых разработчиков (которых принято называть «indie») у нас есть специальная программа по лицензированию, о которой я уже упоминал – первоначально оплачивается всего 25% от стоимости лицензии, т.е. самый дешевый вариант для них – $2495 (бинарная версия), что вполне доступно даже при очень скромном бюджете. К сожалению, через пару месяцев мы будем вынуждены поднять цены, и одновременно с этим нам придется свернуть программу поддержки indie, так как суммы уже несколько превысят доступные им масштабы.

UD: Как обстоит дело с технической поддержкой для вышеназванных вариантов?

ДШ: Мы предоставляем всем лицензиатам 2 года доступа до обновлений Unigine (при этом не важно, какой формальный номер будет у этой версии, клиенты всегда гарантированно получат наиболее продвинутую версию Unigine), плюс 3 (для бинарной версии) или 6 (для версии с исходниками) месяцев технической поддержки.

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

UD: Кто текущие ваши клиенты? Недавно вы объявили, что подписали договор с панамской компанией «Qilqax International», также раньше было известно что польская студия «Intoxicate Interactive» использует движок Unigine на особых условиях.

ДШ: К сожалению, я не могу пока что разглашать такую информацию до официальных анонсов проектов (хотя очень хочется). Могу только перечислить жанры: FPS, RPG, Racing, MMORPG, Action. В начале 2008 года должен пойти массовый вал анонсов этих игр, нам самим уже не терпится показать результаты совместной работы.

Надо упомянуть, что несколько команд, лицензировавших наши технологии, неверно рассчитали свои силы и не смогли вытянуть проекты с таким высоким технологическим уровнем. Это грустно, но является хорошим уроком для других молодых компаний: трезво оценивайте свои силы, одной только технологии недостаточно для того, чтобы создать хорошую игру – у команды должны быть соответствующая по уровню культура разработки и опыт практической работы. Если это первый проект у компании без опытных разработчиков, то тем более лучше взяться за что-то более простое. Кстати, для того, чтобы разработчики могли примерить наши технологии к своему проекту, мы бесплатно предоставляем им evaluation kit, пробную версию Unigine.

Из не-игровых применений можно назвать проект от Qilqax International и несколько интерактивных архитектурных визуализаций.

UD: Планируете ли вы портировать движок для приставки Xbox 360?

ДШ: Да, в обязательном порядке. Один из проектов наших клиентов (очень забавная аркадная игра) сейчас разрабатывается как раз с прицелом на эту консоль.

UD: Каков будет следующий виток развития движка Unigine? Я имею ввиду, что ожидать от версии 0.5?

ДШ: Дальнейшее улучшение инструментария, поддержка сети, портирование на консоли (Xbox360, PS3) – это планы на следующую версию. Кстати, мы почти созрели морально для скачка версии до 1.0, большинство из задуманного уже реализовано на отличном уровне.

UD: Спасибо за конструктивную беседу. Желаю вам быстрого роста и побольше состоятельных клиентов!

ДШ:Спасибо и вам, было очень приятно пообщаться!


Сайт разработчиков движка Unigine:
http://unigine.com