in GUI Development by

Can anyone help me to explain about how to use "Double-buffered Framebuffer and one Off-screen Buffer"

I'm using STM32 platform, some animation/effect take much time/CPU performance. Can the method reduce it ?

Thanks and best regards

1 Answer

0 votes


on STM32 there is either double buffering or single buffering available. No offscreen buffer is used on this target system. Please see also Platform Integration: Framebuffer Concepts.

If you encounter performance issues, these may have different reasons. For example, the 2D/3D transformations (e.g. Warp Image) are very CPU intensive. Also if you are using color gradients, the STM32 hardware is not able to execute them directly. Again the CPU is asked to do this and this may impact the performance. Also drawing line segments with thickness > 1 pixel can become CPU intensiv. There are two suggestions what you can do:

1. Reduce your design. Avoid Warp transformations. Avoid gradients. Avoid drawing of thick lines.

2. During some animations (e.g. fading or moving a GUI component) you can activate the buffering mode for this component. With this the contents of the component don't need to be redrawn during the animation. See also: Control the visibility of nested components. At the fin of the animation, don't forget to disable the buffering mode. It occupies a lot of memory.

Best regards

Paul Banach


Thank you very much for your support

Embedded Wizard Website | Privacy Policy | Imprint