EGl - интернет-магазин электронных компонентов и средств связи
EGL (англ. Embedded System Graphics Library) – это библиотека для управления графическими ресурсами и поверхностями вывода на мобильных и встраиваемых устройствах.
EGL предназначен для связки окружения вывода с обработчиком графических данных и обеспечивает гарантированную работу на различных устройствах. Библиотека обеспечивает связь между графическим движком и системным окном в приложении. EGL работает на уровне операционной системы, что позволяет управлять графическими ресурсами на низком уровне.
Пример использования EGL на языке С++:
cpp
#include
#include
int main(int argc, char** argv) {
EGLDisplay display = eglGetDisplay(EGL_DEFAULT_DISPLAY);
eglInitialize(display, NULL, NULL);
EGLConfig configs[2];
configs[0] = EGL_NO_CONFIG;
configs[1] = EGL_NO_CONFIG;
EGLint numConfigs;
eglGetConfigs(display, configs, 2, &numConfigs);
EGLint contextAttribs[] = {EGL_CONTEXT_CLIENT_VERSION, 2, EGL_NONE};
EGLContext context = eglCreateContext(display, configs[0], EGL_NO_CONTEXT, contextAttribs);
EGLSurface surface = eglCreateWindowSurface(display, configs[0], window, NULL);
eglMakeCurrent(display, surface, surface, context);
glClearColor(1.0f, 1.0f, 0.0f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT);
eglSwapBuffers(display, surface);
eglDestroySurface(display, surface);
eglDestroyContext(display, context);
eglTerminate(display);
return 0;
}
В данном примере происходит инициализация библиотеки EGL, создание окна вывода (surface) и контекста вывода (context), очистка экрана заданным цветом и обновление буфера вывода (eglSwapBuffers). В конце работы программы производится уничтожение созданных объектов.
Этот пример демонстрирует использование базовых функций EGL для рисования на окне вывода. Подробное описание функций можно найти в документации библиотеки.