PDA

Просмотр полной версии : Правильная организация скроллинга


Vansimar
10.10.2011, 21:32
Вот собираюсь писать новую игру,и обдумываю детали ее..остановился на скроллинге,вот в игре будут длинные уровни,раз в 13 превышающие сцену по длине, и таких уровней будет много. Ну так вопрос в следущем,как лучше сделать прокрутку,с инициализацие каждого уровня добавлять всю эту длинную ленту,потом смещать ее относительно персонажа,но мне кажется это будет очень сильно загружать флешку.. Есть еще какие нибудь способы?

botbot
10.10.2011, 21:35
У клипа есть свойство scrollRect. Оно может служить "экраном", через который будет видно нужную часть игрового мира.

Vansimar
10.10.2011, 21:48
Но получается также придется добавлять весь уровень на сцену?так?

botbot
10.10.2011, 21:51
Верно. Зато 1 раз. А не постоянно добавлять/убирать объекты, что будет наверно затратнее. Хотя если уровень нереально большой то динамически добавлять/удалять, да. Но тут уже самому надо всё писать, ручками.

Vansimar
10.10.2011, 21:55
а какая разница между scrollRect и если я добавлю весь свой ландшафт на сцену,а потом в ENTER_FRAME смещать его относительно персонажа?

botbot
10.10.2011, 21:58
scrollRect работает быстрее твоего кода, она специально для таких случаев сделана. Кроме ландшафта надо смещать так же ботов и др. игровые объекты. А со scrollRect будешь двигать просто перса относительно мира и рамку. Считай scrollRect это камера.

Vansimar
10.10.2011, 22:02
Да)все разобрался)и правда удобней!большое спасибо!

Добавлено через 1 час 3 минуты
а где можно почитать про scrollRect кроме адобовского хелпа? может есть ссылка на какой нибудь исходник?

Parez
11.10.2011, 00:34
Раз уж зашла речь о scrollRect, спрошу: есть ли разница в скорости работы между использованием свойства scrollRect и банальным наложением маски на объект DisplayObject с последующим перемещением по XY самого объекта?

Vansimar
11.10.2011, 00:38
на эту тему вроде тут можно почитать http://murejib.com/2007/12/09/scrollrect-vs-setmask/

Добавлено через 2 минуты
а вот тут о scrollRect'е http://murejib.com/2008/04/24/scrollrect-2/

botbot
11.10.2011, 14:28
Раз уж зашла речь о scrollRect, спрошу: есть ли разница в скорости работы между использованием свойства scrollRect и банальным наложением маски на объект DisplayObject с последующим перемещением по XY самого объекта?
Маска медленнее. ScrollRect специально оптимизирован под показ "куска цены", на уровне самого плеера.