NASA использует Unreal Engine 4 для создания виртуального симулятора Марса

Оглавление (нажмите, чтобы открыть):

Виртуальный симулятор Марса Unreal Engine 4

Слышал такую информацию, что NASA для создания симулятора Марса использует Unreal Engine 4. Они хотят высадить человека на этой планете, вот и ведутся разработки, интересно, что они нашли в этом игровом движке?

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

Интересная новость, тем более понравится обладателям очков виртуальной реальности, ведь с их помощью можно на себе испробовать исследование Марса. Поначалу это се изготавливалось для Oculus Rift. Но включилась поддержка других виртуальных устройств.

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

NASA использует технологию смешанной реальности для тренировки астронавтов

Космическое агентство NASA никогда не избегало использования любых современных технологий для тренировки своих астронавтов. Даже если речь идёт о чём-то близком к видеоиграм. Не так давно стало известно, что в рамках проекта Spotlight американские астронавты обучаются с использованием технологии смешанной реальности, когда виртуальный и реальный мир как бы дополняют друг друга и обеспечивают максимальный реализм во время тренировки. Причём работает космический симулятор на основе графического движка Unreal Engine 4.

Чтобы воплотить проект в жизнь, NASA заключило договор со знаменитой студией Epic Games , которой принадлежит движок Unreal Engine. Начать было решено с создания симулятора Международной космической станции (МКС), причём помимо её виртуальной модели в одном из ангаров агентства была возведена полноразмерная декорация, которая являлась физической основой того, что будущие астронавты будут чувствовать своими руками. Для того чтобы воссоздать эффект микрогравитации, в ангаре создали хитрую систему из автоматизированного крана и тросов, благодаря которым человек может парить над поверхностью. При помощи всё той же смешанной реальности здесь же тренируют операторов луноходов и марсоходов .

В США для того, чтобы стать астронавтом, кандидат должен провести около двух лет в разного рода тренировках, включающих в том числе симуляцию микрогравитации в огромном бассейне, а также многочисленные теоретические занятия. Будущие астронавты должны научиться идеально ориентироваться в пространстве, в котором им предстоит жить и работать. Кроме того, необходимо пройти углубленный курс медицинской помощи, который в случае чего поможет спасти жизнь коллегам.

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

NASA создает симулятор МКС на движке Unreal Engine

В учебном центре NASA находятся полноразмерный макет орбитального шаттла и несколько фрагментов отдельных модулей МКС. Для тренировок астронавтов в открытом космосе на текущий момент используется Neutral Buoyancy Laboratory. Это своего рода плавучая лаборатория, гигантский бассейн объемом 23,4 млн литров воды. Однако возможности всех этих физических объектов ограничены. Использование смешанной реальности наряду с имеющимися макетами, позволит астронавтам лучше отточить свои навыки в условиях симулятора.

Любопытно, что основной конкурент Epic Games, компания Unity, также работала с NASA. Обе компании разрабатывают игровые движки, которые используются сторонними производителями для игр и приложений виртуальной реальности. В свою очередь Epic Games со своим движком Unreal Engine может похвастаться сотрудничеством с крупнейшими компаниями: BMW, McLaren, Ikea и Lockheed Martin.

Судя по видео, опубликованному в этом месяце, совместный проект Unreal Engine и NASA с использованием системы смешанной реальности демонстрирует имитацию пребывания на МКС. Астронавты могут использовать различные объекты и приборы на борту станции, включая инструменты для ремонтных работ. Тренажер отличается от ранее выпущенного решения Mission:ISS для очков виртуальной реальности Oculus Rift.

Первое руководство по созданию виртуальной реальности с использованием движка Unreal Engine 4 на русском языке

Книга известного разработчика игр и инструктора по виртуальной реальности Митча Маккефри — «Unreal® Engine VR для разработчиков» — наконец-то выходит в России. Вы сможете создавать потрясающие приложения на любых устройствах, совместимых с платформой Unreal Engine 4, даже без серьезной подготовки.

