Просто очень быстрый ответ,
- Узнайте о Physics2D.gravity. Поместите несколько объектов в сцену (шары, что угодно) и позвольте сцене бежать, заметьте, что они падают. Попробуйте изменить гравитацию и обратите внимание, что ускорение отличается.
Освойте все это, прежде чем перейти к шагу 2!
Теперь плохие новости!
"Обычная гравитация" в Unity это очень просто, как видите. К сожалению, если вы хотите сделать индивидуальную гравитацию на разных объектах, она довольно продвинута!
В основном
отключите"общую гравитацию" из (1), которую Unity дает вам легко бесплатно. Затем вам нужно вручную добавить гравитацию к каждому объекту (вы хотите его включить!)
В основном вы делаете что-то вроде этого ...
public float gravity;
void FixedUpdate () {
rigidbody2D.AddForce(Vector3.down * 9 * rigidbody2D.mass);
}
К сожалению, вам многое предстоит узнать о пробеге l oop, физике (ie, реальной физике реального мира!), Игровых объектах, твердых телах и C# в целом.
Освойте все это, прежде чем перейти к шагу 3 !!
Наконец, вы хотите, чтобы гравитация изменялась по высоте (для определенных объектов). В общем, тогда просто сделайте что-то вроде этого:
Например, гравитация ослабевает, когда вы go вверх .. a
'- ваша высота
public float gravity;
void FixedUpdate () {
f = (1000.0 - a) / 1000.0
rigidbody2D.AddForce(Vector3.down * 9 * f * rigidbody2D.mass);
}
Много чему нужно научиться !