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

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

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

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

Overview. Computer Graphics CSE 167

Goals. Advanced Computer Graphics. Course Outline. Course Outline. Course Outline. Course Outline

CSE328 Fundamentals of Computer Graphics: Concepts, Theory, Algorithms, and Applications

Choosing the right course

History of computer graphics

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

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

Binghamton University. EngiNet. Thomas J. Watson. School of Engineering and Applied Science. State University of New York. EngiNet WARNING CS 560

CS148 Introduction to Computer Graphics and Imaging. Pat Hanrahan Fall cs148.stanford.edu

Development of Computer Graphics. mid 1950s SAGE air defense system command & control CRT, light pens

Development of Computer Graphics

CENG505 Advanced Computer Graphics Lecture 1 - Introduction. Instructor: M. Abdullah Bülbül

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

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

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

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

Course Title: Computer Graphics Course no: CSC209

Computer Graphics. Anders Hast. måndag 25 mars 13

CS4620/5620 Introduction to Computer Graphics

Lecturer Athanasios Nikolaidis

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

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

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

Intro. Week 1, Fri Jan 4

CIS 581 Interactive Computer Graphics

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

CSCD18: Computer Graphics. Instructor: Leonid Sigal

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

CS535: Interactive Computer Graphics

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

CSCE 441 Computer Graphics Fall 2018

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

Lahore University of Management Sciences. CS 452 Computer Graphics

Computer Graphics CS 543 Lecture 1 (Part I) Prof Emmanuel Agu. Computer Science Dept. Worcester Polytechnic Institute (WPI)

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

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

Welcome to COMP 770 (236) Introduction. Prerequisites. Prerequisites

Rendering and Radiosity. Introduction to Design Media Lecture 4 John Lee

CS348B: Image Synthesis

CS 684 Fall 2005 Image-based Modeling and Rendering. Ruigang Yang

Pipeline Operations. CS 4620 Lecture 14

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

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

CS : Assignment 2 Real-Time / Image-Based Rendering

The Rasterization Pipeline

Computer Graphics Introduction. Taku Komura

CHAPTER 1 Graphics Systems and Models 3

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

CSCI-6962 Advanced Computer Graphics

Welcome to CS 4/57101 Computer Graphics

CS354 Computer Graphics Introduction. Qixing Huang Januray 17 8h 2017

Pipeline Operations. CS 4620 Lecture Steve Marschner. Cornell CS4620 Spring 2018 Lecture 11

Luxo Jr. Plan. Team. Movies. Why Computer Graphics? Introduction to Computer Graphics. Pixar Animation Studios, 1986 Director: John Lasseter

Introduction to Computer Graphics. Instructor: Stephen J. Guy

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)

CS5620 Intro to Computer Graphics

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

Syllabus CS476 COMPUTER GRAPHICS Fall 2009

CS GPU and GPGPU Programming Lecture 7: Shading and Compute APIs 1. Markus Hadwiger, KAUST

Parallelizing Graphics Pipeline Execution (+ Basics of Characterizing a Rendering Workload)

Computer Graphics (CS 543) Lecture 1 (Part 1): Introduction to Computer Graphics

National Chiao Tung Univ, Taiwan By: I-Chen Lin, Assistant Professor

S U N G - E U I YO O N, K A I S T R E N D E R I N G F R E E LY A VA I L A B L E O N T H E I N T E R N E T

CS 184: Assignment 2 Scene Viewer

Lahore University of Management Sciences. CS 452 Computer Graphics

CS 283: Assignment 1 Geometric Modeling and Mesh Simplification

Interactive Computer Graphics A TOP-DOWN APPROACH WITH SHADER-BASED OPENGL

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

Computer Graphics. CS52 Fall computer graphics introduction 2006 fabio pellacini 1

Books: 1) Computer Graphics, Principles & Practice, Second Edition in C JamesD. Foley, Andriesvan Dam, StevenK. Feiner, John F.

Course Recap + 3D Graphics on Mobile GPUs

COMP Preliminaries Jan. 6, 2015

Chapter 7 - Light, Materials, Appearance

Review. Stephen J. Guy

CS 283: Assignment 3 Real-Time / Image-Based Rendering

Shadow and Environment Maps

EF432. Introduction to spagetti and meatballs

Homework 3: Programmable Shaders

Computer graphics and visualization

Computer Graphics. CS52 Winter computer graphics introduction 2008 fabio pellacini 1. introduction

CS 4620 Program 3: Pipeline

