Detecting Collisions with a game object
Hey, so I've been looking around for a while and have never found an answer so I will ask instead.
My question is... How do I get collisions for a game object without a rigidbody, I am using the character controller and I would like to detect collisions for my character, I don't want to use raycasts as it is not ideal for what I am doing.
Thanks for reading!
Answer by eralier · Jul 11, 2016 at 01:59 AM
You can use a collider and OnCollisionEnter and it's dérivatives. Check this out http://docs.unity3d.com/ScriptReference/Collider.OnCollisionEnter.html
This doesn't seem to work, I'm trying to check a collision off to the left so I would like to check for the collision before checking for the raycast, thanks for trying anyways!
I did look into this myself ages ago but didn't bother trying to use it.
Answer by Costel_XT · Jul 13, 2016 at 10:11 AM
If you want your character just colliding with the environment you can atach a collider ,like a box collider or a sphere colilder to your character,but for the collision to be detected the environment need colliders too.
Now,if you you want to trigger events when you collide your character with something in your game ,you can use OnTriggerEnter() or OnCollisonEnter().From this 2 functions i ussualy use OnTriggerEnter() ,and for this function one of the colliding object must have a rigidbody ,and both colliders on the character and the object that you want to collide with must have the collider with the "IsTrigger" Checked.
You can search for more information on Unity Documentation about Collision.
$$anonymous$$y character does have a collider, my problem is which I've noticed very recently when trying to fix up the problem again is that it has a very tiny gap between the wall and the player which cannot be closed.
Why without rigidbody? You need the rigidbody for the collision
Because I am using a player controller, the player controller can collide with objects like a rigidbody but can't detect the collisions.
$$anonymous$$aybe you can try to add a Capsule Collider ,but depending on what your player is supposed to do ,or if your player will interact with the environment in such a way that he will suffer transformations you may consider using a RigidBody ins$$anonymous$$d of CC ,and you need to create scripts for your character to interact with the environment(walking,running,shooting..etc)