Phaser3实现粒子带拖影效果,不要使用图片,粒子为随机颜色
时间: 2024-03-02 14:53:56 浏览: 18
好的,实现粒子带拖影效果,不使用图片,并且粒子随机颜色,可以按照以下步骤实现:
1. 创建Graphics对象
```javascript
const trail = this.add.graphics();
```
2. 在粒子系统中设置回调函数
```javascript
const particles = this.add.particles();
particles.createEmitter({
// 粒子系统的配置
// ...
onUpdate: function(particle, key, t, value) {
// 每次粒子更新时执行的回调函数
trail.clear();
trail.lineStyle(2, particle.tintFill, 1);
trail.beginPath();
trail.moveTo(particle.getPreviousPosition().x, particle.getPreviousPosition().y);
trail.lineTo(particle.x, particle.y);
trail.strokePath();
},
onEmitParticle: function(particle) {
// 粒子发射时执行的回调函数
particle.setTint(Math.random() * 0xffffff);
}
});
```
在回调函数中,我们同样需要清空Graphics对象,然后设置线条样式,绘制从粒子上一个位置到当前位置的线条。
在粒子发射时,我们设置随机颜色,使用`particle.setTint()`方法,其中参数为一个16进制颜色值。
这样,就可以实现粒子带拖影效果,且粒子随机颜色了。