A well established example for direct rendered frame support is the SHM extension of X11. There you can create a shared memory in your application and render directly into this. Afterwards you switch buffers without any transfer of image data. The image is directly rendered on the screen if the application and the display rest on the same computer. In X11 this results in a great performance gain cause you don't have to invoke X11 for each drawing primitive and you don't have to transfer the image data when the image is ready.

libSDL uses a similar approach.