title: Detecting if two game objects are overlapping / intersecting Unity
body: <p>I have what I think is a straight forward question, but my lack of unity knowledge is hindering me.</p>
  
  <p>I have primitive type game objects (e.g. a cube / capsule / sphere) rotated at various angles in my scene. They are already instantiated.</p>
  
  <p>I then add a new game object primitive type to the scene and I want to know if this new game object overlaps / intersects the current primitive types in the scene.</p>
  
  <p>To do this I have been using the <code>gameobject1.GetComponent&lt;Collider&gt;.bounds.Intersects(gameobject2.GetComponent&lt;Collider&gt;.bounds)</code></p>
  
  <p>However this doesn't work because the bounds is a bounding box so even if a game object isn't directly touching one of the primitive type game objects visually, if it's in it's bounding box, it returns that as true (i.e. they intersect) which is not what I want:</p>
  
  <p><a href="https://i.stack.imgur.com/kb5ld.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/kb5ld.png" alt="enter image description here"></a></p>
  
  <p>I'm sure there is another way of doing this in unity but I just don't know what I need to do!</p>
  
  <p>Any help would be appreciated. Thanks</p>