HUD & UI
While the cyberpunk aesthetic lends itself to having a screen-space UI overlay that exists digitally around the player's field of vision, there are significant challenges around incorporating this into a VR environment without causing discomfort or motion sickness to the player. While, time permitting, we will investigate the possibility for this, we will initially develop with a strictly diegetic UI. All information must originate from the motorcycle or the player's body.
Visible UI elements will be restricted to:
The Player's Hands (VR Interface)
The Dashboard (Holographic HUD)
Physical Cockpit Controls (Analog Interactables)
The player’s hands are their primary interface with their motorcycle.
Tracking: Hands are rendered 1:1 with real-world controller position.
Dynamic Gestures
Free State: When not touching the bike, hands animate naturally (open/relaxed).
Grip State: When Secondary Triggers are held, hands snap to the handlebars (IK Lock) to provide visual confirmation of control.
Interaction State: Hands change pose when hovering over switches or toggles (e.g., extending a finger to press the Starter or Transform button).
The primary feedback system uses holographic projections anchored to the bike, modeled after evolved and digitized motorcycle instruments.
Handlebar Cluster (The "Dash")
Speedometer: Digital gauge showing current bike speed.
Lean Angle Indicator: Gauge showing current lean vs. maximum safe lean (for the fall limit fail-state mechanic).
Windshield Display (AR Overlay)
Lap Timer: Digital readout of current and best lap times.
Corner Entry Warning:
The Compass (Navigation & Safety): A ribbon-style or arrow-based guide showing the track geometry ahead (derived from Track Chunk metadata). The Compass changes color based on the player’s entry speed relative to the upcoming turn's severity.
Green/Yellow: Safe speed.
Red/Flashing: Speed too high; braking required imminently.
For Programming: The "Corner Entry Warning" on the Windshield needs to query the next Track Chunk's metadata (Ideal Speed Variable) and compare it to RigidBody.velocity on the bike.
To contrast with the holographic data, the control inputs are "Analog"—physical, tactile, mechanical switches that ground the bike in the "grit" of the cyberpunk setting.
Handlebar Controls
Starter Switch: Located on the Right Handlebar. A physical rocker switch to ignite the engine (start the race/session).
Transformation Button (Street/Dirt Toggle): Located at the Bottom-Center of Handlebars. A prominent, accessible button used to switch tire modes.
Design Note: Positioned to be hit quickly during high-intensity transitions.
Gas Tank Console (Performance Management)
An amalgamation of toggles, dials, and switches mounted directly on the tank.
Function: Used for mid-race minigames involving bike tuning or mitigating environmental threats (e.g., cooling vents, fuel mix).
Interaction: Requires the player to release the handlebar (one-handed driving) to adjust, creating a risk/reward moment.
Design Note: Specific functionality to be discussed later. This is not integral for initial bike functions.
Standard navigation while in the main menu or pause menu is handled via a straightforward "Point and Click" interface for accessibility and ease of use.
World Space Canvas: Menus are rendered as floating panels within the game world (not attached to the camera), allowing the player to look around freely.
Input Method: Raycast/Pointer: The player points their controller/hand at the menu to target a button or action.
Selection: Pulling the Primary Trigger executes the button press.
Visual Feedback
Hover State: Buttons highlight or change color when the player's pointer intersects with them, confirming exactly which option is being targeted before selection.
Press State: Visual depression or color flash to confirm input.