«Я покажу, как реализовать наиболее распространенные задачи, с которыми сталкиваются начинающие разработчики VR, и при этом объясню математику и логику того, что происходит, когда мы делаем эти вещи. Книга написана в Blueprints, поэтому специального опыта программирования не требуется. Где только возможно, я предлагаю готовые модули и шаблоны, чтобы вы могли использовать их в своих проектах». — Митч Маккефри.

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

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

  • Разбираться в основных концепциях и терминологии VR
  • Настраивать VR-шлемы любого типа
  • Создавать базовые проекты под Oculus Rift, HTC Vive, Gear VR, PSVR и другие платформы
  • Распознавать и управлять различиями между сидячим и стоячим VR-опытом
  • Настраивать взаимодействие трассировки и телепортацию
  • Работать с UMG и 2D UI
  • Реализовывать инверсную кинематику головы и рук персонажа
  • Создавать интерактивные объекты, кнопки, рычаги
  • Перемещаться в VR без «тренажерной болезни»
  • Оптимизировать VR-приложения, работать с VR-редактором

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

«Я очень рад, что Митч нашел время, чтобы перенести все свои знания и опыт работы с Unreal Engine и Virtual Reality в руководство “Unreal® Engine VR для разработчиков”. Он обладает уникальной квалификацией, чтобы поделиться этой книгой со всем миром». — Луис Катальди, Unreal Engine Education, Epic Games, Inc.

Об авторе:

Митч Маккефри — независимый разработчик игр и создатель многих общественных ресурсов для разработчиков виртуальной реальности на Unreal Engine. Он обучает лучшим практикам разработки игр на своем YouTube-канале Micth’s VR Lab, где демонстрируются примеры, предложенные членами сообщества VR-разработчиков.

SavePearlHarbor

Ещё одна копия хабора

НАСА создаст Марс в виртуальной реальности в Unreal Engine 4

Национальное управление по воздухоплаванию и исследованию космического пространства создаст видеоигру на базе игрового движка Unreal Engine 4 от компании Epic Games. Игра будет носить название Mars 2030 Experience. Её отличительной деталью будет поддержка виртуальной реальности в шлемах Oculus Rift и других.

НАСА всерьёз работает над высадкой на Марс человека и возвращения экипажа на Землю. Рассматривается дата в тридцатых годах этого века. Сама программа испытывает разнообразные проблемы: запуск сверхтяжёлой ракеты SLS с кораблём Orion ещё не осуществлён, проект корабля-станции для перелёта не разработан. По сути, внятной программы нет, ведутся бессистемные исследования с заделом на будущее. По крайней мере так считает Конгресс США, который выделяет деньги.

Сама задача требует коллосальных усилий: необходимо создать корабль для долгих месяцев полёта к красной планете, аппарат для высадки на Марс и взлёта с его поверхности, а также систему запуска подобных грузов на опорную орбиту Земли. Существующие космические станции связаны с постоянным доснабжением ресурсами и оборудованием, чего марсианский корабль позволить себе не может. Необходимо понять, как безопасно посадить на Марс несколько тонн корабля с людьми. Наконец, нужный носитель для запуска всех систем с Земли получится огромным. Это и многое другое ещё предстоит создать, если мы хотим, чтобы нога человека ступила на Марсе.

Тем не менее, работы ведутся. В том числе НАСА нужно заручиться поддержкой обычных людей. И это действительно важно. Сегодня почти любой понаслышке знакомый с историей освоения космоса сможет назвать имя первого человека на Луне. Но всего год спустя высадки в 1969 американцы утеряли интерес к полётам в космос. В 1970 году опрос показал, что 70 % филадельфийцев не смогли назвать автора легендарных слов про шаг для человечества. Другие телефонные опросы выявили ещё более глубокое незнание. Высадка на Луну оказалась инструментом гонки с СССР, и после достижения цели общественность быстро потеряла интерес к покорению космоса. Для высадки на Марс нужны совсем другие деньги — по некоторым оценкам, около полутриллиона долларов. Поэтому так важно заразить идеей полёта к другой планете как можно больше людей.

НАСА осваивает многие способы донести свои идеи. Как и некоторые другие американские госструктуры, космическое агенство прибегает к помощи видеоигр. Это логично. Если полёт действительно состоится в тридцатых годах, то будущие покорители Марса ещё молоды — они где угодно в системе образования: от детского сада до последних классов школы.

Были не очень удачные попытки игростроя. К примеру, это Starlite: Astronaut Rescue, которая получила негативные отзывы. Были и неплохие. В 2010 году подразделение НАСА в сотрудничестве с рядом организаций выпустило игру Moonbase Alpha, основанную на движке Unreal Engine 3. Разработке помогала Army Game Studio, в прошлом создавшая шутер America’s Army. Moonbase Alpha ставила целью создание реалистичной симуляции устранения аварии в колонии на естественном спутнике Земли. Получившаяся игра получила смешанные отзывы, пусть это и сглаживалось бесплатностью продукта. Игрокам же Moonbase Alpha запомнилась встроенным вариантом голосового синтезатора Fonix DECtalk, который было принято использовать не по назначению и попросту спамить.

