Приветствую!
Пишу фреймворк для разработки софта или игр. Идею взял из библиотеки SDL, но пишу на С++.
Главная идея это кроссплатформенность, производительность и поддержка старых и новых систем. Windows 95 - Windows 11, Linux-дистрибьютивы, начиная с 2000-ых годов.
Сам проект. Лицензия Boost Software.
Идея зародилась после написания статьи «В софте все всрато и становится еще всратее».
Как говорится, если критикуешь, предлагай, а предлагая делай. Запилил обзорную статью на Habr’е. На данный момент фреймворк активно портирую на Linux.
Что реализовано:
- Поддержка 2D графики
- Абстракции над примитивами ОС. Окна, события, каталоги и т.д
- Поддержка Soft, OpenGL 1.2 и OpenGL 3 рендера.
- Аудио подсистема в реализации, пилю поддержку потокового воспроизведения музыки.
Особенности проекта.
- Поддержка старых систем 25+ лет.
- Модульный дизайн.
- Динамическая загрузка рендера при запуске приложения.
- Весь код написан на С++ 98, для поддержки большего числа компиляторов и систем. Но разработчик, может использоать любой стандарт языка, хоть С++ 23. Ограничение есть лишь у меня как у разработчика фреймворка.
- Высокоуровневый ООП API. Есть возможнось заюзать свои кастомные аллокаторы.
- Поддержка старого железа 25+ лет.
- Производительность.
- Минимальная внешняя зависимость.
Первый релиз планирую выпустить в течении месяца. Осталось реализовать следующие пункты.
- Протестировать и исправить порт под Linux.
- Реализовать воспроизведение потокового звука.
- Создать минимальную документацию.
- Добавить больше примеров.
Недавно выступил с докладом на конференции С++ Russia 2023. Вперед в прошлое, или Разрабатываем фреймворк под Windows 95 в 2023 году
Буду рад обсудить данный проект. Критика и предложения, очень приветствуется.
Перемещено hobbit из web-development