Реализованные функции:
- bar
- fillellipse / drawellipse / circle Обводка c узором не поддерживается
- putpixel
- rectangle
- fillpoly / drawpoly
- bar3d
- line / lineto / linerel
- moveto / moverel, getx / gety
- getmaxx / getmaxy
- setfillstyle / getfillsettings
- setfillpattern / getfillpattern
- setlinestyle / getlinesettings
- setcolor / getcolor , setbgcolor / getbgcolor
Дополнительные возможности:
- Возможность создания нескольких окон:
directgraph_create_window
. Функции с суффиксомw
, для рисования в указанном окне. - Возможность передавать дополнительный цвет рисования, аналогично
setcolor
, для функций с суффиксомc
. - Работа с палитрой:
setpalette
,clearpalette
,initpalette
. Также есть макроопределенияMAXCOLOR16
,MAXCOLOR256
, которые можно определить до подключения заголовка библиотеки. - Полупрозрачные цвета, для всего, кроме
putpixel
. Для указания прозрачности используется старший байт. Например,0xFF0000FF
— полностью прозрачный красный,0x7FFF0000
— наполовину прозрачный синий.
Особенности:
- Используется буфер глубины для минимизации изменений состояния (state changes) и избыточной перерисовки (overdraw)
- Используются шейдеры. Если они не поддерживаются видеокартой, то обычные треугольники.
- Поддержка экранов с нестандартным DPI (DPI awareness)
- Нить-безопасность
- Последовательные вызовы
putpixel
с любыми координатами накапливаются и потом обрабатываются все сразу.
Библиотека работает на системах Windows, начиная Windows XP SP2, x86 и x64. Так как используется C API, то подключить её может практически любой современный компилятор.
Саму же библиотеку можно скомпилировать с помощью Visual Studio 2010, 2012, 2015 и MinGW-w64.