This page has been translated automatically.
UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Landscape Tool
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
Warning! This version of documentation is OUTDATED, as it describes an older SDK version! Please switch to the documentation for the latest SDK version.
Warning! This version of documentation describes an old SDK version which is no longer supported! Please upgrade to the latest SDK version.

Lighting

While the 3D geometry defines the shape of your content, lighting is the basis of every virtual scene defining colors and final look of your objects. UNIGINE features the following types of the light sources:

  • Dynamic lighting is a customizable solution providing real-time lighting calculation. This advanced technique provides very realistic lighting as it can illuminate dynamic objects. Light sources themselves can be moved or changed in real time (for example, turned on and off). As the most objects in the scene are rendered in the deferred pass, dynamic light sources won't cause big performance losses. All UNIGINE light source are dynamic except for the environment probe, which can be either dynamic or static.
  • Static (precomputed) lighting is an efficient and useful solution for lighting relatively static scenes. It allows dropping most lighting computations, leaving only simple texture lookups to be performed at the rendering time. Still, this method only roughly simulates lighting for moving objects entering the scene and sometimes lacks physical accuracy registered by the eye.
Light Source Image Dynamic Mode Static Mode
LightOmni (omnidirectional point light) Emits light from a point source in all directions. Emits light from a point source in all directions and uses a prebaked shadow cubemap for static objects lit by the Omni Light.
LightProj (projected light) Emits light from a single point forming a focused beam aimed in a specific direction. Emits light from a single point forming a focused beam aimed in a specific direction and uses a prebaked 2D depth texture to store shadows of static objects lit by the Projected Light.
LightWorld (sun light) Casts parallel beams onto the scene from an infinitely remote point. -
LightEnvironmentProbe (environment probe) Grabs a cubemap each frame thus providing objects in the scene with dynamic reflections from a point source in all directions. Uses a prebaked cubemap to provide objects in the scene with reflections from a point source in all directions.
LightVoxelProbe (voxel probe) - Provides volume to bake lighting. Uses a prebaked voxel map to provide objects in the scene with indirect lighting from any light source.

Usage of Light Sources#

The basic workflow is to use dynamic light sources and Voxel Probes for lighting, and Environment Probes for reflections. This approach ensures the best result, however, you can also enable both lighting and reflections for a Voxel or Environment Probe via the corresponding options.

Light sources provide lighting to surfaces in the following priority:

  1. Omni, Projected and World light sources' dynamic direct light.
  2. Voxel probe's ambient light and/or reflection.
  3. Environment probe's ambient light and/or reflection.

See Also#

Last update: 2020-07-31
Build: ()