Новая игра Mars 2030 Experience будет создаваться специалистами из НАСА, лаборатории космических систем Массачусетского технологического института (МТИ), компанией Fusion Media и разработчиками из ныне распущенной студии Irrational Games. Целью является создание кроссплатформенной игры, которая будет поддерживать виртуальную реальность в множестве шлемов. Среди перечисленных есть основные из уже существующих: Oculus Rift, Google Cardboard и Samsung Gear VR. Также есть планы по выходу на ещё не вышедшие: Sony PlayStation VR и HTC Vive. В том числе игра будет доступна на Android и iPhone, её будут стримить на Twitch. Кроссплатформенности поможет движок Unreal Engine 4.

Мастер Йода рекомендует:  Какой объем интернет-трафика отслеживает АНБ

Разработка уже ведётся. К примеру, уже в первый день удалось собрать данные проекта телескопа-спутника Марса HiRISE Аризонского университета и запустить группу игроков-тестеров на прогулку по Марсу. Пост в блоге Unreal Engine делает акцент на технологиях движка, которые разработчики высоко оценили: это кроссплатформенность с широким набором целевых систем разной производительности и быстрота процесса создания игрового мира.

В целом о Mars 2030 Experience пока известно мало, нет даже больших скриншотов. Указывается, что сюжет будет состоять из нескольких мини-миссий как в жилых блоках, так и на самой поверхности Марса. Больше деталей о игре будет доступно на фестивале South by Southwest 2020, который будет проходить с 11 по 20 марта этого года.

Создание реалистичных виртуальных ландшафтов

3D-художник Алиреза Хаджехали – настоящий мастер ландшафтного дизайна. Он создал бесчисленное количество виртуальных локаций, полностью играбельных в UE4. В этом интервью она описал свой рабочий процесс и рассказал о том, как WorldMachine и Megascans помогают ему конструировать большие и реалистичные цифровые миры.

Это не туториал, а интервью, которое поможет представить рабочий процесс. Обучающая статья заняла бы более десяти страниц.

С оригинальным материалом можно ознакомиться тут.

Введение

Всем привет! Меня зовут Алиреза Хаджехали, и я здорово подсел на реализм. В данный момент я получаю степень бакалавра по специальности «Программирование», и мой выпуск должен состояться примерно через 8 месяцев. Что касается 3D-графики, то здесь я самоучка, и эта область знаний для меня – настоящая страсть. Именно она и помогает мне двигаться вперед.

Все началось с того, когда я обнаружил, что у моего Crysis 1 есть редактор, который можно открыть двойным кликом мышки и тут же стать игровым разработчиком. «Никогда не говорите ребенку, что посадить пару деревьев – это непосильная задача!» Вскоре вышел CryENGINE 3 Free SDK, после чего моей основной деятельностью стали создание сцен и помощь маленьким инди-проектам, плюс я несколько лет проводил кучу свободного времени за бесплатной работой и в один прекрасный момент смог, наконец, представить себя как художника окружения с солидным портфолио.

Из того, что я делал недавно, можно выделить LawBreakers, где я делал природные фоны для уровней. Работая над Chronicles of Elyria, я был в позиции универсала, то есть создавал и игровые уровни, и рекламные шоты. Кроме того, я делал ландшафт в Squad и сейчас работаю с друзьями над Our Ghosts of War, это личный проект.

Я думаю, каждый художник окружения мечтал заниматься этим с самого детства. К примеру, когда мне было 4-5 лет, то я всегда, смотря фильмы, думал о том, как бы я оформил декорации, доверь они это дело мне. Мне всегда нравилось комбинировать вещи таким образом, чтобы они отлично смотрелись друг с другом – именно это я и делал в CryENGINE 2 в свои моддеррские деньки.

Переход от маленьких сцен к обширным пространствам произошел, когда я впервые увидел Battlefield 3. Я был очень впечатлен этими огромными пейзажами и особенно – работой Эндрю Гамильтона. Он собаку съел на всем, что касается открытых локаций, поэтому в его работе все детали изумительны и находятся в полной гармонии друг с другом. В общем-то, в этом и есть секрет хороших открытых ландшафтов. «Не нужно недооценивать что-либо, исходя из размера. Даже маленькая галька на земле так же важна, как и огромные горы!» На тот момент я по-прежнему пользовался CryENGINE 3, но из-за недостатка инструментов для создания больших открытых пространств я таки бросил его и перешел на UE 4.0.1.

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

