23.08.2015 Views

Illustrative Rendering in

NPAR07_IllustrativeRenderingInTeamFortress2_Slides

NPAR07_IllustrativeRenderingInTeamFortress2_Slides

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Illustrative</strong><strong>Render<strong>in</strong>g</strong> <strong>in</strong>Team Fortress 2Jason MitchellMoby FranckeDhabih Eng© 2007 Valve Corporation. All Rights Reserved.


Outl<strong>in</strong>e• Motivations and related work• Environments• Characters and <strong>in</strong>teractive shad<strong>in</strong>g• Future work© 2007 Valve Corporation. All Rights Reserved.


Team Fortress 2• Class-based multiplayercombat game which will bereleased this fall• Unique visual style• Differentiation - multiplayercombat games tend toembrace a contemporaryphotorealistic look• Gameplay -Team Fortresshas always featuredcartoonish, over-the-topsituations• Readability - Classdifferentiation is the core ofTeam Fortress 2, hence weneeded to be able to clearlydifferentiate classes visually© 2007 Valve Corporation. All Rights Reserved.


Environment Design Pr<strong>in</strong>ciples• Value contrast• Simple forms• No unnecessarily off-kilter shapes• M<strong>in</strong>imize visual noise• Texture and geometric• M<strong>in</strong>imize repetition© 2007 Valve Corporation. All Rights Reserved.


Contrast<strong>in</strong>g Team Properties• Red• Warm colors• Natural materials• Angular geometry• Blue• Cool colors• Industrial materials• Orthogonal forms© 2007 Valve Corporation. All Rights Reserved.


Blue base <strong>in</strong> 2fort map© 2007 Valve Corporation. All Rights Reserved.


Red base <strong>in</strong> 2fort map© 2007 Valve Corporation. All Rights Reserved.


World <strong>Render<strong>in</strong>g</strong>• Photorealistic techniques from our other games• Radiosity-generated light maps• Special effects such as reflection and refraction• Hand-pa<strong>in</strong>ted textures with m<strong>in</strong>imal noise,applied directly to 3D geometry• Loose details with visible brush strokes• Inherent solidity and frame-to-frame coherence• Hold up under magnification better thanphotoreference• Brush strokes appear <strong>in</strong> perspective, not <strong>in</strong> the2D image plane [Miyazaki02]• High frequency detail <strong>in</strong> photorealistic gamescan overpower designColor Palette© 2007 Valve Corporation. All Rights Reserved.


Miyazaki – Brush Width Foreshortened• Can easily imag<strong>in</strong>e a 3D cameramove between these 2D views ofthe same space© 2007 Valve Corporation. All Rights Reserved.Background plates fromSpirited Away


Neutral Entities• Variations <strong>in</strong> hue and saturation areused to differentiate neutral entities<strong>in</strong> the game world• A hue other than red or blue createsdisassociation from either team color• Increased saturation makes theseimportant entities stand out <strong>in</strong> thedesaturated environment• Equally beneficial or dangerous toeither team• Beneficial green / cyan health pickups• Dangerous yellow tra<strong>in</strong> yard gates© 2007 Valve Corporation. All Rights Reserved.


© 2007 Valve Corporation. All Rights Reserved.


Character Design Goals• Easily visible aga<strong>in</strong>st environment• Characters must be readable quickly by other players• Communicate shape via shad<strong>in</strong>g and silhouetteunder all light<strong>in</strong>g conditions© 2007 Valve Corporation. All Rights Reserved.


Gooch, 1998• Hue and lum<strong>in</strong>ance shifts <strong>in</strong>dicate surfaceorientation relative to light• Blend between warm and cool based uponunclamped Lambertian term, underly<strong>in</strong>g albedoand some free parameters• Extreme lights and darks are reserved for edgel<strong>in</strong>es and highlightsConventionalShad<strong>in</strong>gGoochShad<strong>in</strong>g⎛⎜⎝1212( )⎞( )⎛( )⎞nˆ⋅lˆ+ ⎟ k + α k + ⎜1−⎜ nˆ⋅lˆ+ ⎟⎟( k + βk)⎠blued⎛⎝⎝121 ⎞2 ⎠⎠yellowd© 2007 Valve Corporation. All Rights Reserved.


Lake, 2000• Lake used a 1D texture lookupbased upon the Lambertian termto simulate the limited colorpalette cartoonists use forpa<strong>in</strong>t<strong>in</strong>g cels• Also allows for the <strong>in</strong>clusion of aview-<strong>in</strong>dependent pseudospecular highlight by <strong>in</strong>clud<strong>in</strong>g asmall number of bright texels atthe “lit” end of the 1D texture mapN·L© 2007 Valve Corporation. All Rights Reserved.


Barla, 2006• Barla has extended this technique by us<strong>in</strong>g a 2D texture lookup to<strong>in</strong>corporate view-dependent and level-of-detail effects.• Fresnel-like creates a hard “virtual backlight” which is essentially arim-light<strong>in</strong>g term, though this term is not designed to correspond toany particular light<strong>in</strong>g environment.|N·V| r|N·V| rN·LN·L© 2007 Valve Corporation. All Rights Reserved.


