GamersNexus: Крис Робертс о технологии персонажей, погодной системе, архитектуре движка.

GamersNexus: Крис Робертс о технологии персонажей, погодной системе, архитектуре движка.

Планы Робертса касательно процедурной генерации, рассказанные GamersNexus в 2014 году, были, по большей части, реализованы, и сейчас команда работает над второй итерацией внутреннего набора инструментов Редактора Планет. Большая часть новой технологии процедурной генерации будет показана на СитизенКоне 9-го октября, и как нам по секрету рассказал Робертс, нас также ожидает демонстрация новой технологии  создания персонажей (прим. пер. Должна была ожидать).

Технический директор Шон Трэйси присоединился к GamersNexus для подробного обсуждения инженерных решений технических преград, с которыми столкнулась команда, предоставляя возможность заглянуть под капот разработки игры, которая, как мы думаем, порадует наших постоянных читателей с инженерной точки зрения.


ПЛАНЫ НА ВЕРСИЮ АЛЬФА 3.0

Команда CIG надеется продемонстрировать процедурную генерацию планет второй версии, одну миссию Squadron 42 (прим. пер. этого, к сожалению, не случилось) а так же показать наиболее полный и цельный геймплей.  На СитизенКоне 2016 хотят соединить воедино игровые элементы из разных модулей, которые существуют и доделаны на данный момент, чтобы показать их одиночное прохождение от-начала-до-конца. Вот прямая цитата:

«Шон [Трейси] усердно работает над этим с кучей талантливых людей, чтобы мы показали потенциальные возможности планет V2 и ещё несколько крутых вещей и игровых моментов которые могут попасть в 3.0. Мы возьмём одну из миссий Сквадрона 42 и покажем, как это будет ощущаться, начиная с брифинга, посадки на корабль, взлёта, выполнения миссии и комбинации полётов и FPS геймплея. Так что это те вещи, что мы собираемся показать. Мы детально продемонстрируем, что могут предложить планеты V2, а затем – как будет ощущаться и играться Сквадрон 42, покажем что из себя представляет опыт выполнения миссии в SQ42 (прим. пер. этого придётся подождать, вероятно, до конца года)

«Это первый раз, когда мы покажем наиболее цельный геймплей. На прошлогоднем СитизенКоне мы бродили, болтали с персонажами, но всё это были очень ранние наработки. Теперь мы задействовали нашу технологию работы с персонажами и, если вы посмотрите на их качество сейчас, по сравнению с прошлым годом, всё равно что день и ночь. Я искренне считаю, что технология персонажей, которую мы показываем, лучшая в своём классе на данный момент.  Мы покажем более завершённый процесс: Вот вы, просыпаетесь на корабле, идёте на брифинг, выполняете миссию. Это то, как единая последовательность событий, или, как мы говорим «глава» игры будет выглядеть и ощущаться.» (прим. пер. ждём дальше)

star-citizen-origin-350r


ТЕХНОЛОГИЯ ПЕРСОНАЖЕЙ STAR CITIZEN И SQUADRON 42

Первый взгляд на компанию Squadron 42 задействовал Гэри Олдмана, Марка Хэммила и других голливудских актёров, чтобы продемонстрировать первоначальную технологию персонажей. В тот момент, команда считала, что персонажи выглядели достаточно хорошо, рассказал нам Робертс. Но, по правде говоря, для получения работоспособной демки, было использовано множество уловок и «костылей»  и команда, работающая над персонажами, достигла значительных успехов по сравнению с тем, что было продемонстрирована в прошлом году (см. Выступление Сената).

Робертс рассказал нам, что карты лицевых мышц и освещение были переделаны с момента той демонстрации, и что новая технология позиционирования глаз будет лучше сочетаться с цветопереходами и мешами. Когда мы спросили о конкретных улучшениях технологии персонажей, Робертс пояснил:

