Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему  
Старый 19.07.2004, 03:26
NDG вне форума Посмотреть профиль Отправить личное сообщение для NDG Найти все сообщения от NDG
  № 1  
NDG
 
Аватар для NDG

Регистрация: Jun 2004
Адрес: Kiev
Сообщений: 51
Attention Как написать прогу прохода мувиклипа по лабиринту?

Есть мувиклип с лабиринтом (с препятствиями) и нужно добраться от одной точки до второй кратчайшим путем (кто играл в стратегии поймет, выбираешь юнит и назначаешь точку куда нада прийти, а он сам знает как пройти обходя горы и т.д., и т.п.)
Возможно у Вас есть какието наработки в этом вопросе, ато я даже не знаю с чего начать.

Старый 19.07.2004, 10:54
aaanet вне форума Посмотреть профиль Отправить личное сообщение для aaanet Найти все сообщения от aaanet
  № 2  
aaanet
 
Аватар для aaanet

Регистрация: Nov 2003
Сообщений: 474
Отправить сообщение для aaanet с помощью ICQ
мне кажется что решение этой задачи можно найти в if

Старый 19.07.2004, 13:59
Iv вне форума Посмотреть профиль Отправить личное сообщение для Iv Посетить домашнюю страницу Iv Найти все сообщения от Iv
  № 3  
Iv
 
Аватар для Iv

Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
есть различные алгоритмы поиска пути.
поищи в яндексе по словам "волновой алгоритм", "алгоритм поиска пути"
начитаешься на год вперед %)

Старый 19.07.2004, 14:11
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 4  
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
во флэше всегда надо искать частное решение для таких глобальных задач. алгоритм поиска пути - одна из главных тем в программировании игр, как например и алгоритм опредения столкновений. не надо тут наворачивать общее решение, мне кажется...

я пробовал реализовать общий алгоритм нахождения пути по лабиринту представленному матрицей со взвешенными ячейками (т.е. несколько видов поверхностей, передвижение по которым стоит по-разному). использовал алгоритм А*. вобщем-то получилось, но довольно ресурсоёмко.. :)


Последний раз редактировалось Nox Noctis; 19.07.2004 в 14:39.
Старый 19.07.2004, 18:49
NDG вне форума Посмотреть профиль Отправить личное сообщение для NDG Найти все сообщения от NDG
  № 5  
NDG
 
Аватар для NDG

Регистрация: Jun 2004
Адрес: Kiev
Сообщений: 51
......а можно как нибудь применимо к экшин скрипт, я алгоритм приблизительно понимаю, но вот как это сделать именно во флэшке. подозреваю что тут не обойтись без hitTest, getBounds... но как было замечено выше данный алгоритм ресурсы будет жрать ой-е-ей, а в моей задаче в добавок ко всему конечная точка пути будет меняться очень часто (я писал ожнажды програму обхода конем шахматной доски, так поле 8 на 8 конь обходил приблизительно за 30 сек но если я ставил значения доски на несколько едениц больше то время росло в геометрической прогресии т.е. нужно было на порядок больше времени 5 мин и более), но в игрушках же юниты не думают как пойти но 5 мин, при перемещении толпы юнитов не возникает ни малейших признаков торможения, почему??? и если среди Вас есть программеры которые знают как решить эту задачу плз помогите!!!

Старый 19.07.2004, 18:57
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 6  
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
Цитата:
Оригинал написал(а) NDG
(я писал ожнажды програму обхода конем шахматной доски, так поле 8 на 8 конь обходил приблизительно за 30 сек но если я ставил значения доски на несколько едениц больше то время росло в геометрической прогресии т.е. нужно было на порядок больше времени 5 мин и более)
значит плохо писал. ОЧЕНЬ плохо :)

а алгоритм тебе никто на АС не изложит... или ищи исходники - некоторые выкладывают такие, сам видел.

тут нужно точно знать что у тебя за задача, в каком виде лучше всего представить поле, и т д... и придумать частное решение, которое будет оптимально по времени и ресурсоёмкости.

Старый 19.07.2004, 19:01
Iv вне форума Посмотреть профиль Отправить личное сообщение для Iv Посетить домашнюю страницу Iv Найти все сообщения от Iv
  № 7  
Iv
 
Аватар для Iv

Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
илья делал - вроде алгоритм высосали до упора.

Старый 19.07.2004, 21:36
NDG вне форума Посмотреть профиль Отправить личное сообщение для NDG Найти все сообщения от NDG
  № 8  
NDG
 
Аватар для NDG

Регистрация: Jun 2004
Адрес: Kiev
Сообщений: 51
2 BitSky спасиба посмотрю!!

2 Nox Noctis да не хочеться мне частного решения, я хочу нарисовать карту прямоугольниками и кругами, и чтоб бегали юниты обходя препятствия, я тут частного решения никакого придумать не могу. Есть идея разбить всю карту на квадраты, каждому квадрату соответствует ячейка матрицы, если есть стена в данном квадрате то ставим 0 если нет то 1 и дальше с матрицами работать О! аналог этой проги - Lines, была раньше такая игрулина, шарики перемещать нада было и линии из них складывать. может ее алгоритм мне получиться придумать.
....а вобще я хочу написать чтото вроде лабиринта с соперниками, как в примерах для Флэш МИкс 2004 но только там путь противника сделан как стационарный т.е. есть Guide линия по которой движеться противник - это не интерестно!!! а я хочу чтоб любой юзер мог нарисовать себе/другу лабиринт и соревноваться с противником и чтоб комп сам мозг попарил как же добраться до финальной точки.

з.ы. насчет плохо писал - я же не сказал что у меня было 4ГГц проц =), - была 486 и Си++.....

Старый 20.07.2004, 00:43
Nox Noctis вне форума Посмотреть профиль Отправить личное сообщение для Nox Noctis Посетить домашнюю страницу Nox Noctis Найти все сообщения от Nox Noctis
  № 9  
Nox Noctis
don't panic!
 
Аватар для Nox Noctis

Регистрация: Aug 2001
Сообщений: 4,121
Цитата:
если есть стена в данном квадрате то ставим 0 если нет то 1 и дальше с матрицами работать О!
блин. да так обычно и делают... только зачастую еще есть градации не только ноль и один (проходимо-непроходимо) но еще и разные стоимости прохода по данной ячейке (например асфальт, трава, песок, и т д... все это разные числа-стоимости)

ну правда, прочитай про алгоритм А*... поймёшь что именно нужно тебе. реализовывать его в чистом виде не рекомендую (лично я. а я запросто могу быть не прав.)

завтра посмтрю ссылки на тему этого алгоритма..
собсно главная проблема в эвристической функции - там можно напридупмать всего чего хочешь. и в зависимости от конкретного случая добиться удобоваримого результата.

Старый 21.07.2004, 17:22
NDG вне форума Посмотреть профиль Отправить личное сообщение для NDG Найти все сообщения от NDG
  № 10  
NDG
 
Аватар для NDG

Регистрация: Jun 2004
Адрес: Kiev
Сообщений: 51
.....так что там со ссылками на алгоритм???
__________________
Если эта надпись уменьшается - ваш монитор уносят!

Создать новую тему   Часовой пояс GMT +4, время: 12:07.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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