Hi all!
I have an object, an asteroid to be precise, which is set up with a Sphere Collider & a non-kinematic rigidbody.
The other object involved in the collision is your Player object, which has a bubble-shaped Shield as one of it’s children, set up with a Capsule Collider.
The shield is where I’m calling the OnCollisionEnter function from.
The script is below:
void OnCollisionEnter(Collision col) {
Debug.Log(col.gameObject.name);
if(col.gameObject.name == "Asteroid") {
Debug.Log("HitAsteroid!");
// HitForce = col.rigidbody.mass/GetComponent<Rigidbody>().mass * GetComponent<Rigidbody>().velocity.z; - Ingore this for now, this is for the next part of the code, I just need to get the initial collision detection to work first!
}
}
The two objects physically collide with eachother, however the problem is, I don’t get any feedback from collision, it just doesn’t register it as a hit.
I have also tried putting this script on the other object as a test, and it works, it detects when it hits the player, but I cannot detect on the player when it hits an asteroid, it’s weird.
So to sum up, both objects have a Collider (without Trigger enabled), and one of them has a Rigidbody. In theory this should work right, or am I missing something?
Thank you in advance
Sam