![]() |
|
||||||||||
|
|||||
|
Регистрация: Nov 2012
Сообщений: 55
|
Привет всем. Я хотел бы сделать стрельбу из пушки, чтобы ядро летело по параболической траектории, так как на картинке, помогите с формулой, что-то ничего в голову не лезит.
Последний раз редактировалось lammer.Ok; 17.11.2012 в 20:42. |
|
|||||
|
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
|
var gravity = 2; var bullet = container.attachMovie(...) bullet.vx = 10; bullet.vy = -10; ... bullet.vy += gravity; bullet._x += bullet.vx; bullet._y += bullet.vy; ![]()
__________________
hauts.ru |
|
|||||
|
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
|
Хм. Ок.
Даны параметры: x - координата x выстрела y - координата y выстрела speed - начальная скорость снаряда angle - угол выстрела в радианах gravity - сила гравитации Исходя из этого, рассчитываем компоненты вектора движения: vx = speed * Math.cos(angle) vy = speed * Math.sin(angle) Где vx и vy - это, грубо говоря, насколько мы будем сдвигать снаряд при каждом обновлении его положения без учета гравитации. Теперь к действиям. Создаем снаряд, мувиклип. Устанавливаем ему положение в x и y. Записываем ему его vx и vy. Потом, в методе обновления положения снаряда, при каждом обновлении, прибавляем к его координатам его vx и vy. Если вспомнить физику и пренебречь сопротивлением воздуха, то остается только "подправлять" vy с учетом гравитации.
__________________
hauts.ru |
|
|||||
|
Регистрация: Nov 2012
Сообщений: 55
|
Hauts, спасибо. Но эти элементарные вещи я и сам знаю. Просто хочу реализовать стрельбу такую как в этой игре http://www.vipigry.ru/flash/ognennaya-zombuka-2, видно, что там стрельба немного иначе реализована, возможно используется механика, по-этому если не трудно можете ещё пару вариантов подкинуть)
|
|
|||||
|
В той игре используется физический движок. Выстрел происходит так:
Вектор обычно представляют из двух значений, x и y координаты второй точки. (Первая x=0, y=0)
__________________
Дети не должны знать о своих родителях |
|
|||||
|
Регистрация: Nov 2012
Сообщений: 55
|
Tails, о, спасибо )) Буду реализовывать, вроде не сложно всё. Позже покажу, что вышло.
|
|
|||||
|
Способ который я описал, используется в физических движках, то есть вам сперва нужно скачать один из них.
Если вы хотите сымитировать выстрел своими силами, тогда нужно будет высчитывать смещение самостоятельно. Например как написал Hauts
__________________
Дети не должны знать о своих родителях |
|
|||||
|
Регистрация: Nov 2012
Сообщений: 55
|
Tails. Да, хочу своими силами, чтобы вспомнить немного матан. Понял, ну как-то просто всё))
А как вы смотрите если использовать уравнение движения тела, брошенного под углом к горизонту ?: vx = v * t * Math.cos(a) ; vy = v * t * Math.sin(a) - (g * (t*t) / 2); v - начальная скорость t - время движения а - угол g - ускорение свободного падения 9.81 (м/c2) Последний раз редактировалось lammer.Ok; 18.11.2012 в 18:28. |
|
|||||
|
блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
|
Цитата:
Элементарная же механика, причем очень похожая на то, что я описал.
__________________
hauts.ru |
![]() |
![]() |
Часовой пояс GMT +4, время: 02:35. |
|
|
« Предыдущая тема | Следующая тема » |
|
|