Как вставить в игру большое изображение.

уроки, мануалы, советы по Construct 2

Сообщение Как вставить в игру большое изображение.
» 21 фев 2014, 14:42

Как всем (надеюсь wink:: ) известно, что С2 очень плохо переваривает спрайты размерами более чем 512х512. Но что делать, если вам нужно вставить изображение большего размера?
Для этого нужно разделить вашу картинку на фрагменты(тайлы) причем, желательно чтобы размер ваших фрагментов был кратен 2 (2,4,8,16,32,64,128,256,512) Но мельчить не стоит, думаю, что 128х128 или 256х256 самое оптимальное, хотя все зависит от величины исходной картинки.

Дальше. Открываем в фотошопе исходное изображение. Выбираем инструмент Slice tool, затем Правой Кнопкой Мыши по картинке, выбираем Divide Slice, там выставляем нужные размеры в пикселях, те самые 128х128 или 256х256. Тут же посмотрите сколько получилось частей по вертикале и горизонтали. Все картинку разделили. Теперь идем в File – Save for Web&Devices и сохраняем в png все части в отдельную папку.

Все, теперь открываем С2 и создаем новый спрайт, заходим в него. ПКМ нажимаем по окну Animation frames, выбираем import frames... и выделяем все наши части изображения. Импортируем. Если все сделали правильно, то части изображения должны добавится по порядку номеров. Не забудьте удалить пустой нулевой кадр! Дальше идем в настройки анимации и выставляем скорость на ноль. Все, закрываем, с этим закончили.

Дальше делаем вывод картинки при старте уровня. Пишем вот так:
Untitled-4.png


Красным выделил важные части, которые нужно изменить под ваш проект и ваше изображение. Например *4 это количество итераций внешнего цикла ("yy"), то есть количество фрагментов карты по высоте. Цикл "xx" это количество фрагментов по ширине. *32+50 первая цифра это размер ваших частей, те которые должны быть 128х128 или 256х256, вторя цифра это позиция вашей картинки на уровне, если это значение убрать, то верхний левый угол будет в нулевых координатах.

Вроде все. Если вдруг что не понятно смотрим исходник или задаем вопросы.

П.С. Не забывайте, что цикл должен сработать только один раз! При старте уровня или через Trigger once.
map.capx
(177.56 КБ) Скачиваний: 110
Изображение
Аватара пользователя

Игродел
Сообщений: 1070
Я тут с 14 сен 2012
Откуда: Красноярск
Репутация 127 [ ? ]

Сообщение Как вставить в игру большое изображение.
» 22 фев 2014, 17:52

Объясни, как работает loopindex.
Большое спасибо всем, кто пишет мне респекты в ЛС! Очень рад, что до сих пор мои советы, примеры и уроки пользуются спросом... Но, к сожалению, я уже давно не занимаюсь разработкой игр и программированием вообще, поэтому я уже не лучший советчик в этом деле, да и времени совсем нет. Здесь на форуме я уже практически не бываю, но всегда открыт для общения в ВК: vk.com/virusfun
Но хоть меня здесь почти нет, мне все равно будут приятны ваши отзывы и плюсы [+]
Аватара пользователя

Игродел
Сообщений: 893
Я тут с 23 сен 2012
Откуда: Хабаровск
Репутация 127 [ ? ]

Сообщение Как вставить в игру большое изображение.
» 22 фев 2014, 18:47

virusfun, пример for "i" от 1 до 1000
это значит что в один тик цикл переберет от одного до 1000
переменная для этого перебора loopindex
и еще пример
Изображение
и еще
Изображение
Game: Exzobot
ИзображениеИзображениеИзображение
Аватара пользователя
ab

Администратор
Сообщений: 772
Я тут с 06 сен 2012
Репутация 109 [ ? ]

Сообщение Как вставить в игру большое изображение.
» 24 фев 2014, 05:03

т.е. в твоем примере loopindex вернет 1000?
Большое спасибо всем, кто пишет мне респекты в ЛС! Очень рад, что до сих пор мои советы, примеры и уроки пользуются спросом... Но, к сожалению, я уже давно не занимаюсь разработкой игр и программированием вообще, поэтому я уже не лучший советчик в этом деле, да и времени совсем нет. Здесь на форуме я уже практически не бываю, но всегда открыт для общения в ВК: vk.com/virusfun
Но хоть меня здесь почти нет, мне все равно будут приятны ваши отзывы и плюсы [+]
Аватара пользователя

Игродел
Сообщений: 893
Я тут с 23 сен 2012
Откуда: Хабаровск
Репутация 127 [ ? ]

Сообщение Как вставить в игру большое изображение.
» 24 фев 2014, 06:38

он вернет по порядку 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19.... 995, 996, 997, 998, 999, 1000. переберет все значения за один тик времени = т. е это произойдет моментально.
Game: Exzobot
ИзображениеИзображениеИзображение
Аватара пользователя
ab

Администратор
Сообщений: 772
Я тут с 06 сен 2012
Репутация 109 [ ? ]

Сообщение Как вставить в игру большое изображение.
» 24 фев 2014, 07:20

ab, но за тик 1000 отнимут за тик 10 фпс и вернет в норме.
а если 10000 то 100 фпс упадет и зависнет за секунду)
и вернет в норме поэтому много не надо :scratch_one-s_head: :rofl:
Аватара пользователя

Участник
Сообщений: 1068
Я тут с 30 мар 2013
Репутация 41 [ ? ]

Сообщение Как вставить в игру большое изображение.
» 24 фев 2014, 08:42

GodSpear, поюзай плагины loopiterator и eventbalanser - немного выиграешь в производительности и проиграешь по времени
Game: Exzobot
ИзображениеИзображениеИзображение
Аватара пользователя
ab

Администратор
Сообщений: 772
Я тут с 06 сен 2012
Репутация 109 [ ? ]



Вернуться в Уроки по Construct 2

Сейчас эту тему просматривают

Зарегистрированные пользователи: нет зарегистрированных пользователей

Наверх