OpenVR-Advanced-Settings / OpenVR-AdvancedSettings

OpenVR Advanced Settings Dashboard Overlay
GNU General Public License v3.0
1.28k stars 130 forks source link

Documentation for New Steam Input System #72

Closed ykeara closed 5 years ago

ykeara commented 5 years ago

Documentation for Input System

Why?

The new Input system allows us to enable users to have their key-binds very customized.... as such we have to expose several "actions" and the implementation can be confusing.

In addition, most people have probably not been exposed to the binding interface, as such a basic tutorial will be needed.

Solution

Creating a Page in Documentation with the following features:

Other considerations

username223 commented 5 years ago

From looking around on the internet it seems that we are some of the only people using the new API in C++. Since nobody else is going to properly document their findings for other developers it seems like we definitely should if only to spread information about the new system among our team.

I created a simple Hello World repo both in order to test that the system actually works separated from the rest of the application and as documentation with actual running code, something the official documentation lacks.

I intend to add to that as I discover more about the API. If I end up getting Knuckles from Valve I'll look into adding another tutorial on the finger tracking/skeleton stuff.

In addition I think that we should recognize that some people could stumble upon our issues and PRs from googling API issues and accommodate these developers by adding as much extra detail as possible to our commits, PRs and comments, even though it might be slightly overkill for our team.


We talked about releasing the application with some default bindings, if only to reduce the amount of effort it takes for users to use the new system. In my opinion, the new playspace movement and turning system should have a prominent role on the default bindings with Push To Talk maybe taking another key depending on how filled the bindings are at that point.

My media keys should IMO not be bound by default since they're conceptually very easy to understand. If somebody needs them they'll make the effort to rebind them.

We should also look into creating some bindings to release on the workshop, since these are apparently visible to all users(unconfirmed?).


@Kung-vr also talked about doing a video tutorial explaining the new playspace systems and bindings interface.

ykeara commented 5 years ago

I can commit to Writing a decent write-up on the New input system as it pertains to valve/steam as a whole as well as our specific project.... I will create issues against your repo as I move along for the things I find that are wrong/confusing/poorly documented.

And as far as I can tell through what I can only assume is the app manifest in how we register advanced settings gets pushed to steam, and allows us to share via it.... It appears to be only Visible when you have ADV settings installed, and are looking at the input bindings.

My guess is when we change the app key and remove the matzman parts that we will be a "different app" and stuff will share as a different application.