Looking for someone to help teach me lighting

I don’t know enough to fully answer these questions. What I do know:

  1. I don’t think Babylon has area lights at all (I searched the docs, couldn’t find them)
  2. I think Unity only allows them to be either baked or used in the deferred renderer (not the forward renderer, which is what three.js has). Again, not 100% sure about that.
  3. Unreal docs warn that rect light for moving objects is slow. Presumably if you set the light to non-moving only they will bake it.

Real-time area lights are not really area lights, they are just an approximation. But it’s still a lot of work. You can see the code three.js uses here

It’s a lot of extra code that runs in the fragment shader, i.e. for every pixel, every frame. Perhaps someone will come up with a faster approximation than this, but they will never be as fast as the other light classes.

I haven’t benchmarked just how slow they are, but in the meantime, I’ve internalized all of this as a heuristic: area lights are slow.

In terms of speeding them up, the obvious thing would be to a baking workflow. But that would only help with static scenes.

By the way @baze, sorry for slightly hijacking your thread here. I hope you’re still finding this info useful.