This example shows how to use the texture sharing extension, allowing multiple clients to share the same copy of an image in graphics memory. The texture sharing extension uses the server buffer extension to transport graphics buffers. There are different server buffer plugins for different graphics hardware. This is specified by setting an environment variable for the compositor process. -On a device with Mesa and Intel integrated graphics, set: QT_WAYLAND_SERVER_BUFFER_INTEGRATION=dmabuf-server -On a device with NVIDIA graphics, set: QT_WAYLAND_SERVER_BUFFER_INTEGRATION=vulkan-server 'custom-compositor' shows how to write a server that creates shared textures programmatically. The file 'minimal-compositor.qml' shows how to add texture sharing to an existing compositor, using only QML. It is based on the minimal-qml example, and can be executed with qmlscene. 'qml-client' shows how to use shared textures in a Qt Quick client. The compositor uses the hardware integration extension to broadcast the name of the server buffer integration to all clients, so qml-client can be started like any normal wayland client.