Skip to main content
Up and Coming
April 24, 2013

Android Development

Hi there,

I don't have my Rift yet, but when I do I'm probably going to try to make it work with my Nexus 10 (Android tablet). It's one of those tablets that have both HDMI out and USB which can be used to get the orientation data from the Rift sensors (http://developer.android.com/guide/topics/connectivity/usb/host.html).

Has anyone tried this already? Or maybe just the stereo output of some rift screencap?

EDIT:
I'll update the first post with the development progress so others can easier follow and find information about Android and the Rift.

Repository for the Android Rift library:
https://github.com/sebastianherp/riftlibrary

Get sample app here:
http://appsdoneright.net/files/rifttest_0.2.apk

Compatible (=tested) Android devices (Version 0.2):

  • Nexus 10

  • Nexus 7 (no HDMI out)

  • Asus Transformer Prime


Screenshot (Version 0.2):
screenshot_0.2.png

Left side of screen moves the player, lower right side rotates the player (yaw). In the upper right side up/down changes the FOV and left/right the IPD. I tried to find good values for both and they should be ok on a Nexus 10.

    26 replies

    SebbiAuthor
    Up and Coming
    May 2, 2013
    Got some basic OpenGL stuff working and hacked together a small sample that actually displays a simple scene on the Rift. I'll update the first post with a screenshot and the link (http://appsdoneright.net/files/rifttest_0.2.apk)
    Up and Coming
    May 3, 2013
    This was found and posted over in the lounge

    https://developer.oculusvr.com/forums/viewtopic.php?f=24&t=838
    Participant
    May 5, 2013
    Thank you so much, Sebbi. Your project should make it much easier for people to get started with development on Android.

    I just tested your rifttest_0.2.apk on my ASUS Transformer Prime.
    - head tracking works and moves the scene as you look around (the Transformer Prime has a regular USB port)
    - the 3D image is non-distorted (as depicted in your screenshot)
    - you can move by swiping up down (forward/backward) and swiping left right (strafing left/right)

    The head tracking seems to be much more lagy than in other demos.
    How are you planning to implement the distortion?
    SebbiAuthor
    Up and Coming
    May 5, 2013
    Hi,

    thank you for your feedback. The head tracking should be the same as in other demos since it is an exact copy of the SDK code (except for the predicition part). There is also a lot of garbage collection happening in 0.2 that was fixed yesterday (could also be a source of latency), but I haven't updated the APK yet.

    I plan to implement the HMD warp similar to other post processing effects ... render scene for left and right eyes to textures and then warp them with a pixel/fragment shader. But I am currently trying out more basic tutorial steps, since this is the first time I have done something with OpenGL/3D in general ;-)
    Participant
    June 17, 2013
    This would be very interesting to try with a powerful android phone that has usb-otg support. A usb-otg cable allows you to plug any usb device into your phones micro-usb port. It currently works on most Samsung Galaxy phones(Samsung even has an official cable) and a few other android phones like the HTC One. It would be great to do this with a phone and be able to just stick it in your pocket and have one less cable to worry about.
    Up and Coming
    June 18, 2013
    It's killing me that I don't have my Rift yet. I am dying to dig into this. I have about 20 different Android devices, some with HDMI out, others with USB/OTG capabilities. I plan on getting a full on working Android/Rift combo in the future.
    Have you listened to the Rev VR Podcast yet? Listen and subscribe through iTunes or through Stitcher http://www.reverendkyle.com
    SebbiAuthor
    Up and Coming
    June 18, 2013
    Well, I haven't had as much time as I hoped to develop this further, but please come back to this thread when you have your Rift and we could collaborate.
    Up and Coming
    June 18, 2013
    Hi Sebbi,

    Just tried 0.2 APK as well, but not on a phone or tablet. I've used a Cloudnet CR9 quad core stick. Bit more exotic, but I guess still relevant! Anyhow, some feedback:

    + The head rotation worked fine -> no noticeable latency in my case. This stick achieves around 15 000 on an AnTuTu benchmark using the current ROM.
    + As expected, if I use the headset I see double at the moment (understand that this is currently a feature as distortion is not implemented yet) :)
    + I didn't try moving around as I only just realised that I could do that after reading Jonek's feedback.

    For others who are interested in seeing what it looks like, below is a video that I am uploading to show the current results. It probably won't get posted up for another 30 minutes or so. Awesome stuff. Keep it up :)


    Oculus Hut - A big fat slice of VR A page I made about surfing the virtual reality web! Janus VR Room 45: janus://zion.vrsites.com/1/45 YouTube: https://www.youtube.com/channel/UCj70pq7hA26fvLv832NmboA A little UE4 experience: Virtual Bard
    SebbiAuthor
    Up and Coming
    June 19, 2013
    Wow, interesting video/configuration. Those "Android sticks" might be the perfect device to make the Rift mobile (everything powered from a 5V battery pack). Thanks for sharing and yeah, I'll keep updating the repository when I find a big enough timeslot for further experiments. I've got some of the distortion working, but doesn't feel correct when viewed through the Rift so I haven't pushed it to Github, yet.
    July 7, 2013
    Have you tried to get this running with the OUYA Android system? We're using Unity with a game porting to the OUYA now through the Android extension, but we're interested in using the Oculus with the OUYA also. Do you know if anyone's been able to set that up yet?

    I haven't seen anyone create a functional Unity project using the Oculus cameras, ported to the OUYA yet. I've been able to port as an Android .apk and push it to the OUYA, but I can only see the GUI HUD. No 3D geometry is visible, though I know it's there in the scene.

    Thanks,

    -Seth