Thanks. I've tried a lot of methods to get brass to work halfway decently. I've used the TrainUberShader.fx shader, which has the nice feature of seperating specular from environmental reflections. Here's a quick texture breakdown, I'm showing part of the original 1024 x 2048 map.

So. At the left we have the diffuse. It goes in it's own RGB texture. My workflow for making a diffuse is pretty standard.
- We start of with a base colour, being the colour of whatever material we're trying to make. In the case of brass, I pick a orangy-brown colour.
- Then, I go crazy with all kinds textures I've gotten over at cgtextures.com. Set the blending mode to 'overlay', 'soft light', or one of that category. Try to use levels adjustment and maybe a high pass filter to make the overlay texture (on average) a mid-gray. Experiment with opacity and even with the blend-if options. It might be wise to save the complete group of overlays so you can quickly insert them. Kinda build your own little library of textures.
- On top of all this, we throw a AO bake. Set the blending mode to multiply.
- Optional, but I think it helps bring out the edges: Throw the AO bake over all of this, high pass filter at 2.0 px setting, blending mode to overlay or one of it's cousins and pull the opacity way down.
- Again optional, but you can see I've tried to do some dirt and grime in places.
Now we have a diffuse, on the base of which we can make a specular texture. The basic premise is that anything that you want to catch highlights is white, and dull would be black. Where I come from brass is rather shiny, so we change the base colour to a very light gray. I then like to mess about with my texture overlays, increasing their contrast by a bit. Sometimes I make them darker, in the case of say rust pitting, or dirt and grime that doesn't shine. Finally - and have a look at the radiator in your room now - edges tend to catch highlights very dramatically, so we use the AO map for that. Either use the high pass, or pull it through the find edges filter and invert. In the latter case, use linear dodge as the blending mode and pull the opacity down a bit.
The environmental reflections map is another grayscale map that governs environmental reflections. Contrary to specular, the env reflections tend to show even when there's no direct light source illuminating them. Which is nice in a cab that's generally in the shadow. The downside however, is that too much env makes everything look like it's covered in gelatin. Quick and dirty way of generating the env map is to simply darken the spec map. In this case, I've also increased the contrast on the texture overlays.
The spec map, and env map go into what's known as a auxilary texture of the TrainUberShader shader. Trainubershader uses the red channel for AO (you could add AO in here), green for emissive (glowing, for radioactive injectors), blue for environmental reflections (so chuck the env map you made in here) and the alpha channel for spec (so throw spec in there).
Sciff over at UKTS did a nice write up of trainubershader.fx. Trainubershader also supports a normals map, but that's for another time. Quickest way for a normal map would be cloud filter -> Nvidia normap map filter, done. Or go crazy and bake normals from a high poly.
And I just wanted to edit this in. Might be nothing new, and quite hacked for a lot of you, but me likes anyway:
