Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Game Tech: How BioShock Infinite's Lighting Works

Anonymous Coward writes | about 8 months ago

0

An anonymous reader writes "The Principal Graphics Programmer for Bioshock Infinitehas put up http://solid-angle.blogspot.co... post about how the game's lighting was developed. We don't usually get this kind of look into the creation of AAA game releases, but the studio shut down recently, so ex-employees are more willing to explain. The game uses a hybrid lighting system: direct lighting is dynamic, indirect uses lightmaps, shadows are a mix. 'Dynamic lighting was handled primarily with a deferred lighting/light-pre pass renderer. This met our goals of high contrast/high saturation — direct lighting baked into lightmaps tends to be flat, mostly because the specular approximations available were fairly limited.' It's interesting how much detail goes into something you don't really think about when you're playing through the game. 'We came up with a system that supported baked shadows but put a fixed upper bound on the storage required for baked shadows. The key observation was that if two lights do not overlap in 3D space, they will never overlap in texture space. We made a graph of lights and their overlaps. Lights were the vertices in the graph and the edges were present if two lights' falloff shapes overlapped in 3D space. We could then use this graph to do a vertex coloring to assign one of four shadow channels (R,G,B,A) to each light. Overlapping lights would be placed in different channels, but lights which did not overlap could reuse the same channel. This allowed us to pack a theoretically infinite number of lights in a single baked shadow texture as long as the graph was 4-colorable.'"
Link to Original Source

Sorry! There are no comments related to the filter you selected.

Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?