Процесс создания

Работа над каждой сценой начинается с идеи, родившейся в голове, или с картинки-референса. К примеру, недавно я создал кусочек Исландии, и этот проект начался с того, что я случайно увидел классные фотки полуострова Рейкьянес. Локация, которую я сделал после, была вдохновлена сценой из фильма «Безумный Макс: Дорога Ярости».

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

Генерация ландшафта

Как правило, для генерации карты высот я использую WM2 (World Machine 2). Далее беру карты высот и несколько масок, с их помощью делая карту веса (splat map). Использование карты веса для ландшафтов – это старый, но по-прежнему самый лучший метод. Я также экспортирую карту высот в сетку, а затем использую эту сетку для дизайна фонов локации. Для этого я сначала упрощаю сетку, а затем запекаю высокополигональную модель в низкополигональную, чтобы у меня был низкополигональный ландшафт и карта нормалей, которые можно разместить за пределами локации и тем самым создать видимость, что локация больше, чем на самом деле. Вот две картинки, показывающие разницу с фоновыми моделями и без них:

Затем я использую 3ds Max и ZBrush для создания вспомогательных объектов для окружения. К примеру, камни. Чтобы «распластать» камни по UV-плоскости, я использую программу Unfold3D. Она, к слову, очень быстрая. Затем я делаю плиточные текстуры в UE4 при помощи нода Object Radius, чтобы плотность текселей оставалась одинаковой, как бы я не менял масштаб камня.

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

Дополнительная работа в UE4

Самое интересное начинается после того, как я импортирую в UE4 карту высот и начинаю играться с материалами, функциями, освещением, атмосферой и т.д. Я делаю кучу поправок, постоянно все меняя, пока не поймаю настроение локации.

Я использую, как правило, 4-6 материалов на один пейзаж, и конечный результат, который можно видеть на картинках, как правило, требует 3 Гб памяти RAM (4K-текстуры) и бегает с частотой от 60 до 100 кадров в секунду на моей 970, что неплохо для мира площадью в 64 квадратных километра, с динамическим глобальным освещением (при помощи LPV) и включенной тесселляцией (от англ. «tessellation»; это технология, разбивающая полигоны на мелкие части, которые затем можно использовать для улучшения качества картинки), меняющейся в зависимости от расстояния.

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

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

Геометрия

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

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

К сожалению, при создании карты высот в WM2 трудно уловить чувство масштаба, и эта программа больше не обновляется. Поэтому я просто импортирую карту высот в UE4 и немного бегаю туда-сюда, чтобы понять, правильный ли получился масштаб. Потом вы немного привыкаете к этому масштабу и далее просто доверяете своему выбору.

Текстуры

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

Теперь к важному. Вы об этом не спрашивали, но, как мне кажется, этим стоит поделиться. Неважно, Megascans это или нет, но когда вы импортируете текстуру в движок, она начинает выглядеть посредственно. В библиотеке Megascans поверхности отрендерены в миллионы полигонов. Мельчайшая детализация, все в 3D, поддержка теней и генерация AO. Но совсем другое дело, когда вы импортируете эти материалы в игровой движок. В игровых движках поверхности выполнены с небольшим количеством полигонов – как правило, 2 треугольника на один квадратный метр. Но есть способы это обойти. Среди художников окружения есть расхожее мнение, что на PBR-движке металлическим материалам не нужна карта отражений. Также многие ошибочно думают, что на карте альбедо не должно быть теней. Согласиться с этим категорически не могу.

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

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

Мастер Йода рекомендует:  Ember С чего начать Javascript

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

Я не использую для этого отдельную карту отражений, т.к. это лишняя трата вычислительных ресурсов. Но я могу задействовать карту отражений на карте альбедо, добавив нод Clamp (он ограничивает заданное значение в пределах определенного диапазона) с минимальным значением «0» и максимальным «0,5» («0,5» – это отражение на большинстве неметаллических поверхностей). Чтобы добавить вариативности на получившуюся карту отражений и сделать поверхность более интересной, мы можем пропустить ее через нод Power (он берет заданное значение и умножает его на себя определенное количество раз), чтобы сделать более контрастной перед тем, как за работу примется нод Clamp. Это позволяет сделать поверхность более правдоподобной, поскольку теперь дыры и трещины не отражают свет так же, как и плоская поверхность.

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

