I really didn't want to spend a lot of time unwrapping the different parts to texture them so I decided to do it procedurally. But I still wanted control of where the different materials would appear. And to accomplish that, I used VertexPaint.
The idea is to paint a black & white map in VertexPaint and use that as a mask in a Blend material (above image).
But to be able to paint fine detail onto your model, it has to have a lot of vertices since the information is saved in them.
To get past that I added a TurboSmooth modifier and set both iterations to 3 as you can see in the image. It is important to have the VertexPaint modifier after the TurboSmooth. That allowed me to paint a lot of detail and I was also able to lower the main iterations while keeping the Render Iterations at 3.
Remember that you must have the same amount of iterations when you render as when you painted your vertices. So if you painted with 2 iterations you must have 2 iterations at rendertime. It is pretty obvious really since you're changing the amount of vertices with the iterations.
The base textures I am using here are the ones that come with 3ds max 7. I've used Noise and Mix maps together to try and hide the repeating textures you get from the base bitmaps. Although you can easily spot the tiling of the textures it doesn't show up on the model unless you look really close.
To make it easier for yourself can make your own tileable textures or use the 3DTotal Texture Cds which look very good (I haven't tried them yet).
I used a basic three point lighting with the keylight coming from the right. All three mainlights are arealights which basically means you'll get soft shadows. Small omnilights were also placed out to get light on certain key areas that I wanted to emphasize. A Skylight was used as an ambient light together with Final Gather.
I rendered using mental ray 3.3 which is available in 3ds max 7. It gave me the control that I needed make this image. Final Gather was used.