Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Введение

Сегодня расскажу про курс создания игры "Дартс", который начинал еще 2 недели назад, но пришлось откатиться на более базовые курсы. Курс называется "Oculus VR Production for Unreal Engine", он был разработан Oculus и Epic Games. По какой-то причине он был удален с обучающих материалов Unreal Engine.

Есть темы, что люди ищут этот курс, но получают только альтернативу, которая не даст возможность создать полноценную мини-игру:

Приложу обсуждения по проблемам по прохождению этого курса:

Курс рассчитан для Unreal Engine 4.24-4.25, по этому, мне пришлось сначала изучить различие систем управления персонажем между UE4 и UE5, чтобы адаптировать этот курс под Unreal Engine 5.3.2. Если вы будете учиться на Unreal Engine 4, то у вас проблем не возникнет.

Что лучше сделать заранее?

Для начала получите права разработчика, например, по инструкции в этом видео от автора ВИРТУАЛЬНЫЙ СЛОН:

Начинаем прохождение курса "Oculus VR Production for Unreal Engine" или создаем свой Дартс

Курс был перезалит автором RGB на youtube, надеюсь курс не удалят:

Исходные файлы ассетов для курса:

Готовая игра Дартс из курса:

В данный момент (29.06.2024), я прошел 15 видеоуроков из этого плейлиста. Ниже я опишу проблемы, с которыми я столкнулся, некоторые из них я смог решить. Мне пришлось так же мигрировать весь проект в Unreal Engine 5:

  • Скачал Unreal Engine 4.25.4
  • Запустил проект https://www.unrealengine.com/marketplace/en-US/product/oculus-vr-assets-only в UE4
  • Выделил все файлы проекта
  • Нажал мигрировать в папку Contents моего основного проекта Дартс Unreal Engine 5
  • Открыл свой проект Дартс Unreal Engine 5

Во время открытия проекта UE4 выпадает несколько ошибок, но если на все нажать "ок" то проект всё равно запустится.

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

1 проблема. Oculus Entitlment Check возвращает failed. (5-е видео из плейлиста) (решено)

Для проверки прав на приложение мы прописываем в конфиге (\путь к вашему проекту\Config\DefaultEngile.ini) наш OculusAppId и RiftAppId

Берем AppId из дашборда разработчика>настройки приложения>API:

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

[OnlineSubsystem]

DefaultPlatformService=Oculus

[OnlineSubsystemOculus]

bEnabled=true

OculusAppId="12***********67"

RiftAppId="12************67"

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Выдайте права вашим приложениям!

Когда вы создаете свои приложения для AppLab и OculusRift. Вам необходимо:

  • Верифицировать себя как админа;
  • Получить права на UserId и UserProfile в приложении.

Получаем права админа

Переходим в дашборд разработчика oculus. https://developer.oculus.com/manage/

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Нажимаем "Начать подтверждение"

Я подтверждал с помощью загран. паспорта РФ и вводил свои настоящие данные. Страну указывал "Россия".

После заполнения анкеты админа, вы увидите подобное окно:

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

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

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Получаем права на UserId и UserProfile в приложении.

Вы уже создали два приложения Дартс (AppLab и OculusRift).

В каждом, необходимо зайти в My Apps>Edit Details(приложения)>Requirements>проверка использования данных

В каждом приложении необходимо запросить UserId и UserProfile. Обоснование запроса для этой информации можете списать с моего скриншота. Далее вам необходимо заполнить анкету:

  • резидент какой вы страны
  • кто будет обрабатывать эти данные (я ввел свою ФИО)
  • при каких условиях вы можете передать эти данные (вводим "только на законных основаниях")
Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.
Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Буквально за несколько часов вам одобрят ваш запрос.

Именно после этих шагов, я смог успешно пройти проверку приложения с помощью Verify Entitlement (5-е видео 4:10):

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Документация, которая мне помогла решить проверку прав (документация oculus не открывается без VPN):

2 проблема. Max Draw Distance для PointLight не работает. (9-е видео из плейлиста 13:20) (решено)

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Я выставляю Max Draw Distance в разные значения в Unreal Engine 5.3.2 делаю ребилд света и при отдалении от лампочки, она не отключается.

По факту, решилось переоткрытием проекта, не знаю что за чудеса случились.

3 проблема. Precomputed Visibility Volume не работает в UE5.3.2 (решено)

В 9-м видео, мы включаем Precomputed Visibility Volume, но в версии UE5.3.2 он не запускается.

Я добавил этот код в файл UE_5.3\Engine\Source\Runtime\Renderer\Private\SceneVisibility.cpp

```

if (ViewState){ SCOPE_CYCLE_COUNTER(STAT_DecompressPrecomputedOcclusion);View.PrecomputedVisibilityData = ViewState->GetPrecomputedVisibilityData(View, &Scene);}else{View.PrecomputedVisibilityData = nullptr;}

```

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Источник решения проблемы на форуме unreal engine:

Далее мы вводим в cmd:

r.VisualizeOccludedPrimitives 1

И получаем Предварительно рассчитанный объем видимости:

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

4 проблема. Появление нескольких персонажей при запуске VR сцены + не работает ввод действий в меню (решено)

Как я описывал в прошлой части статьи, Система управления была изменена на Character, чтобы я использовал своё собственное управление в Unreal Engine 5.

В 8-м уроке видео, мы настраиваем BP_PlayerStart, а так же, настраиваем свой GameMode_Darts, где мы определяем какой игрок находится на карте и определяем ему порядковый номер.

У меня в настройках был указан персонаж VRPawnDarts, а должен быть указан родительский персонаж BPP_Pawn_Darts.

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Так расположен мой BP_PlayerStart на карте

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Из-за этого у меня появлялось два персонажа

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

И именно по этой причине у меня перестали работать нажатия на кнопки в меню. Потому что было два экземпляра персонажа.

Перестало работать
Перестало работать

После того как я прописал Default Pawn Class - "BPP_Pawn_Darts" в настройки проекта>Maps & Modes, проблемы решились.

Должно так работать
Должно так работать

5 проблема. No Guardian found. Check Oculus App (не решено)

В 15-м видео (4:17), мы подключаем функцию Is Guardian Configured.

Но после всех проверок, у меня функция возвращает false.
Я не использую MetaXR Simulator. Я использую Project Settings>MetaXR>XR API > Epic Native OpenXR with Oculus with Oculus vendor extension.

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Описание функции:

Unreal Engine 5 и VR с нуля. Часть 5. Начинаем разработку игры Дартс. Получаем права на использование данных Meta. Решаем возникшие проблемы.

Как оно должно работать описано тут:

Я пробовал:

  • Проверял запускать VR Preview стоя через Oculus Link или через usb кабель.

Обращения других разработчиков об этой проблеме:

Заключение

Если у меня появятся дополнения по описанному в этой статье, то я допишу их с пометкой Update (date).

Следующая статья будет посвящена продолжению прохождения этого курса. До новых встреч!

Начать дискуссию