Butterfly Effect:Workflow, Rendering & ShadingRenaldas ZiomaUnity Technologies@__ReJ__Monday, April 29, 13
Unite template2What is it?Real-time animated shortCollaboration between Unity, Passion Pictures and NVIDIAMonday, April 29...
Unite templateOpportunity to Learn• Passion Pictures• New world of RealTime• No prior experience with Unity• Unity Technol...
Unite templateProject Outline• 30GB of source Assets• 5GB of runtime Data• 137 shots• 40 “scenes” in Editor4Monday, April ...
Unite templateProject Organization• Team of ~10 - first month• pre production• research / tools• Team of ~30 - next 2 month...
Unite template6Monday, April 29, 13
Unite template7Monday, April 29, 13
Unite templatePreviz• One Sequence• Goals• Initial timings• Visualize Space• Prime lenses• 10, 14, 18, 21, 24, 27, 35, 40,...
Unite templatePipeline• Connect Passion pipeline with Unity Editor• Main GoalMinimal changes to Artist workflow!9Monday, Ap...
Unite templatePassion Pipeline• No Change for Artists• Use Existing Asset Pipeline• Sequences SB, BU• Shots SB_01_00, SB_0...
Unite templateCharacter Rig• XSI Softimage Rig• Bones• Envelope• Face Shapes• Controls• Unity Rig• Bones• Blend Shapes• Ma...
Unite templateFacial Rig• Bones• Head, neck, jaw, eyes• Blend shapes• Face• Mocap shoot• Face markers• Cubic motion• Retar...
Unite template13Monday, April 29, 13
Unite template14Monday, April 29, 13
Unite templateNon-linear time• Treat Sequences as Live Shoot• Cover the action from different angles• Each sequence needs ...
Unite templateNon-linear time• Shot Description• Final Cut edit• Export EDL as XML file• Camera in/out points• Timeline in ...
Unite templateTimeline in Unity17Monday, April 29, 13
Unite templateTimeline in Unity18Monday, April 29, 13
Unite templateNon-linear Challenges• Animation• Particles• Physics• Rigid Body simulation19Monday, April 29, 13
Unite templatePoint Cache• Per-vertex Deformations• Cloth• Hair20Monday, April 29, 13
Unite template21Point CacheMonday, April 29, 13
Unite templateTessellation• CatmullClark• Now: on CPU• Future: OpenSubdiv library22Monday, April 29, 13
Unite templateHair• Guide “strands” for modeling• GPU Tesselation and “Amplification”•23Monday, April 29, 13
Unite template24HairMonday, April 29, 13
Unite template25MentalRay Architectural(MIA) Shaders• Familiar• Small set of parameters• Physically Based• Micro facet• En...
Unite template261 parameter for DiffuseMonday, April 29, 13
Unite template272 parameters for SpecularMonday, April 29, 13
Unite template282 parameters for ReflectivityMonday, April 29, 13
Unite templateMIA Implementation• Oren-Nayar• Diffuse• Cook-Torrance• Specular• Geometric + Roughness + Fresnel term• Ward...
Unite templateUnity Implementation• Oren-Nayar• very expensive• OK approximations• Cook-Torrance• Normalized Blinn-Phong i...
Unite template31MentalRay UnityMonday, April 29, 13
Unite template32Monday, April 29, 13
Unite template33Indirect Illumination (GI)• Point Clouds for Dynamic Geometry• Spherical Harmonics for Diffuse Bounce• Cub...
Unite template34Indirect Illumination (GI)• Textures for Static Geometry• Diffuse Bounce• AOMonday, April 29, 13
Unite template35Indirect Illumination (GI)• Calculated offline with Autodesk Beast• Path Tracer + Final Gather• IBL for Sk...
Unite template36Real Time ShadowsMonday, April 29, 13
Unite template37Baked Shadows• Of course baked only for static environmentsMonday, April 29, 13
Unite template38Ambient Occlusion• HBAO - Screen SpaceMonday, April 29, 13
Unite template39Ambient Occlusion• Too Dark & DirtyMonday, April 29, 13
Unite template40Ambient Occlusion• Applied ONLY to Indirect Illumination• Colored to match Sky betterMonday, April 29, 13
Unite templateSkin• Texture Space Diffusion• 3 Layers41Monday, April 29, 13
Unite templateBack Scattering• Translucency Map• Adds intensity to sub-dermal layer42Monday, April 29, 13
Unite templateR432 Specular lobesMonday, April 29, 13
Unite templateR44Monday, April 29, 13
Unite template45Depth Of Field• Antialiasing aware• FXAA based• With Splatted Bokeh TextureMonday, April 29, 13
Unite template46Monday, April 29, 13
Unite templateMonday, April 29, 13
Unite template48Thank you!Monday, April 29, 13
Unite templateReferences49 [Bavoil08] Image-Space Horizon-Based Ambient Occlusion. L. Bavoil, M. Sainz, 2008 [Catmull78]...
Upcoming SlideShare
Loading in …5
×

