Rendering Pipeline
Overview
When the Screen
is drawn, the SDK iterates the Screen's UIElements tree and for each UIElement the SDK executes the following pipeline:
Rendering Rates
The SDK enables defining the maximum rendering rate for a screen
The rendering rates are balanced between phone CPU, glasses power consumption and UI experience
The SDK supports the following rendering rates:
Rate | Fastest Rendering Frequency | Description |
---|---|---|
efficient | 2Hz | Automatically used by the firmware update process. Usually should not be used |
normal | 5Hz | The default SDK rendering rate |
animation | 25Hz | Used automatically when animations are in progress |
fast | 30Hz | Use on LOS (Line Of Sight) related use cases , when the screen is loaded with many elements (los rate might be leggy) |
los | 50Hz | LOS (Line Of Sight) optimized rendering rate. Used for LOS related UI |
Bandwidth Optimization
The rendering rate and user experience is highly dependent on the phone's Bluetooth performance. Old phones or very loaded UI may cause the Bluetooth stack to be overflowed with data.
The SDK will try to keep the requested rendering rate, and will optimize it according to the actual phone bluetooth performance and data load.
The rate will be dynamically adjusted to provide continuous minimal latency of the rendering pipeline.
The active rendering rate will never go faster than the requested rate, but it may temporary reduced when overload is detected.
Read Next
Learn about Managing Resources