Head Tracking
An OpenTrack compatible head tracking mod for Outer Wilds
Outer Wilds Head Tracking
![]()
An unofficial head tracking mod for Outer Wilds that lets you look around naturally using your phone or dedicated head tracker.
Features
- Decoupled look + aim: Look around freely with your head while your aim stays independent
- 6DOF head tracking: Yaw, pitch, roll rotation plus positional tracking (lean in/out/side-to-side) via OpenTrack UDP protocol
- Adaptive smoothing: Automatically adjusts smoothing for WiFi/remote connections to reduce jitter
- Smart auto-disable: Tracking automatically pauses during model ship piloting, signalscope zoom, and pause menu
- Full game integration: Flashlight follows your gaze, Nomai Translator targets where you look, quantum objects respect head-tracked view direction
Requirements
- Outer Wilds (Steam or Epic)
- Outer Wilds Mod Manager
- A head tracking source (see below)
Quick Start
- Install pixi
- Clone this repository
- Run
pixi run install - Configure OpenTrack to output UDP data to
127.0.0.1:4242 - Launch the game
Manual Installation
See INSTALL.md for detailed manual installation instructions.
Head Tracking Setup
This mod receives tracking data via the OpenTrack UDP protocol (port 4242 by default). You can use a phone or webcam with OpenTrack or any OpenTrack-compatible head tracking software.
The mod automatically detects remote connections (e.g., phone over WiFi) and applies smoothing to compensate for network jitter.
Controls
Two equivalent binding sets - use whichever your keyboard has:
| Action | Nav-cluster | Chord |
|---|---|---|
| Recenter | Home | Ctrl+Shift+T |
| Toggle tracking | End | Ctrl+Shift+Y |
| Cycle tracking mode | Page Up | Ctrl+Shift+G |
Page Up / Ctrl+Shift+G cycles tracking mode:
- Normal head-tracked gameplay
- Positional tracking disabled, rotational tracking enabled
- Rotational tracking disabled, positional tracking enabled
- Back to normal
Configuration
Settings are available in the OWML Mod Manager or in-game mod menu. The mod creates a config file with default settings on first run. Edit it to customize:
| Setting | Default | Description |
|---|---|---|
opentrackPort | 4242 | UDP port for receiving tracking data |
yawSensitivity | 1.0 | Horizontal look sensitivity |
pitchSensitivity | 1.0 | Vertical look sensitivity |
rollSensitivity | 1.0 | Head tilt sensitivity |
smoothing | 0.0 | Manual smoothing (0 = none, 1 = max) |
adaptiveSmoothing | true | Auto-apply smoothing for remote/WiFi connections |
positionEnabled | true | Enable positional tracking (lean in/out/side-to-side) |
positionSensitivityX | 4.0 | Lateral position multiplier |
positionSensitivityY | 4.0 | Vertical position multiplier |
positionSensitivityZ | 4.0 | Depth position multiplier |
positionLimitX | 0.30 | Max lateral displacement (meters) |
positionLimitY | 0.20 | Max vertical displacement (meters) |
positionLimitZ | 0.40 | Max depth displacement (meters) |
positionSmoothing | 0.15 | Position smoothing factor |
Building from Source
This project uses pixi for build management.
# Install dependencies
pixi run restore
# Build the mod
pixi run build
# Build and install to OWML Mods folder
pixi run install
# Create release package
pixi run package
The mod depends on the shared CameraUnlock.Core library (included as a git submodule in the shared/ directory).
Project Structure
outer-wilds/
โโโ manifest.json # OWML mod manifest
โโโ default-config.json # Default settings
โโโ pixi.toml # Build configuration
โโโ scripts/
โ โโโ deploy.ps1 # Deploy to OWML
โ โโโ package.ps1 # Create release zip
โ โโโ uninstall.ps1 # Remove from OWML
โโโ src/OuterWildsHeadTracking/
โโโ HeadTrackingMod.cs # Main mod entry point
โโโ Camera/
โ โโโ Core/ # Camera rotation patches
โ โโโ Effects/ # Flashlight, fog, quantum
โ โโโ UI/ # Reticle, markers, translator
โ โโโ Utilities/ # Rotation helpers
โโโ Configuration/ # Constants
โโโ Tracking/ # OpenTrack client
Technical Details
- Built for .NET Framework 4.8
- Uses Harmony 2.4 for runtime patching
- Integrates with OWML 2.9+
- Shared core library provides: UDP receiver, rotation processing, smoothing algorithms
License
MIT License - see LICENSE file for details.
Credits
- Mobius Digital - Outer Wilds
- OWML - Mod loading framework
- Harmony - Runtime patching library
Head Tracking
An OpenTrack compatible head tracking mod for Outer Wilds
