Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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

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

icq: 619817361
По умолчанию

Как мне представляется это надо делать в 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 Кб, 5 просмотров)
__________________
“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 в 13:51. Причина: время
.pixel вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OpenGL...Игры без тормозов...Как?! saggy Мультимедиа в Delphi 10 03.07.2010 12:25
разработка игры "Реверси". Имеется код этой игры на С++ CD-RW Помощь студентам 0 28.03.2010 01: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


06:20.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru