Video Ambient Lighting

Pedram Navin - 2018/11/01

Light your Game or Architectural environments dynamically by video content!

  • 支持的平台
  • 支持的引擎版本
    4.18 - 4.27
  • 下载类型
    引擎插件
    此产品包含一款代码插件,含有预编译的二进制文件以及与虚幻引擎集成的所有源代码,能够安装到您选择的引擎版本中,并根据每个项目的需求启动。

• Generates Dynamic Lighting from Videos

• Supports Baked Shadows with Stationary Lights

• Highly performant implementation

• Can be shipped with Game & Architectural Visualization Projects

• Easy to connect with existing Media content


Watch Introduction Video

Watch Showcase Video


How to use (engine version 4.24 and beyond)

  1. Place a "Video Ambient Rect Light" from the "Place Actor" (formerly "Modes") editor panel under the "Lights" tab
  2. Assign the Media Texture from your Media Player to the "Source Media Texture" input (if you don't have a Media Player yet, follow this official tutorial to set that up)
  3. Press Play!


How to use (engine version 4.23 and prior)

  1. Add a "Video Ambient Light" component and any number of lights to an Actor or Blueprint (if you followed the tutorial linked above, this would be the plane you created in step 10)
  2. Configure lighting functionality by enabling the desired features in the details panel, typing in the names of lights the plugin should connect to (they have to be part of same Actor or Blueprint), and assigning the video material to "Source Material" (if you followed the tutorial, the video material is created in step 11)
  3. Press Play!


Connected lights will pick up the colors of the video when you press play.

Make sure to read the tooltips on all of the properties in the details panel!

技术细节

Supported LightComponents:

PointLights, SpotLights, RectLights and DirectionalLights are supported, with Stationary or Movable mobility.

Stationary lights still support baked shadows while working with this plugin.

The LightComponents are identified by their name and must be part of the same Actor as the VideoAmbientLightComponent.


Material compatibility:

The simplest possible material would just contain the MediaTexture of your MediaPlayer connected to the emissive color output of an unlit material.

The plugin calculates the light colors based on the emissive color output of the assigned SourceMaterial. This allows for any effects added in the material to be taken into account for determining the output colors.


Performance

The performance cost of this solution is generally small and scalable so it is suitable for games with tight performance constraints. The plugin is also built to support the DetailMode system, so if your project supports different graphics quality settings, you could disable the ambient lighting completely on low settings.


Feedback

Feel free to contact me at pedram.navin@gmail.com if you run into any issues or have any feature requests.


Code Modules:

  •  VideoAmbientLighting (Runtime) - Provides the VideoAmbientRectLight Actor and the VideoAmbientLight Component that can be used in any Actor or Blueprint and handles sampling of colors from video and communicating with connected LightComponents.
  •  VideoAmbientLightingEditor (Editor) - Module to support the presentation of the new classes in the editor.