UX Framework

The UI Summoner

Interaction Pattern

Overview

To bring interactive elements within the user's specific "comfortable reach zone" (Peripersonal Space) without requiring physical movement or leaning.


Implementation Specification

A gesture - such as "gaze" - or a button press that teleports a distant menu to the user's immediate "manipulation zone" (e.g., lap or chest height).

  • Relative Anchoring: The UI position must be calculated relative to the user's current Camera (Head) position, never the World Origin (0,0,0).
  • Y-Axis Override: The system must allow for a "Height Offset" to prevent the UI from spawning at eye level (which causes "Gorilla Arm"). It should default to a "Lap/Desk" height.
  • Billboarding: The UI must rotate to face the user's camera vector on spawn.
The UI Summoner Component


Reference Pattern

WHEN "Summon" Input Received:
  1. GET User_Head_Position (X,Y,Z)
  2. GET User_Forward_Vector
  3. CALCULATE Target_Position = User_Head_Position + (User_Forward_Vector * Reach_Distance_Setting)
  4. OVERRIDE Target_Position.Y with User_Preferred_Height_Setting
  5. ROTATE UI to face User_Head_Position
  6. MOVE UI to Target_Position using Smooth Damping (preventing visual jitter)

Dependencies

Dynamic Anchoring Behaviour

Enhancements

Gaze-Dwell Activation Behaviour can be used to trigger the UI Summoner with a simple gaze gesture, eliminating the need for physical input and allowing for a more seamless interaction.

Multimodal Consistency to ensure that the summoning action is accompanied by synchronised visual, auditory, and haptic feedback, creating a cohesive and intuitive experience that minimises sensory confusion.

Previous
Stochastic Resonance Control