Форум программистов, компьютерный форум, киберфорум
OpenGL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.64/81: Рейтинг темы: голосов - 81, средняя оценка - 4.64
0 / 0 / 1
Регистрация: 08.10.2012
Сообщений: 40
1

Какими способами лучше выводить текст в OpenGL?

13.10.2012, 11:58. Показов 14819. Ответов 24
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте,хотелось бы узнать Ваше мнение по поводу вывода текста на экран приложения OpenGL. Насколько я понял возможны 2 способа вывода:
1. С помощью самого OpenGL (пример тут:http://pmg.org.ru/nehe/nehe13.htm)
2. С помощью MFC (точно не уверен в таком способе)
Посоветуйте пожалусто начинающему,какой способ стоит использовать,если таковые вообще являются правильными?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.10.2012, 11:58
Ответы с готовыми решениями:

Какими способами можно вылечить пендинги?
СМАРТ Виктории показал 8 пендингов. Какими способами их можно вылечить?

Какими способами можно создать Луч Wi-Fi!?
1) Есть ли Маршрутизаторы (роутеры) у которых имеется радиус wi-fi более 1 км Если есть то дайте...

Какими способами можно нарисовать таблицу в консоли?
Мне для защиты проекта по программированию нужно создать консольную программку морской бой. Я хотел...

Какими способами можно реализовать перетаскивание окна?
Какими способами можно реализовать перетаскивание окна? Обычно решалось строчкой DragMove(); в...

24
1471 / 826 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
26.12.2019, 14:20 21
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от Vintorez_92 Посмотреть сообщение
насколько я понял возможны 2 способа вывода:
Вывод текста в общем то это всегда один и тот же алгоритм.
Другой вопрос что можно пропускать разные шаги отрисовки для ускорения или упрощения кода. Также наверняка есть форматы которые просто хранят отрисованный вектор как растр снова пропуская шаги тем и проигрывая в качестве.
Вот это и есть эти варианты:
Цитата Сообщение от angstrom Посмотреть сообщение
Первый можно масштабировать, но невозможно добиться качественного отображения, второй даёт отличную картинку, но не масштабируется.
Нужно хранить векторный формат букв.
Перед использованием задать размер букв и растра, растеризовать и сгладить 1 раз. Создать текстуру и юзать.
Наверно вот это и есть этот вариант.
Цитата Сообщение от castaway Посмотреть сообщение
делаю через листы, текстуры и GetGlyphOutline. И вопрос скорости меня не беспокоит.
Странно только что всех этих очевидных действий давно нет одной командой. Наверно это уровень гуру =).
0
Эксперт С++
4985 / 3092 / 456
Регистрация: 10.11.2010
Сообщений: 11,169
Записей в блоге: 10
26.12.2019, 19:39 22
Цитата Сообщение от Excalibur921 Посмотреть сообщение
Странно только что всех этих очевидных действий давно нет одной командой. Наверно это уровень гуру =).
Одной командой никогда и не было.
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
28.12.2019, 14:58 23
Цитата Сообщение от qppq Посмотреть сообщение
с .ttf заметно тормозит
Любой .ttf шрифт можно перевести в BMFont (текстура с буквами + текстовый (или xml) файл с uv-координатами. Есть много программа для конвертирования из .ttf в BMFont, например, одна из самых популярных: Bitmap Font Generator. Это один из самых производительных способов. Этот способ универсальный, то есть его можно одинаково реализовать на любом языке, где есть OpenGL. Например, можно реализовать на TypeScript (или JavaScript) и WebGL, тогда ваше приложение будет запускаться на любой платформе в один клик, без скачиваний и установок чего-либо.

Я сделал пример с выводом шрифта на шейдерном OpenGL 2.0 и C#: https://github.com/8Observer8/... GL20CSharp

Делал на основе примеров из книг:
1
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
06.02.2020, 23:26 24
Одно из лучших объяснений теории в двух уроках:



Distance Field Text Rendering
0
5158 / 2770 / 465
Регистрация: 05.10.2013
Сообщений: 7,321
Записей в блоге: 147
07.02.2020, 17:44 25
Подправлю ссылки выше.

Объяснение теории, как сделать загрузку BMFont шрифта и сглаженный текст с помощью GLSL при увеличении масштаба текста:

Tutorial 32: Font Rendering


Tutorial 33: Distance Field Text Rendering


Для работы со шрифтами в туториале используется бесплатная программа Hiero: https://libgdx.badlogicgames.com/tools.html
0
07.02.2020, 17:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.02.2020, 17:44
Помогаю со студенческими работами здесь

Какими способами можно передать многомерные массивы в функцию?
Возник вопрос, какими способами можно передать многомерные массивы в функцию??? Если не сложно,...

Нужен совет!Какими способами можно соединить 2 подсети!
Задача заключается в следующем, есть две подсети, связь осуществляется через интернет - vpn, в...

Какими способами можно узнать ключ активации windows
Добрый день, меня интересует как можно узнать текущий ключ винды, но только не с помощью самой ОС,...

Какими способами можно получать отчеты с Windows Server 2008 r2 ?
Добрый день! Хотелось бы спросить совета: какими способами можно получать отчеты с Windows Server...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru