XOpenGL入门教程1:空白窗口
系列索引:XOpenGL入门教程索引
第一步,先显示一个简单的界面。
函数处理流程图
flowchart TB
D --> initializeEGL
E --> mainloop
F --> destroyEGL
subgraph init
direction TB
A[XOpenDisplay] --> B[XCreateSimpleWindow]
B --> C[XMapWindow]
C --> D[initializeEGL]
D --> E[mainloop]
E --> F[destroyEGL]
F --> G[XDestroyWindow]
G --> H[XCloseDisplay]
end
subgraph initializeEGL
direction TB
I[eglGetDisplay] --> J[eglInitialize]
J --> K[eglChooseConfig]
K --> L[eglCreateContext]
L --> M[eglCreateWindowSurface]
M --> N[eglMakeCurrent]
end
subgraph mainloop
direction TB
O[XPending] --> P[eglSwapBuffers]
end
subgraph destroyEGL
direction TB
Q[eglDestroyContext] --> R[eglDestroySurface]
R --> S[eglTerminate]
end
核心
先是X11相关的部分。连接显示服务器,创建新窗口、循环显示、释放内存
1 |
|
初始化EGL
本部分是本系列的核心,即EGL相关部分
1 |
|
循环
1 |
|
释放
1 |
|
显示
编译运行
1 |
|
效果为
代码中并没有窗口边框和右上角的按钮,这些是X11桌面环境提供的。
窗口关闭后会提示有窗口从X11服务器手动退出了。
XOpenGL入门教程1:空白窗口
https://blog.jackeylea.com/xopengl/xopengl-blank-window/