undef-dice 2026-01-12
Custom geometry for all dice types, physics pre-simulation/playback, keyboard shortcuts, and target values UI added
38 files · 4,379+ · 161-

Custom dice geometry

8 files changed
  • custom-geometry.ts Custom mesh geometry for non-standard polyhedra
  • custom-geometry-data.ts Vertex/face data for d4, d8, d10, d12, d100
  • face-reader.ts Extended to handle custom geometry face normals
  • numbers-overlay.ts Extended for non-standard dice face layouts
  • geometry-data.ts Updated geometry data for all dice types
  • mesh-factory.ts Updated mesh factory for custom geometry
  • dice-configs.ts Configurations for d4, d6, d8, d10, d12, d20, d100
  • textures.ts Texture updates for custom dice
  • Added custom geometry system (src/dice/custom-geometry.ts, src/dice/custom-geometry-data.ts) with vertex/face data for non-standard polyhedra (d4, d8, d10, d12, d100) instantiate behavioral
    2 files
    • custom-geometry.ts
    • custom-geometry-data.ts
  • Expanded face reader (src/dice/face-reader.ts) to handle custom geometry face normals remediate internal
    1 file
    • face-reader.ts
  • Extended numbers overlay (src/dice/numbers-overlay.ts) for non-standard dice face layouts remediate internal
    1 file
    • numbers-overlay.ts
  • Extended src/config/dice-configs.ts with configurations for all standard dice types (d4, d6, d8, d10, d12, d20, d100) baseline internal
    1 file
    • dice-configs.ts

Physics pre-simulation and playback

4 files changed
  • pre-simulate.ts Physics pre-simulation engine running dice physics ahead of time
  • playback.ts Simulation playback replaying pre-computed dice trajectories
  • index.ts Simulation module exports
  • types.ts Simulation type definitions
  • Built physics pre-simulation engine (src/simulation/pre-simulate.ts) that runs dice physics ahead of time to determine outcomes instantiate behavioral
    1 file
    • pre-simulate.ts
  • Added simulation playback system (src/simulation/playback.ts) for replaying pre-computed dice trajectories instantiate behavioral
    1 file
    • playback.ts
  • Reworked roll and settling logic to support pre-simulated outcomes remediate internal
    2 files
    • roll.ts
    • settling.ts
  • Updated animation loop to integrate with simulation playback remediate internal
    1 file
    • loop.ts
7 files changed
  • keyboard.ts Keyboard shortcut handler for quick dice rolling
  • target-values.ts Target values UI for setting desired roll outcomes
  • physics-controls.ts Physics controls panel for adjusting gravity, bounce, and friction
  • dice-buttons.ts Updated dice button UI
  • modifiers.ts Updated modifier system
  • sliders.ts Updated slider controls
  • main.css CSS additions for physics controls and target values UI
  • Created keyboard shortcut handler (src/ui/keyboard.ts) for quick dice rolling via key bindings instantiate behavioral
    1 file
    • keyboard.ts
  • Added target values UI (src/ui/target-values.ts) for setting desired roll outcomes instantiate behavioral
    1 file
    • target-values.ts
  • Added physics controls panel (src/ui/physics-controls.ts) for adjusting gravity, bounce, and friction in real-time instantiate behavioral
    1 file
    • physics-controls.ts
  • Extended notation parser to handle percentile dice (d100/d%) remediate internal
    1 file
    • notation-parser.ts