Skip to content

Introduction

This page will tell you about main idea and concepts of the plugin.

About the plugin

The plugin adds new light source types that are supposed to be used with cloud particle systems or volumetric clouds in Unreal Engine.

New light sources have a bunch of primary parameters that can be customized either in editor or dynamically in runtime via Blueprints/C++ API:

  • intensity;
  • color;
  • attenuation;
  • falloff type (exponential/inverse square);
  • etc.

Use cases

Some examples of plugin usage:

  • Lightning Strikes;
  • Sky Spotlights;
  • Various Sky Objects (asteroids, etc.);
  • etc.

How it works

The lighting system consists of several actors:

  • Lighting System Actor;
  • Light Source Actors.

The Lighting System Actor collects a data about all Light Sources in its world and saves it into a Render Target (as a data storage).

A data from this Render Target can be used in any Material to get Light Sources parameters and calculate emissive data. This is implemented via Material Function, that plugin provides.

The lighting data processing scheme can be represented as follows:

 

Scheme

Advantages

The main advantages of the lighting system are come from its implementation:

  • High Performance – the light is computed really fast, the performance doesn't depend on light source parameters;
  • Unlimited Range – light actors can work in any range from a few meters to thousands of kilometers, this is not limited;
  • Easy Setup – just drag and drop some actors into your scene and it is good to go;
  • Easy Integration – lights can be integrated in any material of any subsystem with ease;
  • No Dependencies – the plugin doesn't depend on any other systems.

Limitations

Due to way the light is processed there are some limitations in features, that cannot be implemented (or the implementation is unknown):

  • Shadows Casting – provided lights doesn't cast shadows;
  • Objects Affection – lights affect only volumetrics, particles and other objects, who have materials with integrated lighting system, however the environment still can be lit automatically by Unreal Engine global illumination system.