Early 20th Century Commercial Illustration• Chose to adopt specific conventions of thecommercial illustrator J. C. Leyendecker:• Shad<strong>in</strong>g obeys a warm-to-cool hue shift. Shadows go tocool, not black• Saturation <strong>in</strong>creases at the term<strong>in</strong>ator with respect to a givenlight source. The term<strong>in</strong>ator is often reddened.• On characters, <strong>in</strong>terior details such as cloth<strong>in</strong>g folds arechosen to echo silhouette shapes• Silhouettes are often emphasized with rim highlights ratherthan dark outl<strong>in</strong>es© 2007 Valve Corporation. All Rights Reserved.


Rim HighlightsRed Term<strong>in</strong>atorJ.C. LeyendeckerJ.C. LeyendeckerArrow collar advertisement, 1929Swimm<strong>in</strong>’ Hole, 1935© 2007 Valve Corporation. All Rights Reserved.


Cloth<strong>in</strong>g FoldsJ.C. LeyendeckerThanksgiv<strong>in</strong>g 1628-1928© 2007 Valve Corporation. All Rights Reserved.J.C. LeyendeckerTally-Ho, 1930


Eng<strong>in</strong>eer Concept© 2007 Valve Corporation. All Rights Reserved.


Rim Highlight<strong>in</strong>g: Before© 2007 Valve Corporation. All Rights Reserved.


Rim Highlight<strong>in</strong>g: After© 2007 Valve Corporation. All Rights Reserved.


• Players must be able to quickly identify other players by team, classand selected weapon at a variety of distances and viewpo<strong>in</strong>ts• We th<strong>in</strong>k of this <strong>in</strong> terms of a visual “read hierarchy”• Design Goals• Team – Friend or Foe?• Color• Class – Run or Attack?• Dist<strong>in</strong>ctive silhouettes• Body proportions• Weapons• Shoes, hats and cloth<strong>in</strong>g folds• Selected weapon – What’s he pack<strong>in</strong>’?• Highest contrast at chest level, where weapon is held• Gradient from dark feet to light chestColor Palette© 2007 Valve Corporation. All Rights Reserved.


Character Light<strong>in</strong>g EquationView <strong>in</strong>dependentkd⎡⎢a⎣⎤⎠⎥⎦L( ) ( ( ) ) ⎜⎛ +γnˆc w α nˆ⋅lˆβ ⎟⎞ ++∑i=1i⎝iL∑i=1[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)issirView-dependentrirr© 2007 Valve Corporation. All Rights Reserved.


kdView Independent Terms⎡⎢a⎣L( ) ( ( ) )⎤⎜⎛ +γnˆc w α nˆ⋅lˆβ ⎟⎞⎥ ⎦+∑i=1• Spatially-vary<strong>in</strong>g directionalambienti⎝i⎠© 2007 Valve Corporation. All Rights Reserved.


kdView Independent Terms⎡⎢a⎣L( ) ( ( ) )⎤⎜⎛ +γnˆc w α nˆ⋅lˆβ ⎟⎞⎥ ⎦+∑i=1• Spatially-vary<strong>in</strong>g directionalambient• Modified Lambertian termsi⎝i⎠© 2007 Valve Corporation. All Rights Reserved.


kdView Independent Terms⎡⎢a⎣L( ) ( ( ) )⎤⎜⎛ +γnˆc w α nˆ⋅lˆβ ⎟⎞⎥ ⎦+∑i=1• Spatially-vary<strong>in</strong>g directionalambient• Modified Lambertian terms• Unclamped Lambertian termi⎝i⎠© 2007 Valve Corporation. All Rights Reserved.


kdView Independent Terms⎡⎢a⎣L( ) ( ( ) )⎤⎜⎛ +γnˆc w α nˆ⋅lˆβ ⎟⎞⎥ ⎦+∑i=1• Spatially-vary<strong>in</strong>g directionalambient• Modified Lambertian terms• Unclamped Lambertian term• Scale, bias and exponenti⎝i⎠© 2007 Valve Corporation. All Rights Reserved.


View Independent Termskd⎡⎢a⎣L( ) ( ( ) )⎤⎜⎛ +γnˆc w α nˆ⋅lˆβ ⎟⎞⎥ ⎦+∑i=1• Spatially-vary<strong>in</strong>g directionalambient• Modified Lambertian terms• Unclamped Lambertian term• Scale, bias and exponent• Warp<strong>in</strong>g function• Albedo12i( nˆ⋅lˆ)+12⎝i⎠© 2007 Valve Corporation. All Rights Reserved.


kdView Independent Terms⎡⎢a⎣L( ) ( ( ) )⎤⎜⎛ +γnˆc w α nˆ⋅lˆβ ⎟⎞⎥ ⎦+∑i=1• Spatially-vary<strong>in</strong>g directionalambient• Modified Lambertian terms• Unclamped Lambertian term• Scale, bias and exponent• Warp<strong>in</strong>g functioni⎝i⎠© 2007 Valve Corporation. All Rights Reserved.


