diff --git a/source/sound/sound_environment_definitions.c b/source/sound/sound_environment_definitions.c index 99794bb2..d15e58cd 100644 --- a/source/sound/sound_environment_definitions.c +++ b/source/sound/sound_environment_definitions.c @@ -8,6 +8,8 @@ symbols in this file: /* ---------- headers */ +#include "sound_environment_definitions.h" + /* ---------- constants */ /* ---------- macros */ @@ -18,6 +20,26 @@ symbols in this file: /* ---------- globals */ +struct sound_environment_definition const default_sound_environment= +{ + 0, + 0, + 0, + 0.f, + 0.f, + 0.f, + 1.f, + 0.5f, + 0.f, + 0.02f, + 0.f, + 0.04f, + 1.f, + 1.f, + 5000.f, + { 0 }, +}; + /* ---------- public code */ /* ---------- private code */ diff --git a/source/sound/sound_environment_definitions.h b/source/sound/sound_environment_definitions.h index e5dd8d70..618b1f05 100644 --- a/source/sound/sound_environment_definitions.h +++ b/source/sound/sound_environment_definitions.h @@ -8,16 +8,46 @@ header included in hcex build. #define __SOUND_ENVIRONMENT_DEFINITIONS_H #pragma once +/* ---------- headers */ + +#include "cseries.h" +#include "math/real_math.h" + /* ---------- constants */ /* ---------- macros */ /* ---------- structures */ +struct sound_environment_definition +{ + long unknown; + short priority; + short unused0; + real room_intensity; + real room_intensity_hf; + real room_rolloff; + real decay_time; + real decay_hf_ratio; + real reflections_intensity; + real reflections_delay; + real reverb_intensity; + real reverb_delay; + real diffusion; + real density; + real hf_reference; + byte unused1[16]; +}; + +typedef char verify_sound_environment_definition_size[ + sizeof(struct sound_environment_definition) == 0x48 ? 1 : -1]; + /* ---------- prototypes/EXAMPLE.C */ /* ---------- globals */ +extern struct sound_environment_definition const default_sound_environment; + /* ---------- public code */ #endif // __SOUND_ENVIRONMENT_DEFINITIONS_H