一个基于openVR的开源项目
2017-05-27 18:21
603 查看
openvr_survivor
About
This is an open source project based on steamVR development driver, used in the windows platform, can provide you with the following functions:If you’re a regular gamer, you can experience all the SteamVR games on the keyboard as long as you have a set of PC and use compiled files.
If you’re a hardware driver developer, you can customize your HMD, handle controllers, and other peripherals based on this, so that they can be used on the steam platform, and you can refer to the already tuned virtual device, driver.
If you’re an application developer, you can debug your application based on analog devices and troubleshoot hardware devices.
If you’re already an experienced developer and passionate about VR, we want to be able to work together on some of the more interesting things, such as distortion, ATW, TW, tracking, prediction, and so forth. Join us.
SteamVR game example:
How to use
Use CMake to build visual studio project, and then open the “openvr_survivor.sln”, compiled the driver file package openvr_survivor, and then copy it to the “Steam\steamapps\common\SteamVR\drivers” directory, and then modify the default.vrsettings:/** file under the path:openvr_survivor\resources\settings set your monitor resolution. */ "windowWidth" : 1920, "windowHeight" : 1080, "renderWidth" : 1920, "renderHeight" : 1080,
compiled driver
HMD 6dof:
rotate information: yaw:'a' left, 'd' right. pitch:'w' up, 's' or 'x'down. roll:'q' anticlockwise,'c' clockwise. other function:'c' clear rotate. position information: forward:'VK_NUMPAD8',back:'VK_NUMPAD2'. right:'VK_NUMPAD6',left:'VK_NUMPAD4'. up:'VK_NUMPAD9',down:'VK_NUMPAD1'. other function:'VK_NUMPAD5' clear position. note:The numeric key above is the numeric key on the right.
right hand controller:
right controller rotate information: yaw:'j' left, 'l' right. pitch:'i' up, 'k' or ',' down. roll:'u' anticlockwise,'o' clockwise. other function:'.' clear rotate. right controller position information: forward:'VK_UP',back:'VK_DOWN'. right:'VK_RIGHT',left:'VK_LEFT'. up:'VK_NUMPAD0',down:'VK_RCONTROL'. other function:'VK_DECIMAL' clear position. right controller button information: Menu button:'VK_BACK' Trackedpad Left:'VK_KEY_F' Trackedpad Up:'VK_KEY_T' Trackedpad Right:'VK_KEY_H' Trackedpad Down:'VK_KEY_G' or 'VK_KEY_B' System Button:'VK_ESCAPE' Trigger:'VK_SPACE','7','9' Grip Button:'VK_KEY_9' Trackpad Press:'VK_KEY_0'
Third party dependency Library
glog:log system, in order to better use, in the source code on the basis of some changes made.glm:used to handle four element transformations.
hidapi:HID data interaction.
openvr:openVR interface.
doxygen:for document.
Development plan
optimization hand controller control.Fix the handle shake while moving
Protect critical resources,e.g.HMD’s pose and handle controllers’ pose.
Add distortion function.
Added direct rendering support.
Problem fixing and improvement.
This is a preliminary version, relying on personal strength is difficult to perfect, if you have any good suggestions ,you can post in gitter chat room,and if you would like to join us, please contact me, my mailbox:helenhololens@gmail.com.
相关文章推荐
- 发布一个基于TokyoTyrant的C#客户端开源项目
- 一个基于DDD的开源项目,各种技术!
- 发布一个基于TokyoTyrant的C#客户端开源项目
- 介绍一个免费部分开源项目:基于ARM的嵌入式系统开发平台-CooCox
- Kaptcha是一个基于SimpleCaptcha的验证码开源项目。
- 发布一个开源项目,基于thinkphp框架搭建的一个简单框架
- 原创:发布一个基于TokyoTyrant的C#客户端开源项目
- 基于python的一个运维自动化的项目(进度更新)【已开源】 推荐
- [Kails] 一个基于 Koa2 构建的类似于 Rails 的 nodejs 开源项目
- 基于 React-Native 的高仿「ONE·一个」开源项目
- 筹备一个开源项目:opencam,仿照openwrt。
- 基于开源项目的在线网络视频直播项目---一个很好的电视直播开源项目Sopcast
- 一个基于Golang的分布式存储开源项目
- 原创:发布一个基于TokyoTyrant的C#客户端开源项目
- 准备开始一个开源操作系统项目(基于linux)
- 一个很好的 Java 开源网站:open-open
- 启动了一个开源项目:文档共享系统,欢迎大家加入!
- GCDPlot已提交到Sourceforge,成为开源项目[GCDPlot become a open source software in sourceforge]
- ZedGraph:一个同时支持WinForm和WebForm的开源图表控件(基于LGPL协议,.NET 2.0 C#源代码)
- 发现一个基于Ajax,符合Web标准的开源Blog系统(x2blog)