This repository has been archived on 2026-05-24. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
AgrarianGameArchive/Docs/Terrain/GroundZeroNaturalEnvironmentPass.md

4.1 KiB

Ground Zero MVP Natural Environment Pass

The Ground Zero map now has a first MVP natural environment pass so the investor demo reads as coastal California scrub/woodland instead of a plain grey-box test space.

Scope

  • Terrain receives a procedural coastal scrub terrain material that blends dry soil, scrub green, and sandy path color families with broad and fine noise so Ground Zero does not read as flat tan placeholder ground.
  • Foliage patch instances use native low-poly coastal scrub vegetation meshes under /Game/Agrarian/Environment/Vegetation: a coastal oak proxy, coyote brush proxy, and dry grass clump proxy. The foliage materials include per-instance color variation so repeated instances do not read as copied engine primitives.
  • Wood, fiber, stone, and freshwater actors receive distinct first-pass materials.
  • Investor-facing asset variation actors add additional tree canopies/trunks, rounded bushes, brush clusters, grass mats, rock slabs, water-bank pieces, reeds, and a visible freshwater surface with varied meshes, scales, rotations, and material families.
  • A first-pass ruin landmark placeholder gives the Ground Zero demo a visible point of interest using five native placeholder stone pieces: foundation, wall fragments, a cairn marker, and a threshold.
  • The foliage and asset variation layers now use Agrarian-native placeholder mesh assets from /Game/Agrarian/Environment/PlaceholderMeshes instead of direct LevelPrototyping mesh references.
  • The setup remains repeatable through Scripts/setup_ground_zero_demo_map.py.

Placeholder Mesh Assets

  • /Game/Agrarian/Environment/PlaceholderMeshes/SM_AGR_Placeholder_Cube
  • /Game/Agrarian/Environment/PlaceholderMeshes/SM_AGR_Placeholder_ChamferCube
  • /Game/Agrarian/Environment/PlaceholderMeshes/SM_AGR_Placeholder_Cylinder
  • /Game/Agrarian/Environment/PlaceholderMeshes/SM_AGR_Placeholder_QuarterCylinder
  • /Game/Agrarian/Environment/PlaceholderMeshes/SM_AGR_Placeholder_Plane

Material Assets

  • /Game/Agrarian/Materials/M_AGR_GZ_Terrain_CoastalScrub
  • /Game/Agrarian/Materials/M_AGR_GZ_Tree_CoastalOak
  • /Game/Agrarian/Materials/M_AGR_GZ_Shrub_CoyoteBrush
  • /Game/Agrarian/Materials/M_AGR_GZ_Grass_DryCoastal
  • /Game/Agrarian/Materials/M_AGR_GZ_Wood_Resource
  • /Game/Agrarian/Materials/M_AGR_GZ_Fiber_Resource
  • /Game/Agrarian/Materials/M_AGR_GZ_EdiblePlant_Resource
  • /Game/Agrarian/Materials/M_AGR_GZ_Stone_Sandstone
  • /Game/Agrarian/Materials/M_AGR_GZ_FreshWater

Validation

Scripts/verify_ground_zero_natural_environment_pass.py checks that the materials exist, the landscape uses the terrain material, the foliage actor has the expected investor-facing instance counts and material assignments, and resource/water actors are visually dressed. It also checks that foliage no longer points at /Engine/BasicShapes or template meshes, that the three coastal-scrub vegetation assets are assigned, and that tree, shrub, and grass components have explicit cull distances for performance. It also checks that the terrain material contains procedural color breakup rather than a flat constant color: noise, blend, and coastal-scrub color-vector expression families must be present in the saved material package. It also checks the asset variation layer: twenty-three labeled variation actors, at least four mesh silhouettes, unique scale profiles, and coverage across tree, bush, grass, rock, and water visual families. Scripts/verify_native_placeholder_meshes.py checks that playable resource/structure/water Blueprints, foliage components, and environment variation actors use Agrarian-native placeholder meshes rather than template mesh paths. Scripts/verify_ground_zero_landmark_placeholder.py checks the ruin landmark placeholder actor count, native mesh paths, stone material assignment, distinct placement, and roadmap/doc coverage.

Follow-Up

This pass deliberately keeps the current prototype geometry so it stays small and stable. Later environment work should replace the Agrarian-native placeholder silhouettes with region-appropriate sourced or custom meshes, then drive density and shape selection from land-cover, slope, hydrography, and biome data.