I'm currently thinking about autogenerating Normal, Specular and Heightmaps for Textures for use in shaders. Normalmaps seem to be quite easy so far, as there are the engine function bmap_to_normals and some other codes for it out here. Heightmaps should be easy to create, too, although I don't really know how to do it. I think the blue channel of a dot3 normalmap could be already seen as "sort of a heightmap". This wouldn't be the perfect solution but at least a solution. For having a better map I think the length of each "pixel normal" has to be calculated out of the normalmap, or am I wrong here?

But for gloss/specularmaps I have no idea, how to generate them, of course there can't be really a clue to the specularity of a material found in the texture.
I thought of bmap_to_alpha here. This would create an alpha channel depending on the pixel's brightness, right? So it would be in the last case some kind of gloss map (with fantasy )

Any other ideas how to make it better?