![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Help!
xman © (2003-04-16 10:52:00)
Делаю игруху типа вормс только в космосе среди планет. У каждой планеты свое гравитационное поле.
Вопрос: Какая формула или как сделать так чтобы пуля или что то в этом роде в зависимости от силы выстрела притягивалась к планете если она в пределах гравитационного поля планеты?
Arch-vile (2003-04-24 18:49:00) [1]
2Taras55
Если уж на то пошло тогда
F:=G*m1*m2/r*r
Все таки, чтобы разобраться можно было, что это есь сила, а не ускорение
G=6,672*10^(-11) точнее
а >G=6.02*10^(-11);//приблизительноэто смесь числа Авогадро 6,02*10^23 и гравитационной постоянной
Taras55 (2003-04-24 15:53:00) [2]
g:=G*m1*m2/r*r;
g - Сила притяжения планеты
G=6.02*10^(-11);//приблизительно
m1 - Маса планеты
m2 - Маса черьвя
r - расстояние между центрами объектов
C3H5(OH)3 (2003-04-19 02:47:00) [3]
че -то затупил я
там dt должно стоять - тик таймера
neuro (2003-04-18 17:26:00) [4]
2C3H5(OH)3:
Ну дык,а t - это не время?=)
Pavel_S (2003-04-18 16:09:00) [5]
Есть исходник игры связанной с гравитацией на pascal.source.ru
C3H5(OH)3 (2003-04-18 11:35:00) [6]
зачем время там? можно конечно сделать как в школе учили, там
x = x0 + v0*t + a*t/2, можно но зачем?
проще сделать так
на каждый тик делаем
v = v + a*t
x = x + v*t
идея понятна? гравитацию сюда сами как нибудь..
neuro (2003-04-16 18:20:00) [7]
Да я-то в курсе =)
Просто в приведенных выше формулах явно время задействовано не было..Да и неявно его не видно.
Arch-vile (2003-04-16 18:09:00) [8]
a (ускорение) равно g (ускорение свобоного падения)
пройденный путь S=(at^2)/2 равен половине от ускорения умноженного на квадрат времени
Ускорения от всех точек векторно суммируются. То есть: если ворм расположен ровно посредине двух одинаковых планет он остаётся на месте
neuro (2003-04-16 16:55:00) [9]
Единственное, что непонятно, так это как все от времени-то зависит? Неявно? =) Попонятней надобно рассказать =).
Arch-vile (2003-04-16 16:46:00) [10]
постоянная J (у нас в школе и в зборниках указывается G) имеет значение в 6,672*10^(-11) (Н*м^2)/(кг^2) - ньютон метр квадрат поделить на кг квадрат
Если что пиши :)
Владимир Ткачук (2003-04-16 12:54:00) [11]
Во первых, пределов у гравитационного поля нет. Каждый момент времени на ваш обьект действует ускорение равное J*M/(R*R), где J - константа, M - маса планеты, R - растояние до планеты.
Ваш объект должен иметь 3 скорости Vx,Vy,Vz (скорости по соответствующим осям). Каждый момент времени они будут менятся в соответствии с формулами:
R:=sqrt(sqr(x-xp)+aqr(y-yp)+sqr(z-zp));
g:=J*M/(R*R);
Vx:=vx+(xp-x)/R*g;
Vy:=vy+(yp-y)/R*g;
Vz:=vz+(zp-z)/R*g;
(x,y,z) - координаты объекта.
(xp,yp,zp) - координаты планеты