We relied on bitmap textures for almost every model, created with a combination of processing digital photos and manual painting. There was, however, a 'procedural' layer too, as we baked ambient occlusion maps for each model. This requires that there is no overlapping in the UV maps; or you can use a second UV set for the occlusion map that can be generated using automatic mapping. We do not recommend this though, because we've found that the rough occlusion maps have to be manually processed for proper results. There are some small artifacts that should be erased, and it's a good idea to blur out the sharp edges - the Burn tool in Photoshop is particularly useful as it can grow the shadow edges a bit as well.
Occlusion map for the Tiger tank
To generate the occlusion map, your application has to support some sort of Global Illumination and texture baking. Assign a fully white material to your object, light it with a white skylight, turn on GI and bake the results to the UV map.
The resulting occlusion map is not phisically correct, especially on characters that deform during animation, but the human eye is not clever enough to detect the cheat. The additional complexity is very pleasing to the eye, even though it's a subtle effect.
'Sinclair' character without occlusion;
and with occlusion map in the diffuse channel