Independent / public Windows utility

CCD2 OpenTrack Companion

Head tracking that stops the instant the game context is no longer safe.

01 / Purpose

Purpose and scope.

A safety-gated bridge between OpenTrack head tracking and City Car Driving 2.0. It receives processed head-pose data over local UDP and converts it into mouse-look controls only while the intended game state remains valid.

Translate OpenTrack rotational pose into City Car Driving 2.0 camera movement.

Hold the configured in-game binding only during a deliberately armed driving session.

Stop output immediately when focus, cursor state or tracking freshness becomes unsafe.

Provide repeatable setup, centring controls, deadzones and useful diagnostics.

02 / Interactive demo

CCD2 Companion: when movement becomes input.

Start driving mode and move the simulated pose. Try the Center View sequence, tune sensitivity and deadzones, then close a safety gate and resume.

About this demoAn interactive local preview using fictional data, embedded in this portfolio. A local adaptation of the desktop status and settings panels, with separate simulation controls for pose, timing and input conditions. No webcam, tracking service, game or system input is used. Changes reset when you reload.

03 / Decisions

Engineering decisions.

Own the output

The companion—not OpenTrack—controls synthetic input so game focus and safety state can participate in every movement decision.

Loopback only

Tracking traffic never needs to leave the machine, which keeps the communication boundary narrow.

Fail closed

Focus loss, a visible cursor or stale data releases held input immediately instead of guessing.

No injection or capture

The design avoids game-memory access, process injection, screen capture and fragile UI automation.

04 / Architecture

How it works.

01

Track

OpenTrack maps and filters camera input, then sends fixed-size pose packets over loopback UDP.

02

Gate

A 10 ms state loop checks arming, exact game focus, hidden cursor state and fresh valid tracking.

03

Convert

Pose deltas become relative mouse movement with centring and deadzone state kept non-blocking.

04

Recover

A durable marker records held input so the next launch can release exactly the binding left behind.

05 / Technology

The working parts.

C#Windows Forms.NET FrameworkWin32Loopback UDPINI configurationTimer-driven state machinesGitHub Releases

06 / Project status & roadmap

Current state and next steps.

Current
  • Version 1.2.0 is a stable public GitHub release.
  • Regression tests and hands-on testing in the game passed for normal movement and the safety stops.
  • Developed with AI assistance, which the project discloses.
Planned
  • Test the experimental cursor guard on more display and scaling setups.
  • Separate positive and negative centring and deadzone ranges.
  • Manage a portable OpenTrack installation, once the safeguards for it are designed and tested.
  • New features go to a separate alpha version; 1.2.0 stays unchanged.