|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Jul 2007
Сообщений: 102
|
Отталкивание шаров внутри окружности и столковение
Здравия всем
Вот вопрос такой возник, как сделать такую штуку как в этом примере: http://www.flasher.ru/forum/attachme...8&d=1197719724 Исходничек может есть у кого, буду рад, или просто советам. Вот ещё второй вопросик про столкновения есть, смотрел на форуме на эту тему, ничего дельного не нашёл, возможно ли без сторонних классов проверить более-менее точно столкновение 2 мувиков (шаров, в данном случае пушка которая стреляет шарами и шары-"жертвы" ), можно было обойтись хиттестом, но он пропускает столкновения иногда, думаю потому что пуля летит слишком быстро... советовали безьер.ру, но мне в нем сложно, вот решил спросить может кто всё-таки поможет Спасибо |
|
|||||
[+1 30.11.09]
Регистрация: Oct 2008
Сообщений: 25
|
|
|
|||||
Регистрация: Jul 2007
Сообщений: 102
|
nextand, спасибо, хотя мне нужно было несколько другое (нужно было шар с шаром). Отталкивание шаров, его я уже сделал, по пифагору. А вот примерчик вот такой очень нужен - http://www.flasher.ru/forum/attachme...8&d=1197719724
Прошу помощи!! |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
Как в геометрии решать задачу:
Переносим центр координат в центр большого шара. Если расстояние от 0 до маленького шара плюс радиус маленького шара больше или равен радиусу большого шара - было столкновение.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
Регистрация: Jul 2007
Сообщений: 102
|
Спасибо Психотирг, жаль я плохо учил геометрию в школе, поэтому мало соображаю как имеено делать Если кто-то сможет конкретнее рассказать или найдет исходничек я по-прежнему буду рад
http://woweb.ru/dir/6-6-10 - вот кстати тут внизу есть пример того, что мне надо, но я не могу оптимизировать код под AS2, там на AS написано... |
|
|||||
[+1 30.11.09]
Регистрация: Oct 2008
Сообщений: 25
|
http://narod.ru/disk/10425928000/cir...rcle1.fla.html
http://narod.ru/disk/10425987000/cir...rcle2.fla.html Вот варианты с круг и круг. там просто в примере он выводит в трейс что столкновение произошло, а вы в этой функции просто пропишите вместо трейса изменение ускорения на противоположное или по формуле угол падения равен углу отражения. вот и будет у вас один шар внутри другого перемещаться. можно еще записать формулу что при столкновении скорость будет a-1например при а=10. тогда постепенно остановиться. можно еще дать пример столкновения круга с точкой. http://narod.ru/disk/10426189000/point_circle.fla.html Это как раз то очем писал Psycho Tiger Насчет hitTest у Вас все верно написано. Он рассчитывается в каждом кадре. если пуля в предыдущем кадре еще не долетела а в следующем уже перелетела, то столкновения как бы не было. =) Последний раз редактировалось nextand; 30.06.2009 в 10:59. |
|
|||||
блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
|
nextand, не с точкой.
Если расстояние от 0 до маленького шара плюс радиус маленького шара больше или равен радиусу большого шара - было столкновение. Без выделенного жирного - было бы с точкой.
__________________
Тут мужик танцует и поёт про флэш |
|
|||||
[+1 30.11.09]
Регистрация: Oct 2008
Сообщений: 25
|
да все верно это круг конечно. =) только маленький и столкновение в примере рассчитывается как вы и сказали. =)
|
|
|||||
Регистрация: Jul 2007
Сообщений: 102
|
поставил во втором примере отталкивание в противоположную сторону - получилась какая-то хрень (см. аттач)
Ребят, можете поправить исходник на так как мне надо, как я понял там немного совсем, а я вообще не шарю в теме Вроде как столкновение должно быть только с краями окружности, а не со всем ее нутром как в примерах, или я не понимаю чего... |
|
|||||
[+1 30.11.09]
Регистрация: Oct 2008
Сообщений: 25
|
скажите пожалуйста а мне нужно ваш свф вскрыть, чтобы посмотреть как вы там что поменяли?
и еще в математике функция пересечения двух объектов всегда имеет 2 значаения. например точка проходит через квадрат. первым решением будет начальное стокновение а вторым точка выхода из квадрата. по эффекту вашего примера я вижу что вы считывайте второй результат. но всеравно исходник нужен. Последний раз редактировалось nextand; 30.06.2009 в 15:58. |
Часовой пояс GMT +4, время: 09:43. |
|
« Предыдущая тема | Следующая тема » |
|
|