DMX Previs

How to set up the DMX Previs sample, view the light show previs, and explore the DMX-controlled fixtures and effects.

Windows
MacOS
Linux
See Also

The DMX Previs sample is a fully-animated digital light show using the DMX plugin in Unreal Engine. This sample was created in collaboration with Moment Factory to show an example of live event previsualization that is as close as possible to the real-life technical counterpart. To leverage Unreal Engine's rendering capabilities and to showcase the newly developed proxy fixture system, the sample features a complex lighting rig that fills the entire open space.

This video shows repeated, flashing lights at certain points that may cause discomfort or potentially trigger seizures for people with photosensitive epilepsy. Viewer discretion is advised.

Exploring and modifying this sample will help you learn how you can:

  • Use the DMX plugin Sequencer integration to record and play back an entire live event show programmed on an external lighting desk.

  • Use the extensible fixture system to create your own DMX-enabled virtual twins to real hardware devices.

  • Customize and tweak your fixture's rendering functions for both real-time previs and high-quality media export.

This project is both CPU-intensive for DMX Track playback in Sequencer and GPU-intensive for high-quality volumetric beam rendering. See the Fixtures and Hardware section for details on the hardware specifications used for this project.

Getting Started

  1. Download the DMX Previs sample project from the Epic Games Launcher under the Learn tab.

  2. Open the project in Unreal Engine.

  3. Press Play to view the previs sequence.

    Play the previs sequence

To view the show with optimal performance, build the project with the Shipping configuration.

Follow these steps to set the project's build configuration to Shipping:

  1. In the Editor's main menu, choose File > Package Project > Build Configuration, and select Shipping.

  2. Choose File > Package Project > Windows to package the project with the Shipping configuration.

iShipping build configuration option in the Unreal Editor menu

Viewing the Show from Multiple Perspectives

After opening the project and pressing Play in the Editor, the sequence begins with the cinematic camera view.

To view the show from other perspectives in the virtual auditorium, you can switch camera views with the playback controls defined in the project's Level Blueprint or disable the cinematic camera in Sequencer. Both methods are described below.

Viewing the show

Image courtesy of Moment Factory.

Show Playback Controls

Once the Unreal session has started, you can use the following playback controls:

Key

Description

F9

Show the FPS counter, in both Standalone and Shipping builds.

Space Bar

Pause or resume the sequence and the DMX playback.

T

Toggle between cinematics and freecam. In freecam mode, you can move the camera to get a closer look at the light fixtures and view the show from other angles.

V

Cycle between predefined cinecamera views.

R

Restart the sequence and DMX playback.

Escape

Exit the session.

Disable Cinematic Camera

You can cycle through freecam and cinematics using the T toggle key. Press V to cycle between predefined camera locations. Follow the steps below to completely turn off the cinematic camera during the show.

  1. In the Content Browser, open DMXPrevis_Animations in Content > Sequences.

    DMX previs animations in the content browser

  2. In the Sequencer window, right-click on the Camera Cuts track and select Mute from the options.

    Sequencer window camera cuts track mute option

  3. Press Play. You will be able to move the camera freely and view the show from different angles.

Modifying the Show in Real-Time

During DMX track playback in Sequencer, it's useful to be able to modify the show as you are viewing it. This section describes how to change the look and feel of some of the light fixtures.

The project contains more assets than the ones described in this section. Explore all the light fixtures in the project; each type has its own Blueprint and functionality.

Changing Spotlight Distance

Follow these steps to modify the light distance value of some of the lights. Decreasing this value can help to improve performance during playback; increasing the value creates more volumetric beam effects.

  1. In the World Outliner, type Spot in the search bar and select all the filtered assets.

    Filtering assets by the word spot

  2. In the Details panel, change the Light Distance Max property value from 5000.0 to a smaller value for better performance or a higher value for increased volumetric effect.

    Light distance max 5000

    Light distance max 1000

Adjusting Beam Quality

All the fixtures used are specifically customised for the project and have adaptive quality logic for balancing speed and quality in real-time. The logic for adaptive quality is defined in the M_Beam_Inhibitive_Master Material, located in Content > DMX > FixtureMaterials.

fixture materials in the content browser

This Material dynamically adjusts the volumetric beam shader sample counts as a function of the live DMX Zoom angle.

  • The wider the beam is, the lower the sample count to retain high performance with minimal visual impact.

  • The narrower the beam is, the higher the sample count for increased beam sharpness.

