Detail Mesin Godot Peningkatan Dukungan VR & Realitas Campuran Terbaru

Mesin Godot baru-baru ini membuat peningkatan signifikan pada dukungannya terhadap VR dan realitas campuran.

Jika Anda belum mengetahuinya, Godot adalah alternatif sumber terbuka dan gratis untuk Unity dan Unreal. Secara teknis bangunan ini dikendalikan oleh organisasi nirlaba Godot Foundation, namun semua pembangunan dilakukan secara terbuka.

Meta Pendanaan Godot Veteran Untuk Meningkatkan Dukungan Questnya

Meta mendanai sekelompok veteran Godot untuk meningkatkan dukungan OpenXR dan Quest SDK mesin serta membuat sampel dan dokumentasi berkualitas tinggi.

Rincian perbaikan dibagikan oleh Bastiaan Olij, pengembang inti untuk dukungan XR di Godot. Olij mengatakan “beberapa” dari peningkatan ini “mendapat manfaat besar” dari dukungan finansial dan teknis dari Meta yang diumumkan awal tahun ini, dengan hasil “meningkatkan pengalaman tidak hanya untuk pengguna Meta Quest, tetapi juga untuk sistem XR lainnya”.

Hal ini terjadi dua minggu setelah seorang insinyur Meta merilis port editor Godot itu sendiri untuk Horizon OS, memungkinkan pengembangan game lengkap yang sepenuhnya mandiri di headset Quest 3 dan Quest Pro.

Godot Engine Sekarang Tersedia Mandiri di Quest 3 & Pro

Mesin Godot kini tersedia di Horizon OS, artinya Anda dapat mengembangkan game lengkap secara mandiri di Quest.

Berikut adalah semua peningkatan Godot XR terbaru yang diuraikan Olij:

Peningkatan Arsitektur XR

Peningkatan Waktu Bingkai

“Saat OpenXR pertama kali diimplementasikan di Godot 3, terdapat batasan pada urutan tindakan tertentu dilakukan. Sebagian besar komunikasi dengan OpenXR diikat ke mesin rendering sehingga Godot lebih mengandalkan algoritma prediktif untuk memposisikan entitas yang dilacak seperti pengontrol. Awalnya Godot 4 mewarisi pendekatan ini.

Sebagai bagian dari rilis Godot 4.3, sebagian besar logika ini dibuat ulang agar dapat berinteraksi dengan OpenXR dengan benar. Godot sekarang memberi tahu OpenXR dengan benar ketika OpenXR mulai memproses frame baru dan memperoleh data pose untuk entitas yang dilacak dengan prediksi posisi untuk frame saat ini.

Standarisasi AR Seethrough & Passthrough

“Passthrough adalah mekanisme di mana kamera video pada headset VR merekam dunia nyata dan menampilkan tampilan dunia nyata ini sebagai latar belakang di dalam HMD kami, mengubah headset menjadi perangkat AR. Headset yang berbeda menerapkan fitur ini dengan cara yang berbeda dan ini menyebabkan kesulitan untuk pengembang yang menargetkan banyak perangkat.

Meskipun passthrough memungkinkan beberapa hal menarik yang tidak mungkin dilakukan dengan perangkat AR optik, bagi sebagian besar pengembang aplikasi yang berfokus pada AR tidak boleh ditugasi menulis kode berbeda untuk mendukung semua perangkat ini.

Oleh karena itu, kami telah menstandardisasi pendekatan ini melalui pemanfaatan mode campuran lingkungan OpenXR dan memindahkan kode spesifik platform ke dalam plugin vendor OpenXR.”

Standarisasi Pelacakan Tangan, Wajah & Tubuh

“Pelacakan tangan telah didukung di Godot sejak lama, namun perbaikan telah dilakukan untuk memastikan dukungan lintas platform yang lebih baik, termasuk standardisasi antara OpenXR dan WebXR. OpenXRHand node sudah tidak digunakan lagi, dan digantikan dengan node baru XRHandModifier3D node yang dirancang untuk bekerja dengan sistem XR apa pun – bukan hanya OpenXR.

Dukungan pelacakan wajah telah ditambahkan dengan data pelacakan wajah yang bersumber dari beberapa perangkat. Godot sekarang mendukung standar Ekspresi Terpadu untuk menangani data pelacakan wajah.

Dukungan pelacakan tubuh telah ditambahkan menggunakan Godots Humanoid Skeleton sebagai basis yang memungkinkan berbagai perangkat pelacakan tubuh memanfaatkan logika penargetan ulang Godots.

Meskipun ketiga sistem ini telah diimplementasikan dengan nama XR, kasus penggunaannya tidak terbatas pada XR. Beberapa plugin telah dibuat menggunakan sistem ini untuk menghadirkan data pelacakan tubuh dari berbagai solusi pelacakan tubuh mulai dari Mocap optik hingga pakaian pelacakan seluruh tubuh.”

Peningkatan Rendering Foveated Vulkan

“Perender kompatibilitas menggunakan dukungan rendering foveated OpenXR secara langsung tetapi ini memiliki berbagai keterbatasan dan tidak berlaku di luar OpenXR.

Dalam penyaji Vulkan kami telah memiliki dukungan Variable Rate Shading untuk sementara waktu yang memungkinkan rendering foveated diterapkan di Godot tanpa kelemahan yang sama.

Dalam rilis terbaru, berbagai perbaikan telah diterapkan yang memberikan kontrol lebih besar terhadap peta kepadatan yang digunakan dan memungkinkan pelacakan mata untuk memengaruhi peta kepadatan dan memastikan kualitas rendering pada titik fokus pengguna.”

