Multi Line Trace (レイキャスト) by Channel を使用する

Multi Line Trace by Channel Blueprint ノードを使って Visilibity チャンネルに反応するすべてのアクタを戻し、その名前をプリントします。

Windows
MacOS
Linux
このページ中

MultiLineTraceByChannel は、所定のラインに沿ってコリジョン トレースを実行し、指定した Trace Channel に反応するオブジェクトのみを返しながら、最初にブロックするヒットを含めてそこまでに遭遇するすべてのヒットを返します。つまり、コリジョンを持つ多くの アクタ または コンポーネント で、トレースの開始と終了との間の指定した Trace Channel に Overlap するもの全てを受け取ることを意味します。しかし、指定した Trace Channel を Blocks する最初のヒットでは、そのアイテムだけを受け取ります。トレース チャンネルのオーバーラップやブロックに関係なく全アイテムを受け取る場合は、MultiLineTraceByObject ノードを使用します。以下では、MultiLineTraceByChannel を設定します。

ステップ

  1. トレースをセットアップするために使用した LineTraceByChannel の手順に従います。

  2. LineTraceByChannel ノードを、MultiLineTraceByChannel ノードに置き換えます。

  3. Out Hits ピンを引き出して ForEachLoop ノードを追加します。

    GHT2B_18.png

    複数のアクタがヒットするので、それぞれに何かを行わせます (この例ではアクタを画面にプリントします)。

  4. Array Element を引き出して、Break Hit Result を追加します。Hit Actor を引き出して Get Display Name (Object) を追加して Print String に接続します。

    画像をクリックすると画面表示が大きくなります。

    配列がヒットしたそれぞれのアクタが文字列で表示されるようになります。

結果

物理アクタの正面にガラスの窓があります。

GHT2B_17.png

物理アクタ (キューブ) の VisibilityBlock に設定されていますが、ガラスの窓は 被破壊メッシュ で、コリジョン設定での Visibility に対する Trace ResponseOverlap となっています。オブジェクトを貫通 (破砕) して敵にもヒットさせたい場合に使用することができます。

Select Skin
Light
Dark

新しい Unreal Engine 4 ドキュメントサイトへようこそ!

あなたの声を私たちに伝えるフィードバックシステムを含め、様々な新機能について開発をおこなっています。まだ広く使える状態にはなっていないので、準備ができるまでは、ドキュメントフィードバックフォーラムで、このページについて、もしくは遭遇した問題について教えていただけると助かります。

新しいシステムが稼働した際にお知らせします。

フィードバックを送信