Unity3d学习笔记(三)Legacy粒子系统提前和延迟发射

Unity的Legacy粒子系统里面有些参数可能会让人迷惑,如果不是有心人专门指点,你根本不知道为啥你调的那个参数没有任何作用……比如Stretched Particles,大家都知道这个字面意思代表什么,但是当你复制了一个已有的粒子系统,而粒子的速度恰好为0,那么你就会发现粒子消失了。后来才知道stretched必须和粒子运动方向对应……还有一个叫one shot的参数,你勾选之后会发现粒子是一
摘要由CSDN通过智能技术生成
        Unity的Legacy粒子系统里面有些参数可能会让人迷惑,如果不是有心人专门指点,你根本不知道为啥你调的那个参数没有任何作用……比如Stretched Particles,大家都知道这个字面意思代表什么,但是当你复制了一个已有的粒子系统,而粒子的速度恰好为0,那么你就会发现粒子消失了。后来才知道stretched必须和粒子运动方向对应……还有一个叫one shot的参数,你勾选之后会发现粒子是一波一波地发射的,但是发射间隔根本没法调整,而且如果想要只发射一下,必须勾选Auto destructed。其实这些弄懂了也都还好,最关键的是这个粒子系统没法预热,也就是每次开始游戏,粒子都是慢悠悠地从少到多地发射,我实在没法想象如果要做循环该怎么办……另外一点,如果一个特效的需要有些节奏感的话,粒子系统的延迟发射必不可少,但是Legacy粒子竟然没有这个参数!我现在总算明白了他们后来为啥要重新写一个粒子系统了,这个就是拿来凑数的……废话不提,如果需要粒子系统提前或者延迟发射的话,就要用到这个脚本:
var delayTime:float=0;
var delayPlusTime:float=0;
var rampDownTime:float=1;
var origMinEmission:float;
var origMaxEmission:float;

function Start () {

origMinEmission=particleEmitter.minEmission;
origMaxEmission=particleEmitter.maxEmission;
particleEmitter.emit=false;

}

function Update () {
if(
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值