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

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

作者:cartzhang

OCulus Rift 游戏开发六原则

你是一个游戏开发者?在你的生活中,你涉及游戏开发的那些点呢?你是否听说过Oculus Rift VR系统呢?你是否赞同业内的一些声音,说Oculus Rift将会是游戏的未来?

当我们游戏开发插件或一些工程时候,这有一些点,需要注意或弄清楚的。

虚幻4引擎已经集成了Oculus Rift开发,你只需从网上下载Oculus的SDK,插入Oculus设备,虚幻4引擎可以自动设备。要是你认为就这么简单的话,那你完全错了。这就是生活啊!

为保证你开发Oculus游戏的可玩性,有一些注意事项你需要了解:

1. 玩家的移动

2. 游戏帧率FPS

3. 适合HMD(头戴设备,本文中指的是Oculus Rift)的关卡设计

4. 针对Oculus

5. 玩家的舒适度

6. Rift分辨率

一、 玩家的移动

Ok,这个很基本。在头戴设备的射击游戏中,有三种方法可以使玩家移动:

——玩家朝着他看的方向移动,包含Oculus的方向

——玩家移动由鼠标方向确定,但是Oculus Rift可以实现相机偏移,这样玩家玩家可以往边上看,但是移动方向不变。就像是鼠标控制移动方向,头却被Oculus Rift 控制。想象一声机甲战士。

——玩家移动仅由玩家看的方向控制,但是当你使用头盔看的角度大于60度时,你可以旋转角色。

前两个可以设置玩家相机,是否跟随HMD的方向旋转。第三个选项你可以跟随HMD方向,并添加蓝图代码来控制相机(当HMD旋转角度大于±60度时,旋转角色角度)。

如下图所示:

二、 帧率

Oculus Rift DK1官方建议帧率为60fps,这就意味着当帧率低于60时,在玩游戏的过程中,玩家体验会一团糟。

另一方面,Oculus Rift DK2官方建议帧率为75fps。这就意味游戏有足够的宽容度来满足在不同的电脑上运行,并保证至少高于值(70,85FPs)10FPS,也意味着更多的硬件开销。

你可以使用以下手段来提高你游戏的宽容度:垂直同步(V-Sync),HMD分辨率(HMD resolution),纹理质量(texture quality), shadow quality,特效质量(effects qualit)和 post-process 质量。

控制台命令:“hmd sp 值”用来设置显示屏百分比-HMD的分辨率,在没有HMD插入时候,此命令不起作用,所以要确保包含此选项来方便玩家使用。hmd sp 100意思就是玩家设置为100%,由于一些原因,它没有缺省值。

译者说明:DK2缺省为135%。

三、 关卡设计

现在,除了这些技术选项外,你还需要考虑到的就是关卡的设计。东西不要显的太小。另外,在当前的Oculus Rift阶段,不要让玩家读太多东西,因为分辨率真是太低了,太多的阅读,玩家很难集中注意力在小的物体或文字上面。这也适用于GUI。经验表明3维的GUI要玩家很容易的瞄准按键是最好的选择,等等。

四、 针对Oculus

针对Oculus这个建议可能有点搞笑。因为你将会计算HMD相对于玩家位置的偏移。Oculus本身内置相机有它自己的跟踪空间(相对位置和旋转),而相机本身与渲染点有偏移。

这就意味着你需要从相机位置发个射线,设置相机的开始位置加上HMD的偏移位置。对于旋转来说,最好的方法是从相机对象或相机控制者取得一个向前的向量。

设置HMD位置:

HMD射线跟踪:

五、 玩家的舒适度

玩家的舒适度意味着在没有玩家输入的时候,不要过多的移动玩家。这就意味着不要有“走路颠簸”或走路时摆动。不要让玩家在莫名的外力影响下移动等等。若你做这些事情,一些 玩家可能会觉得眩晕或恶心。相信我,我们已经做过这些。

六、 Rift的分辨率

目前Rift的分辨率很难让人注意到游戏中小的细节或文字。所以一些小的重要的对象,一定要放在HMD位置的前方,这样玩家就可以容易看到他们。同理对于三维的文字或带文字的对象。将来分辨率或DPI会提高,暂时呢只能这样。

我希望这些小小的技巧可以帮助到向我们一样遇到问题的人。Oculus游戏的开发也许当然很混乱和令人沮丧,但是沉下心来,会觉得很有意思。实话实说,为最新的电子游戏技术开发电子游戏感觉特别棒。

原文地址:http://pluggedthegame.com/community/devblog/six-ways-to-make-that-awesome-game-youre-developing-work-on-oculus-rift/

-

若有问题,请随时联系!

非常感谢!

