Raycasten ist der Prozess des Schießens
eines unsichtbaren Strahls von einem Punkt, in eine
spezifische Richtung, um zu erkennen, ob irgendwelche
Kollider im Pfad des Strahls liegen.
Ein Beispiel dafür wäre
das Schießen einer Pistole. In dieser Instanz
will unser Charakter die böse Box erschießen,
die ihn betrogen und seinen Vater getötet hat
Die Syntax dieser Raycast Funktion sieht so aus
Es wirkt zuerst verwirrend,
aber wenn man versteht was jeder Teil bewirkt
ergibt es viel mehr Sinn.
Zuerst, der Ursprung des Strahls ist ein
Punkt im world space.
So in dieser Instanz würden wir einen Punkt
vorne am Lauf der Pistole wählen, der als
ein Vector 3, eine X, Y und Z Position gespeichert wird.
Weil unsere world Koordinaten Richtungen
nicht in die Richtung zeigen, in die wir
schießen wollen, brauchen wir einen zweiten Vector 3
in dem wir die Richtung speichern.
Diese zwei Vektoren definieren unseren
Strahl. Aber wir können sie auch durch eine Strahl Variable
ersetzen, da dieser Datentyp
zwei Vector 3 speichern kann.
Unser Code würde dann so aussehen.
Unsere nächste Aussage in der Funktion
ist eine RaycastHit Variable die
Informationen über den getroffenen Collider speichert.
Damit man im Code abfragen kann welche
Objekte für den Raycast interessant sind.
Zum Schluss gibt es noch zwei optionale Aussagen,
Distanz, was die Länge des Strahls
definiert und bei Weglassung einen Standard
Strahl mit unendlicher Länge erzeugt.
Und Layer Mask. Das ist die Nummer
einer einzelnen Ebene in Unity's Ebenen System