GAMES101-1 20200211 20210703 Overview of CG


1 20200211 / 20210703 Overview of CG

  • Topics

What is CG

The use of computers to synthesize and manipulate visual information.

Why study

Application

  • Video Games
    • 什么是好的画面 - 看画面是否足够亮 - 全局光照做得好不好
      • 只狼
      • 无主之地3
  • Movies
    • The Matrix
      • Special Effects
      • 特效是图形学中最简单的一类 - 平常见不到 - 做得不对也不会觉得意外
      • 最困难的是最常见的
  • Avatar
    • 引入了面部/动作捕捉
  • Animations
    • Zootopia - 疯狂动物城
    • Frozen 2 - 冰雪奇缘 2
  • Design
    • Autodesk Gallary
    • CAD
      • 环境模拟
      • 碰撞检测
    • Ikea
  • Visualization
    • Science
    • Engineering
    • Medicine
    • Journalism
  • Virtual Reality
    • Augmented Reality
    • Digital Illustration
      • PS
  • Simulation
    • The Dust Bowl phenomena
    • Black hole from Interstellar
  • Graphical User Interfaces - GUI
  • Typography - 字体
    • The Quick Brown Fox Jumps Over The Lazy Dog - 字体测试中的常见句
    • 矢量图

Fundamental Intellectual Challenges

  • Creates and interacts with realistic virtual world
  • Requires understanding of all aspects of physical world
  • New computing methods, displays, technologies

Technical Challenges

  • Math of (perspective) projections, curves, surfaces
  • Physics of lighting and shading
  • Representing / operating shapes in 3D
  • Animation / simulation
  • 3D graphics software programming and hardware

WHY - CG is AWESOME

Course Topics (mainly 4 parts)

  • Rasterization
    • Project geometry primitives (3D triangles / polygons) onto the screen
    • Break projected primitives into fragments (pixels)
    • Gold standard in Video Games (Real-time (30fps) Applications)
  • Curves and Meshes
    • How to represent geometry in Computer Graphics
  • Ray Tracing
    • Shoot rays from the camera though each pixel
    • Calculate intersection and shading
    • Continue to bounce the rays till they hit light sources
    • Gold standard in Animations / Movies (Offline Applications)
    • trad off - 慢但效果好
    • 两个都要 - 实时光线追踪
  • Animation / Simulation
    • Key frame Animation
    • Mass-spring System

GAMES101 is NOT about

  • Using OpenGL / DirectX / Vulcan
  • The syntax of Shaders
  • 3D modeling using Maya / 3DS MAX / Blender, or VR / game development using Unity / Unreal Engine (where can I learn them?)
  • Computer Vision / Deep Learning topics, e.g. XYZ-GAN (where can I learn them?)
  • CV - 一切需要猜测的内容
  • We learn Graphics, not Graphics APIs!
  • After this course, you’ll be able to learn these by yourself (I promise)

CG V.S. CV

Differences of CG and CV

Course Logic

General Information

  • Modern Course
    • Comprehensive but
      without hardware programming!
    • Pace/ contents subject to change
  • Course Website
  • Course slides and (pre)-reading materials
  • No Required Textbooks
    • Reading materials (if any) will available online before lectures
    • Lecture slides will be available after class
  • Most recommended reference

Assignments

  • Mostly programming tasks with provided code skeletons and virtual machine image
  • Weekly (usually no more than 20 lines of code per week)
  • Language: C++

Submission

  • Submit your project by 11:59PM on/before the due dates (strictly enforced)
  • Feedback will be provided in a week
  • Assignment Submission Website
    (http://www.smartchair.org/GAMES2020Course-YLQ/)
  • No Exams
  • Course Project / Final Project
    • Starting midway of this course
    • References will be provided, but you decide the topic
    • Best work will be posted online for showing off

Use An IDE!

  • IDE: Integrated Development Environment
  • Helps you parse a entire project
    • And gives hints on syntax / usages of member functions, etc.
  • Recommended IDEs
    • Visual Studio (Windows only) / Visual Studio Code (cross platform)
    • Qt Creator (personal)
  • Not Recommended IDEs (for C++ programming)
    • CLion (慢), Eclipse (代码分析不好)
    • Sublime Text, Vi / Vim, Emacs (not even IDEs)
  • Work alone for regular assignments
    • no copy-pasting from any other sources
  • Do not publish your code (on Github, etc.) for assignments using our skeleton code
  • Do not post your solution online
    • Discussion / explanation is welcomed

Author:
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source !
  TOC