Войти
ПрограммированиеФорумГрафика

Wayland OpenGL

#0
14:59, 2 мая 2021

Кто знает по информации, кроме EGL (и забором через иксы) как-то создаётся контекст OpenGL?
Или не заморачиваться и использовать EGL?


#1
15:21, 2 мая 2021

Чо?

#2
15:25, 2 мая 2021

... блин ... как иногда туго с вами... и так информации мало... и фиг поймёшь куда ковырять...

Linux основан на Xorg или на Wayland.

Wayland не имеет своего графического контекста. И для работы с графикой надо "использовать внешние" (не правильная фразировка, и пофиг). Точнее Wayland надо запускать иксы для работы или использовать EGL.

Что-то ещё есть на данное время или нет?

#3
(Правка: 16:54) 16:50, 2 мая 2021

насколько я знаю используется egl, но из проектов с ним почти никто не работает
какая-то хитровымученная хрень, да и сам вейланд. Пытался читать по нему доку (давненько) и по-моему не хотят они открытости

в pdf_ке в clientAPI упоминаются только egl и eglSwapBuffers

#4
17:56, 2 мая 2021

clc
> Пытался читать по нему доку
Kronos и архитектура Wayland - ну как бы не удивительно, что основную какую-то информацию можно найти только там. + различные туториалы. (для Wayland там ссылки внизу страницы).

Просто видел GDL - а это оказывается просто среда гнома... ))) и тоже работающая через EGL (как я понял).

#5
21:11, 2 мая 2021

https://www.libsdl.org/

#6
(Правка: 3 мая 2021, 0:52) 21:29, 2 мая 2021

TheLightWay, и в чём преимущества? Я спрашиваю возможности прямой реализации, а не с помощью библиотек, которые основываются на этих реализациях.

Но, что-то я не подумал заглянуть под капот и посмотреть что там происходит (хотя уверен, что ни чего интересного).

#7
15:40, 3 мая 2021

Mirrel
Ну я и думал что ты если и не возмешь SDL (почему? Ты же только плюсы получаешь или это оптимизация скорости создания окна - тогда тебе к психиатру ),
то хотя бы посмотришь код ибо ответа на твой вопрос все равно нету.
Код тут https://github.com/libsdl-org/SDL/tree/main/src/video/wayland

#8
16:12, 3 мая 2021

TheLightWay
> ибо ответа на твой вопрос все равно нету.

if (window->flags & SDL_WINDOW_OPENGL) {
        data->egl_window = WAYLAND_wl_egl_window_create(data->surface,
                                            window->w * data->scale_factor, window->h * data->scale_factor);

        /* Create the GLES window surface */
        data->egl_surface = SDL_EGL_CreateSurface(_this, (NativeWindowType) data->egl_window);
    
        if (data->egl_surface == EGL_NO_SURFACE) {
            return SDL_SetError("failed to create an EGL window surface");
        }
    }

Наверно надо просто разбираться где и что лежит?

10 минут потратил на поиски, если не меньше
И ответ уже будет на поверхности, ибо как я и писал
хотя уверен, что ни чего интересного

> Ну я и думал что ты если и не возмешь SDL (почему? Ты же только плюсы получаешь
> или это оптимизация скорости создания окна - тогда тебе к психиатру )
Потому что я сам предоставляю контекст? Об этом не подумал?

Я занимаюсь разработкой ZenGL - в котором пользователю не надо самому создавать окно и контекст для него. Да иксы ещё долго будут работать, но пользователю нужен будет выбор, что использовать иксы или Wayland.

#9
23:49, 3 мая 2021

Mirrel
> Потому что я сам предоставляю контекст? Об этом не подумал?
>
> Я занимаюсь разработкой ZenGL - в котором пользователю не надо самому создавать
> окно и контекст для него. Да иксы ещё долго будут работать, но пользователю
> нужен будет выбор, что использовать иксы или Wayland.
Ничего не понял ведь SDL как раз это и делает, бесплатно и без СМС под кучу платформ.

#10
0:02, 4 мая 2021

TheLightWay
ZenGL так же предоставляет контекст, под разные платформы, не используя какие-то библиотеки, а напрямую работая с ОС. Изначальный разработчик данной библиотеки уже в далёкие года их начал предоставлять! )))

#11
1:06, 4 мая 2021

Mirrel
OK, теперь понятно. Удачи!

ПрограммированиеФорумГрафика