andengineを使ってライブ壁紙を作っています。ColorParticleModifier を使用して、パーティクルの色を変更できます。しかし、どうすればランダムに色を変えることができますか?
ありがとうございました!
時間の経過とともに色を変更したい場合は、新しい Particle クラスを作成して onUpdate をオーバーライドし、そこに色を変更するコードを配置できます。これを行うと、onUpdate が実行されるたびにパーティクルの色を変えることができます。
private float colorTimer = 0;
private final float COLOR_RESET = 0.25f; //change color 4 times per second
private Random rand = new Random();
...
@Override
protected void onUpdate(final float pSecondsElapsed){
colorTimer += pSecondsElapsed;
if (colorTimer >= COLOR_RESET){
colorTimer =0;
this.mEntity.setColor(rand.nextFloat(), rand.nextFloat(), rand.nextFloat());
}
super.onUpdate(pSecondsElapsed);
}