- Home /
Overlapping Triggers not working
I have two sets of triggers that are being used for entirely different purposes. In my game a player will walk through a house. One group of triggers is used to detect what room the player is in and the other what camera to use. Often these will overlap but sadly Unity seems to only allow you to be in one trigger box at a time, so it will tell me that I have left a trigger while in fact I am inside it. Is there any way round this?
I've tried to replicate your issue and I think your issue is in your code, so please post the code that handles the triggers. You can try and add this code to your controller
public class triggerEnter : $$anonymous$$onoBehaviour {
void OnTriggerEnter (Collider collider) {
Debug.Log ("Player entered: " + collider.name);
}
void OnTriggerExit (Collider collider) {
Debug.Log ("Player left: " + collider.name);
}
void OnTriggerStay (Collider collider) {
Debug.Log ("Player stay: " + collider.name);
}
}
After more investigation, I have found that the problem seems to be to do with the fact that I am not using convex mesh colliders for the trigger boxes. This causes the enter message to be triggered when the player first overlaps the faces of the collider and exit when you are no longer touching them. Is there a way to make this work?
I'm not sure if the mesh colliders actually have a volume or if it's just planes covering the mesh? Somebody with more experience may be able to help out on that one. Only thing I can recommend is to use simple colliders, box, sphere and capsule
Your answer
Follow this Question
Related Questions
How to check trigger overlap area? (with Image) 1 Answer
Can't click gameobject when over another trigger? 1 Answer
Switch Levels After Getting A Score? 2 Answers
Colliding two GameObjects 1 Answer
Climbing a Ladder in 2D Physics World 0 Answers