首先创建一个脚本挂在要有残影的对象上CanYing
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class CanYing : MonoBehaviour {
public float interval = 0.1f; //每0.1秒生成一个残影
public float lifeCycle = 2.0f; //残影存在时间
float lastCombinedTime = 0.0f; //上一次组合的时间
MeshFilter[] meshFilters=null; //存贮对象包含的MeshFilter组件
MeshRenderer[] meshRenderers=null; //存贮对象包含的MeshRenderer组件
SkinnedMeshRenderer[] skinnedMeshRenderers=null; //存贮对象包含的skinnedMeshRenderers组件
List<GameObject> objs=new List<GameObject>(); //存储残影
// Use this for initialization
void Start () {
meshFilters=gameObject.GetComponentsInChildren<MeshFilter>();
skinnedMeshRenderers=gameObject.GetComponentsInChildren<SkinnedMeshRenderer>();
}
void OnDisable()
{
//消灭所有残影
foreach(GameObject go in objs)
{
DestroyImmediate(go);
}
objs.Clear();
objs=null;
}
// Update is called