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

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

作者:cartzhang

VR中的范围限制

一、问题

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

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

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

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

二、怎么办?

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

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

太尴尬了!!



那怎么办呢?

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

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

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



还有那就是不要碰撞了。

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



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

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

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



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



只是看起来没有了路!!

最新文章

  1. 《理解 ES6》阅读整理:函数(Functions)(三)Function Constructor & Spread Operator
  2. 用Filter程序实现静态HTML页面的访问保护
  3. OpenJudge 2810(1543) 完美立方 / Poj 1543 Perfect Cubes
  4. -_-#【JS】element.click()
  5. mybatis xml的无效判空
  6. iframe的优缺点?
  7. delphi 线程教学第四节:多线程类的改进
  8. C语言中的sizeof解析
  9. SAP freelancer夫妻并不难!你也可以!
  10. Python3 tkinter基础 Scale orient 横竖 resolution单步步长 length 长度 tickinterval 指示刻度
  11. Linux之备份(tar)/解压与压缩(gzip,bzip2,xz)【待完善】
  12. Centos7 安装系统服务、开机自启动
  13. Spring Boot 入门详细分析
  14. android开发(46) 使用 textview实现文字的阴影效果,浮雕效果
  15. JavaScript字符串和字符数组
  16. PAT甲题题解1099. Build A Binary Search Tree (30)-二叉树遍历
  17. PHP虚拟主机的配置
  18. TX2 内核编译
  19. CRM项目问答总结
  20. c++多线程基础5(future,async,packaged_task,promise)

热门文章

  1. HBuilder配置sass
  2. Eclipse 主题(Theme)配置
  3. 实例练习——轮播图 & 全选/全不选
  4. Kendo UI 移动应用开发简介
  5. Setting 之dashboard 点击跳转流程
  6. Electron 入门文档
  7. fiddler设置只抓取某一域名请求
  8. Ecshop数据表结构
  9. Python3+Selenium3+webdriver学习笔记14(等待判断 鼠标事件 )
  10. T-SQL查询高级—SQL Server索引中的碎片和填充因子