Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Most games come up with their lighting implementation and their shadow implementation. Due to deferred shading, we are able to simulate lights independent from the scene geometry. But realistic shadows are still a big challenge in game development. They would have to overlap with each other, have soft edges and are calculated in real time to support dynamic scenes.

There is a presentation where the author, Chun-Fu Chao, mentions this about lights and shadows in game development.

1000 lights without shadow is easy, but 100 lights with shadow is impossible now.

I wonder where is the problem at all? I understand that shadow maps and shadow volumes have their problems though are very popular. But from my physical understanding, shadows are just the abscence of light. So if we use a very dark ambient color and use deferred shading for handling all light source with easy, wouldn't that result in shadows for free?

share|improve this question
Try to implement shadows and you will see where is the problem. – Ivan Kuckir Mar 24 '13 at 11:31
All realtime lighting, and most render farm lighting, is a huge hack to make things look "good enough." Learn to love that fact, like @IvanKuckir suggests, and you'll be happier =) – Patrick Hughes Mar 24 '13 at 15:53
up vote 5 down vote accepted

The problem is that "cheap" lighting is a calculation based solely on the light source and the object it is applied to, any possible intermediate object that would block the light is not a part of the calculation.

Therefore a lot of games use such lights coupled with some shadow system.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.