-
Notifications
You must be signed in to change notification settings - Fork 8
PartitionState
Advanced — Internal component. World builders typically do not need this page.
Packages/tlp.udonvoiceutils/Runtime/Core/WorldAudio/PartitionState.cs
Holds partition configuration for the time-sliced emitter update system.
PartitionState stores partition settings that control how emitters are distributed across update buckets. Partitions divide emitters into priority groups so distant/low-priority sources are updated less frequently.
Part of the WorldAudio subsystem. Used internally by WorldAudioController — world creators do not interact with this component directly.
| Field | Default | Range | Description |
|---|---|---|---|
Partitions |
3 |
1–10 | Number of priority partitions. Earlier = high priority, later = low priority |
PartitionGrowthFactor |
4 |
Recommended: 2–6 | Each partition is this many times larger than the previous. Higher = more skewed toward distant sources |
With Partitions = 3 and PartitionGrowthFactor = 4, emitters are distributed in a 1:4:16 ratio across partitions. The exact count depends on total emitters:
| Total Emitters | Partition 0 | Partition 1 | Partition 2 |
|---|---|---|---|
| 21 | 1 | 4 | 16 |
| 50 | 3 | 9 | 38 |
| 100 | 5 | 19 | 76 |
Partition 0 (highest priority) gets the fewest emitters; Partition 2 (lowest priority) gets the most.
Do not directly control this component. It is managed by the WorldAudio system.
- PartitionCursor — the cursor this component initializes
- WorldAudioController — uses this configuration during emitter updates
- EmitterRegistry — triggers rebuild when emitters change
- Architecture
- Occlusion
- Voice Directionality
- Height Scaling
- Audio Processing Pipeline
- Private Voice Channels
- WorldAudio Subsystem
- WorldAudio Limitations
- Set Up Occlusion
- Set Up Voice Channels
- Set Up Reverb
- Set Up Height Scaling
- Set Up Voice Directionality
- Set Up Microphone
- Set Up WorldAudio Emitters
- Enable Debug Mode
- Tutorial #1: Custom Voice Override Zone
- Tutorial #2: Private Voice Channels
- Tutorial #3: Setting Up World Audio
- PlayerAudioController
- PlayerAudioOverride
- PlayerAudioOverrideList
- PlayerAudioView
- PlayerAudioConfigurationModel
- SyncedPlayerAudioConfigurationModel
- VoiceUtils
- IgnoredPlayers
- AudioObstacle
- DefaultPlayerOcclusion
- NullPlayerOcclusion
- PlayerOcclusionStrategy
- Privacy Channel Reference
- AdjustableGain
- DynamicPrivacy
- PickupMicrophone — MVC microphone system with MicModel/MicController/MicView
- VoiceOverrideTriggerZone
- VoiceOverrideRoom