slint/examples/opengl_underlay
Simon Hausmann 005ba1203c Fix OpenGL underlay with Skia
Save and restore the OpenGL state correctly
2022-08-10 10:54:04 +02:00
..
build.rs Update copyright information to reflect name change 2022-02-09 10:27:47 +01:00
Cargo.toml Fix OpenGL underlay with Skia 2022-08-10 10:54:04 +02:00
CMakeLists.txt Update copyright information to reflect name change 2022-02-09 10:27:47 +01:00
index.html Update copyright information to reflect name change 2022-02-09 10:27:47 +01:00
main.cpp Update copyright information to reflect name change 2022-02-09 10:27:47 +01:00
main.rs Fix OpenGL underlay with Skia 2022-08-10 10:54:04 +02:00
README.md Apply the renaming also to the new opengl_underlay example pulled from master 2022-02-04 17:00:32 +01:00
scene.slint Update copyright information to reflect name change 2022-02-09 10:27:47 +01:00

OpenGL Underlay Example

This example application demonstrates how layer two scenes together in a window:

  1. First a graphical effect is rendered using low-level OpenGL code (underlay).
  2. A scene of Slint elements is rendered above.

This is implemented using the set_rendering_notifier function on the slint::Window type. It takes a callback as a parameter and that is invoked during different phases of the rendering. In this example the invocation during the setup phase is used to prepare the pipeline for OpenGL rendering later. Then the BeforeRendering phase is used to render the graphical effect with OpenGL. Afterwards, Slint will render the scene of elements into the same back-buffer as the previous OpenGL code rendered into.

Since the graphical effect is continuous, the code in the callback requests a redraw of the contents by calling slint::Window::request_redraw().