Class: TonParticle
オブジェクトプーリングを使用した軽量なパーティクルシステムです。
Structures
class TonParticleParam
パーティクルの挙動を定義するパラメータクラスです。
string ImageName: 使用画像のキー名int MinLife, MaxLife: 寿命の範囲(ミリ秒)float MinSpeed, MaxSpeed: 速度の範囲float MinAngle, MaxAngle: 放出角度の範囲(ラジアン)float MinScale, MaxScale: スケールの範囲float Gravity: 重力加速度Color StartColor, EndColor: 色の変化bool IsAdditive: 加算合成を使用するかどうか
Methods
void Register(string name, TonParticleParam param)
パーティクルの定義を名前を付けて登録します。
name: 登録名(Play時に使用)param: パラメータ
void Play(string name, float x, float y, int count = 1)
パーティクルを発生させます。
name: 登録名x,y: 発生座標count: 一度に発生させる数
void Clear()
全てのパーティクルを消去します。
Sample Code
// In Initialize()
// 1. Register Particle Definition
var explosionParam = new TonParticleParam
{
ImageName = "particle_star",
MinLife = 500, MaxLife = 1000,
MinSpeed = 2.0f, MaxSpeed = 5.0f,
MinAngle = 0, MaxAngle = 6.28f, // 360 degrees
MinScale = 0.5f, MaxScale = 1.5f,
Gravity = 0.1f,
StartColor = Color.Yellow, EndColor = Color.Red,
IsAdditive = true
};
Ton.Particle.Register("explosion", explosionParam);
// In Update() (or Event Handler)
// 2. Play Particle (e.g. on impact)
if (isImpact)
{
Ton.Particle.Play("explosion", 300, 200, 20); // Emit 20 particles
}
// 3. Update and Draw are handled automatically by Ton.Update/Ton.Draw