1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR.

Slides:



Advertisements
Similar presentations
16.1 Si23_03 SI23 Introduction to Computer Graphics Lecture 16 – Some Special Rendering Effects.
Advertisements

Lecture 8 Transparency, Mirroring
Graphics Pipeline.
1 Graphics CSCI 343, Fall 2013 Lecture 18 Lighting and Shading.
Week 7 - Monday.  What did we talk about last time?  Specular shading  Aliasing and antialiasing.
3D Graphics Rendering and Terrain Modeling
1 Computer Graphics Chapter 9 Rendering. [9]-2RM Rendering Three dimensional object rendering is the set of collective processes which make the object.
1. What is Lighting? 2 Example 1. Find the cubic polynomial or that passes through the four points and satisfies 1.As a photon Metal Insulator.
CS 4363/6353 INTRODUCTION TO COMPUTER GRAPHICS. WHAT YOU’LL SEE Interactive 3D computer graphics Real-time 2D, but mostly 3D OpenGL C/C++ (if you don’t.
CS6500 Adv. Computer Graphics © Chun-Fa Chang, Spring 2003 Object-Order vs. Screen-Order Rendering April 24, 2003.
18.1 Si31_2001 SI31 Advanced Computer Graphics AGR Lecture 18 Image-based Rendering Light Maps What We Did Not Cover Learning More...
(conventional Cartesian reference system)
Vertices and Fragments III Mohan Sridharan Based on slides created by Edward Angel 1 CS4395: Computer Graphics.
1 Angel: Interactive Computer Graphics 4E © Addison-Wesley 2005 Models and Architectures Ed Angel Professor of Computer Science, Electrical and Computer.
1 3D –graphics and animation Addvanced 3D modeling and rendering Harri Airaksinen.
02/04/03 Page 1 Rendering Visibility Lighting Texturing.
Introduction to 3D Graphics John E. Laird. Basic Issues u Given a internal model of a 3D world, with textures and light sources how do you project it.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 19 Other Graphics Considerations Review.
1 Computer Graphics Week13 –Shading Models. Shading Models Flat Shading Model: In this technique, each surface is assumed to have one normal vector (usually.
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.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10: Computer Graphics Computer Science: An Overview Tenth Edition.
University of Illinois at Chicago Electronic Visualization Laboratory (EVL) CS 426 Intro to 3D Computer Graphics © 2003, 2004, 2005 Jason Leigh Electronic.
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
Computer Visualization BIM Curriculum 03. Topics  History  Computer Visualization Methods  Visualization Workflow  Technology Background.
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.
Shading & Texture. Shading Flat Shading The process of assigning colors to pixels. Smooth Shading Gouraud ShadingPhong Shading Shading.
MIT EECS 6.837, Durand and Cutler Graphics Pipeline: Projective Transformations.
CSC 461: Lecture 3 1 CSC461 Lecture 3: Models and Architectures  Objectives –Learn the basic design of a graphics system –Introduce pipeline architecture.
Rendering Overview CSE 3541 Matt Boggus. Rendering Algorithmically generating a 2D image from 3D models Raster graphics.
Week 10 - Wednesday.  What did we talk about last time?  Shadow volumes and shadow mapping  Ambient occlusion.
1 Introduction to Computer Graphics with WebGL Ed Angel Professor Emeritus of Computer Science Founding Director, Arts, Research, Technology and Science.
Lecture 6: 3D graphics Concepts 1  Principles of Interactive Graphics  CMSCD2012  Dr David England, Room 718,  ex 2271 
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 Chapter 6 Andreas Savva. 2 Interactive Graphics Graphics provides one of the most natural means of communicating with a computer. Interactive.

Global Illumination. Local Illumination  the GPU pipeline is designed for local illumination  only the surface data at the visible point is needed to.
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
RENDERING Introduction to Shading models – Flat and Smooth shading – Adding texture to faces – Adding shadows of objects – Building a camera in a program.
11/24/ :45 Graphics II Shadow Maps Reflections Session 5.
COMPUTER GRAPHICS CS 482 – FALL 2015 SEPTEMBER 29, 2015 RENDERING RASTERIZATION RAY CASTING PROGRAMMABLE SHADERS.
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, Fall 2008 Lecture 20 Computer Graphics and VR.
What are Computer Graphics Basically anything that is on you Monitor – This includes the text that you will see Text isn’t Advanced Graphics But…. Understanding.
Real-Time Dynamic Shadow Algorithms Evan Closson CSE 528.
1 CSCE 441: Computer Graphics Lighting Jinxiang Chai.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 15 Creating 3D Models.
1 Computer Graphics Week11 : Hidden Surface Removal.
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.
1 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley 2012 Models and Architectures 靜宜大學 資訊工程系 蔡奇偉 副教授 2012.
1 Chapter 1: Introduction to Graphics. 2 What is computer graphics.
Applications and Rendering pipeline
Introduction to Computer Graphics
Rendering Pipeline Fall, 2015.
- Introduction - Graphics Pipeline
Computer Graphics Chapter 9 Rendering.
IMAGES.
3D Graphics Rendering PPT By Ricardo Veguilla.
CS451Real-time Rendering Pipeline
Models and Architectures
Models and Architectures
Models and Architectures
Introduction to Computer Graphics with WebGL
(c) 2002 University of Wisconsin
The Graphics Pipeline Lecture 5 Mon, Sep 3, 2007.
Models and Architectures
Models and Architectures
Presentation transcript:

1 Perception and VR MONT 104S, Fall 2008 Lecture 21 More Graphics for VR

2 Creating Graphics for VR The synthetic camera model: 1) Define the 3D object(s) in space. 2) Specify lighting, shading and material properties 3) Specify camera properties (position, orientation, projection system, etc). 4) Imaging process: i) Transformation: Put the object in the camera's coordinate system. ii)Clipping: Eliminate points outside the camera's field of view. iii)Projection: Convert from 3D to 2D coordinates. iv)Rasterization: Projected objects represented as pixels in the frame buffer.

3 Transformations Transformations allow us to define an object once, and then move it within the 3D graphics world. This is useful for placing multiple copies of an object in different positions, without specifying all new point positions. This is also useful for animations. Three types of transformations: Translation Rotation Scaling

4 Translation Suppose we have an object defined by vertices in space: (x, y, z) We want to move it horizontally by some amount, dx. We alter each vertex by adding dx to the x component. We can do the same for y and z: x' = x + dx y' = y + dy z' = z + dz Example: P1 = (50, 50, -200) P2 = (50, 100, -200) P3 = (100, 100, -200) P4 = (100, 50, -200) Shift to the right by 50 units. (Add 50 to each x component): P1' = (100, 50, -200) P2' = (100, 100, -200) P3' = (150, 100, -200) P4' = (150, 50, -200)

5 Rotation about the Z axis To rotate an object, we must define an axis of rotation, which is the axis about which the object rotates. Consider rotation of an angle  about the Z axis. The X position changes. The Y position changes. The Z position does not change. Equations: x' = xcos  - ysin  y' = xsin  + ycos  z' = z Example: Rotate the point (50, 20, -200) by 90 o about the Z axis. Rotation about the X or Y axis is similar.

6 Scaling To scale in the horizontal direction, multiply the x component by a factor, s x. To scale in the vertical direction, multiply the y component by a factor, s y. To scale in the depth direction, multiply the z component by a factor, s z. Equations: x' = s x x y' = s y y z' = s z z Example: Scale original square by a factor of 2, horizontally.

7 Hidden Surface Removal-- The Painters Algorithm When rendering objects, we would like to show only the surfaces that are closest to us, and remove those that are behind other surfaces. The painter's algorithm renders each surface as it is encountered. If two surfaces project to the same position, the one that is drawn second "paints over" the first one. The second one will be rendered regardless of the depth of the two surfaces. This algorithm is more useful if you first sort the objects according to their distances from the camera. Render the most distant ones first.

8 Hidden Surface Removal-- The Z-buffer Algorithm The Z-buffer algorithm uses an area of memory (the Z- buffer) to keep track of the depth of each rendered pixel. As each object is rendered, the depth of each pixel is compared to the current Z value stored for that position. If the depth of the new pixel is less than the stored depth, the new pixel replaces the old pixel (and the new depth replaces the old stored depth). If the depth of the new pixel is greater than the stored depth, the new pixel is discarded. Z = 600 Z = 400

9 Lighting and Shading Most real-time graphics use simple models of lighting and shading to generate shaded objects quickly. The models compute the approximate shaded color of each surface pixel based on the following properties: Simulated position of the light source Orientation of the surface relative to the position of the light source The color of the light The material properties of the surface: Color and amount of diffuse reflection (dull surface) Color and amount of specular reflection (shiny surface) Color and amount of ambient lighting.

10 More realistic lighting and shading More realistic shading comes with a time cost. The techniques are not generally used for Virtual Reality because they're slow. Ray Tracing: In ray tracing, the light rays are traced from the simulated eye position, through each pixel on the screen, back to the object. If necessary, the reflected light ray is projected to the light source. Radiosity: In this technique, the light energy is computed as it reflects off multiple surfaces. This is the slowest technique.

11 Texture Mapping Rendering scenes with lots of detail can take too much time. Imagine drawing all the individual blades of grass in a field. We can give the appearance of detail by mapping an image onto a surface. This is known as texture mapping. For example, we can map a picture of grass onto a flat rectangular floor. This is a fast, easy way to generate detailed looking scenes.

12 Collision Detection When objects are moving, we need to detect when one object collides with another, so they can interact appropriately. Example: Pong The ball bounces off the paddles or the walls and changes direction with each bounce. The computer must keep track of the position of the boundaries of the ball and test for when the ball touches a surface. For complex objects, we can use a bounding box to calculate the position of the boundaries.

13 User Interface Interactivity is essential to Virtual Reality. The user must be able to interact with objects within the virtual world. What are some of the tools we use to interact with virtual worlds? Simple computer tools: Use the mouse to select and drag Use menus to perform actions Use the keyboard to enter commands. More Complex tools: Use a game-controller to interact. Track the user's position. Track the position of a data glove. Allow the user to interact with objects using the glove.