Suppose I have a reasonable amount of light sources that I upload at once in my forward rendering and accumulate them in shader.
Now that I am willing to move to deferred, and so one pass per light, I have a design doubt. Suppose my light struct is no more than 64B, I have two options:
Still upload them to GPU once and then using a uniform to get the right index for each pass.
Upload for each pass the correspondent light info.
With option 1 I have the advantage of not uploading info at each frame, but just once. On the other hand, option 2 allow to have less data on memory, with the downside of having to load about 64B per pass per frame.
Whilst I am leaning towards option 1, I am no expert and kinda new to the field. Knowing I don't think I'll have more than 100 lights, what's the option you'd choose? Any trade off/aspect I am missing?
EDIT: If there's no much difference, I already have all the code ready for option 1, so that's another factor that lead me towards it. However, to be honest, I am more than happy to refactor if it means an advantage.