Presentation is loading. Please wait.

Presentation is loading. Please wait.

Welcome to CSc 830 Advanced Computer Graphics By Ilmi Yoon.

Similar presentations


Presentation on theme: "Welcome to CSc 830 Advanced Computer Graphics By Ilmi Yoon."— Presentation transcript:

1 Welcome to CSc 830 Advanced Computer Graphics By Ilmi Yoon

2 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

3 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)

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

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

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

7 Graphics Applications §Computer Aided Design (CAD)

8 Graphics Applications §Scientific Visualization

9 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…)

10 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

11 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

12 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)

13 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

14 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

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

16 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

17 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

18 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

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

20 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.

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

22 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  

23 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

24 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  

25 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

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

27 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)

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

29 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)

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

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

32 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

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

34 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.

35 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

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

37 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

38 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)

39 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?

40 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.

41 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

42 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

43 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

44 page Color-lookup Table Input Red Green Blue 0000 12 m -100 202 m -10 2 k -1 m bits

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

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


Download ppt "Welcome to CSc 830 Advanced Computer Graphics By Ilmi Yoon."

Similar presentations


Ads by Google