In Computer Graphics, one of the recent trends has been texture mapping; and what is usually meant by texture mapping is surface texture. A good way to think of texture mapping is like "gift-wrapping" polygons.

This works great if what you are trying to model is actually a surface texture ... for example, boxes, walls, floors, paintings, etc.

But, it doesn not work so great if the thing you are trying to model is "carved" or "sculpted". For example, think of wood. Now, the texture we see on wood isn't uniform: it doesn't just depend on where on the surface we are -- ie. two dimensions, but where in the solid we are -- ie. 3 dimensions. If we were to use surface textures to model carved wood, it would look like we'd gotten wood-colour wrapping paper and wrapped the object. To make it look realistic, we need to model its three-dimensional properties. Hence, so-called solid textures. They are also useful for modelling marble, jade, granite and more.

Usually, solid textures are also procedural textures. If they are bitmap textures, then the problem is that they get very large very quickly. For instance a 256x256x256 solid texture would take up somewhere in the realm of 40 megabytes of RAM.