Instructor. Goals. Image Synthesis Examples. Applications. Foundations of Computer Graphics. 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?

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

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

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

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

Overview. Computer Graphics CSE 167

History of computer graphics

Choosing the right course

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

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

Development of Computer Graphics

Lecturer Athanasios Nikolaidis

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

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

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

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

Computer Graphics Introduction. Taku Komura

Course Title: Computer Graphics Course no: CSC209

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

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

Pipeline Operations. CS 4620 Lecture 14

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

CHAPTER 1 Graphics Systems and Models 3

CS348B: Image Synthesis

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

CIS 581 Interactive Computer Graphics

Lahore University of Management Sciences. CS 452 Computer Graphics

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

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

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

Animation & Rendering

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

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

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

The Rasterization Pipeline

Review. Stephen J. Guy

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

Lahore University of Management Sciences. CS 452 Computer Graphics

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

3D GRAPHICS. design. animate. render

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

Computer graphics and visualization

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

Chapter 7 - Light, Materials, Appearance

CS4620/5620 Introduction to Computer Graphics

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

OpenGL Lighting Computer Graphics Spring Frank Palermo

Computer Graphics. Lecture 14 Bump-mapping, Global Illumination (1)

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

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

Survey in Computer Graphics Computer Graphics and Visualization

Graphics Hardware and Display Devices

EF432. Introduction to spagetti and meatballs

Evolution of Imaging Technology in Computer Graphics. Related Areas

Models and Architectures


lecture 18 - ray tracing - environment mapping - refraction

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

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

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

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

Graphics Programming. Computer Graphics, VT 2016 Lecture 2, Chapter 2. Fredrik Nysjö Centre for Image analysis Uppsala University

Intro to Ray-Tracing & Ray-Surface Acceleration

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

CS451Real-time Rendering Pipeline

Introduction to Visualization and Computer Graphics

EF432. Introduction to spagetti and meatballs

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

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

CS GAME PROGRAMMING Question bank

CS 4620 Program 3: Pipeline

Effects needed for Realism. Computer Graphics (Fall 2008) Ray Tracing. Ray Tracing: History. Outline

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

COMP Preliminaries Jan. 6, 2015

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

Introduction. Chapter Computer Graphics

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

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

CS535: Interactive Computer Graphics

03 RENDERING PART TWO

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

COMP 4801 Final Year Project. Ray Tracing for Computer Graphics. Final Project Report FYP Runjing Liu. Advised by. Dr. L.Y.

Computer Graphics I Lecture 11

Lighting. To do. Course Outline. This Lecture. Continue to work on ray programming assignment Start thinking about final project

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

BRDF Computer Graphics (Spring 2008)

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

Overview: Ray Tracing & The Perspective Projection Pipeline

Radiance. Radiance properties. Radiance properties. Computer Graphics (Fall 2008)

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

OXFORD ENGINEERING COLLEGE (NAAC Accredited with B Grade) DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING LIST OF QUESTIONS

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

Course Recap + 3D Graphics on Mobile GPUs

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

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

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

Principles of Computer Graphics. Lecture 3 1

Graphics for VEs. Ruth Aylett

Chapter 4. Chapter 4. Computer Graphics 2006/2007 Chapter 4. Introduction to 3D 1

Transcription:

Foundations of Computer Graphics Motivation: Why do we study 3D Graphics? http://www.cs.berkeley.edu/~ravir Instructor 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, UC Berkeley since Jan 2009 Awards for research: White House PECASE (2008), SIGGRAPH Significant New Researcher (2007) http://www.cs.berkeley.edu/~ravir/ravir.wmv Have taught Computer Graphics 10+ times Goals Systems: Write complex 3D graphics programs (real-time scene viewer 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 like Maya, Alias, DirectX but about the concepts underlying them. You will write programs in OpenGL/GLSL Image Synthesis Examples Collage from 2007 Why Study 3D Computer Graphics? Applications (discussed next) Fundamental Intellectual Challenges Applications Movies Games Computer Aided Design (CAD) Lighting Simulation (Interiors, Automobiles, ) Visualization (Scientific, Medical) Virtual Reality 1

Digital Visual Media From text to images to video (to 3D?) Image and video processing and photography Flickr, YouTube, WebGL Real, Virtual Worlds (Google Earth, Second Life) Electronic publishing Online gaming 3D printers and fabrication Why Study 3D Computer Graphics? 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, hardware Foundations of Computer Graphics Course Outline and Logistics 3D Graphics Pipeline Modeling Animation Rendering Image from Liu and Popovic 2002 Image from Levoy et al. 2000 3D Graphics Pipeline Modeling Animation Rendering HW 1: Transformations Place objects in world, view them Simple viewer for a teapot HW 2: Scene Viewer View scene, Lighting and Shading (with GLSL programmable shaders) HW 3: RayTracer Realistic images with ray tracing (two basic approaches: rasterize And raytrace images [HW 2,3]) Assignment Logistics HW 0 immediately to check compilation etc. Feedback/Grading servers for all HW Submit images, compared with originals Program generates images automatically for you Can submit multiple times for feedback Skeleton code in C++/OpenGL/GLSL Programming background in C/C++/Java needed No prior knowledge of 3D graphics/opengl required 2

Workload Lots of fun, rewarding but may involve significant work 3 programming projects; almost all are time-consuming Course will involve understanding of mathematical, geometrical concepts taught (tested on final) Prerequisites: Solid C/C++/Java programming. Linear algebra (review next lecture) and basic math skills A Note on GPU Programming Modern 3D Graphics Programming with GPUs GLSL + Programmable Shaders in HW 0,1,2 Should be very portable, but need to set up your environment, compilation framework (HW 0) Foundations of Computer Graphics How far we ve come: TEXT Brief History of Computer 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) Manchester Mark I 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 http://www.youtube.com/watch?v=mozqrjze8xg Many of concepts for drawing in current systems Pop up menus Constraint-based drawing Hierarchical Modeling Xerox Star Windows 1.0 3

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) Black Girl by Fritz Fisher http://www.rgshoup.com/prof/superpaint Precursor to Photoshop: general image processing Modeling Spline curves, surfaces: 70 s 80 s Utah teapot: Famous 3D model More recently: Triangle meshes often acquired from real objects Rendering: 1960s (visibility) Hidden Line Algorithms: Roberts (63), Appel (67) Hidden Surface Algorithms: Warnock (69), Watkins (70) Visibility = Sorting Sutherland (74) Images from FvDFH, Pixar s Shutterbug: Slide ideas for history of Rendering courtesy Marc Levoy Rendering: 1970s (lighting) Diffuse Lighting (Gouraud 1971) Specular Lighting (Phong 1974) Curved Surfaces, Texture (Blinn 1974) Rendering (1980s, 90s: Global Illumination) early 1980s - global illumination Whitted (1980) - ray tracing Goral, Torrance et al. (1984) radiosity Kajiya (1986) - the rendering equation Z-Buffer Hidden Surface (Catmull 1974) 4

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 5