Forest and farm gap audit

CategoryForest gapFarm gapImpactLane
Lighting and shadow softnessBright forms have little directional shade on the meadow.Pale props need shape-matched shade without losing the bright mood.High1
Ambient occlusion and contact shadowsLeaf cavities and root contacts lack consistent depth.Leaf undersides and prop joints need local occlusion.High1
Colour gradingSimilar green values flatten the clearing's depth.Highlight values merge the lawn, hay and cream fence.High1
Ground and path materialsThe path is a soft uniform band on a mostly flat lawn.Ground detail is richer, but painted flower stamps dominate.High2
Grass and foliage shading and densityDense leaf geometry needs a clearer light-to-dark hierarchy.Foliage 1 closes shape density; shading needs the next pass.High3
Prop modelling, bevels and silhouettesLarge shapes work; bark and small forms need material distinction.#237 largely closes the low-poly prop gap.Medium4
Water and creekThe creek needs bank and depth detail, only in reverse shots.No farm water feature exists; retain that choice.Medium / low5
Sky and atmosphereCanopy hides sky in these shots; little immediate gain.The bright sky works; broad smooth hills feel separate.Medium / low5
Small life, butterflies, petals and windTagged foliage sways, but the clearing has little small life.Wind, pollen and the mill already exist; tune their scale together.Low6
Edge and outline treatmentLeaf scales and conifer bands create uneven edge language.Foliage 1 helps; light leaf rims still compete with prop contours.Medium4

The biggest remaining gain is coherent light and material depth. The forest already has dense geometry. The approved farm already has the richer props and foliage it needed. Start with how those forms are shaded and seated into the ground.

4 November 2026 · Gap audit only · Look-dev and Kyle's sign-off come before builds · No app source changes or PR

Keep the identities. Forest stays a clearing inside a layered woodland. Farm stays bright, airy and fairy-like, with foliage 1 and no sunny ring. No barn, no Bank-like building, no prop clipping into stump, cards or animals. Frame-edge cut-offs are allowed.

Baselines. Forest is origin/main b6944075 at audit start. Farm is PR #237 15a6dba6, approved A + foliage 1, no ring. The coordinator confirmed identical farm content merged as ba40ffd6. No old procedural farm is used in this audit.

The real shots

Production Home and real offline games at /table?mode=offline&name=Player. The desktop board uses the shipped 35% lip-width framing and 46° pitch. No lab substitute or staged replacement scene.

Measured baseline

Apple M1 GPU on Kyle's Mac mini, Chromium through ANGLE Metal. Desktop DPR 1. Phone viewport 390×844 at DPR 2 on high, DPR 1 on low. These phone-sized Mac renders are comparison baselines, not measurements from an iPhone or Android GPU.

Field and board viewportDPR / tierSubmitted trianglesDraw callsGPU ms median / p95CPU ms median / p95Cold route transfer
Forest · 1440×9001 / high2,143,577403.46 / 4.341.80 / 2.7039.06 MB
Forest · 1920×10801 / high2,143,577403.55 / 4.201.70 / 2.6039.06 MB
Forest · 390×8442 / high2,143,577403.93 / 4.471.90 / 2.7038.96 MB
Forest · 390×844 low1 / low2,143,577403.33 / 3.632.60 / 3.8037.50 MB
Farm · 1440×9001 / high693,140432.22 / 2.372.80 / 3.7027.75 MB
Farm · 1920×10801 / high691,456392.23 / 3.202.40 / 3.0027.57 MB
Farm · 390×8442 / high691,476382.21 / 2.351.90 / 2.6027.07 MB
Farm · 390×844 low1 / low480,246411.01 / 1.045.90 / 7.4026.17 MB

Field download: forest GLB 13,959,800 bytes, 13.96 MB; farm GLB 2,365,516 bytes, 2.37 MB. Both tiers download the same field GLB. The farm also requests 497,643 bytes of unique full-resolution ground and pollen maps, bringing its full field payload to 2,863,159 bytes, 2.86 MB. Forest textures are embedded in its GLB. The transfer column totals Resource Timing transferSize from a fresh context against the local uncompressed HTTP export, including response overhead, shared code, cast, cards and preload assets. Cached duplicate requests contribute no new transfer. This is not a compressed production CDN estimate. Decoded body totals remain in the data register. MB is decimal.

