【PC游戏】黑神话里的技能都是如何实现的


3楼猫 发布时间:2022-10-29 10:17:11 作者:DeY_O Language

我们看到的游戏画面,都是游戏制作者想让我们看到的画面。玩游戏真正运行的逻辑则一行行代码,他们都是不可见的。这也是为什么游戏里经常出现各种各样的穿墙穿模bug。虽然你认为你眼睛里的画面不符合逻辑,但数据上,电脑认为他是符合逻辑的。

【PC游戏】黑神话里的技能都是如何实现的-第0张

变身技能

变身。这个技能要实现起来并不难。一般制作游戏时,我们都会给角色和装备添加一个共同的父级。如这样:

【PC游戏】黑神话里的技能都是如何实现的-第1张

一般,我们操控的对象都是第二级或者第三级的Role,而Player则是下面那些子级的父级,而我们只要替换这个父级下的Role对象替换成别的模型,再给他挂上已经准备好的对应的目标逻辑就行了。游戏里的变身基本都是这样实现的。

【PC游戏】黑神话里的技能都是如何实现的-第2张

撑杆跳

角色的棍子变长应该是动画师做的。游戏里,角色的装备模型一般都是角色模型下面的子级,如上图的WeaponPos,就是放装备的地方。如果要让角色跟随武器移动,这在程序上实现起来是非常麻烦的。(简单来说,就是父亲做什么,儿子也会跟着做什么,但儿子做什么,父亲不会跟着做)而由动画师来做的话就简单许多。

动画师做一段连续动画,再给这段动画需要由玩家操控的地方添加事件,然后再通过按键输入,来确定是否播放下一段动画,播放的话执行什么逻辑,不播放的话执行什么逻辑。

【PC游戏】黑神话里的技能都是如何实现的-第3张

另外,他攻击的时候旁边有一个透明特效。那个特效在棒子还没有挥下去的时候就出现了,而那个特效棒子的长度是固定的,而角色手中的棒子打完就恢复了,所以那特效的攻击距离应该才是真正的攻击距离。

【PC游戏】黑神话里的技能都是如何实现的-第4张

转圈圈

转圈圈。这个应该是在周围形成一个空气墙。在游戏制作时,制作者通常会给每个对象添加不同的层级。比如我们会给玩家添加玩家层级,怪物添加怪物层级,子弹添加子弹层级。

【PC游戏】黑神话里的技能都是如何实现的-第5张

玩家层、怪物层、子弹层

然后,我们可以给这个空气墙添加这么一个逻辑,当处于怪物或子弹层级的目标与空气墙发生互动时,我们可以分别进行处理,是让怪物层级的目标被攻击,还是让子弹层级的目标被销毁。而不属于目标层级的物体,则直接无视空气墙。

【PC游戏】黑神话里的技能都是如何实现的-第6张

不管什么弹道攻击,生成的都是这个白光

一般的FPS游戏里的弹痕,都是子弹被销毁时留下的特效。这个转棍子技能在成功后秤生成的光箭和那个白色的闪光特效,应该也是那个盾在检测到有物体碰撞时生成的,而不是原本的箭。相应的效果,在英雄联盟的亚索和布隆上也能看到,只要有弹道攻击击中他们的盾牌,那个盾牌生成的都是同一种被击中的特效。

【PC游戏】黑神话里的技能都是如何实现的-第7张

画圈圈

画圈圈。和前者的转圈圈类似,也是生成空气墙。不过他们对不同对象的处理是不一样的。一个是打断原本移动动画,播放击退动画,一个是进行攻击逻辑,让对方播放受伤动画。


【PC游戏】黑神话里的技能都是如何实现的-第8张

影分身


影分身。这个很简单,就是在周围生成一堆角色模型,然后给他们挂载了简单的AI。

【PC游戏】黑神话里的技能都是如何实现的-第9张

定身

【PC游戏】黑神话里的技能都是如何实现的-第10张

铁头功

定身和铁头功。这两个技能和英雄联盟里的沙漏是一样的,角色的行为都是一段段动画,而他们则是让目标物体的动画暂停,暂停时免疫伤害或伤害加倍。暂停完是继续播放之前的动画还是播放新的动画。这方面,应该要数塞尔达玩的最6了。

想起来容易做起来难。要实现游戏里的技能效果有很多方式,我这里只是列举了一种,而且只是让技能看起来像个技能而已,像什么伤害计算属性克制之类的,牵扯到那些东西会更加复杂。


 

#游戏知识分享官##游戏知识杂谈##单机游戏##黑神话:悟空#


© 2022 3楼猫 下载APP 站点地图 广告合作:asmrly666@gmail.com