At the end of the last post, the sky and the meadows finally looked right, and the next step was to put more life into the evenings: smoke over the roofs, warm light in the doorways after sunset, and a world that feels inhabited when you walk back to camp at dusk.
Today expanded well beyond that first pass. Along with hearth flames, under-lit chimney smoke, and resting spots for villagers, we overhauled the distant mountain horizons, lit the night sky with procedural northern lights, coaxed the golden sun road across the full width of the fjord, and tuned the engine’s lighting and shadow pipeline for true northern wilderness atmosphere.

Smoke Over the Roofs, Hearth Flames and Glowing Windows#
Until today, a hut in the woods or a settlement at dusk was completely dark from the outside. You could build a house, light a fire or set a kiln running, and from fifty paces away it looked as cold and empty as an outcrop of rock.
We replaced the flat fire sprites with a procedural licking fire shader (M_YumaFire). Rather than repeating a short texture flipbook, it uses animated noise advection to pull turbulent flame tongues upward across a physical blackbody temperature gradient—transitioning from an incandescent white-hot core at the burning timber through rich amber and orange-red, before shedding into cooling smoke. Tiny buoyant ember sparks detach from the logs and rise into the updraft, drifting sideways on the evening breeze before fading out.
Above the hearth, charcoal kiln, bloomery, and roof smokeholes, plumes of woodsmoke (M_YumaSmoke) now climb into the canopy. The smoke is built from 3D fractional Brownian motion (FBM) billows that expand and disperse as they cool. Crucially, the base of the smoke volume is under-lit by the hearth fire directly below it: the bottom of the billow glows warm amber in the dusk before cooling into soft blue-grey haze higher up in the spruce tops.

As the sun dips below the horizon, leaded amber window panes (M_YumaWindowGlow) and doorway iron torches light up automatically. From hundreds of metres away across a valley or down a forest trail, settlements now read as warm, inhabited shelters against the wilderness.
Sitting or standing near an active hearth now grants the Cozy Hearth resting aura, increasing stamina regeneration to 1.5x and doubling natural health recovery (2.0x). When work wraps up for the day, villagers and followers gather around the fire in a tight circle, sitting down to face the flames and rest their boots near the embers.
Northern Lights Over the Fjord & Evening Mist#
On clear northern nights, the dark sky above the mountains now comes alive with the Aurora Borealis.

Rather than relying on a flat painted skybox texture, the aurora is rendered through a procedural three-arc curtain mesh (M_YumaAurora). The curtains undulate with slow S-wave boundary motion along their lower edge, cut through with crisp, high-frequency vertical ray filaments that mimic solar wind particles streaming down planetary magnetic field lines.
The colour gradient follows the physical atmospheric emission spectrum: the lower skirt glows in the characteristic 557.7 nm emerald green of excited atomic oxygen between 100 and 150 km altitude, fading upward into higher-altitude nitrogen violet and crimson flushes at 200 to 400 km. Because the aurora acts as an emissive light source, its shifting glow feeds directly into the real-time skylight, casting faint emerald reflections across the cold surface of the fjord, the snow patches on the cirques, and the drifting evening mist.
Along the water’s edge, low-lying mist wisps form in calm weather at dusk, pooling over the cold fjord surface and settling between the reeds.
Farlands Overhaul: Cirques, Snow Basins and Distant Forests#
YUMA renders terrain and forests out to the horizon across tens of kilometres. Beyond the close-range mesh clipmap (around 1.1 km), the terrain transitions into continuous distant level-of-detail surfaces and synthesized far canopy. That transition had several glaring issues when looking across the fjord:
- Calibrated alpine rock (
TL_MOSSROCK): Steep alpine mountain faces were being painted in a sickly lime-green moss wash. We recalibratedTL_MOSSROCKand restricted it strictly to gentler slopes and moisture shelves below 35 degrees. Steep glacial cirque walls, cliff faces, and high couloirs now stay dark, fractured granite and gneiss. - Leeward snow drift basins: Distant snow previously relied on a 23-metre noise pattern that resolved into repetitive polka-dot flecks across mountain shoulders. We replaced it with broad, 260-metre leeward snow drift basins that accumulate realistically in sheltered bowls and leeward hollows. Along their edges, dark wet meltwater rims simulate the damp rock revealed by thawing snow.
- Synthesized 3D tree crowns: Beyond the 1.1 km tree boundary, the terrain previously looked like flat green linoleum. The farlands shader now synthesizes 8.5-metre 3D conical tree-crown normals and inter-crown ambient occlusion pockets across the distant forest layer. At 3 to 10 kilometres out, the far forest canopy catches raking side light and casts self-shadowing texture across mountain flanks as if individual spruce trees were still being drawn.
- Craggy couloir relief: We injected 48-metre and 140-metre craggy rock fracture harmonics into the distant height normals, giving mountain massifs sharp, carved ravines and ridge relief instead of smooth, clay-like silhouettes.
- Dark mountain brooks: High-contrast river foam was toned down and faded out with distance. Small mountain brooks far away now glisten darkly against wet rock instead of looking like white chalk stripes drawn onto the hills.
- Coastal turf transitions: The transition between coastal sand and green turf was smoothed to prevent hard dithered stepping along the shoreline.
Solgata on the Water & Engine Lighting Polish#
In Scandinavia, the shimmering golden path of sunlight cast across the sea by a low sun is known as Solgata (“the sun road” or “sun street”).