Forest · desktop
3.46 ms
Forest · phone viewport
3.93 ms
Farm · desktop
2.22 ms
Farm · phone viewport
2.21 ms

Bars use a 16.67 ms scale, the entire 60 fps frame allowance. The 30 fps allowance is 33.33 ms. GPU time alone does not establish either end-to-end target.

Measurement method and limits

Each viewport used a fresh browser context and the exact exported app. The renderer string was checked before accepting a capture. Browser screenshots retain UI and the real field. The board waits for an auction turn prompt, a settled board rig and no active camera effect. Random offline games can already have settled status props, so draw counts vary with that real game state. The screenshots and raw counters preserve those differences. In particular, the farm 1440 board contains established status props; its higher count is not a field geometry change. The app normally sleeps when idle; the benchmark keeps its existing scheduler awake for five seconds without changing gameplay or camera settings.

CPU figures measure rendered requestAnimationFrame callback work, excluding deliberate scheduler waits. GPU figures use EXT_disjoint_timer_query_webgl2 around 24 renders of the real settled scene and camera; queries are read after a delay, with the first four excluded and disjoint results rejected. The static GPU sample excludes simulation, UI and card FX. CPU and GPU overlap, so do not add their columns. Exact viewports, backing buffers, counters, samples and resource sizes are in baseline data and the linked capture JSONs.

These are short board samples on a shared Mac, not a thermal soak, FX stress test or phone certification. No software renderer was used for the audit. Targets and existing phone quality settings remain unchanged. The forest low tier thins the far world, which is hidden at the board; its 2.14 million board triangles and full GLB download persist. That makes geometry-neutral look-dev the sensible first pass.

Look-dev lanes, in order

Each lane covers both fields and returns comparative stills before any app implementation. Order is visual reach per expected phone cost. Costs below are planning ranges, not benchmark results or newly approved budgets.

  1. 01

    Light, contact and colour

    Finish local occlusion, shape-matched static shade and material-specific values. Forest keeps the clearing. Farm keeps its bright pastel light. Start with vertex colours and baked ground shade, then decide whether a bounded high-tier shadow map earns its cost.

    Both fields: identical real cameras, contact crops and a phone-size value comparison. No new full-screen pass.

  2. 02

    Ground and paths

    Forest gets a more convincing grass-to-dirt boundary. Farm gets quieter grouped flower marks and better lane-to-field transitions. Keep its approved no-ring ground.

    Both fields: near-ground crops plus phone Home and 35% desktop board. Replace maps rather than stack layers.

  3. 03

    Foliage and grass

    Tune normals, shaded interiors, leaf scale and selective ground clumps. Preserve the forest layers and the farm’s foliage 1 shapes. Seek flat or lower net triangles.

    Both fields: one near crown, one hedge or shrub, one ground patch, full and reduced tiers. No blanket density increase.

  4. 04

    Prop silhouettes and edges

    A selective contour and material pass. Most farm prop modelling is already closed by #237. Retain rounded bales and cart. Spend only on visible rails, roots, stones or canopy contours.

    Both fields: real-shot crops at 1× phone size. No global outline pass, no barn, no Bank-like prop.

  5. 05

    Atmosphere and creek

    Unify near-to-far value transitions and tune existing sky gradients. Forest creek gets shoreline and depth work only in views that see it. Farm gets hill transitions, with no new water feature.

    Both fields: phone Home and forest reverse intro. Keep the existing far visibility rule, route and dry-trunk clearance.

  6. 06

    Small life and wind

    Tune existing wind first. Forest may get a bounded pair of butterflies or a few leaves. Farm already has pollen, wind, moving clouds and a turning mill.

    Both fields: short motion loops after still sign-off, low-tier reduction and idle-sleep check. Keep motion clear of cards, faces and stump.

What #237 already closes

