Class: GazeConecaster
Defined in: packages/xr-input/src/pointer/gaze-conecaster.ts:79
Default candidate provider: cone-membership filter + pointer-compatible surface resolution + time-weighted dwell consensus.
Remarks
- Membership: a coarse sphere distance reject prunes far candidates, then a precise OBB closest-point test admits the candidate iff the angle from the gaze direction to the closest point on its oriented bounding box (its local AABB transformed by
matrixWorld) is withinconeAngle. This avoids the bounding-sphere overestimation that would let large flat panels register hover from far past their visible silhouette. - Geometry: survivors are resolved by the callback supplied in GazeCandidateContext, so the exact same pointer-event eligibility and ordering rules are used for acquisition and dispatch.
- Comparer: per-frame best is chosen by
comparer(default angle -> distance). - Dwell: per-frame winners are appended to a ring buffer; samples older than
dwellWindowSecondsare dropped; the object with the largest cumulative dt inside the window wins.
Implements
Constructors
Constructor
new GazeConecaster(
opts):GazeConecaster
Defined in: packages/xr-input/src/pointer/gaze-conecaster.ts:111
Parameters
opts
Returns
GazeConecaster
Properties
comparer
comparer:
GazeComparer
Defined in: packages/xr-input/src/pointer/gaze-conecaster.ts:83
coneAngle
coneAngle:
number
Defined in: packages/xr-input/src/pointer/gaze-conecaster.ts:80
coneLength
coneLength:
number
Defined in: packages/xr-input/src/pointer/gaze-conecaster.ts:81
dwellWindowSeconds
dwellWindowSeconds:
number
Defined in: packages/xr-input/src/pointer/gaze-conecaster.ts:82
Methods
getDwellWinner()
getDwellWinner():
GazeHit
Defined in: packages/xr-input/src/pointer/gaze-conecaster.ts:558
Current dwell winner, or null.
Returns
reset()
reset():
void
Defined in: packages/xr-input/src/pointer/gaze-conecaster.ts:140
Called when gaze becomes invalid (session end, suppression, etc.).
Returns
void
Implementation of
update()
update(
time,dt,ctx):GazeHit
Defined in: packages/xr-input/src/pointer/gaze-conecaster.ts:130
Compute the best hit for this frame.
Parameters
time
number
Elapsed time in seconds.
dt
number
Frame delta in seconds.
ctx
Per-frame gaze context. Do not retain references.
Returns
Best hit, or null if no candidate qualifies.