Комментарии 7
поздравляю, кстати говорят что листы по быстроте до сих пор быстрее в immediate-mode быстрее чем Buffer ситуация, от драйвера правда еще зависит, но листы побыстрее, правда это гл 1 всётаки ) тоесть там и со светом всё эксклюзивно - не совсем удобно
Если я уж заварил такую кашу с поддержкой старого железа. То нужно выжимать из него максимум производительности. На основе OpenGL будет несколько рендеров, версии 3.x для достаточно новых видеокарт. Так и на OpenGL 1.0-1.2 К примеру в версии OpenGL 1.0 нет текстур потому буду их хранить в ОЗУ и выводить через glDrawPixels. Для версии выше, уже с использованием текстур. Главное, что бы API был не изменным. А тип рендера менять динамически.
А сложностей с поддержкой DOS (особенно real mode) из-за ориентации на OpenGL в качестве графического бэкенда не будет?
Нет, OpenGL это один из рендеров. Для доса будет софтварный рендер с поддержкой палитры. Просто буфер в озу, только 1 байт на пиксель.
Понял о чём вы. Рендер в контексте SDL3. Это просто функции рисования, а уже под капотом они могут мапиться динамически на разные типы рендеров, софтваре, OpenGL, Directx и т.д
Простите, вопрос немного не по теме, просто вы наверняка знакомы с SDL изнутри.
---
Обратил внимание, что SDL2 например (и 3 скорей всего тоже) довольно медленно апдейтит текстуру у спрайта или канваса из пользовательского ptrData RGBA (32bit). Начал тестить и заметил, что затык в конвертации например BGRA в формат удобный для бэкэнда.
Но! формат растрового массива указан корректно, как и таргет формат на бэкэнде (OpenGL). Всё сверено со спецификациями и инфой из интернетов от тех, кто подобное изучал.
К чему я собственно, клоню. Накатив ImGui и подцепив через него sdl surface, увидел прирост апдейта на 180-220% (Прим.). Явно в SDL момент с переводом формата пиксела в нужный формат либо не оптимизирован, либо просто вызывается даже когда он не нужен!
Вобщем разочаровал. Зная о некоторых багах которые тянутся годами в шоке, что основной функционал не отлажен.
А вопрос такой: Интересно ваше мнение!
Проект SDL3Lite развивает версию библиотеки SDL3 с поддержкой старых систем