The farm's original coarse prop and smooth-lump foliage gap is largely closed. The new 2.37 MB library has rounded bales, hay cart, crops, flowers, silo and windmill, plus the approved leaf-clump hedge, fruit trees and hill clumps. Ground painting is finer, and the field has clover, daisies and straw. Its reduced tier keeps the same foliage silhouettes with coarser leaf scales. The existing wind, pollen, clouds and mill motion remain. Light coherence, local occlusion, ground grouping, hill transitions and edge consistency remain open.

Category comparisons

Each field has a concrete observation, an implementation sketch and a rough incremental phone cost. Frame-time ranges need later on-device measurement. Replacement textures or geometry can change compressed size; they are not automatically additive. Shared lane-1 work is counted once when planning a build.

Lighting and shadow softnessHigh · lane 1

New Horizons gives trees, fence posts, furniture and the character shadows with a common sun direction. Its midday tree silhouettes are fairly crisp. Hello Kitty uses gentler shading, but nearby objects still share a convincing light direction.

Forest

forest Lighting and shadow softness capture crop
Our forest · full capture
Lighting and shadow softness official reference crop
Nintendo · official source · crop

The oak trunks and crowns are modelled, but their shade on the lawn is mostly a soft oval. Leaves, the stump and the ground read as separate lit objects. Keep the open clearing and its daylight.

Look-dev test. Bake a broad, low-contrast canopy sun pattern into the existing ground colour or a small atlas. Match the shared key direction. Keep live cast shadows as contact decals first; test one tightly bounded soft PCF map only on a higher tier if needed.

Rough phone cost. 0–0.3 MB; 0–1k triangles; about 0–0.25 ms/frame for the baked option. A live shadow map is a separate, higher-cost experiment.

Farm

farm Lighting and shadow softness capture crop
Our farm · full capture
Lighting and shadow softness official reference crop
Nintendo · official source · crop

Cream fences, pale hay and light grass approach the same brightness. The cart and bales have round contact spots, but little directional shadow explaining their shape. The result is airy, as approved, but less grounded than the reference.

Look-dev test. Keep the current warm key, haze and exposure. Bake soft directional shade for the fence, cart and bales, and tune underside normals or vertex colour before adding any screen-wide effect.

Rough phone cost. 0–0.25 MB; 0–1k triangles; about 0–0.25 ms/frame. Reuse the contact atlas and merged mesh.

Ambient occlusion and contact shadowsHigh · lane 1

Tree roots, fence feet and furniture meet the ground with dark local contact. Leaf overlaps have darker interiors than their exposed tips. This is visible separation, not a claim about Nintendo's implementation.

Forest

forest Ambient occlusion and contact shadows capture crop
Our forest · full capture
Ambient occlusion and contact shadows official reference crop
Nintendo · official source · crop

The canopy has many overlapping leaves, but broad areas stay one value. The hero roots and small plants do not all sit into the ground with the same contact strength. Existing blobs already provide a useful starting point.

Look-dev test. Audit the exporter bake coverage, then finish static leaf and branch AO in vertex colours. The exporter supports an eight-ray, 0.65 m bake; the pass-4 README uses --preview, which skips that final step. Reshape existing ground contact decals at roots, rather than adding SSAO.

Rough phone cost. 0–0.2 MB after recompression; 0 triangles; about 0–0.1 ms/frame. No extra full-screen pass.

Farm

farm Ambient occlusion and contact shadows capture crop
Our farm · full capture
Ambient occlusion and contact shadows official reference crop
Nintendo · official source · crop

#237 gives the hedge real overlapping leaf clumps. Their silhouette is richer, while leaf interiors, fence joints and cart-to-ground contact remain shallow. A uniformly darker farm would miss the approved mood.

Look-dev test. Add small-radius vertex AO to the existing GLB colours and stronger contact only under joints, leaves and supports. Use shape-aware decal footprints for the cart and bale edges.

Rough phone cost. 0–0.15 MB after recompression; 0 triangles; about 0–0.1 ms/frame. Share lane 1's bake and atlas.

Colour gradingHigh · lane 1

Hello Kitty separates pink foliage, mint water, warm paths and deep leaf interiors. New Horizons also separates green grass from warmer dirt and cooler shaded forms. Brightness remains readable across materials.

