rlsw – Raylib software OpenGL renderer in less than 5k LOC
В файле rlsw.h представлен упрощённый API SimpleWindow для raylib, созданный для быстрой разработки оконных приложений с минимальным кодом. Основная структура SimpleWindow инкапсулирует параметры окна (ширина, высота, заголовок), а SimpleWindowEvent обрабатывает базовые события (закрытие, перемещение, изменение размера). API содержит всего 12 функций, включая swCreateWindow для инициализации, swBeginDrawing/swEndDrawing для рендеринга, и swPollEvents для обработки ввода.
Ключевое преимущество — лаконичность: весь функционал сводится к нескольким вызовам, что идеально подходит для прототипов и небольших проектов. Поддерживаются все основные платформы (Windows, Linux, macOS), а зависимость сводится к одному заголовочному файлу без необходимости линковки. Разработчики отмечают, что это решение особенно полезно для образовательных целей или когда требуется минимальная сложность без избыточных возможностей полного raylib.
Комментарии (87)
- Raylib теперь компилируется без внешних зависимостей, что делает его идеальным для встраиваемых систем и ретро-харда.
- Сообщество вспомнило, что ПО-рендеринг всегда был возможен, и теперь можно делать 2D/3D игры даже на 20-летнем железе.
- Появился спор о том, насколько полезен этот факт для разработки игр на микроконтроллерах и эмуляторах старого железа.
- Некоторые участники обсуждения отметили, что это также открывает путь к созданию игр для таких систем, как Nintendo 3DS и других портативных устройств.
- Были упомянуты проекты TinyGL и PortableGL как альтернативы, а также отмечено, что OpenGL 1.1-совместимое ПО-рендеринг всегда было возможно, но теперь это стало еще более доступным.
Rasterizer: A GPU-accelerated 2D vector graphics engine in ~4k LOC
Rasterizer — GPU-ускоренный движок 2D-векторной графики от mindbrix.
Проект на GitHub: mindbrix/Rasterizer.
Комментарии (51)
- Автор показал компактный GPU-рендерер 2D-векторов (Rasterizer), 10 лет развивавшийся из VectorGL; использует «традиционный» граф-конвейер Metal, а не compute-шейдеры.
- Лицензия «personal-use zlib» вызывает вопросы: неясно, что считать личным/некомерческим и можно ли распространять ПО с этой библиотекой.
- Производительность конкурентна с Vello (Apache/MIT) и, вероятно, выше Rive на сложных сценах; у Vello бывают подвисания при зуме.
- Поддерживаются любые масштабы и огромные пути, но самопересечения и правило winding остаются главной головной болью параллелизации.
- Реализованы только базовые заливки; текста, градиентов, фильтров пока нет. Кеширование текстур не используется — 60 fps достигается полным перерисом.
- Планы: добавить коммерческую лицензию, написать подробный пост о методике, оценить порт на Vulkan/OpenGL.
Комментарии (45)
Procedural (VFX, effects, non-desctuctive editing)You had my attention, now you have my interest… or however that quote goes.Edit: Please please please add the
playsinlineattribute to your video elements. I’m on my phone, and every time I scroll a video explodes and takes ov