«Был целый ряд неправильно работающих вещей связанных с шейдерами, освещение было запорото. Во время речи в сенате, когда вы наблюдали карты цветопереходов, шейдеры лицевых мышц и карту диффузий, касательные к ним применялись неправильно и сама кожа была наложена неверно. Использовалась линейная кожа вместо кватерниона, из-за чего он (Бишоп) немного смахивал на мартышку. Шейдеры лицевых мышц, формы цветопереходов и освещение работали неверно на нём.»

«Сейчас работа с персонажами продвигается очень быстро – у нас есть целый процесс, во время которого мы сканируем актёров. На них нет никакого макияжа, потому что его не стоит использовать во время процесса фотогеометрии, с помощью которого создаётся модель головы. У нас не было времени поработать над этим, когда мы создавали [демо]. На этот раз, когда каждый актёр обрабатывается, он так же получает первоначальный вид, по типу того, как художник по макияжу помогает актёру хорошо выглядеть для съёмок.»

Многие из этих «проблем», о которых говорит Робертс, звучат словно неверная нота в фортепианной композиции, которую ты никогда не слышал – они не очевидны, и чтобы увидеть некоторые, нужно напрямую заглянуть в игровой движок. Тем не менее, некоторые из них мы можем объяснить.

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

Глаза получили одно из самых значительных улучшений, у них теперь есть система позиционирования. С применением глазного позиционирования можно добиться независимого движения и отслеживания глазами персонажей, для более реалистичного взаимодействия с окружающей обстановкой. Теперь это может быть сделано таким образом, что движение глаз сочетается с шейдерами и цветопереходами вокруг глаз. Все мы видели это, до определённой степени, в роликах и кат сценах раньше, однако CIG надеется сделать эту технологию универсальной и внедрить во все их игры.  Squadron 42 будет первой демонстрацией, а Star Citizen (расширенная вселенная) будет приемником технологии персонажей.

«Есть куча вещей, к которым ты приступаешь в самом конце, как это было с глазами, волосами и кожей. С волосами нам ещё предстоит куча работы…  мы бы не смогли воспроизвести ваши волосы в таком виде, как они выглядят на самом деле, с движком в том виде что у нас есть сейчас. Но мы до этого доберёмся, говоря открыто. Отдел по работе с графикой в последнее время очень занят, у них есть длинный список вещей, что необходимо сделать. И многое оттуда является достаточно фундаментальным.»

Помимо обновлений связанных с волосами, глазами и лицом персонажей,  художественный и инженерные отделы работали над движением и позиционированием солнца.

«Самое масштабное изменение, которое мы сделали, о чём не задумываются многие люди, в том, что каждый 3D движок, который я знаю, передвигает солнце. То есть меняется положение солнца. Что ж, на самом то деле солнце в нашей солнечной системе не двигается – оно остаётся в центре, а мы вращаемся вокруг. Это было масштабное изменение в движке, когда солнце было зафиксировано в одном месте, освещение теперь зависит от того, где ты находишься по отношению к солнцу. Теперь не солнце перемещается, а перемещаешься ты.»

«Это достаточно фундаментальное изменение, касающееся рендеринга и построения теней. Это был пример того, что нам пришлось сделать по причине специфики работы со звёздными системами. Цикл смены дня и ночи происходит у нас не из-за перемещения солнца, а из-за вращения планеты. [Система] будет так же позволять вращать планету вокруг солнца.»

По сути FPS движок рассматривает солнце как очередной источник света, который находится на небе. Если необходимо воспроизвести цикл смены дня и ночи, разработчики могут перемещать источник света на небе, и объекты будут реагировать на его положение. В реальности, как отмечает Робертс, нам ещё со времен Коперника и Аристотеля известно, что мы находимся в гелиоцентрической системе.

