Вопрос

Какой самый быстрый и простой способ нарисовать текст в стандартном OGL??

Это было полезно?

Решение

Текст неожиданно задействован в OpenGl
Взгляни на этот пример от NeHe

Другие советы

OpenGL не поддерживает рисование текста.Вам нужно использовать некоторую библиотеку для рендеринга текста в растровое изображение, а затем вы можете использовать OpenGL для рендеринга растрового изображения.Freetype2 и Pango — хорошие кроссплатформенные низкоуровневые решения.Библиотеки игрового программирования, такие как ClanLib, и библиотеки графического интерфейса, такие как Qt, также могут иметь свои собственные способы рендеринга текста.

Это зависит от фреймворка, над которым вы работаете, как было сказано выше.например, SDL является мультиплатформенным, и можно рисовать текст, используя специальную библиотеку внутри SDL:http://gameprogrammingtutorials.blogspot.com/2010/02/sdl-tutorial-series-part-6-displaying.html

Если вы используете glut, обратите внимание на следующие функции:glutStrokeString, glutBitmapString в документации по glut..

Используйте текстуры.Каждый символ представляет собой текстурированный четырехугольник, а координаты текстуры заключают в себе определенные символы.

Затем вы можете связать их с помощью списков отображения, генерировать растр, представляющий строку во время выполнения, выделять контуры, смешивать...

Вы можете использовать API OpenGL для конкретной платформы (т.е.wglUseFontOutlines), но я думаю, что он устареет начиная с OpenGL 3.2.

OpenGL не поддерживает рендеринг текста напрямую.У вас есть множество вариантов:

  1. Некоторые привязки операционной системы, такие как РГЛ и AGL, имеют ограниченную поддержку шрифтов (в основном они преобразуют системные шрифты в растровые изображения для использования в Open GL).
  2. Тот самый ПЕРЕНАСЫЩЕНИЕ toolkit (и подобные наборы инструментов) также имеют некоторую поддержку шрифтов (растровое изображение и обводка).
  3. Вы можете использовать библиотеку, такую как Свободный тип (в основном это средство визуализации шрифтов, вы все равно можете захотеть использовать что-то вроде Панго для текста макет).
  4. Вы можете использовать простой текстурированный квадроциклы (фактически это то, что сделал Quake 1).

Зависит от того, какой фреймворк вы используете.Один из распространенных методов — отрисовка текста во внеэкранном буфере и использование его в качестве текстуры.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top