VFXでレーザービームを作成する

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

レーザービームは光の光線です。現実では危険なことはほとんどありませんが、SFゲームでは衝突時にプレイヤーにダメージを与えるメカニズムとしてレーザービームがよく使用されます。しかし、その多様性と未来的なメディアでの重要性から、レーザービームはブラスター武器、パズル、障害物、環境の美学など、さまざまなゲームプレイメカニクスに役立ちます。

サンプルのレーザービームブラスターモデルを使用して、このチュートリアルでは、衝突時にプレイヤーの健康をゼロに設定するオプションのスクリプトを含むレーザービームの特殊効果を作成する方法を示します。以下の内容についてのガイダンスが含まれています。

  • プレイヤーがレーザービームと衝突したときに検出する不可視の衝突ボックスの設定。
  • レーザービームの放出の範囲を表すアタッチメントの構成。
  • 未来的なレーザービームの視覚的特性を模倣するビームのカスタマイズ。
  • プレイヤーのキャラクターにダメージを与える衝突ボックスの動作をスクリプト化。

ブラスターアセットを取得する

クリエイターストアは、プロジェクト内で使用するためにRobloxとRobloxコミュニティによって作成されたすべてのアセットを見つけるために使用できるツールボックスのタブです。モデル、画像、メッシュ、オーディオ、プラグイン、ビデオ、フォントアセットなどが含まれます。クリエイターストアを使用して、個々のアセットまたはアセットライブラリをオープンゲームに直接追加できます。

このチュートリアルでは、各ステップを複製する際に使用できる高品質のレーザービームブラスターモデルを参照しています。

このブラスターアセットをインベントリからゲームに取得するには:

  1. ブラスターをインベントリに追加します。

    1. クリエイターストアのアセットの詳細ページに移動します。
    2. 右上隅でモデルを取得ボタンをクリックします。ブラスターアセットは現在インベントリにあり、プラットフォーム上の任意のプロジェクトで再利用できます。
  2. スタジオで、ホームタブに移動し、次にツールボックスボタンをクリックします。ツールボックスウィンドウが開きます。

    スタジオのツールバーでハイライトされたツールボックス。
  3. ツールボックスウィンドウで、インベントリタブをクリックします。マイモデルのソートが表示されます。

  4. レーザービームブラスタータイルをクリックします。モデルがビューポートに表示されます。

衝突ボックスを設定する

衝突時にプレイヤーの健康をゼロに設定する完全なレーザービームは、プレイヤーがレーザーと衝突したときに検出できる必要があります。Beamオブジェクトにはデフォルトの衝突検出機能がないため、基本的なパーツで衝突検出を設定する必要があります。

たとえば、このチュートリアルでは、キャラクターのHumanoidオブジェクトがレーザービームに触れたときに検出する衝突ボックスとして、Beamオブジェクトを持つ不可視のブロックパーツを使用します。チュートリアルの最後のセクションでは、この情報を使用してプレイヤーの健康にダメージを与えるスクリプトを作成します。

衝突ボックスを設定するには:

  1. LaserBeamBlasterブロックパーツを挿入します。

  2. パーツを選択し、プロパティウィンドウで、

    1. 名前CollisionBoxに設定します。パーツの名前とそのケーススタイルは、チュートリアルの後のスクリプトにとって重要です。
    2. 固定を有効にして、ゲームが開始されたときに物理システムがパーツを移動しないようにします。
  3. CollisionBoxを、ブラスターから発射されるレーザービームの長さにスケールします。たとえば、このチュートリアルでは、ブラスターと同じ長さになるようにスケールします。

  4. CollisionBoxをブラスターのエミッターバルブから延びる位置に移動します。これで、衝突ボックスはブラスターからのレーザービームの範囲を表します。

アタッチメントを構成する

ブラスターにBeamオブジェクトを追加する前に、ブラスターのエミッターバルブからのレーザーの放出の範囲を表すために、3D空間に2つのAttachmentオブジェクトを構成することが重要です。ビームはアタッチメント間にテクスチャをレンダリングすることによって動作するため、ビームが参照するアタッチメントがないと機能しません。

レーザービームのアタッチメントを構成するには:

  1. ビューポートでアタッチメントを表示するために、スタジオの表示メニューから制約の詳細を表示を有効にします。

  2. 衝突ボックスに2つのアタッチメントを挿入します。

    1. エクスプローラーウィンドウで、CollisionBoxにカーソルを合わせ、次に⊕アイコンをクリックします。コンテキストメニューが表示されます。
    2. コンテキストメニューからアタッチメントを挿入します。
    3. このプロセスを繰り返して、CollisionBoxに2つのアタッチメントオブジェクトを持たせます。
    4. 両方のアタッチメントの名前をそれぞれStartAttachmentEndAttachmentに変更します。
  3. StartAttachmentをエミッターバルブと重なるCollisionBoxの端に移動し、次にEndAttachmentをレーザービームの範囲を表すCollisionBoxの端に移動します。

  4. CollisionBoxを透明にして、アタッチメント間にビームがレンダリングするテクスチャを妨げずに見ることができるようにします。

    1. エクスプローラーウィンドウでCollisionBoxを選択します。
    2. プロパティウィンドウで、透明度1に設定して、パーツを完全に透明にします。

