Welcome to CSc 830 Advanced Computer Graphics By Ilmi Yoon.

Slides:



Advertisements
Similar presentations
15.1 Si23_03 SI23 Introduction to Computer Graphics Lecture 15 – Visible Surfaces and Shadows.
Advertisements

Real-Time Rendering 靜宜大學資工研究所 蔡奇偉副教授 2010©.
Graphics Pipeline.
Texture Mapping. Texturing  process that modifies the appearance of each point on a surface using an image or function  any aspect of appearance can.
Week 7 - Monday.  What did we talk about last time?  Specular shading  Aliasing and antialiasing.
3D Graphics Rendering and Terrain Modeling
 Engineering Graphics & Introductory Design 3D Graphics and Rendering REU Modeling Course – June 13 th 2014.
HCI 530 : Seminar (HCI) Damian Schofield.
Welcome to 3D §The 3D graphics pipeline §Rigid-body transform §Homogeneous coordinates §Viewing transformation §Projection §Illumination.
Sep 21, Fall 2005ITCS4010/ Computer Graphics Overview Color Displays Drawing Pipeline.
(conventional Cartesian reference system)
1 CSCE 641: Computer Graphics Lighting Jinxiang Chai.
Sep 21, Fall 2006IAT 4101 Computer Graphics Overview Color Displays Drawing Pipeline.
IAT 3551 Computer Graphics Overview Color Displays Drawing Pipeline.
Graphics Systems I-Chen Lin’s CG slides, Doug James’s CG slides Angel, Interactive Computer Graphics, Chap 1 Introduction to Graphics Pipeline.
COMP236: Computer Graphics Spring’2000 Dinesh Manocha.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Models and Architectures Ed Angel Professor of Computer Science, Electrical and Computer.
Ch 1 Intro to Graphics page 1CS 367 First Day Agenda Best course you have ever had (survey) Info Cards Name, , Nickname C / C++ experience, EOS experience.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
1 Chapter 1: Graphics Systems and Models. 2 Applications of C. G. – 1/4 Display of information Maps GIS (geographic information system) CT (computer tomography)
1 Perception and VR MONT 104S, Spring 2008 Lecture 22 Other Graphics Considerations Review.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
I-1 Steps of Image Generation –Create a model of the objects –Create a model for the illumination of the objects –Create an image (render) the result I.
Programmable Pipelines. 2 Objectives Introduce programmable pipelines ­Vertex shaders ­Fragment shaders Introduce shading languages ­Needed to describe.
Computer Graphics An Introduction. What’s this course all about? 06/10/2015 Lecture 1 2 We will cover… Graphics programming and algorithms Graphics data.
Computer Graphics. Requirements Prerequisites Prerequisites CS 255 : Data Structures CS 255 : Data Structures Math 253 Math 253 Experience with C Programming.
09/09/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Event management Lag Group assignment has happened, like it or not.
MIT EECS 6.837, Durand and Cutler Graphics Pipeline: Projective Transformations.
C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 C O M P U T E R G R A P H I C S Guoying Zhao 1 / 14 Going-through.
CS 450: COMPUTER GRAPHICS REVIEW: INTRODUCTION TO COMPUTER GRAPHICS – PART 2 SPRING 2015 DR. MICHAEL J. REALE.
Week 2 - Friday.  What did we talk about last time?  Graphics rendering pipeline  Geometry Stage.
INTRODUCTION INTRODUCTION Computer Graphics: As objects: images generated and/or displayed by computers. As a subject: the science of studying how to generate.
CSC 461: Lecture 3 1 CSC461 Lecture 3: Models and Architectures  Objectives –Learn the basic design of a graphics system –Introduce pipeline architecture.
3D Graphics for Game Programming Chapter IV Fragment Processing and Output Merging.
Rendering Overview CSE 3541 Matt Boggus. Rendering Algorithmically generating a 2D image from 3D models Raster graphics.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
1 Computer Graphics Week2 –Creating a Picture. Steps for creating a picture Creating a model Perform necessary transformation Lighting and rendering the.
1Computer Graphics Lecture 4 - Models and Architectures John Shearer Culture Lab – space 2
COMPUTER GRAPHICS CSCI 375. What do I need to know?  Familiarity with  Trigonometry  Analytic geometry  Linear algebra  Data structures  OOP.
CAP4730: Computational Structures in Computer Graphics 3D Transformations.
The Rendering Pipeline CS 445/645 Introduction to Computer Graphics David Luebke, Spring 2003.
Programmable Pipelines Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts Director, Arts Technology Center University.
1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.
3D Computer Graphics in a Nutshell Guillaume Caumon, January 2002.
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
Subject Name: Computer Graphics Subject Code: Textbook: “Computer Graphics”, C Version By Hearn and Baker Credits: 6 1.
MIT EECS 6.837, Durand and Cutler The Graphics Pipeline: Projective Transformations.
Computing & Information Sciences Kansas State University Lecture 12 of 42CIS 636/736: (Introduction to) Computer Graphics CIS 636/736 Computer Graphics.
CS559: Computer Graphics Final Review Li Zhang Spring 2010.
1 Perception and VR MONT 104S, Fall 2008 Lecture 20 Computer Graphics and VR.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
CSE 681 Introduction to Ray Tracing. CSE 681 Ray Tracing Shoot a ray through each pixel; Find first object intersected by ray. Image plane Eye Compute.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
Computer Graphics One of the central components of three-dimensional graphics has been a basic system that renders objects represented by a set of polygons.
Chapter 1 Graphics Systems and Models Models and Architectures.
Applications and Rendering pipeline
Computer Graphics Overview
- Introduction - Graphics Pipeline
Computer Graphics.
Week 2 - Friday CS361.
3D Graphics Rendering PPT By Ricardo Veguilla.
The Graphics Rendering Pipeline
CS451Real-time Rendering Pipeline
Understanding Theory and application of 3D
Real-time Computer Graphics Overview
Interactive Computer Graphics
(c) 2002 University of Wisconsin, CS 559
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
Adding Surface Detail 고려대학교 컴퓨터 그래픽스 연구실.
Presentation transcript:

