OptionalassetFor 'image': stable asset ID looked up in TerrainAssetRegistry
OptionalnoiseFor 'procedural': noise spatial frequency override. Higher = finer grain.
OptionalsecondaryFor 'procedural': second color mixed in as noise-driven patches (e.g. grey gravel banks in a sandy riverbed). Omit for the classic single-color look.
OptionalpatchFor 'procedural': spatial frequency of the secondary-color patch mask. Default 40.
'procedural' = noise-based from color; 'image' = loaded from asset registry