SlideShare une entreprise Scribd logo
1  sur  49
Télécharger pour lire hors ligne
Butterfly Effect:
Workflow, Rendering & Shading
Renaldas Zioma
Unity Technologies
@__ReJ__
Monday, April 29, 13
This talk will cover workflows and techniques that we adopted while working on the
Butterfly Effect.
•
Unite template2
What is it?
Real-time animated short
Collaboration between Unity, Passion Pictures and NVIDIA
Monday, April 29, 13
If you haven’t seen Butterfly Effect is realtime animated short, developed in collaboration
between Unity, Passion Pictures and NVIDIA
•
Opportunity to Learn
• Passion Pictures
• New world of RealTime
• No prior experience with Unity
• Unity Technologies
• CG Pipeline
• Huge amounts of Data
3
Monday, April 29, 13
Passion Pictures is a film and animation production company with broad experience in
CG, stop-motion, documentary and traditional media. Passion Pictures have developed
visual elements for animated rock band Gorillaz, cinematics for Rock Band video game
and infamous (in UK) Meerkat advertisements.
Prior to this collaboration Passion Pictures had NO experience with Real Time
rendering / Game technologies or any experience working with Unity tools.
We approached Passion Pictures in late Fall of 2011 looking for collaboration on a real-
time short.
Real-time was a completely new area for Passion Pictures thus presented a learning
opportunity to adopt RealTime for internal pre-visualization and leverage experience for
working with Interactive projects (studio is working on number of such projects since).
Passion Pictures: “We felt we had an opportunity to do something special that we hadn’t
done before, get experience with the Unity real time engine and help drive Unity in a
direction that could integrate it with our studio.”
Project Outline
• 30GB of source Assets
• 5GB of runtime Data
• 137 shots
• 40 “scenes” in Editor
4
Monday, April 29, 13
Project 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
• optimizations
5
Monday, April 29, 13
Unite template6
Monday, April 29, 13
Passion Pictures presented a number of short film ideas and once Dan Sumich’s
“Butterfly Effect” pitch was chosen - work started.
Storyboard was developed from original pitch. Next storyboard was put into Animatronic
- animated sequence of images in sync with music too capture flow and timing.
Example of the storyboards for Scooter section in development.
Unite template7
Monday, April 29, 13
Color Boards helped to capture mood and lighting.
It is worth noting how well Story and Color Boards resemble the final look of the short.
Previz
• 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 150
8
Monday, April 29, 13
First pre-visualization was done in traditional to Passion Pictures way - directly in
Softimage XSI.
Only standard camera settings based on physically cameras and lenses as used in Live
shoots (Prime/Zoom lenses) were used to capture the filmic feel.
Pipeline
• Connect Passion pipeline with Unity Editor
• Main Goal
Minimal changes to Artist workflow!
9
Monday, April 29, 13
Very short production cycle (traditional to CG industry) required minimal changes to
artist workflow.
Both Passion pipeline (XSI scripts) and Unity Editor scripting capabilities proved to be
flexible enough.
Passion Pictures: “After the creative challenge of finding the right director and script for
the film, the two immediate challenges were making sure that we had the right tools in
Unity for the job so that we could take our pipeline into Unity, and also making sure that
we could still work in the way we normally do as a studio.
If we break down our pipeline into animation, simulation, rendering and compositing
then we wanted to be able to bring these as much as possible into Unity working with
our existing content creation tools as normal.”
Passion 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 support
10
Monday, April 29, 13
Standard Passion Pictures asset pipeline could be mapped to Unity asset representation
quite easily. Multiple shots were grouped into a single Unity scene - some scenes
contained one shot, some multiple. Sequence of shots (SB - SkateBoard, BU - Bus)
became a group of Unity scenes sharing same folder.
Standard Passion Picture pipeline (set of Softimage XSI scripts) was augmented with
“publishing” shots to Unity project file structure and to incorporate SVN version control.
SVN was a new tool for artists.
Unite template
Character Rig
• XSI Softimage Rig
• Bones
• Envelope
• Face Shapes
• Controls
• Unity Rig
• Bones
• Blend Shapes
• Materials
11
Monday, April 29, 13
Unite template
Facial Rig
• Bones
• Head, neck, jaw, eyes
• Blend shapes
• Face
• Mocap shoot
• Face markers
• Cubic motion
• Retarget facial animation onto XSI controls
12
Monday, April 29, 13
Facial animations in Softimage XSI / Unity: combination of bones and blend shapes.
Face markers were used for facial motion capture, retargeted on controls in Softimage
XSI.
Unite template13
Monday, April 29, 13
Mocap facial shoot on the right. Animation transferred onto Softimage XSI character rig
on the left.
We worked with Centroid for the motion capture shoot. Passion Pictures provided them
with a FK rig containing just the bones and skin for our Hero character. Centroid sent
FBX files for our FK rig send back FBX files of the FK rig from Centroid.
Using an intermediate rig Passion Pictures transferred the FK animation back onto our
IK character rig in Softimage XSI. By keeping the shoot rig live in the scene, we were
able to either keep the motion capture, animate on top of it or replace it with new
animation, depending what worked in the shot.
Unite template14
Monday, April 29, 13
Facial animation controls in Softimage XSI after retargeting.
Non-linear time
• Treat Sequences as Live Shoot
• Cover the action from different angles
• Each sequence needs multiple cameras
15
Monday, April 29, 13
Action packed Butterfly Effect storyboard pushed Passion Pictures to treat film
almost as a Live shoot. In traditional Live shoots multiple cameras are used to
cover action from different angles. During the montage footage might overlap
or jump in time according to Directors whim.
Film was broken down into sequences which correspond to a continuous action
(such as Skateboard sequence).
Description about every camera was created in Final Cut and exported to
custom XML format (based on Edit Decision List or EDL file format of Final Cut).
Unite template
Non-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 Animators
16
Monday, April 29, 13
Action packed Butterfly Effect storyboard pushed Passion Pictures to treat film
almost as a Live shoot. In traditional Live shoots multiple cameras are used to
cover action from different angles. During the montage footage might overlap
or jump in time according to Directors whim.
Film was broken down into sequences which correspond to a continuous action
(such as Skateboard sequence).
Description about every camera was created in Final Cut and exported to
custom XML format (based on Edit Decision List or EDL file format of Final Cut).
Unite template
Timeline in Unity
17
Monday, April 29, 13
Next this data could be read in Unity and used to control cameras, animated
objects and physical simulations. Custom timeline viewer was developed in
Unity using Editor scripting. Changes to the film edit, jumping back and forward
in time and reordering of the shots became possible without need to rebake
animations in Softimage XSI.
Unite template
Timeline in Unity
18
Monday, April 29, 13
Next this data could be read in Unity and used to control cameras, animated
objects and physical simulations. Custom timeline viewer was developed in
Unity using Editor scripting. Changes to the film edit, jumping back and forward
in time and reordering of the shots became possible without need to rebake
animations in Softimage XSI.
Unite template
Non-linear Challenges
• Animation
• Particles
• Physics
• Rigid Body simulation
19
Monday, April 29, 13
Unite template
Point Cache
• Per-vertex Deformations
• Cloth
• Hair
20
Monday, April 29, 13
Two types of vertex animation: BlendShapes and Point Cache were introduced in Unity
for Butterfly Effect.
Passion Pictures: “In our standard pipeline we create point caches for each animated
model in the scene using .pc2 or alembic files. This creates a break in the pipeline so
that when we’re rendering we don’t need all the animation rig in the scene. For software
rendering the cache sizes and data throughput aren’t an issue but in a real time game
engine we have to keep the enveloped characters and bake the animation on the bones
per frame.”
21
Point Cache
Monday, April 29, 13
Point Cache used for extreme face deformation
Unite template
Tessellation
• CatmullClark
• Now: on CPU
• Future: OpenSubdiv library
22
Monday, April 29, 13
(Mostly due to multiple layers of resting cloth) CatmullClark tessellation was used to
match DCC tools exactly. It is problematic to implement CatmullClark using DirectX11
hardware tessellation because of recursive nature of certain patches. Instead of
approximation we went for exact CPU implementation for 1st level of subdivision.
Unite template
Hair
• Guide “strands” for modeling
• GPU Tesselation and “Amplification”
•
23
Monday, April 29, 13
Guide hair strands provide excellent control for animators.
Unite template24
Hair
Monday, April 29, 13
Final look of the hair.
25
MentalRay Architectural
(MIA) Shaders
• Familiar
• Small set of parameters
• Physically Based
• Micro facet
• Energy conserving
Monday, April 29, 13
We aimed to provide PassionPictures artists with familiar tools, hence decision to
implement realtime counterparts for MentalRay architectural shaders.
Unite template26
1 parameter for Diffuse
Monday, April 29, 13
Between Clay and Plastic.
Screenshot from the Unity Editor.
Unite template27
2 parameters for Specular
Monday, April 29, 13
Roughness and Reflectivity
Screenshot from the Unity Editor.
Unite template28
2 parameters for Reflectivity
Monday, April 29, 13
Reflectivity for depending on angle of incidence. Defined as pair of parameters - for ray
hitting at Grazing angle (90) and for ray perpendicular to the surface.
Screenshot from the Unity Editor.
Unite template
MIA Implementation
• Oren-Nayar
• Diffuse
• Cook-Torrance
• Specular
• Geometric + Roughness + Fresnel term
• Ward distribution for Roughness
• I think... ;)
• Direct + Indirect illumination
29
Monday, April 29, 13
Unite template
Unity 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 RunTime
30
Monday, April 29, 13
Unite template31
MentalRay Unity
Monday, April 29, 13
Realtime implementation matches offline MentalRay implementation quite well. Note
some small differences in size of specular and very glossy surfaces.
Unite template32
Monday, April 29, 13
Most of materials where setup by Passion Pictures in Softimage XSI and were
transferred to Unity. Tweaks were necessary to achieve final look in Unity, but relative
compatibility of the MIA and Unity shaders saved a bulk of the manual work for us.
Unite template33
Indirect Illumination (GI)
• Point Clouds for Dynamic Geometry
• Spherical Harmonics for Diffuse Bounce
• Cube Textures for Reflections
Monday, April 29, 13
For indirect lighting we went for very practical approach - storing secondary bounces in
the low-resolution textures / Spherical Harmonics probes.
Unite template34
Indirect Illumination (GI)
• Textures for Static Geometry
• Diffuse Bounce
• AO
Monday, April 29, 13
Unite template35
Indirect Illumination (GI)
• Calculated offline with Autodesk Beast
• Path Tracer + Final Gather
• IBL for Sky
• Fake Caustics
Monday, April 29, 13
Beast setup:
. 500 Final Gather rays (1 bounce)
. Path Tracer (4 bounces)
. 1024 IBL sky rays
Final quality scene bake would take between 20 minutes and 8 hours depending on the
size of the scene. Bake quality for all scenes in the short was carried on over-night on 4
machines.
Unite template36
Real Time Shadows
Monday, April 29, 13
Unite template37
Baked Shadows
• Of course baked only for static environments
Monday, April 29, 13
38
Ambient Occlusion
• HBAO - Screen Space
Monday, April 29, 13
Horizon-Based Ambient Occlusion - developed by NVIDIA.
39
Ambient Occlusion
• Too Dark & Dirty
Monday, April 29, 13
40
Ambient Occlusion
• Applied ONLY to Indirect Illumination
• Colored to match Sky better
Monday, April 29, 13
Screen Space Ambient Occlusion information is calculated at the start of the frame and
passed into the shaders, where it is applied to (occludes / darkens) indirect lighting only.
Ambient Occlusion is tinted towards the sky to achieve more plausible look.
Unite template
Skin
• Texture Space Diffusion
• 3 Layers
41
Monday, April 29, 13
Subsurface only scattering of the skin on the left side. Lighting in texture (unwrapped
UV) space on the right.
Unite template
Back Scattering
• Translucency Map
• Adds intensity to sub-
dermal layer
42
Monday, April 29, 13
R
43
2 Specular lobes
Monday, April 29, 13
Unite template
R
44
Monday, April 29, 13
Final look of the skin.
Unite template45
Depth Of Field
• Antialiasing aware
• FXAA based
• With Splatted Bokeh Texture
Monday, April 29, 13
46
Monday, April 29, 13
High variation of depth causes Depth of Field to produce noticeable aliasing on the
edges of geometry. We married Depth Of Field filter with additional FXAA based
antialiasing technique driven by radius of Circle of Confusion to blur neighboring pixels.
Example of aliasing caused by discontinuities in depth buffer on the left side. Our
approach on the right side.
Monday, April 29, 13
Depth Of Field using “standard” blur - top image.
Detecting bright pixels and “splattering” bokeh sprites on top - bottom image.
48
Thank you!
Talented people, come join our team working on Showcases for Unity!
http://unity3d.com/jobs
Monday, April 29, 13
References
49
 [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, 1998
Monday, April 29, 13

Contenu connexe

Tendances

Making a game with Molehill: Zombie Tycoon
Making a game with Molehill: Zombie TycoonMaking a game with Molehill: Zombie Tycoon
Making a game with Molehill: Zombie TycoonJean-Philippe Doiron
 
Unity & VR (Unity Roadshow 2016)
Unity & VR (Unity Roadshow 2016)Unity & VR (Unity Roadshow 2016)
Unity & VR (Unity Roadshow 2016)ozlael ozlael
 
Unity: Next Level Rendering Quality
Unity: Next Level Rendering QualityUnity: Next Level Rendering Quality
Unity: Next Level Rendering QualityUnity Technologies
 
Advanced Power Point 1
Advanced Power Point 1Advanced Power Point 1
Advanced Power Point 1liwei1207zz
 
Mobile AR Lecture6 - Introduction to Unity 3D
Mobile AR Lecture6 - Introduction to Unity 3DMobile AR Lecture6 - Introduction to Unity 3D
Mobile AR Lecture6 - Introduction to Unity 3DMark Billinghurst
 
Lecture 9 animation
Lecture 9 animationLecture 9 animation
Lecture 9 animationMr SMAK
 
Compositing, Composing Worlds
Compositing, Composing WorldsCompositing, Composing Worlds
Compositing, Composing WorldsNelson Zagalo
 
Mobile AR Lecture 5 - Location Based AR
Mobile AR Lecture 5 - Location Based ARMobile AR Lecture 5 - Location Based AR
Mobile AR Lecture 5 - Location Based ARMark Billinghurst
 
4) How did you use media technologies in the construction, research, planning...
4) How did you use media technologies in the construction, research, planning...4) How did you use media technologies in the construction, research, planning...
4) How did you use media technologies in the construction, research, planning...Chloe Alexandria
 
