Хотя приведенный фрагмент программы выглядит и не очень элегантно, его эффективность не должна нас особенно заботить, поскольку символы формируются только один раз в течение сеанса работы приложения. Сформированные символы пересылаются на сервер в виде скомпилированного дисплейного списка.
Предположим, что нам необходимо сформировать расширенный шрифт из 256 символов. Соответствующая программа, в которой используется функция OurFont(), будет выглядеть следующим образом:
base = glGenLists(256); /* Возвращает индекс первого из
256 доступных идентификаторов */
for(i=0; i<256; i++) {
glNewList(base + i, GL_COMPILE); OurFont(i); glEndList();
}

Рис. 3.15. Вычерчивание буквы "О" Когда понадобится использовать этот список для вычерчивания отдельных символов, можно будет не смещать каждый последующий вызов относительно base, а просто установить базу смещения"opengl5_132.html">⇐ Предыдущая| |Следующая ⇒