I'm trying to understand how this works. So there are 2 types of applications - X apps and OpenGL apps. X apps draw to the screen using Xlib but do OpenGL somehow bypass X completely and render directly to the GPU? How does it do that?
If both X and OpenGL are running - how does my computer know which one to render to the screen? Is there some priority level? While X is running, can I bypass it and draw over it? That seems to be what OpenGL apps are doing if I understand it correctly.