Standard water shaders filter out wave normals over distance to combat specular aliasing, but doing so flattens distant swells into a dull diffuse plate and cuts the sun road off halfway across a bay. We reworked the normal mip-filtering and variance preservation on the water surface: the low-sun reflection path now stays focused and unbroken all the way to the far shore. Wave facets produce crisp diamond micro-facet glints without shimmering noise, while wave crests backlit by the setting sun scatter warm jade and amber light through their translucency.

Alongside the water improvements, we completed an engine-level lighting and post-processing pass:
- GTAO & bent-normal occlusion: Enabled Ground Truth Ambient Occlusion (GTAO) paired with Lumen short-range bent-normal AO. Grass tufts, hut eaves, stone foundations, and timber stacks now have deep, physically grounded contact shadowing instead of appearing to float over the turf.
- Volumetric fog with point-light scattering: Fog resolution was increased to 96 depth slices, allowing doorway torches and campfire light to cast volumetric shafts with sharp contact shadows through window frames and doorway openings.
- VSM SMRT physical sun penumbras: Sun shadows now run on 2-ray Virtual Shadow Map Shadow Map Ray Traced (SMRT) penumbras. Shadows cast near the base of a post or tree trunk are sharp and crisp, softening progressively into wide, natural penumbras as distance from the occluder increases.
- Atmospheric depth & moonlight: A 32-slice aerial perspective lookup table (LUT) provides smooth, layered mountain haze, and directional moon contact shadows anchor objects cleanly at night.
- Cinematic optics: Depth of field now uses a 7-blade circular diaphragm model with subtle autofocus, paired with a warm golden-amber halation bloom that spreads gently around incandescent light sources without washing out the frame in white glare.
Weight, Stride & Responsiveness: Camera, Locomotion & Input Feel#
Out of the box, standard Unreal Engine character movement and third-person camera setups carry a distinctive, weightless stiffness. The stock character movement component snaps to full velocity almost instantaneously under an aggressive 2600 cm/s² acceleration curve, and pivots 180 degrees in a single frame without planting a foot. Meanwhile, the spring arm stays rigidly pinned to the collision capsule at a flat 90° FOV, jittering over micro-ledges, while inputs during dodge or attack transitions are dropped if pressed a millisecond too early. In a rugged northern wilderness where you navigate steep fjord scree, wade icy river shoals, and read enemy telegraphs in close melee, that robotic detachment breaks immersion. We replaced these defaults with a grounded, responsive feel across three interconnected systems:
- Contextual Damped Camera & Free-Look vs. Strafe Orientation: The camera spring arm now runs on tuned lag damping (
CameraLagSpeed = 14,CameraRotationLagSpeed = 22), absorbing small ground bumps without feeling disconnected from mouse input. Players can freely set their baseline distance usingCtrl + MouseWheelacross an adjustable180–520 cmrange. On top of this baseline, smooth contextual framing pulls back during sprinting (358 cm), construction (390 cm) and sailing (460+ cm), tightens in melee (282 cm), and tucks over the shoulder (185 cm) with a-12°telephoto FOV zoom and0.62xsensitivity scaling when drawing a bow or aiming a spear. In third person, the character now rotates naturally in the direction of movement during exploration so the camera can orbit freely, and smoothly turns into strafe alignment (RInterpTo) when drawing a bow, blocking, attacking, or building. - Physical Stride Momentum, Slope Cadence & Wading Drag: We re-tuned acceleration (
1500 cm/s²) and braking (1600 cm/s²), introducing foot-planting pivot inertia on sharp reversals instead of instant direction snaps. Unreal’s default movement math calculates velocity purely on the 2D horizontal plane, which perversely makes ascending a 50° uphill climb faster in true 3D space than walking on flat ground; we added uphill/downhill slope speed modulation to correct the cadence naturally across rugged terrain. In the shallows, progressive shallow-water wading drag (25–110 cmdepth) slows the stride smoothly from ankle-deep wading to chest-deep resistance before swimming begins. - Tactile Springs, Spine Weight & Input Buffering: Impact and body weight are grounded through a second-order critically damped landing spring (
omega = 22,zeta = 0.65) paired with pelvis landing compression and Two-Bone Foot IK knee flex upon touching down. The character leans into motion with forward acceleration and uphill spine pitch alignment (SlopePitch), accompanied by subtle stride bob and turn banking, plus idle figure-8 weapon sway. Melee contact delivers tactile resistance with50–75 mshit-stop paired with directional camera recoil punches. Beneath the visuals, input handling was overhauled with responsive buffering: a200 msdodge buffer,220 mspost-dodge/combo attack buffer,150 msjump buffer, and110 msledge coyote time ensure inputs never get eaten during animation blend-outs.
The Valley That Thought It Was a Beach#
Up in the hills behind the fjord sits a large lake, and from its outlet a river winds down through a broad valley floor toward the sea. Since the move to the new coast, that entire kilometre-long valley floor had been covered in pale, dry sand, as if someone had poured a desert between two green hills.
The reason turned out to be simple. Sea level is at 20 metres, and the terrain shader gives any ground below the high-water mark of 21.3 metres a sandy shore. Near the sea that makes a clean beach. Half a kilometre inland, where a flat valley floor happens to lie at 20.8 metres before rising toward the lake, the ground was still below 21.3 metres, so the shader dutifully painted a 300-metre-wide beach all the way up the valley.
The terrain now knows how far it is from the coast. Sea beaches stay sandy up to the high-water line, lakes keep their own sandy shores, and low-lying inland valleys stay green meadow and bog right up to the gravel bed of the river. At the same time, steep 40 to 60 degree glacial trough walls now shed their grass earlier and show dark rock and scree instead of bright green turf.

