Giter VIP home page Giter VIP logo

hobo_vr's Introduction

Hobo VR

a pc vr solution for hobos don't ask why

Works with IMU and camera based homemade VR devices, or other devices if you provide the tracking.

ย 

Steam View:

example vod

Debug view:

debugger vod

Some Beat Saber gameplay(done using color_tracker):

beat saber vod

Usage

  • From one terminal, run: pyvr server
    • This launches the server, which gathers information from trackers and passes that into steam. More info: Server Documentation
  • Then, launch a tracker
    • Default tracker: pyvr track
      • This tracks bright spheres like in PSVR. Requires a webcam.
    • Implement and run a custom tracker. For example: python -m examples.poserTemplate
  • Then, launch any steam VR game.

Setup

  1. Steam, SteamVR, and Python 3.7.x must already be installed.
  2. In a terminal, run: git clone https://github.com/okawo80085/hobo_vr
  3. Install the driver:
    • Windows:
      • double click the driver_register_win.bat file
    • Linux:
      • cd ~/.local/share/Steam/steamapps/common/SteamVR/bin/linux64/
      • ./vrpathreg adddriver "full/path/to/where/you/cloned/hobo_vr/hobovr"
  4. Install python repo: pip-3.7 install -e .

More info: quick start guide

Docs

Quick Start and Driver Setup

Server Documentation

Udu Multiple Device Tracking

Compiling the Driver

Network Diagram:

network_diagram

Development Requirements

C++: openvr

Python: No extra requirements.

To Do

There's a lot still left to be done. Here are a few todo items:

Steamvr/Openvr:

  1. Send frame textures over USB to a phone, using something like rawdrawandroid
  2. Send frames wirelessly, compression depending on bandwidth.

General software:

  1. Replace OpenCV so we can open the same camera every time instead of a random one. (Windows only. Already done in Linux.)
  2. Real time SLAM for inside out tracking without IR or other LEDs.
  3. Stereo depth estimation so 3D models or menus can interact with the world and with games, and so lag is less disorienting.
  4. Scan body once with webcam, or opportunistically, so we can use IMU-only tracking later.
  5. VR pass through.
  6. Camera based finger tracking. Necessary for sign language users.

Hardware:

  1. Create default list of parts to buy for controllers and headset.
  2. Create simple IMU-only trackers to be used with Udu.
  3. Create 3D printable models for headset, controllers, and trackers.

Would be Awesome:

  1. Speech recognition. Just go full Iron Man + Jarvis.
  2. Windows / UI

Bug Reporting / Contributions

just do it

Fun / Extra

Custom Controller Textures(hobo_vr/hobovr/resources/rendermodels/hobovr_controller_mc0/onepointfive_texture.png could be changed to fit your desire):

Lots of tracking:

1 Headset. 8 Controllers. 7 Trackers.

hobo_vr's People

Contributors

okawo80085 avatar simleek avatar sahasam avatar mathemmagician avatar

Stargazers

 avatar

Watchers

James Cloos avatar

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.