Class UnitySoundMixerSettingsEditor
Unity Editor custom inspector for UnitySoundMixerSettings ScriptableObjects.
Provides comprehensive editing interface for AudioMixer configuration including parameter discovery, value range settings, and exposed parameter management.
Features automatic YAML parsing to extract exposed parameters directly from AudioMixer assets.
Namespace: Serenity.SoundMixer.Installation.Settings.Editor
Assembly: Serenity.UnitySoundMixer.Installation.Editor.dll
Syntax
public class UnitySoundMixerSettingsEditor : FoundationEditor<UnitySoundMixerSettings>
Constructors
UnitySoundMixerSettingsEditor()
Declaration
public UnitySoundMixerSettingsEditor()
Methods
DrawSerializedFields()
Renders the complete Inspector GUI for UnitySoundMixerSettings.
Provides comprehensive editing interface for all mixer configuration options including bounds and exposed parameters.
Declaration
protected override void DrawSerializedFields()
GetAudioMixerExposedParameters()
Extracts exposed parameters from the AudioMixer asset by parsing its YAML representation.
Delegates to GetExposedParameters(YamlStream) (the SoundMixer module's
single reader for the AudioMixer YAML shape) instead of re-parsing the file inline, so there is
one place that knows the AudioMixerController/m_ExposedParameters layout.
Declaration
public List<string> GetAudioMixerExposedParameters()
Returns
| Type | Description |
|---|---|
| List<string> | List of exposed parameter names found in the AudioMixer asset |
OnEnable()
Initializes the editor when enabled.
Caches the current AudioMixer and extracts its exposed parameters for editing.
Declaration
public override void OnEnable()
OnInspectorGUI()
Declaration
public override void OnInspectorGUI()
RenderAudioMixer(UnitySoundMixerSettings)
Renders the AudioMixer asset field in the Inspector.
Provides object field for selecting and changing the Unity AudioMixer asset with automatic parameter refresh.
Declaration
public void RenderAudioMixer(UnitySoundMixerSettings soundMixerSettings)
Parameters
| Type | Name | Description |
|---|---|---|
| UnitySoundMixerSettings | soundMixerSettings | The sound mixer settings to modify |
RenderAudioMixerValueBounds(UnitySoundMixerSettings)
Renders the AudioMixer decibel value bounds configuration section.
Provides float fields for setting the corresponding AudioMixer decibel range that maps to user-selectable values.
Declaration
public void RenderAudioMixerValueBounds(UnitySoundMixerSettings settings)
Parameters
| Type | Name | Description |
|---|---|---|
| UnitySoundMixerSettings | settings | The sound mixer settings to modify |
RenderEffectLoops()
Renders the registered effect loop definitions list (drag in UnitySoundMixerEffectLoopDefinition assets created by the editor tool). Uses the serialized property so Unity handles the list editing UI and undo.
Declaration
public void RenderEffectLoops()
RenderExposedParameter(ConfigurationEntry)
Renders a single exposed parameter mapping with game settings ID dropdown selection.
Provides dropdown interface for mapping AudioMixer exposed parameters to available audio game settings definitions.
Declaration
public ConfigurationEntry RenderExposedParameter(ConfigurationEntry pair)
Parameters
| Type | Name | Description |
|---|---|---|
| ConfigurationEntry | pair | The key-value pair representing the parameter name and its associated game settings ID |
Returns
| Type | Description |
|---|---|
| ConfigurationEntry | The updated key-value pair with potentially modified game settings ID |
RenderExposedParameters(UnitySoundMixerSettings)
Renders the exposed parameters configuration section.
Automatically discovers exposed parameters from the AudioMixer and provides dropdown selection for mapping them to game settings IDs.
Declaration
public void RenderExposedParameters(UnitySoundMixerSettings settings)
Parameters
| Type | Name | Description |
|---|---|---|
| UnitySoundMixerSettings | settings | The sound mixer settings to modify |
RenderSelectableValueBounds(UnitySoundMixerSettings)
Renders the selectable value bounds configuration section.
Provides integer fields for setting minimum and maximum user-selectable volume values.
Declaration
public void RenderSelectableValueBounds(UnitySoundMixerSettings settings)
Parameters
| Type | Name | Description |
|---|---|---|
| UnitySoundMixerSettings | settings | The sound mixer settings to modify |