parts
The geometry the vagant is cut from. Everything the player IS is built here and uploaded as runtime meshes: the pelvis and belt, the coat's skirt, the coat body and its mantle, the wrapped head under a broad Georgian hat, the narrow band of face the scarf leaves, the limbs, the b…
vagant.parts
The geometry the vagant is cut from. Everything the player IS is built here and uploaded as runtime meshes: the pelvis and belt, the coat's skirt, the coat body and its mantle, the wrapped head under a broad Georgian hat, the narrow band of face the scarf leaves, the limbs, the boots, the satchel, the lantern's iron, its glass, its flame — and the jasey the vagant pulls down over their own head.
require("vagant.parts"). Every function returns a MeshHandle a Model
component takes straight in its model field.
| Call | The piece |
|---|---|
P.hips() | pelvis, belt, buckle, the ropes knotted to it |
P.skirt() | the coat's skirt, on its own entity so it can swing |
P.torso() | coat body, shoulders, mantle, standing collar, patches |
P.satchel() | the bag, its flap, and the strap over the far shoulder |
P.flask() | the oil flask at the belt |
P.head() | neck, wound scarf, its thrown end, the hat and its band |
P.face() | the band of skin between the scarf and the brim |
P.upperArm() / P.foreArm() | one mesh each, shared left and right |
P.thigh() / P.shin() / P.boot() | the same, one size up |
P.lanternIron() / P.lanternGlass() / P.flame() | the lantern, in three materials |
P.wig() | the worn jasey: dome, six roll curls, a ribboned queue |
P.C | the palette every piece is coloured from |
Two things decide how it reads
Colour lives in the vertices. The pbr shader multiplies vertex colour into base colour, so wear at a cuff, mud up a hem and the pale note of a scarf near the face cost nothing but a number, and the whole figure wears five materials instead of thirty.
The albedos sit LOW. The lantern hangs half a metre off the coat, so
whatever the vagant is made of is the brightest-lit surface in the game by an
order of magnitude; an albedo that reads as dark wool on a colour chart comes
back cream at that distance. Every value in P.C was set by looking at the
figure under its own lantern rather than at the colour on its own. The materials
are roughened for the same reason — a white specular highlight is not tinted by
albedo, and it was specular, not albedo, that turned the coat to linen.
Local space
Each piece is built in the local space of the JOINT that moves it — a thigh's
origin is the hip, a forearm's origin is the elbow, the lantern's origin is
where the bail meets the hand — so vagant.rig places one entity per part and
vagant.anim turns them without touching geometry.
Built on meshkit (revolve, tube, box, sphere, warp, bakeFill,
bakeGroundDirt), installed from ZeroMind.
Scoped to this part · feeds back into the world's score.