Log inGet started
World

Fencing with Fences

the-garden: the garden takes light, and there are six of them lib.hedge_leaf writes a real PBR G-buffer, so pass:albedo and pass:final differ completely on every hedge, topiary, orchard and treeline surface and pass:roughness reports a value instead of magenta. Every foliage material is authored against a lit surface rather than an emitter, and the same hedge run with the sun behind it is visibly darker than with the sun on it. lib.garden_turf is new: the lawn is a lit surface whose mown bands wander instead of meeting along a ruler, with a clump register for the sward, a blade register so it does not go flat close up, and a wear register for the ground either side of the piste. Ten lawn materials moved onto it, each carrying its own roller width - 1.65m and almost no wander for the Major's parade ground, 7.5m and 3m of wander for a field mown twice a year. The stripe slabs and the stripe style fields are gone with it. Three more grounds and three more turnouts: Sixpenny Nursery, the Old Rectory and Gallows Piece, with Mr Quilty, the Revd. Brasenose and Young Tibb. Mrs Pettifer is a bottle-green bell under a wide pale brim now, because straw over straw against a player in whites is one figure and not two. The counter-fill is removed. A second directional light contributes nothing to the shaded result - the same frame at fill 0.0 and fill 8.0 is pixel-identical, filed as #8139 - so the shade side was always ambient alone, and the rig says so now: one key and one hemisphere, five moods re-solved on it, and the shadow re-arm hack that existed only to survive the second light went with it. The treeline stands at 44m instead of 31m in eleven irregular crowns, because a 9m crown at 31m is twenty degrees of backdrop before anything in the game is drawn. GardenDressing's repair loop runs twice a second instead of five times: 0.07ms a frame against 0.52ms.

46ea9ea9dd4cdf6f8e2ae1c096b4a22e505ad3a265105f116c51438453209115
Author
claude-code @ aura
Date
Aug 3, 2026
Branch
main
Parent
ba7a991685

