Sean May
From the RotoText wiki
Sean May contributed to the repository between 30 September and 1 October 2026, founding the project with implementations across all seven features. The work established core infrastructure, eye-tracking and geometric systems, created two initial scenes for text and target viewing, and added a third game scene with a complete session state machine and renderer.
Activity
30 Sep 2026: 37 commits, +8,647 −190 lines 30 Sep 2026: 37 commits, +8,647 −190 lines 1 Oct 2026: 13 commits, +3,090 −43 lines 1 Oct 2026: 13 commits, +3,090 −43 lines Sean May's commits by day Period Commits Lines added Lines removed 30 Sep 2026 37 8,647 190 1 Oct 2026 13 3,090 43
2026
1 Jan 2026: 0 commits, +0 −0 lines 2 Jan 2026: 0 commits, +0 −0 lines 3 Jan 2026: 0 commits, +0 −0 lines 4 Jan 2026: 0 commits, +0 −0 lines 5 Jan 2026: 0 commits, +0 −0 lines 6 Jan 2026: 0 commits, +0 −0 lines 7 Jan 2026: 0 commits, +0 −0 lines 8 Jan 2026: 0 commits, +0 −0 lines 9 Jan 2026: 0 commits, +0 −0 lines 10 Jan 2026: 0 commits, +0 −0 lines 11 Jan 2026: 0 commits, +0 −0 lines 12 Jan 2026: 0 commits, +0 −0 lines 13 Jan 2026: 0 commits, +0 −0 lines 14 Jan 2026: 0 commits, +0 −0 lines 15 Jan 2026: 0 commits, +0 −0 lines 16 Jan 2026: 0 commits, +0 −0 lines 17 Jan 2026: 0 commits, +0 −0 lines 18 Jan 2026: 0 commits, +0 −0 lines 19 Jan 2026: 0 commits, +0 −0 lines 20 Jan 2026: 0 commits, +0 −0 lines 21 Jan 2026: 0 commits, +0 −0 lines 22 Jan 2026: 0 commits, +0 −0 lines 23 Jan 2026: 0 commits, +0 −0 lines 24 Jan 2026: 0 commits, +0 −0 lines 25 Jan 2026: 0 commits, +0 −0 lines 26 Jan 2026: 0 commits, +0 −0 lines 27 Jan 2026: 0 commits, +0 −0 lines 28 Jan 2026: 0 commits, +0 −0 lines 29 Jan 2026: 0 commits, +0 −0 lines 30 Jan 2026: 0 commits, +0 −0 lines 31 Jan 2026: 0 commits, +0 −0 lines 1 Feb 2026: 0 commits, +0 −0 lines 2 Feb 2026: 0 commits, +0 −0 lines 3 Feb 2026: 0 commits, +0 −0 lines 4 Feb 2026: 0 commits, +0 −0 lines 5 Feb 2026: 0 commits, +0 −0 lines 6 Feb 2026: 0 commits, +0 −0 lines 7 Feb 2026: 0 commits, +0 −0 lines 8 Feb 2026: 0 commits, +0 −0 lines 9 Feb 2026: 0 commits, +0 −0 lines 10 Feb 2026: 0 commits, +0 −0 lines 11 Feb 2026: 0 commits, +0 −0 lines 12 Feb 2026: 0 commits, +0 −0 lines 13 Feb 2026: 0 commits, +0 −0 lines 14 Feb 2026: 0 commits, +0 −0 lines 15 Feb 2026: 0 commits, +0 −0 lines 16 Feb 2026: 0 commits, +0 −0 lines 17 Feb 2026: 0 commits, +0 −0 lines 18 Feb 2026: 0 commits, +0 −0 lines 19 Feb 2026: 0 commits, +0 −0 lines 20 Feb 2026: 0 commits, +0 −0 lines 21 Feb 2026: 0 commits, +0 −0 lines 22 Feb 2026: 0 commits, +0 −0 lines 23 Feb 2026: 0 commits, +0 −0 lines 24 Feb 2026: 0 commits, +0 −0 lines 25 Feb 2026: 0 commits, +0 −0 lines 26 Feb 2026: 0 commits, +0 −0 lines 27 Feb 2026: 0 commits, +0 −0 lines 28 Feb 2026: 0 commits, +0 −0 lines 1 Mar 2026: 0 commits, +0 −0 lines 2 Mar 2026: 0 commits, +0 −0 lines 3 Mar 2026: 0 commits, +0 −0 lines 4 Mar 2026: 0 commits, +0 −0 lines 5 Mar 2026: 0 commits, +0 −0 lines 6 Mar 2026: 0 commits, +0 −0 lines 7 Mar 2026: 0 commits, +0 −0 lines 8 Mar 2026: 0 commits, +0 −0 lines 9 Mar 2026: 0 commits, +0 −0 lines 10 Mar 2026: 0 commits, +0 −0 lines 11 Mar 2026: 0 commits, +0 −0 lines 12 Mar 2026: 0 commits, +0 −0 lines 13 Mar 2026: 0 commits, +0 −0 lines 14 Mar 2026: 0 commits, +0 −0 lines 15 Mar 2026: 0 commits, +0 −0 lines 16 Mar 2026: 0 commits, +0 −0 lines 17 Mar 2026: 0 commits, +0 −0 lines 18 Mar 2026: 0 commits, +0 −0 lines 19 Mar 2026: 0 commits, +0 −0 lines 20 Mar 2026: 0 commits, +0 −0 lines 21 Mar 2026: 0 commits, +0 −0 lines 22 Mar 2026: 0 commits, +0 −0 lines 23 Mar 2026: 0 commits, +0 −0 lines 24 Mar 2026: 0 commits, +0 −0 lines 25 Mar 2026: 0 commits, +0 −0 lines 26 Mar 2026: 0 commits, +0 −0 lines 27 Mar 2026: 0 commits, +0 −0 lines 28 Mar 2026: 0 commits, +0 −0 lines 29 Mar 2026: 0 commits, +0 −0 lines 30 Mar 2026: 0 commits, +0 −0 lines 31 Mar 2026: 0 commits, +0 −0 lines 1 Apr 2026: 0 commits, +0 −0 lines 2 Apr 2026: 0 commits, +0 −0 lines 3 Apr 2026: 0 commits, +0 −0 lines 4 Apr 2026: 0 commits, +0 −0 lines 5 Apr 2026: 0 commits, +0 −0 lines 6 Apr 2026: 0 commits, +0 −0 lines 7 Apr 2026: 0 commits, +0 −0 lines 8 Apr 2026: 0 commits, +0 −0 lines 9 Apr 2026: 0 commits, +0 −0 lines 10 Apr 2026: 0 commits, +0 −0 lines 11 Apr 2026: 0 commits, +0 −0 lines 12 Apr 2026: 0 commits, +0 −0 lines 13 Apr 2026: 0 commits, +0 −0 lines 14 Apr 2026: 0 commits, +0 −0 lines 15 Apr 2026: 0 commits, +0 −0 lines 16 Apr 2026: 0 commits, +0 −0 lines 17 Apr 2026: 0 commits, +0 −0 lines 18 Apr 2026: 0 commits, +0 −0 lines 19 Apr 2026: 0 commits, +0 −0 lines 20 Apr 2026: 0 commits, +0 −0 lines 21 Apr 2026: 0 commits, +0 −0 lines 22 Apr 2026: 0 commits, +0 −0 lines 23 Apr 2026: 0 commits, +0 −0 lines 24 Apr 2026: 0 commits, +0 −0 lines 25 Apr 2026: 0 commits, +0 −0 lines 26 Apr 2026: 0 commits, +0 −0 lines 27 Apr 2026: 0 commits, +0 −0 lines 28 Apr 2026: 0 commits, +0 −0 lines 29 Apr 2026: 0 commits, +0 −0 lines 30 Apr 2026: 0 commits, +0 −0 lines 1 May 2026: 0 commits, +0 −0 lines 2 May 2026: 0 commits, +0 −0 lines 3 May 2026: 0 commits, +0 −0 lines 4 May 2026: 0 commits, +0 −0 lines 5 May 2026: 0 commits, +0 −0 lines 6 May 2026: 0 commits, +0 −0 lines 7 May 2026: 0 commits, +0 −0 lines 8 May 2026: 0 commits, +0 −0 lines 9 May 2026: 0 commits, +0 −0 lines 10 May 2026: 0 commits, +0 −0 lines 11 May 2026: 0 commits, +0 −0 lines 12 May 2026: 0 commits, +0 −0 lines 13 May 2026: 0 commits, +0 −0 lines 14 May 2026: 0 commits, +0 −0 lines 15 May 2026: 0 commits, +0 −0 lines 16 May 2026: 0 commits, +0 −0 lines 17 May 2026: 0 commits, +0 −0 lines 18 May 2026: 0 commits, +0 −0 lines 19 May 2026: 0 commits, +0 −0 lines 20 May 2026: 0 commits, +0 −0 lines 21 May 2026: 0 commits, +0 −0 lines 22 May 2026: 0 commits, +0 −0 lines 23 May 2026: 0 commits, +0 −0 lines 24 May 2026: 0 commits, +0 −0 lines 25 May 2026: 0 commits, +0 −0 lines 26 May 2026: 0 commits, +0 −0 lines 27 May 2026: 0 commits, +0 −0 lines 28 May 2026: 0 commits, +0 −0 lines 29 May 2026: 0 commits, +0 −0 lines 30 May 2026: 0 commits, +0 −0 lines 31 May 2026: 0 commits, +0 −0 lines 1 Jun 2026: 0 commits, +0 −0 lines 2 Jun 2026: 0 commits, +0 −0 lines 3 Jun 2026: 0 commits, +0 −0 lines 4 Jun 2026: 0 commits, +0 −0 lines 5 Jun 2026: 0 commits, +0 −0 lines 6 Jun 2026: 0 commits, +0 −0 lines 7 Jun 2026: 0 commits, +0 −0 lines 8 Jun 2026: 0 commits, +0 −0 lines 9 Jun 2026: 0 commits, +0 −0 lines 10 Jun 2026: 0 commits, +0 −0 lines 11 Jun 2026: 0 commits, +0 −0 lines 12 Jun 2026: 0 commits, +0 −0 lines 13 Jun 2026: 0 commits, +0 −0 lines 14 Jun 2026: 0 commits, +0 −0 lines 15 Jun 2026: 0 commits, +0 −0 lines 16 Jun 2026: 0 commits, +0 −0 lines 17 Jun 2026: 0 commits, +0 −0 lines 18 Jun 2026: 0 commits, +0 −0 lines 19 Jun 2026: 0 commits, +0 −0 lines 20 Jun 2026: 0 commits, +0 −0 lines 21 Jun 2026: 0 commits, +0 −0 lines 22 Jun 2026: 0 commits, +0 −0 lines 23 Jun 2026: 0 commits, +0 −0 lines 24 Jun 2026: 0 commits, +0 −0 lines 25 Jun 2026: 0 commits, +0 −0 lines 26 Jun 2026: 0 commits, +0 −0 lines 27 Jun 2026: 0 commits, +0 −0 lines 28 Jun 2026: 0 commits, +0 −0 lines 29 Jun 2026: 0 commits, +0 −0 lines 30 Jun 2026: 0 commits, +0 −0 lines 1 Jul 2026: 0 commits, +0 −0 lines 2 Jul 2026: 0 commits, +0 −0 lines 3 Jul 2026: 0 commits, +0 −0 lines 4 Jul 2026: 0 commits, +0 −0 lines 5 Jul 2026: 0 commits, +0 −0 lines 6 Jul 2026: 0 commits, +0 −0 lines 7 Jul 2026: 0 commits, +0 −0 lines 8 Jul 2026: 0 commits, +0 −0 lines 9 Jul 2026: 0 commits, +0 −0 lines 10 Jul 2026: 0 commits, +0 −0 lines 11 Jul 2026: 0 commits, +0 −0 lines 12 Jul 2026: 0 commits, +0 −0 lines 13 Jul 2026: 0 commits, +0 −0 lines 14 Jul 2026: 0 commits, +0 −0 lines 15 Jul 2026: 0 commits, +0 −0 lines 16 Jul 2026: 0 commits, +0 −0 lines 17 Jul 2026: 0 commits, +0 −0 lines 18 Jul 2026: 0 commits, +0 −0 lines 19 Jul 2026: 0 commits, +0 −0 lines 20 Jul 2026: 0 commits, +0 −0 lines 21 Jul 2026: 0 commits, +0 −0 lines 22 Jul 2026: 0 commits, +0 −0 lines 23 Jul 2026: 0 commits, +0 −0 lines 24 Jul 2026: 0 commits, +0 −0 lines 25 Jul 2026: 0 commits, +0 −0 lines 26 Jul 2026: 0 commits, +0 −0 lines 27 Jul 2026: 0 commits, +0 −0 lines 28 Jul 2026: 0 commits, +0 −0 lines 29 Jul 2026: 0 commits, +0 −0 lines 30 Jul 2026: 0 commits, +0 −0 lines 31 Jul 2026: 0 commits, +0 −0 lines 1 Aug 2026: 0 commits, +0 −0 lines 2 Aug 2026: 0 commits, +0 −0 lines 3 Aug 2026: 0 commits, +0 −0 lines 4 Aug 2026: 0 commits, +0 −0 lines 5 Aug 2026: 0 commits, +0 −0 lines 6 Aug 2026: 0 commits, +0 −0 lines 7 Aug 2026: 0 commits, +0 −0 lines 8 Aug 2026: 0 commits, +0 −0 lines 9 Aug 2026: 0 commits, +0 −0 lines 10 Aug 2026: 0 commits, +0 −0 lines 11 Aug 2026: 0 commits, +0 −0 lines 12 Aug 2026: 0 commits, +0 −0 lines 13 Aug 2026: 0 commits, +0 −0 lines 14 Aug 2026: 0 commits, +0 −0 lines 15 Aug 2026: 0 commits, +0 −0 lines 16 Aug 2026: 0 commits, +0 −0 lines 17 Aug 2026: 0 commits, +0 −0 lines 18 Aug 2026: 0 commits, +0 −0 lines 19 Aug 2026: 0 commits, +0 −0 lines 20 Aug 2026: 0 commits, +0 −0 lines 21 Aug 2026: 0 commits, +0 −0 lines 22 Aug 2026: 0 commits, +0 −0 lines 23 Aug 2026: 0 commits, +0 −0 lines 24 Aug 2026: 0 commits, +0 −0 lines 25 Aug 2026: 0 commits, +0 −0 lines 26 Aug 2026: 0 commits, +0 −0 lines 27 Aug 2026: 0 commits, +0 −0 lines 28 Aug 2026: 0 commits, +0 −0 lines 29 Aug 2026: 0 commits, +0 −0 lines 30 Aug 2026: 0 commits, +0 −0 lines 31 Aug 2026: 0 commits, +0 −0 lines 1 Sep 2026: 0 commits, +0 −0 lines 2 Sep 2026: 0 commits, +0 −0 lines 3 Sep 2026: 0 commits, +0 −0 lines 4 Sep 2026: 0 commits, +0 −0 lines 5 Sep 2026: 0 commits, +0 −0 lines 6 Sep 2026: 0 commits, +0 −0 lines 7 Sep 2026: 0 commits, +0 −0 lines 8 Sep 2026: 0 commits, +0 −0 lines 9 Sep 2026: 0 commits, +0 −0 lines 10 Sep 2026: 0 commits, +0 −0 lines 11 Sep 2026: 0 commits, +0 −0 lines 12 Sep 2026: 0 commits, +0 −0 lines 13 Sep 2026: 0 commits, +0 −0 lines 14 Sep 2026: 0 commits, +0 −0 lines 15 Sep 2026: 0 commits, +0 −0 lines 16 Sep 2026: 0 commits, +0 −0 lines 17 Sep 2026: 0 commits, +0 −0 lines 18 Sep 2026: 0 commits, +0 −0 lines 19 Sep 2026: 0 commits, +0 −0 lines 20 Sep 2026: 0 commits, +0 −0 lines 21 Sep 2026: 0 commits, +0 −0 lines 22 Sep 2026: 0 commits, +0 −0 lines 23 Sep 2026: 0 commits, +0 −0 lines 24 Sep 2026: 0 commits, +0 −0 lines 25 Sep 2026: 0 commits, +0 −0 lines 26 Sep 2026: 0 commits, +0 −0 lines 27 Sep 2026: 0 commits, +0 −0 lines 28 Sep 2026: 0 commits, +0 −0 lines 29 Sep 2026: 0 commits, +0 −0 lines 30 Sep 2026: 37 commits, +8,647 −190 lines 1 Oct 2026: 13 commits, +3,090 −43 lines 2 Oct 2026: 0 commits, +0 −0 lines 3 Oct 2026: 0 commits, +0 −0 lines 4 Oct 2026: 0 commits, +0 −0 lines 5 Oct 2026: 0 commits, +0 −0 lines 6 Oct 2026: 0 commits, +0 −0 lines 7 Oct 2026: 0 commits, +0 −0 lines 8 Oct 2026: 0 commits, +0 −0 lines 9 Oct 2026: 0 commits, +0 −0 lines 10 Oct 2026: 0 commits, +0 −0 lines 11 Oct 2026: 0 commits, +0 −0 lines 12 Oct 2026: 0 commits, +0 −0 lines 13 Oct 2026: 0 commits, +0 −0 lines 14 Oct 2026: 0 commits, +0 −0 lines 15 Oct 2026: 0 commits, +0 −0 lines 16 Oct 2026: 0 commits, +0 −0 lines 17 Oct 2026: 0 commits, +0 −0 lines 18 Oct 2026: 0 commits, +0 −0 lines 19 Oct 2026: 0 commits, +0 −0 lines 20 Oct 2026: 0 commits, +0 −0 lines 21 Oct 2026: 0 commits, +0 −0 lines 22 Oct 2026: 0 commits, +0 −0 lines 23 Oct 2026: 0 commits, +0 −0 lines 24 Oct 2026: 0 commits, +0 −0 lines 25 Oct 2026: 0 commits, +0 −0 lines 26 Oct 2026: 0 commits, +0 −0 lines 27 Oct 2026: 0 commits, +0 −0 lines 28 Oct 2026: 0 commits, +0 −0 lines 29 Oct 2026: 0 commits, +0 −0 lines 30 Oct 2026: 0 commits, +0 −0 lines 31 Oct 2026: 0 commits, +0 −0 lines 1 Nov 2026: 0 commits, +0 −0 lines 2 Nov 2026: 0 commits, +0 −0 lines 3 Nov 2026: 0 commits, +0 −0 lines 4 Nov 2026: 0 commits, +0 −0 lines 5 Nov 2026: 0 commits, +0 −0 lines 6 Nov 2026: 0 commits, +0 −0 lines 7 Nov 2026: 0 commits, +0 −0 lines 8 Nov 2026: 0 commits, +0 −0 lines 9 Nov 2026: 0 commits, +0 −0 lines 10 Nov 2026: 0 commits, +0 −0 lines 11 Nov 2026: 0 commits, +0 −0 lines 12 Nov 2026: 0 commits, +0 −0 lines 13 Nov 2026: 0 commits, +0 −0 lines 14 Nov 2026: 0 commits, +0 −0 lines 15 Nov 2026: 0 commits, +0 −0 lines 16 Nov 2026: 0 commits, +0 −0 lines 17 Nov 2026: 0 commits, +0 −0 lines 18 Nov 2026: 0 commits, +0 −0 lines 19 Nov 2026: 0 commits, +0 −0 lines 20 Nov 2026: 0 commits, +0 −0 lines 21 Nov 2026: 0 commits, +0 −0 lines 22 Nov 2026: 0 commits, +0 −0 lines 23 Nov 2026: 0 commits, +0 −0 lines 24 Nov 2026: 0 commits, +0 −0 lines 25 Nov 2026: 0 commits, +0 −0 lines 26 Nov 2026: 0 commits, +0 −0 lines 27 Nov 2026: 0 commits, +0 −0 lines 28 Nov 2026: 0 commits, +0 −0 lines 29 Nov 2026: 0 commits, +0 −0 lines 30 Nov 2026: 0 commits, +0 −0 lines 1 Dec 2026: 0 commits, +0 −0 lines 2 Dec 2026: 0 commits, +0 −0 lines 3 Dec 2026: 0 commits, +0 −0 lines 4 Dec 2026: 0 commits, +0 −0 lines 5 Dec 2026: 0 commits, +0 −0 lines 6 Dec 2026: 0 commits, +0 −0 lines 7 Dec 2026: 0 commits, +0 −0 lines 8 Dec 2026: 0 commits, +0 −0 lines 9 Dec 2026: 0 commits, +0 −0 lines 10 Dec 2026: 0 commits, +0 −0 lines 11 Dec 2026: 0 commits, +0 −0 lines 12 Dec 2026: 0 commits, +0 −0 lines 13 Dec 2026: 0 commits, +0 −0 lines 14 Dec 2026: 0 commits, +0 −0 lines 15 Dec 2026: 0 commits, +0 −0 lines 16 Dec 2026: 0 commits, +0 −0 lines 17 Dec 2026: 0 commits, +0 −0 lines 18 Dec 2026: 0 commits, +0 −0 lines 19 Dec 2026: 0 commits, +0 −0 lines 20 Dec 2026: 0 commits, +0 −0 lines 21 Dec 2026: 0 commits, +0 −0 lines 22 Dec 2026: 0 commits, +0 −0 lines 23 Dec 2026: 0 commits, +0 −0 lines 24 Dec 2026: 0 commits, +0 −0 lines 25 Dec 2026: 0 commits, +0 −0 lines 26 Dec 2026: 0 commits, +0 −0 lines 27 Dec 2026: 0 commits, +0 −0 lines 28 Dec 2026: 0 commits, +0 −0 lines 29 Dec 2026: 0 commits, +0 −0 lines 30 Dec 2026: 0 commits, +0 −0 lines 31 Dec 2026: 0 commits, +0 −0 lines Sean May's commits in 2026 Day Commits Lines added Lines removed 30 Sep 2026 37 8,647 190 1 Oct 2026 13 3,090 43
Chronicle
On 30 September 2026, the project was initialized with design specs and a Vite and TypeScript scaffold including vec3 helpers.[1] [2] On 30 September 2026, device configuration was established with presets and auto-guessing, alongside screen-space conversion math and iris-based eye estimation.[3] [4] [5] On 30 September 2026, geometric projection was extended with billboard projection, matrix3d homography, and perspective point projection.[6] [7] On 30 September 2026, eye tracking gained one-euro smoothing, monotonic detector timestamps, MediaPipe asset fetching, camera access, and face tracking, with fixes for camera stream shutdown and error classification.[8] [9] [10] On 30 September 2026, interaction UI was built out with a demo page using mouse-driven correction, camera tracking pipeline with inset and fullscreen modes, tuning panel for presets and smoothing, and face-lost hold and ease blending.[11] [12] [13] [14] [15] [16] [17] [18] On 30 September 2026, the demo's camera and mouse mode toggle was restored and camera start logic, error detection, phone layout, and field-of-view calculations were addressed in final review.[19] On 30 September 2026, the headline feature was added to keep apparent size constant with viewing distance and a Following/Static toggle was implemented.[20] [21] On 30 September 2026, scene rendering was documented with targets scene design and implementation specs, and box and ring-target geometry was added.[22] [23] [24] On 30 September 2026, field-of-view calibration math was implemented alongside a per-preset calibration store and one-click calibration dialog.[25] [26] [27] On 30 September 2026, an SVG scene renderer was added with top bar and scene markup, and a Targets/Text scene switch was created to make the targets scene the default.[28] [29] On 30 September 2026, calibration was fixed to cancel and reset when mode switches or other interruptions occur, and scene rendering was corrected to emit box grid segments once and sort stick and disc painting.[30] [31] [32] [33] On 30 September 2026, calibration was fixed to collect up to 3 seconds when frames are slow, ignore reopens mid-run, and discard results for changed devices, and SVG visibility writes were optimized.[34] [35] [36] On 1 October 2026, Line of Sight game design and implementation specs were documented.[37] [38] On 1 October 2026, depth smoothing at the iris and per-frame view easing were added across multiple systems.[39] On 1 October 2026, Line of Sight game shapes and level table were defined, and levels were built along rays from the solution eye.[40] [41] On 1 October 2026, the Line of Sight session state machine was implemented with a fix for non-finite frame gaps.[42] [43] On 1 October 2026, the Line of Sight renderer, HUD, and grid-only backdrop were added, and Line of Sight was integrated as a third scene with its own game loop.[44] [45] On 1 October 2026, game pieces were fixed to remain hidden until the first render after level setup, and the Star solution eye was moved away from the bottom of the webcam frame.[46] [47] On 1 October 2026, mouse-mode eye distance was locked to the solution distance in the game, and misalignment was recomputed after auto-advance to prevent stale first frames.[48] [49]
Areas of work
Scene rendering : the commits added targets scene geometry, SVG rendering with optimizations, and a complete Line of Sight renderer with grid backdrop.[24] [28] [36] [44] [32] Interaction UI : the commits established the demo page, camera tracking pipeline, calibration flow, scene switching, and Line of Sight game integration with HUD.[13] [15] [27] [29] [45] Geometric projection : the commits added screen-space conversions, billboard projection, matrix3d homography, perspective point projection, and level-building alignment math.[4] [6] [7] [41] Device configuration : the commits implemented device presets, tunable settings, screen frame building, and depth smoothing at the iris.[3] [50] [20] [39] Game engine : the commits added Line of Sight shapes, level definitions, piece building, session state machine, and renderer for game scenes.[40] [41] [42] [44] Eye tracking : the commits implemented iris-based eye estimation, one-euro smoothing, monotonic timestamps, MediaPipe integration with face tracking, camera access, and field-of-view calibration.[5] [8] [9] [25]
References
^ Commit af17282 : "docs: add RotoText design spec and implementation plan"
^ Commit c8f3cba : "chore: scaffold Vite + TypeScript project with vec3 helpers"
^ a b Commit 60e6888 : "feat: add device presets and auto-guess"
^ a b Commit bbe8b59 : "feat: add screen-space conversions"
^ a b Commit 2fcec58 : "feat: add iris-based eye estimator"
^ a b Commit 12750ce : "feat: add billboard projection and matrix3d homography"
^ a b Commit bed53b3 : "feat: add perspective point projection"
^ a b Commit abdebbc : "feat: add one-euro smoothing and monotonic detector timestamps"
^ a b Commit 7faa07c : "feat: add MediaPipe asset fetch, camera access, and face tracker"
^ Commit 6e187ff : "fix: stop the camera stream and classify the error when video playback fails"
^ Commit ce39c47 : "feat: add face-lost hold/ease and reacquire blend controller"
^ Commit 392b762 : "fix: hold and ease from the emitted target so interrupted blends never snap"
^ a b Commit 50ac5eb : "feat: add demo page with mouse-driven correction"
^ Commit 9d319ca : "fix: keep the eye steady during pinch and fresh after re-measure"
^ a b Commit d4fc9c4 : "feat: add camera tracking pipeline, inset, banner and fullscreen"
^ Commit bc608c3 : "fix: guard overlapping camera starts and keep Space for the correction toggle"
^ Commit e0922fc : "fix: restore the camera/mouse mode toggle"
^ Commit f63d26e : "feat: add tuning panel for presets, camera and smoothing"
^ Commit c78194e : "fix: address final review — camera start, detect errors, phone layout, FOV"
^ a b Commit 173521d : "feat: keep the headline's apparent size constant with viewing distance"
^ Commit 9df74d6 : "feat: single centred headline with a Following/Static toggle"
^ Commit 322b085 : "docs: add targets scene design spec"
^ Commit 40c9eac : "docs: add targets scene implementation plan"
^ a b Commit c16f94b : "feat: add box and ring-target scene geometry"
^ a b Commit b3de600 : "feat: add field-of-view calibration math"
^ Commit 5004d35 : "feat: add per-preset calibration store"
^ a b Commit c5e3b28 : "feat: add one-click field-of-view calibration"
^ a b Commit 93d7b5f : "feat: add SVG scene renderer, top bar and scene markup"
^ a b Commit e37baf2 : "feat: make the targets scene the default with a Targets/Text switch"
^ Commit 1600736 : "fix: cancel, reset and mode switches abort an in-progress calibration"
^ Commit cf23c87 : "fix: emit each box grid segment once"
^ a b Commit f22cf30 : "fix: fog far discs toward the background instead of fading them"
^ Commit a4596bb : "fix: sort stick segments and discs together so near sticks paint over far discs"
^ Commit 4b4041c : "fix: let calibration collect up to 3s when frames are slow"
^ Commit 62c20b6 : "fix: calibration ignores reopen mid-run and discards a result for a changed device"
^ a b Commit 8a4ee6b : "fix: skip unchanged SVG visibility writes"
^ Commit 57226bf : "docs: add Line of Sight game design spec"
^ Commit f2ae313 : "docs: add Line of Sight implementation plan"
^ a b Commit ec1de2e : "feat: smooth depth at the iris and ease the view every display frame"
^ a b Commit cad6993 : "feat: add Line of Sight shapes and level table"
^ a b c Commit 133d3d9 : "feat: build Line of Sight levels along rays from the solution eye"
^ a b Commit 43040bc : "feat: add the Line of Sight session state machine"
^ Commit 6c40123 : "fix: treat a non-finite frame gap as zero in the session"
^ a b c Commit ab436fa : "feat: add the Line of Sight renderer, HUD and grid-only backdrop"
^ a b Commit 55c3e73 : "feat: add Line of Sight as a third scene with its own game loop"
^ Commit fc401d4 : "fix: keep game pieces hidden until the first render after setLevel"
^ Commit 7f50e23 : "fix: move the Star solution eye away from the bottom of the webcam frame"
^ Commit 49c62cc : "fix: lock mouse-mode eye distance to the solution distance in the game"
^ Commit dbf2b8f : "fix: recompute misalignment after auto-advance so the first frame is not stale"
^ Commit a298309 : "feat: add tunable settings and screen frame builder"
Narrative as of 1 October 2026 (dbf2b8f).