You can adjust the quality settings in the Material Editor for the M_Beam_inhibitive_Master Material. The settings are located in the Parameter Defaults panel.

Material parameter defaults panel

  • Low Quality Level: Defines the lowest possible multiple for the predefined sample count.

  • Max Quality Level: Defines the highest possible multiple for the predefined sample count.

  • Use MRQ Override: Forces a specific multiplier for all fixture material and material instances regardless of the low and max values set. This property is useful to set when exporting high quality videos or image sequences of the project.

  • Zoom Based Intensity: When enabled, the light function can lower in intensity when the zoom is wider but be closer to the intended brightness when the zoom is narrower. This mimics the behaviour of real lights where the brightness on any given surface is lower when the beam is wider.

Low Quality Level 0.3 Max Quality Level 1.0

Low Quality Level 0.3 Max Quality Level 5.0

In the left image, the Max Quality Level is set to 1 creating grainier beams. In the right image, the Max Quality Level is set to 5 so the beams appear sharper.

Quality Levels set to values greater than 1 are meant for offline renderings using Movie Render Queue. For this project, the Quality Level was typically set to 2 for both Low and Max Quality Levels to generate footage.

Changing Catwalk Cell Count

Follow these steps to change the cell count for the DMX Fixture Matrix used in the Catwalk.

  1. In the project's Content Browser, double-click the DMXLib_v4 asset to open the DMX Library Editor.

    DMX library asset in the content browser

  2. In the Fixture Types tab, select CatwalkStrip under Matrix/Pixel Bar. This example is going to modify its Mode Properties.

    catwalk strip mode properties

  3. In the Mode Properties panel, change the Y Cells property value from 5 to 20.

    changing the value of the y cells property

  4. In the World Outliner, select all the CatwalkStrips assets.

  5. In the Details panel under the DMX Matrix Fixture section, click Generate Preview Mesh to update the mesh in the viewport with the changes you made in the DMX Library.

    Details panel DMX Matrix Fixture section Generate preview mesh button

  6. In the viewport, all the CatwalkStrips now have more cells.

    catwalk 5 Y cells

    catwalk 20 Y cells

Exporting Media with Movie Render Queue

In a typical live event previs workflow, designers and artists will work at lower quality levels for quicker iterations. For review purposes, it's useful to render high-quality image sequences or Apple ProRes files.

This sample includes two presets for Movie Render Queue to generate high-resolution media. The presets are located in Content > Cinematics > MoviePipeline > Presets. The two presets have different resolutions:

  • UHD: Preset for Ultra High Definition (3840x2160) export to Apple ProRes 422 HQ.

  • FHD: Preset for Full High Definition (1920x1080) export to Apple ProRes 422 HQ.

movie render queue presets

Follow these steps to export high quality media using Movie Render Queue.

  1. In the project's World Outliner, select all the spotlights and set their Light Distance Max property to 12,000.

    spotlight light distance max 12000

  2. In the project's Content Browser, navigate to DMX > FixtureMaterials.

  3. Open the M_Beam_Inhibitive_Master Material in the Material Editor.

  4. In the Parameter Defaults panel of the Material Editor:

    1. Set Low Quality Level to 2.0.

    2. Set Max Quality Level to 2.0.

    quality levels set to 2

  5. Close the Material Editor.

  6. In the main Editor, choose Window > Cinematics > Movie Render Queue to open the Movie Render Queue window.

    open the movie render queue window

  7. Press the Add Render button and select the DMXPrevis_Animations Level Sequence.

    select the DMX previs animations level sequence

  8. Under the Settings column, click the dropdown arrow and select the desired preset, UHD or FHD.

    select the preset in the settings column

  9. Click Render (Local) to export the rendered frames locally.

    Click render local

You can set the MRQ Override parameter in M_B_Inhibitive_Master to 1.0 in order to override the Low and Max Quality Levels.

Live Event Previs Project File Structure

This sample project includes a variety of assets to recreate an auditorium and full light show with DMX. To help you explore everything in the project, see the descriptions of all the folders below.

Content Browser

DMX subfolders in the content browser hierarchy

