Add MVP ambient biome audio hook

This commit is contained in:
2026-05-19 12:01:24 -07:00
parent c37d8d930c
commit fb658baff0
5 changed files with 89 additions and 12 deletions
+13 -9
View File
@@ -302,15 +302,19 @@ the represented local day/night cycle and current weather without hard-coded
static light settings. The Ground Zero map setup script places this controller
and removes the earlier static demo sun/skylight/fog actors.
First-pass weather audio uses `AAgrarianWeatherAudioController`. The controller
owns ambient, rain, wind, and storm audio components with assignable loop sound
slots. It reads replicated weather state, provider wind speed, provider cloud
data, and local night/day state, then fades component volumes so rain, wind, and
storm cues follow the same authoritative weather mapping used by temperature and
lighting. The current MVP can ship without final sound assets because the
controller is silent until loops are assigned; placeholder or final audio can be
added by setting the exposed sound properties on the placed controller or a
Blueprint child.
First-pass biome and weather audio uses `AAgrarianWeatherAudioController`. The
controller owns ambient, rain, wind, and storm audio components with assignable
loop sound slots. The ambient component is explicitly the Ground Zero
coastal-scrub biome bed through `BiomeAmbientLoopSound`, with separate day and
night volume targets so the map can carry wind, surf, insects, distant birds, or
other realistic low-level biome texture before final authored assets are
available. It reads replicated weather state, provider wind speed, provider
cloud data, and local night/day state, then fades component volumes so rain,
wind, and storm cues follow the same authoritative weather mapping used by
temperature and lighting. The current MVP can ship without final sound assets
because the controller is silent until loops are assigned; placeholder or final
audio can be added by setting the exposed sound properties on the placed
controller or a Blueprint child.
Campfires expose native extinguish logic through `AAgrarianCampfire::Extinguish`.
Extinguishing clears remaining fuel, turns off replicated lit state, and reuses