The goal of this is to have the draw order for all render channels interleaved to look like this:
camera1 draw depth
camera1 draw materials
camera2 draw depth
camera2 draw materials
This is now done. Now there are heaps of Render Channel Strips, each describing one stage of the pipeline.
Multiple lights are not completely working, as they have no current way of utilising a separate render target (all are hard-coded to use data/lightMap1.xml)
If lightX write, lightX read can be customised to use any render target, the lighting can be performed.
OK gots this all pretty much working, for n lights. The light maps seem at least to write correctly.
The throwing of the light on the objects doesn't yet work.. and i think its because in the LightingRenderChannel it sets no states whatsoever to do with the light's view matrix - so can't be right.
lights (1 and 2) and (3 and 4) seem to be reading from each other's depth maps. but if you set 1 and 2, you get a consistent shadow map, separate from 3 and 4. But why would they influence each other?