Я использую его в случае, подобном упомянутому Harper Shelby, в котором конфигурационный файл определяет во времени выполнения, которые возражают для инстанцирования. В моем особом случае нет ничего столь же тщательно продуманного как фабрика - только ряд классов, которые реализуют единый интерфейс и простую функцию, которая читает конфигурационный файл и создает надлежащий объект, возвращая интерфейс.
В 64-битной Linux, Flash плагин не связывается с SDL (согласно ldd
). Однако он связан с GTK, GDK и Cairo. Следовательно, похоже, что он использует вызовы Cairo или необработанные Xlib для рисования в Linux.
Я не знаю в Windows. Flash обычно имеет минимальные зависимости, но Direct-X может быть достаточно стандартным, чтобы они его использовали. Имея своего рода эксперта по процессу, который сообщит вам, какие библиотеки загружены процессом, вы можете изучить простой веб-браузер, встраивающий Flash, и увидеть, какие системные средства фактически используются.
В основном DirectX. Трудно добиться хорошей графической производительности с помощью GDI.
Я согласен с Джорджем, GDI очень плох для скорости. DirectX для Windows и SDL или аналогичный для Linux (обратите внимание, это предположение!). В этом смысле он, вероятно, использует уровень, который взаимодействует с собственной графической подсистемой на любой платформе, на которой он работает.