Представляємо інструменти XR

З коробки Godot надає всю базову підтримку для налаштування проекту XR. Проте спеціальну ігрову механіку XR потрібно реалізувати на цій основі. Хоча Ґодо робить це відносно легким, це все одно може бути складним завданням.

З цієї причини Godot розробив набір інструментів під назвою Godot XR Tools, який реалізує багато основних механізмів, які є в іграх XR, від пересування до взаємодії об’єктів до Взаємодія інтерфейсу користувача.

Цей набір інструментів розроблено для роботи як із середовищами виконання OpenXR, так і з WebXR. Ми будемо використовувати це як основу для нашої документації тут. Це допомагає розробникам почати роботу, але для більш конкретних випадків використання створення власної логіки не менш актуальне. У цьому випадку інструменти XR можуть допомогти отримати натхнення.

Примітка

Поточний стабільний випуск Godot XR Tools, доступний у Asset Library, — це версія для Godot 3. Порт Godot XR Tools для Godot 4 доступний для завантаження з веб-сайту github. Тут ми розглянемо етапи завантаження та встановлення. Ми оновимо документацію, щойно Godot XR Tools стане доступним для Godot 4 через бібліотеку активів.

Встановлення XR Tools

Продовжуючи наш проект, розпочатий у Налаштування XR, ми хочемо додати в бібліотеку Godot XR Tools. Його можна завантажити зі сторінки випусків Godot XR Tools. Знайдіть останню версію Godot 4 і в розділі Активи завантажте файл godot-xr-tools.zip.

Once downloaded unzip the file. You will notice the files are held within a godot-xr-tools subfolder. Inside of this folder you will find an addons folder. It is this folder that you want to copy in its entirety to your Godot project folder. Your project should now look something like this:

../../_images/godot_xr_tools_root_folder.webp

Now open up your project in Godot, if you haven't already, and give it a minute or so to import all the resources of the plugin. If it asks for a path to Blender to be set you can just click the option to disable blender import and restart the editor.

After the import finishes you may notice that several "failed to load script" messages popped up, that's normal, the plugin just needs to be enabled in the project settings.

Далі відкрийте меню Проект і виберіть Налаштування проекту... Тепер перейдіть на вкладку Плагіни і ввімкніть плагін.

../../_images/godot_xr_tools_enable.webp

After doing that you need to close and re-open your project so everything is properly enabled.

Основні руки

Просто щоб відчути речі, ми збираємося додати кілька стандартних компонентів, які прикрашають нашу сцену, починаючи з рук для нашого гравця.

OpenXR підтримує повне відстеження рук, однак наразі існують значні відмінності у можливостях різних XR Runtimes.

Як надійна альтернатива Godot XR Tools постачається з кількома фальсифікованими сценами для рук, які реагують на вхідні сигнали тригера та ручки вашого контролера. Ці руки доступні в низько- та високополігональних версіях, у кількох конфігураціях, з кількома анімаційними файлами для керування положенням пальців і різними текстурами.

In your scene tree select your left hand XRController3D node. Now click on the instantiate Child Scene button to add a child scene. Click the addons toggle so the addons folder can be searched. Then search for left_hand_low.tscn, and select it.

Як ви можете бачити зі шляху цієї сцени, низькополігональні моделі знаходяться у підпапці lowpoly, а моделі з високим полі — у підпапці highpoly. Ви захочете використовувати версії з низьким полі, якщо плануєте випустити свою гру на мобільних пристроях.

Рука за замовчуванням, яку ми обрали, це просто рука. Інші варіанти:

  • tac_glove - рука в рукавичці з відкритими пальцями

  • full_glove - рука в рукавичці, яка закриває всю руку

Нарешті кожна роздача представлена у версії фізики. Це оголює всі кістки. Ми розглянемо, як це можна використовувати в іншому посібнику.

Повторюємо те ж саме для правої руки.

../../_images/xr_tools_basic_hands.webp

Додаткова інформація

Ми продовжимо додавати функції до нашого навчального проекту за допомогою інструментів Godot XR на наступних двох сторінках. Більш детальну інформацію про інструментарій можна знайти на сторінках довідки інструментарію.