Forest

forest Colour grading capture crop
Our forest · full capture
Colour grading official reference crop
Sunblink / Sanrio · official source · crop

Lawn, shrub tops and distant crowns occupy a narrow bright-green range. Warm bark is clear, but the field-wide 1.3 saturation boost does not distinguish canopy depth from ground colour.

Look-dev test. Tune the existing forest-only light patch by material role. Retain the green clearing, make shaded foliage a little cooler and deeper, and reserve warmer highlights for lit tips and bark. Use a small shader curve, not a new global LUT pass.

Rough phone cost. Under 0.01 MB; 0 triangles; roughly 0–0.15 ms/frame. Shader-only tuning.

Farm

farm Colour grading capture crop
Our farm · full capture
Colour grading official reference crop
Sunblink / Sanrio · official source · crop

The farm is intentionally pale and bright. Its sunlit leaf faces, cream rails and yellow hay often crowd into the same light value, so material differences disappear at phone scale.

Look-dev test. Keep the airy pastel palette. Preserve colour in the brightest faces, deepen only undersides and joints, and separate green, cream and hay with small hue shifts. Judge at the real phone Home, not an isolated model render.

Rough phone cost. Under 0.01 MB; 0 triangles; roughly 0–0.15 ms/frame. Shares the lane-1 material tuning.

Ground and path materialsHigh · lane 2

The reference has a clear scale hierarchy: small grass marks, a legible continuous path, darker soil edges, then larger flowers and props. Dirt, paving and lawn have different surface character.

Forest

forest Ground and path materials capture crop
Our forest · full capture
Ground and path materials official reference crop
Nintendo · official source · crop

The clearing reads clearly, but the ring is almost constant width and colour. A few pebbles and leaves sit on it; they do not yet explain wear, compressed earth or a grass-to-dirt edge.

Look-dev test. Repaint the existing meadow texture with restrained soil grain, local worn patches and a broken grass edge. Keep the clearing open. Add only a few low edge tufts outside board keep-outs; no new ring or layout change.

Rough phone cost. About 0–0.4 MB replacing textures; 0–2k triangles; roughly 0.05–0.35 ms/frame.

Farm

farm Ground and path materials capture crop
Our farm · full capture
Ground and path materials official reference crop
Nintendo · official source · crop

#237 closes the empty-lawn gap with finer grass, daisies, clover and straw. Repeated pale circular flower marks now cover large areas at one scale. The distant lane and crop rectangles are still smoother and flatter than nearby props.

Look-dev test. Art-direct the existing near and fields discs together. Reduce repeated stamp contrast, group flowers into patches, and give the existing lane a soft soil edge. Keep the approved no-ring ground and leave the board's working space clear.

Rough phone cost. About 0–0.25 MB replacing the two baked maps; 0–2k triangles; roughly 0.05–0.3 ms/frame.

Grass and foliage shading and densityHigh · lane 3

The reference trees use large readable crowns, smaller leaf groups and darker interiors. Their ground vegetation is selective. Hello Kitty similarly uses broad leaf masses with clear gaps and shaded undersides.

Forest

forest Grass and foliage shading and density capture crop
Our forest · full capture
Grass and foliage shading and density official reference crop
Nintendo · official source · crop

The forest already has dense overlapping leaf forms and a good layered clearing. Repeated leaf scales and similar greens can read as a textured shell; the lawn under them has much less variation. Adding leaves is the expensive answer to a shading problem.

Look-dev test. Retune leaf normals and base-to-tip vertex colour, combine a few leaf scales, and redistribute existing floor clumps into authored patches. Keep total placed triangles flat or lower. Preserve tagged wind and the far world's instancing.

Rough phone cost. 0–0.2 MB net replacement; target 0 net triangles; up to 4k redistributed grass triangles; roughly 0.1–0.5 ms/frame.

Farm

farm Grass and foliage shading and density capture crop
Our farm · full capture
Grass and foliage shading and density official reference crop
Nintendo · official source · crop

The new leaf-clump hedge, fruit trees and hill clumps already replace the old smooth lumps. At phone scale, pale leaf rims can merge into a noisy band, while separate grass tufts stand out from the painted grass beneath them.