Computer Graphics. - Introduction - Hendrik Lensch. Computer Graphics WS07/08 - Introduction

Computer Graphics. Introduction. Prof. SHENG Bin, CS, SJTU

Spring 2012 Final. CS184 - Foundations of Computer Graphics. University of California at Berkeley

OpenGL Lighting Computer Graphics Spring Frank Palermo

Lecture 1 Course Introduction

lecture 18 - ray tracing - environment mapping - refraction

Animation & Rendering

TSBK 07! Computer Graphics! Ingemar Ragnemalm, ISY

Lecture 0 of 41: Part B Course Content. Advanced Computer Graphics: Course Organization and Survey

CS4621/5621 Fall Computer Graphics Practicum Final Projects. Professor: Kavita Bala Instructor: Nicolas Savva

PART 2 Introduction to Computer Graphics using OpenGL. Burkhard Wünsche

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


Evolution of Imaging Technology in Computer Graphics. Related Areas

Computer Graphics ( /657) Prof. Misha Kazhdan

COMPUTER GRAPHICS CS

Transcription:

Foundations of Computer Graphics (Fall 2012) CS 184, Lecture 1: Overview and History Ravi Ramamoorthi http://inst.eecs.berkeley.edu/~cs184 Goals Systems: Write complex 3D graphics programs (real-time scene in OpenGL, offline raytracer) Theory: Mathematical aspects and algorithms underlying modern 3D graphics systems This course is not about the specifics of 3D graphics programs and APIs like Maya, Alias, DirectX but about the concepts underlying them. Demo: Surreal (HW 4) Makiko Yasui and Dixon Koesdjojo, Spring 2003 Course Staff Ravi Ramamoorthi http://www.cs.berkeley.edu/~ravir PhD Stanford, 2002. PhD thesis developed Spherical Harmonic Lighting widely used in games (e.g. Halo series), movies (e.g. Avatar), etc. (Adobe, ) At Columbia 2002-2008, research on rendering/image synthesis, data-driven appearance. Normal Mapping Video At Berkeley since Jan 2009. 3 rd time teaching 184. New this semester: modern 3D graphics programs with shaders Teaching Assistants: cs184@imail.eecs.berkeley.edu Fu-Chung Huang Brandon Wang Christine Nguyen Nicholas Estorga (grader, feedback servers) Why Study 3D Computer Graphics? Entertainment Applications (discussed next) Fundamental Intellectual Challenges Some content inspired by Pat Hanrahan from Stanford s CS148 Movies: Brave, Pixar 2012 1

Entertainment Lighting Simulation Interior Design Games: Halo 3, Bungie 2007 Automobile Visualization Computer Aided Design Visualization: Science and Medicine Mechanical CAD Architectural CAD Electronics CAD Casual Users Interiors Professional Google Sketchup Visible Human Project: University of Hamburg Virtual Reality VR for design and entertainment Simulators: Surgical, Flight, Driving, Spacecraft Digital Visual Media From text to images to video (to 3D?) Image and video processing and photography Multimedia computers, tablets, phones Flickr, YouTube, WebGL Real, Virtual Worlds (Google Earth, Second Life) Electronic publishing Online gaming 3D printers and fabrication 2

Why Study 3D Computer Graphics? Applications Fundamental Intellectual Challenges Create and interact 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 3D graphics software programming and hardware Curves for Modeling Rachel Shiner, Final Project Spring 2010 Image Synthesis Examples HW 2: Scene Viewer (Sep 26) View scene, Lighting and Shading (with GLSL programmable shaders) HW 5: RayTracer (Nov 21) Realistic images with ray tracing (two basic approaches: rasterize And raytrace images [HW 2,5]) Collage from 2007 3

Interactive 3D Graphics HW 2: Scene Viewer (Sep 26) View scene, Lighting and Shading (with GLSL programmable shaders) HW4: Programming with OpenGL (Oct 31) HW 5: RayTracer (Nov 21) Realistic images with ray tracing (two basic approaches: rasterize And raytrace images [HW 2,5]) Tianyu Liu: HW 3, Spring 2010 Final Project HW 2: Scene Viewer (Sep 26) View scene, Lighting and Shading (with GLSL programmable shaders) HW4: Programming with OpenGL (Mar 12) HW6: Final Project (Animation, or anything else) [Dec 10] HW 5: RayTracer (Nov 21) Realistic images with ray tracing (two basic approaches: rasterize And raytrace images [HW 2,5]) John Ng and Andrea Goh, Spring 2010 Logistics Website http://inst.eecs.berkeley.edu/~cs184 has most of the information (look at it carefully) Office hours: 11am 12pm on class days See website for sections, TA office hours Course newsgroup on Piazza Textbooks: OpenGL Programming Guide, GLSL Book Website for late, collaboration policy, etc Questions? (Almost) New This Semester Modern 3D Graphics Programming with GPUs GLSL + Programmable Shaders from HW 1 Should be very portable, but need to set up your environment, compilation framework (HW 0) NVIDIA Fermi, image from Pat Hanrahan 4

(Almost) New: Feedback Servers Feedback/Grading servers for HW 0,1,2,3,5 Submit images and/or code, compare to original Program generates difference images, report url Can get feedback multiple times; submit final url Feedback not necessarily grading Can run extra test cases, look at code, grade fairly But use of feedback servers is mandatory Will test out immediately with HW 0 images HW 1-3 will have both code and image feedbacks Demo of HW 0 Feedback (Nick) Instructions posted on website and on Piazza New: Online Lectures Online lectures and screencasts for first half: http://inst.eecs.berkeley.edu/~cs184/fa12/onlinelectures.html Three main goals for online screencasts Review for CS 184 (but still have regular classes) For general interest (share with non-cs 184 students) Hope to teach an online class on EdX soon Currently view screencasts as complementary Hence, viewing them optional (but recommended) May be minor differences from in-class lectures Subscribe to YouTube channel for updates Workload Lots of fun, rewarding but may involve significant work 6 programming projects; almost all are time-consuming (but you have groups of two for later projects 4,5). START EARLY!! Course will involve understanding of mathematical, geometrical concepts taught (tested on midterm, final) Prerequisites: Solid C/C++/Java programming background. Linear algebra (review on Tue) and general math skills. No knowledge of graphics/opengl needed. Should be a difficult, but fun and rewarding course Look at website To Do Various policies for course. E-mail if confused. Skim assignments if you want. All are ready Assignment 0, Due Aug 29(a), 31(b) next week (see website). Compilation and Photo [both are essential, counts for total of 20 points] Set up compilation framework in HW 0, feedback Any questions? History Brief history of significant developments in field End with a video showcasing graphics The term Computer Graphics was coined by William Fetter of Boeing in 1960 First graphic system in mid 1950s USAF SAGE radar data (developed MIT) 5

How far we ve come: TEXT From Text to GUIs Invented at PARC circa 1975. Used in the Apple Macintosh, and now prevalent everywhere. Manchester Mark I Display Xerox Star Windows 1.0 Drawing: Sketchpad (1963) Sketchpad (Sutherland, MIT 1963) First interactive graphics system (VIDEO) Many of concepts for drawing in current systems Pop up menus Constraint-based drawing Hierarchical Modeling Paint Systems SuperPaint system: Richard Shoup, Alvy Ray Smith (PARC, 1973-79) Nowadays, image processing programs like Photoshop can draw, paint, edit, etc. Image Processing Digitally alter images, crop, scale, composite Add or remove objects Sports broadcasts for TV (combine 2D and 3D processing) Modeling Spline curves, surfaces: 70 s 80 s Utah teapot: Famous 3D model More recently: Triangle meshes often acquired from real objects 6

Rendering: 1960s (visibility) Roberts (1963), Appel (1967) - hidden-line algorithms Warnock (1969), Watkins (1970) - hidden-surface Sutherland (1974) - visibility = sorting Rendering: 1970s (lighting) 1970s - raster graphics Gouraud (1971) - diffuse lighting, Phong (1974) - specular lighting Blinn (1974) - curved surfaces, texture Catmull (1974) - Z-buffer hidden-surface algorithm Images from FvDFH, Pixar s Shutterbug Slide ideas for history of Rendering courtesy Marc Levoy Rendering (1980s, 90s: Global Illumination) early 1980s - global illumination Whitted (1980) - ray tracing Goral, Torrance et al. (1984) radiosity Kajiya (1986) - the rendering equation History of Computer Animation 10 min clip from video on history of animation http://www.youtube.com/watch?v=lzzwiluvakg Covers sketchpad, animation, basic modeling, rendering A synopsis of what this course is about Related courses CS 283, class taught by me next semester Don t be scared by graduate designation Many CS 294 and similar courses, e.g. visualization, physical simulation, geometric modeling, Other related courses: Computer Vision, Robotics, User Interfaces Computational Geometry, Photography, 7