|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: May 2009
Сообщений: 45
|
HitTest для дублированных мувиклипов
Здравствуйте!
Недавно столкнулась с проблемой, которую не смогла решить. Мне очень нужно осуществить реализацию, при этом задействовав не много ресурсов компьютера, чтобы не нагружать процессор. Пожалуйста, кто может - помогите. Дело вот в чем: В сцене есть много машинок, все они были получены посредством duplicateMovieClip. Каждому новому экземпляру машины присваивается instance name в виде car+i, где i - цифра, увеличенная на единицу после каждого дублирования. Нужно осуществить взаимодействие машинок методом hitTest. То есть если одна машина врезается в другую, (любая машина в любую другую) - происходит что-то. При этом не хочется обходить все экземпляры машин посредством: for (var i=0; i<количество машин; i++) {} чтобы не нагружать процессор, ибо машин может быть до 300... Пожалуйста, подскажите как можно реализовать то, что мне нужно. Большое спасибо за Ваше внимание! |
|
|||||
Модрон-ветеринар
|
300 - это не так уж много. Сложность в том, чтобы делать этот обход ежесекундно, если событие, при котором следует сделать проверку, не определено, то есть если отслеживать надо непрерывно.
Пока неясно. Слушателей вешать на каждый мувик, но насколько нагрузит процессор такое количество, надо тестировать... |
|
|||||
Регистрация: May 2009
Сообщений: 45
|
Да, вот в том то и дело. Даже не ежесекундно, а 40 раз в секунду, если fps стоит 40, как в данном случае.
|
|
|||||
Модрон-ветеринар
|
Уточните, то есть все 300 машин сейчас у вас двигаются одновременно, при 40 fps, и ничего у вас не тормозит, всё вас устраивает?
Upd: увидел, что вы написали - может быть до 300. Сделайте и посмотрите, как это будет выглядеть и можно уже и о отслеживании столкновений думать. Upd2: Я еще, конечно, имею небольшой стаж в программировании на AS, но.. если рассуждать строго, нам нужно 40 раз в секунду отслеживать возможность 300 x 300 = 90 000 событий... Задачка.. Последний раз редактировалось mooncar; 06.05.2009 в 02:41. |
|
|||||
Регистрация: May 2009
Сообщений: 45
|
нет. одновременно на сцене находится до 5 машин. Все машины, которые выходят за пределы документа удаляются. Но идентификаторы то продолжают расти. Таким образом, на сцене могут находится машины с именем car326 или car 143...
|
|
|||||
1) Все, машинки заносим в массив.
2) Удаляем машинку из массива, когда она за экраном. 3) Делаем проверку hitTest через массив. 4) Добавляем машинку в массив, когда она на экране. 5) Изучаем, работу с массивом.
__________________
Книги и желание лучшие учителя. |
Часовой пояс GMT +4, время: 02:25. |
|
« Предыдущая тема | Следующая тема » |
Теги |
duplicateMovieClip , hittest |
|
|