4) How did you use media technologies in the construction, research, planning...
4) How did you use media technologies in the construction, research, planning...4) How did you use media technologies in the construction, research, planning...
4) How did you use media technologies in the construction, research, planning...Chloe Alexandria
 

Tendances (18)

Making a game with Molehill: Zombie Tycoon
Making a game with Molehill: Zombie TycoonMaking a game with Molehill: Zombie Tycoon
Making a game with Molehill: Zombie Tycoon
 
Animation
AnimationAnimation
Animation
 
Animation
AnimationAnimation
Animation
 
Unity & VR (Unity Roadshow 2016)
Unity & VR (Unity Roadshow 2016)Unity & VR (Unity Roadshow 2016)
Unity & VR (Unity Roadshow 2016)
 
Unity: Next Level Rendering Quality
Unity: Next Level Rendering QualityUnity: Next Level Rendering Quality
Unity: Next Level Rendering Quality
 
Advanced Power Point 1
Advanced Power Point 1Advanced Power Point 1
Advanced Power Point 1
 
Animation
AnimationAnimation
Animation
 
Animation
AnimationAnimation
Animation
 
Animation
AnimationAnimation
Animation
 
Mobile AR Lecture6 - Introduction to Unity 3D
Mobile AR Lecture6 - Introduction to Unity 3DMobile AR Lecture6 - Introduction to Unity 3D
Mobile AR Lecture6 - Introduction to Unity 3D
 
