Welcome to CP411 Computer Graphics 2016 Instructor: Dr. Hongbing Fan Introduction 1.What is computer graphics (CG) 2.Why computer graphics; the applications of CG 3.Relations to other fields 4.About the teaching and learning Lecture 1: Computer Graphics hardware

SIGGRAPH 2016 animation https://www.youtube.com/watch?v=Uz6dh6Ky8p8

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 1

What is Computer Graphics?

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 2

What is Computer Graphics?

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 3

What is Computer Graphics?

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 4

What is Computer Graphics?

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 5

What is Computer Graphics?

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 6

What is Computer Graphics?

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 7

What is Computer Graphics? • Technically, it’s about the creation, storage, manipulation and display of images using computers

• Practically, it’s about computerized movies, games, art, training, advertising, design, …

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 8

What is Computer Graphics? • Definition of Computer Graphics – Creation, storage, manipulation and display of images of models of 2D and 3D objects – Pictorial synthesis of real or imaginary objects from their computer based models

• Main tasks 1. Modeling: creating and representing the geometry of objects in the virtual 3D world 2. Rendering: generating images of the objects in 2D screen 3. Animation: describing how objects change in time



After all, it’s about generating images for viewing by eyes

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 9

Relations to other fields 1. Image processing – – – – – –

Image enhancement Feature retrieval Pattern recognition and analysis of scenes Reconstruction of models of 3D objects Robotics Automatic car

2. User interface design – – –

Understanding human It pertains to user Ergonomics

3. CAD/CAM – –

Manufacture industry Construction industry

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 10

Why computer graphics A picture is worth a thousand words 1. CG has many applications – Animation movies – Computer games – Image processing – CAD 2. CG is cool, fun, interesting – Cool images – To see what you are doing, to show what you are doing – To use knowledge learned from other course: math, physics, algorithm. CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 11

Graphics Applications • Entertainment: Cinema

Square: Final Fantasy

Pixar: Monster’s Inc.

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 12

Graphics Applications • Video Games

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 13

Virtual Reality (VR)

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 14

Graphics Applications • Computer Aided Design (CAD)

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 15

Computer Aided Manufacturing (CAM)

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 16

3D printing

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 17

Graphics Applications • Medical Visualization

CP411 Computer Graphics, Wilfrid Laurier University

The Visible Human Project

MIT: Image-Guided Surgery Project

Introduction # 18

Data Visualization

More CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 19

Scientific Data Visualization

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 20

Computer Art

More CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 21

Graphical User Interfaces (GUIs)

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 22

Touch GUI

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 23

Image processing and pattern recognition

DIP show CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 24

The field of computer graphics • One of the most fast developing fields in computer science in past sixty years • Heavily involved by academia, industry and general consumers • Fast advances in – – – – –

Modeling and rendering techniques CG hardware, GPU CG software tools CG devices, game consoles, I/O devices, VR Applications

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 25

Course Objectives • To understand the fundamental principles, algorithms, and techniques for computer graphics. • To practice the design and implementation of computer graphics software with C/C++ and graphics library (OpenGL) • To gain the fundamental knowledge and skills for the CG related jobs.

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 26

Topics 1. Graphics hardware and software 2. View pipeline and transformation 3. Output primitives and raster algorithms 4. Geometric transformations (2D and 3D) 5. Rendering and modeling of 2D/3D scenes/objects 6. Graphics models, curve and surfaces 7. Hidden surface removal 8. Color, illumination and shading models 9. Ray tracing 10. Advanced graphics models, fractals 11. Graphics files 12. OpenGL and GLSL CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 27

Teaching & Learning •

Lectures – 23 lectures cover the graphics principles and algorithms and assignment tutorials – Class participation is mandatory (attendance and contribution 5%)



Assignments – Reading assignments – 5 assignments 40% – Final project 15%



Exams – Final exam 40%



Requirements – Require to attend class, attendance will be taken on regularly basis – Require to read textbook and to do assignments and final project

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 28

Course web page and lab support • Course web site http://bohr.wlu.ca/hfan/cp411/16/ – It is updated on regular basis – Additional resources and links are provided – Reading for future classes is listed – Announcement, assignments, examples, references – Most lecture notes will be posted online. Taking notes is recommended for some classes

• Designated labs: N2085, N2095 • Individual help and support: by appointment CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 29

Textbook and References • Required: Computer Graphics with OpenGL, 4/E Donald Hearn, M. Pauline Baker and Warren R. Carithers

• Reference books (optional) – OpenGL Programming Guide – OpenGL Reference Manual – OpenGL Shading Language, 2nd ed

• More reference links are listed in course web site • See course web page CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 30

Prerequisites • CP114 Data Structures I – Data structures and their applications – Basic programming skill

• CP217 Introduction to System Programming – Programming language C

• CP213 Object oriented programming – Not use Java. We use C++

• MA122 Introductory Linear Algebra – matrix algebra; 2D/3D vector geometry; linear transformations.

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 31

Programming Environment •

Eclipse C++ will be the programming environment for the assignments – C/C++ compiler MinGW, a minimum version of GNU compiler – Windows OS – Code are potable for Windows, Unix/Linux, Mac



OpenGL will be used (required) – Provides an API for drawing objects specified in 2D/3D – Included as part of Windows, available for Linux either as Mesa (software) or hardware drivers for using GPU

• Questions •

See examples (demo)

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 32

History of Computer Graphics • http://www.youtube.com/watch?v=LzZwiLUVaKg

CP411 Computer Graphics, Wilfrid Laurier University

Introduction # 33