Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.01.2011, 12:50   #71
.pixel
c++, dx/ogl
Форумчанин
 
Аватар для .pixel
 
Регистрация: 10.11.2008
Сообщений: 131
По умолчанию

Как мне представляется это надо делать в 3 этапа
1) Чтение файла jpg
2) Разжатие данных jpg - изображения в формат который способна воспринять glTexImage2D

Форматы которые воспринимает glTexImage2D «на входе»
format
Цитата:
Specifies the format of the pixel data. The following symbolic values are accepted: GL_COLOR_INDEX, GL_RED, GL_GREEN, GL_BLUE, GL_ALPHA, GL_RGB, GL_BGR, GL_RGBA, GL_BGRA, GL_LUMINANCE, and GL_LUMINANCE_ALPHA.
http://www.opengl.org/sdk/docs/man/x...TexImage2D.xml

Имхо наиболее актуальный формат GL_RGB(A) для цветных изображений исходных данных к которому надо будет привести данные jpg файла. Чем? Можете сами изучив работу с форматом jpg, либо воспользоваться какой-нибудь сторонней библиотекой для работы с jpg.

Главный момент этого пункта – перевести данные из формата jpg --> rgb(а)

3) Загрузка разжатых данных ( в одном из перечисленных выше форматов) в текстуру посредством процедуры glTexImage2D.

Ps. О cжатии текстур.
В качестве меры оптимизации скорости прорисовки и экономии видео памяти можно процедурой glTexImage2D входные данные(rgba/bgra) сжать в видео памяти т.е задать internalformat = GL_COMPRESSED_RGB(A)_ARB). Современные видео карты такие текстуры «щелкают как семечки» разжимают сами и потом такая текстура требует меньше кол-во байтов на пересылку из памяти видеокарты в конвейер рендеринга, что снижает нагрузку на шину памяти видео карты. Такие текстуры можно делать находу из обычных tga(bgr(a)) или bmp(rgb(a)) – файлов либо загружать уже сжатые готовые данные с помощью процедуры glCompressedTexImage2D.
http://www.opengl.org/sdk/docs/man/x...TexImage2D.xml

Описание работы со сжатыми текстурами от NVIDIA (в прочем представленные методы будут одинаково справедливы как для ATI так и NVIDIA видео карт)
Вложения
Тип файла: pdf ARB_texture_compression.pdf (247.7 Кб, 13 просмотров)
“Batch, Batch, Batch:” What Does It Really Mean?
I am a donut! Ask not how many tris/batch, but
rather how many batches/frame!

Последний раз редактировалось .pixel; 12.01.2011 в 12:51. Причина: время
.pixel вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OpenGL...Игры без тормозов...Как?! saggy Мультимедиа в Delphi 10 03.07.2010 12:25
разработка игры "Реверси". Имеется код этой игры на С++ CD-RW Помощь студентам 0 28.03.2010 00:13
Хочу начать писать игры на OpenGL lionbeast Помощь студентам 2 02.10.2009 11:04
OpenGL Paul_AG C++ Builder 20 14.09.2009 19:07
OpenGL в С# LeGAl Общие вопросы .NET 0 30.04.2009 02:15