Outline. Intro. Week 1, Fri Jan 4. What is CG used for? What is Computer Graphics? University of British Columbia CPSC 314 Computer Graphics Jan 2013

Similar documents
Intro. Week 1, Fri Jan 4

CSCD18: Computer Graphics. Instructor: Leonid Sigal

Goals. Computer Graphics (Fall 2008) Course Outline. Course Outline. Course Outline. Demo: Surreal and Crazy World (HW 3)

CSE 167: Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2013

CS535: Interactive Computer Graphics

CSE 167: Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2016

Lecture 0 of 41: Part A Course Organization. Introduction to Computer Graphics: Course Organization and Survey

CS380: Computer Graphics Introduction. Sung-Eui Yoon ( 윤성의 ) Course URL:

CSCE 441 Computer Graphics Fall 2018

CIS 581 Interactive Computer Graphics

Computer Graphics. Instructor: Oren Kapah. Office Hours: T.B.A.

CS5620 Intro to Computer Graphics

Advanced Programming CMPS 109

Overview. Computer Graphics CSE 167

CS 241 Data Organization using C

Lahore University of Management Sciences. CS 452 Computer Graphics

ce Hours: MW 12:30 PM 1:30 PM (till 12/12/18), or by appointment

Goals. Course Staff. Demo: Surreal (HW 3) Entertainment. Foundations of Computer Graphics (Spring 2012) Why Study 3D Computer Graphics?

CS559: Computer Graphics. Lecture 1 Introduction Li Zhang University of Wisconsin, Madison

CSE 504: Compiler Design

CIS 581 Interactive Computer Graphics (slides based on Dr. Han-Wei Shen s slides) Requirements. Reference Books. Textbook

Topic 0. Introduction: What Is Computer Graphics? CSC 418/2504: Computer Graphics EF432. Today s Topics. What is Computer Graphics?

CS380: Computer Graphics Introduction. Sung-Eui Yoon ( 윤성의 ) Course URL:

Matrix Operations with Applications in Computer Graphics

Computer Graphics Disciplines. Grading. Textbooks. Course Overview. Assignment Policies. Computer Graphics Goals I

Lighting/Shading III. Week 7, Wed Mar 3

EECE.2160: ECE Application Programming Spring 2017

EF432. Introduction to spagetti and meatballs

CPSC 213. Introduction to Computer Systems. About the Course. Course Policies. Reading. Introduction. Unit 0

Lahore University of Management Sciences. CS 452 Computer Graphics

Shading, Advanced Rendering. Week 7, Wed Feb 28

COMPUTER GRAPHICS CS

Introduction to Computer Graphics. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2011

EF432. Introduction to spagetti and meatballs

COMP 117: Internet-scale Distributed Systems Lessons from the World Wide Web

CS380: Introduction to Computer Graphics Introduction to OpenGLSL. Min H. Kim KAIST School of Computing. [CS380] Introduction to Computer Graphics

Introduction to Computer Systems

Course Web Site ENGN2501 DIGITAL GEOMETRY PROCESSING. Tue & Thu Barus&Holley 157

CS 241 Data Organization. August 21, 2018

CPSC 213. Introduction to Computer Systems. Introduction. Unit 0

0. Introduction: What is Computer Graphics? 1. Basics of scan conversion (line drawing) 2. Representing 2D curves

Computer Graphics ( /657) Prof. Misha Kazhdan

ISM 324: Information Systems Security Spring 2014

ECE 156A - Syllabus. Description

CS240: Programming in C

Computer Graphics Introduction. Taku Komura

Rendering Pipeline/ OpenGL

Fundamentals of Digital System Design ECE 3700, CPSC 3700

Programming Game Engines ITP 485 (4 Units)

Hidden Surfaces II. Week 9, Mon Mar 15

CS 111: Programming Fundamentals II

Course Producer. Prerequisites. Textbooks. Academic integrity. Grading. Ming Chen. Same office hours as TA. The Hobbit: The Desolation of Smaug (2013)

Avi Silberschatz, Henry F. Korth, S. Sudarshan, Database System Concept, McGraw- Hill, ISBN , 6th edition.

Today. Rendering algorithms. Rendering algorithms. Images. Images. Rendering Algorithms. Course overview Organization Introduction to ray tracing

Cornell CS4620 Fall 2011!Lecture Kavita Bala (with previous instructors James/Marschner) Cornell CS4620 Fall 2011!Lecture 1.

IS Spring 2018 Database Design, Management and Applications

CS 240 Fall 2015 Section 004. Alvin Chao, Professor

Course and Contact Information. Course Description. Course Objectives

COMP251: Algorithms and Data Structures. Jérôme Waldispühl School of Computer Science McGill University

Lecturer Athanasios Nikolaidis

PC Applications IT102 estart Fall 2014

Instructor. Goals. Image Synthesis Examples. Applications. Foundations of Computer Graphics. Why Study 3D Computer Graphics?

1. General Information Course Title: CSCI-605 Advanced Object-Oriented Programming Concepts Instructor: Hans-Peter Bischof Office: Telephone:

DEPARTMENT OF ACADEMIC UPGRADING

Overview. Computer Graphics CS324. OpenGL. Books. Learning Resources. CS131 Notes. 30 Lectures 3hr Exam

ECE573 Introduction to Compilers & Translators

TSBK 07! Computer Graphics! Ingemar Ragnemalm, ISY

CS/ENGRD 2110 Object-Oriented Programming and Data Structures Spring 2012 Thorsten Joachims

CSC 7443: Scientific Information Visualization

Introduction to Computer Systems

Welcome to 6.837! Welcome to all students: Plan for today: Introductions. Why study graphics? Team 18 s final project from 6.

ITP489 In-Memory DBMS for Real Time Analytics

CARTO UNIVERSITY GROUP. Syllabus GEO 445/545 Computer-assisted Cartography Winter December 18, 2013

Spring 2018 El Camino College E. Ambrosio. Course Syllabus

ITSC 1319 INTERNET/WEB PAGE DEVELOPMENT SYLLABUS

COMP Preliminaries Jan. 6, 2015

Welcome to CS 4/57101 Computer Graphics

Announcements. 1. Forms to return today after class:

OpenGL/GLUT Intro. Week 1, Fri Jan 12

Lecture 1. Computer Graphics and Systems. Tuesday, January 15, 13

San José State University Department of Computer Science CS151, Section 04 Object Oriented Design Spring 2018

Beijing Jiaotong University CS-23: C++ Programming Summer, 2019 Course Syllabus

Computer Graphics Coursework 1

CS 418: Interactive Computer Graphics. Introduction. Eric Shaffer

University of British Columbia CPSC 111, Intro to Computation Jan-Apr 2006 Tamara Munzner

Topics and things to know about them:

Syllabus CS476 COMPUTER GRAPHICS Fall 2009

Graphics. Syllabus. Computer Graphics CNCE340. Graphics Korea University.

Viewing/Projections IV. Week 4, Fri Feb 1

CASPER COLLEGE COURSE SYLLABUS MSFT 1600 Managing Microsoft Exchange Server 2003 Semester/Year: Fall 2007

Computer Science 175. Introduction to Computer Graphics lib175 time: m/w 2:30-4:00 pm place:md g125 section times: tba

CS451Real-time Rendering Pipeline

CSC116: Introduction to Computing - Java

Course Title: Computer Graphics Course no: CSC209

Some Resources. What won t I learn? What will I learn? Topics

Practical Programming Methodology

Goals. Demo: Surreal (HW 4) Course Staff. Entertainment. Foundations of Computer Graphics (Fall 2012) Why Study 3D Computer Graphics?

I expect to interact in class with the students, so I expect students to be engaged. (no laptops, smartphones,...) (fig)

Welcome to! 4DN4! Advanced Internet Communications"

Inf2C - Computer Systems Lecture 1 Course overview & the big picture

Transcription:

University of British Columbia CPSC 314 Computer Graphics Jan 2013 Tamara Munzner Intro Outline defining computer graphics course structure course content overview Week 1, Fri Jan 4 http://www.ugrad.cs.ubc.ca/~cs314/vjan2013 2 What is Computer Graphics? create or manipulate images with computer this course: algorithms for image generation What is CG used for? movies animation special effects 3 4

computer games What is CG used for? What is CG used for? images design advertising art 5 6 What is CG used for? virtual reality / immersive displays What is CG used for? graphical user interfaces modeling systems applications simulation & visualization 7 8

Real or CG? Real or CG? http://www.alias.com/eng/etc/fakeorfoto/quiz.html 1 2 9 10 Real or CG? Real or CG? 3 4 11 12

Expectations hard course! heavy programming and heavy math fun course! graphics programming addictive, create great demos programming prereq CPSC 221 (Program Design and Data Structures) course language is C++/C math prereq MATH 200 (Calculus III) MATH 221/223 (Matrix Algebra/Linear Algebra) Course Structure 39% programming projects 8% project 1 (building beasties with cubes and math) 8% project 2 8% project 3 15% project 4 (create your own graphics game) 25% final 20% midterm (week 9 Fri 3/8) 16% written assignments 4% each HW 1/2/3/4 programming projects and homeworks synchronized 13 14 structure C++, Linux Programming Projects OK to cross-platform develop on Windows, Mac OpenGL graphics library GLUT for platform-independent windows/ui face to face grading in lab Hall of Fame first project: building beasties previous years: bison, spiders, armadillos, giraffes, frogs, elephants, birds, poodles, dinos, cats last project: create your own graphics game 15 3 grace days Late Work for unforeseen circumstances strong recommendation: don t use early in term handing in late uses up automatically unless you tell us otherwise: 50% if one day (24 hrs) late, 0% afterwards only exception: severe illness or crisis as per UBC rules must let me know ASAP (in person or email) at latest, 7 days after return to school must also turn in form with documentation (doctor note) http://www.ugrad.cs.ubc.ca/~cs314/vjan2013/illness.html 16

