- Home /
Collision Detection Problem
Hi I have a quick question. I’m new to programming with unity3d, and would appreciate any advice that would help out with my problem. My collision detection is not working correctly. When my character (3rd person controller prefab) hits a sphere the level should restart, but instead the sphere just bounces off and the collision is not detected. How can I make the collision detection work? (The code below is attatched to the capsule collider on my character)
void OnTriggerEnter(Collider other2){
if(other2.name == "Sphere"){
Debug.Log("hit the Sphere");
Application.LoadLevel(Application.loadedLevel);
}
Answer by DaveA · Aug 19, 2013 at 02:16 AM
Try renaming this to OnCollisionEnter or this: http://docs.unity3d.com/Documentation/ScriptReference/CharacterController.OnControllerColliderHit.html
Answer by quickquestion · Aug 19, 2013 at 03:21 AM
I tried both of those options (show in the code below), but in both cases, the sphere bounced off the character. These are both under the void update function and are in C# if that matters.
void OnControllerColliderHit(ControllerColliderHit other2){
if(other2.name == "Sphere"){
Debug.Log("hit the Sphere");
Application.LoadLevel(Application.loadedLevel);
}
void OnCollisionEnter(Collider other2){
if(other2.name == "Sphere"){
Debug.Log("hit the Sphere");
Application.LoadLevel(Application.loadedLevel);
}
Never$$anonymous$$d, I figured out a work around by floating triggers around the character. Thanks for the help though!
Your answer
Follow this Question
Related Questions
Quick question about colliders 1 Answer
Collision in code 1 Answer
A object that takes away an enemies health. 2 Answers
Detecting if near the edge of an object ? 2 Answers
Collision Bug 0 Answers