Цитата(SasaVitebsk @ Apr 7 2015, 14:45)

... вырисовывается следующее:
a) Нижний уровень
Да, мне кажется очень разумным отделить "нижний уровень", то есть аппаратно-зависимую часть. "Верхний уровень" использует примитивы из нижнего. А "нижний уровень" можно без труда ускорить, воспользовавшись ускорителем, или портировать на другой графический контроллер, при этом "верхний уровень" даже ничего не заметит. Кстати, вывод текста я бы тоже отнёс к "нижнему уровню".