メインコンテンツまでスキップ
バージョン: 2.0.0-preview

パーティクルエミッタ

発生・運動・外観のパラメータに従ってパーティクルを生成し、アニメーションするエミッターです。各パーティクルは パーティクル描画 の見た目を継承し、重力・空気抵抗・乱流の影響を受けます。

ライブラリでの場所​

「ライブラリ」 → パーティクルエミッタ

プロパティ​

シード (Seed)​

乱数のシード。同じ設定でも値を変えると別パターンが生成されます。

  • 型: int
  • 既定値: 0
  • アニメーション: 可

エミッタ形状 (EmitterShape)​

パーティクルが発生する領域の形状(点 / 線 / 矩形 / 楕円)。

  • 型: EmitterShape
  • 既定値: Particles.EmitterShape.Point
  • アニメーション: 不可

エミッタ幅 (EmitterWidth)​

エミッター形状の幅。

  • 型: float
  • 既定値: 100
  • アニメーション: 可
  • 範囲: [0, ∞)

エミッタ高さ (EmitterHeight)​

エミッター形状の高さ。

  • 型: float
  • 既定値: 100
  • アニメーション: 可
  • 範囲: [0, ∞)

最大パーティクル数 (MaxParticles)​

同時に存在できるパーティクル数の上限。

  • 型: int
  • 既定値: 5000
  • アニメーション: 不可
  • 範囲: [1, 50000]

プリウォーム時間 (PrewarmDuration)​

エミッターの開始前にシミュレーションする時間。パーティクルのシミュレーションだけを進め、プロパティのアニメーションは進めません。

  • 型: TimeSpan
  • 既定値: 00:00:00
  • アニメーション: 不可
  • 範囲: [00:00:00, 00:01:00]

放出レート (EmissionRate)​

1 秒あたりに発生させるパーティクル数。

  • 型: float
  • 既定値: 60
  • アニメーション: 可
  • 範囲: [0, ∞)

寿命 (Lifetime)​

パーティクルの平均寿命(秒)。

  • 型: float
  • 既定値: 2
  • アニメーション: 可
  • 範囲: [0, ∞)

寿命ランダム (LifetimeRandom)​

寿命に加算/減算されるランダムな揺らぎ。

  • 型: float
  • 既定値: 0
  • アニメーション: 可
  • 範囲: [0, ∞)

スピード (Speed)​

生成直後のパーティクルの初速。

  • 型: float
  • 既定値: 200
  • アニメーション: 可
  • 範囲: [0, ∞)

スピードランダム (SpeedRandom)​

初速のランダムな揺らぎ。

  • 型: float
  • 既定値: 0
  • アニメーション: 可
  • 範囲: [0, ∞)

方向 (Direction)​

平均的な発生方向(度。0 が右、90 が下)。

  • 型: float
  • 既定値: -90
  • アニメーション: 可

拡散 (Spread)​

発生方向をランダム化する角度範囲(度)。

  • 型: float
  • 既定値: 30
  • アニメーション: 可
  • 範囲: [0, 360]

重力 (Gravity)​

各パーティクルに加わる定常的な下向き加速度。

  • 型: float
  • 既定値: 200
  • アニメーション: 可

空気抵抗 (AirResistance)​

速度の減衰係数(大きいほど早く減速)。

  • 型: float
  • 既定値: 0
  • アニメーション: 可
  • 範囲: [0, ∞)

タービュランス強度 (TurbulenceStrength)​

ノイズベースの乱流の強さ。

  • 型: float
  • 既定値: 0
  • アニメーション: 可
  • 範囲: [0, ∞)

タービュランススケール (TurbulenceScale)​

乱流ノイズの空間スケール。

  • 型: float
  • 既定値: 0.01
  • アニメーション: 可
  • 範囲: [0, ∞)

タービュランス速度 (TurbulenceSpeed)​

時間方向での乱流パターンの進行速度。

  • 型: float
  • 既定値: 1
  • アニメーション: 可
  • 範囲: [0, ∞)

パーティクル描画 (ParticleDrawable)​

各パーティクルの描画に使うオブジェクト。

  • 型: Drawable?
  • 既定値: なし (null)
  • アニメーション: 不可

パーティクルサイズ (ParticleSize)​

各パーティクルの初期サイズ。

  • 型: float
  • 既定値: 10
  • アニメーション: 可
  • 範囲: [0, ∞)

サイズランダム (SizeRandom)​

初期サイズのランダムな揺らぎ。

  • 型: float
  • 既定値: 0
  • アニメーション: 可
  • 範囲: [0, ∞)

色 (ParticleColor)​

パーティクルの初期カラー(着色)。

  • 型: Color
  • 既定値: 白 (Colors.White)
  • アニメーション: 可

パーティクル不透明度 (ParticleOpacity)​

初期不透明度(0 〜 100)。

  • 型: float
  • 既定値: 100
  • アニメーション: 可
  • 範囲: [0, 100]

初期回転 (InitialRotation)​

初期回転角度(度)。

  • 型: float
  • 既定値: 0
  • アニメーション: 可

初期回転ランダム (InitialRotationRandom)​

初期回転のランダムな揺らぎ。

  • 型: float
  • 既定値: 0
  • アニメーション: 可
  • 範囲: [0, ∞)

角速度 (AngularVelocity)​

連続的な回転速度(度/秒)。

  • 型: float
  • 既定値: 0
  • アニメーション: 可

終了サイズ倍率 (EndSizeMultiplier)​

パーティクル寿命終了時のサイズ倍率。

  • 型: float
  • 既定値: 1
  • アニメーション: 可
  • 範囲: [0, ∞)

終了不透明度倍率 (EndOpacityMultiplier)​

パーティクル寿命終了時の不透明度倍率。

  • 型: float
  • 既定値: 0
  • アニメーション: 可
  • 範囲: [0, ∞)

終了色 (EndColor)​

UseEndColor が有効なときに、寿命を通して補間する終端カラー。

  • 型: Color
  • 既定値: 白 (Colors.White)
  • アニメーション: 可

終了色を使用 (UseEndColor)​

ParticleColor から EndColor への色補間を有効にします。

  • 型: bool
  • 既定値: false
  • アニメーション: 不可

共通プロパティ​

このオブジェクトは 描画オブジェクト を継承しているため、基底クラスで宣言された共通プロパティも利用できます。

ソース​

src/Beutl.Engine/Graphics/Particles/ParticleEmitter.cs