А вот то же самое, но если смотреть только через буфер отражений.

Здесь также можно было бы рассказать об эффекте Френеля, но поскольку этот текст и так превращается в «Войну и мир», то я, пожалуй, воздержусь. Может быть, в следующий раз.

Оптимизация

Способов оптимизировать окружение есть великое множество, и некоторые из них я использую для своих пейзажей. Думаю, самый лучший метод – это укладка в каналы (от англ. «channel packing»; это техника, при которой каналы R, G и B изображения используются для хранения различных данных), он помогает сберечь ресурсы памяти и уменьшить сложность шейдеров. То есть вы можете уложить три монохромные карты альбедо в одну RGB-текстуру, а затем раскрасить каждый канал в редакторе материалов. Я, правда, этим методом не пользуюсь, т.к. стараюсь сохранить оригинальную цветовую информацию. Но что я делаю, так это помещаю карту смещения (displacement map) в синий канал карты нормалей и выставляю тип компрессии на «Masks». Затем я простой математикой реконструирую синий канал карты нормалей в редакторе материалов, что позволяет мне не использовать отдельную карту смещения. Выставление типа компрессии на «Masks» снижает использование памяти примерно на 50%. Я также, бывает, извлекаю карту неровностей из карты альбедо и помещаю ее в альфа-канал карты нормалей, но редко – лишь в случаях, когда нужна уникальная карта неровностей.

Что касается сеток для камней, то я, как правило, не экономлю треугольники, и стараюсь придерживаться уровня примерно в 30 тысяч треугольников на камень – это очень помогает погружению, если игрок вдруг окажется рядом с таким камнем. Кроме того, я использую, как правило, 4 или 5 уровней детализации – чтобы при перемещении игрока объект не дергался. Кроме того, я стараюсь максимально снизить количество треугольников на уровень детализации, при этом сохраняя форму, поэтому у меня не получается так, что на 0-ом уровне детализации я вижу камень, а на 5-ом – базуку.

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

Освещение

Прощу прощения, но этот раздел обещает быть большим. Системам для работы с PBR-материалами нужно физическое освещение. Я имею в виду, что мы должны знать, сколько именно света мы проливаем на наши материалы, иначе смысл в использовании PBR для создания реалистичных ландшафтов, по сути, попросту теряется.

К сожалению, свечение от солнца в UE4 не измеряется в единицах измерения вроде люксов, поэтому мы, в сущности, не знаем, сколько света излучаем на создаваемый мир. Впрочем, есть несколько способов, позволяющих рассчитать эту величину, но результат вряд ли будет таким же удовлетворительным, как с физическим светом. Поэтому я поделюсь с вами собственными находками. Если у вас облачная погода, то вам нужна, собственно, облачная небесная сфера и параметр «Skylight Intensity», выставленный «1». Для солнечно-облачного денька параметр «Sun Intensity» лучше выставить на «3.14», а «Skylight Intensity» имеет смысл немного снизить – для поддержания хорошего контраста между светом и тенью. Если у вас меньше облаков и больше солнца, то для «Sun Intensity» подойдет значение «4» или «5». Для выжженных пустынь с беспощадным солнцем параметр «Sun Intensity» можно выставить на «7».

Но я очень не рекомендую идти выше «7», поскольку материалы начинают выглядеть хуже. Люди часто ставят «10» или даже «12», но это ошибка. В итоге либо ваши текстуры будут недостаточно освещены (они будут темнее, чем должны), либо вы станете жертвой тональной компрессии (от англ. «tone mapping»; это конвертация цветового диапазона из HDR в более «узкий» LDR). В UE4 эта функция ограничивает белый цвет, поэтому поначалу у вас получается очень блеклое изображение, и немного компенсировать это можно, лишь сильно подняв параметр «Sun Intensity». Но в итоге от такого света материалы теряют свою оригинальную детализацию. Чтобы справиться с этим, но не отключая тональную компрессию (поскольку вместе с ней отключится и куча других функций), я создал специальную таблицу – если загрузить ее в Post Processing Volume, это вернет белые цвета обратно к оригинальным позициям, а вы сможете пользоваться полным диапазоном яркости (0-255).