kdView Independent Terms⎡⎢a⎣L( ) ( ( ) )⎤⎜⎛ +γnˆc w α nˆ⋅lˆβ ⎟⎞⎥ ⎦+∑i=1• Spatially-vary<strong>in</strong>g directionalambient• Modified Lambertian terms• Unclamped Lambertian term• Scale, bias and exponent• Warp<strong>in</strong>g function• Albedoi⎝i⎠© 2007 Valve Corporation. All Rights Reserved.


kdView Independent Terms⎡⎢a⎣L( ) ( ( ) )⎤⎜⎛ +γnˆc w α nˆ⋅lˆβ ⎟⎞⎥ ⎦+∑i=1• Spatially-vary<strong>in</strong>g directionalambient• Modified Lambertian terms• Unclamped Lambertian term• Scale, bias and exponent• Warp<strong>in</strong>g function• Albedoi⎝i⎠© 2007 Valve Corporation. All Rights Reserved.


Ambient Cube• Grounds characters <strong>in</strong> game worlds• Pre-compute irradiance samplesthroughout the environment• Variable density irradiance volume[Greger98] where each sampledef<strong>in</strong>es an irradiance environmentmap [Ramamoorthi01]• Directional ambient term which<strong>in</strong>cludes only <strong>in</strong>direct light• Lights beyond the first four can beadded to the ambient cube• Used <strong>in</strong> a novel way <strong>in</strong> rim light<strong>in</strong>g,which we’ll discuss <strong>in</strong> a momentDirectional AmbientConstant Ambient© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)issirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per lightsirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per light• k rimbroad, constant exponentsirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)sirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel termsirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4sirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texturesirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texturesirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texturesirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texturesirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)is• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texturesirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)iss• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texture• Dedicated rim light<strong>in</strong>g• a(v) Directional ambient evaluated with virrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)iss• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texture• Dedicated rim light<strong>in</strong>g• a(v) Directional ambient evaluated with v• k rsame rim maskirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)iss• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texture• Dedicated rim light<strong>in</strong>g• a(v) Directional ambient evaluated with v• k rsame rim mask• f rsame rim Fresnelirrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)iss• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texture• Dedicated rim light<strong>in</strong>g• a(v) Directional ambient evaluated with v• k rsame rim mask• f rsame rim Fresnel• n·u term that makes rim highlights tend tocome from above (u is up vector)irrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)iss• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texture• Dedicated rim light<strong>in</strong>g• a(v) Directional ambient evaluated with v• k rsame rim mask• f rsame rim Fresnel• n·u term that makes rim highlights tend tocome from above (u is up vector)irrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)iss• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texture• Dedicated rim light<strong>in</strong>g• a(v) Directional ambient evaluated with v• k rsame rim mask• f rsame rim Fresnel• n·u term that makes rim highlights tend tocome from above (u is up vector)irrirr© 2007 Valve Corporation. All Rights Reserved.


L∑i=1View-dependent Terms[ c k max( f ( vˆ⋅ rˆ) kf k ( v r ) )] spec, ˆ ⋅ ˆk rim+ ( nˆ⋅uˆ) f k a( vˆ)iss• Multiple Phong terms per light• k rimbroad, constant exponent• k specexponent (constant or texture)• f sartist tuned Fresnel term• f rrim Fresnel term, (1-(n·v)) 4• k rrim mask texture• k sspecular mask texture• Dedicated rim light<strong>in</strong>g• a(v) Directional ambient evaluated with v• k rsame rim mask• f rsame rim Fresnel• n·u term that makes rim highlights tend tocome from above (u is up vector)irrirr© 2007 Valve Corporation. All Rights Reserved.


Future Work• More flexible specular• Anisotropic highlights [Heidrich98][Gooch98]© 2007 Valve Corporation. All Rights Reserved.[Heidrich98]


Future Work• More flexible specular• Anisotropic highlights [Heidrich98][Gooch98]© 2007 Valve Corporation. All Rights Reserved.[Gooch98]


Future Work• More flexible specular• Anisotropic highlights [Heidrich98][Gooch98]• Shap<strong>in</strong>g highlights [Anjyo03][Anjyo03]© 2007 Valve Corporation. All Rights Reserved.


Future Work• More flexible specular• Anisotropic highlights [Heidrich98][Gooch98]• Shap<strong>in</strong>g highlights [Anjyo03]• More reliable rim term© 2007 Valve Corporation. All Rights Reserved.


Future Work• More flexible specular• Anisotropic highlights [Heidrich98][Gooch98]• Shap<strong>in</strong>g highlights [Anjyo03]• More reliable rim term• Image-space contrastenhancement [Luft06]© 2007 Valve Corporation. All Rights Reserved.[Luft06]


Future Work• More flexible specular• Anisotropic highlights [Heidrich98][Gooch98]• Shap<strong>in</strong>g highlights [Anjyo03]• More reliable rim term• Image-space contrastenhancement [Luft06]• Abstracted shadows [DeCoro07][DeCoro07]© 2007 Valve Corporation. All Rights Reserved.


Conclusion• Motivations and related work• Environments• Characters and <strong>in</strong>teractiveshad<strong>in</strong>g• Future work© 2007 Valve Corporation. All Rights Reserved.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!