3.4 KiB
Agrarian Asset Pipeline
Purpose: replace placeholder visuals with realistic, licensed, performant assets while keeping the project clean enough to scale across Earth-sized tiles.
Visual Direction
Agrarian should read as realistic modern post-collapse frontier survival: damaged but recoverable, practical, lived-in, and grounded. The world should not look cartoonish, old-west, or exaggerated apocalypse junkyard.
First Asset Priorities
- Coastal scrub trees.
- Shrubs and bushes.
- Grasses and ground cover.
- Water, banks, wet edges, and shoreline dressing.
- Rocks, terrain decals, and material detail.
- Two to four human character bodies/outfits.
- Old abandoned equipment starting to be overtaken by nature.
Approved Sources
- Fab free assets. Paid Fab assets are blocked unless Nathan explicitly approves the purchase in a later task.
- Quixel/Megascans assets available under the current Epic/Unreal terms.
- CC0/public-domain art libraries.
- Assets created internally.
- Assets Nathan manually adds to the staging folder with permission to use.
Do not scrape random internet images or models. If an asset cannot be traced to a usable license, reject it.
Free-Only Lockdown
The asset pipeline is currently free-only. Before download or import, verify
that the asset page is marked free or that the asset is project-owned/internal.
Record the cost in Docs/Art/AssetLicenses.md as Free, $0, 0, or N/A.
Do not click purchase, checkout, add payment, subscription, or paid-license flows. If an asset looks useful but is not free, record it as a candidate in notes outside the import flow and wait for explicit approval.
Staging Workflow
- Place downloaded/manual assets in:
/home/nathan/AssetStaging/Agrarian/Incoming - Save license evidence in:
/home/nathan/AssetStaging/Agrarian/LicenseEvidence - Review license and visual fit.
- Move acceptable assets to:
/home/nathan/AssetStaging/Agrarian/Approved - Import into Unreal under the correct project path:
/Game/Agrarian/Environment,/Game/Agrarian/Characters,/Game/Agrarian/Props, or/Game/Agrarian/Effects. - Rename using Agrarian naming policy.
- Generate or verify:
- materials/material instances
- collision
- LODs or Nanite settings
- texture size limits
- foliage cull distances where relevant
- gameplay tags or placement metadata where relevant
- Record the asset in
Docs/Art/AssetLicenses.md. - Run visual and placeholder verifiers before packaging a demo.
Unreal Import Notes
- Foliage should use HISM/foliage-friendly meshes with cull distances and sensible material complexity.
- Nanite may be used for rigid static meshes where it improves visual density, but grass and alpha-heavy foliage still need performance testing.
- Characters and animals must not be imported as static showcase meshes if gameplay requires animation. They need skeletal meshes, animation targets, collision, and gameplay integration.
- Water should be handled as a shader/system problem, not a generated model.
Rejection Rules
Reject or quarantine assets that:
- have unclear licensing.
- require attribution we cannot satisfy in-game or in shipped notices.
- are visibly stylized against the realism target.
- are too high-poly or texture-heavy without a practical optimization path.
- include unrelated branding, logos, watermarks, or embedded marketplace demo content.