Hervorheben des angesehenen Polygons

Autor: Patrick Nolte

Finden

Um das angesehene Hexagon hervorzuheben muss dieses erst einmal gefunden werden. Dazu wird in der Hauptschleife bei jedem Durchlauf getestet, ob ein Hexagon hervorgehoben werden soll. Falls ja, wird die Position des Hexagons gespeichert und das Zeichnen des Outlines aktiviert. Um das Hexagon zu finden, wird der gegebene Kameravektor normalisiert. Anschließen wird ein Vektor erstellt, der bei der Länge 0 anfängt und immer weiter in die Richtung des Kameravektors verlängert wird. Für jeden Vektor, der bei diesem Vorgang entsteht, wird dann der Pillar an der XY-Position abgefragt. Dieser Pillar wird dann durchlaufen und bei jeder Section geprüft, ob sie in der passenden Höhe (Z) liegt.

Durchlaufen aller Pillars einer Section und überprüfen der Höhe

for section in pillar.sections() {
    if section.top.to_real() > pos_z && section.bottom.to_real() < pos_z {
        return Some(section);
    }
}
None

Falls eine Section gefunden wird, wird die Position des hervorzuhebenen Hexagons zurückgegeben, sodass die Anzeige aktiviert wird. Überschreitet der immer länger werdende Vektor eine bestimmte Länge wird abgebrochen und es wird kein Hexagon hervorgehoben.

Kameravektor der auf einen Block zeigt

results matching ""

    No results matching ""