Планеты будут вращаться вокруг своих собственных звёзд, а тени и освещение будут реагировать на их движение. Одна из возможностей, о которых нам рассказали позже, это создание двойных звёздных систем, которые смогут генерировать именно такой свет, который можно ожидать от двух огромных источников света. Другая возможность касается таких масштабных событий в космосе, вроде взрыва крупных кораблей на орбите, которые могут осветить поверхность планеты.  Последнее обсуждалось скорее как гипотетическая возможность, но это показывает на что способен новый движок.

«Большое количество базовых вещей касательно рендеринга и построения теней и того, как мы с ними взаимодействуем были переделаны по сравнению с тем, как они работали в CryEngine, потому как мы перешли к 64-битной системе [в прошлом году], которая сильно влияет на точность. Но есть и множество других вещей. Вроде того, что мы сделали солнце отдельной сущностью, которая создаёт корректный свет. Как правило, это просто отдельный момент при организации работы шейдеров или рендеринга. Мы же делаем это в галактическом масштабе, так что обычные уловки, которые можно было бы использовать в других случаях (то же касается синхронизации вида от первого и третьего лица) применимых в играх в большей степени ограниченных в перемещениях и масштабе… мы могли бы ими воспользоваться в качестве временного решения, но это обернулось бы для нас настоящей головной болью. Как правило, мы обычно действуем по принципу. «Ок, а как это сделать по правильному? Как, систематически, это должно функционировать?»»

star-citizen-4k-screenshot-05


СИСТЕМА ПОГОДНЫХ УСЛОВИЙ В STAR CITIZEN

 

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

Команда отказалась от использования карты ветров, чтобы сэкономить личное время художников, объясняет Робертс:

«Художник по визуальным эффектам может вручную создать карту ветров для облаков, и она будет выглядеть достаточно круто и всё такое, но тогда придётся создавать карту ветров для каждой планеты, над которой работаешь. […] Таким образом, если создаешь планету и её биомы, [ты работаешь по принципу] «Так, тут у нас тёплая зона, тут холодная», а затем симуляция сама воспроизводит ветер и погодные алгоритмы, которые сгенерируют облака, и больше ничего делать не придётся. Сейчас работа над этим занимает большое количество времени, но в перспективе [погодная система] предоставит больше геймплейных возможностей и детальности, а так же снизит трудозатраты.»

Генеральный директор CIG выделяет, что это является основой философии команды разработчиков, на чём так же акцентировал внимание Трэйси, рассказав про цель «использовать инструменты, которые сделают 90% работы, пока ты делаешь оставшееся». Робертс проинформировал нас, что подход к решению проблем, который используют CIG, состоит в том, чтобы проанализировать влияние выбранного решения на последующий ход разработки, в идеале, избегая необходимости постоянных заплаток и фиксов, которые могут понадобиться позже, чтобы предотвратить ворох багов, которые эти самые заплатки породят.

«В основном, наш подход состоит в том, чтобы инвестировать наибольшее количество времени в будущие нововведения, которые будут в 3.0 и в последующих релизах, мы не занимаемся  разработкой чего то, что можно выпустить и во что можно поиграть через две недели. В любом случае, мы надеемся продержаться около десяти лет после релиза, как это было с EVE или WoW. Это одна из главных причин, почему мы стараемся спроектировать всё правильно, что, в свою очередь отнимает у нас бОльшее количество времени, чтобы добраться до стартового момента, когда мы наконец скажем «Мы сделали для вас готовую игру». Само собой, мы даём людям попробовать [игру] пока мы создаём её, но я думаю это верный подход, когда ты занимаешься разработкой чего-то с расчётом на будущее.»

