VRCORE系列公开课第八站来到了美丽的厦门,VRCORE与四位在VR游戏开发领域有着丰富经验的主讲人携手,为开发者们献上一份《VR游戏进阶攻略》。
VRCORE系列公开课第八站来到了美丽的厦门,在这个空气中处处弥漫着文艺和浪漫气息的海岛城市,VRCORE与四位在VR游戏开发领域有着丰富经验的主讲人携手,为开发者们献上一份《VR游戏进阶攻略》。
第一位主讲人是来自指挥家VR的联合创始人&COO陈铭心,他分享的主题是《如何打造VR游戏的沉浸感》。他从为什么要做VR游戏、什么是沉浸感以及在VR中要注意哪些方面来帮助打造它的沉浸感、AI与真人三个方面入手,以射击类游戏为例进行了深入地讨论。
1.为什么要做VR游戏?
游戏开发者们追求的终极目标:纯粹的游戏体验。在传统的二维游戏世界,设备和技术存在非常多的局限。而VR游戏是解放人类游戏天性的过程,VR带给我们的沉浸感超出了我们以往的所有想象,也非常符合“纯粹的游戏体验”这样一个终级目标。
2.什么是沉浸感?在VR中要注意哪些方面来帮助打造它的沉浸感?
“粹的游戏体验”秘诀在于沉浸感,在一款好的VR游戏中,应该从画面、交互和玩法3个方面入手,体现沉浸感。
画面——在传统的二维屏幕游戏中,容纳性非常高,即使出现小的bug,也不会太过分散玩家的注意力。但是在VR游戏中,带上头盔以后,看到的画面就是你所在的世界,周围环境的一点点不和谐也能引起玩家的注意,让其产生不真实感,从而严重影响玩家的注意力。
交互——传统的交互就是键盘wasd+鼠标,完成行走和射击的体验。在VR游戏中,我们是否能够做到真正的行走?什么样是符合本能反应的射击体验?用什么样的设备去匹配它?这是我们在交互方面可以去思考和探索的事情。现在手柄已经非常能够满足游戏射击交互的需求。
玩法——“忘记虚拟现实,才是虚拟现实”。玩家也许没有玩过真的枪,但是基于生活中的知识,大家会知道射击是一个怎样的过程。所以在设计玩法时,需要对每个细节进行深度处理。
3.AI与真人。
在传统的游戏中,加入一个拟人类的角色是非常常见的,但是在VR游戏中完全不一样。虚拟现实是一个非常拟真的环境,如果有一个人物出现在你面前,极其像人,会产生恐怖谷(Uncanny Vally)的效应,玩家会产生莫名的恐惧感。所以,在VR游戏中放置一个拟人的NPC的角色需要经过慎重考虑。
如果一定要在游戏中安排NPC角色,要限定其形象设计,尽可能不要像人,同时限制NPC出现的时间和路径。因为在VR的世界中,要追踪每一个物体的来源和去踪,不然会破坏纯粹的游戏体验。
人是最高级的AI,建议大家如果要做一款VR游戏的话,尽可能加入真人互动,这样可以在最大程度上避免NPC以及设计上对游戏产生的影响。
第二位主讲人是来自晶石互娱的CEO高翔,他分享的主题是《VR游戏开发的实践分享》。他先介绍了VR平台的特点以及VR游戏的特点,最后结合自己制作产品的过程和心得进行了VR案例分享,针对初创团队给出了游戏制作和开发的建议。
1. VR平台的特点
首先,高翔列举了目前在PC端、主机端和移动端的代表平台。
从技术角度来看,PC端各厂商在推出时非常注重对开发者的支持,在SDK这一块是非常便利的。移动端在SDK层面也没有太大难度,但是在资源优化上有很大压力,例如Gear VR要求游戏能跑到60帧,这个要求是非常高的。PS(Play Station)VR(主机端)来看,对不同材质的渲染的支持都是有差别的,甚至包括整个的开发环境和其他几个平台差异也是比较大的,相对而言是一个偏封闭的开发环境。
(中国团队使用PS VR平台制作游戏需要经历的环节)
2. VR游戏的特点
沉浸式的输出。沉浸感来自两方面,首先是模拟人眼的成像原理,这样能让大家看到真实的3D环境。其次是触觉输出,传统游戏的沉浸感主要在视觉和听觉上,VR在触觉的输出上会有所强调,例如震动、手柄和手感枪。慢慢地甚至会加入味觉和嗅觉的输出。
参与式的输入。PC阶段是鼠标键盘为主的输入,在主机上更多是手柄的输入,在移动端更多是手指的触摸。在VR中,这方面的变化非常多。例如戒指,可以追踪你的手指的位置和角度变化,周围也有按键可以进行一些操作。还有手势的识别、玩家通过自己移动所做出的输入等。VR游戏的输入端会比之前任何游戏阶段都丰富,从而提升游戏体验。
3.VR案例分享
高翔从产品立项、制作难点和解决方案以及美术制作三个方面进行了介绍。
制作难点——
性能差异:PC端和移动端计算能力和渲染能力差异很大,怎么能使产品在比较高画质的情况下,可以在PC端和移动端都能跑。各端对美术的承载能力也存在巨大差异,例如PC端对贴图会有材质和大小等方面的限制。同步频率和运算周期上都会有差异,在设计时需要考虑进去。
操作差异:各端输入设备不同,导致操作方式和游戏体验的差异。
解决方案——
统一标准:Q版风格定位,不采用实时光照系统;制作便捷性的插件工具,降低维护成本;采用预渲染的方式,提高移动端的画质。
差异处理:模型针对性微调;光照控制和玩法微调。
第三位主讲人是来自HYPEREAL的游戏总监章海灵,他就《VR游戏设计探索和快速迭代开发》进行了分享,从什么是VR游戏以及VR游戏相对于传统游戏的优势出发,进而重点介绍了打造VR沉浸感所需的9个元素。
VR游戏不仅仅是视觉沉浸,更重要的是玩法交互。游戏作为一种娱乐体验,需要让用户能够深度的参与到游戏体验中,而不仅仅是观赏。和传统游戏相比,VR游戏具有三大优势:
更强的虚拟世界交互的沉浸感
更真实的体感交互带来的自然本能反馈
更深入的虚拟多人交互的代入感
沉浸感是多种视觉体验和交互操作融合在一起带给人的心流(FLOW)状态,其实是一种综合的感官体验,缺一不可。打造VR沉浸感需要以下9个元素。
90帧——是一切成功的基础,脱离稳定的帧数讲功能和需求就是耍流氓。当你的帧率正在改变,不能和屏幕(在本例中为90Hz)的刷新速率匹配均匀,玩家感知到的颤动/撕裂和各种视觉就会出现扭曲、畸变,影响沉浸体验。
第一人称——好的沉浸感可以让用户忘记自我,第三人称虽然可以减少眩晕,但是它始终让用户感觉是在游戏,而不是在真实环境,身体本能会排斥这种临场感。
自由移动——很多人担心自由移动会让玩家头晕,但是第一人称移动真的会晕吗?这个问题还有待验证。在游戏制作中,放弃自由移动等于放弃了未来的扩展性。
自然无拘束的双手——解放用户的双手,让用户的双手能够自由操作,可以使其更加投入。
写实的场景——达到身临其境的效果。
基于现实的武器和操作——真实的武器更容易引起用户共鸣,而不是思考。特别对于动作操作体验,需要让用户按照本能感官操作,而不是让用户思考操作是否合理。
操作的视觉反馈——尽量通过角色动画和目标本身的特效来表现;配合手柄力给出回馈;鼓励用户探索不同的手势和力度使用武器;减少镜头特效对于玩家的干扰。
契合游戏的交互界面——悬浮界面保证用户可以浏览到信息而不被阻挡;触感交互让操作更真实和自然;VR内的GUI全3D化,而不是传统的2D UI,避免画面突兀。
音效反馈——没声音再好的戏也出不来。需要注意的是,VR游戏中音效播放使用3D音效,和人耳位置前后,高低角度要做好适配。
如何减少用户眩晕感
优化再优化,提高帧数、保持稳定。
减慢移动速度,可以用传送作为候补。
左右旋转可以,但不要上下翻转。
放弃Camera Shake。
淡入淡出也是个好选择!
控制单局时长,因为晕动症会跟随时间加强
设计上也可以减少用户移动频率
帧数!帧数!!还是帧数!!!
如何快速迭代开发?
采用突击小队的开发模式,启动2~3人的核心小团队,团队中每个人都是多面手,了解程序、美术和策划各个工种,能够相互承担功能需求。团队主要承担核心功能原型制作,在有限资源情况下快速验证和实现功能原型。
团队工作原则:
原型说话
乐趣和体验第一位
快速验证,快速试错
放弃冗长的文档,紧密沟通
积极拥抱变化
第四位主讲人是来自AMD的中国首席架构师&VR首席设计师邓力,他分享的主题是《Performance Considerations for Virtual Realities》,主要讨论了VR中的性能优化问题。
为什么性能对VR这么重要?如果性能跟不上,会造成眩晕等诸多问题。
VR在性能上最大的挑战就是10ms(毫秒)的限制。传统的手机游戏是24-30帧每秒,转换下来就是33-42ms每帧,而现在需要做到10ms。挑战不仅仅是时间上缩短3-4倍,还有运算量成倍的增加以及设备发热的问题。
分辨率从720P到4K,运算量增加10倍。
帧数从30提升到90,运算量至少增加3倍。
单眼渲染到双眼渲染,性能增加至少1.5倍。
总结下来,技术上需要40-60倍的渲染能力的提高。
渲染技巧
低级——双眼渲染的话,很多人会把左边渲染一次,再把右边渲染一次,这是一个非常简单低效的办法。
中级——用几何着色器把几何图形从左眼复制到右眼,但是这个过程很慢。
高级——使用硬件instancing的支持。
更高阶的做法是使用uber instancing。
Instancing是硬件厂商设计用来降低渲染运算量的一项技巧,使用之后可以降低20%的运算量。
像素渲染的做法:
View Distortion Stencil——把周围看不到的区域去掉,可以节省10%-17%的渲染运算。
View Distortion Warp——在VR中,所有的图像都存在镜头的畸变,需要进行一次反畸变。反畸变会造成的问题是,之前非渲染的地方之后仍需要渲染,否则会出现黑边,用View Warping可以把这部分去掉,再次获得15%的性能提升。
View Bypass:传统的渲染管线模型不适用于VR,因为计算眼睛参数的时间太提前了,会造成视觉的延迟,使用户感觉眩晕。把view mapping的环节替换到即将渲染的时候,再进行一次计算,可以去掉延时,这种方法叫做view bypassing。
最后,邓力通过一个具体的案例展示了instancing技术的运用。
更多详细内容,请继续关注后续推出的公开课视频。
VRCORE虚拟现实开发者大赛仍在火热征集开发者作品,看完了讲师们精彩的分享,别忘了报名参赛哦!