Yes, marciano is right - it very easy way to render them to use cubemaps. You can try to search phoenix64 modifications of Horde engine in University of Augsburg SVN of Horde3D - he implemented cubemap shadows - you can try this method but using textured projection the same way like shadow. But I dont have nothing in my head how to make textured spot lights. May be you can try the same method as shadow mapping like with cubemap technique.
Yeah, cubemaps are good, but rendering each face independently not good... Sometimes it may become not nice bottleneck. It would be better to try Virtual Depth Shadow Textures technique, but I don't know how good it would be to use with textured lights... It is a nice try to inspect how it works with VSDT technique.
Sometimes I hate this advice, but... Another technique is for DX10 and higher hardware - to use Geometry Shaders and Instancing. Render all cubemap faces with Geometry Shader with one draw call, and Instancing when there are a lot of cubemaps(draw all of them one draw call).
Update:
Branch SVN is here and phoenix64 experiments also here:
http://mm-werkstatt.informatik.uni-augs ... /branches/