Unity中实现2D残影效果
发布日期:2021-06-30 19:57:13
浏览次数:3
分类:技术文章
本文共 2152 字,大约阅读时间需要 7 分钟。
一:效果演示
二:完整代码
using UnityEngine;using System.Collections.Generic;public class GhostEffect : MonoBehaviour{ [Header("是否开启残影效果")] public bool openGhoseEffect; [Header("是否开启褪色消失")] public bool openFade; [Header("显示残影的持续时间")] public float durationTime; [Header("生成残影与残影之间的时间间隔")] public float spawnTimeval; private float spawnTimer;//生成残影的时间计时器 [Header("残影颜色")] public Color ghostColor; [Header("残影层级")] public int ghostSortingOrder; private SpriteRenderer sr;//SpriteRenderer private ListghostList = new List ();//残影列表 private void Awake() { sr = GetComponent (); } private void Update() { if (openGhoseEffect == false) { return; } DrawGhost(); Fade(); } /// /// 绘制残影 /// private void DrawGhost() { if (spawnTimer >= spawnTimeval) { spawnTimer = 0; GameObject _ghost = new GameObject(); ghostList.Add(_ghost); _ghost.name = "ghost"; _ghost.AddComponent(); _ghost.transform.position = transform.position; _ghost.transform.localScale = transform.localScale; SpriteRenderer _sr = _ghost.GetComponent (); _sr.sprite = sr.sprite; _sr.sortingOrder = ghostSortingOrder; _sr.color = ghostColor; if (openFade == false) { Destroy(_ghost, durationTime); } } else { spawnTimer += Time.deltaTime; } } /// /// 褪色操作 /// private void Fade() { if (openFade == false) { return; } for (int i = 0; i < ghostList.Count; i++) { SpriteRenderer ghostSR = ghostList[i].GetComponent(); if (ghostSR.color.a <= 0) { GameObject tempGhost = ghostList[i]; ghostList.Remove(tempGhost); Destroy(tempGhost); } else { float fadePerSecond = (ghostColor.a / durationTime); Color tempColor = ghostSR.color; tempColor.a -= fadePerSecond * Time.deltaTime; ghostSR.color = tempColor; } } }}
转载地址:https://liuhaowen.blog.csdn.net/article/details/104226143 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2024年04月25日 11时05分53秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
Grid SearchCV(网格搜索)& Python实现
2019-04-30
ROS相关知识
2019-04-30
单目深度估计 monodepth2模型 代码
2019-04-30
位图索引Bitmap indexes
2019-04-30
YOLO算法(二)—— Yolov2 & yolo9000
2019-04-30
YOLO算法(三)—— Yolov3 & Yolo系列网络优缺点
2019-04-30
Python的__future__模块
2019-04-30
计算机视觉中的cost-volume的概念具体指什么(代价体积)
2019-04-30
启发函数heuristic 与 A*
2019-04-30
Image Pyramid(图像金字塔)
2019-04-30
Oracle 作业记录
2019-04-30
putty连接AWS配置(multimedia project)
2019-04-30
Hourglass Network 沙漏网络 (pose estimation姿态估计)
2019-04-30
OpenCV实战(二)——答题卡识别判卷
2019-04-30