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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 29.06.2009, 21:33
artemst вне форума Посмотреть профиль Отправить личное сообщение для artemst Найти все сообщения от artemst
  № 1  
Ответить с цитированием
artemst

Регистрация: Jul 2007
Сообщений: 102
Question Отталкивание шаров внутри окружности и столковение

Здравия всем
Вот вопрос такой возник, как сделать такую штуку как в этом примере: http://www.flasher.ru/forum/attachme...8&d=1197719724
Исходничек может есть у кого, буду рад, или просто советам.
Вот ещё второй вопросик про столкновения есть, смотрел на форуме на эту тему, ничего дельного не нашёл, возможно ли без сторонних классов проверить более-менее точно столкновение 2 мувиков (шаров, в данном случае пушка которая стреляет шарами и шары-"жертвы" ), можно было обойтись хиттестом, но он пропускает столкновения иногда, думаю потому что пуля летит слишком быстро... советовали безьер.ру, но мне в нем сложно, вот решил спросить может кто всё-таки поможет
Спасибо

Старый 29.06.2009, 23:38
nextand вне форума Посмотреть профиль Отправить личное сообщение для nextand Найти все сообщения от nextand
  № 2  
Ответить с цитированием
nextand
[+1 30.11.09]

Регистрация: Oct 2008
Сообщений: 25
http://narod.ru/disk/10413388000/poi...angle.fla.html

Вот, тут можно посмотреть.

Старый 30.06.2009, 00:01
artemst вне форума Посмотреть профиль Отправить личное сообщение для artemst Найти все сообщения от artemst
  № 3  
Ответить с цитированием
artemst

Регистрация: Jul 2007
Сообщений: 102
nextand, спасибо, хотя мне нужно было несколько другое (нужно было шар с шаром). Отталкивание шаров, его я уже сделал, по пифагору. А вот примерчик вот такой очень нужен - http://www.flasher.ru/forum/attachme...8&d=1197719724
Прошу помощи!!

Старый 30.06.2009, 00:18
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 4  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Как в геометрии решать задачу:
Переносим центр координат в центр большого шара.
Если расстояние от 0 до маленького шара плюс радиус маленького шара больше или равен радиусу большого шара - было столкновение.

Старый 30.06.2009, 03:28
artemst вне форума Посмотреть профиль Отправить личное сообщение для artemst Найти все сообщения от artemst
  № 5  
Ответить с цитированием
artemst

Регистрация: Jul 2007
Сообщений: 102
Спасибо Психотирг, жаль я плохо учил геометрию в школе, поэтому мало соображаю как имеено делать Если кто-то сможет конкретнее рассказать или найдет исходничек я по-прежнему буду рад
http://woweb.ru/dir/6-6-10 - вот кстати тут внизу есть пример того, что мне надо, но я не могу оптимизировать код под AS2, там на AS написано...

Старый 30.06.2009, 10:53
nextand вне форума Посмотреть профиль Отправить личное сообщение для nextand Найти все сообщения от nextand
  № 6  
Ответить с цитированием
nextand
[+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.
Старый 30.06.2009, 11:41
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 7  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
nextand, не с точкой.
Если расстояние от 0 до маленького шара плюс радиус маленького шара больше или равен радиусу большого шара - было столкновение.
Без выделенного жирного - было бы с точкой.

Старый 30.06.2009, 12:10
nextand вне форума Посмотреть профиль Отправить личное сообщение для nextand Найти все сообщения от nextand
  № 8  
Ответить с цитированием
nextand
[+1 30.11.09]

Регистрация: Oct 2008
Сообщений: 25
да все верно это круг конечно. =) только маленький и столкновение в примере рассчитывается как вы и сказали. =)

Старый 30.06.2009, 15:52
artemst вне форума Посмотреть профиль Отправить личное сообщение для artemst Найти все сообщения от artemst
  № 9  
Ответить с цитированием
artemst

Регистрация: Jul 2007
Сообщений: 102
поставил во втором примере отталкивание в противоположную сторону - получилась какая-то хрень (см. аттач)
Ребят, можете поправить исходник на так как мне надо, как я понял там немного совсем, а я вообще не шарю в теме Вроде как столкновение должно быть только с краями окружности, а не со всем ее нутром как в примерах, или я не понимаю чего...
Вложения
Тип файла: rar circle2.rar (1.2 Кб, 58 просмотров)

Старый 30.06.2009, 15:55
nextand вне форума Посмотреть профиль Отправить личное сообщение для nextand Найти все сообщения от nextand
  № 10  
Ответить с цитированием
nextand
[+1 30.11.09]

Регистрация: Oct 2008
Сообщений: 25
скажите пожалуйста а мне нужно ваш свф вскрыть, чтобы посмотреть как вы там что поменяли?
и еще в математике функция пересечения двух объектов всегда имеет 2 значаения. например точка проходит через квадрат. первым решением будет начальное стокновение а вторым точка выхода из квадрата. по эффекту вашего примера я вижу что вы считывайте второй результат. но всеравно исходник нужен.


Последний раз редактировалось nextand; 30.06.2009 в 15:58.
Создать новую тему Ответ Часовой пояс GMT +4, время: 09:43.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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