Regrading to request assignment or exam regrade give me paper to be regraded, and also in writing what problem you're disputing detailed explanation why you think grader was wrong I will not accept until next class after solutions handed out exception: simple arithmetic errors I may regrade entire assignment thus even if I agree with your original request, your score may nevertheless end up higher or lower Course Information course web page is main resource http://www.ugrad.cs.ubc.ca/~cs314/vjan2013 updated often, reload frequently discussion group: Piazza signup: https://piazza.com/ubc.ca/spring2013/cpsc314 standard: https://piazza.com/class#spring2013/cpsc314 use Piazza, not direct email, for all questions make posts private if you need to post your code 17 18 Teaching Staff instructor: Tamara Munzner call me Tamara or Prof. Munzner, your choice tmm@cs.ubc.ca office hrs in ICICS/CS 005 (our lab) Fridays right after class, 2-3 or by appointment in X661 TAs: Peter Beshai, James Gregson, Yufeng Zhu pbeshai@cs, jgregson@cs, mike323zyf@gmail 19 Labs labs start next week, no labs this week attend one (or more) labs per week Mon 2-3, Tue 1-2, Fri 12-1 TA coverage TBA mix of activities example problems in spirit of written assignments and exams help with programming projects tutorials no deliverables (unlike intro classes) strongly recommend that you attend if you can t attend your regular one, ok to drop by another if there s space 20

Textbooks Fundamentals of Computer Graphics Peter Shirley, AK Peters, 3nd edition OpenGL Programming Guide, v 3.1 OpenGL Architecture Review Board v 1.1 available for free online aka The Red Book readings posted on schedule page strongly encouraged but not mandatory 21 Learning OpenGL this is a graphics course using OpenGL not a course *on* OpenGL upper-level class: learning APIs mostly on your own only minimal lecture coverage basics, some of the tricky bits OpenGL Red Book many tutorial sites on the web nehe.gamedev.net 22 Citation Plagiarism and Cheating cite all sources of information what to cite study group members, books, web sites where to cite it README for programming projects end of writeup for written assignments http://www.ugrad.cs.ubc.ca/~cs314/vjan2013/cheat.html 23 don t cheat, I will prosecute insult to your fellow students and to me programming and homework writeups must be individual work can discuss ideas, browse Web cannot just copy code or answers cannot do team coding exception: final project can be team of two you must be able to explain algorithms during face-toface demo or no credit for that part of assignment and possibly prosecution 24

Plagiarism and Cheating submit statement that you ve read and understood before we ll mark your work http://www.ugrad.cs.ubc.ca/~cs314/vjan2013/cheat.html Course Content Overview 25 26 we cover basic algorithms for This Course rendering displaying models (modeling generating models) (animation generating motion) programming in OpenGL, C++ we do not cover art/design issues commercial software packages Other Graphics Courses CPSC 424: Geometric Modeling offered now CPSC 426: Computer Animation offered next year CPSC 514: Image-based Modeling and Rendering CPSC 526: Computer Animation CPSC 533A: Digital Geometry CPSC 533B: Animation Physics CPSC 547: Information Visualization CPSC 530P: Sensorimotor Computation 27 28

Rendering Modelling Transformation: Object Placement creating images from models geometric objects lines, polygons, curves, curved surfaces camera pinhole camera, lens systems, orthogonal shading light interacting with material illustration of rendering capabilities Shutterbug series by Williams and Siegel using Pixar's Renderman www.siggraph.org/education/ materials/hypergraph/shutbug.htm 29 30 Viewing Transformation: Camera Placement Perspective Projection 31 32

Depth Cueing Depth Clipping 33 34 Colored Wireframes Hidden Line Removal 35 36

Hidden Surface Removal Per-Polygon Shading 37 38 Gouraud Shading Specular Reflection 39 40

Phong Shading Curved Surfaces 41 42 Complex Lighting and Shading Texture Mapping 43 44

Displacement Mapping Reflection Mapping 45 46 generating models Modelling lines, curves, polygons, smooth surfaces digital geometry generating motion Animation interpolating between frames, states http://www.cs.ubc.ca/~van/papers/doodle.html 47 48

Readings today FCG Chap 1 Wed (last time) FCG Chap 2 except 2.7 (covered later) FCG Chap 5 except 5.4 49