Jump to content
Unity Insider Forum

OnCollisionEnter verhält sich wie OnCollisionExit


Coooder

Recommended Posts

Hallo Leute,

 

wenn mein Spieler gegen die Wand läuft springt er erst in den OnCollisionEnter, wenn sich der Spieler wieder wegbewegt ... So lange ich gegen die Wand laufe passiert nichts.

 

void OnCollisionEnter(Collision other)
   {
    if (other.transform.tag == Tags.Block)
    {
	    print(other.transform.tag);
    }
   }

 

Woran kann das denn liegen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Wie bewegst du den Spieler?

 

über den CharacterController

if (_cc.isGrounded)
    {
	    transform.Rotate(new Vector3(0, Input.GetAxisRaw("Horizontal") * rotationSpeed * Time.deltaTime));
    }
    Vector3 forward = transform.TransformDirection(Vector3.forward) * moveSpeed;
    _cc.SimpleMove(forward);

 

Versteh ich das jetzt falsch, oder brauchst du für deinen Wunsch nicht: OnCollisionStay ?

 

Ich will ja nur sobald die Kollidieren was machen und nicht die ganze zeit während der Kollision

Link zu diesem Kommentar
Auf anderen Seiten teilen

Der CharacterController löst alleine meines Wissens nach gar kein OnCollision...-Event aus.

Stattdessen gibt's OnControllerColliderHit.

Warum irgendetwas wie OnCollisionExit bei dir ausgeführt wird, weiß ich jetzt auch nicht so recht.

 

Ja ich hab den Player dafür nen Extra Collider gegeben bzw. hat die Sphrere(mein player) ja von hause aus ein.

Mit OnControllerColliderHit funzt aber ... damit kann ich arbeiten, danke!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...