Collision.contacts

var contacts : ContactPoint[]

Description

The contact points generated by the physics engine.

Every contact contains a contact point, normal and the two colliders that collided (see ContactPoint). From inside OnCollisionStay or OnCollisionEnter you can always be sure that contacts has at least one element.

JavaScript
function OnCollisionStay(collision : Collision) {
// Check if the collider we hit has a rigidbody
// Then apply the force
for (var contact : ContactPoint in collision.contacts) {
print(contact.thisCollider.name + " hit " + contact.otherCollider.name);
// Visualize the contact point
Debug.DrawRay(contact.point, contact.normal, Color.white);
}
}

JavaScript
// A grenade
// - instantiates a explosion prefab when hitting a surface
// - then destroys itself

var explosionPrefab : Transform;

function OnCollisionEnter(collision : Collision) {
// Rotate the object so that the y-axis faces along the normal of the surface
var contact = collision.contacts[0];
var rot = Quaternion.FromToRotation(Vector3.up, contact.normal);
var pos = contact.point;
Instantiate(explosionPrefab, pos, rot);
// Destroy the projectile
Destroy (gameObject);
}