Look-dev test. Keep foliage 1's silhouette and its matching reduced meshes. Tune leaf underside colour and normals, vary clump scale slightly, and group existing grass with the ground painting. Use instanced additions only if a specific visible gap remains.

Rough phone cost. 0–0.15 MB net replacement; target 0 net triangles, at most 3k visible grass triangles; roughly 0.1–0.45 ms/frame.

Prop modelling, bevels and silhouettesMedium · lane 4

The reference roof, steps, signs and trunk bases have rounded profiles and readable thickness. Large silhouette changes survive at normal gameplay size; tiny detail supports those forms.

Forest

forest Prop modelling, bevels and silhouettes capture crop
Our forest · full capture
Prop modelling, bevels and silhouettes official reference crop
Sunblink / Sanrio · official source · crop

The hero roots, log forms and mushrooms already have rounded silhouettes. Broad orange bark channels and leaves share a fairly even finish. More tessellation across the whole forest would spend triangles where the real shot cannot show them.

Look-dev test. Use a screen-size pass on existing roots, stones and logs. Adjust only visible contour breaks, bevel a few exposed edges and tune bark roughness or vertex shading. Remove equivalent unseen detail if geometry is added.

Rough phone cost. 0–0.25 MB net asset change; aim for 0 net triangles, at most 5k local replacements; roughly 0–0.2 ms/frame.

Farm

farm Prop modelling, bevels and silhouettes capture crop
Our farm · full capture
Prop modelling, bevels and silhouettes official reference crop
Sunblink / Sanrio · official source · crop

The approved bales have spiral ends and tied square forms; the cart, pumpkins, silo and windmill have rounded detail. Remaining visible simplification is concentrated in procedural rails, the scarecrow and broad hill profiles. These are local polish targets, not a reason to replace the farm again.

Look-dev test. Retain the new GLB library. Check rail end thickness and a few scarecrow or windmill silhouette edges at Home size. Spend only on edges visible in the shipped shot; retain merged meshes and the reduced foliage models.

Rough phone cost. 0–0.15 MB; 0–5k triangles at most; roughly 0–0.2 ms/frame. No barn or Bank-like building.

Water and creekMedium / low · lane 5

The river separates a dark channel from pale banks, with a readable shoreline and highlights. Hello Kitty's pond and waterfall use water colour, bright edges and surrounding rock to explain depth. Stills do not establish the animation method.

Forest

forest Water and creek capture crop
Our forest · full capture
Water and creek official reference crop
Nintendo · official source · crop

The real reverse intro sees a blue ribbon behind the near-side trees. Its bank is a soft colour transition with simple stones and reeds. It is intentionally absent from Home and the settled board, so this has lower reach than ground and lighting.

Look-dev test. Extend the existing two-draw creek. Add restrained depth tint, narrow shoreline highlights, a few shaded bank stones and slow coordinated ripple phases. Keep the existing route, narrowing and dry-trunk clearances. Avoid reflection or refraction render targets.

Rough phone cost. About 0–0.1 MB; 0–2k triangles; roughly 0.1–0.4 ms/frame when visible, zero added board cost if hidden.

Farm

farm Water and creek capture crop
Our farm · full capture
Water and creek official reference crop
Nintendo · official source · crop

The approved farm's identity comes from crops, hedge, hay, windmill and open sky. A new creek would be a composition change. Its absence is not a defect to fill just because the reference has water.

Look-dev test. No water addition in this pass. Apply the lane's atmosphere work to existing hills and sky only. A farm pond would require a separate look-dev and sign-off.

Rough phone cost. 0 MB; 0 triangles; 0 ms/frame for water.

Sky and atmosphereMedium / low · lane 5

The reference keeps the horizon distinct from near foliage and uses a simple sky without competing detail. Hello Kitty's waterfall scene also separates rock, foliage and distant air by value and colour.

Forest

forest Sky and atmosphere capture crop
Our forest · full capture
Sky and atmosphere official reference crop
Nintendo · official source · crop