Peningkatan Dukungan WebXR

“Dukungan WebXR di Godot mengalami peningkatan berkelanjutan, terutama penambahan dukungan pelacakan tangan, tetapi juga dukungan untuk MSAA dan sejumlah perbaikan dan peningkatan bug yang lebih kecil. Implementasi WebXR kami sekarang juga mendukung aplikasi AR.”

Dukungan Passthrough & Pelacakan Tangan yang Ditingkatkan

“Selain standarisasi passthrough dan pelacakan tangan di Godot, dukungan untuk banyak fitur tambahan yang disediakan Meta diterapkan di plugin Godot OpenXR Vendors.

Untuk passthrough, hal ini mencakup penerapan berbagai filter pada citra passthrough, seperti menyesuaikan kecerahan, kontras, dan saturasi, memetakan warna ke nilai lain, atau bahkan memproyeksikan passthrough ke geometri khusus, untuk hanya menampilkan objek tertentu dari lingkungan fisik pengguna. pengalaman yang sebaliknya VR. Lihat tutorial Meta Passthrough untuk informasi lebih lanjut.

Untuk pelacakan tangan, pengembang kini dapat mengakses jerat tangan, bentuk tumbukan tangan, dan melakukan beberapa pelacakan gerakan sederhana, seperti mendeteksi cubitan antara ibu jari pengguna dan jari lainnya. Lihat tutorial Meta Hand Tracking untuk detail lengkap tentang fitur ini.”

Dukungan Lapisan Komposisi

Lapisan komposisi adalah fitur standar di OpenXR, yang memungkinkan pengembang untuk menambahkan “panel” mengambang (baik datar atau melengkung) yang memiliki konten 2D yang dirender ke dalamnya dari Godot SubViewport.

Hasil dari pendekatan ini adalah detail konten 2D yang jauh lebih tajam dibandingkan dengan menerapkan konten yang sama sebagai tekstur pada jaring 3D.

Ini ideal untuk menu permainan, tampilan media, atau tampilan awal. Teks kecil lebih mudah dibaca saat menggunakan teknik ini.

W4 Games menambahkan implementasi inti dan ekstensi khusus Meta, yang memungkinkan penerapan penajaman lebih lanjut atau supersampling, pencampuran alfa tingkat lanjut, atau menandai lapisan komposisi tertentu sebagai berisi “konten aman”. Lihat tutorial Lapisan Komposisi Meta untuk informasi lebih lanjut tentang fitur khusus Meta ini.”

Penemuan Pemandangan & Jangkar Spasial

“Kedua fitur yang terkait erat ini mungkin merupakan bagian paling menarik dari pekerjaan yang dilakukan sejauh ini. Scene Discovery Meta memungkinkan Quest memindai lingkungan Anda dan memberikan informasi tentang dunia nyata kepada game Anda.

Ini memungkinkan Anda menempatkan objek di dinding, di furnitur, atau membuat NPC berinteraksi dengan lingkungan nyata.

Jangkar spasial memungkinkan Anda membuat hal ini bertahan lama. Buat jangkar spasial yang mereferensikan suatu tempat di dinding Anda, dan Anda dapat menampilkan layar virtual di sana kapan pun pengguna kembali ke aplikasi Anda.

Lihat tutorial Meta Scene Manager dan Meta Spatial Anchors untuk informasi lebih lanjut.”

Dukungan Perangkat XR Baru/Peningkatan

foto 4

“Godot telah mendapat dukungan untuk headset PICO selama beberapa waktu, namun pada tahun lalu telah dilakukan perbaikan. PICO telah sepenuhnya mengadopsi Khronos Android Loader resmi untuk OpenXR dan tidak lagi menggunakan custom loader mereka. Godot sepenuhnya mendukung pendekatan baru ini.”

Lompatan Ajaib 2

“Dukungan untuk ekosistem Magic Leap baru-baru ini juga ditambahkan ke plugin vendor. Magic Leap berbeda dari perangkat Android mandiri lainnya karena perangkat AR optik dan menjalankan perangkat keras AMD. Pada perangkat ini Anda perlu menggunakan renderer seluler Vulkan.”

Apa yang Akan Terjadi Selanjutnya

Olij mengatakan kita harus “menantikan” peningkatan dan fitur baru lainnya dalam waktu dekat, dan membagikan beberapa hal yang sedang dikerjakan.

Thread Rendering Terpisah

“Masih banyak pekerjaan yang perlu dilakukan di Godot 4.4 agar hal ini dapat berjalan sepenuhnya, namun fondasinya sudah ada. Sebagai bagian dari implementasi logika frame timing yang lebih baik, kami melakukan pembersihan besar-besaran pada kode XR untuk memastikannya berjalan dengan baik. ketika rendering terjadi pada thread terpisah. Khususnya untuk aplikasi XR, hal ini membawa kita lebih dekat untuk memastikan framerate yang stabil, bahkan pada perangkat yang berdiri sendiri.”

Dukungan Tinta Logitech MX

“Bukan headset baru, tapi perangkat periferal, tinta MX adalah stylus yang dilacak posisinya dan dapat digunakan dengan Meta Quest. Dukungan telah digabungkan ke dalam master baru-baru ini dan perangkat ini akan didukung dalam rilis Godot 4.4 mendatang. Kami sedang mencari untuk mendukung ini dalam rilis patch 4.3 mendatang.”

Headset HTC Vive yang berdiri sendiri

“HTC membekali tim dengan unit HTC Vive XR Elite yang memungkinkan kami memastikan Godot berjalan pada perangkat mandiri HTC. Kami juga bekerja sama dengan HTC untuk meningkatkan pengalaman pada perangkat ini.”