Lecture 9 animation
Lecture 9 animationLecture 9 animation
Lecture 9 animation
 
Vfx PPT
Vfx PPTVfx PPT
Vfx PPT
 
Compositing, Composing Worlds
Compositing, Composing WorldsCompositing, Composing Worlds
Compositing, Composing Worlds
 
Mobile AR Lecture 5 - Location Based AR
Mobile AR Lecture 5 - Location Based ARMobile AR Lecture 5 - Location Based AR
Mobile AR Lecture 5 - Location Based AR
 
VFX
VFXVFX
VFX
 
4) How did you use media technologies in the construction, research, planning...
4) How did you use media technologies in the construction, research, planning...4) How did you use media technologies in the construction, research, planning...
4) How did you use media technologies in the construction, research, planning...
 
Q4
Q4Q4
Q4
 
4) How did you use media technologies in the construction, research, planning...
4) How did you use media technologies in the construction, research, planning...4) How did you use media technologies in the construction, research, planning...
4) How did you use media technologies in the construction, research, planning...
 

Similaire à FMX2013: Butterfly Effect

Unity animation workshop 2021-22
Unity animation workshop 2021-22Unity animation workshop 2021-22
Unity animation workshop 2021-22ThomasDeacon4
 
Question 4 of A2 Media evaluation
Question 4 of A2 Media evaluationQuestion 4 of A2 Media evaluation
Question 4 of A2 Media evaluationLewisMarcelRoscoe
 
