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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2011, 11:23   #1
Asker13
Форумчанин
 
Аватар для Asker13
 
Регистрация: 01.12.2010
Сообщений: 140
По умолчанию Загрузка множества текстур. OpenGL

Привет. Допустим, что в одном файле формата TGA у меня есть набор картинок, последовательно идущих друг за другом (например, анимация прыжка игрока). Для загрузки такого файла я создаю новый тип TAnimation
Код:
TAnimation = record
  Anim: array of GLuint;
  FrameCount, CurrentFrame: Integer; // Кол-во кадров, текущий кадр
end;
И модифицирую процедуру для загрузки TGA изображений. У меня есть одна процедура, не я её писал, использовал готовую. Если нужно будет, то я могу привести код.

В принципе понятно, что и как происходит в этой процедуре.
Вопрос в том, как теперь разбить загруженную текстуру на несколько и каждую загрузить в свою переменную типа GLuint? Если в Canvas'e было CopyRect и ещё несколько полезных процедур, то как мне кажется в OpenGL всё обстоит куда сложней.
Единственное, что я могу сделать, так это изменить только передаваемые параметры в процедуру (добавить var Animation: TAnimation;, плюс в коде, в конце, установить размерность динамическому массиву изображений). Помогите с остальным. Спасибо.
Asker13 вне форума Ответить с цитированием
Старый 17.04.2011, 12:57   #2
.pixel
c++, dx/ogl
Форумчанин
 
Аватар для .pixel
 
Регистрация: 10.11.2008
Сообщений: 131
По умолчанию

Цитата:
мне кажется в OpenGL всё обстоит куда сложней.
нет, даже проще... можно выбору по текстурным координатам делать из общей текстуры (c анимацией спрайтов) например

пример TexCoordScroll
“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 вне форума Ответить с цитированием
Старый 17.04.2011, 13:10   #3
Asker13
Форумчанин
 
Аватар для Asker13
 
Регистрация: 01.12.2010
Сообщений: 140
По умолчанию

.pixel, спасибо.
В примере посмотрел функцию cGLSprite :: Draw, разобрался.
Asker13 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Загрузка текстур alexprey Мультимедиа в Delphi 0 21.03.2011 22:14
OpenGL - наложение текстур. Nater Общие вопросы Delphi 0 21.02.2011 20:14
[OpenGL, Delphi] Добавление текстур на грани куба newStudent Помощь студентам 0 03.12.2010 00:50
наложение текстур в OpenGL FJFray Мультимедиа в Delphi 1 23.10.2010 12:40
Наложение нескольких текстур в OpenGL Krechet Мультимедиа в Delphi 4 06.05.2010 15:30