unity3d粒子系统
本次作业基本要求是三选一
1、简单粒子制作
按参考资源要求,制作一个粒子系统,参考资源
使用 3.3 节介绍,用代码控制使之在不同场景下效果不一样
2、完善官方的“汽车尾气”模拟
使用官方资源资源 Vehicle 的 car, 使用 Smoke 粒子系统模拟启动发动、运行、故障等场景效果
3、参考 http://i-remember.fr/en 这类网站,使用粒子流编程控制制作一些效果, 如“粒子光环”
个人选择了粒子关环
成品图:
1.我们要首先定义新的结构ParticleData,用来记录每个粒子的当前半径、角度和运动的时间。
//记录每个粒子的属性:
public class ParticleData
{
public float radius, angle, time;
public ParticleData(float radius_,float angle_,float time_)
{
radius = radius_; //半径
angle = angle_; //角度
time = time_; //运动的时间
}
}
2.声明ParticleHalo的私有变量,ParticleData。
//定义一个粒子系统的变量,粒子的数组和对应的粒子的数据
private ParticleSystem particleSys; //粒子系统
private ParticleSystem.Particle[] particleArray; //粒子数组
private ParticleData[] particleData; //粒子数据数组
//声明变量
public int count = 10000; // 粒子数量
public float size = 0.03f; // 粒子大小
public float minRadius = 5.0f; // 最小半径
public float maxRadius = 12.0f; // 最大半径
public bool clockwise = true; // 顺时针|逆时针
public float speed = 2f; // 速度
public float pingPong = 0.02f; // 游离范围
private int diff &#