/// rcp authored schema

AudioMixGroupsComponent

Exact USDA block introduced by RCP plus fixture-backed contract evidence.

ID: RealityKit.AudioMixGroups Baseline: BASE.usda Fixture: Audio Mix Groups

Quick Read

AudioMixGroupsComponent has 5 fields. None are written in the baseline — RCP uses sparse authoring, emitting each field only when it differs from the engine default.

Authored as def RealityKitComponent "AudioMixGroups" with info:id = "RealityKit.AudioMixGroups".

For large components, prefer fixtures.csv for fixture-by-fixture authored rows and matrix.csv for the derived variant matrix.

Introduced USD Block

USDA
def RealityKitComponent "AudioMixGroups"
{
    uniform token info:id = "RealityKit.AudioMixGroups"
}

Sparse Patch Examples

Each fixture shows the USDA block RCP writes when a single parameter is changed in the inspector.

AddMixGroup.usda
USDA
def RealityKitComponent "AudioMixGroups"
{
    uniform token info:id = "RealityKit.AudioMixGroups"

    def RealityKitAudioMixGroup "MixGroup"
    {
        float gain = 0
        bool mute = 0
        float speed = 1
    }
}
AssignSingleAudio.usda
USDA
def RealityKitAudioFile "_1bells_wav"
{
    uniform asset file = @../1bells.wav@
    rel mixGroup = </Root/Cube/AudioMixGroups/MixGroup>
    uniform bool shouldLoop = 0
}

Fields

MixGroup.gain float
Baseline
not written — sparse only
Written as
0, -15.505303
MixGroup.mute bool
Baseline
not written — sparse only
Written as
0, 1
MixGroup.speed float
Baseline
not written — sparse only
Written as
1, 2.4326851
AudioFile.file asset
Baseline
not written — sparse only
Written as
@../1bells.wav@, @../MUI POP UP Bubbly.wav@
AudioFile.mixGroup rel
Baseline
not written — sparse only
Written as
</Root/Cube/AudioMixGroups/MixGroup>, </Root/Cube/AudioMixGroups/MixGroup_2>

Observed Authoring Matrix

8 fixtures × 5 fields
Variant MixGroup.gainMixGroup.muteMixGroup.speedAudioFile.fileAudioFile.mixGroup Interpretation
BASE.usda omitted omitted omitted omitted omitted Inspector launcher only; no mix groups or routed files authored yet
AddMixGroup.usda 0 0 1 omitted omitted Adds first RealityKitAudioMixGroup child with default gain, mute, and speed
AssignSingleAudio.usda 0 0 1 @../1bells.wav@ </Root/Cube/AudioMixGroups/MixGroup> Creates one external RealityKitAudioFile prim and routes it to MixGroup
AssignSecondAudioSameGroup.usda 0 0 1 @../1bells.wav@ + @../MUI POP UP Bubbly.wav@ </Root/Cube/AudioMixGroups/MixGroup> Two external audio files can route to the same mix group
CreateSecondGroupAndAssign.usda 0 + 0 0 + 0 1 + 1 @../1bells.wav@ + @../MUI POP UP Bubbly.wav@ </Root/Cube/AudioMixGroups/MixGroup> + </Root/Cube/AudioMixGroups/MixGroup_2> Adds a second mix-group child and routes one audio file to each group
Gain.usda -15.505303 0 1 @../1bells.wav@ </Root/Cube/AudioMixGroups/MixGroup> Group-level gain changes on the child mix-group prim, not on the component prim
Mute.usda 0 1 1 @../1bells.wav@ </Root/Cube/AudioMixGroups/MixGroup> Mute is a group-level child-prim field
Speed.usda 0 0 2.4326851 @../1bells.wav@ </Root/Cube/AudioMixGroups/MixGroup> Speed is a group-level child-prim field