UIsdkRayInteractable that hand rays and controller rays use, and gaze targets that same interactable through the gaze targeting component on the rig. The result is a single widget with one interactable graph that can be driven by poke up close, by ray at mid-range, and by gaze plus a select input at a distance.GazePolicy on the UIsdkInteractableWidgetComponent can override that baseline in either direction, so a widget can opt in or out of gaze without changing the project default. The gaze targeting component on the rig then decides whether a hit resolves to the whole panel or to a single sub-widget under the gaze.
UIsdkRayInteractable target broadcast by UIsdkGazeTargetingComponent and applies Select() and Unselect() from a hand’s select input.UIsdkRayInteractable that the widget already exposes for ray interaction. On UIsdkInteractableWidgetComponent, bCreateRayInteractable must be true so that a ray interactable is spawned, and its collider must block the gaze trace channel (default ECC_Visibility). If the widget does not spawn a ray interactable, gaze has nothing to target.
GazePolicy on UIsdkInteractableWidgetComponent controls whether the ray interactable that the widget spawns is eligible for gaze targeting. The setting is applied to that spawned ray interactable and is relevant only when bCreateRayInteractable is true.UPROPERTY(Category = "InteractionSDK|Interactable|Ray Interactable",
EditAnywhere, BlueprintReadWrite, Meta = (ExposeOnSpawn = true))
EIsdkGazePolicy GazePolicy = EIsdkGazePolicy::UsePluginSetting;
EIsdkGazePolicy has three values:| Policy | Editor Label | Effect |
|---|---|---|
UsePluginSetting | Use Plugin Setting | Defers to the project Allow Gaze By Default setting (default true) |
Allow | Allow | Always allow gaze for this widget |
Disallow | Disallow | Never allow gaze for this widget |

Project Settings > Plugins > Meta XR - InteractionSDK

TargetingMethod on UIsdkGazeTargetingComponent (EIsdkGazeTargetingMethod, default ConeCast) governs how gaze resolves a hit to a target.UWidgetComponent. During ConeCast, gaze targeting uses these regions to identify the intended sub-widget.| Targeting Method | Behavior for Widgets |
|---|---|
ConeCast | Combines a cone around the gaze axis with the widget region system to resolve the hit to a single sub-widget, such as one button on a panel |
Line | Treats the whole render rect of the panel as one target. UMG then resolves the sub-widget from the world hit point |

ConeCast resolves a widget region and produces a region-precise pointer hit; Line targets the whole panel and leaves sub-widget resolution to UMG using the world hit point.
UIsdkRayInteractable and the same widget event pipeline.