Original build notes, excerpted from the Fable project README. These are the reconstruction’s claims, not independently verified findings of the comparison. ## What the reconstruction is based on Two research passes were made before modelling (English and French sources; Eiffel's own 1900 monograph *La Tour de trois cents mètres* read through the ETH e-rara copy). **The apartment (from Eiffel 1900, § 3, § 10–12 and the 1889 cost ledger; plate XIX plan):** - Not in the public glazed hall (276.13 m, 16.50 m square) but a square **timber pavilion, 10.50 m a side**, standing on the open terrace at **278.71 m**, under the campanile. - Rooms: *salon de réception* (7.20 × 5.25 m: table, piano, canapé, armoire, foyer/hearth), *cabinet de toilette*, *cuisine*, *office*, *W.C.*, and **four small laboratories** (electricity, meteorology, physics, physiology) on the Seine side; the Edoux lift shaft sits diagonally in the middle and the rooms wrap around it. No bedroom. - The salon is in the corner opposite the Seine, so its windows look **south-east over the Champ de Mars and the Exposition**; every window opens first onto the 2.77 m gallery. - Documented finishes: wall hangings by Le Mardelé, **linoleum** floor, an electric **chandelier plus eight 10-candle carbon-filament lamps** (70 V), furniture by Donon, Millot and Collin; a telephone; the tower's own rafters pass through the rooms, boxed in. - The one period interior photograph shows large ogee/palmette wallpaper on a light ground, a tall carved dark-wood chimneypiece-cabinet with turned colonnettes, low fringed velvet armchairs and a fringed divan, a drop-leaf table, exposed dark ceiling beams and a slender iron column mid-room. An **upright** piano fits the plan (and the 1991 display). - The gallery outside carried benches, lightning rods at the eight corners, a recording barometer, a fountain tap, the ladder down to the hall and the **circular Decauville rail of the two 90 cm Mangin searchlights**. - The campanile is two crossed semicircular lattice arches (extrados radius 7.435 m, 1.30 m wide) on the lift-pulley girders, carrying the phare floor at 293.2 m: a sheet-iron service room, a decagonal glazed lantern 3.98 m high whose **blue-white-red lenses turned slowly**, the 300 m instrument platform and the 8 × 6 m flag. - Edison's gift, a battery-electric Class M phonograph, is on the table; the *livre d'or* under the lamp carries the 1889 signatures (Prince of Wales, Carnot, the Shah, Gounod who played the piano up there on 10 September, and Edison's dedication to "the Great Engineer the Bon Dieu"). **The tower and the city (1889 state):** - Pier profile from Eiffel's two exponentials (62.45·e^(−0.01185 z) below the 2nd floor, 15.85·e^(−0.00719 (z−115.7)) above), 16 rafters merging into 4 around 175 m, 74 m semicircular decorative arches with crowns at 50 m, platforms at 57.63 / 115.73 / 196 / 276.13 m, the faces turned to NW/SE like the real tower, paint "brun rouge". - Night lighting as in 1889: strings of gas "pearls" on the arches, the platforms and the bases (not on the piers), the tricolour rotating beacon, and the two searchlights sweeping Paris and lifting to the clouds. - The Exposition: the Galerie des Machines (420 × 115 × 45 m, blazing with arc light), the Dôme central with its 1,300 gas jets, the domed Palais des Beaux-Arts and des Arts libéraux, the coloured *fontaines lumineuses* (yellow, green, red, violet, blue, opal), the gardens with red and yellow Venetian lanterns, the Histoire de l'habitation on the quai, the colonial palaces on the Esplanade, the gas-lit Trocadéro cascade "like molten iron", bateaux-mouches with lanterns on the Seine. - The Exposition at night, as the evening crowd saw it: the fountain show throws its jets 25 m high and its coloured spill over the parterre; the Dôme central and both palaces are drawn in gas pearls with dark interiors (only the Galerie blazed from within); a crowd of some 4,500 strollers drifts along the alleys, one in six carrying a paper lantern; kiosks, four café terraces and a bandstand are lit; soft pools of gas light lie on the gravel of the alleys; Bengal fires flare red on the platform balconies every couple of minutes. All of it is instanced or single-draw-call, so the interior frame rate is untouched. - Paris: ~55,000 public gas jets (the scene has about fifty thousand), electric arc light only on the avenue de l'Opéra, the Champs-Élysées and the Exposition; Haussmann blocks with zinc roofs and dim oil-lit windows; Sacré-Cœur still a roofless white mass under scaffolding. - Astronomy: the moon was one day past full on 10 September 1889, so a waning gibbous moon stands low in the east-south-east; it throws window-shaped patches into the salon. Things that are conjecture: exact window positions and counts, the ceiling height (≥2.56 m is all that is documented), the pattern and colours of the wallpaper beyond the photograph, the contents of the kitchen and laboratories, the furniture arrangement inside the rooms. ## How it is built - `src/*.js` are concatenated by `build.py` into the inline module of `src/index.template.html` → `index.html`. Coordinates are metres, X east, Z south, tower axis at the origin; the tower group is rotated 45°. - Rendering tricks: logarithmic depth (10 cm to 30 km in one pass), a global height-fog chunk patched into every Three.js material, ~120k instanced buildings with lit windows generated in the fragment shader (with derivative-based fade so far facades don't shimmer), gas lamps as size-compensated point sprites with halos and stencil-masked reflections in the Seine, volumetric searchlight cones with inverse-square falloff and cloud hits computed in the sky shader, procedural sky (stars, Milky Way, shaded moon, two cloud layers), an MSAA HDR pipeline with bloom, ACES, split-toning, vignette, grain, chromatic aberration and SMAA, adaptive resolution. - Interior: procedural wallpaper (ogee lattice + palmettes) with screen-space relief, woods with grain, clearcoat and bump, painted boards, lace sheers and a doily drawn in the shader, gilt-banded book spines, sheen velvets, linoleum, an oriental rug drawn in GLSL, brass and japanned tin, a custom dim environment map, a shadow-casting oil lamp, flickering hearth, dust motes, moonlight shadows through the sashes, canvas-drawn pictures (an engraving of the tower using the real profile, a landscape, a portrait, a barometric chart, the guest book). - Sound (Web Audio, all synthesised): gusting wind with whistling through the lattice, iron ticks and groans positioned around the listener, the city murmur and the Exposition crowd below, a distant bourdon, the mantel clock, and a generative slow waltz in the manner of Satie's 1888 Gymnopédies played through a phonograph horn (band-limited, soft clipping, wow, crackle), spatialised with HRTF and cross-faded as you move indoors and out. ## Performance pass Measured in-page (draw calls counted across all passes, CPU frame time with a forced GPU sync): | | before | after | |---|---|---| | draw calls, exterior shot | 3,333 | 358 | | draw calls, salon | 2,624 | 235 | | CPU time per frame, exterior | 6.8 ms | 1.6 ms | | CPU time per frame, salon | 5.5 ms | 1.2 ms | | triangles submitted from the salon | 5.4 M | 2.1 M | | point lights evaluated per pixel | 11 | 4 | What changed (all switchable in `src/95_perf.js`): every static, non-interactive mesh of the pavilion, tower and landmarks is merged into one mesh per material (1,343 meshes → 104); the moon and lamp shadow maps are rendered once and refreshed only while a door or sash moves; the city materials are compiled without the point-light loop (no point light reaches them); the sky is rendered once per frame at half resolution and composited; anti-aliasing is the 4× MSAA target alone (SMAA removed) with bloom at quarter resolution; lamp sprites that would be invisible get a zero point size; the instanced meshes have bounding spheres and are frustum-culled. Stars and the moon disc are drawn at full resolution over the half-resolution background so they stay sharp. The wallpaper, rug and linoleum patterns are baked into textures at start-up (colour plus a relief channel), the far half of the city is hidden while you are indoors, the landmark and boat point lights were replaced by emissive surfaces, and shadows use plain PCF with a wider radius. ## Selected sources - G. Eiffel, *La Tour de trois cents mètres*, Paris 1900 (ETH e-rara copy; plates XIV–XIX). - toureiffel.paris — "Gustave Eiffel a-t-il habité la tour ?", history of the lighting, the 1889 Exposition. - *Les merveilles de l'Exposition de 1889* (archive.org) — beacon, projectors, fountains, night descriptions. - Wikipedia (fr/en): Tour Eiffel, Exposition universelle de 1889, Galerie des machines, Palais du Trocadéro, Sacré-Cœur. - Musée d'Orsay photographs (Neurdein, Rivière, Primoli), Wikimedia Commons (Rouillard's 1889 section, the pavilion plan, the restored office). - Weidman & Pinelis, "Model equations for the Eiffel Tower profile", *C. R. Mécanique* 2004.