Buttefly

674 views
557 views

Published on

Published in: Technology, Art & Photos
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
674
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
9
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Buttefly

  1. 1. Butterfly Effect:Workflow, Rendering & ShadingRenaldas ZiomaUnity Technologies@__ReJ__Monday, April 29, 13
  2. 2. Unite template2What is it?Real-time animated shortCollaboration between Unity, Passion Pictures and NVIDIAMonday, April 29, 13
  3. 3. Unite templateOpportunity to Learn• Passion Pictures• New world of RealTime• No prior experience with Unity• Unity Technologies• CG Pipeline• Huge amounts of Data3Monday, April 29, 13
  4. 4. Unite templateProject Outline• 30GB of source Assets• 5GB of runtime Data• 137 shots• 40 “scenes” in Editor4Monday, April 29, 13
  5. 5. Unite templateProject Organization• Team of ~10 - first month• pre production• research / tools• Team of ~30 - next 2 months• content• tools / engine modifications• Team of 5 - last 3.5 months• polish• optimizations5Monday, April 29, 13
  6. 6. Unite template6Monday, April 29, 13
  7. 7. Unite template7Monday, April 29, 13
  8. 8. Unite templatePreviz• One Sequence• Goals• Initial timings• Visualize Space• Prime lenses• 10, 14, 18, 21, 24, 27, 35, 40, 50, 75, 100, 200• Zoom lens• 18 to 1508Monday, April 29, 13
  9. 9. Unite templatePipeline• Connect Passion pipeline with Unity Editor• Main GoalMinimal changes to Artist workflow!9Monday, April 29, 13
  10. 10. Unite templatePassion Pipeline• No Change for Artists• Use Existing Asset Pipeline• Sequences SB, BU• Shots SB_01_00, SB_02_00• Assets [Character/Camera/Layout]• Export Models and Publish Shots as normal• Add Unity support10Monday, April 29, 13
  11. 11. Unite templateCharacter Rig• XSI Softimage Rig• Bones• Envelope• Face Shapes• Controls• Unity Rig• Bones• Blend Shapes• Materials11Monday, April 29, 13
  12. 12. Unite templateFacial Rig• Bones• Head, neck, jaw, eyes• Blend shapes• Face• Mocap shoot• Face markers• Cubic motion• Retarget facial animation onto XSI controls12Monday, April 29, 13
  13. 13. Unite template13Monday, April 29, 13
  14. 14. Unite template14Monday, April 29, 13
  15. 15. Unite templateNon-linear time• Treat Sequences as Live Shoot• Cover the action from different angles• Each sequence needs multiple cameras15Monday, April 29, 13
  16. 16. Unite templateNon-linear time• Shot Description• Final Cut edit• Export EDL as XML file• Camera in/out points• Timeline in Unity• Sequence Preview in RV• Using EDL from Final Cut• Play whole preview sequence in RV• Instant Feedback for Animators16Monday, April 29, 13
  17. 17. Unite templateTimeline in Unity17Monday, April 29, 13
  18. 18. Unite templateTimeline in Unity18Monday, April 29, 13
  19. 19. Unite templateNon-linear Challenges• Animation• Particles• Physics• Rigid Body simulation19Monday, April 29, 13
  20. 20. Unite templatePoint Cache• Per-vertex Deformations• Cloth• Hair20Monday, April 29, 13
  21. 21. Unite template21Point CacheMonday, April 29, 13
  22. 22. Unite templateTessellation• CatmullClark• Now: on CPU• Future: OpenSubdiv library22Monday, April 29, 13
  23. 23. Unite templateHair• Guide “strands” for modeling• GPU Tesselation and “Amplification”•23Monday, April 29, 13
  24. 24. Unite template24HairMonday, April 29, 13
  25. 25. Unite template25MentalRay Architectural(MIA) Shaders• Familiar• Small set of parameters• Physically Based• Micro facet• Energy conservingMonday, April 29, 13
  26. 26. Unite template261 parameter for DiffuseMonday, April 29, 13
  27. 27. Unite template272 parameters for SpecularMonday, April 29, 13
  28. 28. Unite template282 parameters for ReflectivityMonday, April 29, 13
  29. 29. Unite templateMIA Implementation• Oren-Nayar• Diffuse• Cook-Torrance• Specular• Geometric + Roughness + Fresnel term• Ward distribution for Roughness• I think... ;)• Direct + Indirect illumination29Monday, April 29, 13
  30. 30. Unite templateUnity Implementation• Oren-Nayar• very expensive• OK approximations• Cook-Torrance• Normalized Blinn-Phong instead of Ward• Roughness to Phong exponent (n):• n = 2 / roughness2 - 2• Tweaked to match MIA look:• n = 2 / roughness4 - 2• Schlick approximation for Fresnel• Only direct illumination at RunTime30Monday, April 29, 13
  31. 31. Unite template31MentalRay UnityMonday, April 29, 13
  32. 32. Unite template32Monday, April 29, 13
  33. 33. Unite template33Indirect Illumination (GI)• Point Clouds for Dynamic Geometry• Spherical Harmonics for Diffuse Bounce• Cube Textures for ReflectionsMonday, April 29, 13
  34. 34. Unite template34Indirect Illumination (GI)• Textures for Static Geometry• Diffuse Bounce• AOMonday, April 29, 13
  35. 35. Unite template35Indirect Illumination (GI)• Calculated offline with Autodesk Beast• Path Tracer + Final Gather• IBL for Sky• Fake CausticsMonday, April 29, 13
  36. 36. Unite template36Real Time ShadowsMonday, April 29, 13
  37. 37. Unite template37Baked Shadows• Of course baked only for static environmentsMonday, April 29, 13
  38. 38. Unite template38Ambient Occlusion• HBAO - Screen SpaceMonday, April 29, 13
  39. 39. Unite template39Ambient Occlusion• Too Dark & DirtyMonday, April 29, 13
  40. 40. Unite template40Ambient Occlusion• Applied ONLY to Indirect Illumination• Colored to match Sky betterMonday, April 29, 13
  41. 41. Unite templateSkin• Texture Space Diffusion• 3 Layers41Monday, April 29, 13
  42. 42. Unite templateBack Scattering• Translucency Map• Adds intensity to sub-dermal layer42Monday, April 29, 13
  43. 43. Unite templateR432 Specular lobesMonday, April 29, 13
  44. 44. Unite templateR44Monday, April 29, 13
  45. 45. Unite template45Depth Of Field• Antialiasing aware• FXAA based• With Splatted Bokeh TextureMonday, April 29, 13
  46. 46. Unite template46Monday, April 29, 13
  47. 47. Unite templateMonday, April 29, 13
  48. 48. Unite template48Thank you!Monday, April 29, 13
  49. 49. Unite templateReferences49 [Bavoil08] Image-Space Horizon-Based Ambient Occlusion. L. Bavoil, M. Sainz, 2008 [Catmull78] Recursively generated B-spline surfaces on arbitrary topological meshes. E. Catmull, J.Clark, 1978 [CookTorrance82] A Reflectance Graphics Model for Computer graphic. R. L. Cook, K. E. Torrance,1982 [Hoffman10] Crafting Physically Motivated Shading Models for Game Development. N. Hoffman,2010 [Lottes09] FXAA. T. Lottes, 2009 [Mental07] mental ray Architectural and Design Visualization Shader Library. mental images GmbH,2007 http://www.mentalimages.com/fileadmin/user_upload/PDF/arch_and_design.pdf [Mikkelsen09] Microfacet Based Bidirectional Reflectance Distribution Function. M. Mikkelsen, 2009 [Nießner12] Feature-Adaptive GPU Rendering of Catmull-Clark Subdivision Surfaces. M. Nießner,C. Loop, M. Meyer, T. Derose, 2012 [Olano10] LEAN Mapping. M. Olano, D. Baker, 2010 [Schüler11] The Blinn-Phong Normalization Zoo. C. Schüler, 2011 http://www.thetenthplanet.de/archives/255 [Zhukov98] An ambient light illumination model. S. Zhukov, A. Inoes, G. Kronin, 1998Monday, April 29, 13

×