转自:http://www.gamelook.com.cn/2016/03/246620
开发VR游戏很难吗?有些人会说是,但在HTC虚拟现实新科技部门副总经理鲍永哲看来,VR游戏的门槛并不比一般的游戏高。“据我所了解,做PC游戏的团队做VR,从技术来讲,难度不高,难的是创意”,他说。
先不说是不是真的如此,VR作为一个新的平台,它有新的硬件,新的体验,对于想进入或是已经开始VR游戏开发的团队来说,有些与传统游戏开发不同的地方或许可以提前了解一下如何应对。
如何让玩家不晕?
在现实世界中,如果你突然转头,但周围的画面过了1秒钟才显示出来,这时你的大脑是不会将画面和头部运动联系起来的,如果你不停地转,很快就会晕到吐。在虚拟现实中,我们要尽量避免这种情况出现。针对这点VR开发者可以参考以下几条建议。
无论如何,尽力将帧数维持到90 FPS。
帧率对VR的体非常重要,太低容易造成眩晕。目前HTC VIVE、Oculus Rift和PSVR对游戏的建议都是90 FPS,PSVR还可达到120 FPS,而Gear VR为60 FPS。
不要设计加速
我们都知道,眩晕是由于VR画面运动跟我们身体的运动不一致导致的,平缓的画面眩晕感不会太强,而一旦加速,很多人就会受不了,就像过山车一样。
当游戏人物在走或跑时,不要把相机上下晃动。
这个同样是为眩晕而考虑的,很多电影和游戏在人物跑动时,画面也会跟着抖动,这是为了将跑动的效果呈现给观众看,部分人看了其实也会晕,但影响不是很大。但在VR中千万别这么做,高沉浸感让眩晕感更强,一些用户很快就会吐。
没有鼠标键盘怎么交互?
在VR里有很多交互任务需要新的实现方式,比如导航,选择和操控物体,菜单和用户界面,文字输入等。原因是VR游戏的交互和传统游戏非常不同,这里没有鼠标键盘,没有触摸屏,手柄也不是最好的交互方式,所以三大VR平台都有自己的动捕手柄。
对于VR的交互实现方式目前并没有标准可供参考,不同的游戏、平台甚至用户可能都会不同。就拿导航来说:可以用手柄按键来实现,可以用手柄指向某个方向,可以语音说出目的地,可以直接走过去,可以用手势,可以用眼睛望着那个方向……非常多不同的实现方式,开发者应该根据情况选择最适合的一种。
想开发VR游戏?你需要注意这些东西
替身
用户在戴上头显时,会完全沉浸在虚拟的世界里,看不到自己的身体。这时候就需要在虚拟世界中设计一个用户的替身。它可以是用户的自我投射,也可以是完全不同的人。
如果你用的是一个具有全身动作捕捉功能的VR系统,那么把真人原比例完全投射到虚拟世界中会不那么难。但消费级的产品通常不会配备全身动捕,此时你得考虑虚拟世界的替身该如何映射现实中的用户。通常来说头和手的运动是被追踪的。
社交
一旦进入了虚拟世界,用户肯定不想只玩一把单机游戏,而VR特别适合多人联机。由于可以非常真实地模拟现实,两个人就算身处地球两端,透过VR也能感觉对方就在身边。比如VR虚拟影院这款应用就是要带给人们这种感觉。
而在游戏开发中,需要注意的联机事项和一般的游戏差不多。你需要把用户连接到同一服务器,信息同步,还要能看到其他人的替身。VR还需要特别注意网络延迟的问题,不然这虚拟的世界就太假了,游戏体验也不会好。
在不同的平台上运行
同时为Oculus Rift和HTC Vive开发游戏的开发者肯定不少,毕竟谁也不知道哪家会成为市场老大。而如果你先为某家开发了游戏,移植到另一个平台上时就需要注意适配的问题,各家的硬件都不同,交互、追踪系统也有很大差别。这就像同一个App适配iOS和Android一样,很多部分可能要重新开发。
沉浸感
VR呈现的不一定是能够以假乱真的世界,但它需要让用户感觉自己在身在一个新世界里,而不是从旁观者的角度看着这个世界。这时游戏设计就需要注意一些东西。
首先是连贯性,给自己创造的世界赋予某种特性时需要保证它是连贯的,比如一个失重的世界或是穿行的隧道。
其次是感官迷惑,这不仅包括运动,还有触觉、嗅觉、条件反射等,其目的是让你的身体对虚拟的画面作出反应。
然后还有交互设计,当你在为用户设计一种“体验”时,不能让他“为所欲为”,而是得按照你设计的方式来玩。比如沉浸感做得很好的一款VR应用“Verdun 1916-Time Machine”,它的交互非常简单:你只能转头,因为你是一名受伤的士兵。
总结
鲍永哲说的没错,其实VR游戏开发技术上不难,难的是设计和创意。因为没有人可告诉你每一步该怎么做,每个开发者都能去探索最好的VR体验。上文中的一些建议可以保证一些基本的体验,这里 :
延迟最小化,保证不会让用户玩得很晕;
要结合内容和硬件设计合适的交互实现方式;
正确地在虚拟世界中用替身映射用户;
高效地联机;
以上说的这些都是为了“沉浸感”这个词。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述