The Unique Lighting of Mirror's Edge

  • View
    24.510

  • Download
    6

Embed Size (px)

DESCRIPTION

We present the technology and ideas behind the unique lighting in MIRRORS EDGE from DICE. Covering how DICE adopted Global illumination into their lighting process and Illuminate Labs current toolbox of state of the art lighting technology.

Text of The Unique Lighting of Mirror's Edge

  • The Unique Lighting of Mirrors Edge David Larsson, Illuminate Labs Henrik Haln, EA DICE
  • Illuminate Labs
    • Founded in 2002
    • Since 3 years 100% focused on lighting for games
    • Based in Gothenburg, Sweden
    • 10 employees (8 software engineers )
    • +30 game studios as clients
    • Epic Independent Partner Program member
  • Illuminate Labs
    • Proprietary LiquidLight technology
    • Used in development of many of the most exciting game titles
      • Mirrors Edge DICE
      • Killzone 2 Guerrilla
      • WET A2M
      • Mass Effect BioWare
      • Gran Turismo Polyphony Digital
      • Heavenly Sword Ninja Theory
    • State of the art global illumination
    • Efficient workflow
  • EA DICE
    • Around since early 1990s
    • ~250 Employees in Stockholm, Sweden
    • Selected titles
      • Mirrors Edge
      • Battlefield Series
      • Rallisport Challenge
    • Acquired by EA 2006
  • Mirrors Edge
    • Action Adventure
    • A new take on first person movement
      • First person free running
      • No more gun-on-a-stick
    • You play Faith
      • Free running information courier
  • Mirrors Edge
  • Background
    • No shadows at all 14 Years ago
    • New techniques showed up
      • Lightmaps
      • Shadowmaps
      • Stencil Shadows
    • Bake shadow/no shadow
    • Not much has changed until recently
  • Global Illumination
  • Global Illumination
  • Global Illumination
  • No Global Illumination
  • Light and Shadow
    • There is much more to lighting than telling where the shadow is
    • Offline resources are much greater now
    • Spend some more time computing the lightmaps
  • Beast collaboration
    • Wanted standalone renderer
    • Good experience Illuminate Labs products
  • Global Illumination
  • No Global Illumination
  • Beast collaboration
    • Artistic requirements met early on
  • Beast collaboration
  • Art style
  • White enough?
  • White enough?
  • Techniques
    • GI isnt a set of features
    • More like a uniform solution
    • Easily recreates a number of phenomena
      • Bouncing light
      • Color bleeding
      • Transparency transfer
  • Bounce
  • Bounce
  • Bounce
    • Artistic requirements met early on
  • Bleeding
  • Bleeding
  • Bleeding
  • Bleeding
  • Bleeding
  • Bleeding
  • Bleeding
  • Colored transparency
  • Colored transparency
  • Radiosity normal maps
  • Radiosity normal maps
  • Radiosity normal maps
  • Radiosity normal maps
  • Radiosity normal maps
  • Radiosity normal maps
  • Radiosity normal maps
  • Radiosity normal maps
  • Radiosity normal maps
  • Soft shadows
  • Soft shadows
  • Soft shadows
  • Lighting process
    • Different approach from traditional fake methods
    • Very similar to real world lighting
    • Work with light intensities, colors and materials
    • Best results with no invisible lights
    • Iterate on small areas
  • Indoors with sun
  • Material tweaks
  • Daylight outdoors
  • Outdoors
  • Outdoors
  • Indoors
  • Indoors
  • Lighting process
  • Lighting process
  • Lighting process
    • Artistic requirements met early on
  • Lighting process
    • Artistic requirements met early on
  • Lighting process
    • Artistic requirements met early on
  • Area lights
  • Area lights
  • Lighting process
  • Lighting process
  • Lighting process
  • Lighting process
  • Lighting process
    • Rendering farm. Mostly on workstations
      • 50 cores per bake
      • Efficiency depends on many factors
      • Usually 15 times faster than local
    • Some stats (the Shard):
      • ~200x3 Lightmaps (1024x1024 DXT1)
      • ~15000 meshes (12000 RNM + 4000 Vertex)
      • ~2000 lights
  • Additional techniques
    • Curves
      • Color correction post process
      • Very similar to photoshop equivalent
      • Arbitrary number of segments in editor
      • Curves for R, G, B and Luminance
  • Curves
  • Curves
  • Curves
  • Curves
  • Curves
  • Curves
  • Curves
  • Curves
      • Converted to three (RGB) curves with 16 linear segments for runtime
      • Realtime in-editor preview
      • Compared to cubes:
        • More GPU ALU
        • Less CPU and less data to GPU
        • Possibly more precision
  • Curves
    • Artist curve
  • Curves
    • 16 linear segments
  • Curves
    • Close enough
  • Curves
      • 16 segments go a long way
      • Two 16 bit 16x1 RGBA textures sent to GPU
      • Segment lookup with color as UV
      • Interpolation between set