The Content folder contains the following sub-folders:

  • Assets: General project and level assets for the stage and auditorium.

  • Audio: The show soundtrack.

  • Blueprints: GameMode override using Spectator Pawn.

  • Cinematics: Movie Render Queue settings for Ultra High Definition (UHD) and Full High Definition (FHD) offline renders.

  • DMX: All DMX-related content.

    • Disks: Project-specific DMX fixture gobos, which control the shape and pattern of a light. A given light can have multiple gobos throughout the show and can be animated.

    • EffectTables: Defines the effects for the DMX-enabled light types used in the project.

    • FixtureMaterials: Project-specific and optimized DMX Fixture materials. This is an extension of what was shipped with the DMX plugin.

    • FixturesBP: Project-specific Lighting Fixture blueprints. This is an extension of what was shipped with the DMX plugin.

    • GoboWheel: Same as the contents of the Disks folder but as separate textures.

    • Plugins: Useful DMX tools and widgets.

    • SpecialFXBP: Project-specific pyro, laser, and fireworks fixture assets. It also contains the DMX-controlled sphere that is in the middle of the stage.

    • DMXLib_v4: The project core DMX library, which contains all the Fixture definitions, Universes, and patching.

  • Effects:

    • Bloom: Project-specific, high-quality, convoluted bloom Texture without streaks.

    • Fireworks: Project-specific fireworks Blueprints and Niagara particle system.

    • Flash: Audience cell phone lights and Niagara particle system.

    • RockLevitation: Levitating rock Niagara particle system.

    • WaterMaterials: High-quality water materials for the project.

  • Maps: Different parts of the level are contained in their own separate maps:

    • Main: The persistent level that contains the sequencer track, post-process volume, and soundtrack.

    • DMXControlled: This level contains all DMX-controlled elements, lighting fixtures, and effects.

    • Terrain: This level contains the terrain and rock formation.

    • Venue: This level contains the venue and structural-related actors, such as the arena, audience, and trusses.

  • MegaScans: Quixel MegaScan assets used for terrain and environment.

  • Movies: Contains Media Framework assets for movie playback.

    • Clock_LED: Contains the image sequence for animating the Clock LED that surrounds the catwalk.

    • Drapes: Contains the image sequence for the drapes' video projection.

  • MSPresets: MegaScan preset assets.

  • Sequences: Contains the Level Sequence.

  • Showfile: The showfile (.zip) from the grandMA2 lighting console. You can uncompress the file and use it on your console.

  • Splash: The project's splash image when it loads in the Unreal Editor.

  • Tropical_Jungle_Pack: The asset pack used for the environment.

World Outliner

Explore all the assets in the World Outliner, especially the following items and folders:

  • Cams: The list of cameras used by Sequencer cinematics and predefined camera locations.

  • DMX_FX and DMX_LX: DMX-controlled fixtures and effects.

  • DMXPrevis_Animations: The Level Sequence that drives the show, soundtrack, and DMX track.

Fixtures and Hardware

This sample was designed to use the following fixtures and hardware.

Fixtures

Fixture Name

Fixture Type

Quantity

Lighting Fixtures

Audience Strip - No pixels

Custom LED

50

Audience Wash LED Par

Elation SixPar 300

12

Catwalk Strip - 5 pixels

Custom LED

20

Matrix Strip - 5 pixels

Custom LED

32

Scenic Wash LED Par

Elation SixPar 300

14

SpotMH1

Elation Proteus Maximus

64

SpotMH2

Robe Megapointe

94

Strobe RGB

Elation Protron 3K LED Strobe

122

Stage Strip - 5 pixels

Custom LED

24

Sun Strip - 5 pixels

Custom LED

90

Truss Toner

Elation SixPar 300

220

WashMH1

Ireos Space Canon

8

WashMH2

GLP X4

16

Vomitory LED Par

Elation SixPar 300

2

Total Lighting Fixture Count

768

SFX Fixtures

Fireworks

N/A

8

Laser RGB

N/A

6

Pyrotechnic Launcher

N/A

33

Total SFX Fixture Count

47

Lighting Console

Hardware

Quantity

grandMA2 light

1

MA Lighting NPU

1

DMX

Specs

Description

Channels

7368

DMX Universes

15

Protocol

Art-Net

Unique Cues

144

Timecode Sync

MIDI

Plugins

The following plugins provide the core functionality shown in this sample:

  • DMX Engine

  • DMX Fixtures

  • DMX Pixel Mapping

  • DMX Protocol

  • Level Sequence Editor

  • Movie Render Queue

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss