Зависит от того, насколько подробно вы хотите быть. Ньютоновские законы гравитации определяют силу, которая имеет обратную квадратичную связь между двумя телами и их расстоянием.
- F - величина гравитационной силы между двумя точечными массами,
- G - гравитационная постоянная ,
- м 1 - масса первой точечной массы,
- м 2 - масса второй точки массы, а
- r - расстояние между двумя точечными массами.
Так что, если вы моделируете большие тела (скажем, планетную систему), вам нужно применить гравитацию между каждой парой объектов.
Очевидно, что когда вы знаете силу, которую вы можете применить Второй закон Ньютона (сила = масса * ускорение) для вычисления ускорения, которое вы должны применить к каждому телу.
На другом конце шкалы простоты, если у вас есть фиксированная система отсчета относительно одного очень большого тела (земли) и нескольких маленьких объектов, все, что вам действительно нужно сделать, это применить постоянное ускорение к земле , В этом случае (в вакууме) гравитация на земле применяет постоянное ускорение 9,81 м / с 2 ко всем объектам. CodeInChaos дает хороший пример кода.
(Конечно, теперь мы знаем, что ньютоновская гравитация не совсем правильная, и она разрушается в очень больших и очень малых масштабах. Но это немного за пределами этого ответа)