Kursinhalt
Kampfspiel in Unity
Kampfspiel in Unity
Spezialeffekte für Spieler
RaycastHit2D.point
RaycastHit2D.point
ist eine Eigenschaft in Unity, die verwendet wird, um die Weltkoordinatenposition abzurufen, an der ein 2D-Raycast den Collider eines Objekts getroffen hat.
Somit ermöglicht RaycastHit2D.point
den Zugriff auf die genaue Position, an der ein 2D-Raycast mit dem Collider eines Objekts in Kontakt kommt. Dies ist nützlich, um Aktionen oder Berechnungen basierend auf dem Kollisionspunkt durchzuführen.
In unserem Fall haben wir es verwendet, um den Angriffspunkt des Gegners zu ermitteln und die Partikeleffekte an dieser Stelle abzuspielen.
Platzierung von Partikeln
if (isAttacking)
{
RaycastHit2D rayCastHit = Physics2D.Raycast(transform.position, Vector2.right * transform.localScale.x, range, enemyLayer);
if (rayCastHit)
{
attackEffect.transform.position = rayCastHit.point;
attackEffect.Play();
isAttacking = false;
}
}
Nachdem das Partikelsystem als Kind unseres Spielers hinzugefügt wurde, erstellen wir ein SerializeField
für unser Partikel und ziehen es per Drag & Drop hinein.
Um das Partikel abzuspielen, müssen wir dessen Position festlegen. Dafür wählen wir die Position des Raycast-Treffers.
Nachdem wir also die Position auf raycastHit.point
geändert haben, rufen wir Play()
für das Partikelsystem auf, damit es im Spiel abgespielt wird und uns die visuellen Effekte sowie den Einschlag anzeigt.
Danke für Ihr Feedback!