/ScreenWidgetComponent

A very performant replacement for screen-space Unreal Engine WidgetComponent.

Primary LanguageC++MIT LicenseMIT

ScreenWidgetComponent

ScreenWidgetComponent is a very performant drop-in replacement for screen-space Unreal Engine WidgetComponent.

Supports Unreal Engine 4.27 and newer.

What’s wrong with WidgetComponent?

  1. It uses expensive SConstraintCanvas internally instead of a cheaper SCanvas

  2. It uses direct float Z-depth, resulting in unnecessary Z-order updates.

  3. It reorders its children in O(n2) time almost every frame, leading to long tick times and multi-millisecond CPU losses on ChildOrder Slate invalidation.

Can optimizations this widget uses be applied to WidgetComponent?

Definitely yes, though Epics usually need several years to accept changes like this.