Hah, I feel like an NPC in a text parser game
An illustration is probably easier:
So, everything in there is an obstacle: the ground, some pillars, a box, etc. The red transparent objects are your "blockers"
Then what you do is create a "blocker" object that that fits around those obstacles. You only need to test collisions against that blocker object, instead of every individual object.
These blockers could be created at runtime through a series of events, or manually, depending on how your levels are built, but that bit's up to you