In the world of 3D design, you have a few options for bounding boxes, but the come down to two efffective choices*: rectangles (not sure what a 3D right-angled quadrilateral is called... cubics?) and spheres and variations of them (ovaloids, etc.) Circles and spheres are actually the simplest bounding object since all you need is a point and distance, and you only have to make a single calculation to determine if they will intersect. It's been a while and I forget off the top of my head the algorithm you need to walk through to determine if two rectangular objects intersect.
I'm not saying the engine should be converted to use circular bounding boxes, as some of the same issues occur when objects are near each other (such as an object moving at an angle into two circles can still get stuck between two bounding boxes with no slide left or right possible), but if the circles are more or less linear, there are no sharp corners sticking out for the mobile object to collide into and not slide around.
*other choices are combinations of the two, mostly rounded objects of some manner as long as they are easier to define and calculate than a polygon mesh. I'll also note that 2D engines are basically the same in design, just simpler math. Even if the world is effectively two dimensional, the same core concepts apply.