PDA

Просмотр полной версии : Вешалка())


D12
08.03.2004, 23:31
опять же про хит тест)

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

как с етим боротся и повысить бдительность хит теч.


P.S. очень прошу посмотрите на работу примера секунд 15 и тогда будет ясна моя проблема.

Jury
09.03.2004, 15:44
Такой хиттест здесь не прокатит!
Тебе нужно математическое определение коллизий, он на много практичнее. Вот исходничек/см.zip/, покапайся. Всё, что увидешь - это картинка, "стены" для коллизий - определены скриптом, тоесть я их не рисовал. В общем, думаю разберёшся!! Если чё мыль!

D12
09.03.2004, 22:51
ни обижайся конечно но мне от твоего ответа ни тепло ни холодно (

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



эх((( зарание приношу свои извинения если обидел.простите меня пожалуйста ...

Jury
10.03.2004, 19:23
Уважаемый D12, совершенству – предела нет! То, что вы хотите реализовать это мне не под силу!!!
Если сделаете сами или кто-то это сделает – дайте мне знать, очень хочется посмотреть!
Дело в том, что коллизии, встроенные во флэш, имеют определённые законы.
1.«Граничащие прямоугольники / Полный ‘кубизм’/ »
2.«Фильм – точка /Проникновение в клип до точки регистрации/»
3.«Описанные границы /getBouns, который вы использовали/»
4.«Фильм – фильм / Это математика с динамическим определением радиуса обьектов. Подходит в основном для круглых/почти круглых объектов/ »

Попробуйте что-то придумать, подойдите к этому вопросу не стандартно.
Помните первые компъютеры, картинка была нарисована крестиками, ноликами и ещё бог знает чем!
Кстати, вот ещё исходничек, сплошные кубики!!!

silin
10.03.2004, 20:50
никак хиттест не хочет в твоем раскладе по хорошему( хотя все вроде красиво задумано)
если нужно решение частного случая, то можно маяков (по наводке Штрека) напихать и все будет ОК

D12
10.03.2004, 23:23
Спасибо я вас тоже люблю , правла правда ))) очень очень)))


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

обещаю как только так сразу думаю в ближайшие деньки етой недельки)))


о вообще все делается ради етого прошу посмотрети файл разбит на две части иначе нелезет)))

первая часть)))

D12
10.03.2004, 23:25
второй кусочек)))

silin
10.03.2004, 23:50
раньше на форуме появлял один програмист он коллизию знал очень хорошо в основном даже его арконоид на флеше был построен также, приблезительно принцип задачи координатно обьектов я немного понимаю
:rolleyes: мощно сказано, от души...

D12
11.03.2004, 00:41
вообще зря смеешся )))
вот коечто из его арканойда)))

Допустим для шарика заданы координаты x,y. Ну и например
диаметр шарика d. Координаты кубика возьмем например x1, y1, его длина dx,
ширина dy. Зададим еще скорость шарика speed_x, speed_y.
Теперь
if ((x>(x1-dx))and(x<(x1+dx))and(y>(y1-dy))and(y<(y1+dy)))
{ if (x>(x1-dx+e))and(x<(x1+dx-e) { speed_y=-speed_y }
else if (y>(y1-dy+e))and(y<(y1+dy-e) { speed_x=-speed_x }
else { speed_x=-speed_x;
speed_y=-speed_y
}
}
где e - некоторая константа, равная максимально возможная скорость шарика плюс
1.

проверка производится для каждой пары (x1,y1),
(x2,y2), ..., (xn,yn) (где n-количество кубиков).


только незная что к чему и как у меня неполучается создать что ли бо подобное на примере.


а что касается старых игр (было дело увлекался и етим)

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