Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Скроллинг карты в игре (http://www.flasher.ru/forum/showthread.php?t=69062)

Silense 12.09.2005 20:54

Скроллинг карты в игре
 
Привет всем!
Вот и мне понадобилась помощь=)
Есть изометрическая карта(она же 2,5-мерная) по типу карты
того же Diablo или Fallout ну или то же Red Alert2..На карте давольно большое количество объектов. Карта представлена в виде картинки, на которую и наложены объекты. Как лучше организовать скроллинг карты вместе с объектами?(целиком на экран не лезет) Может кто-нибудь сталкивался с подобным, хотелось бы узнать существует ли какой-нибудь оптимальный вариант или за это вообще браться не стоит т.к. будет неимоверно тормозить, а придумать что-нибудь попроще?..

Silense 13.09.2005 12:17

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

Silense 13.09.2005 12:25

Придумал пока что несколько способов...
1. перерисовывать все объекты на новом месте, т.е. со сдвигом, и оновременно двигать саму карту, но я уверен что тут будут тормоза.. если бы 1-2 объекта перерисовать то еще нечего,а вот если 200-500-1000... то уже не катит

2. Разбить карту на области, и отображать не всю карту целиком, а просто подгружать соответствующую область вместо старой.

3.Было бы неплохо если бы можно было сделать что-то типа программного принт-скрина, т.е. слить карту и неподвижные объекты на ней в одно целое. Тогда бы проблема с тормозами исчезла, и неподвижные объекты типа зданий и деревьев двигались бы скроллом 1 картинки. А поверх бы уже можно было наложить движущиеся объекты.

Да и вообще можно ли организовать слитие скажем 20 мувиков в 1 мувик?

Silense 13.09.2005 19:24

Мдя.. ответов-море..=)И все до ужаса информативные. Ну ниче, продолжим беседу..=)
Судя по всему никто ниче не знает..
Вообщем первый вариант решения отпал, за него браться даже не стоит. Нашел тут как раз по теме скроллинга http://www.tonypa.pri.ee/tbw/start.html, в подверждение моим домыслам..
Похоже что придется остановиться на втором варианте ввиду невозможности реализации остальных(первый способ конечно можно реализовать но для мизерного числа объектов)..

Samodelkin 13.09.2005 19:40

Вообще флешка отрисовывает относительно быстро...
долго с данными возится
граффик есть на 100000 значений рисуется секунды за 2-3, медленно?
мне 3 вариант нравится :) нереально однако хотя ...
про градиент можно вообще забыть а тогда какое ж 2.5?

Silense 13.09.2005 20:47

Согласен, отрисовывает довольно быстро. Скажем отрисовать 10 кустиков это пустяки, но вот орисовать 100-200-n ячеек, в каждой из которых по 5 параметров, и в некотрых разные объекты будет уже проблематичнее..а при этом некоторые объекты еще и движутся.. да даже если бы за секунду все это отрисовывалось то в лучшем случае я бы получил достаточно шустрое слайдшоу =)
3 вариант мне тоже очень нравится, но боюсь с его реализацией выйдут проблемы%)..

А вот причем тут градиент я четно говоря не понял.=)Всмысле тормоза будут? они и так будут, и без градиента:))

7thsky™ 13.09.2005 22:41

flash8, cacheAsBitmap, BitMap class и т.д. на 7 будет тормозить, на 8 есть вероятность что все будет шустрее быстрее и т.д. потом еще все зависит от того какое у тебя поле, клеточное или нет и т.д.

Silense 14.09.2005 00:26

Хз..сомневаюсь я что 8-ка поможет, но все же будем надеяться. Лучше бы проц разгрузили через плеер, больше возможностей бы повилось..=)А то все процессором обрабатывать конечно тормоза будут..

amphetamine 14.09.2005 01:17

могу тебе предложить разкомпилить flash из онлайн игры на
www.timezero.ru - если найдешьв куче кода, там подобны скролиг сделан без тормозов и прекрасно работает

Silense 14.09.2005 02:30

Можно попробовать, вдруг че и пригодится=). Но там вроде бы объектов не так уж и много.. Хм, спасибо, гляну.


Часовой пояс GMT +4, время: 10:15.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.