Raycast One (LogiXノード)
Raycast One | ||
---|---|---|
![]() | ||
Inputs | ||
Impulse | Raycast | |
Float3 | Origin | |
Float3 | Direction | |
Float | MaxDistance | |
Bool | HitTriggers | |
Bool | UsersOnly | |
Float | DebugDuration | |
Slot | Root | |
Outputs | ||
Impulse | OnHit | |
Impulse | OnMiss | |
ICollider | HitCollider | |
Float | HitDistance | |
Float3 | HitPoint | |
Float3 | HitNormal | |
Int | HitTriangleIndex |
Raycast Oneノードは Raycast
へインパルスを入力するとレイキャストを実行します。レイキャストのプロパティは様々な入力によって制御され、最初のコライダのヒットに関する情報はノードの出力によって提供されます。
== 使用方法
入力
Origin
は、レイがキャストされるポイントを定義します。この値は、入力された Root
スロットの ローカル座標空間からの相対値として扱われます。デフォルトは [0;0;0] です。
Direction
は、レイがキャストされる方向ベクトルを定義します。この値は入力されたRoot
スロットのローカル座標空間からの相対値として扱われます。この入力は、デフォルトが[0;0;0]であるため、値を設定することが必要です。
MaxDistance
はレイキャストの最大長を制御します。レイキャストの実際の長さは、この入力と入力されたRoot
スロットのグローバルスケールの両方によって影響されます。デフォルト値は非常に大きい (~3.4×1038) ので、これを設定することが推奨されます。
HitTriggers
は、コライダーType
フィールドがTrigger
またはHapticTrigger
として設定されているコライダーコンポーネントのみを有効なヒットターゲットとしてみなすかを決定するものです。デフォルトはfalseです。
UsersOnly
は、アクティブなユーザーを持たないコライダーを有効なヒットターゲットとみなすかどうかを決定します。デフォルトはfalseで、この場合すべてのコライダーが有効なヒットターゲットとみなされます(他の要因に依存します)。しかし、trueに設定すると、アクティブなユーザーを持つ(つまり、ユーザーのスロット階層の下で子になっている)コライダーだけが、有効なヒットターゲットとみなされます。
DebugDuration
入力は、レイキャストデバッグビジュアルが持続する時間を決定します。この値は秒単位ですが、0 (デフォルト) に設定された場合、ビジュアルは1フレーム間持続します。負の値に設定された場合、デバッグビジュアルは描画されません。
Root
は、Origin
, Direction
, MaxDistance
が計算されるローカル座標空間の基準スロットを定義する入力項目です。
出力
OnHit
出力は、レイがキャストされたときに有効なターゲットコライダーがヒットした場合にインパルスを出力します。
OnMiss
出力は、レイがキャストされたときに有効なターゲットがヒットしなかった場合、インパルスを出力します。
HitCollider
の出力は、レイキャストのパスに沿ってヒットした最初の有効なターゲットコライダーを提供します。この値は、OnHit
から始まるインパルス連鎖の間のみ有効です。デフォルトは、nullです。
HitDistance
の出力は、レイキャストの原点と HitPoint
の間のグローバルな距離を出力します。この値は、OnHit
から始まるインパルス連鎖の間のみ有効です。デフォルトは0です。
HitPoint
の出力は、レイキャストが最初に HitCollider
と交差する点のグローバル座標を提供します。この値は、OnHit
から始まるインパルス連鎖の間のみ有効です。デフォルトは[0;0;0]です。
HitNormal
の出力は、レイキャストと HitCollider
の交点に対する法線ベクトルを出力します。
HitTriangleIndex
は、HitCollider
がMeshCollider (Component) である場合、ヒットしたメッシュのポリゴンのインデックスを出力するものです。
注意事項
コライダーは、その Type
enum フィールドが Trigger
, HapticTrigger
, HapticSampler
に設定されていない限り、通常レイキャストに対する有効なヒットターゲットとなります、HitTriggers
入力の詳細を参照してください。コライダーコンポーネントの IgnoreRaycasts
bool が false に設定されている場合、コライダーは有効なターゲットではなくなります。