I've seen a lot of sites that recommends to use Quadtree for splitting the array by levels and nodes for a better performance for example in CollisionSystem there's a lot of collisions needs to be handle. I need to ask this question because I'm planning to create my own Quadtree class, if there it didn't exist.