Raycaster (LogiXノード)
Raycaster | ||
---|---|---|
Inputs | ||
Float3 | Origin | |
Float3 | Direction | |
Float | MaxDistance | |
Bool | HitTriggers | |
Bool | UsersOnly | |
Slot | Root | |
Outputs | ||
Bool | HasHit | |
ICollider | HitCollider | |
Float | HitDistance | |
Float3 | HitPoint | |
Float3 | HitNormal | |
Int | HitTriangleIndex |
Raycasterノードは、フレームごとに更新される入力プロパティでレイキャストを生成します。現在ヒットしているターゲットコライダーに関する詳細(存在する場合)を、出力から得ることができます。
== 使用方法
入力
Origin
は、レイがキャストされるポイントを定義します。この値は、入力された Root
スロットの ローカル座標空間からの相対値として扱われます。デフォルトは [0;0;0] です。
Direction
は、レイがキャストされる方向ベクトルを定義します。この値は入力されたRoot
スロットのローカル座標空間からの相対値として扱われます。この入力は、デフォルトが[0;0;0]であるため、値を設定することが必要です。
MaxDistance
はレイキャストの最大長を制御します。レイキャストの実際の長さは、この入力と入力されたRoot
スロットのグローバルスケールの両方によって影響されます。デフォルト値は非常に大きい (~3.4×1038) ので、これを設定することが推奨されます。
HitTriggers
は、コライダーType
フィールドがTrigger
またはHapticTrigger
として設定されているコライダーコンポーネントのみを有効なヒットターゲットとしてみなすかを決定するものです。デフォルトはfalseです。
UsersOnly
は、アクティブなユーザーを持たないコライダーを有効なヒットターゲットとみなすかどうかを決定します。デフォルトはfalseで、この場合すべてのコライダーが有効なヒットターゲットとみなされます(他の要因に依存します)。しかし、trueに設定すると、アクティブなユーザーを持つ(つまり、ユーザーのスロット階層の下で子になっている)コライダーだけが、有効なヒットターゲットとみなされます。
Root
は、Origin
, Direction
, MaxDistance
が計算されるローカル座標空間の基準となるスロットを定義する入力項目です。
出力
HasHit
入力は、レイキャストが現在有効なヒットターゲットを持っているかどうかを出力します。
HitCollider
の出力は、レイキャストのパスに沿ってヒットした最初の有効なターゲットコライダーを提供します。デフォルトは null です。
The HitDistance
output provides the global distance between the raycast origin and the HitPoint
. Default is 0.
The HitPoint
output provides the global coordinates of the point where raycast first intersects with the HitCollider
. Default is [0;0;0].
The HitNormal
output provides the normal vector for the intersection of the raycast and the HitCollider
.
The HitTriangleIndex
outputs the index of the mesh triangle which was hit in the case that the HitCollider
is a MeshCollider (Component).
Notes
Colliders will generally be valid hit targets for raycasts unless their Type
enum field is set to Trigger
, HapticTrigger
, or HapticSampler
, though see details for the HitTriggers
input. Colliders will not be valid targets if the IgnoreRaycasts
bool is set to true on the collider component.