Загрузка анимации для меню.

SFML и C++ Уроки \ Разработка игр Форумы SFML Graphics Загрузка анимации для меню.

Помечено: ,

В этой теме 9 ответов, 3 участника, последнее обновление  Bronks 8 года/лет, 3 мес. назад.

Просмотр 10 сообщений - с 1 по 10 (из 10 всего)
  • Автор
    Сообщения
  • #2710

    Bronks
    Участник
    Сообщений:5

    Зарегистрирован:
    10.01.2016

    Репутация:2

    Здравствуйте, меня интересует вот такой вопрос: имеется 70 кадров анимации для меню. Как их лучше загрузить и проиграть?

    #2711
    Павел Букреев
    Павел Букреев
    Хранитель
    Сообщений:582

    Зарегистрирован:
    04.01.2015

    Репутация:106

    Можно анимацию для каждого элемента меню хранить в строке таблицы тайлсета и проигрывать соответственно пробегая по строке. как в уроке 7 , когда проигрывали анимацию ходьбы игрока.

    #2712

    Bronks
    Участник
    Сообщений:5

    Зарегистрирован:
    10.01.2016

    Репутация:2

    Боюсь это не сработает, так как анимация отредерена как отдельные картинки в разрешение 720p.

    #2714

    Bronks
    Участник
    Сообщений:5

    Зарегистрирован:
    10.01.2016

    Репутация:2

    Как я сделал сейчас:

    А это код отрисовки:

    Но загружать каждый раз изображение как-то не очень, ведь я прав? Нужно это оптимизировать…

    Как вариант: сперва загрузить всё в динамический массив, а потом уже покадрово отрисовывать всё.

    #2716
    +1
    Heisenberg
    Heisenberg
    Участник
    Сообщений:320

    Зарегистрирован:
    01.04.2015

    Репутация:146

    Попробуй использовать вот такой способ.

    #2717

    Bronks
    Участник
    Сообщений:5

    Зарегистрирован:
    10.01.2016

    Репутация:2

    Большое спасибо, Heisenberg!

    #2718
    +1
    Heisenberg
    Heisenberg
    Участник
    Сообщений:320

    Зарегистрирован:
    01.04.2015

    Репутация:146

    Палец вверх лучшее спасибо)

    #2719

    Bronks
    Участник
    Сообщений:5

    Зарегистрирован:
    10.01.2016

    Репутация:2

    Есть еще один вопрос. Как можно ускорить ваш код, Heisenberg?
    Имеется всего 155 картинок с анимацией, но уж больно долго они подгружаются. Может конечно потому что внутри конструктора, а не чисто в DrawMenu. Есть идеи по ускорению загрузки? Может быть попробовать несколько потоков?

    #2720
    +2
    Heisenberg
    Heisenberg
    Участник
    Сообщений:320

    Зарегистрирован:
    01.04.2015

    Репутация:146

    Нет от того что загрузка происходит в конструкторе ничего не меняет.
    Просто у вас текстуры не маленькие и их количество тоже не пара штук.

    Для этого реализуют загрузку внутри игрового процесса.
    Загружают текстуры и звуки по ситуации, то есть те, которые будут использоваться в данном уровне, или к примеру в главном меню.
    Многопоточность должна ускорить загрузку, но с ней я вам не могу помочь.

    #2721
    +2

    Bronks
    Участник
    Сообщений:5

    Зарегистрирован:
    10.01.2016

    Репутация:2

    Heisenberg, собственно проблему я решил иначе. Раньше я рендерил image sequence в .png, а теперь в .jpeg. Вес уменьшился в 10 раз (раньше каждая по ~700-800 весила, теперь ~70-80).

    В общем большое спасибо за помощь, потом, возможно, попробую с потоками.

Просмотр 10 сообщений - с 1 по 10 (из 10 всего)

Для ответа в этой теме необходимо авторизоваться.