VFX で爆発を作成する

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

以前は、連続して再生するパーティクル、例えば 火山からの煙 と同様のものと一緒に作業しました。粒子は、爆発などの単一のバーストでも使用できます。このチュートリアルでは、パーティクルの爆発を発してプレイヤーを殺すトラップを作る方法を示します。

エミッターの設定

爆発は、バーストを生成するいくつか変更されたプロパティを持つパーティクルエミッターを使用します。

  1. 危険そうなトラップを設計します。次に、部品に パーティクルエミッター を名前 爆発 として挿入します。

  2. これらのプロパティを使用して電気スパーク効果を作成します。

    性質説明
    テクスチャrbxassetid://6101261905電気スパークテクスチャ。
    ドラッグ10パーティクルがどれほど速く速度を失うか。
    ライフタイム0.2, 0.6爆発粒子を短時間存在させる。
    速度20, 40短い寿命を補償します。
    スプレッド角180, 180すべての方向に粒子を発射します。
  3. ため、トラップは粒子を連続して発射し、 有効オフ に切り替えません。

テストパーティクルバースト

パーティクル爆発をテストするには、RRoblox(ロブロックス)blox によって開発された Studio プラグインを使用できます。

  1. マーケットプレイスページに移動し、Emit() プラグイン プラグイン。そのページで、 インストール ボタンをクリックします。

  2. Studio が開いたとき、プラグインは自動的にインストールされます。

  3. 爆発 エミッターを選択し、ゲームウィンドウの左上に表示されるプラグイン UI に注意してください。番号ボックスに、 100 (放出するパーティクルの量) を入力し、Enter を押します。

  4. エミッターをテストするには、 エミット ボタンを押します。

色と透明度

追加のステップで爆発をより印象的に見せることができます。

  1. プロパティの横にある 3 つのドットをクリックして、エミッタの のシーケンスウィンドウを開きます。次に、ウィンドウでキーポイントを作成して、色のグラデーションを作成します。

  2. 透明性のためには、 スムーズなカーブ上で透明度を増やす 数字シーケンス を使用して、グラデーションでフェードアウトを表示します。

    完了したパーティクル効果は以下のように見えるかもしれません。

スクリプトの設定

エミッタが完了したので、爆発はスクリプトを通じて再生できるようになりました。スクリプトは、トラップに触れるプレイヤーをチェックして動作します。誰かを検出するたびに、粒子が放出され、プレイヤーが死亡します。

  1. トラップパーツで、新しい スクリプトPlayExplosion を追加します。

  2. 変数を設定して、パーツとエミッタを保存します。次に、爆発ごとに放出される粒子数を保存する変数 EMIT_AMOUNT を含めます。


    local trapObject = script.Parent
    local particleEmitter = trapObject.Explosion
    local EMIT_AMOUNT = 100
  3. コードしてイベントをチェックして、Humanoid がパーツに触れているかどうかを確認します。もしそうなら、そのヒューマノイドの体力を 0 に設定し、再スポーンを強制します。


    local trapObject = script.Parent
    local particleEmitter = trapObject.Explosion
    local EMIT_AMOUNT = 100
    local function killPlayer(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    humanoid.Health = 0
    end
    end
    trapObject.Touched:Connect(killPlayer)

爆発を再生する

スクリプトでは、Emit() 関数を使用して粒子が放出されます。これにより、数の粒子の一時爆発が生成されます。

  1. Emit() 関数を呼び出し、以前に作成された変数 EMIT_AMOUNT を渡します。


    local trapObject = script.Parent
    local particleEmitter = trapObject.Explosion
    local EMIT_AMOUNT = 100
    local function killPlayer(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    humanoid.Health = 0
    particleEmitter:Emit(EMIT_AMOUNT)
    end
    end
    trapObject.Touched:Connect(killPlayer)
  2. トラップに入ってスクリプトをテストします。

このチュートリアルの例に少し変更を加えるだけで、さまざまな異なる効果を作成できます。いくつかの代替には、収集可能なオブジェクトを集めるためのキラキラ、またはプロジェクタの影響を示す爆発が含まれます。