11 - Laser System
Module: SuperStage Runtime (ASuperLaserActor / ASuperLaserProActor)
Target Users: Lighting designers, laser programmers, virtual production technicians
Prerequisites: 00 - DMX System Overview
Last Updated: 2026-04-14
1. Overview
SuperStage provides real-time integration with Pangolin Beyond laser control software, enabling real-time visualization of laser projection effects in UE scenes. The system provides two Laser Actors for different rendering modes:
| Type | Class Name | Rendering Method | Description |
|---|---|---|---|
| Texture Projection Laser | SuperLaserActor | Dynamic material + texture mapping | Drives beam material via RenderTarget texture, simulating laser projection effects |
| Point Data Laser (Pro) | SuperLaserProActor | Procedural mesh rendering | Draws precise laser lines from laser point coordinate data, supports collision occlusion |
Both obtain real-time data from Beyond devices via SuperLaserSubsystem (laser engine subsystem).
Class Inheritance Chain
AActor (UE5 Engine Base Class)
│
└── ASuperBaseActor ·············· SuperStage Root Class (L1)
│ ├ SceneBase / ForwardArrow / UpArrow
│ └ AssetMetaData
│
├── ASuperLaserActor ······· Texture Projection Laser (L2)
│ ├ DeviceID → SuperLaserSubsystem gets RenderTarget
│ ├ Dynamic material parameters (LaserIntensity/MaxDistance/Fog)
│ └ Beam static mesh rendering
│
└── ASuperLaserProActor ···· Point Data Laser Pro (L2)
├ DeviceID → SuperLaserSubsystem gets point data
├ SuperLaserProComponent → Procedural mesh
├ EnableCollision → Collision occlusion detection
└ Sprite + Arrow editor helpers
Design Note: Both Laser Actors directly inherit
ASuperBaseActor(notASuperDmxActorBase) because they do not use DMX protocol control — data comes directly from the real-time stream of Pangolin Beyond software, not through DMX channels. Therefore they have no Universe/Address configuration and no fixture library.
Data Flow
Pangolin Beyond Software
│
│ Real-time data stream (texture / point data)
▼
SuperLaserSubsystem (engine subsystem)
│
├──→ SuperLaserActor (texture mode)
│ └─ RenderTarget → Dynamic material → Beam mesh
│
└──→ SuperLaserProActor (point data mode)
└─ Point coordinate array → SuperLaserProComponent → Procedural mesh
Part 1: Texture Projection Laser (SuperLaserActor)
2. Basic Principles
SuperLaserActor uses the RenderTarget texture output from a Beyond device as a laser pattern, projecting it onto a beam-shaped static mesh to simulate the effect of laser projection in the air.
Rendering Pipeline:
Per-frame Tick
↓
Get device texture (RenderTarget) from SuperLaserSubsystem
↓
Set to dynamic material's LightTexture parameter
↓
Control beam visibility based on intensity
↓
Render beam static mesh
3. Property Details
3.1 Device Configuration
| Parameter | Location | Description | Range | Default |
|---|---|---|---|---|
| DeviceID | SuperLaser | Beyond device number. Corresponds to the device number in Beyond software | 1 - 12 | 1 |
DeviceID Notes:
- Each DeviceID corresponds to one laser device in Beyond
- Supports up to 12 Beyond devices connected simultaneously
- DeviceID starts numbering from 1 (consistent with Beyond interface)
- Different SuperLaserActors can have different DeviceIDs, displaying laser effects from different devices
3.2 Beam Appearance Parameters
| Parameter | Description | Range | Default | Unit |
|---|---|---|---|---|
| LaserIntensity | Laser brightness intensity | 1 - 5,000 | 100 | Percentage |
| MaxLaserDistance | Maximum beam projection distance | 100 - 10,000 | 2,345 | cm |
| AtmosphericDensity | Atmospheric attenuation coefficient (degree of beam fading with distance) | 0.0 - 1.0 | 0.03 | — |
| FogIntensity | Fog effect intensity in beam | 0 - 100 | 20 | Percentage |
| AtmosFogSpeed | Fog effect flow speed | 0 - 100 | 10 | Percentage |
LaserIntensity
Controls overall beam brightness:
- Higher value → brighter beam
- Set to 0 automatically hides the beam (saves render performance)
- Recommended range: 50 ~ 500 (too high may cause overexposure)
MaxLaserDistance
Controls how far the beam extends in the scene:
- Unit is centimeters (100cm = 1 meter)
- Default 2,345cm ≈ 23.45 meters
- Adjust based on scene size — larger venues need larger values
AtmosphericDensity
Simulates beam scattering and attenuation in air:
- 0.0 → No attenuation (beam equally bright from start to end)
- 0.03 (default) → Slight attenuation (realistic effect)
- 1.0 → Extremely strong attenuation (beam disappears quickly)
FogIntensity
Controls volumetric fog effect in the beam (simulating laser scattering in smoke):
- 0 → No fog effect (clean beam line)
- 20 (default) → Light fog
- 100 → Heavy fog (like the effect in stage smoke)
AtmosFogSpeed
Controls the flow animation speed of the fog texture:
- 0 → Static
- 10 (default) → Slow flow
- 100 → Fast flow
3.3 Parameter Tuning Suggestions
| Scenario | LaserIntensity | MaxLaserDistance | AtmosphericDensity | FogIntensity | FogSpeed | Description |
|---|---|---|---|---|---|---|
| Small Studio | 50 - 150 | 1000 - 1500 | 0.05 - 0.1 | 10 - 30 | 5 - 10 | Close-range projection, avoid overexposure |
| Medium Theater | 100 - 300 | 2000 - 3000 | 0.03 | 20 - 40 | 10 | Standard stage effect |
| Large Arena | 200 - 500 | 5000 - 8000 | 0.01 - 0.02 | 30 - 60 | 10 - 20 | Long distance needs high brightness, low attenuation |
| Outdoor Festival | 300 - 800 | 8000 - 10000 | 0.005 - 0.01 | 5 - 15 | 5 | Open space, sparse fog |
| Immersive Experience | 50 - 100 | 500 - 1000 | 0.1 - 0.3 | 50 - 100 | 15 - 30 | Close-range heavy fog for atmosphere |
Performance Tip: Pro mode (SuperLaserProActor)
EnableCollisionperforms ray tests for every laser line segment, increasing CPU load in dense laser shows. Recommended to enable only when occlusion effects are needed.
Part 2: Point Data Laser Pro (SuperLaserProActor)
5. Basic Principles
SuperLaserProActor uses the laser point coordinate data output from a Beyond device to precisely draw laser lines as procedural meshes via SuperLaserProComponent.
Point Data Format
Each laser point contains:
| Field | Description | Range |
|---|---|---|
| X | Horizontal position | -1.0 ~ 1.0 (normalized to projection range) |
| Y | Vertical position | -1.0 ~ 1.0 (normalized to projection range) |
| Z | Beam marker | > 0 means beam point (laser on), ≤ 0 means blank point |
| R | Red component | 0.0 ~ 1.0 |
| G | Green component | 0.0 ~ 1.0 |
| B | Blue component | 0.0 ~ 1.0 |
6. Property Details
6.1 Device Configuration
| Parameter | Location | Description | Range | Default |
|---|---|---|---|---|
| DeviceID | A.DefaultParameter | Beyond device number | 1 - 12 | 1 |
| EnableCollision | A.DefaultParameter | Enable collision occlusion detection | On/Off | Off |
EnableCollision
- Off (default) — Laser lines penetrate all objects (pure visual effect)
- On — Laser lines are blocked and truncated when encountering scene objects, simulating real laser hitting object surfaces
6.2 Editor Helpers
In the editor, SuperLaserProActor provides the following helper visualization:
| Component | Description |
|---|---|
| Sprite | Displays a light icon in the scene for locating the laser projector |
| Arrow | Green arrow pointing in the -Z direction (downward), indicating the default laser projection direction |
7. Texture Mode vs Pro Mode Comparison
| Feature | Texture Mode (SuperLaserActor) | Pro Mode (SuperLaserProActor) |
|---|---|---|
| Rendering Method | Texture mapped to beam mesh | Procedural mesh drawing laser lines |
| Precision | Medium (limited by texture resolution) | High (based on precise coordinate data) |
| Appearance | Beam volumetric effect (like projection) | Precise laser lines |
| Collision Occlusion | Not supported | Supported |
| Fog Control | Supported (5 parameters) | Depends on component settings |
| Performance Overhead | Lower (static mesh + material) | Medium (procedural mesh updated per frame) |
| Use Case | Distant/atmosphere laser effects | Close-up/precise laser lines |
| Data Source | RenderTarget texture | Point coordinate array |
Selection Suggestions
- Pursuing visual atmosphere → Use Texture mode (has fog, beam volume feel)
- Pursuing accurate reproduction → Use Pro mode (precise lines, collision occlusion)
- Mix both → Same DeviceID can simultaneously place both Actor types, effects overlay
8. Multi-Device Configuration
SuperStage supports up to 12 Beyond devices connected simultaneously. Each device can output independent laser content.
Multi-Device Scenario Example
Beyond Device 1 (DeviceID=1) → SuperLaserProActor_1 (Stage left laser)
Beyond Device 2 (DeviceID=2) → SuperLaserProActor_2 (Stage right laser)
Beyond Device 3 (DeviceID=3) → SuperLaserActor_1 (Background projection laser)
Beyond Device 4 (DeviceID=4) → SuperLaserProActor_3 (Audience scanning laser)
Each Actor independently configured with DeviceID; system auto-retrieves the corresponding device’s data from the Subsystem.
9. FAQ
Q: Cannot see laser in the scene?
- Confirm Beyond software is running and playing laser content
- Confirm SuperLaserSubsystem has established connection with Beyond
- Check if DeviceID matches the device number in Beyond
- (Texture mode) Check if LaserIntensity > 0
- Confirm Actor rotation direction is correct (laser should point to expected direction)
Q: Laser visible in editor but disappears at runtime?
Check for permission-related restrictions. System uses SUPER_REQUIRE_PERMISSION for authorization checks.
Q: Laser penetrates walls?
- Texture Mode: Collision occlusion not supported, this is normal behavior
- Pro Mode: Set EnableCollision to True to enable collision occlusion
Q: Laser effect stuttering/not smooth?
- Confirm Beyond data output frequency is normal
- (Pro mode) Many laser points may cause performance issues; try reducing point density in Beyond
- Confirm UE editor frame rate is normal (large scenes may cause FPS drops)
Q: How to point laser in a specific direction?
Adjust Actor rotation:
- Texture Mode: Beam mesh defaults to projecting along the Actor’s forward direction
- Pro Mode: Default projection direction is -Z (downward) indicated by green arrow. Rotate Actor to change projection direction
Q: Can both modes be used simultaneously?
Yes. Same DeviceID can use both SuperLaserActor (texture mode) and SuperLaserProActor (Pro mode); both will display laser content from the same device with effects layered.
Return to Overview: 00 - DMX System Overview