Home and the board are enclosed by canopy. The captured phone reverse intro also fills its upper frame with trees, with only glimpses beyond them. A standalone sky defect is not established by these captures. The source has a generated far forest and gradient dome for more exposed outward views.

Look-dev test. Preserve the existing sky for these shots. In lane 5, inspect the existing outward camera inventory before tuning distance tint, medium-to-far crossfade or a restrained fog curve. Do not change the clearing composition to expose more sky.

Rough phone cost. 0 MB and 0 triangles for retention. If an exposed view needs a shader-only tint or fog adjustment: roughly 0.05–0.25 ms/frame when far world is shown.

Farm

farm Sky and atmosphere capture crop
Our farm · full capture
Sky and atmosphere official reference crop
Nintendo · official source · crop

The phone Home makes the pastel sky, hills, silo and windmill prominent. The hills are smooth colour masses with few ground cues. #237 improves their tessellation, but not the material and depth transition into the fields.

Look-dev test. Keep the approved gradient, fog range 24–88 and cheerful clouds. Tune hill-to-field colour and a little broad-scale variation, and preserve the low-contrast distant band. No darker forest mood or dramatic weather.

Rough phone cost. 0–0.1 MB; 0 triangles; roughly 0.05–0.25 ms/frame.

Small life, butterflies, petals and windLow · lane 6

The reference still has layered flower beds and small decorative life around its outdoor activity. This evidence supports placement and scale only. A still cannot prove wind, flutter speed or a particle budget.

Forest

forest Small life, butterflies, petals and wind capture crop
Our forest · full capture
Small life, butterflies, petals and wind official reference crop
Sunblink / Sanrio · official source · crop

The forest material already supports tagged foliage wind at a small amplitude. The still captures do not show a second scale of life in the clearing. Source reading finds no field-specific butterfly or petal system here.

Look-dev test. First prove the current wind tags animate on actual loaded materials. Then look-dev a bounded pair of butterflies or a few drifting leaves near perimeter plants. Use deterministic paths and instanced quads; keep the stump, cards and faces clear. Stop field-only animation when the host sleeps.

Rough phone cost. 0.02–0.08 MB atlas; 24–120 triangles; roughly 0.05–0.25 ms/frame while active. Low tier can omit it.

Farm

farm Small life, butterflies, petals and wind capture crop
Our farm · full capture
Small life, butterflies, petals and wind official reference crop
Sunblink / Sanrio · official source · crop

The farm already has swaying wheat, flowers and grass, turning windmill sails, drifting clouds and 44 pollen points, or 12 on low. #237 preserves these. Adding another general particle field would duplicate the same effect.

Look-dev test. Coordinate the existing gust speed and sway amplitude by plant height. If a distinct life cue is needed, test one or two butterflies near flowers instead of increasing pollen. Respect the host's idle rendering policy.

Rough phone cost. 0–0.05 MB; 0–48 triangles; roughly 0.05–0.2 ms/frame while active. Tune existing systems first.

Edge and outline treatmentMedium · lane 4

The reference separates foliage and props through curved silhouettes, normals, contact shade and colour. It does not need a thick black outline around every outdoor object. Thin details remain stable at gameplay size.

Forest

forest Edge and outline treatment capture crop
Our forest · full capture
Edge and outline treatment official reference crop
Nintendo · official source · crop

Round broadleaf crowns, repeated leaf ridges and tiered conifers are individually readable, but their contour detail has different scales. Thin leaf edges can become more prominent than the larger crown. MSAA is already on above low quality.

Look-dev test. Tune existing normals and contour detail at native phone size. Simplify very small edge features instead of outlining the entire field. Keep MSAA on the existing mid/high tiers; no full-field inverted hull or new full-screen edge pass.

Rough phone cost. 0–0.1 MB net replacement; target 0 or fewer triangles; roughly 0–0.1 ms/frame.

Farm

farm Edge and outline treatment capture crop
Our farm · full capture
Edge and outline treatment official reference crop
Nintendo · official source · crop

#237 aligns the hedge and trees with the forest's leaf-clump style, while the smooth cart and bales have quieter edges. Pale leaf rims can break into many small bright strokes beside those rounded props.

