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.