# 1 - Course Intro
# Course Information
- Course Homepage
- LMS ๊ฐ์ ํํ์ด์ง: portal.hanyang.ac.kr ๋๋ learning.hanyang.ac.kr
- ์ฌ๋ผ์ด๋๋ Lecture Contents(๊ฐ์์๋ฃ ํญ)์ ์
๋ก๋๋จ
- ๋ณดํต ๊ฐ์ ์ง์ ์ ์ ๋ก๋๋๋ฏ๋ก, ๊ฐ์ ์์ ์ ๋ฏธ๋ฆฌ ๋ค์ด๋ก๋ํ ๊ฒ
- ์๋ ์ฌ๋ผ์ด๋๋ฅผ ์ฐธ๊ณ ํ๊ณ ์ถ๋ค๋ฉด ๋งํฌ (opens new window) ์ฌ์ฉ
# What is Computer Graphics?
- ์ปดํจํฐ๋ฅผ ์ด์ฉํ์ฌ ์๊ฐ์ ์ฝํ
์ธ ๋ฅผ ์์ฑํ๊ณ , ์กฐ์ํ๋ฉฐ, ํ๋ฉด์ ํ์ํ๋ ๊ธฐ์ ์ ์ฐ๊ตฌํ๋ ํ๋ฌธ
- Computer Graphics๋ ์ํ์ ๋๋ ๊ธฐํํ์ ๋ชจ๋ธ์ ์๊ฐ์ ์ด๋ฏธ์ง ๋๋ ์ ๋๋ฉ์ด์ (์ด๋ฏธ์ง์ ์ฐ์)์ผ๋ก ๋ณํํจ
- ๋ฐ๋๋ก, Computer Vision์ ์ด๋ฏธ์ง๋ ์์์ผ๋ก๋ถํฐ ์๋ฏธ ์๋ ์ ๋ณด๋ฅผ ์ถ์ถํจ
- Movies & Games
- Encanto
- Red Dead Redemption 2
- Engineering
- Solidworks
- Natural Science
- Foldit (๋จ๋ฐฑ์ง ์ ํ ์๋ฎฌ๋ ์ด์ )
- Medical Science
- CT ์ด๋ฏธ์ง์ Volume Rendering
# Course Overview
- Computer Graphics: ์ํ์ ์๊ฐํํ๋ ๊ธฐ์
- ์ด ๊ฐ์์์ ๋ฐฐ์ฐ๋ ๋ด์ฉ:
- ๊ธฐ๋ณธ์ ์ธ computer graphics ๋ฐ ์ํ ๊ฐ๋ ํ๊ตฌ
- modern OpenGL ์ฌ์ฉ๋ฒ ํ์ต
- ์ด ๊ฐ์์์ ๋ฐฐ์ฐ์ง ์๋ ๋ด์ฉ:
- ๊ณ ๊ธ computer graphics ๊ธฐ๋ฒ
- legacy OpenGL ์ฌ์ฉ๋ฒ
- "๊ธฐ์ด computer graphics ๊ฐ๋
"์ ๊ตฌํ ์์๋ก ๋ค์์ ํ์ฉํจ:
- WebGL ์จ๋ผ์ธ ๋ฐ๋ชจ (๊ฐ์)
- modern OpenGL API (์ค์ต)
- Blender: ์คํ์์ค 3D ๊ทธ๋ํฝ ํด (๊ฐ๋ ์ฌ์ฉ)
- ์ด๋ฌํ ์์๋ค์ ๊ฐ๋ ์ ๋ ๋ช ํํ ์ดํดํ๋ ๋ฐ ๋์์ ์ค
# Prerequisites
- ์ ํ๋์ํ์ ๋ํ ๊ธฐ๋ณธ ์ง์
- ๋ฒกํฐ ๋ฐ ํ๋ ฌ์ ๊ฐ๋
๊ณผ ์ฐ์ฐ์ ๋ํ ์ดํด
- ์: ํ๋ ฌ-ํ๋ ฌ ๊ณฑ, ํ๋ ฌ-๋ฒกํฐ ๊ณฑ, ํญ๋ฑ ํ๋ ฌ, ๋ด์ , ์ธ์ ๋ฑ
- ์ ๋ด์ฉ๋ค์ ์๊ณ ์๋ค๋ฉด ์ด ์์ ์ ์๊ฐํ ์ค๋น๊ฐ ๋ ๊ฒ์
- ๋ฒกํฐ ๋ฐ ํ๋ ฌ์ ๊ฐ๋
๊ณผ ์ฐ์ฐ์ ๋ํ ์ดํด
- ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ ์ ๊ธฐ๋ณธ ์ง์
- ๋ณธ ๊ฐ์์์๋ Python ์ฌ์ฉ
- ์์ ์ ๊ฐ๊ฐ์ ํ์ ์์!
# Textbook
- ๊ต์ฌ: ๊ฐ์ ์ฌ๋ผ์ด๋
# Schedule (subject to change)
Week | Topic | Date |
---|---|---|
1 | 1 - Course Intro / 1 - Lab - Env. Setting | 3/6 |
2 | 2 - Rendering Basics / 2 - Lab - Hello Triangle! | 3/13 |
3 | 3 - Transformations / 3 - Lab - Sending Data to Shaders | 3/20 |
4 | 4 - Affine Space / Frame / Matrix / 4 - Lab | 3/27 |
5 | 5 - Vertex Processing 1 / 5 - Lab | 4/3 |
6 | 6 - Vertex Processing 2 / 6 - Lab | 4/10 |
7 | 7 - Hierarchical Modeling, Mesh / 7 - Lab | 4/17 |
8 | 8 - Lighting / 8 - Lab | 4/24 |
9 | Midterm Exam | 5/1 |
10 | 9 - Orientation & Rotation / 9 - Lab | 5/8 |
11 | 10 - Character Animation / 10 - Lab | 5/15 |
12 | 11 - Curves / 11 - Lab | 5/22 |
13 | 12 - More Lighting, Texture / 12 - Lab | 5/29 |
14 | 13 - Scan Conversion, Visibility / 13 - Lab | 6/5 |
15 | Final Exam | 6/18 |
# Lectures & Labs
- ๊ฐ์์ ์ค์ต์ ๊ฐ์ ๋ ์ ํจ๊ป ์งํ๋จ
- Lectures (๊ต์ ์ง์ ์งํ)
- computer graphics์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ฐ์
- ํน์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ์ํํธ์จ์ด์ ์์กดํ์ง ์์
- Labs
- Part 1: modern OpenGL ๊ฐ์ (๊ต์ ์งํ)
- Part 2: ์กฐ๊ต์ ๋์์ ๋ฐ์ ๊ณผ์ ์ํ
- ํ ๋ฒ์ [๊ฐ์+์ค์ต] ์ธ์ ์ ์ด 4์๊ฐ์ด๋ฉฐ ์ค๊ฐ ํด์ ์์!
# Assignments
- ์ค์ต๋ง๋ค ๊ณผ์ ๊ฐ ์์
- ๊ฐ๋จํ ํ๋ก๊ทธ๋๋ฐ ๊ณผ์
- ๋ชฉํ: ๊ฐ์์ ์ค์ต์์ ๋ฐฐ์ด ๋ด์ฉ์ ์ดํดํ๊ณ ๊ตฌํ
- ์ดํด๊ฐ ์ ๋๋ ๋ถ๋ถ์ TA์๊ฒ ์ง๋ฌธ ๊ฐ๋ฅ
- ์ ์ถ ๋ฐฉ๋ฒ:
- LMS๋ฅผ ํตํด ์ ์ถ
- ์กฐ๊ต๋ ๊ณผ์ ๋ฅผ ๋น ๋ฅด๊ฒ ๊ฒํ ํ ํ, LMS์ ํต๊ณผ ์ฌ๋ถ๋ฅผ SpeedGrader๋ก comment
- ํต๊ณผ ์: ๊ต์ค์ ๋๊ฐ๋ ๋จ
- ๋ถํฉ๊ฒฉ ์: ์ฝ๋๋ฅผ ์์ ํ๊ณ ๋ค์ ์ ์ถ
# Assignments - Grading
- ๊ณผ์ ์ ์ถ (๋๋ ์ฌ์ ์ถ)์ ์ค์ต ์๊ฐ ๋ด 15:45 ์ด์ ๊น์ง
- ์ต์ข ํต๊ณผ ์ โ 100์
- ์ธ์ ์ดํ์๋ ์ฌ์ ์ถ ์์ฒญ ๊ฐ๋ฅ
- ์ค์ต ์๊ฐ ์ดํ ์ฌ์ ์ถ ์
- ์ฌ์ ์ถ ์์ฒญ ๋ถ๊ฐ
- ์กฐ๊ฑด์ ๋ง์กฑํ ํญ๋ชฉ์ ๋ํด ๋ถ๋ถ ์ ์ ๋ถ์ฌ
- 10์ ๊ฐ์
- ๋น์ผ 23:59 ์ดํ ์ ์ถ: ๋ถ๊ฐ
# Projects
- ์ด 3๊ฐ์ ํ๋ก์ ํธ๊ฐ ์ฃผ์ด์ง
- ๊ฐ์ธ ํ๋ก์ ํธ์ด๋ฉฐ, ํ ํ๋ก์ ํธ ์๋
- ๋์ด๋๊ฐ ๋์ ํ๋ก๊ทธ๋๋ฐ ๊ณผ์ ๊ฐ ์ฃผ์ด์ง
- ๋ง๊ฐ ๊ธฐํ์ ํ๋ก์ ํธ๊ฐ ์ฃผ์ด์ง ํ 2~3์ฃผ ํ
- ์ ์ถ ๋ฐฉ๋ฒ:
- LMS๋ฅผ ํตํด ์ ์ถ
# Policy for Projects
- ๊ธฐํ ์ด๊ณผ ์ ์ถ ์ ์ ์ ์์
- ๊ธฐํ ์ ์ ๋ฐ๋์ ์ ์ถํ ๊ฒ
- ํ์ ์ ์ ์ ์์
- A๊ฐ B์ ์ฝ๋๋ฅผ ๋ณต์ฌํ๋ฉด A์ B ๋ชจ๋ 0์
- A, B, C๊ฐ ์ธํฐ๋ท์์ ๋์ผ ์ฝ๋๋ฅผ ๋ณต์ฌํ๋ฉด ์ ์ 0์ ์ฒ๋ฆฌ
# Grading
ํญ๋ชฉ | ๋น์จ |
---|---|
Midterm exam | 37.5% |
Final exam | 37.5% |
Projects | 15% |
Assignments | 5% |
Attendance | 5% |
- ๊ฐ์ + ์ค์ต ํฌํจ ์ด 4์๊ฐ ์ธ์
๊ธฐ์ค
- ๊ฒฐ์ 5ํ ์ด์์ผ ๊ฒฝ์ฐ โ F
- ์ค๊ฐ๊ณ ์ฌ or ๊ธฐ๋ง๊ณ ์ฌ ๊ฒฐ์ โ F
# Grading Policy
๊ธฐ๋ณธ ์์น: ์ ์ ๊ฐ ์ฐจ์ด๊ฐ ํด ๊ฒฝ์ฐ ๊ตฌ๊ฐ๋ณ๋ก ๋ช ํํ ๋ฑ๊ธ์ ๊ตฌ๋ถ
๋ฑ๊ธ ๊ธฐ์ค:
๋ฑ๊ธ ๋น์จ A 20% ~ 25% B 25% ~ 35% C 40% ์ฑ์ ์ ์ด๋ฒ ํ๊ธฐ ๋ ๊ฐ์ computer graphics ์์ ์ ์ฒด ํ์์ ํตํฉํ์ฌ ๊ณ์ฐํจ
# [Important] Midterm & Final Exams
- ์ํ์ ์๋ ์ผ์ ์ ์งํ๋๋ฉฐ,
์ ํด์ง ์๊ฐ์ ์ํ์ ๋ณผ ์ ์๋ ํ์์ ์๊ฐํ์ง ๋ง ๊ฒ - ์ค๊ฐ๊ณ ์ฌ: 5์ 7์ผ (์) 6:00~8:00 PM
- ๊ธฐ๋ง๊ณ ์ฌ: 6์ 18์ผ (์) 6:00~8:00 PM
# Language
- ์์ ์ ์ฃผ๋ก ์์ด๋ก ์งํ
- ํ์ง๋ง ๊ฐ์ฅ ์ค์ํ ๋ชฉํ๋ ํ์๋ค์ ์ดํด๋ ํฅ์์ด๋ฏ๋ก
์ค์ํ ์ฌ๋ผ์ด๋๋ ํ๊ตญ์ด๋ก ํ์ด์(paraphrase) ์ค๋ช - ์ค์ต (Part 2)์์๋ ์กฐ๊ต๊ฐ ์ ์ฒด ๊ณต์ง ์ ์์ด ์ฌ์ฉ
- ๊ฐ์ธ์ ์ผ๋ก๋ ํ๊ตญ์ด ๋๋ ์์ด๋ก ์ง๋ฌธ ๊ฐ๋ฅ
# Questions โ Slido.com
- ๊ฐ์ ํ, LMS์ "Q&A ๊ฒ์ํ"์ ์ง๋ฌธ ์์ฑ
- ์กฐ๊ต๊ฐ ์ต์ ํ๋ฃจ 1๋ฒ ์ด์ ํ์ธํ๊ณ ๋ต๋ณ
- ๊ฐ์ ์ค์๋ ์จ๋ผ์ธ ์ต๋ช Q&A ํ๋ซํผ: slido.com ์ฌ์ฉ
# Just Try Asking a Question!
- ์ ์: slido.com (opens new window)
- ์ฐธ์ฌ: #cg-ys
- ๋ก๊ทธ์ธ ์์ด ์ฌ์ฉ ๊ฐ๋ฅ
- slido page๋ ๋ถ๋งํฌํ์ง ๋ง ๊ฒ
- ๋งค์ฃผ ์๋ก์ด ์ด๋ฒคํธ๊ฐ ์์ฑ๋๋ฏ๋ก
- ์ง๋ฌธ์ ์์ด๋ก ์์ ๋กญ๊ฒ!
# Questions โ Slido.com
- slido.com์์๋ ๋ค์์ด ๊ฐ๋ฅํจ:
- ์์ ์ ์ง๋ฌธ์ ์ต๋ช ์ผ๋ก ์์ฑ
- ๋ค๋ฅธ ์ง๋ฌธ์ ์ถ์ฒ(upvote)
- slido Q&A๋ ๊ต์์ ๊ฐ์ ๋ฐ ์ค์ต ์๊ฐ์๋ง ์ฌ์ฉ
- ๊ฐ์ ๋๋ ์ค์ต ์ข ๋ฃ ํ์๋ ์ฌ์ฉ ๊ธ์ง
- ์ค์ต TA ์๊ฐ์๋ ์ฌ์ฉ ๊ธ์ง
- ๋ฌธ์ ํํ์ ๋ต๋ณ์ ์ ๊ณตํ์ง ์์
- ์ง๋ฌธ์ ๋ฐ๋์ ์ต๋ช
์ผ๋ก ์์ฑ
- ์ด๋ฆ ๋์ blank name์ผ๋ก ์์ฑ
# Quiz & Attendance โ Slido.com
- ๊ฐ ๊ฐ์๋น ํด์ฆ ๋ฌธ์ 3๊ฐ ์ถ์ (slido.com polls ์ฌ์ฉ)
- ๋ฌธ์ ๋ ๋งค์ฐ ๊ฐ๋จํ๋ฉฐ, 2๋ถ ์ด๋ด๋ก ์ ์ถํด์ผ ํจ
- ์ถ์์ ํด์ฆ ์ ์ถ์ ๊ธฐ์ค์ผ๋ก ์ธก์ ๋จ
# Quiz โ Slido.com
๋ฐ๋์ ๋ค์ ํ์์ผ๋ก ๋ต์์ ์ ์ถํด์ผ ํจ:
ํ๋ฒ: ์ ๋ต
- ์:
2023123456: 4
- ์:
์ ๋ต ์ฌ๋ถ๋ ์ถ์๊ณผ ๋ฌด๊ดํจ
์ถ์ ํ์ ๊ธฐ์ค:
๊ตฌ๋ถ ์กฐ๊ฑด Attendance ์ ์ถ ํ์ 3ํ && ์ค์ ๊ฐ์์ค์ ์์ Late ์ ์ถ ํ์ 1~2ํ && ์ค์ ๊ฐ์์ค์ ์์ Absence ์ ์ถ ํ์ 0ํ ๋๋ ์ ์ถํ์ผ๋ ๊ฐ์์ค์ ์์ ์ง๊ฐ 3ํ๋ ๊ฒฐ์ 1ํ๋ก ์ฒ๋ฆฌ
# Quiz & Attendance โ Slido.com
- ์ถ์ํ์ง ์์ ์ํ์์ ํด์ฆ๋ง ์ ์ถํ๋ ๊ฒฝ์ฐ ์ ๋ฐ ์
- ์ด์ ๊ฐ์๋ ๋ฌด๋จ ๊ฒฐ์ํ ๊ฒ์ผ๋ก ๊ฐ์ฃผ
- โ ๋ ๋ฒ์ ๊ฐ์ ๋ชจ๋ ๊ฒฐ์์ผ๋ก ์ฒ๋ฆฌ!
# About Laptop
- ๊ฐ์์ ์ค์ต์ ๋
ธํธ๋ถ ์ง์ฐธ ํ์
- ๊ฐ์ ์ฌ๋ผ์ด๋์๋ WebGL ๋ฐ๋ชจ ํฌํจ โ ๋ ธํธ๋ถ์ผ๋ก ์คํํ๋ฉฐ ์๊ฐํด์ผ ํจ
- ์ค์ต ์๊ฐ์๋ ๋ ธํธ๋ถ์ผ๋ก ๊ณผ์ ๋ฅผ ์ํํจ
- ๋
ธํธ๋ถ ๋์ฌ๊ฐ ํ์ํ ๊ฒฝ์ฐ, ์ด๋ฉ์ผ๋ก ์กฐ๊ต์๊ฒ ๋ค์ ์ฃผ์ฐจ๊น์ง ์์ฒญ
- ๋จ, ๋์ฌ ๋ ธํธ๋ถ์ ์ค๋๋ ๊ธฐ์ข ์ด๋ฏ๋ก ๊ฐ๊ธ์ ๊ฐ์ธ ๋ ธํธ๋ถ ์ฌ์ฉ ๊ถ์ฅ
- ๋
ธํธ๋ถ์ OpenGL 3.3 ์ด์ ์ง์ ํ์
- OpenGL 3.3 Core Profile ์ฌ์ฉ ์์
# Checking OpenGL Version
Windows / Mac
- โOpenGL Extensions Viewerโ ์ฌ์ฉ
Ubuntu
glxinfo
์ฌ์ฉ (mesa-utils ์ค์น ํ์)sudo apt-get install mesa-utils glxinfo | grep version
- ์ถ๋ ฅ ๊ฒฐ๊ณผ์์ โcore profileโ ๋ฒ์ ํ์ธ
Intel ๊ทธ๋ํฝ ์ง์ ์ฌ๋ถ ํ์ธ
- intel.com/content/www/us/en/support/articles/000005524/graphics.html (opens new window)
- 2011๋ ์ด์ ์ถ์๋ ์ผ๋ถ ๊ตฌํ Intel CPU๋ OpenGL 3.3์ ์ง์ํ์ง ์์
# Classroom Etiquette
- ์์
์ค ๋ค๋ฅธ ํ์์๊ฒ ํผํด๋ฅผ ์ฃผ๋ ํ๋์ ํ์ง ๋ง ๊ฒ
์์:- ๋ ธํธ๋ถ์ผ๋ก ๋ค๋ฅธ ์์ (์: ๊ฒ์)
- ์ค๋งํธํฐ ์ฅ์๊ฐ ์ฌ์ฉ
- ์ฌ์ ์ธ ๋ํ
- ์ฑ ์์์ ์ ์๊ธฐ
# My Recommendation
๋ค์๊ณผ ๊ฐ์ ํ์์๊ฒ๋ ์ด ์์ ์ ์ถ์ฒํ์ง ์์
- ์ฝ๊ฒ ์ข์ ์ฑ์ ์ ๋ฐ๊ณ ์ถ์ ํ์
- ์ ์ฐฝํ ์์ด ๊ฐ์๋ฅผ ๊ธฐ๋ํ๋ ํ์
๋ค์๊ณผ ๊ฐ์ ํ์์๊ฒ๋ ์ด ์์ ์ ์ถ์ฒํจ
- ์ํ๋ ๊ฒ์์์ ์ฅ๋ฉด์ด ์ด๋ป๊ฒ rendering๋๋์ง ๊ถ๊ธํ ํ์
- ๋ฌผ์ฒด๋ ์บ๋ฆญํฐ์ ์์ง์์ ๊ด์ฌ ์๋ ํ์
- ์ฝ๋๋ก ๋ฌด์ธ๊ฐ๋ฅผ ์๊ฐํํ๋ ๊ฒ์ ์ข์ํ๋ ํ์
- computer graphics์ ์ด์ ์ด ์๋ ํ์
# Lab Session
- ์ค๋์ ์ค์ต ์ธ์ ์ด ์์
- ๊ทธ๋ฌ๋ ๋ค์ ๊ฐ์๋ฅผ ๋ฐ๋ผ๊ฐ๋ ค๋ฉด
- "1 - Lab - Environment Setting.pdf"๋ฅผ ์ฐธ๊ณ ํ์ฌ ํ๊ฒฝ ์ค์ ์ ์๋ฃํด์ผ ํจ
- Assignment 1 ("1 - Assignment.pdf")๋ฅผ ๋ค์ ๊ฐ์ ์ ๊น์ง LMS๋ก ์ ์ถํ ๊ฒ
# Lastly...
- ์ ๋ชจ๋ ์ ์ฑ ์ ๋์ํ๋ค๋ฉด, ๋ค์ ๊ฐ์์์ ๋ด ์๋ค!
- ๋์ํ์ง ์๋๋ค๋ฉด, ๋ค๋ฅธ ์์ ์๊ฐ์ ๊ณ ๋ คํด์ฃผ์ธ์.