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

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.03.2011, 13:58
DaFive вне форума Посмотреть профиль Отправить личное сообщение для DaFive Посетить домашнюю страницу DaFive Найти все сообщения от DaFive
  № 11  
Ответить с цитированием
DaFive
 
Аватар для DaFive

Регистрация: May 2008
Адрес: {0,0}
Сообщений: 754
Записей в блоге: 1
Отправить сообщение для DaFive с помощью ICQ
Цитата:
Сообщение от goodguy Посмотреть сообщение
Ну и убогая же графика получится. Я бы лучше использовал 2 битмапки, одну поверх другой, одну для фона, другую для препятствий. Та, что с препятствиями, содержит альфа канал. Естественно, препятствия будут не прозрачным, значит если уровень альфа канала > 0 - объект натолкнулся на препятствие.
Я это и имел в виду. Под низом битмапа с цветами, сверху нужная карта (красивенькая).
__________________
Кодинг, багинг, алгоритминг. me @

Старый 22.03.2011, 20:43
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 12  
Ответить с цитированием
goodguy
Banned
[+1 05.11.11]
[+1 09.08.11]

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
А по-моему совсем не это:
Цитата:
Рисуйте дорогу одним цветом, место где нельзя перемещаться - другим. Препятствия третьим. getPixel() по цвету определит что где находится. А если препятствия создаются динамически и всегда разные - можно хиттестом попробовать или постоянно перерисовывать битмап.

Старый 22.03.2011, 21:05
medvedya2 вне форума Посмотреть профиль Отправить личное сообщение для medvedya2 Найти все сообщения от medvedya2
  № 13  
Ответить с цитированием
medvedya2
[+1 09.03.11]

Регистрация: Mar 2010
Сообщений: 128
По-моему использовать getPixel() для коллизий извращение, а темболие для гонок.
Я обычно в таких случаях заключаю объекты в многоугольники, и коллизию определяю через математику.
http://ru.wikipedia.org/wiki/Алгорит...многоугольнике
Код AS3:
	public function inPoint(x1:int,y1:int):Boolean
		{
			var npol:int = xp.length;
			var j:int = npol - 1;
			var c:Boolean=false;;
			var i:int;
			for (i = 0; i < npol;i++){
				if ((((yp[i]<=y1) && (y1<yp[j])) || ((yp[j]<=y1) && (y1<yp[i]))) &&
					(x1 > (xp[j] - xp[i]) * (y1 - yp[i]) / (yp[j] - yp[i]) + xp[i])) {
					c = !c
				}
				j = i;
			}
			return c;
		}
по аналогии можно найти пересечение двух многоугольников, нужно проверить все точки первого многоугольника с вторым и второго с первым. Правда для гонок такой способ плохо, нужно наверно определять углы чтоб сделать физику.
__________________
for(;;);

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

Теги
bitmapdata , hittest
Опции темы
Опции просмотра

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

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


 


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


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