OCulus Rift 游戏开发六原则的更多相关文章

  1. UE4关于Oculus Rift (VR)开发忠告

    转自:http://blog.csdn.net/cartzhang/article/details/42493843 UE4虚拟现实 实现的注意事项 https://docs.unrealengine ...

  2. 【Visual C++】游戏开发五十六 浅墨DirectX教程二十三 打造游戏GUI界面(一)

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接:http://blog.csdn.net/poem_qianmo/article/details/16384009 作者:毛星云 ...

  3. oculus rift 开发(一)

    我使用的是oculus rift DK2,也就是开发人员版.在開始使用前.要确保几件事: 一.准备工作 1.pc配置.配置越好执行越流畅.反之会使帧率低.伴随的体验就是眩晕恶心,甚至无法执行. 官方推 ...

  4. 《MFC游戏开发》笔记六 图像双缓冲技术:实现一个流畅的动画

    本系列文章由七十一雾央编写,转载请注明出处.  http://blog.csdn.net/u011371356/article/details/9334121 作者:七十一雾央 新浪微博:http:/ ...

  5. Unity3D ——强大的跨平台3D游戏开发工具(六)

    第十一章 制作炮台的旋转 大家知道,炮台需要向四周不同的角度发射炮弹,这就需要我们将炮台设置成为会旋转的物体,接下来我们就一起制作一个会旋转的炮台. 第一步:给炮台的炮筒添加旋转函数. 给炮台的炮筒部 ...

  6. Html5 Egret游戏开发 成语大挑战(六)游戏界面构建和设计

    本篇将主要讲解游戏界面的构建和设计,会应用到egret.eui的自定义组件,可以很直观的构建一个游戏整体,这里我们仍然只需要使用EgretWing就可以达到目的,本篇可能是篇幅最少的一个,但是涉及自定 ...

  7. cocos2d-x ios游戏开发初认识(六) 渲染的优化

    做程序开发肯定要考虑到内存的优化,毕竟iphone本身的内存就不是非常大.这一节主要说这个cocos2d开发对内存的优化,详细表如今,既能够对同样的精灵(图片)仅仅渲染一次,也能够对不能的精灵仅仅渲染 ...

  8. Unity正式发布首个“实验性”VR编辑器,支持HTC Vive和Oculus Rift

    Unity今天正式推出"实验性"VR编辑器.据悉,EditorVR是Unity游戏引擎中的一个组件,可让开发者在虚拟现实环境中开发游戏.为何要称之为"实验性"? ...

  9. 走进VR游戏开发的世界

    http://geek.csdn.net/news/detail/76504 我们组在2014年下半年尝试开发了一款Xbox One平台的体感游戏,2015年上半年进行收尾工作的同时,结合之前积累的体 ...

随机推荐

  1. Kinect 开发 —— 进阶指引(上)

    本文将会介绍一些第三方类库如何来帮助处理Kinect传感器提供的数据.使用不同的技术进行Kinect开发,可以发掘出Kinect应用的强大功能.另一方面如果不使用这些为了特定处理目的而开发的一些类库, ...

  2. wmic linux python

    sudo aptitude install wmi-client Example of usage is; wmic -U DOMAIN/administrator%password //10.99. ...

  3. [ES6] Extends class in ES6 vs ES5 subclass

    ES6 class with extends and super: class Tree { constructor(size = ', leaves = {spring: 'green', summ ...

  4. IPv6地址表示方法详解

    IPv6是互联网协议的第六版:最初它在IETF的 IPng选取过程中胜出时称为互联网新一代网际协议(IPng),IPv6是被正式广泛使用的第二版互联网协议. 现有标准IPv4只支持大概40亿(4×10 ...

  5. ubuntu-虚拟机分辨率设定

    前两天下载的虚拟机,一直调节不好分辨率,就是说,全屏的时候,虚拟机要么是不能充满屏幕,要么就是在屏幕充满的时候,会出现显示不全,需要滚动条,给人的体验非常的不好.自己调节了好长时间都没有刚好合适的尺寸 ...

  6. 洛谷P3613 睡觉困难综合征(LCT)

    题目: P3613 睡觉困难综合症 解题思路: LCT,主要是维护链上的多位贪心答案,推个公式:分类讨论入0/1的情况,合并就好了(公式是合并用的) 代码(我不知道之前那个为啥一直wa,改成结构体就好 ...

  7. material风格前端CSS框架——Materialize

    官方网站:http://materializecss.com/(有中文,翻译不全) 中文学习站:http://www.materializecss.cn/(翻译较全)

  8.  洛谷 P3056 [USACO12NOV]笨牛Clumsy Cows

    P3056 [USACO12NOV]笨牛Clumsy Cows 题目描述 Bessie the cow is trying to type a balanced string of parenthes ...

  9. 18. springboot整合jsp

    转自:https://blog.csdn.net/u012562943/article/details/51836729

  10. 1.2 Use Cases中 Event Sourcing官网剖析(博主推荐)

    不多说,直接上干货! 一切来源于官网 http://kafka.apache.org/documentation/ Event Sourcing 事件采集 Event sourcing is a st ...