The use of technology in the research, construction and planning stages.
The use of technology in the research, construction and planning stages.The use of technology in the research, construction and planning stages.
The use of technology in the research, construction and planning stages.DavinaRehal
 
Tel stop motion animation meaning & procedure
Tel  stop motion animation meaning & procedureTel  stop motion animation meaning & procedure
Tel stop motion animation meaning & procedureMadhusudhan Peddinti
 
What have you learnt about technologies
What have you learnt about technologiesWhat have you learnt about technologies
What have you learnt about technologiesHannahEmmaLailaJosh
 
Evalustion 2 technology
Evalustion 2 technologyEvalustion 2 technology
Evalustion 2 technologyEmily236
 
Evaluation - Question 6
Evaluation - Question 6Evaluation - Question 6
Evaluation - Question 608tparnell
 
Stop motion animation meaning & procedure
Stop motion animation meaning & procedureStop motion animation meaning & procedure
Stop motion animation meaning & procedureMadhusudhan Peddinti
 
Question 6: What have you learnt about technologies from the process of const...
Question 6: What have you learnt about technologies from the process of const...Question 6: What have you learnt about technologies from the process of const...
Question 6: What have you learnt about technologies from the process of const...Austen Nuttall
 
Real-time CG animation in Unity: unpacking the Sherman project - Unite Copenh...
Real-time CG animation in Unity: unpacking the Sherman project - Unite Copenh...Real-time CG animation in Unity: unpacking the Sherman project - Unite Copenh...
Real-time CG animation in Unity: unpacking the Sherman project - Unite Copenh...Unity Technologies
 
