Some attempts with OpenXR

A place to show off your latest screenshots and for people to comment on them. Only start a new thread here if you have some nice images to show off!
assaber
Gnoblar
Posts: 7
Joined: Tue May 02, 2023 5:06 am
x 5

Some attempts with OpenXR

Post by assaber »

Hi guys, I want to share some of the attempts of ogre-next on the HMD. We can already find the solution for using SteamVR with streaming in the existing demos, this article focuses on OpenXR.

The machine I use is a Pico4, not only does it have the hardware to display, but it also allows you to install programs directly into your machine, likes Quest3 and Vision Pro. As we all know, ogre can be compiled to the Android, and it just so happens that the system of Pico4 is Android, so I decided to mimic the official demo and use ogre for some interactionsPICO OpenXR SDK (Legacy). Other than that, I'm slightly familiar with Qt and want to bring it to solution. I'd like to be able to use some of the features in Qt:

  • Resource management

  • Signal-slots and events

  • Drawing(QImage, QPainter)

Here are some screenshots at runtime
Image
Anime "Sword Art Online" referenced by the interactive interface, image source from GPBeta and the author of the font is darkblackswords.I draw them on QImage via QPainter depending on what needs to be displayed, and then convert them to Ogre::TextureGpu.

Image
Here, I used AutoNavi Map's tiles and web API. As the same as above, can use the same method to draw out the tiles and display them. The Web API provides a path planning feature, we can calculate the included angle to update the rotation of the navigation model

Image
(Like "Crazy Taxi", aha

Image
In addition to that, I verified that the design of the plugin could be used, the result is yes! I encapsulated a WeChat plugin, it can be load by ::dlopen, and also can use Qt method and Ogre method. Just like, if you think of Ogre as a system, the plugin is more like an app, everyone who is willing to contribute can use support from the engine and event processing, and they can all express some ideas in their respective areas of expertise.

Image

About this android project, I can't git push it temporarily. One is that this project was established when participating Pico XR Challenge in last year, and the development time is not very long, and the implementation of some features is rather ugly... In addition, the notes written in it are also native languages. If this article is reviewed, I will elaborate on some of the pitfalls encountered during development in the following section, so that guys can avoid risks immediately when having a try :wink:

Last edited by assaber on Wed Jul 03, 2024 10:45 am, edited 1 time in total.
assaber
Gnoblar
Posts: 7
Joined: Tue May 02, 2023 5:06 am
x 5

Re: Some attempts at OpenXR

Post by assaber »

About enabling hand tracking when using Native SDK, we can pay attention to the readme in the https://github.com/rayperkins/HelloXR.

Code: Select all

<meta-data android:name="handtracking" android:value="1" />

It is necessary

Lax
Gnoll
Posts: 644
Joined: Mon Aug 06, 2007 12:53 pm
Location: Saarland, Germany
x 59

Re: Some attempts with OpenXR

Post by Lax »

Yeah, looks great! Also nice integration of Qt :D

Best Regards
Lax

http://www.lukas-kalinowski.com/Homepage/?page_id=1631
Please support Second Earth Technic Base built of Lego bricks for Lego ideas: https://ideas.lego.com/projects/81b9bd1 ... b97b79be62