The glass board: a game drawn as three sheets of tinted glass on four posts with figures standing on them, in three.js, taking the same taps as the flat boards, shown only to a browser let in by a word

Fifteen figures in static/figures, one per kind, made to docs/figures-brief.md:
a round base, a livery material the view recolours per side, and a base
material left alone. The view loads three.js and the figures only when it
is opened. It plays a move as a walk and a capture as a sink into the glass,
dims a piece a Basilisk holds, marks the last move, the targets and a King
in check, and lets a tap reach a figure or a marked square through the
glass above it. Three cameras: from the corner, from the player's seat,
from above. The table and the told game offer it behind the gate in
src/lib/glass.svelte.ts, which opens for a browser that visits with
?glass=<word> whose hash it keeps.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CCLa2PaEeCj8njQZSWGqHx
This commit is contained in:
Eric WagonerandClaude Fable 5.1 committed 2026-10-27 01:13:00 -04:00
1 parent 0be89a1dfe
commit 8744072dda
24 files changed
+670 -4

No files matched your search

+95
View File
@@ -0,0 +1,95 @@
# Figures for Wyrm: a brief for a 3D model generator
Wyrm is a browser rebuild of Gary Gygax's 1985 Dragonchess: three boards of
twelve by eight stacked one above the other, the air, the land and the
underworld, with 42 pieces a side in fifteen kinds. The pieces are to be
figures standing on round bases, in the manner of painted tabletop
miniatures, so that a game can be drawn as a three-level glass board seen
from a three-quarter view above.
## What to make
Fifteen figures, one per kind, each delivered as a single glTF binary
(`.glb`) with these properties:
- Y up, metres, the base centred on the origin and resting on y = 0.
- A round base 1.0 unit across and 0.1 high under every figure. The figure
may overhang the base (wings, tails) but never below it.
- Height by station: Warriors, Sylphs and Dwarves about 1.6 units tall from
the base; the middle kinds about 2.0; the Dragon, Griffon, Oliphant,
Elemental and Basilisk may reach 2.6, wingspan up to 2.4.
- At most 8,000 triangles a figure, 4,000 for the Warrior, Sylph and Dwarf,
since there are twelve or six of each on the board at once.
- Two materials only: `livery` for everything that takes the side's colour
(cloth, wings, scales, paint) and `base` for the base and anything
neutral (steel, wood, stone, skin). The game recolours `livery` for Gold
and Scarlet; do not bake the side colour in. One 1024 texture set per
material, PBR (base colour, metallic-roughness, normal).
- One still pose, readable in silhouette from a three-quarter view above
and from directly above. No pose that lies flat or leans off the base.
- Style: painted miniature, not photoreal. Clean forms, exaggerated
silhouettes, little fine detail that would vanish at 40 pixels tall.
Mixed fantasy, medieval and classical, as the pieces below describe.
No text, logos or heraldry.
## The fifteen pieces
The air (Gygax colours the board light blue and white):
1. **Sylph.** A slight winged spirit of the wind, androgynous, barefoot,
feathered wings raised, carrying nothing or a short spear. Light and
quick; the foot soldier of the air.
2. **Griffon.** Half eagle and half lion, wings spread, forelegs raised as
it lands. Big, the heaviest flier after the Dragon.
3. **Dragon.** The great wyrm of the sky, the piece the game is named for.
Wings half spread, long neck, head turned down as if to strike at the
board beneath. The tallest piece on the board.
The land (light green and amber):
4. **Warrior.** A spearman of the levy, shield on the arm, spear upright.
Plain, sturdy, the common soldier; twelve of these stand in a wall.
5. **Oliphant.** A war elephant with a small howdah, tusks forward. Broad
and heavy, a rook with tusks.
6. **Unicorn.** A unicorn rearing, no rider. The knight of the land.
7. **Hero.** A champion in mail with a long sword raised two-handed. Bold
stance, a figure that leaps.
8. **Thief.** A hooded figure in dark cloth, crouched, a dagger in each
hand, looking sideways.
9. **Cleric.** A robed priest with a staff topped by a sun or sigil, calm,
upright. The one piece at home on every board.
10. **Mage.** A wizard in long robes, staff in one hand, the other raised
with a flame or light. The queen of the land.
11. **King.** A crowned king in a long cloak with a sceptre, standing. Not
the tallest piece, but the most dressed.
12. **Paladin.** A knight in full plate on foot, visor down, lance or sword
and a tall shield. The holy knight.
The underworld (red and brown):
13. **Dwarf.** A squat miner with a pick over the shoulder and a lamp on the
helmet, bearded, broad. Six to a side.
14. **Basilisk.** A great serpent reared up on its coils, crested, mouth
open, looking up as if its gaze reaches the board above. Menacing and
low.
15. **Elemental.** A bruiser of living stone, a hulking earth elemental,
arms raised, no face to speak of. The one heavy thing in the
underworld.
## Try two first
Make the Warrior and the Dragon before the rest. The Warrior shows whether
the model can keep a figure simple and readable at a small size; the Dragon
shows whether it can carry a big silhouette with wings inside the triangle
budget. If both pass, make the remaining thirteen to the same style.
## How they will be judged
- Does each figure read as its kind from a three-quarter view above, at
about 40 pixels tall, against the others on the same board?
- Do the twelve Warriors, six Sylphs and six Dwarves differ from each
other's kinds at a glance?
- Do the two materials split cleanly, so that recolouring `livery` to gold
and to scarlet gives two armies and nothing else changes?
- Does the file open in a standard glTF viewer with no missing textures,
within the triangle budget, standing on its base at the origin?