凛(kagring)のUE4とUnityとQt勉強中ブログ

2016 年から UE4 を触り始めました。勉強したもののメモ用のブログです。C++ での Qt、Unity も少しあります。

PREV | PAGE-SELECT | NEXT

≫ EDIT

UE4 レイとオブジェクトのコリジョンとのヒット判定(Line Trace For Objects、Multi Line Trace For Objects)

レイとコリジョンのあたり判定です。
今回は指定したオブジェクトタイプのコリジョンに対してのものになります。
ここらへんを参考にさせてもらいました。

・UE4 マウスの位置をワールド座標に変換する
http://qiita.com/nkdtr/items/3a6768f6a60996136794

・ブループリントにおけるレイキャスト(トレーシング)の使い方
https://docs.unrealengine.com/latest/JPN/Gameplay/HowTo/UseRaycasts/Blueprints/index.html

オブジェクトでのレイとコリジョンのあたり判定は「Line Trace For Objects」ノードを使います。
LineTraceForObjects002.jpg
「Start」から「End」に向かうレイでチェックを行います。
「Object Types」は判定を行うオブジェクトの配列を指定します。
「Make Array」で持ってこれます。
「Trace Complex」はComplex コリジョンと判定をするかのチェックです。
「Actors to Ignore」は判定を無視するアクター配列です。
「Draw Debug Type」はこのノードの処理をしたときに画面上に結果を表示するかどうかです。
「None」は表示なし、「For One Frame」は1フレームだけ表示。
「For Duration」は一定時間表示、「Persistent」は永続表示となります。
「Ignore Self」は自分自身を判定から除外するかどうかです。

「Complex コリジョン」についてはこちらを。

・Simple コリジョンと Complex コリジョン
https://docs.unrealengine.com/latest/JPN/Engine/Physics/SimpleVsComplex/index.html

「Line Trace For Objects」は最初にヒットした結果を返します。
結果の取得はこんな感じに取得できます。
LineTraceForObjects000.jpg

「Line Trace For Objects」は最初にヒットした結果を返しますが
「Multi Line Trace For Objects」を使うとすべてのヒットした結果を受け取れます。
LineTraceForObjects001.jpg

と、こんな感じでしょうか。
「Line Trace By Channel」と同じくゲームでは使うことが多そうですね。
スポンサーサイト

| UE4 | 16:52 | comments:0 | trackbacks:0 | TOP↑

COMMENT















非公開コメント

TRACKBACK URL

http://kagring.blog.fc2.com/tb.php/230-5fd2779a

TRACKBACK

PREV | PAGE-SELECT | NEXT