ビームをカスタマイズする

3D空間にAttachmentオブジェクトがあるので、レーザービームの視覚的特性を模倣するためにBeamオブジェクトを追加してカスタマイズできます。このチュートリアルでは、未来的で明るいピンクのビームを迅速にアニメーションさせる方法についてのガイダンスを提供しますが、同じプロパティを使ってさまざまな特殊効果を作成することができます。

ビームをカスタマイズするには:

  1. CollisionBoxにビームを挿入します。

    1. エクスプローラーウィンドウで、CollisionBoxにカーソルを合わせ、次に⊕アイコンをクリックします。コンテキストメニューが表示されます。
    2. コンテキストメニューからビームを挿入します。
  2. 衝突ボックスのアタッチメントを新しいBeamオブジェクトに割り当てます。

    1. エクスプローラーウィンドウでビームを選択します。
    2. プロパティウィンドウで、
      1. Attachment0StartAttachmentに設定します。
      2. Attachment1EndAttachmentに設定します。ビームは2つのアタッチメント間にデフォルトのテクスチャをレンダリングします。
  3. ビームの視覚的外観をカスタマイズして、未来的なレーザービームのように見えるようにします。

    1. エクスプローラーウィンドウで、ビームがまだ選択されていることを確認します。
    2. プロパティウィンドウで、
      1. テクスチャrbxassetid://6060542021に設定して、レーザービームのように見える新しいテクスチャをレンダリングします。
      2. 255, 47, 137に設定して、レーザーを明るいピンクに染めます。
      3. 光の放出0.5に設定して、レーザーにわずかな光を追加します。
      4. Width0Width14に設定して、レーザーを広げます。
      5. テクスチャ速度2に設定して、レーザーをより迅速にアニメーションさせます。
      6. カメラに向けるを有効にして、プレイヤーの角度に関係なくレーザーが見えるようにします。

ダメージ動作をスクリプト化する

現在、あなたのレーザービームは環境に対して美的に魅力的ですが、ブラスター武器としては完全に無害です。レーザーブラスターがプレイヤーにダメージを与えることができるようにするには、衝突ボックスにこの動作をトリガーするスクリプトを追加する必要があります。

サンプルスクリプトは、どのオブジェクトが衝突ボックスに触れるかを待つことによって機能します。衝突ボックスに触れるオブジェクトに子のHumanoidオブジェクトが含まれている場合、スクリプトはそのHealthプロパティ0に設定します。デフォルトでは、すべてのプレイヤーキャラクターにはHumanoidオブジェクトが含まれているため、プレイヤーが衝突ボックスに衝突するたびに、スクリプトは瞬時に彼らの健康をゼロに設定し、キャラクターは崩れ落ちます。

プレイヤーにダメージを与える動作をスクリプト化するには:

  1. LaserBeamBlasterにスクリプトを挿入します。

    1. エクスプローラーウィンドウで、LaserBeamBlasterにカーソルを合わせ、次に⊕アイコンをクリックします。コンテキストメニューが表示されます。
    2. コンテキストメニューからスクリプトを挿入します。
  2. デフォルトのコードを以下のコードに置き換えます:

    local laserTrap = script.Parent
    local collisionBox = laserTrap.CollisionBox
    local function onTouch(otherPart)
    local character = otherPart.Parent
    local humanoid = character:FindFirstChildWhichIsA("Humanoid")
    if humanoid then
    humanoid.Health = 0
    end
    end
    collisionBox.Touched:Connect(onTouch)
  3. レーザービームに歩いてその動作をテストします。

    1. ドロップダウンメニューからテストを選択し、その右側にある再生ボタンをクリックしてプレイテストを開始します。

      スタジオのメザニンのテストモードのドロップダウンでのテストオプション。
    2. レーザービームに歩いて、キャラクターが崩れ落ちるのを見てください。終了したら、停止ボタンをクリックします。スタジオはプレイテストモードを終了します。

      スタジオのメザニンで示された停止ボタン。

これで、危険なレーザービームブラスターが完成しました!このチュートリアルのスキルを使用して、光るフォースフィールド、急流の滝、スピードランプなど、さまざまなビーム特殊効果をカスタマイズできます。たとえば、CurveSize0CurveSize1などの追加のビームプロパティを試したり、独自のテクスチャをインポートしたり、ビームをパーティクルエミッター光源などの他の特殊効果と組み合わせたりすることができます。楽しい制作を!

©2026 Roblox Corporation。Roblox(ロブロックス)、RobloxロゴおよびPowering Imaginationは、米国並びにその他の国における登録商標および非登録商標です。