«Практически в каждом случае, многое из того что мы выпускаем, как например версии 2.4 или 2.5, приводит к чрезмерным тратам времени на исправление и починку систем, которые, по существу, создают баги, потому что были пропатчены таким образом, чтобы работать только при определённых условиях. В некоторых случаях, гораздо больше времени, чем нам бы хотелось, уходит на решение вопросов и обсуждения, по причине того, что на ранних стадиях разработки было множество решений без прицела на будущее. Например «Мы делаем игру только вот для этого, и это будет просто шутер от первого лица». Мы в таких случаях говорим «Что ж, это не подойдёт для масштаба, который нам необходим» и нам приходится адаптировать и менять вещи из-за этого. И мы этим занимаемся, потому что у нас есть поддержка. Так что, спасибо всем [обращается к камере], ваша поддержка позволила нам засучить рукава и сделать всё правильно, а это фундаментально важно для крепкой продолжительной игры с погружающим геймплеем»

«Для меня это невероятно важно. Мне очень нравится идея [погружающего геймплея], и я уже вижу, что люди делают в 2.5: вижу, как сообщество договаривается и делает вещи, о которых мы даже не думали, но которые позволяет делать система. Таким образом, мы всегда думаем об организации некой системы для людей, вместо того, чтобы напрямую контролировать кто чем занимается. Иными словами, «Создай набор правил и систему внутри которой можно действовать и дай этой системе работать.»»

star-citizen-4k-screenshot-08


СИТИЗЕНКОН И НЕ ТОЛЬКО (СИТИЗЕНКОН НЕ ПРЕДЕЛ)

 

«Мы каждый год проводим это мероприятие, которое, по сути, является годовщиной с момента анонса проекта. Этот офис [в Лос Анджелесе], на самом деле, не является самым большим из тех, что у нас есть. Британская студия гораздо больше этой – там сейчас работают примерно 185 человек. Я думаю, она примерно в три раза больше этой, но именно поддержка местного сообщества позволила нам организовать это мероприятие.»

«Мы делаем лучшую игру, такую игру, которой я не мог сделать нигде больше. Я не думаю, что какой либо издатель был бы достаточно безумен, чтобы вложить такое количество денег и времени в неё.  Венчурным капиталистам не хватило бы терпения для того, чтобы позволить нам создавать что-то такое продолжительное время и СитизенКон – это праздник в честь того, как это всё началось.»

Вспоминая одно из самых старых интервью с нами и вклинившись в паузу после слов  про «лучшую игру», я заметил, что Робертс часто использует эту фразу «строим чёртов лучший космосим из всех.», на что Робертс ответил:

«Ну да. Это больше не «чёртов лучший космосим», это «чёртов лучший симулятор всего». Особенно с наработками по процедурным планетам […], чего мы со всеобщей поддержкой смогли добиться, открыв Франкфуртский офис и наняв невероятно талантливых людей […]. Разработка Star Citizen происходит такими итерациями, потому что раньше я не думал,  что мы смогли бы сделать то, что мы можем сделать сейчас и дополнительные игровые возможности, которые открываются для игроков вместе с этим, захватывают дух.

«Тебе открывается гораздо более широкая палитра вещей, которые можно сделать, потому что теперь у тебя есть планетарные локации, на которых можно делать разные вещи, находить предметы, спасать людей, создавать свой собственный уголок – да всё что угодно. Если раньше мы были больше ограничены космосом и посадочными зонами, которые были просто ограниченной территорией, так что – с точки зрения дизайнера, который создаёт игры – это просто невероятно захватывающе, ведь это означает что игровой мир будет ощущаться гораздо больше и живее. Ну, а СитизенКон это событие где мы отмечаем тот факт, что нам дали возможность сделать это всё и на нём мы покажем следующий шаг в разработке, над которым мы работаем, да и вообще это очень весёлое мероприятие.»


ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ И НАПОМИНАНИЕ О ПРЕД-РЕЛИЗНЫХ ИГРАХ

 

Позже мы опубликуем интервью с Шоном Трэйси – во всяком случае его первую половину. Мы углубимся в обсуждение архитектуры движка и расскажем о том, что уже было сделано и что планируется сделать, а так же то, как переработки движка повлияли на возможности разработки игры.

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

Оригинал (англ)