最终效果
受击闪白效果
新增白色材质
放在敌人身上效果
新增代码控制闪白效果
/// <summary>
/// 闪白
/// </summary>
public class EntityFX : MonoBehaviour
{
private SpriteRenderer sr;
[Header("闪光特效")]
[SerializeField] private float flashDuration = 0.3f; // 闪光持续时间
[SerializeField] private Material hitMat; // 受击时的材质
private Material originalMat; // 原始的材质
private void Start()
{
sr = GetComponentInChildren<SpriteRenderer>();
originalMat = sr.material; // 记录原始的材质
}
//执行闪光特效
public void PlayFlashFX(){
StartCoroutine(FlashFX());
}
// 执行闪光特效的协程
private IEnumerator FlashFX()
{
sr.material = hitMat; // 切换到受击材质
yield return new WaitForSeconds(flashDuration); // 等待指定的闪光持续时间
sr.material = originalMat; // 恢复原始材质
}
}
受伤时调用
entityFX.PlayFlashFX();
效果
完结
赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注
,以便我第一时间收到反馈,你的每一次支持
都是我不断创作的最大动力。当然如果你发现了文章中存在错误
或者有更好的解决方法
,也欢迎评论私信告诉我哦!
好了,我是向宇
,https://xiangyu.blog.csdn.net
一位在小公司默默奋斗的开发者,出于兴趣爱好,最近开始自学unity,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!php是工作,unity是生活!如果你遇到任何问题,也欢迎你评论私信找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~