projects
2026liveprivate repo
Custom 3D dice
Dicewright: a 3D dice roller with custom faces and real physics
From d2 to d20, with number, text, icon or photo faces, per-set tabletop rules and 32 playmats each with its own physics, sound and lighting. An installable web app with its Google Play build ready, and randomness drawn from a cryptographic generator.
The models are generated by a headless Blender script, three.js draws them and cannon-es rolls them. Looking fair is not enough: one test checks with χ² that every face comes up as often as it should, and another that the d20 and the d12 genuinely tumble instead of sliding to a stop on a face.