Git Product home page Git Product logo

Comments (12)

jakobbouchard avatar jakobbouchard commented on September 18, 2024

Hey! I’m currently building an app using Godot, targeting the Quest headsets and was wondering, if there’s no support for the keyboard, how would I get text input in VR? Do I need to implement my own keyboard?

Also, from what I’m understanding from the other issues, Oculus is deprecating their API in favour of OpenXR. How will this affect this plugin?

from godot_oculus_mobile.

BenMcLean avatar BenMcLean commented on September 18, 2024

Do I need to implement my own keyboard?

AFAIK, yes. Personally, I'm having to flat out design my app differently to avoid text input because of this.

from godot_oculus_mobile.

m4gr3d avatar m4gr3d commented on September 18, 2024

@jakobbouchard As you mention, due to the deprecation of Oculus vrapi in favor of OpenXR, this plugin will be shortly deprecated. We'll be updating the repo README to reflect that state.

As such, we're planning to add support for the Oculus platform keyboard in the https://github.com/GodotVR/godot_openxr plugin instead (see GodotVR/godot_openxr#136).

The OpenXR plugin will be the default Godot plugin used to support VR on Quest (and other VR headsets), so we recommend that you start migrating to it as soon as possible.

Let us know if you have any questions!

from godot_oculus_mobile.

jakobbouchard avatar jakobbouchard commented on September 18, 2024

Are most Quest-specific features already supported in the OpenXR plugin? Hand tracking for example?

from godot_oculus_mobile.

m4gr3d avatar m4gr3d commented on September 18, 2024

Yes they are!
We have one remaining issue with color correction to address, but asides from that, the plugin is ready for use.

The version to start testing against should be 1.1.1.

from godot_oculus_mobile.

jakobbouchard avatar jakobbouchard commented on September 18, 2024

I don't see version 1.1.1 in the releases, only 1.1.0. Not sure how to build it myself, but I might try. Unless the latest automatic build 780fbbb is good to go?

from godot_oculus_mobile.

m4gr3d avatar m4gr3d commented on September 18, 2024

@jakobbouchard There are a couple remaining features before we release it as stable. Prior to this version, hand tracking is broken on the Quest, hence why I'm recommending it as a starting point.

The latest automatic build should have the necessary prebuilt libraries. Once you have them, you can follow these instructions.

from godot_oculus_mobile.

m4gr3d avatar m4gr3d commented on September 18, 2024

cc @BastiaanOlij

from godot_oculus_mobile.

BastiaanOlij avatar BastiaanOlij commented on September 18, 2024

I don't think there is virtual keyboard support in the OpenXR spec, this sounds like a platform dependent feature that should be added to the Oculus platform plugin?

Also creating a virtual keyboard in Godot itself shouldn't be a hard thing to do and then you have a solution that is portable between multiple platforms, something that would fit well in a toolkit such as xr-tools or neosparks toolkit.

from godot_oculus_mobile.

m4gr3d avatar m4gr3d commented on September 18, 2024

They are working on making it available via Openxr. It'll only be integrated into the plugin once that's done.

And actually a full keyboard implementation is very complex to get right. On top of the basic UI and interaction scheme to figure out (e.g: single/multi controller/hands interaction), you also need to support all the locales supported by the platform (e.g: European languages, asian languages, rtl languages, etc).

from godot_oculus_mobile.

BastiaanOlij avatar BastiaanOlij commented on September 18, 2024

@m4gr3d Never said it was easy, looking at the immense work that has gone into Godot to support Arabic and eastern languages, I don't even know where to start designing a keyboard implementation that supports this (I would stick to what I know and create a QWERTY based virtual keyboard and hope contributors step up and build ontop of that).

It's just that I think a keyboard implementation should be done in the game engine. first because the game engine has the best tooling available for this, second because now every XR runtime is going to have to implement their own version and they are going to behave differently on each platform, and some may not have it resulting in us having to have a keyboard fallback in the game engine anyway.

That said, as so often in these types of discussions, we're looking at it from the perspective of having a full fledged game engine with 2D rendering support with existing user made libraries for virtual keyboards as this is a requirement for console gaming as well.
It's an entirely different story for someone scratch building a VR game on top of pure OpenXR.

from godot_oculus_mobile.

BenMcLean avatar BenMcLean commented on September 18, 2024

now every XR runtime is going to have to implement their own version and they are going to behave differently on each platform

I wish Godot had the power to tell the OpenXR-compatible runtimes, "No, you will implement the spec." But unfortunately, you are right. It'll have to be in the game engine.

from godot_oculus_mobile.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.