docs.unity3d.com
    目次を表示する/隠す

    Constant Rate

    メニューパス : Spawn > Constant Rate

    Constant Rate ブロックは、一定の割合で、スポーン数を追加します。例えばレートが 10 の場合、このブロックは Spawn Context に対して、毎秒 10 のスポーンイベントを送信します。1 未満のレートも有効ですが、レートが 0.5 の場合は 2 秒に 1 回になります。

    ブロックの互換性

    このブロックは、以下のコンテキストと互換性があります。

    • Spawn 

    ブロックのプロパティ

    Input Type 説明
    Rate float 秒ごとのスポーンレートです。

    補足 

    このブロックを、以下に挙げる同等のカスタムスポーナーコールバックの実装で模倣することができます。

    
    class ConstantRateEquivalent : VFXSpawnerCallbacks
    {
        public class InputProperties
        {
            [Min(0), Tooltip("Sets the number of particles to spawn per second.")]
            public float Rate = 10;
        }
    
        static private readonly int rateID = Shader.PropertyToID("Rate");
    
        public sealed override void OnPlay(VFXSpawnerState state, VFXExpressionValues vfxValues, VisualEffect vfxComponent)
        {
        }
    
        public sealed override void OnUpdate(VFXSpawnerState state, VFXExpressionValues vfxValues, VisualEffect vfxComponent)
        {
            if (state.playing)
            {
                float currentRate = vfxValues.GetFloat(rateID);
                state.spawnCount += currentRate * state.deltaTime;
            }
        }
    
        public sealed override void OnStop(VFXSpawnerState state, VFXExpressionValues vfxValues, VisualEffect vfxComponent)
        {
        }
    }
    
    トップに戻る
    Copyright © 2023 Unity Technologies — 商標と利用規約
    • 法律関連
    • プライバシーポリシー
    • クッキー
    • 私の個人情報を販売または共有しない
    • Your Privacy Choices (Cookie Settings)