Перейти к публикации

Акция на Годовщину Star Citizen

Читать...

Распродажа Crusader Mercury Star Runner

Читать...

Заработал обмен вещей из VD на UEC

Читать...

Руководство для писателей и Лорострой

Всем снова привет и приветствую Вас на еще одном выпуске Руководства для писателей по миру Star Citizen. Мы все очень рады отличному отклику на вопросы прошлой недели и этого способа взаимодействия в целом.
Читать...

DRAKE KRAKEN - мобильная станция

Drake Kraken - это капитальный корабль, на котором есть место для парковки и хранения нескольких средних кораблей (вплоть до размера Фрилансера) и транспортировки их по Вселенной.
Читать...

Citizencon 2948: создание космоса

 

Звездного времени суток, вам, граждане!

 

Сегодня мы пройдемся по этапам создания космического окружения. На самом деле космос достаточно скучен. Между Луной и Землёй сплошная пустота. Разработчики не хотят чтобы так было в игре.

Взгляните на созвездие Ориона. Это фото сделанно НАСА. Но оно не настоящее. НАСА для наглядности увеличили яркость и добавили цветов для выделения отдельных элементов. В реальности все это выглядит более невзрачно.

В игре СиАйДжи хотят сделать нечто похожее. Вот ранние прототипы газовых облаков. Команда опробовала их разные параметры. Это сделано благодаря технологии объемного рендеринга.

Постройка объемных данных сама по себе сложна. Разработчики планируют для их создания использовать технологии, которые применяются в киноиндустрии. В них по сути можно обрабатывать все что угодно. К примеру, симуляцию воды. СиАйДжи создают объемные данные и переводим их в формат open vdb. Такой же формат используется при работе в киноиндустрии. Далее начинается внедрение в движок и первоначальный рендеринг в оффлайн, состоящий из симуляции облаков и добавления слоев с помехами. Здесь проблема в потребляемых ресурсах. Разработчики решают ее разделением зоны на куски по 30-40 км. Далее идет процесс добавления освещения и добавления дополнительных визуальных эффектов, о которых поговорим позже. Так как сперва расскажем о самой имплементации в игру.

Объект на экране это единое целое. Он простирается на 30 км. Почти все время, при путешествии вы будете находиться в нем. Это воксели, а если проще - объемные пиксели. Здесь их миллионы.

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

По сути самая главная фишка газового объекта - это полупрозрачность. В остальном такой объект не отличается от других в игре. Чтобы построить картинку в такой среде СиАйДжи рисуют линию в которой на определенных шагах добавляются зрительные эффекты в зависимости от строения газового объекта. Проходя через эти шаги, картинка наслаивается и в итоге мы видим готовое изображение. На скрине не видно света так как он не добавлен.

 

Поговорим об освещении

Чтобы узнать сколько света должно быть в определенной точке нам нужно узнать следующее:

  • Сколько газа находится в этой точке.
  • Сколько света пробьется через газ и попадет в камеру игрока.

Тут используется просчет отражений света как от объемного твердого полупрозрачного тела.

Вот работа этих функций в действии.

Справа и слева источники освещения расположены за и перед игроком. Чтобы добиться хороших результатов по облегчению нагрузки разработчики создают низкополигональную карту расчета освещения.

Далее добавляются тени. Еще одна проблема в облаке - нет 100% перекрытия тенью. Тень может перекрывать объект с любой интенсивности от 0 до 99%.

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

Есть несколько проблем в восприятии облаков. С их большим объемом они кажутся пустыми и скучными из-за потери ощущения скорости и направления. Так же такие локации не выглядят достаточно опасными.

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

Для того чтобы не потеряться внутри облака, будет реализовано движение частиц. И если потерявшийся остановиться, то сможете сориентироваться по направлению движения потока частиц. Для создания опасности СиАйДжи добавляют молнии и электро-магнитные аномалии.

Эффект помех можно создать на любых дисплеях в игре. Чем сильнее помехи, тем ближе вы к центру аномалии.

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

Молнии ключевой момент визуальной составляющей эффектов облаков. Ранее разработчики не имели такого контроля над молнией. Они могли просто установить ее в определенную точку и все. Сейчас же СиАйДжи обросли различными возможностями кастомизации молнии вплоть до рандомной генерации маршрута построения. Также было создано такое игровое явление как проводимость. В зависимости от проводимости объекта есть шанс поражения или не поражения его молнией.

Как и в остальных случаях следует максимально облегчить нагрузку от эффекта молнии на компьютер. Итого - разработчики разделили молнию на точки. Участки между точками отданы видеокарте для просчета молнии между ними. Фишка обработки GPU в том, что можно динамично модернизировать эффекты. Это пример изменения различных параметров.

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

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

 

На сегодня все, спасибо, что были с нами!




Отзывы пользователей


Молнии впечатляют, как и собственно сама туманность. 

Поделиться комментарием


Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×