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