- Home /
Die Frage ist beantwortet, die korrekte Antwort wurde akzeptiert
OnCollisionEnter, Trigger funktioniert nicht.
Guten Tach, Ich habe aktuell ein kleines problem, welches ich gerne so schnell wie möglich beheben wollte. Eine Kamera soll bei der Collision mit einem Spieler und einem 2dboxcollider verschoben werden. allerdings funktioniert der "Trigger" nicht. Hab ich was an der Funktion vergessen oder einen Fehler gemacht ? Und nebenbei: "Is trigger" ist aktiviert, der Spieler enthält einen Rigidbody, und der "Kameraverschiebungscode" ist richtig. public void OnCollisionEnter2D(Collision2D collision) { Camera.transform.position += new Vector3(a, b, -1); }
oder fehlt da noch etwas ?
vielen Dank.
From Google Translate:
Good day, I just have a little problem where I want to be as quick as possible. A camera should be moved in the collision with a player and a 2dbox collider. however, the "trigger" does not work. Did I forget about the function or made a mistake? And by the way: "Trigger" is activated, the player contains a Rigidbody, and the "Camera shift code" is correct.
public void OnCollisionEnter2D(Collision2D collision)
{
Camera.transform.position += new Vector3(a, b, -1);
}
or is there something missing?
Thank you very much.
Problem isn't entirely clear, but have you tried using OnTriggerEnter2D()
?
https://docs.unity3d.com/ScriptReference/$$anonymous$$onoBehaviour.OnTriggerEnter2D.html
Entschuldigung aber mein deutsch ist nicht so gut (or near non-existent).
The player needs a RigidBody2D, not a RigidBody. Just in case that's what's causing the trouble.
Rigidbody is on 2D, kinematic and simulated
Answer by MT369MT · Jun 15, 2018 at 08:02 PM
Hallo, wenn du “trigger” objekte hast musst du OnTriggerEnter brauchen.
public void OnTriggerEnter2D(Collision2D collision)
{
Camera.transform.position += new Vector3(a, b, -1);
}
Okey, damit hat es funktioniert. die lösung war am Ende einfacher als gedacht also diese Funktion, und zwei Box-Collider (einen Trigger, und ein Child von dem Spieler) Der Trigger muss: is Trigger erfüllt ein, und der Spieler muss einen Rigidbody2D haben, um das ganze abzuschließen. public void OnTriggerEnter2D(Collider2D col) { print("test""); Camera.transform.position += new Vector3(a, b, -1); }