Gravitation in Unity

von Claudia Wendt

Gravitation in Unity
Gravitation in Unity
Ziehe das Objekt in die Szene. Füge einem Objekt eine Komponente hinzu. Das Objekt sollte einen Collider und einen Rigidbody haben. Der Rigidbody sollte auf Kinematic gestellt sein. Das bedeutet, das Objekt bewegt sich nicht in der Physiksimulation, solange es nicht von einem Script bewegt wird.
Aktiviere Simulated und Use Full Kinematic Contacts.
Im Script wird die Basic-Klasse festgelegt und sorgen dafür, das die Gravitation funktioniert. Füge als Komponente "PhysicsObject" hinzu. Wähle New Script und öffne dieses mit Creat and Add. Doppelklicke und öffne das Script im Visual Editor.
Weil es sich um Physics handelt, füge die FixedUpdate-Funktion hinzu:
void FixedUpdate()
Innerhalb der FixedUpdate-Funktion soll sich das Objekt mit jedem Frame nach unten bewegen, weil es von der Gravitation nach unten gezogen wird.
Deswegen benötigen wir eine Variable für Geschwindigkeit:
protected Vector2 velocity;
Andere Klassen greifen auf das Physikalische Objekt zurück. Sie sollen darauf zugreifen können, aber nicht von außerhalb der festgelegten Klasse.
Die Graviation kann beeinflusst werden: Dafür wird ein Graviationswert benötigt:
public float gravityModifier = 1f;
Der Gravitationswert wird im Physiksystem von Unity verwendet. Das ganze wird mit Time.deltaTime; multipliziet und gehört zu FixedUpdate:
velocity += gravityModifier * Physics2D.gravity * Time.deltaTime;
Jetzt

Lesen Sie den ganzen Artikel

Claudia Wendt

Hagenow

Zur Person

Claudia Wendt

Weitere Profile

Claudia Wendt