引文:之所以写下这篇文章,不仅仅是通关了这个游戏,被游戏传达的情感所震撼,而且作为一个正在进行主机游戏开发的程序员,被这游戏中大鹫的羽毛、身体动作和AI,以及摄像机的部分所深深吸引。我不得不承认,他们的首席程序员Makoto Izawa的技术水平,够我花个五年到十年的时间追赶的,不过,现在游戏引擎的发展,也给我的压力减少了很多。
(事先声明,本文游戏图片来自于PlayStation官网,猫图来自我家雪灵,少量技术图片来自谷歌,本文不会剧透)
先来说说我猜想的羽毛制作方式,根据目前的物理引擎技术,全身的羽毛估计是以带角度限制的关节连接方法,安装到大鹫身上的。经过观察,羽毛和周围的物体并没有实际的碰撞,所以羽毛受到的物理影响,基本上是大鹫身体的带动和风场的力学运算。
有一些羽毛炸起的动作,用来表现大鹫的情感,估计是程序做了特殊的运算处理,施加到每根羽毛一些反向力。按照我很随便的估算,全身的羽毛应该不会超过1000片,故此,遍历所有羽毛,并进行一些物理运算,对目前的PS4主机来说,并不会带来太大压力。人物爬上大鹫的时候,局部的羽毛飘动,我认为也是依靠小范围的影响羽毛的物理运算的方式实现的。题外话,我发现游戏中掉帧,主要是由于要动态加载和卸载新场景导致的,如果场景已经加载完成,死掉再次返回,同样的位置就不会掉帧。
另外,飘落的羽毛,应该都是单独的模型,在开场的时候,地上散落的羽毛,非常类似小灌木的做法,用几个面片做十字交叉。空中飘落的羽毛,应该是类似粒子系统的方式来实现的,由于数量非常少,所以也不会增加太多的计算。
再来分析一下身体的动作,大鹫的身体,如果我来设计,大概会分为这么几个主要部分:头,耳朵,脖子,前肢,后肢,躯干,尾巴。作为猫的代表动作,耳朵一定是传达情感的很重要元素,根据外界的环境和人物的互动,两只耳朵可以躲避墙壁,前后抖动,竖起来倾听呼唤。脖子用来连接头和身体,仔细观察可以发现,大鹫在狭窄的空间中转身时,和猫的动作非常相似,先是接近180度的转头,然后身体可以用一种类似折叠的方式,原地转身。再说说尾巴,大鹫的尾巴减少了很多猫的行为特征,比如开心时猫会竖起尾巴,但是大鹫不会,大鹫的尾巴除了在游戏中特有的很多功能以外,平时的动作,就是增加跳跃时的视觉平衡感。最后再说说大鹫的爪子,据我观察,爪子的每跟手指都是采用了单独的多段骨骼,再加上IK(骨骼反向动力系统),爪子可以实现踩在一些尖角上时,手指完全抓牢,再加上地砖碎裂的效果和AO(光影遮蔽系统),呈现出真的踩在环境中的感受,并且体现出巨兽的重量感。
还有AI的部分,我觉得大鹫的AI部分,最难做的应该是狭小空间的动作判定,很多时候如果大鹫的姿势不对,或者执行动作的空间不够,会导致大鹫完全没有反应,或者原地跺脚,顺带产生的时间延迟和失控感,也正好符合设计师要表达的情绪。了解到这一点,大家也可以测试一下,大鹫在获得了正确的指令时,其实反馈还是很迅速的,明显的特征是,接收了正确的指令,会先原地叫一声,然后开始后退,开始执行指令。
再说说摄像机,由于设计的需要,在非常狭小的空间中,主角还要能挤到大鹫和墙之间,导致完全没有摄像机的位置。现代游戏的第三人称摄像机,都是要通过碰撞运算,尽量避免出现穿越模型的情况出现。所以,大鹫中的摄像机在躲避碰撞的动作瞬间会黑屏一下,导致很多极限情况下,摄像机卡在一个位置,不停的黑屏,完全失控。这里我想出了一个解决方案,就是如果出现这种情况,应该把摄像机的拍摄焦点切换为大鹫,然后在大鹫周围寻找可以停留摄像机的空间。由于主角爬上大鹫或者从大鹫身上下来,并不一定需要视觉观察,玩家可以连续推上,完成爬上,连续按X键实现下落。所以,应该让玩家视觉尽量处在一个舒适的位置,盲操作,我想,也会比现在连续黑屏闪烁的体验好很多。
最后,我还想说说一个特别传神的技术点,实现起来虽然不难,但是也会占用大量的开发时间,这个就是手柄的震动。PS4 DualShock手柄从字面上也可以看出,这个手柄有两个振动器,一个高频一个低频,分别位于手柄的左右两侧,大鹫这个游戏,全程使用手柄振动来增强大鹫的生物感。抚摸大鹫脖子时,会获得像猫一样的呼噜振动,大鹫挥动小翅膀时也会获得发力感。如果能够采用XboxOne手柄的4个振动器,那全程立体的振动体验估计会更棒一些吧?
我猜想的这些技术点,说起来轻松,真的从无到有的都实现出来,并且做到现在游戏中的状态,是非常困难的,需要大量的学习和研究,并且这种技术点的突破,是无法靠增加团队人数提高速度的。进行了这些思考以后,也非常能够理解为何这个游戏从PS2时代一直开发到了PS4时代,换我来做,估计要开发到PS5时代吧,哈哈~
最后放上几张我家“雪灵”的照片,对比一下大鹫的姿态:
最后请容许我打个招聘广告,队友游戏(《鲤》开发团队)正在开发一款主机平台3D动作冒险解谜游戏,项目目前处在预制作阶段,需高级Unity程序员和谜题关卡设计师,坐标天津。
邮件详谈:hi@dotoyou.net 李喆 天津队友游戏
评论区
共 75 条评论热门最新