gbox — это многоплатформенная библиотека C для графики.
На данном этапе она находится в ранней стадии разработки и предназначена только для справочных материалов и обучения.
Если вас интересует этот проект, пожалуйста, просмотрите исходный код.
Поддержка матричных преобразований
Поддержка заливки и контура для сплошных, градиентных и изображений
Поддержка пользовательских путей и отрисовки
Поддержка вычислений с плавающей и фиксированной точностью
Предоставление пользовательских устройств отрисовки
Поддержка OpenGL ES 1.0/2.0
Поддержка алгоритмов для мягкого рендера
Реализация сеточной структуры и алгоритма
Реализация сложного полигонного расщепителя и триангулятора
Поддержка заполнения "odd" и "nonzero"
Реализация алгоритма сканирования полигонов
Предоставление многоплатформенного окна (например, glut, sdl и x11, framebuffer, ios, android в будущем)#### В планах
Отрисовка SVG-изображений
Реализация антиалиасинга
Поддержка большего количества устройств отрисовки и окон
Отрисовка текста
Разработка UI и игровых движков
Сначала установите xmake: xmake
$ cd ./gbox
$ xmake
$ xmake run core
GBOX — это многоплатформенная графическая библиотека, реализованная на C, которая поддерживает Windows, Linux, Mac, iOS, Android и другие встраиваемые системы.
На данный момент проект находится на ранней стадии разработки и пока недоступен для использования, предлагается только для ознакомления и обучения.
Если вас заинтересовало данное решение, вы можете ознакомиться с исходным кодом.
Поддержка сложных векторных путей для отображения и заполнения
Поддержка однородного цветового заполнения, градиентного заполнения и заполнения изображением (процесс рефакторинга)
Поддержка работы с целыми числами или вещественными числами (настройка выбора)
Реализация расширяемости устройств отображения, в настоящее время поддерживаются устройства OpenGL ES 1.0/2.0 с GPU-ускорением и алгоритмическое устройство отображения bitmap
Реализация разделения сложных многоугольников (разделение треугольниками, выпуклыми многоугольниками) и правил заполнения (необходимый алгоритм занял у меня год времени =。=)
Реализация структуры mesh и её упаковки
Реализация алгоритма сканирования многоугольников
Поддержка расширяемости окон для различных платформ, в настоящее время поддерживаются окна GLUT и SDL, планируется поддержка (X11, framebuffer, iOS/Android, нативные окна Windows и т.д.)#### Будущие задачи
Отображение SVG-векторных графических объектов (ранее была реализована полная система, теперь находится в процессе рефакторинга, поэтому временно удалена)
Поддержка антиалиасинга
Реализация поддержки большего количества платформ окон и устройств отображения
Реализация отображения шрифтов
Разработка UI-фреймворка
При наличии времени, доработка игрового движка; конечно, это второстепенная задача, которая зависит от настроения и наличия свободного времени.
Сначала установите: xmake
cd ./gbox
xmake
$ xmake run core
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )