One odd (and unusual) way of doing this, though I'm not sure if it'll work, is to have a light darken a texture. The light should be pure black (or 8, 8, 8 if 0, 0, 0 causes problems). The light should then darken everything it hits to half as bright. In the case of that octagon sphere (shown above), the light would be coming from the west and 45 degrees below the horizon. Anything, it hits, dependent strictly on the angle of the polygon, will get darkened and the head-on area (for the light) will be the darkest and the side on the opposite end will be completely unaffected by the light (true color). How do I do this?