diff --git a/docs/player-audio-txl/configuration/_category_.json b/docs/player-audio-txl/configuration/_category_.json new file mode 100644 index 0000000..da011bf --- /dev/null +++ b/docs/player-audio-txl/configuration/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Configuration", + "position": 1 +} diff --git a/docs/player-audio-txl/configuration/audio-override-manager/index.md b/docs/player-audio-txl/configuration/audio-override-manager/index.md new file mode 100644 index 0000000..b5cbbd6 --- /dev/null +++ b/docs/player-audio-txl/configuration/audio-override-manager/index.md @@ -0,0 +1,81 @@ +# Audio Override Manager + +The **Audio Override Manager** is a component responsible for handling different **Audio Override Zones**. + +![Audio Override Manager](/img/unity/playeraudio/overridemanager-1.png) + +:::warning + +There can only be one Audio Override Manager in a scene! + +::: + +## Configuration + +#### Default Zone + +> The default zone that is used when players are not in any specific zone. +> Used to set up default settings. + +#### Override Zones + +> Override Zones is a list of Audio Override Zones that you have in your world. + +### Debug Options + +#### Debug State + +> A debug state object that will peridocally capture a snapshot of internal state of the object. + + +## Public API + +### Network Sync + +This object is **not** network synced. + +### Inherited API + +* UdonSharpBehaviour Public API + +### Properties + +#### + +> Get the default AudioOverrideZone + +#### + +> Get the list of linked AudioOverrideZones + +#### + +> Returns the debugState + +### Methods + +#### + +> Sets the debug state object at runtime, replacing the previous debug state if it exists. Passing `null` will unasign +> any current debug state. + +#### + +> Updates zone data + +#### + +> Called when a player enters a zone + +#### + +> Called when a player leaves a zone + +#### + +> Rebuild local + +#### + +> Find active zone of a player. +> Returns `null` when the player is not in any override zones. diff --git a/docs/player-audio-txl/configuration/audio-override-settings/index.md b/docs/player-audio-txl/configuration/audio-override-settings/index.md new file mode 100644 index 0000000..2d56539 --- /dev/null +++ b/docs/player-audio-txl/configuration/audio-override-settings/index.md @@ -0,0 +1,177 @@ +# Audio Override Settings + +The **Audio Override Settings** is a component responsible for applying the **player volume** settings. + +![Audio Override Settings](/img/unity/playeraudio/overridesettings-1.png) + +## Configuration + +### Voice Override + +![Overide Settings Editor - Voice Override](/img/unity/playeraudio/overridesettings-2.png) + +The settings for player voice audio. + +#### Apply Voice + +> Whether to apply the voice override settings + +#### Voice Gain + +> Voice volume. +> +> Default is 15, which is normal volume level. +> 0 is used for Broadcast and Mute profiles. + +#### Voice Near + +> How close the player can be heared. +> +> Default is 0, meaning no distance is required for hearing other players. +> For the broadcast profile, this defaults to 200. + +#### Voice Far + +> How far the player can be heared from. +> +> Default is 25, meaning 25 units/meters is the furthest distance you can hear other players from. +> For the broadcast profile, this defaults to 200. +> So also for a comms system, you want to set this very high, so you can hear over large distances. +> For muting players, set this to 0 and set the near to 0 as well, meaning there's no space to hear the other players. + +#### Voice Volumetric + +> The volumetric radius for the player's voice. +> +> Default is 0. +> For the broadcast profile, this defaults to 200. + +#### Voice Lowpass + +> Whether a lowpass filter is applied to the player's voice. +> +> Default is On. +> For the broadcast profile, this defaults to Off. + + +### Avatar Sound Override + +![Overide Settings Editor - Avatar Sound Override](/img/unity/playeraudio/overridesettings-3.png) + +The settings for avatar sounds. + +#### Apply Avatar + +> Whether to apply the overrides to the avatar sounds. + +#### Avatar Gain + +> Avatar volume. +> +> Default is 10, which is normal volume level. +> 0 is used for Broadcast and Mute profiles. + +#### Avatar Near + +> How close the avatar sounds can be heared. +> +> Default is 0, meaning no distance is required for hearing other players. +> For the broadcast profile, this defaults to 200. + +#### Avatar Far + +> How far the avatar sounds can be heared from. +> +> Default is 40, meaning 40 units/meters is the furthest distance you can hear avatar sounds from. +> For the broadcast profile, this defaults to 200. +> For muting avatar sounds, set this to 0 and set the near to 0 as well, meaning there's no space to hear the avatar sounds. + +#### Avatar Volumetric + +> The volumetric radius for the avatar sounds. +> +> Default is 0. +> For the broadcast profile, this defaults to 200. + +### Debug Options + +![Overide Settings Editor - Debug Options](/img/unity/playeraudio/debugoptions.png) + +#### Debug Log + +> The debug log object that any logging should be directed to. + +#### VRC Logging + +> Writes a copy of any logged messages to the VRChat log. + + +## Public API + +### Network Sync + +This object is **not** network synced. + +### Inherited API + +* UdonSharpBehaviour Public API + +### Properties + +#### + +> Determines whether voice override settings should be applied. + +#### + +> Gets or sets the gain (volume) level for voice. + +#### + +> Gets or sets the near distance for voice attenuation. + +#### + +> Gets or sets the far distance for voice attenuation. + +#### + +> Gets or sets the volumetric radius for voice. + +#### + +> Gets or sets whether a lowpass filter is applied to voice. + +#### + +> Determines whether avatar audio override settings should be applied. + +#### + +> Gets or sets the gain (volume) level for avatar audio. + +#### + +> Gets or sets the near distance for avatar audio attenuation. + +#### + +> Gets or sets the far distance for avatar audio attenuation. + +#### + +> Gets or sets the volumetric radius for avatar audio. + +#### + +> Gets or sets the debug logging interface used by this class. + +#### + +> Gets or sets whether VRChat-specific logging is enabled. + +### Methods + +#### + +> Applies voice and avatar override settings to the specified VRCPlayerApi player. diff --git a/docs/player-audio-txl/configuration/audio-override-zone/index.md b/docs/player-audio-txl/configuration/audio-override-zone/index.md new file mode 100644 index 0000000..89ffcaa --- /dev/null +++ b/docs/player-audio-txl/configuration/audio-override-zone/index.md @@ -0,0 +1,254 @@ +# Audio Override Zone + +The **Audio Override Zone** is a component responsible for setting **zones** based settings. +For example usable to make soundproof area's or to make a comms system between area's. + +![Audio Override Zones](/img/unity/playeraudio/overridezone-1.png) + +## Configuration + +#### Tracked Zone + +> Zone trigger that defines volume of this override zone. It can be set to a Tracker Zone Trigger component +> that is attached to this same object as long as it has an associated trigger collider. +> +> Should be left empty if this is the Default zone. + +Example tracked zone trigger settings: + +![Tracked Zone Trigger Settings](/img/unity/playeraudio/trackedzonetrigger-1.png) + +#### Enabled + +> Whether the zone as a whole is active and used in audio calculations. + +### Local Zone + +![Overide Zone Editor - Local Zone](/img/unity/playeraudio/overridezone-2.png) + +Local zone is used to tell the Audio Override Manager what to do when players are in this zone. + +#### Local Zone Settings + +> An audio profile that will be applied against players standing in the same zone as the local player. +> Empty by default, which will use the default VRChat proximity chat settings. + +#### Local Zone Enabled + +> Whether the local settings profile should currently be used or not. +> +> If disabled, zone will defer to the default profile instead. + +### Linked Zones + +![Overide Zone Editor - Linked Zones](/img/unity/playeraudio/overridezone-3.png) + +Linked Zones are used to tell the Audio Override Manager which Audio Override Settings to use for players +in other zones. + +#### Override Zone + +> An Audio Override Zone that gets affected inside our zone. +> +> Basically when a player is in OUR zone, this specifies what happens to to the audio of the players in the remote override zone. + +#### Zone settings + +> An audio profile that should be applied to the players standing in the remote override zone. +> +> Basically when a player is standing in the remote override zone, what audio profile should get applied to their voice, +> for the players in our zone to hear. + +#### Enabled + +> Whether the link between zones should currently be used or not. +> +> If disabled, zone will defer to the default profile instead. + +### Default Zone + +![Overide Zone Editor - Default Zone](/img/unity/playeraudio/overridezone-4.png) + +Default zone is used to tell the Audio Override Manager which Audio Override Settings to use for any player +that does not match any of the zones specified. + +#### Default Settings + +> An audio profile that will be applied against any players that were not affected by the local zone or the linked zone profiles. +> +> Basically a fallback audio profile for those in locations not matched to our links and locals. + +#### Default Enabled + +> Whether the default settings profile should currently be used or not. +> +> If disabled, zone will defer to the system-wide default profile instead. + +### Debug Options + +![Overide Zone Editor - Debug Options](/img/unity/playeraudio/debugoptions.png) + +#### Debug Log + +> The debug log object that any logging should be directed to. + +#### VRC Logging + +> Writes a copy of any logged messages to the VRChat log. + +### Example setup + +![Linked Zones Example](/img/unity/playeraudio/overridezone-example.png) + +In the following example, you're looking at Zone C, which is on the Stage in this world. It has a Zone component, a Tracked Zone Trigger +and a Box Collider covering the whole stage space. + +The local zone settings are set so that all the players on stage (performers) can hear eachother at the Default audio volume settings. + +Linked to this zone is Zone A, which is the greenroom, located behind our stage. +The linked zone settings for Zone A is set to Mute, meaning all players in the greenroom are muted for the performers on stage. +This way players in the greenroom can talk as much as they want and as loud as they want, without distracting the performers. + +Also linked to this zone is Zone B, which is the Front Of House zone. +The linked zone settings for Zone B is set to Comms, which is a custom profile similar to broadcast, but without gaining the volume. +This means for example that the audio engineer can have talkback to the performers (for example a band). + +And then the default zone settings is set that for anyone outside of those two zones, they'll be heared at the default volume levels, +like when you're not using PlayerAudioTXL. + + +## Public API + +### Network Sync + +This object is **not** network synced. + +### Inherited API + +* UdonSharpBehaviour Public API + +### Properties + +#### + +> Returns the current `ZoneTrigger` associated with this manager. + +#### + +> Gets the `TrackedZoneTrigger` used for tracking zone membership. + +#### + +> Indicates whether the zone is enabled. + +#### + +> Gets or sets the audio override settings specific to the local zone. + +#### + +> Indicates whether local zone settings are active. + +#### + +> Gets the array of linked zones used for additional audio configurations. + +#### + +> Gets the settings corresponding to each linked zone. + +#### + +> Gets the array of flags indicating whether each linked zone is enabled. + +#### + +> Gets or sets the default audio settings when no zone override is active. + +#### + +> Indicates whether default settings are enabled. + +#### + +> Access to the debug logging interface. + +#### + +> Enables or disables VRChat-specific logging. + + +### Methods + +#### + +> Binds this zone to an override manager with a specified zone ID. + +#### + +> Gets the unique identifier for this managed zone. + +#### + +> Enables or disables this zone. No change occurs if the requested state matches the current state. + +#### + +> Enables or disables the local zone audio override profile for this zone. No change occurs if the requested state matches the current state. + +#### + +> Gets the local zone audio override profile settings for this zone. + +#### + +> Sets the local zone audio override profile settings. No update occurs if the new profile is identical to the current one. + +#### + +> Enables or disables the default zone audio override profile for this zone. No change occurs if the requested state matches the current state. + +#### + +> Gets the default zone audio override profile settings for this zone. + +#### + +> Sets the default zone audio override profile settings. No update occurs if the new profile is identical to the current one. + +#### + +> Gets the enabled state of the specific linked zone by comparing it to the list of linked zones and returning its enabled state. + +#### + +> Sets the active state of a specific linked zone and updates the manager if necessary. No change occurs if the zone's current state matches the requested state. + +#### + +> Gets the audio override settings for a specified linked zone. Returns `null` if the zone is not found. + +#### + +> Sets the audio override settings for a specified linked zone and triggers manager updates if the settings have changed. + +#### + +> Checks if a specific player is currently inside the zone, considering tracking and membership. + +#### + +> Applies the appropriate audio override settings to a player based on zone, linked zones, or default profiles. Returns true if settings were applied. + +#### + +> Adds a custom override for a player, updating the internal override list and triggering local rebuilds. + +#### + +> Removes a player's custom override and updates the override list accordingly. + +#### + +> Gets the override settings for a specific player if available and enabled. + diff --git a/docs/player-audio-txl/configuration/audio-player-override-list/index.md b/docs/player-audio-txl/configuration/audio-player-override-list/index.md new file mode 100644 index 0000000..d2823a2 --- /dev/null +++ b/docs/player-audio-txl/configuration/audio-player-override-list/index.md @@ -0,0 +1,133 @@ +# Audio Player Override List + +The **Audio Player Override List** is a component responsible for doing stuff like Microphones with a pickup trigger + +![Audio Player Overide List](/img/unity/playeraudio/playeroverridelist-1.png) + +Here when microphone is held, it broadcasts voice to default zone and to the Front Of House zone. + +## Configuration + +#### Pickup Trigger + +> The pickup object to check for to enable this override list. + +### Zones + +![Audio Player Overide List Editor - Local Zone](/img/unity/playeraudio/playeroverridelist-2.png) + +A list of zones, order does matter! + +### Profiles + +![Audio Player Overide List Editor - Local Zone](/img/unity/playeraudio/playeroverridelist-3.png) + +A list of profiles for each zone, order does matter! + +### Zone Enabled + +![Audio Player Overide List Editor - Local Zone](/img/unity/playeraudio/playeroverridelist-4.png) + +A list of toggles for each zone, order does matter! + +### Debug Options + +![Audio Player Overide List Editor - Debug Options](/img/unity/playeraudio/debugoptions.png) + +#### Debug Log + +> The debug log object that any logging should be directed to. + +#### VRC Logging + +> Writes a copy of any logged messages to the VRChat log. + +## Public API + +### Network Sync + +This object is **not** network synced. + +### Inherited API + +* UdonSharpBehaviour Public API + +### Properties + +#### + +> Gets or sets the PickupTrigger component that automatically registers hooks into pickup trigger events to bind to a player. + +#### + +> Gets the constant value representing the event for when the bound player changes. + +#### + +> Gets or sets the array of `AudioOverrideZone` objects that define different audio zones. + +#### + +> Gets or sets the array of `AudioOverrideSettings` profiles corresponding to each zone. + +#### + +> Gets or sets the array indicating whether each zone is enabled. + +#### + +> Gets or sets the debug logging interface used by this class. + +#### + +> Gets or sets whether VRChat-specific logging is enabled. + +### Methods + +#### + +> Ensures that the override list is initialized. Called during startup to set up necessary components. + +#### + +> Initializes the override list, including registering pickup trigger hooks if applicable. + +#### + +> Called when the pickup trigger is activated. Sets the owner to the local player and binds the override list to that player. + +#### + +> Called when the pickup trigger is deactivated. Releases ownership and unbinds the override list from the player. + +#### + +> Checks if a specific zone is active/enabled. + +#### + +> Sets all zones to the specified active/inactive state. + +#### + +> Sets the specified zone's active state. + +#### + +> Retrieves the override settings for a specific zone. + +#### + +> Sets the override settings for a specific zone. + +#### + +> Gets or sets the ID of the player bound to this override list, with change callback. + +#### + +> Applies overrides for a specific player in a specific zone. + +#### + +> Removes a player from all zone overrides in this list. diff --git a/docs/player-audio-txl/example/_category_.json b/docs/player-audio-txl/example/_category_.json new file mode 100644 index 0000000..835ebfc --- /dev/null +++ b/docs/player-audio-txl/example/_category_.json @@ -0,0 +1,4 @@ +{ + "label": "Example Setup", + "position": 2 +} diff --git a/docs/player-audio-txl/example/index.md b/docs/player-audio-txl/example/index.md new file mode 100644 index 0000000..59e5fd3 --- /dev/null +++ b/docs/player-audio-txl/example/index.md @@ -0,0 +1,147 @@ +# Example Setup + +Here's an example setup to give you an idea how to use PlayerAudioTXL for your worlds. + +:::warning +If players are using earmuff, this system will NOT override any volume outside the earmuff range! +Their earmuff must be disabled for PlayerAudioTXL to allow long range broadcasts/comms. +::: + +## Example 1 - Club Venue + +### Situation + +You are a venue/club owner wanting to add in comms system. +Your world has a greenroom, a Front of House desk and a stage. + +You have these requirements: +``` +When standing inside the greenroom, you can hear FOH and the stage at a comms volume. You cannot hear the audience. +Only the FOH can hear you at a comms volume in the greenroom. The stage and the audience cannot hear you in here. + +When standing at FOH, you can hear the greenroom and the performer at a comms volume. You can hear audience at the normal volume. +The stage and the greenroom can hear you at a comms volume in here. Audience can hear you at the normal volume in here. + +When standing at the stage, you can hear FOH at a comms volume. You can hear audience at the normal volume. You cannot hear the greenroom. +Audience will hear you at broadcast volume in here. FOH and the greenroom can hear you at a comms volume in here. +``` + +### Profiles + +It is recommended to group all your profiles in an empty object. + +![Example 1 - Profiles](/img/unity/playeraudio/example-1-profiles.png) + +#### Default Profile + +> The profile for global players, who are not in any zones. + +![Example 1 - Profiles - Global](/img/unity/playeraudio/example-1-profiles-1-default.png) + +#### Comms Profile + +> The profile used for comms/direct volume. So you can hear from FOH at the stage and greenroom. + +![Example 1 - Profiles - Comms](/img/unity/playeraudio/example-1-profiles-2-comms.png) + +#### Mute Profile + +> The profile used for muting players. + +![Example 1 - Profiles - Mute](/img/unity/playeraudio/example-1-profiles-3-mute.png) + +#### Broadcast Profile + +> The profile used for broadcasting players. For example using a microphone. + +![Example 1 - Profiles - Broadcast](/img/unity/playeraudio/example-1-profiles-4-broadcast.png) + +### Zones + +It is recommended to group all your zones in an empty object. + +![Example 1 - Zones](/img/unity/playeraudio/example-1-zones.png) + +#### Default Zone + +Local zone is left empty, as we prefer to use the Default Zone settings. + +Linked zones: +- Zone A (Greenroom): Anyone in the default zone can NOT hear the greenroom. +- Zone B (FOH): Anyone in the default zone can hear the FOH with normal profile, so they can listen to staff yelling at them. +- Zone C (Stage): Anyone in the default zone can hear the Stage with broadcast profile, simulating a stagewide always-on microphone. + +Default zone is set to Default profile, so that people can just talk. + +![Example 1 - Zones - Default](/img/unity/playeraudio/example-1-zones-1-default.png) + +#### Zone A - Greenroom + +Local zone is set to Default profile, as we want to be able to talk in the greenroom. + +Linked zones: +- Zone B (FOH): Anyone in the greenroom zone can hear the FOH with comms profile, so they can hear when they're up. +- Zone C (Stage): Anyone in the greenroom zone can hear the Stage with comms profile, so they can hear what is going on on stage. + +Default zone is set to Mute profile, so anything other than the linked zones will not be heared in here. + +![Example 1 - Zones - A](/img/unity/playeraudio/example-1-zones-2-A.png) +![Example 1 - Zones - A - trigger](/img/unity/playeraudio/example-1-zones-default-trigger.png) + +#### Zone B - FOH + +Local zone is set to Default profile, as we want to be able to talk at the FOH. + +Linked zones: +- Zone A (Greenroom): Anyone in the FOH zone can hear the greenroom with comms profile, so they can hear questions from them. +- Zone C (Stage): Anyone in the FOH zone can hear the Stage with comms profile, so they can hear questions from them. + +Default zone is set to Default profile, so that audience can still normally talk to FOH reporting issues. + +![Example 1 - Zones - B](/img/unity/playeraudio/example-1-zones-3-B.png) +![Example 1 - Zones - B - trigger](/img/unity/playeraudio/example-1-zones-default-trigger.png) + +#### Zone C - Stage + +Local zone is set to Default profile, as we want to be able to talk on stage. + +Linked zones: +- Zone A (Greenroom): Anyone in the stage zone can NOT hear the greenroom. +- Zone B (FOH): Anyone in the stage zone can hear the FOH with comms profile, so they can hear when they're live. + +Default zone is set to Default profile, so that audience can still normally talk to stage reporting issues. + +![Example 1 - Zones - C](/img/unity/playeraudio/example-1-zones-4-C.png) +![Example 1 - Zones - C - trigger](/img/unity/playeraudio/example-1-zones-default-trigger.png) + + +### Audio Override Manager + +The default zone we set to our Default zone and then we provide a list of the other zones. + +![Example 1 - Audio Override Manager](/img/unity/playeraudio/example-1-audiooverride.png) + + +### Mic + +We also add a mic. For this you need two different objects. + +#### Audio Player Override List + +This will determine what happens to the holding player's voice. + +In this case when holding the pickup, the Default zone will hear the player at broadcast. +And Zone B (FOH) will also hear them at broadcast (else the FOH engineer cannot hear if the microphone is on or not). + +:::note +Zone A (greenroom) and Zone C (Stage) are not listed, and thus will not be impacted by the player holding the microphone. +::: + +![Example 1 - Mic - Audio Player Override List](/img/unity/playeraudio/example-1-mic-overridelist.png) + +#### Mic Pickup + +You can just use the prefab microphone as well, or make your own. + +![Example 1 - Mic - Pickup](/img/unity/playeraudio/example-1-mic-pickup.png) + diff --git a/static/img/unity/playeraudio/debugoptions.png b/static/img/unity/playeraudio/debugoptions.png new file mode 100644 index 0000000..1467f04 Binary files /dev/null and b/static/img/unity/playeraudio/debugoptions.png differ diff --git a/static/img/unity/playeraudio/example-1-audiooverride.png b/static/img/unity/playeraudio/example-1-audiooverride.png new file mode 100644 index 0000000..7a170f3 Binary files /dev/null and b/static/img/unity/playeraudio/example-1-audiooverride.png differ diff --git a/static/img/unity/playeraudio/example-1-mic-overridelist.png b/static/img/unity/playeraudio/example-1-mic-overridelist.png new file mode 100644 index 0000000..be82bdb Binary files /dev/null and b/static/img/unity/playeraudio/example-1-mic-overridelist.png differ diff --git a/static/img/unity/playeraudio/example-1-mic-pickup.png b/static/img/unity/playeraudio/example-1-mic-pickup.png new file mode 100644 index 0000000..c9724d1 Binary files /dev/null and b/static/img/unity/playeraudio/example-1-mic-pickup.png differ diff --git a/static/img/unity/playeraudio/example-1-profiles-1-default.png b/static/img/unity/playeraudio/example-1-profiles-1-default.png new file mode 100644 index 0000000..bad7696 Binary files /dev/null and b/static/img/unity/playeraudio/example-1-profiles-1-default.png differ diff --git a/static/img/unity/playeraudio/example-1-profiles-2-comms.png b/static/img/unity/playeraudio/example-1-profiles-2-comms.png new file mode 100644 index 0000000..a067114 Binary files /dev/null and b/static/img/unity/playeraudio/example-1-profiles-2-comms.png differ diff --git a/static/img/unity/playeraudio/example-1-profiles-3-mute.png b/static/img/unity/playeraudio/example-1-profiles-3-mute.png new file mode 100644 index 0000000..80a17ad Binary files /dev/null and b/static/img/unity/playeraudio/example-1-profiles-3-mute.png differ diff --git a/static/img/unity/playeraudio/example-1-profiles-4-broadcast.png b/static/img/unity/playeraudio/example-1-profiles-4-broadcast.png new file mode 100644 index 0000000..b355f9b Binary files /dev/null and b/static/img/unity/playeraudio/example-1-profiles-4-broadcast.png differ diff --git a/static/img/unity/playeraudio/example-1-profiles.png b/static/img/unity/playeraudio/example-1-profiles.png new file mode 100644 index 0000000..41d57bb Binary files /dev/null and b/static/img/unity/playeraudio/example-1-profiles.png differ diff --git a/static/img/unity/playeraudio/example-1-zones-1-default.png b/static/img/unity/playeraudio/example-1-zones-1-default.png new file mode 100644 index 0000000..0d50384 Binary files /dev/null and b/static/img/unity/playeraudio/example-1-zones-1-default.png differ diff --git a/static/img/unity/playeraudio/example-1-zones-2-A.png b/static/img/unity/playeraudio/example-1-zones-2-A.png new file mode 100644 index 0000000..130042f Binary files /dev/null and b/static/img/unity/playeraudio/example-1-zones-2-A.png differ diff --git a/static/img/unity/playeraudio/example-1-zones-3-B.png b/static/img/unity/playeraudio/example-1-zones-3-B.png new file mode 100644 index 0000000..e3687e4 Binary files /dev/null and b/static/img/unity/playeraudio/example-1-zones-3-B.png differ diff --git a/static/img/unity/playeraudio/example-1-zones-4-C.png b/static/img/unity/playeraudio/example-1-zones-4-C.png new file mode 100644 index 0000000..dcb872f Binary files /dev/null and b/static/img/unity/playeraudio/example-1-zones-4-C.png differ diff --git a/static/img/unity/playeraudio/example-1-zones-default-trigger.png b/static/img/unity/playeraudio/example-1-zones-default-trigger.png new file mode 100644 index 0000000..a35bbd8 Binary files /dev/null and b/static/img/unity/playeraudio/example-1-zones-default-trigger.png differ diff --git a/static/img/unity/playeraudio/example-1-zones.png b/static/img/unity/playeraudio/example-1-zones.png new file mode 100644 index 0000000..dd5c853 Binary files /dev/null and b/static/img/unity/playeraudio/example-1-zones.png differ diff --git a/static/img/unity/playeraudio/overridemanager-1.png b/static/img/unity/playeraudio/overridemanager-1.png new file mode 100644 index 0000000..e5829c6 Binary files /dev/null and b/static/img/unity/playeraudio/overridemanager-1.png differ diff --git a/static/img/unity/playeraudio/overridesettings-1.png b/static/img/unity/playeraudio/overridesettings-1.png new file mode 100644 index 0000000..c33dfc0 Binary files /dev/null and b/static/img/unity/playeraudio/overridesettings-1.png differ diff --git a/static/img/unity/playeraudio/overridesettings-2.png b/static/img/unity/playeraudio/overridesettings-2.png new file mode 100644 index 0000000..299c09b Binary files /dev/null and b/static/img/unity/playeraudio/overridesettings-2.png differ diff --git a/static/img/unity/playeraudio/overridesettings-3.png b/static/img/unity/playeraudio/overridesettings-3.png new file mode 100644 index 0000000..08631c8 Binary files /dev/null and b/static/img/unity/playeraudio/overridesettings-3.png differ diff --git a/static/img/unity/playeraudio/overridezone-1.png b/static/img/unity/playeraudio/overridezone-1.png new file mode 100644 index 0000000..3add6c8 Binary files /dev/null and b/static/img/unity/playeraudio/overridezone-1.png differ diff --git a/static/img/unity/playeraudio/overridezone-2.png b/static/img/unity/playeraudio/overridezone-2.png new file mode 100644 index 0000000..9043248 Binary files /dev/null and b/static/img/unity/playeraudio/overridezone-2.png differ diff --git a/static/img/unity/playeraudio/overridezone-3.png b/static/img/unity/playeraudio/overridezone-3.png new file mode 100644 index 0000000..716c2e6 Binary files /dev/null and b/static/img/unity/playeraudio/overridezone-3.png differ diff --git a/static/img/unity/playeraudio/overridezone-4.png b/static/img/unity/playeraudio/overridezone-4.png new file mode 100644 index 0000000..7af5921 Binary files /dev/null and b/static/img/unity/playeraudio/overridezone-4.png differ diff --git a/static/img/unity/playeraudio/overridezone-example.png b/static/img/unity/playeraudio/overridezone-example.png new file mode 100644 index 0000000..e34f22b Binary files /dev/null and b/static/img/unity/playeraudio/overridezone-example.png differ diff --git a/static/img/unity/playeraudio/playeroverridelist-1.png b/static/img/unity/playeraudio/playeroverridelist-1.png new file mode 100644 index 0000000..171cfd6 Binary files /dev/null and b/static/img/unity/playeraudio/playeroverridelist-1.png differ diff --git a/static/img/unity/playeraudio/playeroverridelist-2.png b/static/img/unity/playeraudio/playeroverridelist-2.png new file mode 100644 index 0000000..66720d9 Binary files /dev/null and b/static/img/unity/playeraudio/playeroverridelist-2.png differ diff --git a/static/img/unity/playeraudio/playeroverridelist-3.png b/static/img/unity/playeraudio/playeroverridelist-3.png new file mode 100644 index 0000000..81c5632 Binary files /dev/null and b/static/img/unity/playeraudio/playeroverridelist-3.png differ diff --git a/static/img/unity/playeraudio/playeroverridelist-4.png b/static/img/unity/playeraudio/playeroverridelist-4.png new file mode 100644 index 0000000..c4f7d5f Binary files /dev/null and b/static/img/unity/playeraudio/playeroverridelist-4.png differ diff --git a/static/img/unity/playeraudio/trackedzonetrigger-1.png b/static/img/unity/playeraudio/trackedzonetrigger-1.png new file mode 100644 index 0000000..fde684b Binary files /dev/null and b/static/img/unity/playeraudio/trackedzonetrigger-1.png differ