











创建粒子替代

中心归零


只有一种石头


particleShape1.shitou=rand(0,5);




设置石头大小


等比例变小
particleShape1.daxiao=<<0.2,0.2,0.2>>;



使用变量代替
float $daxiao=rand(0.2,0.5);
particleShape1.daxiao=<<$daxiao,$daxiao,$daxiao>>;


非等比例缩小
particleShape1.daxiao=<<rand(0.2,0.5),rand(0.2,0.5),rand(0.2,0.5)>>;


石头旋转

初始旋转角度
particleShape1.xuanzhuan=<<rand(360),rand(360),rand(360)>>;




石头自己旋转
particleShape1.xuanzhuan=particleShape1.xuanzhuan+1;

下落转,转的慢

加速石头旋转
particleShape1.xuanzhuan=particleShape1.xuanzhuan+10;

方便的写法
particleShape1.xuanzhuan+=10;

运动时旋转不同方向

particleShape1.suiji_xuanzhuan=rand(-5,5);

调用刚才创建的
particleShape1.xuanzhuan+=particleShape1.suiji_xuanzhuan;

让下落不在旋转了
Velocity:速度
显示速度相关信息

数据类型转换

mag 函数将向量转换为浮点数。
particleShape1.sudu_fudian=mag(velocity);

显示转换后的数值

除以显示的最大的值

particleShape1.sudu_fudian=mag(particleShape1.velocity)/25;


最后还是没有变成0,需要使用if
如果转换的数值小于<0.02,那么速度将变成0
if
(particleShape1.sudu_fudian<0.02)
velocity=0;

数据变成0了,速度也变成0了

石头还是在旋转

particleShape1.sudu_fudian=mag(particleShape1.velocity)/25;
particleShape1.xuanzhuan+=particleShape1.suiji_xuanzhuan*particleShape1.sudu_fudian;

石头落下不转了,爆炸的时候,旋转变慢了

particleShape1.suiji_xuanzhuan=rand(-50,50);

从粒子发射粒子








给石头一个场

第二套例子加个场



问题是 还在陆续发射粒子


播放没有粒子了


particleShape1.emitter2RatePP=100*particleShape1.sudu_fudian;

石头下落,不发射粒子了

particleShape1.emitter2RatePP=500*particleShape1.sudu_fudian;

particleShape1.emitter2RatePP=100*particleShape1.sudu_fudian;

设置

粒子阴影 深度贴图

关闭深度贴图 开启光线跟踪



让粒子显示成硬件颜色







使用粒子云颜色
删除粒子采样节点,创建一个新的 粒子云


设置粒子不透明度


减少粒子显示数量

没效果


使用粒子采样,连接到粒子云的透明度,中间需要加入反向节点






设置粒子半径

不是纯白
尾部变大了
设置颜色

阴影变淡了
亮度颜色,灯光照射的地方
有点区别
粒子显的很厚
设置粒子发光
制作辉光
辉光相关调节

调节烟的透明度



















