top of page
Tutorial #8: Video/Pixel Mapping

In this tutorial, you'll learn how to use the Immersive Lighting System to render textures and video to light sources as if they were individual pixels. You can also create video volumes to map them in world space.

EXPERIMENTAL FEATURE: This tutorial as well as the features are not final and may change. If you have any feedback, we'd love to hear your thoughts!

#1: Create an Immersive Lighting Rig to test rendering

Create a new level and add an Immersive Lighting Rig actor to the level. Set Simulated Light Radius to 8, Simulate Immersive Lighting to true, Use Layout to false, Flat Distribution to true, and Use Immersive Lights to false.

IL Video Rig Setup.png

In the above example, we've created a test rig that simulates multiple light sources as if they were pixels on a display. We can now use these Emulated Light Controllers to render our video or texture against. You use either Render Targets or Texture2D assets to render from.

#2: Setup a texture to be rendered using multiple Light Controllers

Let's setup the texture (static or render target) to be rendered starting on BeginPlay. Call Get Immersive Lighting System and then call Render Video To Controllers. Hook up the Emulated Light Controllers attached to the Immersive Lighting Rig actor as the controllers to use and also the transform coming from the rig.

IL Video Setup.PNG

When you play the level, you should now see the texture rendered onto the IL Rig's Light Controllers. You can apply this to any number of controllers and use either the Render Video To Controllers or the Render Texture To Controllers functions. When finished, you can call Stop Rendering Video or Stop Rendering All Videos if you are currently rendering a video.

Configure IL Video/Texture Mapping (optional)

IL Video Settings.png

Texture Fill Mode: The fill mode for the texture rendering

 - None: Does a 1:1 pixel display of the pixels with no scaling.

 - Fill: Non-uniformly fills the texture completely within the bounds of the display.

 - Uniform: Uniformly fits the texture within the bounds of the display while maintaining its aspect ratio.

 - Uniform Fill: Uniformly fills the texture within the bounds of the display while maintaining its aspect ratio.

 - Uniform X: Uniformly fills the textures width within the bounds of the display while maintaining its aspect ratio.

 - Uniform Y: Uniformly fills the textures height within the bounds of the display while maintaining its aspect ratio.

Dynamic Video Updates: Whether or not to update the video data for the light controllers dynamically (enable this if you intend to have dynamic (or moveable) controllers that are displaying the video as they move)

Don't forget to make sure your lighting interfaces are setup properly for Philips hue, Corsair iCUE, DMX, etc. in order to see the lights in action

bottom of page