logo SERENITY
Game Systems Foundation
Search Results for

    Show / Hide Table of Contents

    Namespace Serenity.SoundMixer.Infrastructure.RelationshipManager.Editor

    Classes

    AudioChannelCreator

    Creates a Serenity audio channel — a UnityAudioPlayerSettings asset routed to a mixer group — from validated input. Thin adapter over AudioPlayerSettingsCreator, which owns every asset mutation (resolve-or-create by Id, rollback, Addressables registration); kept as a separate entry point purely so the Relationship Manager's Create Channel section (Validate(string, string)'s string-per-call shape, DefaultChannelOutputFolder) does not have to change.

    AudioChannelCreator.Result

    AudioChannelGroupReassigner

    Routes an existing audio channel to another mixer group — the fix the Audio Channel Manager's Inconsistencies rows offer for a channel with no usable group. The write goes through the shipped-content gate, is undoable, and is saved, so the channel the row named is the one that changed and the author finds the change on disk.

    AudioMixerChannelGroupCreator

    Public, reusable helper that creates a plain mixer group (an audio channel's destination) under a parent group. It wraps the module's internal Serenity.SoundMixer.Infrastructure.AudioMixerEffectLoop.Editor.AudioMixerEffectLoopReflectionAdapter so the relationship-manager tool can create channels without duplicating the fragile internal-API access. Unlike the effect-loop creator, this does not add a Receive chain — it is just a group.

    AudioMixerRelationshipManagerWindow

    Editor window (Tools ▸ Serenity ▸ Browse ▸ Audio ▸ Audio Channel Manager) that shows and reconciles the relationship between a Unity AudioMixer and the Serenity sound configuration: which groups exist, which channels (AudioPlayerSettings) route to them, the effect loops, the exposed parameters, and every inconsistency between the two sides. It can create a channel/group, run repair actions, and — with a dry-run preview, explicit confirmation and Undo for the reversible parts — delete a channel/group while migrating the references that would otherwise break.

    Overview, Inconsistencies, Repair, Create Channel and Delete Channel are five independent mini-tools, not wizard steps — there is no shared progression between them, so they are presented as a master-detail list (Serenity.Global.Infrastructure.Editor.SerenityMasterDetailGui) rather than a stepped flow: pick one on the left, work in it on the right, with the mixer picker and the activity log persistent above and below the split. The window only orchestrates: detection lives in AudioMixerRelationshipAnalyzer, repair planning in AudioMixerChannelDeletionPlanner, scanning in AudioMixerRelationshipScanner, and each section's own presentation in its Sections/AudioMixer*SectionGui collaborator.

    AudioMixerRelationshipScanner

    Editor-only bridge that gathers the live Unity + Serenity state for a given UnityEngine.Audio.AudioMixer into the pure snapshots consumed by AudioMixerRelationshipAnalyzer and AudioMixerChannelDeletionPlanner, while also keeping the live asset references the window needs to apply changes. All AudioMixer structure reading is delegated to the existing AudioMixerYamlReader; this class only joins the pieces.

    AudioMixerRelationshipScanner.ChannelAsset

    A Serenity channel paired with the live settings asset it came from.

    AudioMixerRelationshipScanner.ScanResult

    Everything the window needs: the snapshots plus live asset references for applying edits.

    SerenityMixerTopologyWindow

    Read-only visual routing diagram for a Unity UnityEngine.Audio.AudioMixer and the Serenity sound configuration: draws each Serenity audio channel wired to its mixer group, marks which groups have their volume exposed, and lays out each effect loop's source groups feeding its loop group via sends.
    Complements the Audio Channel Manager (which lists inconsistencies and creates/repairs channels): this answers "how does my audio actually route?" at a glance, with no analysis or edits.

    In this article
    © 2026 Serenity. All Rights Reserved