goxpyriment

Motion Blur & Phantom Array Demo

Demonstrates two perceptual effects caused by the interaction between eye movement and LCD display rendering, inspired by the TestUFO battery:

Sync-strobe mode (toggle with S) draws the bar only on even frames (50 % duty cycle), sharpening the phantom effect.

Measurement mode (toggle with M) adds a static comparison rectangle whose width you adjust to match the perceived blur width, letting you record a quantitative estimate.

Running

go run main.go          # fullscreen
go run main.go -d       # windowed (development)
go run main.go -d -s 1  # windowed, subject ID 1

Flags

Flag Default Description
-d off Development mode: windowed 1024×768
-s 0 Participant ID

Controls

Key Action
S Toggle strobe mode
M Toggle measurement mode
/ Velocity +/− 50 px/s (range 100–1500)
/ Bar width +/− 1 px (normal mode) or comparison width (measure mode)
Enter Record perceived width (measurement mode)
Escape Quit

Output

In measurement mode, each Enter press records a row to goxpy_data/ with: velocity, actual bar width, strobe status, and perceived (matched) width.

No data file is written if measurement mode is never used.