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

Similar documents
Goals. Demo: Surreal (HW 4) Course Staff. Entertainment. Foundations of Computer Graphics (Fall 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

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

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

Development of Computer Graphics

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

Lecturer Athanasios Nikolaidis

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

Course Title: Computer Graphics Course no: CSC209

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

CS4620/5620 Introduction to Computer Graphics

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

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

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

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

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

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

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

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

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

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

CIS 581 Interactive Computer Graphics

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

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

Computer Graphics Introduction. Taku Komura

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

CHAPTER 1 Graphics Systems and Models 3

Lahore University of Management Sciences. CS 452 Computer Graphics

CS348B: Image Synthesis

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

The Rasterization Pipeline

CS5620 Intro to Computer Graphics

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

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

CS535: Interactive Computer Graphics

Pipeline Operations. CS 4620 Lecture 14

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

CSCD18: Computer Graphics. Instructor: Leonid Sigal

CSCE 441 Computer Graphics Fall 2018

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

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

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

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

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

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

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

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

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

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

Review. Stephen J. Guy

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

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.

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

Welcome to CS 4/57101 Computer Graphics

Course Recap + 3D Graphics on Mobile GPUs

OpenGL Lighting Computer Graphics Spring Frank Palermo

Lahore University of Management Sciences. CS 452 Computer Graphics

Animation & Rendering

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

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

Evolution of Imaging Technology in Computer Graphics. Related Areas

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

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

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

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

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

Computer graphics and visualization

EF432. Introduction to spagetti and meatballs

Introduction to Computer Graphics. Knowledge basic concepts 2D and 3D computer graphics

CSE 167: Introduction to Computer Graphics Lecture #7: Lights. Jürgen P. Schulze, Ph.D. University of California, San Diego Spring Quarter 2015

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

Shadow and Environment Maps

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

CSCI-6962 Advanced Computer Graphics

3D GRAPHICS. design. animate. render

Module Contact: Dr Stephen Laycock, CMP Copyright of the University of East Anglia Version 1

Computer Graphics ( /657) Prof. Misha Kazhdan

Chapter 7 - Light, Materials, Appearance

CS GPU and GPGPU Programming Lecture 2: Introduction; GPU Architecture 1. Markus Hadwiger, KAUST

GLOBAL EDITION. Interactive Computer Graphics. A Top-Down Approach with WebGL SEVENTH EDITION. Edward Angel Dave Shreiner

CS230 : Computer Graphics Lecture 4. Tamar Shinar Computer Science & Engineering UC Riverside

CS451Real-time Rendering Pipeline

Homework 3: Programmable Shaders

Computer Graphics I Lecture 11

BRDF Computer Graphics (Spring 2008)

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

CSE 167: Lecture #8: GLSL. Jürgen P. Schulze, Ph.D. University of California, San Diego Fall Quarter 2012

lecture 18 - ray tracing - environment mapping - refraction

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

Transcription:

Foundations of Computer Graphics (Spring 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 3) 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. 2 nd time teaching 184. New this semester: modern 3D graphics programs with shaders Teaching Assistants: cs184@imail.eecs.berkeley.edu Fu-Chung Huang Brandon Wang [Grader to be announced] Makiko Yasui and Dixon Koesdjojo, Spring 2003 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 (discussed next) 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 (Feb 23) View scene, Lighting and Shading (with GLSL programmable shaders) HW 5: RayTracer (Apr 19) 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 (Feb 23) View scene, Lighting and Shading (with GLSL programmable shaders) HW3: Programming with OpenGL (Mar 12) HW 5: RayTracer (Apr 19) 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 (Feb 23) View scene, Lighting and Shading (with GLSL programmable shaders) HW3: Programming with OpenGL (Mar 12) HW6: Final Project (Animation, or anything else) [May 7] HW 5: RayTracer (Apr 19) 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) Office hours: 3pm 4pm on class days See website for sections, TA office hours Course newsgroup on Piazza Textbook: Fundamentals of Computer Graphics by Shirley (3 rd edition): Not strictly needed OpenGL Programming Guide, GLSL Book Website for late, collaboration policy, etc Questions? 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

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 projects 2,3,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 Mon) and general math skills Should be a difficult, but fun and rewarding course To Do Look at website Various policies for course. E-mail if confused. Skim assignments if you want. All are ready Assignment 0a, Due Jan 26 Thu (see website). Compilation and Photo [both essential] Any questions? History How far we ve come: TEXT Brief history of significant developments in field End with a video showcasing graphics Manchester Mark I 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) Display From Text to GUIs Invented at PARC circa 1975. Used in the Apple Macintosh, and now prevalent everywhere. 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 Xerox Star Windows 1.0 5

Paint Systems SuperPaint system: Richard Shoup, Alvy Ray Smith (PARC, 1973-79) Image Processing Digitally alter images, crop, scale, composite Add or remove objects Sports broadcasts for TV (combine 2D and 3D processing) Nowadays, image processing programs like Photoshop can draw, paint, edit, etc. Modeling Spline curves, surfaces: 70 s 80 s Utah teapot: Famous 3D model Rendering: 1960s (visibility) Roberts (1963), Appel (1967) - hidden-line algorithms Warnock (1969), Watkins (1970) - hidden-surface Sutherland (1974) - visibility = sorting More recently: Triangle meshes often acquired from real objects Images from FvDFH, Pixar s Shutterbug Slide ideas for history of Rendering courtesy Marc Levoy 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 Rendering (1980s, 90s: Global Illumination) early 1980s - global illumination Whitted (1980) - ray tracing Goral, Torrance et al. (1984) radiosity Kajiya (1986) - the rendering equation 6

History of Computer Animation 10 min clip from video on history of animation Covers sketchpad, animation, basic modeling, rendering A synopsis of what this course is about Related courses CS 283, graduate class taught every year (this semester) 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