通过上篇粒子系统的介绍,我们对粒子系统有了初步的了解。
接下来我们从简单粒子系统入手一步步深入理解粒子系统。
本篇中用Circle模拟粒子。
程序讲解:
1、粒子对象定义: 定义Particle对象继承Parent。 定义以下属性:
//x坐标
DoubleProperty x = new SimpleDoubleProperty();
//y坐标
DoubleProperty y = new SimpleDoubleProperty();
//粒子半径
double raidus;
//水平速度
double vx;
//垂直速度
double vy;
//水平加速度
double accx;
//垂直加速度
double accy;
//粒子存在时长
DoubleProperty timer = new SimpleDoubleProperty();
2、更新粒子 定义update方法实现粒子更新。
public void update() {
timer.set(timer.get() - 1);
x.set(x.get() + vx);
y.set(y.get() + vy);
vx += accx;
vy += accy;
}
3、粒子创建和死亡 通过构造函数创建新的粒子。 timer属性的值判断粒子是否死亡。
public boolean isDead() {
return timer.get() < 0;
}
效果图: