编者按:本文作者 Vinjn 张静,文章首发于微信公众号“黑客与画家”(HackerAndPainter),关注游戏开发、计算机视觉、图形学、虚拟现实、体感交互等好玩的内容。授权36氪发布。
VR 设备不只是头显,还有各种输入设备,对 OSVR 而言,它将设备分成:
Tracker,人体跟踪
Button,物理按键
Analog,模拟信号
EyeTracker,眼球跟踪
Gesture,手势检测
Imager,摄像头画面
Skeleton,骨骼跟踪
Display,显示输出
一个完整的 VR 系统需要涉及其中多种设备,设备数量的膨胀意味着单元之间的多对多关系。
计算机系统中解决多对多的法宝便是增加一个抽象层,操作系统是对桌面计算机的软硬件的抽象层,OpenGL / Direct3D 是对显卡加速 API 的抽象层,游戏引擎是对繁杂的底层功能的抽象层,而 OSVR 便是对各种 VR 输入输出设备的抽象层。
在 OSVR 的帮助下,程序不再需要为每个设备进行编程,只需要和 OSVR 打交道。对应的,硬件厂商也需要与 OSVR 打交道。就好比 NVIDIA 需要为 Direct3D 编写显卡驱动,而游戏程序员不需要关心运行的显卡是 N 卡还是 A 卡。(好吧,其实还是需要关心的……)
野心勃勃的 OSVR 与各大游戏引擎合作,也拥有安卓的 SDK 和配套调试工具。
是开放的标准,还是私有的 API,未来谁会获胜?微软露出了笑脸。