- Home /
Trigger enter in single direction ???
Can the colliders can be directional ? i want the trigger enter to happen in only one direction and not in all the 4 directions of a box collider. is this possible to achieve please help.
Answer by Fattie · May 18, 2015 at 05:09 AM
this is a commonplace basic thing in game engineering.
you just use different colliders for each of the directions - it's that simple.
Answer by steakpinball · Feb 28, 2013 at 09:36 AM
I'm not sure how to do this for trigger colliders. But Physics colliders can do this easily. The OnCollisionEnter
method receives a Collision
object. The contact points in this object provide detailed information about where the contact occurred. With a box collider it is easy to determine the side by using the normal
.
void OnCollisionEnter(Collision collision) {
if (collision.contactPoints[0].normal == Vector3.up) {
// For a box collider aligned with the world axes, this was hit on top
}
}
http://docs.unity3d.com/Documentation/ScriptReference/MonoBehaviour.OnCollisionEnter.html
This is also a good place to note that Quaternion
objects can be multiplied by Vector3
objects to rotate the vector.
Vector3 rotatedUp = transorm.rotation * Vector3.up;
http://docs.unity3d.com/Documentation/ScriptReference/Quaternion-operator_multiply.html
Answer by Melanina · Feb 28, 2013 at 09:33 AM
Can't be directional. If you want select collision by direction, check position of colliders in OnTriggerEnter end select what you want. If you really want create directional box collider you can merge 6 game objects with flat box collider in 1 parent object and attach to each one appropriate functions, but i don't recomended this way
Your answer
![](https://koobas.hobune.stream/wayback/20220613093550im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
A node in a childnode? 1 Answer
Why is this rigidbody not activating the trigger? 0 Answers
Child Object's collider setting off triggers 1 Answer
Two Objects in the same position? 0 Answers
How To: One collider for detection; one for collision. 1 Answer