您最多选择25个主题
主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
47 行
930 B
47 行
930 B
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class SpawnEffect : MonoBehaviour
|
|
{
|
|
|
|
public float spawnEffectTime = 2;
|
|
public float pause = 1;
|
|
public AnimationCurve fadeIn;
|
|
|
|
ParticleSystem ps;
|
|
float timer = 0;
|
|
Renderer _renderer;
|
|
|
|
int shaderProperty;
|
|
|
|
void Start()
|
|
{
|
|
shaderProperty = Shader.PropertyToID("_cutoff");
|
|
_renderer = GetComponent<Renderer>();
|
|
ps = GetComponentInChildren<ParticleSystem>();
|
|
|
|
var main = ps.main;
|
|
main.duration = spawnEffectTime;
|
|
|
|
ps.Play();
|
|
|
|
}
|
|
|
|
void Update()
|
|
{
|
|
if (timer < spawnEffectTime + pause)
|
|
{
|
|
timer += Time.deltaTime;
|
|
}
|
|
else
|
|
{
|
|
ps.Play();
|
|
timer = 0;
|
|
}
|
|
|
|
|
|
_renderer.material.SetFloat(shaderProperty, fadeIn.Evaluate(Mathf.InverseLerp(0, spawnEffectTime, timer)));
|
|
|
|
}
|
|
}
|