本文章由cartzhang编写,转载请注明出处。 所有权利保留。

文章链接:http://blog.csdn.net/cartzhang/article/details/52230865

作者:cartzhang

VR中的范围限制

一、问题

在VR的开发中,特别是需要通过玩家真实移动来进行游戏的游戏。目前遇到了一个恼人的问题,

就是玩家的移动和物体碰撞。

一个是要求开放,自由自在;一个要求要在范围内,不要出圈啊!!

这样就造成,要是添加碰撞,玩家遇到墙,游戏中的墙就会在物理的作用下,迅速的抖动。你们都知道,抖动是VR的死敌。(说到这里,多说两句,策划居然要求在游戏中开枪的时候,要求抖动镜头——被反驳回了,我们为了让镜头静止付出的各种努力你居然无视,还要添加认为抖动。最后妥协了一个其他方法,没有那么晕,但是还是不要尝试,所以就不写出来了)

二、怎么办?

那还要有碰撞,还要有自由。怎么办呢?

在玩家定位的过程中,游戏中有墙体,实际中的墙体也存在。玩家容易撞墙,但是还容易卡在墙的中间。玩家若强制被复位,这时候在物理位置就会造成偏移。要是玩家在一个场景中,肯定会造成在开始的时候还可以玩,一旦时间久了或数据准确性下降,就会产生玩家根本到达不了虚拟的指定地点,完不成游戏!!

太尴尬了!!



那怎么办呢?

就跟Steam的游戏一样,使用虚拟的网格作为类似墙体,来提示玩家的你已经出了识别区域或活动区域。

这个的好处是就是相对容易实现,添加代码,在代码里面做做判断玩家位置或相对起始点的移动距离,来显示虚拟网格。

不足能就是打断游戏的连贯性,这个容易打破VR的沉浸感,正爽呢,出来个玩意吓人,出戏。真是惹人恼啊!!



还有那就是不要碰撞了。

没有碰撞,玩家穿墙明显,体验诡异。能不能就是可以穿墙的游戏,作为乐趣呢?这个就是游戏设计的意义了。要是设计一个躲猫猫的游戏,那用这个穿墙术也可能会点意思啊!!



再有就是现在大多数的处理方式,不要设计这种实体的墙体之类的碰撞包围盒子,用一个平台或限制活动范围来处理,这当然也需要根据游戏和实际需求来做。

目前就想到了这几个,想法就这样。

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



若有问题,请随时联系!!!



只是看起来没有了路!!

VR开发的烦恼——范围限制的更多相关文章

  1. VR开发中性能问题—OculusWaitForGPU

    http://blog.csdn.net/cartzhang/article/details/50788894 VR开发中性能问题-OculusWaitForGPU 本文章由cartzhang编写,转 ...

  2. 优分享VR开源啦,优分享VR是基于Google VR开发的一款手机VR视频资源的聚合软件

    欢迎来到优分享VR开源项目 优分享VR 开源中国Git地址: http://git.oschina.net/xumingwang/youkes_vr 优分享VR是 优分享安卓APP VR视频播放开源部 ...

  3. 关于VR开发中的穿墙问题随想

    在VR开发中,用户将以第一人称的视角进入虚拟世界,即用户同时身处两个坐标系:1. 现实世界坐标系(如房间的坐标系),用户的身体处于这个坐标系 2. VR世界坐标系,用户的感官处于这个坐标系,即用户觉得 ...

  4. VR开发 VR development

    VR开发 VR development 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 313134555 @qq.com Ho ...

  5. 使用Unity5.1进行VR开发的配置(最新的未必是最好的!!!)

    随着Unity5.1的发布,之前的Oculus Rift和Gear VR 开发流程发生了巨大的变化,这也算是小白鼠们必须付出的代价了~ 那么Unity5.1和Oculus的整合究竟发生了哪些变化,对开 ...

  6. VR开发2015年终总结

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

  7. Gear VR开发

    下载安装Unity开发工具,要求Unity 5.3.0 或更高版本         下载Oculus签名,做Gear VR交互功能模块.关于输入交互,可以下载VR Samples(地址:https:/ ...

  8. Unity3D学习笔记(三十八):VR开发

    设备安装:HTC View   驱动安装:Steam - SteamVR 设备激活 Unity开发 下载安装开发包 Asset Store - SteamVR Plugin SteamVRDemo1- ...

  9. Unity 的OCulus VR开发遇到的坑---OC版本差异

    我作为Unity新人,没有用过Unity5之前的任何版本,不熟悉任何操作.所以,就根据官方推荐,使用了5.1.1版本,然后根据官方版本对应推荐,果断选择下载了PC端的OC的0.6.0.1版本,对应的U ...

随机推荐

  1. 找不到 main 方法, 请将 main 方法定义为: public static void main(String[] args)

    https://blog.csdn.net/liu1340308350/article/details/80746671

  2. ASPX1

    表单提交 <!--表单:收集用户的数据.---> <form method="post" action="AddInfo.ashx"> ...

  3. JAVA基础之Properties类、序列化流及打印流、commons-IO

    个人理解: Properties类是个存储String类型的键值对的集合类,可以用其存储一些关键的账号密码什么的,同时后面的注释可以很好的帮助理解,但是需要注意的是其文件中不能出现其他的符号:序列化与 ...

  4. Servlet之sendRedirect和getRequestDispatch

    Servlet的请求重定向和请求转发方法的比较分析: 1.getRequestDispatch是属于httpServletRequest对象的方法,请求转发是在同一个请求中完成的,因此整个过程只包含一 ...

  5. querySelector/querySelectorAll

    querySelector获取页面I属性D为test的元素: document.getElementById("test"); //or document.querySelecto ...

  6. 获取元素Bytagname区别/for循环应用

    一:两种获取元素方式的区别.1.var aLi = oUl.getElementsByTagName('li');TagName前面可以加其他东西,id就只能是document,2,Id是静态的,ta ...

  7. 看动画,秒懂人工智能&物联网

  8. Linux上通过MySQL命令访问MySQL数据库时常见问题汇总

    Linux上通过mysql命令访问MySQL数据库时常见问题汇总 1)创建登录账号 #创建用户并授权 #允许本地访问 create user 'test'@'localhost' identified ...

  9. Java 文件操作-RandomAccessFile

    1. RandomAccessFile     Java提供了一个可以对文件随机访问的操作,访问包括读和写操作.该类名为RandomAccessFile.该类的读写是基于指针的操作. 1)文件访问模式 ...

  10. Logback文档(1)

    http://b6ec263c.wiz03.com/share/s/2SX2oY0nX4f32CY5ax1bapaL030VCK2svQZU2rRyDR05KMh5