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
93
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
270
If correlation doesn’t imply causality, then what does?
eliang
3
640
Building a Render Cloud
eliang
3
1.1k
Other Decks in Technology
See All in Technology
.NET 10のBlazorの期待の新機能
htkym
0
170
初海外がre:Inventだった人間の感じたこと
tommy0124
1
160
「タコピーの原罪」から学ぶ間違った”支援” / the bad support of Takopii
piyonakajima
0
160
datadog-incident-management-intro
tetsuya28
0
110
JAWS UG AI/ML #32 Amazon BedrockモデルのライフサイクルとEOL対応/How Amazon Bedrock Model Lifecycle Works
quiver
1
530
ViteとTypeScriptのProject Referencesで 大規模モノレポのUIカタログのリリースサイクルを高速化する
shuta13
3
240
AI時代の発信活動 ~技術者として認知してもらうための発信法~ / 20251028 Masaki Okuda
shift_evolve
PRO
1
130
DMMの検索システムをSolrからElasticCloudに移行した話
hmaa_ryo
0
320
組織全員で向き合うAI Readyなデータ利活用
gappy50
5
2k
GPUをつかってベクトル検索を扱う手法のお話し~NVIDIA cuVSとCAGRA~
fshuhe
0
310
プロファイルとAIエージェントによる効率的なデバッグ / Effective debugging with profiler and AI assistant
ymotongpoo
1
650
kotlin-lsp の開発開始に触発されて、Emacs で Kotlin 開発に挑戦した記録 / kotlin‑lsp as a Catalyst: My Journey to Kotlin Development in Emacs
nabeo
2
160
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Designing for humans not robots
tammielis
254
26k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
680
Practical Orchestrator
shlominoach
190
11k
Six Lessons from altMBA
skipperchong
29
4k
Gamification - CAS2011
davidbonilla
81
5.5k
It's Worth the Effort
3n
187
28k
Done Done
chrislema
186
16k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
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?