CMPT 361 - Computer Science at UBC

rodscarletΛογισμικό & κατασκευή λογ/κού

14 Δεκ 2013 (πριν από 3 χρόνια και 5 μήνες)

81 εμφανίσεις

CMPT 361

Week 1

Prerequisites


Good programming skills in

C (or C++)


Basic Data Structures


Linked lists


Arrays


Geometry


Simple Linear Algebra




Applications

of Graphics


Entertainment


Visualization


HCI


Virtual Reality


Computer Aided Design


What is Computer Graphics


Uses

a computer

as a rendering tool

for


Generation of

images from models


Manipulation of images

Goals of CG


Simulate (or rather fake) Physics!



We

need techniques that are


Fast ... Real time?


Practical


Elegant



First imaging algorithm


Ray tracing


Ray tracing


Raytracing


Modeling


Interactive



CAD


Scanning (3D scanners)


Procedural


Fractals



Can be mixed...

CMPT 361


Modeling in CMPT 361


Concentrate on polygonal models for
geometry


2D: points, lines, and polygons


3D polygonal meshes


A little bit of parametric curves and surfaces



OK, we have a geometric model, what now?


Rendering...

Rendering

in CMPT 361


Add in viewing information:


Transformation: transform our geometric model


depending on position and orientation of camera


Visibility: determine what can be seen (do not draw
what cannot been seen)


Add in light: illumination and shading


Add in texture: texture mapping


Add in color: some coverage on color
models/representations

Animation


Temporal change of images...

Topics


Image formation


Programming with OpenGL


2D and 3D geometric transformations


rotation,


translation,


use of homogenous coordinates, etc.

Topics


Hidden surface removal, clipping


Illumination and shading


Rasterization


Curves and surfaces


TBA

CMPT

361


What is expected...


Good programming

background


C/C++


OpenGL?


Data

structures, algorithms


Basic math


Numerical integration


Linear algebra, system of Linear
Eqns


Vectors, matrices

I am not going to...


Teach C/C++


Teach data structures


Teach linear algebra and basic numerical
methods


Questions about C/C++ are low priority


Lab procedures are your responsibility

Break


Overview

of a Graphics System


Input devices


Display devices : CRT


Raster display basics


Pixels!


1080p = how many pixels?


Bit depth

Synthetic Camera Model


Synthetic Camera Model






How to see 3D?


OpenGL