Look-dev test. Adjust leaf normals, underside colour and the finest rim detail. Use a few broad contour breaks. Preserve the rounded hay and cart models. Compare at 390x844 before spending on extra segments or outlines.

Rough phone cost. 0–0.08 MB net replacement; target 0 or fewer triangles; roughly 0–0.1 ms/frame.

Official reference stills

Outdoor gameplay stills from Nintendo's official Explore page and Sunblink's official Hello Kitty Island Adventure gallery. Reference images are shown small with visible credits. They are used only to compare visible results. No traced assets or reference textures are proposed, and the screenshots do not establish either game's proprietary rendering technique.

Animal Crossing New Horizons official outdoor screenshot
Animal Crossing: New Horizons · © Nintendo
Official Nintendo site · image source
Animal Crossing New Horizons official outdoor screenshot
Animal Crossing: New Horizons · © Nintendo
Official Nintendo site · image source
Animal Crossing New Horizons official outdoor screenshot
Animal Crossing: New Horizons · © Nintendo
Official Nintendo site · image source
Animal Crossing New Horizons official outdoor screenshot
Animal Crossing: New Horizons · © Nintendo
Official Nintendo site · image source
Hello Kitty Island Adventure official outdoor screenshot
Hello Kitty Island Adventure · © Sunblink / Sanrio
Official game gallery · image source
Hello Kitty Island Adventure official outdoor screenshot
Hello Kitty Island Adventure · © Sunblink / Sanrio
Official game gallery · image source
Hello Kitty Island Adventure official outdoor screenshot
Hello Kitty Island Adventure · © Sunblink / Sanrio
Official game gallery · image source
Hello Kitty Island Adventure official outdoor screenshot
Hello Kitty Island Adventure · © Sunblink / Sanrio
Official game gallery · image source

Rendering setup behind the recommendations

scene/fields/forest.js loads the baked forest, adjusts field-only direct light ×1.15 and saturation ×1.3, supports tagged foliage wind, and exposes far-world visibility. Its fog is null. Keep these field-specific controls rather than changing the shared cast light.

forestGround.js samples the baked meadow height, with the far-ground transition at 32 m. forestFar.js adds instanced tree bands, terrain, floor clumps, unlit clouds and a gradient dome. Its distance tint stays under 22%; low removes the medium band and floor detail. Keep the continuous ground and clearance grids.

forestCreek.js is a route-aware water/bank ribbon plus merged stones, reeds and log, two draws, with shader ripples. farView.ts controls whether it and the far world are shown. The board and Home do not see the creek. The reverse intro capture below is additional evidence.

apps/mobile/art/forest/ preserves #53's baked asset pipeline and #103's wider field, far world and creek. Export supports vertex AO and ground-contact shading. The pass-4 README's --preview path skips the final leaf bake. Check current bake coverage before claiming a rebake is sufficient.

farm.js on #237 places a vertex-colour GLB library into merged meshes. Ground is the existing painted near and fields discs plus a far ring. Wind, 44/12 pollen points, cloud drift and turning sails already exist. Fog is 24–88; field key is 1.05 with a warm colour and light ground fill.

kit/materials.js uses a hemisphere fill, warm directional key and cool rim. It explicitly has no shadow maps. Farm uses the vinyl/toon shader; forest uses standard materials with its field patch. The shared kit already has wrap lighting, coloured shadow/rim and contact decals.

platform/webHost.ts directly draws through WebGLRenderer, with MSAA above low. Captures confirm sRGB output, NoToneMapping and shadow maps off. There is no normal bloom, SSAO or composer chain. grade.ts is a temporary material-level Loan Shark noir effect, not the field's normal grade.

quality.ts: low DPR 1 / 30 fps / particle scale .25 / half texture scale / reduced field / no MSAA; mid DPR 1.5 / 60 fps / .6 particles / full field / MSAA; high DPR 2 / 60 fps / full particles, textures and field / MSAA. Native uses a scaled render target where required. This audit changes none of them.

Forest reverse intro and creek evidence
Real forest phone reverse intro showing the creek behind the near-side trees
390×844 · production offline intro, seat0 camera · additional shot, not the board benchmark