Разобравшись с белыми цветами, можно попробовать увеличить контраст картинки, чтобы сделать ее более интересной, правда из-за этого может пострадать реалистичность. Поэтому, если вы больше склоняетесь к «больше реализма!», чем к «даешь интересно!», то значение для контраста лучше оставить по умолчанию или около того.

Совет

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

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

Следите за тем, чтобы ваши материалы выглядели как надо. Не бойтесь менять материалы (особенно цвета), пока не достигнете полной гармонии.

Делая окружение для открытых локаций, станьте первым, кто по нему пройдется, станьте первым, кто будет судить, подходит ли эта локация хотя бы для 2-3 разных типов геймплея или нет. Будьте первым, кто позаботится о производительности и оптимизации. Упростите работу другим.

Обращайте внимание на мелкую детализацию, не делайте исключений. Камни, трава, галька, горы – не забывайте ни о чем. Не перескакивайте с одного объекта на другой, пока хорошенько его не доделаете. Один хорошо сделанный световой меч заслуживает больше уважения, чем 10 посредственных локаций.

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

Не бойтесь делать по несколько проходов. Делайте одну версию, потом еще и еще, пока не поймете, что да – это оно! И учитесь у тех, кто критикует вашу работу.

Если у вас есть какие-то вопросы, можете смело писать мне. Но заранее извиняюсь, если с ответом будут задержки. Бывает, я работаю по 16 часов подряд, забывая даже почесать макушку.

Представительства сайта «80 level» в Twitter и VK.

NASA использовала Oculus Rift для виртуального путешествия на Марс

Ученые лаборатории реактивного движения NASA из калифорнийского города Пасадена использовали Oculus Rift, чтобы дать возможность посетить Марс — виртуально, конечно.

Занимались этим специалисты из подразделения, изучающего машинно-человеческие интерфейсы (Human Interfaces Group). Они заказали комплект Oculus Rift одними из первых и, получив шлем виртуальной реальности, подключили его к панорамам, отснятым на поверхности Красной планеты аппаратом Curiosity.

Чтобы человек мог «перемещаться» между панорамами, к системе подключили контроллер Xbox. Но для полноценной «ходьбы» было решено заказать всенаправленный виртуальный тренажер Virtoux Omni. Кроме марсианской поверхности, ученые смоделировали и внутренности Международной космической станции, по которым теперь можно виртуально летать.

По мнению ученых, такая система может пригодиться для лучшего ориентирования в пространстве. «Вместо того чтобы смотреть на фотографию, исследователь сразу видит, например, слева или справа от аппарата находится камень, — сказал разработчик системы Виктор Луо. — Использовать это есть смысл для большего погружения и естественного восприятия». Но, по его мнению, для полноценного исследования Марса система пока не годится: она еще в очень ранней стадии разработки, и ее нужно дорабатывать.

NASA Is Using Unreal Engine 4 to Make Mars a Virtual Reality

Using Unreal Engine 4 to create VR experiences to simulate Mars, and add on to it in hours rather than weeks.

Join the DZone community and get the full member experience.

NASA is already planning the first manned space landing on Mars in the 2030s. But thanks to Epic Games’ Unreal Engine 4, anyone who owns a virtual reality headset will be able to explore the Red Planet in 2020.

NASA has teamed up with Fusion Media, MIT’s Space Systems Laboratory, and game developers from former studio Irrational Games to develop The Mars 2030 Experience for Oculus Rift, Google Cardboard, and Samsung Gear VR in 2020. The free cross-platform virtual reality experience will also expand to Sony PlayStation VR and HTC Vive, thanks to Unreal Engine 4.

Julian Reyes, virtual reality producer for Fusion, said Unreal Engine 4 has enabled the development team to start building this experience with the highest regard to visual fidelity.

“We want people to truly feel like they are on Mars, and the engine is perfect to make this happen in VR,” Reyes said. “We’ve worked closely with Epic Games developers before and believe this engine is revolutionizing real-time graphics.”

Мастер Йода рекомендует:  Как работает беспилотный транспорт

Justin Sonnekalb, who was a technical designer at Irrational Games, said Unreal Engine 4’s visual programming for both materials and gameplay logic enabled the team to easily add new content and bring new systems online in a matter of hours rather than days or weeks.

“At the end of the first day of development we had a shared project environment with players able to walk and drive around terrain based on real Martian altimetry data from the University of Arizona’s HiRISE project,” Sonnekalb said. “Being able to get the fundamentals down so quickly is crucial for having the time and space to really bring Mars to life and create a truly immersive experience.”

