devilrrt1013 发表于 2014-8-11 14:37

Unity3d 雨滴落水脚本

var particlesPerFixedUpdate = 1;
//声明三个料子发射器
var rain : ParticleEmitter;
var ripple : ParticleEmitter;
var splash : ParticleEmitter;
private var tempParticles = 0;
/*function FixedUpdate ()
/{
tempParticles = particlesPerFixedUpdate;
while(tempParticles > 0)
{
Rain();
tempParticles --;
}
}
*/// I don't understand why we need the stuff above?
//执行下雨函数
function FixedUpdate ()
{
Rain();
}
//声明下雨函数
function Rain ()
{
//=====默认设置下,三个料子发射器处于关闭状态,并未发射料子。
//在xz平面上取得随机坐标点,y为20
pos = Vector3(Random.Range(-5.00, 5.00), 20 ,Random.Range(-5.00, 5.00));
//根据rain发射器的最大最小值区间取得随机值,生命值,开始发射料子。
size = Random.Range(rain.minSize, rain.maxSize);
lifetime = Random.Range(rain.minEnergy, rain.maxEnergy);
//料子发射器的一方法 。function Emit (pos : Vector3, velocity : Vector3, size : float, energy : float, color : Color) : void
rain.Emit(pos, rain.worldVelocity, size, lifetime, Color.white);
//等待1秒,改变y坐标,并设置相应的尺寸和生命时间,水波纹及小水花两个料子发射器开始发射料子。
yield WaitForSeconds(1);
pos.y = splash.transform.position.y;
size = Random.Range(ripple.minSize, ripple.maxSize);
lifetime = Random.Range(ripple.minEnergy, ripple.maxEnergy);
ripple.Emit(pos, ripple.worldVelocity, size, lifetime, Color.white);
size = Random.Range(splash.minSize, splash.maxSize);
lifetime = Random.Range(splash.minEnergy, splash.maxEnergy);
splash.Emit(pos, splash.worldVelocity, size, lifetime, Color.white);
}

madfox 发表于 2014-8-17 10:07

*/// I don't understand why we need the stuff above?
这行注解好吐槽

mida╰ 发表于 2014-8-19 14:58

{:5_404:}那是为什么需要上面的东西啊

摞你命3000 发表于 2014-11-26 01:52

好东西 下载来试试效果感谢分享

Kathy 发表于 2017-3-25 12:22

好帖就是要顶

寞鱼 发表于 2017-3-25 12:22

顶顶多好

sou_su 发表于 2017-3-25 12:58

难得一见的好帖

悄然的我-粤Y 发表于 2017-3-25 12:59

说的非常好

三维立体 发表于 2017-3-25 13:02

不错不错

shenyjz 发表于 2017-4-23 15:23

很不错
页: [1]
查看完整版本: Unity3d 雨滴落水脚本