Gaitkit Open the lab
Harbour Tavern, A dockside tavern: stone ground floor with a heavy plank door, a jettied timber upper storey with shuttered windows, a pitched roof with a chimney, a blank hanging sign board on an iron bracket, lanterns by the door and barrels and a bench out front. The door (part door) swings on its hinge and the sign (part sign) can sway. Windows and lanterns glow at night. Default is 8 m wide, 6 m deep.
Building · 2 moving parts

Harbour Tavern

A dockside tavern: stone ground floor with a heavy plank door, a jettied timber upper storey with shuttered windows, a pitched roof with a chimney, a blank hanging sign board on an iron bracket, lanterns by the door and barrels and a bench out front. The door (part door) swings on its hinge and the sign (part sign) can sway. Windows and lanterns glow at night. Default is 8 m wide, 6 m deep.

Size
8.9 × 9.7 × 8.3 m
Triangles
2,804
Open in the lab Ready for any engine. The download carries the knobs you set here.

Tune it

5 knobs: Walls, Roof, Floors, Width, Sign colour.

Specs

Size
8.9 × 9.7 × 8.3 m
width × height × depth
Triangles
2,804
of 6,000
Draw calls
1
one vertex-colour material
Moving parts
2
door · rotate, sign · rotate
Knobs
5
3 presets
Night lights
2
window, lantern

Passed the validator: real scale, rests on y = 0, front faces +Z, deterministic.

Use it

Code for the specimen as it is set up above; it follows your knobs.

JavaScript
import { createAsset } from 'https://gaitkit.com/cdn/harbour-tavern.mjs';

const harbourTavern = createAsset();
scene.add(harbourTavern);                      // rests on y = 0, front faces +Z

// 'door' pivots on its hinge: -100° to 0° around y
harbourTavern.getObjectByName('door').rotation.y = THREE.MathUtils.degToRad(-100);

More in the docs; agents can fetch all of this through MCP.

Knobs

KnobTypeValuesDefaultWhat it does
wallschoicestone and plaster tarred timber whitewash ochre plasterstone and plasterstone and plaster (grey stone ground floor, cream plaster with dark beams above), tarred timber (dark weatherboard upper storey), whitewash (white all over), ochre plaster (warm yellow upper storey).
roofchoiceslate thatch red tile shingleslateRoof covering: slate (blue-grey), thatch (straw), red tile, shingle (brown wooden shingles).
floorschoice1 221 (low single-storey grog shop) or 2 (taproom below, jettied rooms above).
widthrange6 to 11, step 0.58Street frontage in metres along X. Depth stays 6 m. Wider fronts get more windows.
signchoicegreen red blue black naturalgreenPaint of the blank hanging sign board and the window shutters: green, red, blue, black or natural wood. The board is left blank for your own name or picture.

Presets: rum cellar {"walls":"tarred timber","roof":"shingle","sign":"black","width":7} · sailors rest {"walls":"whitewash","roof":"red tile","sign":"blue","width":10} · grog shack {"walls":"ochre plaster","roof":"thatch","floors":1,"width":6,"sign":"red"}

Files

FileWhat
harbour-tavern.glbGLB, default look · 394 KB
harbour-tavern.mjsES module, every knob live
harbour-tavern.objOBJ, static, no colour
harbour-tavern-params.jsonknob schema, presets, night zones

Licence

Use it in games, apps, renders and client work, commercially and without credit. Do not resell it as an asset or train a 3D generator on it. The full licence.