在前面,我们实现了敌人的大部分功能,在这篇里面,我们将一些需要设置的内容填充一下。
在填充之前,我们先增加一个角色死亡时播放的音效。
打开角色基类,创建一个属性用于设置死亡音效
UPROPERTY(EditAnywhere, BlueprintReadOnly, Category="Combat")
USoundBase* DeathSound; //死亡音效
然后在死亡时,播放音效
void ARPGCharacter::MulticastHandleDeath_Implementation()
{
//播放死亡音效
UGameplayStatics::PlaySoundAtLocation(this, DeathSound, GetActorLocation());
...
这个设置完成以后,我们整理一下,每个敌人都需要设置的音效内容。
- 需要设置一个混合空间,从待机到移动动画的切换,根据角色移动速度进行变动。我们需要在移动的动画中设置脚步。
- 创建并添加受击蒙太奇,并在蒙太奇中添加受击音效
我们还可以适当的调整声音高音偏移,让其每次播放的声音效果不同。
在蒙太奇中,合适的位置将其添加。
- 添加受击后出血的模拟效果,在UE5中,我们使用Niaragra粒子系统
- 添加死亡音效
- 添加攻击蒙太奇数据,设置蒙太奇,以及索引标识标签,和攻击的部位位置,ImpactSound是击中目标后触发的音效。
- 对于攻击蒙太奇动画,我们需要在里面添加武器的音效
- 对于远程攻击的敌人,会生成投掷物,我们需要在投掷物身上设置对应的效果,分别是击中时的特效和音效以及飞行中的音效
对于场景内的物体,我们需要设置其可以接收投掷物的重叠事件
为了防止多次触发击中效果,在触发一次击中效果后,将bHit设置为true
- 处理食尸鬼的攻击效果,我们想让食尸鬼的攻击范围从手部划过一条弧线。
为了实现这个功能,我们制作了一个条带渲染Niagara
使用它也很简单,在攻击的蒙太奇中添加一个定时Niagara效果,它能够在一定帧中生成,在结束时销毁掉。
它需要绑定一个骨骼插槽位置用来设置生成位置,以及一个Niagara
设置好粒子和插槽
设置好生成的开始和结束
在骨骼上添加两个插槽,用于左右手的骨骼位置设置
进游戏查看效果。