Skip to main content

Overview

VRSL integrates deeply with AudioLink to create music-reactive lighting effects. AudioLink fixtures respond to audio frequencies in real-time, creating dynamic lighting that pulses, strobes, and moves with the music.
AudioLink v0.3.0 or newer is required for VRSL. The integration uses shader-based AudioLink for minimal performance overhead.
AudioLink is a VRChat system that analyzes audio in real-time and makes that data available to shaders and scripts. It divides audio into frequency bands (Bass, Low Mids, High Mids, Treble) that can drive visual effects.
  • Real-time frequency band reactions
  • Color Chord support (colors sync with music)
  • AudioLink Theme Color integration
  • Texture sampling for custom color patterns
  • Delay and sensitivity controls
  • Minimal CPU overhead (GPU-accelerated)

Prerequisites

Required

  • VRSL package installed via VPM
  • AudioLink 0.3.0+ package
  • VRChat SDK3 for Worlds
  • UdonSharp
  • A music/audio source (USharpVideo, ProTV, etc.)
  • PostProcessing Stack V2 (for bloom effects)
  • Basic understanding of audio frequency bands

Installation Steps

Basic Settings

Select an AudioLink fixture and examine the VRStageLighting_AudioLink_Static component: Audio Link Settings:
  • Enable AudioLink: Master toggle for AudioLink reaction
  • Band: Which frequency band to react to
    • Bass (0) - Low frequency, kick drums
    • Low Mids (1) - Bass guitar, lower vocals
    • High Mids (2) - Vocals, guitars
    • Treble (3) - Hi-hats, cymbals
  • Delay: Frame delay (0-127) for creating trailing effects
  • Band Multiplier: Sensitivity (1.0-15.0), higher = more reactive
General Settings:
  • Global Intensity: Master brightness (0-1)
  • Final Intensity: Maximum brightness limit
  • Light Color Tint: Base emission color

Advanced Color Settings

Color Chord:
  • Enable Color Chord to sync fixture color with AudioLink’s Color Chord
  • Colors automatically change based on musical key/chords
  • Great for creating cohesive color schemes across all lights
Theme Color Sampling:
  • Enable Theme Color Sampling to use AudioLink’s preset theme colors
  • Theme Color Target: Choose which theme color (1-4)
  • Set theme colors in the AudioLink prefab inspector
  • Useful for maintaining consistent venue branding colors
Texture Sampling:
  • Enable Color Texture Sampling to sample colors from a texture
  • Set Texture Sampling Coordinates (UV coordinates 0-1)
  • Configure sampling texture in VRSL Control Panel
  • Traditional Sampling: Use full RGB color instead of white-to-black conversion
  • Great for creating complex color patterns synced to music
Combine Color Chord with low Band Multiplier (2-4) for subtle, musical color changes. Use high multipliers (8-15) for intense strobe effects.

Movement and Effects

Target Following:
  • Assign a Transform to Target To Follow
  • Moving head fixtures will track the target
  • Great for performer spotlights or dynamic effects
  • Can be combined with AudioLink intensity modulation
Projection Effects:
  • Enable Auto Spin: Automatic gobo rotation
  • Spin Speed: Rotation speed (-10 to 10)
  • Select GOBO: Choose projection pattern (1-8)
  • Spin speed can pulse with audio when AudioLink is enabled
Cone/Beam Settings:
  • Cone Width: Beam spread (0-5.5)
  • Cone Length: Beam distance (0-10)
  • Max Cone Length: Volumetric mesh length (0.275-10)
  • These can be modulated by audio intensity

Component-Based Intensity Control

Available in VRSL 2.6.2+
Control individual fixture components separately:
  1. Enable Final Intensity Component Mode
  2. Set individual intensities:
    • Final Intensity Volumetric: Light beam brightness
    • Final Intensity Projection: Projected gobo brightness
    • Final Intensity Fixture: Housing/body brightness
  3. Useful for creating depth and preventing oversaturation

Creating Music-Reactive Scenes

Frequency Band Strategy

Bass Band (Kicks, Sub-bass):
  • Use for impactful effects
  • Large wash lights for stage wash
  • Blinders for impact hits
  • Disco balls for rhythmic sparkle
  • Low multiplier (2-4) for subtle pulse
Low Mids (Bass guitar, lower vocals):
  • Medium-intensity effects
  • Side/back fill lighting
  • Complementary colors to bass band
  • Medium multiplier (4-6)
