The Spring Creator sale is here! Save up to 70% on select products now through April 18.

Dynamic Lighting Portal System (Performance Booster)

Dream Powered - Code Plugins - Feb 7, 2018
3.92 out of 5 stars(13 ratings)
  • 54%
  • 23%
  • 0%
  • 8%
  • 15%

The Dynamic Lighting Portal System provides an easy way to optimize dynamic lighting performance in large levels. Optimization is the key!

  • Supported Platforms
  • Supported Engine Versions
    4.17 - 4.27, 5.0 - 5.3
  • Download Type
    Engine Plugin
    This product contains a code plugin, complete with pre-built binaries and all its source code that integrates with Unreal Engine, which can be installed to an engine version of your choice then enabled on a per-project basis.

Unreal Engine culling is great, but when it comes to dynamic lights, there is still a lot of improvements that can be made.

This tool allows you to get a massive performance boost without any quality loss!

Youtube Demo Here

The portal system toggles lights visibility to true only when you can see them, tremendously improving the performance. The performance gain will depend on your level layout and number of dynamic lights.

All you need to do is setup portals and zones. I am explaining it in detail in this video tutorial

All the lights, and this include point lights, spot lights and all the lights attached in blueprints inside a zone will be set to visible when:

1) You are inside the zone

2) The zone is visible through a portal

The portal visibility check is based on Unreal Engine built in HZB occlusion, so it's extremely fast and efficient performance wise.

To give you an idea, we have tested in levels from 4000 to 25 000 actors, with 50 to 500+ dynamic lights, more than half of them casting shadows. Volumetric lighting enabled.

We're getting 30 to 60% performance improvement with this system, making them playable on a low end gaming computers (8 years old i7 950 processor and GTX 950 graphic card).

All that in Epic settings for everything except shadow (high)

/!\ UE 5 info /!\

due to the nature of Lumen, and lights affecting more than their default area, setting up the system may be harder in some cases

For support or any questions, please contact us at [email protected].

If you post a comment here, we aren't notified and can't answer you quickly. Thank you!

Technical Details


* Provide tools to optimise Dynamic lighting performances

Changelog :

Older change logs: Here


1) Added Full Support for OpenWorld and Level Streaming


1) Added support for local multiplayer


1)Improved code quality ( struct copy + array realloc )

2)Improved doc ( zones colors )

3)Added logs options to allow easier understanding of current system state


1) Fixed an initialization bug that disabled the optimisation

2) Fixed a detection bug that made some configuration no working as intended

Online Documentation is available here ( with update 1.1 review video + 1.5 level streaming exemple)

Code Modules:

  *PortalSystem Module [Runtime]

Num of Blueprints: 7

Num of C++ Classes: 6

Network Replicated: No

Supported Development Platforms: All

Supported Target Build Platforms: Windows Mac Linux ( Should work on any platform using frustum and occlusion culling, we just haven't been able to test it)

Documentation: included in plugin : PortalSystem\Doc\index.html

Example Project: An example map is provided inside the plugin

Important Notes: Performance gain will vary depending on level design and type of level (indoor / outdoor)

Support: Mail / Twitter