Sonnekalb said Unreal provides numerous tools in its material editor and elsewhere that allowed the team to target multiple performance tiers of lighting quality and different shader models, ranging from OpenGL ES 2 on mobile to DirectX 11 on the most powerful gaming desktops, and previewing each at any time with just a couple clicks.

“The addition of the seamless Mobile Previewer in 4.8 was incredibly helpful for developers targeting a wide range of hardware profiles,” Sonnekalb said. “Early development generally emphasizes the higher-end as we work to establish the visual identity of a game, but these tools make it very easy to ensure you’re not boxing yourself into a corner on lower-performing hardware in the process.”

This partnership is the result of a Space Act Agreement between NASA and Fusion, in which the space agency will share the results of ongoing studies on space transportation systems, concepts of operations, and human health and performance.

Although more details will be announced during a panel at South by Southwest 2020, the virtual reality experience will bring to life a series of mini-missions that occur within the Mars habitat as well as on the planet’s surface. Players will be able to walk on the Red Planet as well as drive the Mars Rover.

Reyes said the virtual reality project began when a few game developers inside of Fusion began experimenting with the medium last year.

“It’s evolved, and we see it as something very exciting to use to tell stories in ways that have not been experienced before,” Reyes said. “VR is uncharted territory and it’s part of Fusion’s DNA to tread through it.”

According to Erin Mahoney, senior communications manager at NASA, space exploration has always been considered an experience for the elite few in the astronaut corps.

“An important part of NASA’s Journey to Mars is the work we are doing to make space more accessible to individuals and non-governmental entities,” Mahoney said. “With more aerospace companies making human spaceflight part of their core business models, we expect that spaceflight will be an option for more people in the future than it is today. Hopefully, individual immersive VR experiences in space will bring the concepts closer to reality for those who truly enjoy virtual life off of Earth.”

Mahoney said advances in virtual reality, which are quickly becoming the standard in the video game industry, also benefits NASA’s future.

“Our Mars astronauts are likely in kindergarten through ninth grade right now, so the ability to share with that generation the work that we are doing now to send them to Mars is a tremendous opportunity,” Mahoney said. “We hope they will learn and be inspired by all VR experiences that allow them to be immersed in space missions.”

The multiplatform Mars 2030 experience will also connect with a large audience through a Fusion television special, as well as a Twitch stream. It also will be available for iPhone and Android on iTunes and Google Play.

The plan is for additional NASA virtual reality experiences to come to life in the future, powered by Unreal Engine 4.

Установка и тестирование Актера для виртуальных клавиатурных интерактивов в Unreal Engine 4

В этом последнем разделе мы добавляем наши Widget Blueprints в качестве Виджет Компонентов к нашим актерам и определяем, что происходит, когда игрок нажимает кнопку Ввода, проверяя, совпадает ли введенный текст с нашим GoalText. Имея все в наличии, мы проводим тестирование, чтобы увидеть конечный результат, который выводит Success на экран, если код правильный, или Wrong Code, если код неправильный.

  1. Откройте KeypadDisplay Blueprint и добавьте Widget компонент с классом, установленным на KeypadDisplayWB и Draw at Desired Size.

Рисование в нужном размере – это быстрый способ заставить цель рендеринга автоматически соответствовать желаемому размеру в Widget Blueprint.

2. Откройте Keypad Blueprint и добавьте компонент Widget с классом, установленным в KeypadWB и Draw at Desired Size.

3. Снимите флажок Window Focusable для этого Виджет Компонента.

Мы не хотим, чтобы этот компонент отвлекал внимание от виджета Keypad Display, поэтому его необходимо отключить.

4. Также внутри клавиатуры добавьте компонент WidgetInteraction с параметром Enable Hit Testing, установленным на значение false.

Мы добавляем этот компонент WidgetInteraction, чтобы нам не нужно было получать ссылку на компонент WidgetInteraction в персонаже игрока, и мы отключаем Hit Testing (тестирование попаданий), поскольку не хотим, чтобы он генерировал какие-либо эффекты при наведении. Компонентам WidgetInteraction по умолчанию присваивается Virtual User Index 0, когда они создаются, и все они взаимодействуют с использованием идентификатора индекса виртуального пользователя. Поскольку компонент WidgetInteraction в персонаже игрока также использует Virtual User Index 0, это то же самое, что получить ссылку на него.

