| This example shows how to use the low-level server buffer extension. This |
| version of Qt also provides a texture sharing extension that provides more |
| functionality and convenience for sharing graphical assets with Qt Quick |
| clients: see the texture-sharing example. |
| |
| Compile up both compositor and client. |
| |
| If you have the dmabuf-server buffer integration (and you are running Mesa) |
| then start the compositor with: |
| |
| $ QT_WAYLAND_SERVER_BUFFER_INTEGRATION=dmabuf-server ./compositor |
| |
| |
| Note: if you are running a compositor on an X11 desktop, you also need to |
| set QT_XCB_GL_INTEGRATION=xcb_egl as usual. |
| |
| The compositor broadcasts the name of the server buffer integration to |
| all clients through the hardware integration extension. Therefore, |
| all you need to do is to start the client with |
| |
| $ ./cpp-client -platform wayland |
| |
| The client will show all the buffers shared by the compositor. |
| |
| For testing on desktop, there is also a shared memory based server buffer |
| integration that works with any graphics hardware: |
| |
| $ QT_WAYLAND_SERVER_BUFFER_INTEGRATION=shm-emulation-server QT_XCB_GL_INTEGRATION=xcb_egl ./compositor |
| |
| Note: the shm-emulation-server integration does not actually share graphics |
| buffers, so it will not give any graphics memory savings. It is intended solely |
| for testing during development and should never be used in production. |