Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Intro to Computer Graphics
Search
Chang-Hung Liang
January 04, 2013
Technology
0
83
Intro to Computer Graphics
Some selected topics on computer graphics.
Chang-Hung Liang
January 04, 2013
Tweet
Share
More Decks by Chang-Hung Liang
See All by Chang-Hung Liang
Asynchronous Python
eliang
3
260
If correlation doesn’t imply causality, then what does?
eliang
3
620
Building a Render Cloud
eliang
3
1k
Other Decks in Technology
See All in Technology
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
890
Developer Summit 2025 [14-D-1] Yuki Hattori
yuhattor
19
5.1k
All you need to know about InnoDB Primary Keys
lefred
0
120
『AWS Distinguished Engineerに学ぶ リトライの技術』 #ARC403/Marc Brooker on Try again: The tools and techniques behind resilient systems
quiver
0
130
トラシューアニマルになろう ~開発者だからこそできる、安定したサービス作りの秘訣~
jacopen
2
1.5k
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
1
1.3k
急成長する企業で作った、エンジニアが輝ける制度/ 20250214 Rinto Ikenoue
shift_evolve
2
880
5分で紹介する生成AIエージェントとAmazon Bedrock Agents / 5-minutes introduction to generative AI agents and Amazon Bedrock Agents
hideakiaoyagi
0
220
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
110
ハッキングの世界に迫る~攻撃者の思考で考えるセキュリティ~
nomizone
12
4.5k
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.2k
日経電子版 x AIエージェントの可能性とAgentic RAGによって提案書生成を行う技術
masahiro_nishimi
1
290
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Navigating Team Friction
lara
183
15k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
29
4.6k
It's Worth the Effort
3n
184
28k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Adopting Sorbet at Scale
ufuk
74
9.2k
The Cult of Friendly URLs
andyhume
78
6.2k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
RailsConf 2023
tenderlove
29
1k
Building Adaptive Systems
keathley
40
2.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Transcript
Intro to Computer Graphics
Making of Computer Animation Modeling & Texturing Animation Lighting &
Rendering Editing & Compositing
Modeling & Texturing Modeling & Texturing Animation Lighting & Rendering
Editing & Compositing 3ds Max Maya
Animation Modeling & Texturing Animation Lighting & Rendering Editing &
Compositing 3ds Max Maya Houdini MotionBuilder
Lighting & Rendering Modeling & Texturing Animation Lighting & Rendering
Editing & Compositing Dreamworks' In-house Renderer mental ray®
Lighting & Rendering Modeling & Texturing Animation Lighting & Rendering
Editing & Compositing After Effects Premiere Photoshop
Modeling & Texturing Modeling & Texturing Animation Lighting & Rendering
Editing & Compositing 3ds Max Maya
3D Model Vertices Face
Texture Mapping ?
Texture Mapping: U and V U V (0, 0) (1,
1) (1, 0) (0, 1) A face on a model (0.7, 0.6) (0.6, 0.4) (0.4, 0.5)
Normal Mapping
Normal Map Gives You Details 3D Model Real World
Normal Map: Color Vector X = 2R - 1 Y
= 2G - 1 Z = 2B - 1 Example RGB: (0.5, 0.5, 1) = XYZ: (0, 0, 1)
Animation Modeling & Texturing Animation Lighting & Rendering Editing &
Compositing 3ds Max Maya Houdini MotionBuilder
Skinning Meat Bones
Skin Weights (100%, 0%) (50%,50%) (0%,100%) Influence of red bone
Influence of blue bone
Skin Weights
Lighting & Rendering Modeling & Texturing Animation Lighting & Rendering
Editing & Compositing Dreamworks' In-house Renderer mental ray®
What is Rendering?
How We See Things? Object
Raytracing
Why Things Look as They Do? Object Bidirectional reflectance distribution
function (BRDF) (a fancy term for material / shader) Normal Light direction Light amount Eye direction Amount of light reflected
Perfect Diffuse Color LambertianBRDF( normal, lightDir, lightColor, eyeDir) { return
lightColor / PI; }
Glossy Specular
Perfect Specular Color MirrorBRDF( normal, lightDir, lightColor, eyeDir) { float
LdotN = dot(lightDir, normal); float EdotN = dot(eyeDir, normal); if (abs(EdotN + LdotN) < 0.001) return lightColor; return Color(0, 0, 0); } Ɵ Ɵ lightDir eyeDir normal
Retro-Refletive
Subsurface Scattering (SSS)
Making Your Rendering More Realistic • Soft shadow • Global
illumination • Image-based lighting
Hard vs. Soft Shadow
Hard Shadow Object Point Light
Soft Shadow Object Area Light
Global Illumination Objects reflect light, too!
Global Illumination Object Object Direct Lighting Indirect Lighting
Imaged-based Lighting How do you put a virtual 3D object
into a real-world photo realistically? Bad example Good example
Imaged-based Lighting 1. Put a mirror ball in the real-world
scene 2. Take a photo of it
Imaged-based Lighting 3. Unwrap the mirror ball photo
Imaged-based Lighting 4. Use it as a huge dome light
Map it onto a huge sphere Your scene here
Summary • Modeling and texturing ◦ U and V ◦
Normal mapping • Animation ◦ Skinning • Rendering ◦ Raytracing ◦ Materials & shaders ◦ Soft shadow ◦ Global illumination ◦ Image-based lighting Thanks! Questions?