glNewList(base+i, GL_COMPILE);
glBitMap(8, 13, 0.0, 2.0, 10.0, 0.0, my_font[i]);
glEndList();
}

Обратите внимание на то, что каждый символ размещается на два пикселя вверх относительно текущей позиции растра, а после завершения вывода символа позиция растра "сдвигается" вправо не на 8, а на 10 пикселей, что обеспечивает интервал между соседними символами и соседними строками в тексте.

9.6.3. Пиксели и изображения В OpenGL пиксели обрабатываются в виде групп 8-разрядных байтов, которые могут представлять разные форматы описания изображения. В RGB-формате интенсивность каждого первичного цвета кодируется одним байтом, а в формате представления монохромного (одноцветного) изображения каждому пикселю соответствует число в формате с плавающей точкой.

В составе API OpenGL есть три функции перемещения участков описания изображения:

'Обращаю ваше внимание на то, что выделять память под первые 32 символа набора в кодировке ASCII не имеет смысла, поскольку эти символы играют роль управляющих и на экран не выводятся.

9.6. Операции с пикселями в OpenGL

glReadPixels(x, у, width, height, format, type, image); glDrawPixels(width, height, format, type, image); glCopyPixels(x, y, width, height,type); Функции glReadPixels( ) и glDrawPixels ( ) позволяют считывать и записывать прямоугольные участки пикселей из массива или в массив, заданный аргументом image. В первом случае буфер OpenGL является буфером-приемником, а во втором - буфером-источником. Функция glCopyPixels( ) копирует участок пикселей из одного места определенного буфера цвета в другое. Аргументы х и у функции glReadPixels( ) задают смещение начала считываемого участка пикселей относительно начала буфера кадра, а аргументы width и height - соответственно ширину и высоту участка. Хотя в большинстве приложений операции на уровне пикселей с помощью функций glReadPixels( ) и glDrawPixels ( ) выполняются над содержимым буфера кадра (этот режим устанавливается по умолчанию), их можно выполнять с любым буфером.

9.6.4. Таблицы соответствия цветов


⇐ Предыдущая| |Следующая ⇒