zoukankan      html  css  js  c++  java
  • VR室内定位系统小结

    VR室内定位系统小结

    本文章由cartzhang编写,转载请注明出处。 所有权利保留。
    文章链接:http://blog.csdn.net/cartzhang/article/details/51135608
    作者:cartzhang

    一、写在开始之前

    不管是HTC 的Vive还是OC的CV1,都说明VR 定位设备和手柄都会成为未来VR的发展趋势。
    VR目前关键就是体验,全身心的投入,身临其境的感觉。
    不能总玩着玩着,出戏了。这肯定不是VR想要达到的效果,专业词汇那就是“沉浸感”!!
    现在也做了些VR室内定位的东西,不是Vive,也没有CV1。只能成为高信价比的方案。
    没有Vive的华丽上档次,没有CV1的黑科技,但是足够好玩!!

    这个只是小结,总结下自己在过程中出现的问题和可能的解决方案!!

    二、硬件相关

    在VR游戏中,硬件主要有电脑,头盔等。对定位系统来说,还需要定位硬件和接受等等。

    1.头盔的陀螺仪偏移的问题:
    头盔的陀螺仪问题,这交给卡马克老兄来处理,能力所限。不过,相对于某朋,还是OC的靠谱。(真不是故意黑,也不是宣传OC,也没有拿人钱)。
    要是OC也飘,咋办?其实还真飘。但是不严重,大部分游戏可以忽略不计的。
    对于头盔漂移的建议:有的说需要重新重启,有说插拔一下。还有说需要找OC刷固件。
    https://forums.oculus.com/community/discussion/2349/help-fix-consistent-right-yaw-in-rift

    2.枪的问题:
    添加硬件按键来随时矫正,然后就是尽量的减少上面的各种可能影响磁偏的东东。软件方面的解决方案,正在考虑和测试。
    使用某大厂的陀螺仪,还是同样的问题,原来的味道,真是让我疼啊!!好在有解决方案可以做,那就是强制矫正。

    3.电脑问题:
    一个是mini电脑(某星人)批次间或有问题。
    另外,需要的USB供电电流太大,使用电源电压和电流太大,HUB 可能过热,在实际应用中,硬件过热产生数据的中断和连接不正常等问题。
    还有就是电脑的静电问题,USB口常常不稳定,开机需要按下F1,这对于远程桌面调试那就是灾难。
    怎么处理呢?我嘞个去,自己放电还有就是找生产厂家要点靠谱的好的批次,这个基本就是靠运气。
    再有就是引线太多,各种设备繁杂,一是不美观,二是维护人员和客户的教学成本,以及售后都需要很多人力来维护。

    4.信标问题:
    再有就是信标的问题。
    信标使用某清的无限定位系统。
    怎么说好呢?应用场景不同。人家追求的应用分辨率不高,实时性也不用太高。所以,选这个,应该纯成本考虑。做成这样,软件各种处理和测试,做了较多的工作。
    要是有好的,不太在意成本的话,可以考虑其他好的,更精确的。
    建议:尽量的每个基站单独供电,防止电压问题,造成不稳定。

    三、软件相关

    软件方面的问题,如硬件不行,只好软件来填补。

    1.算法问题
    各种平滑曲线曲线的多次测试。移动匹配是直接定位还是累加定位?
    直接定位的问题,那就是墙体碰撞和场地固定大小问题。
    累加定位,就是信号不好的时候,它瞎飘的时候的处理。
    设置了各种调试速度来匹配不同场地大小。使用缓动曲线来处理,后期有添加了中值滤波算法,还待测试。

    2.枪的校正:
    关于枪的校正,主要工作就是对齐某个坐标。在认为需要校正的地方,提醒或强制玩家校正使用。但是这个漂移问题,还是不靠谱,因它是磁偏累计造成的,或是由于没有做磁偏校正或算法有问题。
    到我这里,只好(暂时)软件来解决问题。

    3.调试问题
    每次都需去场地测试,麻烦。用配置来一次调试多个问题。尽可能的通过显示来现场调试。
    配置真的还是要写好,方便也简单。

    四、其他

    问题总很多,并且还有在路上的。他们前赴后继的,以大无畏精神来等待我们!!
    其它问题还有关卡设计,人与碰撞体碰撞造成偏移,关卡切换,相机与玩家分离,枪与玩家分离等等。

    五、参考

    http://blog.csdn.net/cartzhang/article/details/51055584
    之前写的切换关卡的东西!!!放这里吧!!

    ——————THE—————-END———

    若有问题,请随时联系!!
    非常感谢!!

    在乡间的小路上,禹禹而行
    这里写图片描述

  • 相关阅读:
    为什么程序员难找对象?
    项目为什么会失败(预估时间真的很难,必须有充分的心理准备,所有人高度重视项目的难度。总结:如果客户觉得事情简单,那么项目一定会延期。如果客户和老板都觉得事情简单,那么项目会烂尾)
    在Ubuntu 12.04 LTS下成功访问Windows域共享(mount //192.168.1.102/share -o user=DOMIAN\user,pass=passwd /mnt)
    微服务架构
    net core web服务器实现
    突破内存限制的高性能排序
    .Net Core:部署应用
    Apollo的Oracle适配
    前端模块化
    通用的业务技术架构
  • 原文地址:https://www.cnblogs.com/qitian1/p/6461912.html
Copyright © 2011-2022 走看看