Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вывод текста в OpenGL через FreeType2 
V
    Опции темы
KaraKum
  Дата 24.6.2008, 00:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 640
Регистрация: 3.12.2007

Репутация: нет
Всего: 1



После функций вывода текста в OpenGL через FreeType2 в окне ничего не прорисовывается, хотя в коде нет вызова функции glEnable(GL_TEXTURE_2D);, но если закомментировать функцию glBindTexture(...);, то всё снова работает нормально (но буква, конечно, так и не прорисовывается).
Попробовал загруженный через FreeType2 глиф сохранить в файле через DevIL - файл сохранился, но "Просмотр недоступен".
Вот код:
Код

FT_Error error;
FT_Face face;
FT_New_Face(library, "dour46w.ttf", 0, &face);
FT_Load_Glyph(face, FT_Get_Char_Index(face, charcode), FT_LOAD_DEFAULT);
FT_Render_Glyph(face->glyph, FT_RENDER_MODE_NORMAL);
FT_Bitmap bitmap = face->glyph->bitmap;

//вызовы gl-функций, относящихся к прорисовке глифа на экране:
glGenTextures(1, &unTexture[0]);
glBindTexture(GL_TEXTURE_2D, unTexture[0]);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, bitmap.width, bitmap.rows, 0, GL_LUMINANCE, GL_UNSIGNED_BYTE, bitmap.buffer);

//сохранение глифа в файле через DevIL:
ILint ilTexture = ilGenImage();
ilBindImage(ilTexture);
ilTexImage(bitmap.width, bitmap.rows, 0, 1, IL_LUMINANCE, IL_UNSIGNED_BYTE, bitmap.buffer);
ilSaveImage("SavedGlyph.bmp");

Всё проходит без ошибок, файл появляется, но "Просмотр недоступен". Что не так?
PM MAIL WWW   Вверх
KaraKum
Дата 26.6.2008, 21:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 640
Регистрация: 3.12.2007

Репутация: нет
Всего: 1



Вопрос отчасти решился.
Проблема осталась, но, оказывается, она не в коде FreeType, а в текстурировании. Если загружать FreeType символ в нулевую текстура (по умолчанию которая), то она рисуется.

Вопрос решён.

Это сообщение отредактировал(а) KaraKum - 27.6.2008, 23:46
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.0374 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.