Jump to content

State of VR (Vive) with Babylon?


brochington
 Share

Recommended Posts

Hello!

I was just curious about the level of VR support that is coming in the 2.4 release of Babylon. Namely, will it have any support for the Vive? I just got one, and have been super happy with it. If you visit https://webvr.info/ you can find an experimental build of Chrome that works with "room scale" VR, and the controllers that come with the Vive. 

If no one is working on this, I would be happy to "take a look" at adding some support ;)

Link to comment
Share on other sites

@brochington -

I'll personaly be watching your posts on this closely, as I don't see there is any considerable difference in developing for the Vive vs. GearVR and other newly released displays. However I assume nothing, so as for you, myself, and a limited # of other developers already working with these relatively "new" display devices, I'm certain we can all share in the knowledge base which we expect to begin growing quite dramatically as this year progresses - and will most likely explode in #s following the projected sales of these display devices this coming December and January 2017.

So please post anything new you might discover in the coming months, and I and others can most likely be able to assist you with the Vive, even though you're the only member on this forum I've seen thus far who has selected the Vive as opposed to the GearVR and the now somewhat obsolete Oculus Rift Dev Kit. As you'll probably find I'm not a huge fan of Oculus, however I have to give them credit for the supporting environment and tools they have developed to make this far more user friendly for both developer and for the public. There's lots to have fun with in their apps, and as I mentioned in a seperate post, every bit of learning to develop for Vive, Oculus, etc. is experience which we will all be able to use and expand upon in most any future VR and AR display device development.

Personally, I'm excited about the whole experience of this forthcoming and quickly evolving industry - which I know from working with Magic Leap will definately have a hugely substantial impact on our's and our children's futures - to the point of a most dramatic change in how we communicate, gather information, and experience life - to perhaps the extent of the impact radio had on the world - and this was stated to me by one of the founders of the new AR technologies - which I now see far more clearly than I ever did before. What the future holds for us as developers and for the public as users is far more fantastic than anything I ever imagined I would experience in my lifetime.

Exciting stuff!

DB

Link to comment
Share on other sites

@dbawel

Good to hear of others here with an interest in VR! I'll be sure to update/share/ask for help as much as possible. I think the first thing I'll be doing is seeing if I can play around a bit with the camera in Babylon, and perhaps even try to get the Vive controllers working soon.

Link to comment
Share on other sites

@davrous Yay, a fellow Vive'r! 

Check out https://webvr.info/samples/. It has a some decent source code samples.

For "Room Scale": https://github.com/toji/webvr-samples/blob/gh-pages/05-room-scale.html

For the controllers: https://github.com/toji/webvr-samples/blob/gh-pages/XX-vr-controllers.html

Controller support would rock, but if it isn't part of Babylon's scope I would understand.

If there is anything that I can do to help, just let me know!

Link to comment
Share on other sites

Hey @davrous and @brochington,Have you chaecked out GamePad API? I've been testing it for a couple of months now, and find that even though it is still limited in the # of browsers it supports, this provides me with practically every function I would personally want when integrating gamepads into a WebGL game or appliation. Currently support is limited to Chrome v21 (and newer versions), as well as the latest verions of Firefox and Opera in most every OS. However I've found this to be not yet at 100%, although as soon as I find as issue, it generaly is fixed the next day with an update. Every gamepad I've tested which is compatible with the OS and platform seem to work as expected in WebGL. And in the two issues I've personally found recently, I filed a bug report with the browser in question - either Chrome, Firefox, or Opera -  and the bugs were fixed within a day of filing. Even with its somewhat limited support, Gamepad API appears to be working quite well, and most all bugs are generally an issue with the browsers themselves. And the bugs I find are almost always an incorrect mapping issue. Insiders from Internet Explorer and Safari claim to be offerring up support for GamePad API this year, but I haven't yet found any press releases in support of this claim. 

And @davrous will probably like this - I recently found an extension named gamepad.js which allows the Gamepad API to be mose easily integrated into scene files, with virtually no change in the functions of the Gamepad API - such as the detections of all gamepads, Wireles, Bluetooth, or otherwise, which allows me to map 2 or more controllers simultaniously in the same scene. for virtually unlimited control configurations. Anyone remember Steel Battalion for Xbox with almost 50 controls, button, and even an in game discrete frequency radio for communication and cranking the tunes (with a slight modification.) gamepad.js allow easy access to the Gampad API, and optimizes the amount of code necessary to call key functions such as polling (detecting) what controllers are plugged into any device, as well as return a null value if there is no controller currently plugged into the device. And if you choose, this one simple function which you can run in a loop, returns the state of every button and control on the controller for every controller on the list - which is invaluable to be able to set control values for controllers you have personally never seen before - and the same function detects when a controller is plugged in, the state of all buttons, and the mapping of all buttons. There's so much more which the combination of Gamepad API an gamepad.js (gamepad.js must have Gamepad API running) provides developers, and well worth using and testing on your own.

There are a # of Gamepad libraries, testers, and extensions - just do a serach. However, in navigating through this quagmire of unsupported tools, I stopped lookig when I discovered Gamepad API and gamepad.js working in tandem. So @davrous, unless I lost something in translation, you should be able to reference these if you wish to add additional functionality natively in babylon.js. However, Gamepad API and gamepad.js works so very well, I don't know if there is any benefit to simply writing similar support into BJS, and then always having to chase the support dragon. However, when you read this and perhaps have a chance to familiarize yourself within this arena, I'm quite curious to hear your thoughts on how and why you might proceed (or not) in providing native support for most all controllers - especially to keep up with the rapidly approaching escalation of VR and AR displays, and the explosion of gamepads to use in concert with these new display devices. If there's any assistance I might be able to provide you, please let me know - as I'm becoming increasingly familiar with the babylon-master file. This is providing that I'm equiped with the experience to truly contribute.

And @brochington - I was able to test the vive controllers recently, and after getting used to them, I personally believe they out-perform the Oculus controllers greatly. However, like the Oculus contollers, you have limited controls, which for me is a huge disadvantage as a developer, as the odds that any product I release will be purchased by someone who owns the HTC Vive, is minimal. So my recommendation is to use the Vive controllers for "fun" and personal use, but for development purposes, I would go with the Moga Pro for it's awesome design, ease of comfort, and every digital and analog control you could ever wish for - not to mention the multiple pairing types for compatability across most all bluetooth devices. Congratulations on getting your Vive, as this would have been my personal choice if it were not for my development needs. I don't believe it's much of a stretch to say that the Vive beats Oculus hands down for quality. However, only time will tell if the Oculus user experience won't dramatically exceed the abilities of the Vive - especially with the Samsung VR and other licenses coming to market this year. And if using an S6 or S7 with the GearVR, the resolution is fantastic - with virtually no pixelation due to the 2550 X resolution on both phones. Regardless, the Vive is allot of good fun; but the Oculus isn't far behind in image quality anymore, and will most likely sell 4 to 1 if you consider all licensing.

Cheers,

DB

Link to comment
Share on other sites

  • 2 weeks later...
  • 2 weeks later...

Supporting Vive Controllers for the 2.5 would be awesome! Then I contribute with the 3D GUI library to be able to build/interact VR UI! :)

I should get my Vive in couple of weeks, I'll make sure the Canvas2D works with it and the GUI layer too, if we have a pointing device then it'd we awesome!!

Link to comment
Share on other sites

10 hours ago, Nockawa said:

So we have access to every feature the Vive Controller offers with the GamePad API if it's the case, it's great! Maybe a ViveController wrapper class would be useful ? what do you think?

I don't know how large the user base will be for Vive, but depending on this, a class specific to the Vive might have great potential - not only for the vive, but as an example for other controllers as they have more in common with one another than thy do as seperate devices. And for quick testing, take a look at Intel's XDK. Also, to quickly plug in your VIve controllers into a windows device, try using zeemouse for Android as it works virtually as well on Android as it does on Windows.

And to understand how similar the available VR controllers are to Vive controllers, take a look at the following link:

https://www.destructoid.com/guide-how-to-make-a-dirt-cheap-steam-vr-headset-with-low-lag-358924.phtml

As this will provide you with enough "fun" for an entire weekend in developing your own controllers and control systems for most any VR device or headset, as well as assist in a much better understanding of how VR controllers intrface with existing headsets.

I hope you check this out, as it will provide you with a crash course in VR controllers as well as to accellerate your overall understanding of VR, orientation, and controllers which there is nowhere to go these days as this is still a brand new frontier in trying to set some sort of standards for VR, VR devices, and VR headsets.

Have Fun - always!:lol:

DB

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...