想开发ARPG类型的VR游戏?这些技巧一定要知道
闲来无事,聊聊前段时间刚完成的一款移动端vr上的ARPG游戏制作经验吧。
以下简单总结几点,如果大家有兴趣,就详细开续篇,毕竟不是一言两语能说清的。
视角
如果说第一人称视角是vr最贴切的视角,那么想通过第一人称来表达一个ARPG来讲,可能并不显得恰当。
无论是主流的手游ARPG,还是单机主机上的ARPG这种主打动作表现力的作品,一般不会选择第一人称。
首先,第一人称就是以模仿人类视觉诞生的,视觉范围内自身的可见部分很少很少。
反而采用第三人称或者越肩视角来表现,可以获得更多的主角身上的动作,形态。
其次,一个爽快的动作ARPG游戏,会有大量夸张的行为动作设计,包括冲刺,翻滚,跳跃等等。
然而,以第一人称视角来体验以上内容时,会触碰到vr比较大的忌讳,就是快速大范围的摄像机位移,会带来极大的眩晕感。
所以,此时的第一视角去表现ARPG动作游戏,并不是一个太好的选择。
使用第三人称选择视角是一个很关键元素,首先排除了第一人称的选项,那么如何接下来选择?
vr一定要有冲击力,而vr的摄像机类似摄影中讲到的大广角。而大广角摄像机构图主要凸显画面的张力,和气势。
所以一些特写画面选择低角度倾斜来提高主角对画面的张力。(有没有听说过大广角拉大长腿?)
而常规战斗中建议采用上帝视角,并且要拉近一些,好让主体显得大,更有魄力。
导致眩晕感除了帧数过低或者不稳定的因素外,在一个范围内快速的移动也是常常导致眩晕的元凶。
怎么讲?举例,频繁的快速的转动视角(你可以带着vr头盔快速的左右转头;在vr场景中朝一个方向快速的旋转。)以上均会导致极大的眩晕感,而且远远高于帧数不足影响的范围。
那么,在实际游戏中,一些视角的转换必不可少,如何来处理呢?
我体验的原则就是,要么不转,要转快转。快不是会导致眩晕么?
那是因为快转的过程会导致眩晕,如果瞬间切换到你需要的视角,省略过中间的过程,则会大大避免眩晕的可能。
唯一的缺点就是瞬间切换视角带来的就是方位感错乱,需要大脑重新定位方位。但实际上体验来讲,找不到北,远比恶心来的更好一些。
在vr游戏中的视角体验,无非就是那个摄像头的缩呈现的内容。
那么,一些特效,效果,只要保证在摄像头路径之内可以表现即可,再此之外的效果可以省略,节省性能消耗。
另外,找到一个充满张力的视角,可以第一时间俘获玩家的心。这可考研到构图的功力。
这个难题主要是因为采用了第三视角后,摄像机和主角有一定的距离,而这个距离会在场景某些角度转换时,导致穿墙。
印象中,U3D引擎里,如果摄像机在墙体中,会直接删除墙体的内容,也就是画面中还是正常的主角的样子。
但是如果距离过远,比如摄像机穿出到了墙体之外,那么就只能看见场景的外墙了。
这个时候需要制作一个功能,就是做一个摄像机trg。围绕着场景摆放trg,注意摆放是否有死角。该trg的作用在于,阻挡摄像机的穿透。一旦摄像机遇到trg后,不会再穿透而过,只是保持摄像机和主体的距离,做向上的平移(相当于改变摄像机和主体的夹角而半径不变,该技术在主流的pc或者主机大作中很常见。)
系统
以往的中国网游模式系统,模块基本都是那几样。我这里要说的,是大部分都不可行!
反而可以多参考一些单机游戏的设定。
主要因为进入vr世界后,总不能还照搬那一套满屏幕的UI按钮,大大的加特效的充值或者商城的按钮!
所以根据你实际对应的操控设备(键盘还是手柄等)来进行UI的重新规划。
而且现今的vr系统属于启蒙阶段,没有特别多的三防应用来支持你的游戏,比如快捷的vr支付应用,一个人性化的vr键盘输入应用,等等。
所以采取传统单机游戏设定的思路,别做那种频繁的道具内购,以及提供人性化的id生成等等。
交互
以往手游主要就是一个平面上的几个icon,但是进入vr里面由于视角是大广角,所以透视和畸变的关系有点考验到制作人对景物的判断了理解了。
常规的2维UI样式放进vr了,傻的不能再傻了。
尝试3维化UI的思路吧,让UI有一定的透视,厚度,以及极大的简化UI在画面中所占有的比例。
(触屏智能手机,特点是实体按键少,而可视化触摸范围大,所以将UI直观的呈现于画面上是一个便于操控的方案。
而复杂的vr游戏或者应用,大多寄托于第三方操控设备,比如手柄,键鼠等,这样很多功能可以通过实体按键来调用,而不是全部陈列出来通过凝视的方法去触发。同时大量的不协调UI元素,会让vr沉浸体验大打折扣)
如果说你的游戏还是传统的arpg,没有高端到捕捉动作和语音视频的阶段。
那么和其他玩家的交互无非就是快捷指令或者是打字输入。
恩,现在真的没有太好的交互方案,做一些表情和预设快捷回复话语,我觉得可能更好一点吧,对于交流来讲。
但是VR下的虚拟键盘输入方案,还是没有什么更好的选择,也就是手柄或者凝视选择,体验都那样,不过ps4也不过如此嘛,凡是手柄输入,完全可以照搬那一套的,除非你加入搜狗智能词库语音输入什么的才会有点好转。
那么对于这种硬伤,最好做一些便捷选择,比如说随机生成名称,不用用户输入,以及快捷回复语等等。
如果游戏中存在内购内容,支付操作是一个比较麻烦的事情。因为要输入关联的账号和密码什么的。
但是二维码是一个天然的简化操作的内容,所以我们可以利用它。
前提是对接的支付平台支持vr下的支付功能,因为在vr中,如果调用一个非vr的应用,它并不会适应vr双摄像头的方案运行,也就是跳出vr环境了。而有些平台的vr应用,跳出到桌面后,相当于关闭。(比如gearvr)所以在自身没有能力做类似支付宝或者微信的支付平台时,还是指望他们支持vr的(支付宝貌似有了支持vr的支付)。那这样,接了支付宝的SDK,直接调用即可。
在这里只是写一些支付方面的想法,比如在游戏中操作,生成了支付订单,然后订单信息形成一个二维码。
在vr中调用该二维码是不难的事情,然后长时间凝视,或者凝视确认后自动识别二维码内容(如果直接通信都可以跳过这个阶段)只需要选择确定付款或者拒绝。
前提是需要做到该应用接了支付应用的sdk。
性能
在移动端的游戏,说白了就是手机能玩的vr游戏来讲。
硬件的帧数是一个硬伤,不过别被什么“单眼90帧可避免眩晕感”的言论来被误导。实际证明,稳定的30帧运行足以满足vr体验,当然更高的帧数更好,但是目前不现实。
而这个概念中,稳定两字最关键。
就是首先大局上,控制帧数,让场景和人物元素导致的渲染消耗过大得以控制。比如说控制视野中出现的单位个数(一个怪物为单位的话,面数很多,而且都是单独计算,目前没有将相同贴图算作同一消耗的好方案)。另外场景中几何图像不要太过复杂,毕竟是移动端游戏,太多的曲面意味着消耗更多的面数,吞噬着渲染的效率。
另外就是看粒子特效的喷发数量峰值,尽量控制在低水平先上。不然忽高忽低的帧数跳动,是眩晕感最根本的来源。
说的就是当前渲染的单位的数量,越多效率越低,帧数越低。
而且在战斗中会牵扯大量的粒子特效播放,粒子特效中含有的粒子都是独立的渲染单位,在瞬时爆发出很多的单位时,必然会导致渲染速度下降,帧数降低。
在U3D中,有一个功能就是在场景编辑时,可以选择多个场景片组合成一个集合。在运行时,一次处理一个大的集合后,它会有处理记忆。也就是说在第一次处理大的集合时会卡顿一些,但是加载完成后,后续渲染并不会占用太多的性能。而每一个模型的片没有整合,都会单独去渲染处理的,这样会导致性能大大的降低。
在粒子特效中,粒子数量多,往往会带来更细腻的表现。但是消耗性能已经不适用于移动端设备的支持了,所以不要追求粒子的数量,而是取巧的让粒子片大一些,数量少一些,通过夸张的视觉效果掩盖细腻不足的情况,节省出性能的空间。
......
近期热文