How did you use media technologies in the
How did you use media technologies in theHow did you use media technologies in the
How did you use media technologies in thecsullivans05
 
How did you use media technologies in the
How did you use media technologies in theHow did you use media technologies in the
How did you use media technologies in thecsullivans05
 
What have you learnt from technologies from the process of construction the p...
What have you learnt from technologies from the process of construction the p...What have you learnt from technologies from the process of construction the p...
What have you learnt from technologies from the process of construction the p...JackSandham
 
Chapter 9 animation
Chapter 9 animationChapter 9 animation
Chapter 9 animationshelly3160
 

Similaire à FMX2013: Butterfly Effect (20)

Unity animation workshop 2021-22
Unity animation workshop 2021-22Unity animation workshop 2021-22
Unity animation workshop 2021-22
 
pres
prespres
pres
 
Question 4 of A2 Media evaluation
Question 4 of A2 Media evaluationQuestion 4 of A2 Media evaluation
Question 4 of A2 Media evaluation
 
Adobe premiere
Adobe premiereAdobe premiere
Adobe premiere
 
Evaluation 4
Evaluation 4Evaluation 4
Evaluation 4
 
The use of technology in the research, construction and planning stages.
The use of technology in the research, construction and planning stages.The use of technology in the research, construction and planning stages.
The use of technology in the research, construction and planning stages.
 
Tel stop motion animation meaning & procedure
Tel  stop motion animation meaning & procedureTel  stop motion animation meaning & procedure
Tel stop motion animation meaning & procedure
 
What have you learnt about technologies
What have you learnt about technologiesWhat have you learnt about technologies
What have you learnt about technologies
 
Evalustion 2 technology
Evalustion 2 technologyEvalustion 2 technology
Evalustion 2 technology
 
Question 6
Question 6Question 6
Question 6
 
Evaluation - Question 6
Evaluation - Question 6Evaluation - Question 6
Evaluation - Question 6
 
Stop motion animation meaning & procedure
Stop motion animation meaning & procedureStop motion animation meaning & procedure
Stop motion animation meaning & procedure
 
Question 6: What have you learnt about technologies from the process of const...
Question 6: What have you learnt about technologies from the process of const...Question 6: What have you learnt about technologies from the process of const...
Question 6: What have you learnt about technologies from the process of const...
 
Real-time CG animation in Unity: unpacking the Sherman project - Unite Copenh...
Real-time CG animation in Unity: unpacking the Sherman project - Unite Copenh...Real-time CG animation in Unity: unpacking the Sherman project - Unite Copenh...
Real-time CG animation in Unity: unpacking the Sherman project - Unite Copenh...
 
Evaluation
EvaluationEvaluation
Evaluation
 
How did you use media technologies in the
How did you use media technologies in theHow did you use media technologies in the
How did you use media technologies in the
 
How did you use media technologies in the
How did you use media technologies in theHow did you use media technologies in the
How did you use media technologies in the
 
What have you learnt from technologies from the process of construction the p...
What have you learnt from technologies from the process of construction the p...What have you learnt from technologies from the process of construction the p...
What have you learnt from technologies from the process of construction the p...
 
Animation ict
Animation ictAnimation ict
Animation ict
 
Chapter 9 animation
Chapter 9 animationChapter 9 animation
Chapter 9 animation
 

Plus de Renaldas Zioma

Overview of AI Startups in Lithuania
Overview of AI Startups in LithuaniaOverview of AI Startups in Lithuania
Overview of AI Startups in LithuaniaRenaldas Zioma
 
Trip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine LearningTrip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine LearningRenaldas Zioma
 
New Tools for Art and Content - Artificial Intelligence and Machine Learning
New Tools for Art and Content - Artificial Intelligence and Machine LearningNew Tools for Art and Content - Artificial Intelligence and Machine Learning
New Tools for Art and Content - Artificial Intelligence and Machine LearningRenaldas Zioma
 
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CGTHE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CGRenaldas Zioma
 
Unite2014: Mastering Physically Based Shading in Unity 5
Unite2014: Mastering Physically Based Shading in Unity 5Unite2014: Mastering Physically Based Shading in Unity 5
Unite2014: Mastering Physically Based Shading in Unity 5Renaldas Zioma
 

Plus de Renaldas Zioma (7)

Overview of AI Startups in Lithuania
Overview of AI Startups in LithuaniaOverview of AI Startups in Lithuania
Overview of AI Startups in Lithuania
 
