UnityはColliderで当たり判定を簡単に実装できますが、実際にヒットした位置も簡単に調べることができます。
スクリプトをなるべく回避することもできますが、本当に簡単なので素直にスクリプト書きましょう。
ということで、簡単にコードを紹介して終わりです。
手元で動いているコードなので2D版です。
private void OnCollisionEnter2D(Collision2D collision)
{
ContactPoint2D[] contacts = collision.contacts;
foreach (ContactPoint2D contact in contacts)
{
// 各衝突判定された部分で処理をする
}
}
tagによる識別は行っていないので、必要であれば追加します。
tag識別のコードがないのは、Layerを使って必要な相手にだけ当たり判定が行われている状態だからです。
最後にUnityのDocumentページへのリンクを残します。
https://docs.unity3d.com/ScriptReference/Collision2D-contacts.html