Saplings, River Mouths and Far-Out Precision#
A few smaller visual and simulation bugs were cleaned up alongside the atmosphere pass:
- No more silver saplings: a common medium fir sapling (
fir_sapling_medium, roughly 94,000 of them on the start island) had a second material slot for its lower dead branches that used an untinted pale grey texture. In direct sunlight those branches lit up like silver wire. They now wear dark weathered bark, and the overly orange dead-branch cards on the spruces were toned down to match the trunks. - Clean river mouths: where a river met a lake or the sea, the dry corners of the water mesh could pull their height from the raised river ribbon and leave small white water wedges on the bank. Dry shore corners now interpolate only from the still water surface.
- Exact coordinates for leaves, crops and weather: the exact integer-tile coordinate math (
FYumaPos) from the terrain pass now also drives the autumn leaf-colour patterns, crop wind sway and weather particles, so nothing steps or bands at 430 km from the map centre. - Hunting goods in clan trade: clan trade tables now have room for the full list of hunting wares, so Raider, Trader and Farmer clans buy and sell hunting bows, elm longbows, iron arrows, antlers, feathers and venison.
- Spawn-first loading with old saves: followers carried over from another world now wait until they are recalled to the player before requesting terrain around themselves, so the server never wastes time building islands at the old world origin during loading.
- Forest motes and birds: golden dust and pollen motes drift through sunny forest clearings, giving way to sparse fireflies over evening grass, while small flocks of coastal birds wheel in slow circles above the fjord.