Trip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine LearningTrip down the GPU lane with Machine Learning
Trip down the GPU lane with Machine Learning
 
New Tools for Art and Content - Artificial Intelligence and Machine Learning
New Tools for Art and Content - Artificial Intelligence and Machine LearningNew Tools for Art and Content - Artificial Intelligence and Machine Learning
New Tools for Art and Content - Artificial Intelligence and Machine Learning
 
Practical AI in Games
Practical AI in GamesPractical AI in Games
Practical AI in Games
 
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CGTHE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
THE BLACKSMITH demo: Bridging the Gap between Realtime and Offline CG
 
Unite2014: Mastering Physically Based Shading in Unity 5
Unite2014: Mastering Physically Based Shading in Unity 5Unite2014: Mastering Physically Based Shading in Unity 5
Unite2014: Mastering Physically Based Shading in Unity 5
 
Buttefly
ButteflyButtefly
Buttefly
 

Dernier

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesBernd Ruecker
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 

Dernier (20)

How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
QCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architecturesQCon London: Mastering long-running processes in modern architectures
QCon London: Mastering long-running processes in modern architectures
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 

FMX2013: Butterfly Effect

  • 1. Butterfly Effect: Workflow, Rendering & Shading Renaldas Zioma Unity Technologies @__ReJ__ Monday, April 29, 13 This talk will cover workflows and techniques that we adopted while working on the Butterfly Effect. •
  • 2. Unite template2 What is it? Real-time animated short Collaboration between Unity, Passion Pictures and NVIDIA Monday, April 29, 13 If you haven’t seen Butterfly Effect is realtime animated short, developed in collaboration between Unity, Passion Pictures and NVIDIA •
  • 3. Opportunity to Learn • Passion Pictures • New world of RealTime • No prior experience with Unity • Unity Technologies • CG Pipeline • Huge amounts of Data 3 Monday, April 29, 13 Passion Pictures is a film and animation production company with broad experience in CG, stop-motion, documentary and traditional media. Passion Pictures have developed visual elements for animated rock band Gorillaz, cinematics for Rock Band video game and infamous (in UK) Meerkat advertisements. Prior to this collaboration Passion Pictures had NO experience with Real Time rendering / Game technologies or any experience working with Unity tools. We approached Passion Pictures in late Fall of 2011 looking for collaboration on a real- time short. Real-time was a completely new area for Passion Pictures thus presented a learning opportunity to adopt RealTime for internal pre-visualization and leverage experience for working with Interactive projects (studio is working on number of such projects since). Passion Pictures: “We felt we had an opportunity to do something special that we hadn’t done before, get experience with the Unity real time engine and help drive Unity in a direction that could integrate it with our studio.”
  • 4. Project Outline • 30GB of source Assets • 5GB of runtime Data • 137 shots • 40 “scenes” in Editor 4 Monday, April 29, 13
  • 5. Project 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 • optimizations 5 Monday, April 29, 13
  • 6. Unite template6 Monday, April 29, 13 Passion Pictures presented a number of short film ideas and once Dan Sumich’s “Butterfly Effect” pitch was chosen - work started. Storyboard was developed from original pitch. Next storyboard was put into Animatronic - animated sequence of images in sync with music too capture flow and timing. Example of the storyboards for Scooter section in development.
  • 7. Unite template7 Monday, April 29, 13 Color Boards helped to capture mood and lighting. It is worth noting how well Story and Color Boards resemble the final look of the short.
  • 8. Previz • 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 150 8 Monday, April 29, 13 First pre-visualization was done in traditional to Passion Pictures way - directly in Softimage XSI. Only standard camera settings based on physically cameras and lenses as used in Live shoots (Prime/Zoom lenses) were used to capture the filmic feel.
  • 9. Pipeline • Connect Passion pipeline with Unity Editor • Main Goal Minimal changes to Artist workflow! 9 Monday, April 29, 13 Very short production cycle (traditional to CG industry) required minimal changes to artist workflow. Both Passion pipeline (XSI scripts) and Unity Editor scripting capabilities proved to be flexible enough. Passion Pictures: “After the creative challenge of finding the right director and script for the film, the two immediate challenges were making sure that we had the right tools in Unity for the job so that we could take our pipeline into Unity, and also making sure that we could still work in the way we normally do as a studio. If we break down our pipeline into animation, simulation, rendering and compositing then we wanted to be able to bring these as much as possible into Unity working with our existing content creation tools as normal.”
  • 10. Passion 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 support 10 Monday, April 29, 13 Standard Passion Pictures asset pipeline could be mapped to Unity asset representation quite easily. Multiple shots were grouped into a single Unity scene - some scenes contained one shot, some multiple. Sequence of shots (SB - SkateBoard, BU - Bus) became a group of Unity scenes sharing same folder. Standard Passion Picture pipeline (set of Softimage XSI scripts) was augmented with “publishing” shots to Unity project file structure and to incorporate SVN version control. SVN was a new tool for artists.
  • 11. Unite template Character Rig • XSI Softimage Rig • Bones • Envelope • Face Shapes • Controls • Unity Rig • Bones • Blend Shapes • Materials 11 Monday, April 29, 13
  • 12. Unite template Facial Rig • Bones • Head, neck, jaw, eyes • Blend shapes • Face • Mocap shoot • Face markers • Cubic motion • Retarget facial animation onto XSI controls 12 Monday, April 29, 13 Facial animations in Softimage XSI / Unity: combination of bones and blend shapes. Face markers were used for facial motion capture, retargeted on controls in Softimage XSI.
  • 13. Unite template13 Monday, April 29, 13 Mocap facial shoot on the right. Animation transferred onto Softimage XSI character rig on the left. We worked with Centroid for the motion capture shoot. Passion Pictures provided them with a FK rig containing just the bones and skin for our Hero character. Centroid sent FBX files for our FK rig send back FBX files of the FK rig from Centroid. Using an intermediate rig Passion Pictures transferred the FK animation back onto our IK character rig in Softimage XSI. By keeping the shoot rig live in the scene, we were able to either keep the motion capture, animate on top of it or replace it with new animation, depending what worked in the shot.
  • 14. Unite template14 Monday, April 29, 13 Facial animation controls in Softimage XSI after retargeting.
  • 15. Non-linear time • Treat Sequences as Live Shoot • Cover the action from different angles • Each sequence needs multiple cameras 15 Monday, April 29, 13 Action packed Butterfly Effect storyboard pushed Passion Pictures to treat film almost as a Live shoot. In traditional Live shoots multiple cameras are used to cover action from different angles. During the montage footage might overlap or jump in time according to Directors whim. Film was broken down into sequences which correspond to a continuous action (such as Skateboard sequence). Description about every camera was created in Final Cut and exported to custom XML format (based on Edit Decision List or EDL file format of Final Cut).
  • 16. Unite template Non-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 Animators 16 Monday, April 29, 13 Action packed Butterfly Effect storyboard pushed Passion Pictures to treat film almost as a Live shoot. In traditional Live shoots multiple cameras are used to cover action from different angles. During the montage footage might overlap or jump in time according to Directors whim. Film was broken down into sequences which correspond to a continuous action (such as Skateboard sequence). Description about every camera was created in Final Cut and exported to custom XML format (based on Edit Decision List or EDL file format of Final Cut).
  • 17. Unite template Timeline in Unity 17 Monday, April 29, 13 Next this data could be read in Unity and used to control cameras, animated objects and physical simulations. Custom timeline viewer was developed in Unity using Editor scripting. Changes to the film edit, jumping back and forward in time and reordering of the shots became possible without need to rebake animations in Softimage XSI.
  • 18. Unite template Timeline in Unity 18 Monday, April 29, 13 Next this data could be read in Unity and used to control cameras, animated objects and physical simulations. Custom timeline viewer was developed in Unity using Editor scripting. Changes to the film edit, jumping back and forward in time and reordering of the shots became possible without need to rebake animations in Softimage XSI.
  • 19. Unite template Non-linear Challenges • Animation • Particles • Physics • Rigid Body simulation 19 Monday, April 29, 13
  • 20. Unite template Point Cache • Per-vertex Deformations • Cloth • Hair 20 Monday, April 29, 13 Two types of vertex animation: BlendShapes and Point Cache were introduced in Unity for Butterfly Effect. Passion Pictures: “In our standard pipeline we create point caches for each animated model in the scene using .pc2 or alembic files. This creates a break in the pipeline so that when we’re rendering we don’t need all the animation rig in the scene. For software rendering the cache sizes and data throughput aren’t an issue but in a real time game engine we have to keep the enveloped characters and bake the animation on the bones per frame.”
  • 21. 21 Point Cache Monday, April 29, 13 Point Cache used for extreme face deformation
  • 22. Unite template Tessellation • CatmullClark • Now: on CPU • Future: OpenSubdiv library 22 Monday, April 29, 13 (Mostly due to multiple layers of resting cloth) CatmullClark tessellation was used to match DCC tools exactly. It is problematic to implement CatmullClark using DirectX11 hardware tessellation because of recursive nature of certain patches. Instead of approximation we went for exact CPU implementation for 1st level of subdivision.
  • 23. Unite template Hair • Guide “strands” for modeling • GPU Tesselation and “Amplification” • 23 Monday, April 29, 13 Guide hair strands provide excellent control for animators.
  • 24. Unite template24 Hair Monday, April 29, 13 Final look of the hair.
  • 25. 25 MentalRay Architectural (MIA) Shaders • Familiar • Small set of parameters • Physically Based • Micro facet • Energy conserving Monday, April 29, 13 We aimed to provide PassionPictures artists with familiar tools, hence decision to implement realtime counterparts for MentalRay architectural shaders.
  • 26. Unite template26 1 parameter for Diffuse Monday, April 29, 13 Between Clay and Plastic. Screenshot from the Unity Editor.
  • 27. Unite template27 2 parameters for Specular Monday, April 29, 13 Roughness and Reflectivity Screenshot from the Unity Editor.
  • 28. Unite template28 2 parameters for Reflectivity Monday, April 29, 13 Reflectivity for depending on angle of incidence. Defined as pair of parameters - for ray hitting at Grazing angle (90) and for ray perpendicular to the surface. Screenshot from the Unity Editor.
  • 29. Unite template MIA Implementation • Oren-Nayar • Diffuse • Cook-Torrance • Specular • Geometric + Roughness + Fresnel term • Ward distribution for Roughness • I think... ;) • Direct + Indirect illumination 29 Monday, April 29, 13
  • 30. Unite template Unity 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 RunTime 30 Monday, April 29, 13
  • 31. Unite template31 MentalRay Unity Monday, April 29, 13 Realtime implementation matches offline MentalRay implementation quite well. Note some small differences in size of specular and very glossy surfaces.
  • 32. Unite template32 Monday, April 29, 13 Most of materials where setup by Passion Pictures in Softimage XSI and were transferred to Unity. Tweaks were necessary to achieve final look in Unity, but relative compatibility of the MIA and Unity shaders saved a bulk of the manual work for us.
  • 33. Unite template33 Indirect Illumination (GI) • Point Clouds for Dynamic Geometry • Spherical Harmonics for Diffuse Bounce • Cube Textures for Reflections Monday, April 29, 13 For indirect lighting we went for very practical approach - storing secondary bounces in the low-resolution textures / Spherical Harmonics probes.
  • 34. Unite template34 Indirect Illumination (GI) • Textures for Static Geometry • Diffuse Bounce • AO Monday, April 29, 13
  • 35. Unite template35 Indirect Illumination (GI) • Calculated offline with Autodesk Beast • Path Tracer + Final Gather • IBL for Sky • Fake Caustics Monday, April 29, 13 Beast setup: . 500 Final Gather rays (1 bounce) . Path Tracer (4 bounces) . 1024 IBL sky rays Final quality scene bake would take between 20 minutes and 8 hours depending on the size of the scene. Bake quality for all scenes in the short was carried on over-night on 4 machines.
  • 36. Unite template36 Real Time Shadows Monday, April 29, 13
  • 37. Unite template37 Baked Shadows • Of course baked only for static environments Monday, April 29, 13
  • 38. 38 Ambient Occlusion • HBAO - Screen Space Monday, April 29, 13 Horizon-Based Ambient Occlusion - developed by NVIDIA.
  • 39. 39 Ambient Occlusion • Too Dark & Dirty Monday, April 29, 13
  • 40. 40 Ambient Occlusion • Applied ONLY to Indirect Illumination • Colored to match Sky better Monday, April 29, 13 Screen Space Ambient Occlusion information is calculated at the start of the frame and passed into the shaders, where it is applied to (occludes / darkens) indirect lighting only. Ambient Occlusion is tinted towards the sky to achieve more plausible look.
  • 41. Unite template Skin • Texture Space Diffusion • 3 Layers 41 Monday, April 29, 13 Subsurface only scattering of the skin on the left side. Lighting in texture (unwrapped UV) space on the right.
  • 42. Unite template Back Scattering • Translucency Map • Adds intensity to sub- dermal layer 42 Monday, April 29, 13
  • 44. Unite template R 44 Monday, April 29, 13 Final look of the skin.
  • 45. Unite template45 Depth Of Field • Antialiasing aware • FXAA based • With Splatted Bokeh Texture Monday, April 29, 13
  • 46. 46 Monday, April 29, 13 High variation of depth causes Depth of Field to produce noticeable aliasing on the edges of geometry. We married Depth Of Field filter with additional FXAA based antialiasing technique driven by radius of Circle of Confusion to blur neighboring pixels. Example of aliasing caused by discontinuities in depth buffer on the left side. Our approach on the right side.
  • 47. Monday, April 29, 13 Depth Of Field using “standard” blur - top image. Detecting bright pixels and “splattering” bokeh sprites on top - bottom image.
  • 48. 48 Thank you! Talented people, come join our team working on Showcases for Unity! http://unity3d.com/jobs Monday, April 29, 13
  • 49. References 49  [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, 1998 Monday, April 29, 13