Difference between revisions of "Raycaster (LogiX node)/ja"
(Created page with "<code>HitDistance</code> は、レイキャストの原点と <code>HitPoint</code> の間のグローバルな距離を出力します。デフォルトは0です。") |
(Created page with "<code>HitPoint</code> の出力は、レイキャストが最初に <code>HitCollider</code> と交差する点のグローバル座標を提供します。デフォルトは...") |
||
Line 48: | Line 48: | ||
− | + | <code>HitPoint</code> の出力は、レイキャストが最初に <code>HitCollider</code> と交差する点のグローバル座標を提供します。デフォルトは [0;0;0] です。 | |
Revision as of 08:10, 15 February 2022
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 です。
HitDistance
は、レイキャストの原点と HitPoint
の間のグローバルな距離を出力します。デフォルトは0です。
HitPoint
の出力は、レイキャストが最初に HitCollider
と交差する点のグローバル座標を提供します。デフォルトは [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.