High Mids (Vocals, guitars):
  • Detailed, expressive reactions
  • Front spotlights on performers
  • Accent lighting
  • Higher multiplier (6-10)
Treble (Hi-hats, cymbals):
  • Quick, flashy effects
  • Strobes and blinders
  • Laser effects
  • Highest multiplier (8-15) for maximum impact

Example Configurations

Subtle Ambient Lighting:
Aggressive Strobe:
Trailing Effect:
VRSL uses Custom Render Textures (CRTs) to interpolate AudioLink data smoothly:

Accessing CRT Settings

  1. Open VRSL Control Panel
  2. Navigate to Options > CRT Materials
  3. Select “AudioLink Interpolation”
  4. View/edit the interpolation material properties

Interpolation Settings

  • Smoothness: Controls how quickly lights react to audio changes
  • Lower values = faster response, more jittery
  • Higher values = slower response, smoother motion
  • Default is usually optimal

Local UI Control Panel

The VRSL Local UI Control Panel provides in-world controls for AudioLink fixtures: Users can locally adjust:
  • Master intensity (affects all lights)
  • Fixture intensity (light bodies only)
  • Volumetric intensity (light beams)
  • Projection intensity (gobos)
  • Disco ball intensity
  • Laser intensity

Quality Settings

Players can adjust rendering quality:
  • Volumetric quality (High/Medium/Low)
  • Projection quality (High/Low)
  • Disco ball quality (High/Low)
  • 3D noise toggle (for volumetrics)
Lock quality modes in the Control Panel inspector to prevent users from changing them if you want to maintain consistent visuals.
You can use both DMX and AudioLink fixtures together:

Hybrid Lighting Design

Use DMX for:
  • Precise, programmed lighting cues
  • Moving head positioning and color
  • Timed sequences
  • Performer spotlights
Use AudioLink for:
  • Reactive background/fill lighting
  • Audience area effects
  • Dynamic color changes
  • Strobe/impact effects

Example Setup

Common Issues

Fixtures Not Reacting

Check:
  • AudioLink prefab has audio source assigned
  • Audio is actually playing
  • “Enable AudioLink” is checked on fixtures
  • AudioLink CRTs are enabled in Control Panel
  • AudioLink package is correctly installed

Lights Always On or Flickering

Solutions:
  • Lower Band Multiplier
  • Reduce AudioLink Gain
  • Check for audio clipping
  • Verify audio source is in Linear mode (not logarithmic)

Colors Look Wrong

Verify:
  • Color Chord is configured correctly in AudioLink prefab
  • Theme Colors are set if using Theme Color Sampling
  • Light Color Tint is not too heavily colored
  • No competing color sources active

Performance Issues

Optimize:
  • Reduce number of AudioLink fixtures
  • Lower volumetric quality settings
  • Disable 3D noise on volumetrics
  • Use lower resolution meshes
  • See Performance Optimization guide

Advanced Techniques

Delay-Based Effects

Create cascading or wave effects:
  1. Duplicate an AudioLink fixture multiple times
  2. Arrange in a line or grid
  3. Set increasing Delay values: 0, 5, 10, 15, 20…
  4. Result: Light wave travels across fixtures

Theme Color Choreography

Program color changes for specific song sections:
  1. Use Udon to change AudioLink Theme Colors
  2. Set fixtures to Theme Color Sampling mode
  3. Change theme colors at key moments (chorus, drop, etc.)
  4. All fixtures change color simultaneously

Texture-Based Color Palettes

  1. Create a texture with your color palette
  2. Assign to Control Panel Video Sample Target Texture
  3. Enable Color Texture Sampling on fixtures
  4. Set different UV coordinates per fixture
  5. Result: Coordinated colors from a single texture

Best Practices

For Music Venues:
  • Start with lower Band Multipliers (2-5) and increase until reactive
  • Use Color Chord for cohesive look
  • Reserve treble band for impact effects (strobes)
  • Place bass-reactive lights for maximum visual impact
  • Test with multiple music genres
Performance:
  • Limit to 30-50 AudioLink fixtures total
  • Use Final Intensity Component Mode to fine-tune brightness
  • Allow users to adjust quality via Local UI Control Panel
  • Disable AudioLink on fixtures during non-music times
Workflow:
  • Group fixtures by frequency band in hierarchy
  • Name clearly: “AudioLink-Bass-Wash-L”
  • Document your band assignments
  • Create “scenes” with different band/multiplier presets
  • Use Udon to switch between lighting scenes

Next Steps

Resources