I've implemented a couple effects in the shaders:
- per-pixel lighting with bump mapping
- per-pixel specular lighting with gloss mapping ( making some areas more or less shiny )
- self-illumination ( like small windows ); but i haven't done the glow filter yet, so the contours look sharp.
- ambient occlusion ( still per vertex ), subtle because not very visible.
In the coming months, i'll also implement:
- dynamic shadow maps
- dynamic cube map reflections
- ambient color reflection ( via a small blurred cube map )
At the moment i'm trying to get all the shaders working in object/tangent space, to be able to position and rotate them arbitrarily in world space. The amount of code to modify is very small, but it's very tricky.