Welcome to CSc 830 Advanced Computer Graphics By Ilmi Yoon

What does this course cover... §Computer Graphics is fun!!!! l Think about all the movies with spectacular computer graphics special effect…. l But we are not artists. We are the ones who makes artist’s dream and imaginations come true!!!! l So, you are not learning how to use tools like AutoCAD, 3D studio MAX, Abobe Photoshop, Maya, etc

You will learn… §Concepts of 3D modeling & Simulations §Animation §But most importantly RENDERING of 3D graphics which is the fundamental for the others. §Topics (check the syllabus)

Graphics Applications §Entertainment: Cinema Pixar: Geri’s Game Universal: Jurassic Park

Graphics Applications §Entertainment: Games Cyan: Riven id: Quake II

Graphics Applications §Medical Visualization MIT: Image-Guided Surgery Project The Visible Human Project

Graphics Applications §Computer Aided Design (CAD)

Graphics Applications §Scientific Visualization

Survey on your CG related background §Basic Concept (Transformation, Camera, Projection, Rendering, Shading) §Software Tools (3D Studio Max, Maya, Alias, Director, VRML) §Library (OpenGL, Open Inventor, Renderman, directX, Java3D) §Advanced Issues (Animation, Rendering Acceleration, Geometry Compression, Global Illumination, Simulation, IBR…)

My Current Research Topics §Webs on the Web - 3D Visualization of bioinformatics data through the WWW §The Virtual Tour Project - The virtual tour through the WWW §Scientific Visualization - Remote rendering of huge simulation data sets (LBL intern position) §3D modeling tools for biologists §Web-based hydrodynamics computing §Automated Behavioral Phenotype Detection and Analysis Using Color-Based Motion Tracking

Modeling and Animation using Blender §Why Blender? §Use Gmax if you want §Why using modeling and animation tools? §Tlaloc.sfsu.edu/~yoon/csc830/Assign0.html

Basic Rendering Pipeline Project ion Illuminat ion Rasteriz ation & Clipping & Display  1V1V 1R1R N L   Database of 3D models Modeling Transform ation (OS -> WS) Visibility Culling Viewing Transfor mation (WS -> CS)

Geometric/Modeling Transformation §Goal: specify object’s position and orientations in a 3D world §Use Linear transformations that rotate and translate objects’ vertices. §Apply these transformations in matrix form

Modeling Transformation Viewing Transfor mation (WS -> CS) ProjectionIlluminationRasterizati on & Clipping & Display Database of 3D models Modeling Transformation (OS -> WS) Visibility Culling 3D models defined in their own model space or object space(OS) - Modeling of an object that consists of multiple object parts use a hierarchical structure of this modeling transformations. Modeling transformations orient models within a common coordinate system called world space (WS) - multiple objects in a space All objects, lights, and camera (viewer) is in one world space

Rigid-Body Transformation §Euclidean transformation §Preserve the shape of the objects that they act on §Includes rotations and translations rotationtranslation

Homogeneous Coordinate System §Rotation multiplies and translation adds l causes distingtion for every single calculation §Homogeneous system treats translation and rotation same by extending one dimension §Repeating usages, scale, skew are also fine

Viewing §Goal: map the visible part of a 3D world to a 2 D image §Use camera-like parameters to define a 3D view volume §Project the view voulme onto a 2D image plane §Map viewport on the image plane to the screen

Viewing Transformation (WS -> CS) ProjectionIlluminationRasterizati on & Clipping & Display Modeling Transformation (OS -> WS) Visibility Culling Another change of coordinate systems Maps points from world space into eye (camera) space Eye position becomes the origin and viewing direction is oriented along some axis (z/-z) World space eye

Viewing transformation §Same with other transformation (rotation + translation) §Specially treated because camera position + viewing direction defines it. eye

Visibility Culling ViewingT ransforma tion (WS -> CS) ProjectionIlluminationRasterizati on & Clipping & Display Database of 3D models Modeling Transformation (OS -> WS) Visibility Culling Viewing volume is defined. Objects outside viewing volume is not visible. This process can contribute substantial performance improvement and there are many number of techniques.

Clipping §Goal: cut off the part of objects outside the view volume to avoid rendering them

Illumination ViewingT ransforma tion (WS -> CS) ProjectionIlluminationRasterizati on & Clipping & Display Modeling Transformation (OS -> WS) Visibility Culling Illumination needs to be done before projection since Z value does matter for shading calculation Shading usually refers local illumination calculated based on surface material, surface normal, view direction, and light source Texture map can be added here Global illumination adds interaction between objects, reflection, refration, BRDF, etc  1V1V 1R1R N L  

Lighting, Shading §Lighting and shading give objects “shape” §Important effects l shading l shiny highlights l reflections l shadows §Local techniques simplify these effects to improve performance

Shading §A reflection (diffuse + specular + florescence) model describes the interaction of light with a surface, in terms of the properties of the surface and the nature of the incident light. §Surface : surface normal + material (combination of k a, k d, k s and n) §I = I a k a + I i [k d (LN) + k s (RV) n ]/(r+k)  1V1V 1R1R N L  

Global illumination §Global techniques provide more accuracy by simulating light propagation among all surfaces in a 3D world. §Local shading (Gauroud shading, Phong shading) does not calculate global effect (shadow, reflection, refraction, scattering, etc) Technique l ray tracing l radiosity

Projection ViewingT ransforma tion (WS -> CS) ProjectionIlluminationRasterizati on & Clipping & Display Modeling Transformation (OS -> WS) Visibility Culling Another transformation from camera space to image space

Projection ViewingT ransforma tion (WS -> CS) ProjectionIlluminationRasterizati on & Clipping & Display Modeling Transformation (OS -> WS) Visibility Culling Another transformation from camera space to image space Z value is used to calculate ratio of x & y and then discarded (right after Z buffer comparison)

(Perspective) Projection §The projection maps all of out 3D coordinates onto our desired viewing plane, thus making 3D world into an image

Rasterization, Clipping, Display ViewingT ransforma tion (WS -> CS) ProjectionIlluminationRasterizati on & Clipping & Display Modeling Transformation (OS -> WS) Visibility Culling Final transformation from image space to viewport coordinates Filling pixels Z buffer (Closer objects over write farther objects) Clipping cuts off objects outside of viewport 2D operation (filling a triangle properly)

Scan Conversion §Goal: convert a project, clipped object into pixels on raster lines. §Use efficient incremental methods

Antialiasing §Raster displays produce blocky aliasing artifacts §Antialiasing techniques reduces the problem by applying the theory of sampling and signal processing

Texture (map) §Blinn, 1978 §Texture mapping is the process of transforming a texture onto the surface of a three-dimensional object. §Makes object realistic appearance, but increasing the overall size of object (problem when transmitted) §Bump mapping

Other issues §Rendering acceleration (rasterization, texture map, spacial subdivision, collision detection, progressive rendering, view dependent rendering, image-based rendering,…) §Anti-aliasing §Physically based simulation

Project 1 §What is OpenGL? Mostly recognized graphics library §You are using OpenGL & Glut only for displaying purpose for project 1 ~ project 4. §For term project, you may rewrite your project 1 ~ 4 using OpenGL and then add animations on top of it.

OpenGL §OpenGL is strictly defined as “a software interface to graphics hardware”. §It is a 3D graphics and modeling library §variety purposes, CAD engineering, architectural applications, computer- generated dianosaurs in blockbuster movies §Developed by SGI

page OpenGL Library Organization OpenGL Application Program GLU GL GLUT GLX Xlib,Xtk Frame Buffer

Color §Various color spaces provide ways to specify colors in term of components: §red, green, blue §hue, saturation, value §Different output devices display different subsets of the perceptible colors

page RGB Color §Conceptually, there are separate frame buffers for red, green, and blue §Each pixel has separate red, green, and blue components that corresponding to location in memory §Typical system might be a 1028x1024 array of pixels, each pixel might consist of 24 bits (3 bytes)

page RGB Color (cont) Example §in a 24 bits example, there are 2 24 possible colors which sometime refered to as 16M colors §How much frambuffer we need for a 1280x1024 pixels?

page Color in OpenGL §glColor3f(1.0,0.0,0.0) §this present a red color §3f = use a RGB model, and the value of the component is float in C.

page §Four-color(RGBA) system §A is called alpha channel, stored in the frame buffer as are the RGB value §The alpha value will be treated by OpenGL as an opacity or transparency §glClearColor(1.0, 1.0, 1.0, 1.0) §solid and white

page Indexed Color §What happen if the size of frame buffer is not enough,relatively to a spatial resolution given? § Many systems have frame buffers that are limited in depth. §We can select colors by interpreting our limited-depth pixels as indicies rather than as color values

page Color-lookup Table §Suppose frame buffer has k bits / pixel §Each pixel value or index is an integer between 0 and 2 k -1 §Suppose we can display colors with an accuracy of m bits §ex k= m = 8, we can choose 256 colors out of 16M

page Color-lookup Table Input Red Green Blue m m k -1 m bits

page Indexed Color Color Lookup Table Color Lookup Table Color Lookup Table A A Red Green Blue

For your inspiration…. §Electronic theater Siggraph ‘2001….