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