(Unity 3d C#) eine geschwindichkeits anzeige von einen objekt z.b ein auto

3 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Wenn man ein solches Script erstellen möchte, braucht man ein paar Informationen:

  • Hat das Objekt eine eigene Eigenschaft Geschwindigkeit? Wenn ja, kann man ganz einfach ein GUILabel erstellen und diesem als Text die Geschwindigkeit übergeben.
  • Wenn du keine Eigenschaft Geschwindigkeit hast, solltest du eine hinzufügen. Die Berechnung hängt ganz vom Szenario ab.

Ich helfe dir gerne beim Erstellen des Scripts, allerdings bräuchte ich dann mehr Informationen.

Das wäre ein wenig kompliziert weil man wahrscheinlich mehrere neue Einheiten definieren muss und dann auch noch rechnungen um die Geschwindigkeit auszurechnen und dann ein UI-Text erstellen und den script drauf hauen, kannst du denn überhaupt scripten?


sliem 
Beitragsersteller
 21.04.2015, 18:49

Ja ich kann aber lerne noch könntest du mir dabei helfen bitte

Also dein Auto hat hoffentlich einen Rigidbody. Dieser hat eine "velocity", welche ein Vector3 ist (in diesem Falle ein Bewegungsvektor). Dieser wiederum hat eine "magnitude". Und diese wird von Unity in m/s verstanden. Das rechnest du mal 3,6 um auf km/h zu kommen. Also hast du:

var speed = GetComponent<Rigidbody>().velocity.magnitude * 3.6f;

...oder so ähnlich, hab's jetzt nicht getestet.