Skip to content

How to Set Up Height Scaling

Guribo edited this page Jul 11, 2026 · 3 revisions

How to Set Up Height Scaling

Step-by-step guide for making avatar height affect voice range in your world.

Prerequisites

  1. TLP_PlayerAudioController prefab in your scene at Packages/tlp.udonvoiceutils/Runtime/Prefabs/Core/TLP_PlayerAudioController.prefab
  2. TLP_Essentials prefab at Packages/tlp.udonutils/Runtime/Prefabs/TLP_Essentials.prefab

Set Up Global Height Scaling

  1. Expand the TLP_PlayerAudioController hierarchy
  2. Select the LocalConfiguration child GameObject
  3. Find the PlayerAudioConfigurationModel component
  4. Locate the HeightToVoiceCorrelation field (AnimationCurve)
  5. Edit the curve:
    • X-axis: avatar eye height in meters (range: 0–25m)
    • Y-axis: voice range multiplier (1.0 = no change)

Example Curves

Curve Shape Effect
Constant at 1.0 No height effect (default)
Linear from 0.5 (at 0.5m) to 2.0 (at 2.5m) Tall players heard at double range
Linear from 0.2 (at 0.5m) to 1.0 (at 1.5m) Short players have reduced range, normal above 1.5m
Step at 1.0m Below 1m = half range, above 1m = full range

Set Up Per-Zone Height Scaling

  1. Select the GameObject with PlayerAudioOverride
  2. Locate the HeightToVoiceCorrelation field
  3. Edit the curve to define zone-specific height behavior
  4. Per-zone curves override the global curve for players in that zone

Example: Stage vs Lounge

  • Stage zone: strong height scaling (tall performers heard farther)
  • Lounge zone: no height scaling (constant at 1.0)

Test

  1. Enable ClientSim — verify no compile errors
  2. For actual height behavior testing: use Build and Test (launch 2 instances, join same private instance)
  3. On one instance: set avatar height to different values, walk away — verify taller avatars heard farther
  4. Enter a zone with per-zone height scaling — verify zone curve takes effect

Tips

  • Use the Unity curve editor to visualize the mapping before entering play mode
  • Keep the curve smooth — sharp steps create abrupt range changes as players resize avatars
  • Typical realistic range: 0.5x at 0.5m height to 1.5x at 2.5m height
  • VRChat avatar height limits: player-controlled 0.2–5m; Udon world-authoritative 0.01–10000m; officially supported 0.1–100m. Ref: VRChat Player Avatar Scaling

See Also

Clone this wiki locally