背景介绍
2014年下半年,笔者尝试在XboxOne平台上开发一款体感游戏。 2015年,在完成工作的同时,结合之前积累的体感交互经验,开始了VR游戏的预研工作。 在这将近一年的时间里,我一方面从外界感受到了虚拟现实飞速发展的趋势,另一方面也意识到身边很多人对VR游戏的了解非常有限。 现在我们自己的VR游戏Demo已经完成,并且已经在技术上得到了验证。 硬件条件下,开发高品质游戏的可行性。 当然,高质量的VR游戏需要大家的共同努力,我们也希望有更多的人参与进来。 下面是我们在开发过程中所学到的和经历的,以及期望的总结,希望对大家有所帮助。
图为我们的VR Demo:彗星
VR硬件原理及现状
狭义的“VR硬件”特指沉浸式头戴式显示器。 它具有三个基本特征:
VR 显示器基础知识
首先,让我们来看看满足上述三个基本条件的最便宜的产品,谷歌的Cardboard:
Cardboard以低廉的价格让很多人提前感受到了VR的魅力,并衍生出了很多塑料外壳的版本。 不过,就体验而言,Cardboard 并不是一款合格的 VR 硬件。 人们很自然地认为“VR就是这么回事”、“现在的硬件还差得很远”、“新鲜才几分钟”等等,在一定程度上误导了很多人对VR的认知。
那么Cardboard存在哪些问题呢?
图像延迟严重:手机陀螺仪模拟的转向精度和响应速度达不到VR的要求,导致渲染图像跟不上转动头部的速度,加重晕动症
画面表现不佳:手机性能不足以支持高质量、高帧率的3D画面渲染,只能呈现一些简单的卡通风格画面,达不到“真人”的水平,这影响沉浸感
缺乏自然交互:由于手机的限制,目前还没有匹配的头手定位方案,难以达到令人满意的交互程度,只能依赖蓝牙手柄等传统输入设备
当然,还有一些其他的小问题,比如手机发热、起雾、超重、屏幕失真等等,虽然这些不是影响体验的主要因素,但在使用中也是相当烦人的。 接下来,我们就来看看Oculus对于这些问题是如何解决的,或许这也能解释为什么两者价格相差如此之大。
不受限制的视野
如果需要逼真的视觉体验,视野必须尽可能接近现实。 需要满足两个条件:一是接近人眼的FOV,二是跟随头部运动的视角。
上图左侧直观地说明了人眼的FOV特性:两只眼睛的覆盖范围不同,两只眼睛加起来可达180多度。 当然,在平面液晶屏上很难达到这种效果,所以目前主流的VR硬件(不包括Cardboard)都是采用凸透镜来达到100~110度左右的FOV。 虽然达不到自然视觉的水平,但与传统FPS游戏(FOV 50~60度)相比,差距巨大。 进度直接影响到UI设计、交互、性能、场景设计、镜头等各个方面。 为了解决近距离通过镜头观看图片的变形问题,我们需要对图片进行逆向变形校正:
下图是正常的双视口渲染画面,以及Barrel Distortion变形后的效果(很多Cardboard游戏都省略了这一步):
图片来自我们的 VR 演示:Comet
但FOV越大,光的折射率越大,光散射现象越明显,给人的感觉是屏幕边缘的像素出现重影。
因此变形后,需要校正色散问题,即色差。 在下图中,我们可以看到边缘像素的RGB三基色的位置是错开的,这样通过镜头看就不会出现奇怪的分色现象了:
图片来自我们的 VRDemo:Comet
空间定位能力
对于头部运动追踪,Oculus 增加了一个外部红外摄像头,用于头部显示器的空间定位,也可以用于双手控制器(Oculus Touch)的定位。
当然,这种定位方式也存在FOV的问题,只适用于桌子前的小范围移动。 对于大范围移动,HTC Vive的Lighthouse技术更有优势,可以在5x5米范围内自由移动:
空间定位技术的引入,直接改变了游戏的操作方式,逐渐从“命令式”操作转变为类似“感应式”操作的自然交互体验,UI也不再局限于2D,开始发生变化到 3D 用户界面。
主流VR硬件参数
这里有一张表格,可以大致说明2016年主流VR硬件的参数(DK2和GearVR很多人体验过,收录对比):
从表中提供的数据,结合一些现场经验,可以分析出一些关键信息:
另外值得关注的是GearVR,它是最早商业化的平台硬件。 它提供了比 Cardboard 更好的体验,但它也受到功能的限制。 预计手机VR解决方案将在几年内推动VR设备的普及,毕竟手机是人人可用的。 有的,而且买配件的成本还是很多人可以接受的。
运动到光子延迟
有一个参数没有在表中,那就是延迟。 先给出定义:从用户开始移动到在屏幕上看到相应变化所需的时间:
从上图可以看出,从传感器采集,经过有线传输,游戏引擎处理,驱动硬件渲染画面,LCD像素颜色切换,到人眼看到对应的画面,中间的每一步都会造成延迟。 要达到理想状态,需要硬件和软件优化的密切配合。 目前公认的大多数人可以接受的VR延迟是20ms,很多VR硬件的时间刚好超出传感器和液晶屏的范围。
对于VR硬件来说,低时延是核心竞争力。 但目前还没有针对延迟的测试和评估标准,因此很难通过公开数据来评估每台设备的体验效果。 如果以20ms作为一个临界值,可以说其他品牌的VR设备大部分都不达标。
当前 VR 体验的主要问题
VR游戏在目前的硬件条件下还存在一些问题。 作为开发者,一定要搞清楚每一个问题的原因,解决能解决的,避免不能解决的。 只有在这个基础上才能做出好的体验。
晕车
“头晕”可能是大多数初次体验VR的人最直接的感受,就像晕车、晕船的感觉一样。 很多人可能正因为这个原因而放弃对VR游戏的期待,陷入“VR目前还不成熟”的境地。 那么为什么VR游戏这么容易晕呢?
你没有动,但屏幕在动:VR游戏体验者的身体通常是静止的。 如果他们在游戏中看到各种加速/旋转/震动,正常人是受不了的。 原理同晕车、晕船一样。
你动了,画面跟不上:这就是上面说的延迟。 很多时候硬件是满足了要求,但是游戏的帧数不够,也会造成严重的延迟。
身体原因:比如有人恐高,被置于悬崖边上的虚拟场景中,也会引发心理和生理反应。
原因1在游戏设计上是可以避免的,但是目前很多需要跑跳的游戏都比较局限。
原因2,主流硬件在延迟方面满足要求游戏开发素材,作为开发者,更需要优化性能。
原因3,从我们组几个人的经验来看,随着经验次数的增多,症状会越来越轻,说明人体是可以适应的。 而且,适当加入一些让身体做出反应的游戏场景,也是一种乐趣。
缺乏良好的互动
VR头显可以看成是一种显示输出设备。 对于游戏来说,还有一个重要的硬件:输入设备。 在VR游戏中,可以先放弃键盘鼠标的操作方式,因为view不行,只能盲目操作。 游戏手柄是一种折衷的方法,但它无法发挥VR的潜力。 理想的输入设备其实是两只手,这也是最自然的方式。 遗憾的是,无论是Kinect,还是LeapMotion,都无法完美支持双手交互的精准度。 因此,目前主流的VR手柄还是以双手柄为主,预计2016年下半年推出。在拿到Oculus Touch之前,我们尝试过基于Kinect的体感VR交互方式,虽然还不完善,但它已经可以看到未来交互设计的雏形。
图片来自我们的 VRDemo:3DHUD
GPU 性能不足
Barrel Distortion带来了一个问题:中心区域像素分辨率的损失,也就是说中心区域的像素被放大了,而边缘区域的像素被压缩了。 然而,人眼对视野中心的像素清晰度非常敏感。 为了保证清晰度,需要提高原始渲染分辨率,保证变形后的画面能达到液晶屏的像素密度。
图片来自我们的 VRDemo:Comet
以Oculus Rift为例,屏幕分辨率为2160x1200,渲染分辨率需要增加到长宽比的140%,即3024x1680。 再加上90FPS的帧率要求,每秒要渲染的像素数达到了4.5亿,相当于当代主机(XboxOne、PS4)游戏的7倍,与硬件要求差不多适用于 4k 分辨率游戏。 为了保证体验,他们规定了一个称为Oculus Ready标准的最低配置:CPU i5 4590,内存8G,显卡GTX970。
虽然PS4的渲染性能远达不到GTX970的水平,但相比PC能够提供一致的体验,这对于VR来说非常重要。 毕竟,不管你的游戏画面有多好,如果你玩的时候感觉头晕的话,那也不是什么好游戏。 幸运的是,距离 VR 普及还有一段时间,足以让 Oculus Ready PC 成为流行配置。
穿着舒适
很多目光短浅的玩家担心自己用不上。 事实上,主流的显示设备都可以戴上眼镜观看。 至于佩戴是否舒适,需要在工业设计上不断迭代优化。 目前来看,SONY的头戴显示器最舒服,Oculus home的手柄最舒服,HTC home的功能最强。 除了平台独占的VR游戏外,大部分都是同时兼容这三个公司的设备,所以从体验上来说,差别不会太大。
VR游戏开发与传统3D游戏开发的区别
VR游戏的开发和制作的差异远没有很多人想象的那么大,更多的是设计思维的转变。 所以游戏素材下载 免费,如果要开发VR游戏,前提是要能够开发3D游戏。 核心是游戏本身。 VR只是体验的提升。 如果你要写一个“VR游戏开发教程”vr游戏开发需要学哪些,那么里面90%的东西都和VR没有直接关系。 但是,这10%的差异就是VR的核心竞争力,因为它可以给你带来“前所未有”的体验,也为我们提供了很大的玩法创新空间。
怎么玩
与主机游戏类似,它专注于核心体验,即相机、控制和角色。 很多人可能认为VR游戏只适合FPS,其实不然。 只要沉浸感好,什么类型都可以,RTS、MOBA、AVG、MMOG等都可以。 需要注意的核心点是Camera和Control,直接关系到你会不会觉得头晕,能玩多久。 只有保证了操作体验和沉浸感,玩法才有意义。
当然,VR也为我们提供了一些新的特性,可以用在玩法设计上:
图形
如果我们使用Oculus Ready硬件标准,基本上可以预期画面表现几乎等同于上一代主机的画面,也就是Xbox360和PS3后期的水平。 我们试玩的VR游戏demo在项目启动的时候要求比较高,GTX970+Oculus DK2的硬件下,优化后可以流畅运行。 以下是最终版的技术选型,供大家参考:
图片来自我们的 VRDemo:Comet
在美术制作方面,有消息称Normal Mapping和Billboard Particle不再适合VR渲染,但事实并非如此。 这些效果只有近距离观看才发现是假的,远距离就可以随便使用,所以不用担心制作上的差异和传统3D游戏的差异。 近距离只能用Parallax Mapping和Mesh Particle来保证不穿,但很少有情况需要这样,跟场景和特效设计有关系。 总的来说,美术的制作与传统3D游戏的区别并不大,除了UI。
图片来自EIPC的Showdown Demo
相互作用
由于目前主流的VR操作设备已经趋于统一,大家有以下特点:
●可模拟双手的空间位置和旋转
●通过手柄上的按钮触发命令式操作,如抓取、发射等。
●仍保留传统的“操纵杆”,但使用较少
●这里放一段Oculus Toybox Demo的演示视频,可以很好的说明VR下的人机交互是什么样子的:
图片来自 Oculus Toybox 演示
视频演示:Oculus Touch 的 Toybox 演示 Oculus Touch 的 Toybox 演示 - Inside Look
可以预见,基于手部的物理交互将会越来越多,这意味着物理模拟在VR游戏中的应用将会更加普遍。
同样,UI设计不再推荐2D平面化,而是更喜欢3D效果,比如科幻风格的全息投影,或者使用物理模型。 或许,未来VR游戏中的“UI”将由3D艺术来制作。
图片来自网络
声音特效
在传统的3D游戏音效中,一般通过音量变化判断距离,通过频率变化判断相对移动。 以空间定位为例:
在VR中,立体声耳机可以随着头部转动,也就是说我们可以通过头部的两个通道来判断上下左右前后左右。
图片来自OculusConnect_Introduction_to_Audio_in_VR.pdf
同样,它除了可以转动头部,还可以进行小范围的移动,不用走路也能判断出声音的远近。 以前相当于背景音的环境音效,现在也能分辨大概方向
图片来自OculusConnect_Introduction_to_Audio_in_VR.pdf
因此,在VR游戏中,越来越多的人会越来越重视3D音效,甚至开发出新的玩法,比如游戏田园
有兴趣的同学推荐阅读这篇文章:VR声音中的声音体验如何? 与传统音响有什么区别? 地址:(复制地址用浏览器打开)
想听效果的可以看看这个Demo:Spatialized audio demos in VR地址:(复制地址用浏览器打开,什么,YouTube进不去?睡吧,哈哈)
VR游戏未来发展预期
现在主机平台上有一类游戏,主打高质量的剧情体验,操作非常简单,俗称“游戏电影化”。 目前VR圈内也有大量人在尝试制作VR电影,但是基于360度视频拍摄技术在VR中的沉浸感不是很好vr游戏开发需要学哪些,传统的电影拍摄方式并不适合VR视频制作。 因此,电脑制作的3D动画电影在VR方面具有先天优势,结合VR头显的一些输入特性,甚至会出现“电影游戏化”的产品。 另一方面,以UE4为代表的游戏引擎,实时渲染画面效果已经达到CG级别,技术上具备制作实时渲染电影的能力。 可以预见,未来VR互动电影与VR游戏的界限将变得非常模糊。
EPIC 的 Infiltrator TechDemo
下面是国外的VR主题乐园THE VOID。 相信在不久的将来,这种体验会像电影院一样火爆
随着技术的进步和成本的降低,VR和AR将像智能手机一样走进我们生活的方方面面。 对于VR游戏,很多人都有和我一样的梦想,希望在有生之年把它变成现实:
图片来自刀剑神域
如果您觉得我们的内容还不错,请扫描二维码打赏作者并转发到朋友圈,分享给您的朋友吧~
本文为腾讯虫虫独家内容。 转载请注明作者及出处“腾讯Bugly()”。