Yes, but that's a mission design question, not something that should be debated wrt the code implementation of lighting. And as I said, the code doesn't care where the light comes from, it just cares about how strong it is in relation to the other lights present in the scene.
To be exact, IIRC the engine tracks up to 256 lights at any given time, the 8 strongest of which getting rendered to screen.
Which often looks awful, especially when the suns get pre-empted by distant explosions and laser shots. You get ships that just flicker in and out of brightness.
Maybe we should also have one sun that we can guarantee is always rendered?
D2X-XL tracks an arbitrary amount of lights per level and choses the 32 closest to each face it renders when doing per pixel lighting.
With deferred lighting you wouldn't even have to care about the number of lights, and having to create 4 shadow maps is no big deal either.
I dunno how optimized model rendering is like now, but it would be easily feasible to do something about that, too.
An idea coming to my mind when reading about lighting flaws in the above post is that the engine should prioritize certain lights depending on type. What I can also tell for sure that 8 lights per scene in an environment like Freespace just is not enough.
Thing is, I don't know the code and I don't want to spend weeks and months digging through it, only slowly understanding it and screwing around a lot before really knowing where to get my hands on. So I'd like to collaborate with someone who knows the code well and just help with injecting new tech into it. Rendering to a texture is very easy once you have created a suitable render target: All you need to do is tell OpenGL to render to it instead of the hardware's back buffer. So I would like to just point out such things and let some person who knows where the back buffer is selected change the code (which I could provide). I would also provide code encapsuled in classes that would manage render targets and stuff.
So as I said I would appreciate help when having to interface such modules with the existing code.
Where can I get the source code please (SVN access?)? I cannot seem to find it.