In Favour of Bounding Boxes
(disclaimer: these are mostly just opinions and speculations about how the games work.)Bounding Boxes are rather simple.
Mathematically, the top-left corner by convention is the
location of the box.
A simple (x, y) pair of coordinates. The size of the box is given by a width and
height.
So a bounding box can be described with 4 numbers: x, y, width, height

It is becoming apparent to me that for 2d games, bounding boxes are more useful than pixel-perfect collision detection. In saying this I shall also point out that bounding boxes are used with the pixel-perfect methods.
I am starting to think now that 2d game design might be
best done purely in the realm of bounding boxes. I also think that artwork should be
used for inspiration and developing concepts rather than being visible in the game design.
Artwork is nice to look at, but game development is not a visit to a gallery.

Here is a picture inspired by Super Mario Brothers as an example of viewing game design as bounding boxes. The white lines in this case are for illustrative purposes.
Here I must admit that all the boxes look the same. As an experiment I will try colouring the box-outlines.

Now I think that it is getting somewhere. Ok, nice sketch. Within the Super Mario Brothers game there was a tile system, which defines most of the blocks except in this case for the main character.
I suspect that if mario gives a nudge to a block that can be nudged then it is animated by modulating a position offset.

So here we can see the grey box being nudged and bouncing a bit.
The red lines represent the vertical offset at which the tile is to be drawn. Rather than associating such a value with each tile it would be more computationally efficient to do just one at a time.
So upon bumping the box from underneath, Offset is added to the Y location of the box for display purposes and offset would vary between 1, 2, 3, 2, 1 as the box moved. (edit years later, 17 april 2015: as it turns out the way it really works is the game creates a foreground sprite temporarily in the position of the block being hit and makes it bounce and sets the background tile to transparent or such while this is happening.)
Regarding Super Mario Brothers, Mario is effectively one simple bounding box but Super Mario doubles the height. By crouching Super Mario can revert to the original sized bounding box.(as it turns out the bounding boxes do not match up exactly with the sprites.)
In contrast, Street Fighter 2 characters are a flux of several bounding boxes. There can be offensive and defensive bounding boxes for them. At times Street Fighter 2 characters may not even have a bounding box, at which point they are invincible.
A Street Fighter 2 character who does not have a bounding box can still be visible and this is simply that the graphics and bounding boxes are insulated from each other. From the Street Fighter 2 model I understand that animation frames can have bounding boxes associated with them. A greater number of these boxes will be defensive.
In conclusion, don't dismiss bounding boxes too easily. Pixel-perfect collision detection sounds nice but is it really needed.
Articles-Home