BitmapData и hitTest. Не удается заставить ехать машину по дороге
Вложений: 1
Привет. Вот возникла задача заставить ехать машину по нарисованной дороге. Т.е. есть у меня клип road и car. Car движется с помощью клавиш стрелочек.
Делал так: Код AS3:
а сама функция runGame Код AS3:
вроде б же все правильно? а мне трейс всегда показывает "on the road" , даже если я вне дороги, прикрепил примерчик на всякий случай. Подскажите в чем проблема? |
Не самый лучший способ определять дорогу. hitTest - довольно ресурсоемкий метод. Если бы я делал что-то подобное, и у меня дорога отличалась от всего остального, то я бы заюзал getPixel(); Будет работать в разы быстрее и лучше.
Собственно, уже доводилось делать определение воды на карте таким образом, и дорогу как-то раз определал. Но дорога у меня была нарисована на битмапке с альфа каналом, и была простая проверка, если альфа полученного пикселя != 0, то машина на дороге |
Понял, спасибо, попробую с getPixel
Добавлено через 1 час 47 минут А если мне придется в будущем добавлять препятсвия с ними столкновение, как я понимаю, только с помощью hitTest получится сделать, да? Там же может быть неоднородная заливка и т.п. .. |
Цитата:
|
Ясно, спасибо
|
Цитата:
Есть другой вариант, определять диапазон цветов, вместо конкретного цвета. Вот так у меня в игре определялась вода: Код AS3:
|
Вложений: 1
С наложением битмопов - по-моему отличная идея. Но что-то у меня пока даже самый простой способ так и не заработал :(
Вот у меня road (мувик с трассой) стоит в x:0, y:0. А car - крутится в разные стороны клавишами. Отсчет координат идет у машинки от левого верхнего угла. Ну вот хотя бы по нему и пробую определить цвет фона, т.е. делаю так: Код AS3:
Код AS3:
Код AS3:
Прикрепил пример, если кто захочет глянуть ... |
вроде б понял, там у клипа road scale стоял, вот такая глупая ошибка получилась
|
Зачем нужет вот этот код?
Код AS3:
|
а как проще получить битмап road?
Добавлено через 6 минут Еще возник вопрос, может goodguy или кто другой подскажите? У меня карта максимум может быть 4000 пикселей, да? А если надо больше, то придется кусками атачить, правильно я понял? |
Часовой пояс GMT +4, время: 19:48. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.