192 files changed

  • ChangedDuelFx.componentFolderBeforeAfter
  • ChangedDuelFx.component/init.luau51.4 KB → 75.5 KBBeforeAfter
  • ChangedDuelHud.componentFolderBeforeAfter
  • ChangedDuelMatch.componentFolderBeforeAfter
  • ChangedDuelMatch.component/init.luau16.1 KB → 20.8 KBBeforeAfter
  • ChangedFencer.componentFolderBeforeAfter
  • ChangedFencer.component/init.luau16.9 KB → 19.0 KBBeforeAfter
  • ChangedFencerAI.componentFolderBeforeAfter
  • ChangedFencerAI.component/init.luau22.5 KB → 26.1 KBBeforeAfter
  • ChangedGardenDressing.componentFolderBeforeAfter
  • ChangedGardenDressing.component/init.luau27.6 KB → 24.8 KBBeforeAfter
  • ChangedPisteCamera.componentFolderBeforeAfter
  • ChangedPisteCamera.component/init.luau9.5 KB → 16.3 KBBeforeAfter
  • Addedaudio/breath_hard.soundClipFolderAfter
  • Addedaudio/breath_soft.soundClipFolderAfter
  • Addedaudio/umpire_arret.soundClipFolderAfter
  • Addedaudio/umpire_award_against.soundClipFolderAfter
  • Addedaudio/umpire_award_for.soundClipFolderAfter
  • Addedaudio/umpire_come.soundClipFolderAfter
  • Addedaudio/umpire_engarde.soundClipFolderAfter
  • Addedaudio/umpire_hold.soundClipFolderAfter
  • Addedaudio/umpire_last.soundClipFolderAfter
  • Addedaudio/umpire_play.soundClipFolderAfter
  • Addedaudio/umpire_ready.soundClipFolderAfter
  • Addedaudio/umpire_salute.soundClipFolderAfter
  • Addedaudio/umpire_score.soundClipFolderAfter
  • Addedaudio/umpire_touche.soundClipFolderAfter
  • Addedaudio/umpire_verdict.soundClipFolderAfter
  • Changeddesign/journal.md218 KB → 256 KBBeforeAfter
  • Changedduel.moduleFolderBeforeAfter
  • Changedduel.module/init.luau19.7 KB → 30.3 KBBeforeAfter
  • Changedfencer_body.moduleFolderBeforeAfter
  • Changedfencer_body.module/init.luau20.0 KB → 26.6 KBBeforeAfter
  • Changedfx.moduleFolderBeforeAfter
  • Changedgarden.moduleFolderBeforeAfter
  • Changedgarden.module/init.luau35.6 KB → 50.0 KBBeforeAfter
  • Addedlib/garden_turf.shaderFolderAfter
  • Addedlib/garden_turf.shader/.metadata17 BAfter
  • Addedlib/garden_turf.shader/README.md556 BAfter
  • Addedlib/garden_turf.shader/properties.yaml1.7 KBAfter
  • Addedlib/garden_turf.shader/shader.wgsl5.7 KBAfter
  • Changedlib/hedge_leaf.shaderFolderBeforeAfter
  • Changedlib/hedge_leaf.shader/properties.yaml1.2 KB → 1.5 KBBeforeAfter
  • Changedlib/hedge_leaf.shader/shader.wgsl4.9 KB → 5.5 KBBeforeAfter
  • Changedmaterials/beyond_cool.materialFolderBeforeAfter
  • Addedmaterials/beyond_cool.material/.metadata17 BAfter
  • Addedmaterials/beyond_cool.material/README.md196 BAfter
  • Changedmaterials/beyond_cool.material/mat.yaml219 B → 412 BBeforeAfter
  • Changedmaterials/beyond_cool.material/preview.png48.0 KB → 45.5 KBBeforeAfter
  • Changedmaterials/beyond_far.materialFolderBeforeAfter
  • Changedmaterials/beyond_far.material/mat.yaml218 B → 411 BBeforeAfter
  • Changedmaterials/beyond_far.material/preview.png48.7 KB → 50.8 KBBeforeAfter
  • Changedmaterials/beyond_warm.materialFolderBeforeAfter
  • Addedmaterials/beyond_warm.material/.metadata17 BAfter
  • Addedmaterials/beyond_warm.material/README.md196 BAfter
  • Changedmaterials/beyond_warm.material/mat.yaml219 B → 412 BBeforeAfter
  • Changedmaterials/beyond_warm.material/preview.png48.2 KB → 45.7 KBBeforeAfter
  • Addedmaterials/cordon_leaf.materialFolderAfter
  • Addedmaterials/cordon_leaf.material/mat.yaml473 BAfter
  • Addedmaterials/cordon_leaf.material/preview.png50.5 KBAfter
  • Changedmaterials/garden_hedge.materialFolderBeforeAfter
  • Changedmaterials/garden_hedge.material/mat.yaml338 B → 412 BBeforeAfter
  • Changedmaterials/garden_hedge.material/preview.png52.5 KB → 50.2 KBBeforeAfter
  • Addedmaterials/glass_pane.materialFolderAfter
  • Addedmaterials/glass_pane.material/mat.yaml155 BAfter
  • Addedmaterials/glass_pane.material/preview.png52.0 KBAfter
  • Addedmaterials/hay_gold.materialFolderAfter
  • Addedmaterials/hay_gold.material/.metadata17 BAfter
  • Addedmaterials/hay_gold.material/README.md193 BAfter
  • Addedmaterials/hay_gold.material/mat.yaml153 BAfter
  • Addedmaterials/hay_gold.material/preview.png48.6 KBAfter
  • Changedmaterials/hedge_distant.materialFolderBeforeAfter
  • Changedmaterials/hedge_distant.material/mat.yaml349 B → 420 BBeforeAfter
  • Changedmaterials/hedge_distant.material/preview.png47.3 KB → 50.7 KBBeforeAfter
  • Addedmaterials/hedge_laid.materialFolderAfter
  • Addedmaterials/hedge_laid.material/mat.yaml411 BAfter
  • Addedmaterials/hedge_laid.material/preview.png50.2 KBAfter
  • Changedmaterials/ivy_dark.materialFolderBeforeAfter
  • Changedmaterials/ivy_dark.material/mat.yaml344 B → 415 BBeforeAfter
  • Changedmaterials/ivy_dark.material/preview.png48.0 KB → 45.7 KBBeforeAfter
  • Addedmaterials/kit_bottle.materialFolderAfter
  • Addedmaterials/kit_bottle.material/.metadata17 BAfter
  • Addedmaterials/kit_bottle.material/README.md195 BAfter
  • Addedmaterials/kit_bottle.material/mat.yaml155 BAfter
  • Addedmaterials/kit_bottle.material/preview.png47.9 KBAfter
  • Addedmaterials/kit_cassock.materialFolderAfter
  • Addedmaterials/kit_cassock.material/mat.yaml156 BAfter
  • Addedmaterials/kit_cassock.material/preview.png44.1 KBAfter
  • Addedmaterials/kit_cord.materialFolderAfter
  • Addedmaterials/kit_cord.material/mat.yaml153 BAfter
  • Addedmaterials/kit_cord.material/preview.png48.5 KBAfter
  • Addedmaterials/kit_drill.materialFolderAfter
  • Addedmaterials/kit_drill.material/mat.yaml154 BAfter
  • Addedmaterials/kit_drill.material/preview.png49.7 KBAfter
  • Addedmaterials/kit_gumboot.materialFolderAfter
  • Addedmaterials/kit_gumboot.material/mat.yaml156 BAfter
  • Addedmaterials/kit_gumboot.material/preview.png46.1 KBAfter
  • Addedmaterials/kit_linen.materialFolderAfter
  • Addedmaterials/kit_linen.material/mat.yaml154 BAfter
  • Addedmaterials/kit_linen.material/preview.png42.4 KBAfter
  • Addedmaterials/kit_moleskin.materialFolderAfter
  • Addedmaterials/kit_moleskin.material/mat.yaml157 BAfter
  • Addedmaterials/kit_moleskin.material/preview.png49.1 KBAfter
  • Addedmaterials/kit_sacking.materialFolderAfter
  • Addedmaterials/kit_sacking.material/.metadata17 BAfter
  • Addedmaterials/kit_sacking.material/README.md196 BAfter
  • Addedmaterials/kit_sacking.material/mat.yaml156 BAfter
  • Addedmaterials/kit_sacking.material/preview.png48.8 KBAfter
  • Addedmaterials/kit_smock.materialFolderAfter
  • Addedmaterials/kit_smock.material/mat.yaml154 BAfter
  • Addedmaterials/kit_smock.material/preview.png49.0 KBAfter
  • Addedmaterials/kit_stole.materialFolderAfter
  • Addedmaterials/kit_stole.material/mat.yaml154 BAfter
  • Addedmaterials/kit_stole.material/preview.png52.1 KBAfter
  • Changedmaterials/lawn_annexed.materialFolderBeforeAfter
  • Changedmaterials/lawn_annexed.material/mat.yaml157 B → 533 BBeforeAfter
  • Changedmaterials/lawn_annexed.material/preview.png49.8 KB → 55.5 KBBeforeAfter
  • Addedmaterials/lawn_churchyard.materialFolderAfter
  • Addedmaterials/lawn_churchyard.material/.metadata17 BAfter
  • Addedmaterials/lawn_churchyard.material/README.md200 BAfter
  • Addedmaterials/lawn_churchyard.material/mat.yaml537 BAfter
  • Addedmaterials/lawn_churchyard.material/preview.png55.8 KBAfter
  • Changedmaterials/lawn_meadow.materialFolderBeforeAfter
  • Addedmaterials/lawn_meadow.material/.metadata17 BAfter
  • Addedmaterials/lawn_meadow.material/README.md196 BAfter
  • Changedmaterials/lawn_meadow.material/mat.yaml156 B → 533 BBeforeAfter
  • Changedmaterials/lawn_meadow.material/preview.png49.4 KB → 55.2 KBBeforeAfter
  • Addedmaterials/lawn_nursery.materialFolderAfter
  • Addedmaterials/lawn_nursery.material/.metadata17 BAfter
  • Addedmaterials/lawn_nursery.material/README.md197 BAfter
  • Addedmaterials/lawn_nursery.material/mat.yaml534 BAfter
  • Addedmaterials/lawn_nursery.material/preview.png54.7 KBAfter
  • Changedmaterials/lawn_parade.materialFolderBeforeAfter
  • Addedmaterials/lawn_parade.material/.metadata17 BAfter
  • Addedmaterials/lawn_parade.material/README.md196 BAfter
  • Changedmaterials/lawn_parade.material/mat.yaml156 B → 534 BBeforeAfter
  • Changedmaterials/lawn_parade.material/preview.png50.0 KB → 54.5 KBBeforeAfter
  • Addedmaterials/lawn_pasture.materialFolderAfter
  • Addedmaterials/lawn_pasture.material/.metadata17 BAfter
  • Addedmaterials/lawn_pasture.material/README.md197 BAfter
  • Addedmaterials/lawn_pasture.material/mat.yaml534 BAfter
  • Addedmaterials/lawn_pasture.material/preview.png55.0 KBAfter
  • Changedmaterials/lawn_shade.materialFolderBeforeAfter
  • Addedmaterials/lawn_shade.material/.metadata17 BAfter
  • Addedmaterials/lawn_shade.material/README.md195 BAfter
  • Changedmaterials/lawn_shade.material/mat.yaml155 B → 532 BBeforeAfter
  • Changedmaterials/lawn_shade.material/preview.png48.9 KB → 54.6 KBBeforeAfter
  • Changedmaterials/lawn_turf.materialFolderBeforeAfter
  • Changedmaterials/lawn_turf.material/mat.yaml154 B → 531 BBeforeAfter
  • Changedmaterials/lawn_turf.material/preview.png49.5 KB → 55.4 KBBeforeAfter
  • Changedmaterials/lawn_won_mid.materialFolderBeforeAfter
  • Addedmaterials/lawn_won_mid.material/.metadata17 BAfter
  • Addedmaterials/lawn_won_mid.material/README.md197 BAfter
  • Changedmaterials/lawn_won_mid.material/mat.yaml157 B → 533 BBeforeAfter
  • Changedmaterials/lawn_won_mid.material/preview.png49.7 KB → 55.8 KBBeforeAfter
  • Changedmaterials/lawn_won_new.materialFolderBeforeAfter
  • Addedmaterials/lawn_won_new.material/.metadata17 BAfter
  • Addedmaterials/lawn_won_new.material/README.md197 BAfter
  • Changedmaterials/lawn_won_new.material/mat.yaml157 B → 533 BBeforeAfter
  • Changedmaterials/lawn_won_new.material/preview.png49.6 KB → 54.9 KBBeforeAfter
  • Changedmaterials/orchard_leaf.materialFolderBeforeAfter
  • Changedmaterials/orchard_leaf.material/mat.yaml410 B → 481 BBeforeAfter
  • Changedmaterials/orchard_leaf.material/preview.png54.6 KB → 46.1 KBBeforeAfter
  • Addedmaterials/paint_pitch.materialFolderAfter
  • Addedmaterials/paint_pitch.material/mat.yaml156 BAfter
  • Addedmaterials/paint_pitch.material/preview.png48.1 KBAfter
  • Addedmaterials/post_creosote.materialFolderAfter
  • Addedmaterials/post_creosote.material/mat.yaml158 BAfter
  • Addedmaterials/post_creosote.material/preview.png47.5 KBAfter
  • Addedmaterials/slate_roof.materialFolderAfter
  • Addedmaterials/slate_roof.material/mat.yaml155 BAfter
  • Addedmaterials/slate_roof.material/preview.png52.0 KBAfter
  • Addedmaterials/stone_lichen.materialFolderAfter
  • Addedmaterials/stone_lichen.material/mat.yaml157 BAfter
  • Addedmaterials/stone_lichen.material/preview.png48.2 KBAfter
  • Addedmaterials/terracotta.materialFolderAfter
  • Addedmaterials/terracotta.material/mat.yaml155 BAfter
  • Addedmaterials/terracotta.material/preview.png48.4 KBAfter
  • Changedmaterials/topiary_ancient.materialFolderBeforeAfter
  • Changedmaterials/topiary_ancient.material/mat.yaml352 B → 423 BBeforeAfter
  • Changedmaterials/topiary_ancient.material/preview.png47.1 KB → 43.8 KBBeforeAfter
  • Addedmaterials/wire_galv.materialFolderAfter
  • Addedmaterials/wire_galv.material/mat.yaml154 BAfter
  • Addedmaterials/wire_galv.material/preview.png54.7 KBAfter
  • Addedmaterials/yew_church.materialFolderAfter
  • Addedmaterials/yew_church.material/mat.yaml412 BAfter
  • Addedmaterials/yew_church.material/preview.png42.1 KBAfter
  • Changedmaterials/yew_regiment.materialFolderBeforeAfter
  • Changedmaterials/yew_regiment.material/mat.yaml349 B → 420 BBeforeAfter
  • Changedmaterials/yew_regiment.material/preview.png51.7 KB → 47.0 KBBeforeAfter
  • Changedscenes/main.sceneFolderBeforeAfter
  • Changedscenes/main.scene/entrypoint.luau4.7 KB → 4.7 KBBeforeAfter