5. В Графике Клавиатуры отключите Event Begin Play, возьмите компонент Widget и подключите его и Get User Widget Object к Cast to KeypadWB.

6. Отключите вывод As Keypad WB, установите Widget Interaction и пройдите через компонент WidgetInteraction из Шага 4.

7. Также на выводе As Keypad WB вызовите Assign Enter Pressed, который создаст Пользовательское Событие Enter Pressed.

Теперь, когда мы нажимаем кнопку Ввода, вызывается это пользовательское событие, которое мы можем использовать для проверки правильности введенного кода.

8. Создайте Переменную Актера типа для Keypad Display с именем TargetDisplay и установите для нее значение Editable.

9. Создайте Переменную типа Text с именем GoalText, затем Скомпилируйте и установите значение для Default Value на 1212.

10. Удерживайте Ctrl и перетащите в TargetDisplay для получения Виджета и User Widget Object, затем Cast to KeypadDisplayWB.

11. Отключите пин As Keypad Display WB, возьмите Editable Text Box и GetText(Text Box) для проверки соответствия Goal Text.

12. Добавьте Ветви с двумя Print Strings, где нужно отключить True (используйте Success) и False (используйте Wrong Code).

13. Перетащите Keypad и KeypadDisplay Blueprints на уровень и поверните или расположите их, как вам нужно.

14. На панели Details для Объекта Keyboard установите для переменной Target Display значение KeypadDisplay на уровне.

15. Воспроизведите на уровне.

Конечный результат

Подойдите к дисплею клавиатуры и щелкните правой кнопкой мышки, чтобы сфокусироваться на нем. Вы можете посмотреть на кнопки и щелкнуть по ним правой кнопкой мышки, чтобы выполнить команду Send Key Char и передать значение на дисплей. Мы используем правую кнопку мышки для взаимодействия с виджетами на уровне, но вы можете поменять ее местами, чтобы использовать нажатия кнопок геймпада или контроллера движения.

Несмотря на то, что этот пример выводит на экран только лишь, введен правильный код или нет, вы можете вместо этого запустить какое-либо событие, которое открывает дверь, порождает врага или любое другое событие, связанное с геймплеем!

Первое руководство по созданию виртуальной реальности с использованием движка UnrealEngine 4 на русском языке

Первое руководство по созданию виртуальной реальности с использованием движка UnrealEngine 4 на русском языке

Издательство «Бомбора»

Книга известного разработчика игр и инструктора по виртуальной реальности МитчаМаккефри — «Unreal® Engine VR для разработчиков» — наконец-то выходит в России. Вы сможете создавать потрясающие приложения на любых устройствах, совместимых с платформой UnrealEngine 4, даже без серьезной подготовки.

«Я покажу, как реализовать наиболее распространенные задачи, с которыми сталкиваются начинающие разработчики VR, и при этом объясню математику и логику того, что происходит, когда мы делаем эти вещи. Книга написана в Blueprints, поэтому специального опыта программирования не требуется. Где только возможно, я предлагаю готовые модули и шаблоны, чтобы вы могли использовать их в своих проектах». — МитчМаккефри.

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

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

●Разбираться в основных концепциях и терминологии VR

●Настраивать VR-шлемы любого типа

●Создавать базовые проекты под OculusRift, HTC Vive, Gear VR, PSVR и другие платформы

●Распознавать и управлять различиями между сидячим и стоячим VR-опытом

●Настраивать взаимодействие трассировки и телепортацию

●Работать с UMG и 2D UI

●Реализовывать инверсную кинематику головы и рук персонажа

●Создавать интерактивные объекты, кнопки, рычаги

●Перемещаться в VR без «тренажерной болезни»

●Оптимизировать VR-приложения, работать с VR-редактором

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

«Я очень рад, что Митч нашел время, чтобы перенести все свои знания и опыт работы с UnrealEngine и VirtualReality в руководство “Unreal® Engine VR для разработчиков”. Он обладает уникальной квалификацией, чтобы поделиться этой книгой со всем миром». — Луис Катальди, UnrealEngineEducation, EpicGames, Inc.

Об авторе:

МитчМаккефри — независимый разработчик игр и создатель многих общественных ресурсов для разработчиков виртуальной реальности на UnrealEngine. Он обучает лучшим практикам разработки игр на своем YouTube-канале Micth’s VR Lab, где демонстрируются примеры, предложенные членами сообщества VR-разработчиков. Адрес его сайта

Добавить комментарий