title: Broad-phase collision detection methods?
body: <p>I'm building a 2D physics engine and I want to add broad-phase collision detection, though I only know of 2 or 3 types: </p>
  
  <ul>
  <li>Check everything against everything else (O(n^2) complexity)</li>
  <li>Sweep and Prune (sort and sweep)</li>
  <li>something about Binary Space Partition (not sure how to do this)</li>
  </ul>
  
  <p>But surely there's more options right? what are they? And can either a basic description of each be provided or links to descriptions?</p>
  
  <p>I've seen <a href="https://stackoverflow.com/questions/414553/broad-phase-collision-detection-quadtrees-bsp-etc">this</a> but I'm asking for a list of algorithms available, not the best one for my needs.</p>
  
  <p>In this case, "Broad phase collision detection" is a method used by physics engines to determine which bodies in their simulation are close enough to warrant further investigation and possibly collision resolution.</p>