Inside-Outside & Culling

Slides:



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

8.1si31_2001 SI31 Advanced Computer Graphics AGR Lecture 8 Polygon Rendering.
Computer Graphics Inf4/MSc 28/10/08Lecture 91 Computer Graphics Lecture 9 Visible Surface Determination Taku Komura.
O a polygon is a plane figure specified by a set of three or more coordinate positions, called vertices, that are connected in sequence by straight-Line.
Graphics Pipeline.
Computer Graphics Programming: Matrices and Transformations CSE 3451 Matt Boggus.
Shared Graphics Skills Cameras and Clipping Planes
Lecture Fall 2001 Visibility Back-Face Culling Painter’s Algorithm.
Hidden Surface Removal CSE 581. Visibility Assumption: All polygons are opaque What polygons are visible with respect to your view frustum?  Outside:
CHAPTER 12 Height Maps, Hidden Surface Removal, Clipping and Level of Detail Algorithms © 2008 Cengage Learning EMEA.
Computer Graphics Visible Surface Determination. Goal of Visible Surface Determination To draw only the surfaces (triangles) that are visible, given a.
UBI 516 Advanced Computer Graphics
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2007 Tamara Munzner Viewing/Projections I.
Drawing Geometric Objects
Representing Geometry in Computer Graphics Rick Skarbez, Instructor COMP 575 September 18, 2007.
Polygonal Mesh – Data Structure and Smoothing
Objects in 3D – Parametric Surfaces Computer Graphics Seminar MUM, summer 2005.
1 Lecture 5 Rendering 3D graphical primitives. 2 3D Rendering Example:
1 Chapter 5 Viewing. 2 Perspective Projection 3 Parallel Projection.
Introduction to 3D Computer Graphics and Virtual Reality McConnell text.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 10: Computer Graphics Computer Science: An Overview Tenth Edition.
Basics of Rendering Pipeline Based Rendering –Objects in the scene are rendered in a sequence of steps that form the Rendering Pipeline. Ray-Tracing –A.
3D Programming Concepts How objects are described in 3D and Rendering Pipelines – A conceptual way of thinking of the steps involved of converting an abstract.
CS 638, Fall 2001 Multi-Pass Rendering The pipeline takes one triangle at a time, so only local information, and pre-computed maps, are available Multi-Pass.
1Computer Graphics Programming with OpenGL Three Dimensions – 2 Lecture 7 John Shearer Culture Lab – space 2
Computer Graphics Basic 3D Geometry CO2409 Computer Graphics Week 5-1.
1 Visiblity: Culling and Clipping Computer Graphics COMP 770 (236) Spring 2009 January 21 & 26: 2009.
Computer Graphics Zhen Jiang West Chester University.
1 Polygonal Techniques 이영건. 2 Introduction This chapter –Discuss a variety of problems that are encountered within polygonal data sets The.
Intro to OpenGL: Vertices and Drawing
Vertices, Edges and Faces By Jordan Diamond. Vertices In geometry, a vertices is a special kind of point which describes the corners or intersections.
Welcome to Introduction to Computer Graphics CSE 470 (598) Arizona State University Spring 2005.
COMPUTER GRAPHICS Hochiminh city University of Technology Faculty of Computer Science and Engineering CHAPTER 6: Lighting and Shading.
Chapter III Rasterization
1 Computer Graphics Week11 : Hidden Surface Removal.
Learning Objectives Classification of Visible Surface Detection Algorithms Classification of Visible Surface Detection Algorithms Back-Face Detection Back-Face.
Computer Graphics Lecture 17 Fasih ur Rehman. Last Class 3D Transforms Inverse Rotation.
Some Notes on 3-D Glenn G. Chappell U. of Alaska Fairbanks CS 381 Lecture Notes Friday, October 24, 2003.
Viewing. Classical Viewing Viewing requires three basic elements - One or more objects - A viewer with a projection surface - Projectors that go from.
Spring 2006 G5BAGR – Advanced Computer Graphics
Administrivia Back on track: canceling OpenGL lecture 2 Assignment 1

Visible Surface Detection
- Introduction - Graphics Pipeline
Week 2 - Friday CS361.
Hidden Surface Removal
CSCE 441: Computer Graphics Hidden Surface Removal (Cont.)
Rendering Pipeline Aaron Bloomfield CS 445: Introduction to Graphics
The Graphics Rendering Pipeline
CS451Real-time Rendering Pipeline
Real-time Computer Graphics Overview
CSCE 441: Computer Graphics Hidden Surface Removal
Class 17 front and back lighting convex sets, convex hull
Introduction to Computer Graphics with WebGL
Implementation II Ed Angel Professor Emeritus of Computer Science
Projections and Hidden Surface Removal
The Graphics Pipeline Lecture 5 Mon, Sep 3, 2007.
Lecture 13 Clipping & Scan Conversion
Computer Graphics Through OpenGL: From Theory to Experiments, Second Edition Chapter 9.
Chapter VII Rasterizer
Visibility (hidden surface removal)
CSCE 441: Computer Graphics Hidden Surface Removal (Cont.)
Introduction to Computer Graphics with WebGL
CSCE 441: Computer Graphics Hidden Surface Removal (Cont.)
Introduction to Computer Graphics with WebGL
Viewing/Projections I Week 3, Fri Jan 25
Clipping University of British Columbia CPSC 314 Computer Graphics
Implementation II Ed Angel Professor Emeritus of Computer Science
Class 18 front and back lighting convex sets, convex hull
Presentation transcript:

Inside-Outside & Culling Introduction to Computer Graphics CSE 470/598 Arizona State University Dianne Hansford

Rendering Polygons A polygon has two sides front & back front is outward normal side Can render front & back differently Great for cutaways Figure from Diepstraten et. al. “Interactive Cutaway Illustrations” http://www.vis.uni-stuttgart.de/ger/research/pub/pub2003/eg2003-diepstraten.pdf

Polygons: Front & Back Convention: front facing polygon vertices appear counterclockwise (ccw) on the screen 3 back facing 3 2 1 front facing 1 2 outward facing normals

Front Facing Polygon Eye coordinates v2 n v1 e3 Eye at origin Looking at geometry down –z axis 3 v2 e3 ¢ n >= 0  outward facing n v1 1 2 e3

Solids Closed geometry called a solid Reasonable solids* can be constructed from polygons of consistent orientation sphere, torus, ... Opaque closed surface: no back facing polygons visible Moebius strip/Klein bottle – not orientable Escher’s Moebius strip: http://worldofescher.com Klein bottle: http://alem3d.obidos.org/i/kbottle/kbc1.jpg * also called orientable manifold

Culling Culling is another form of clipping removing polygons from the pipeline speed up rendering Culling removes back facing polygons makes sense for solids example: back facing polygons of a sphere Happens in NDC coordinates

Culling of Solids cos(theta) = n . e_3

Culling for non-closed surfaces no culling culling used inappropriately

OpenGL & Culling glEnable(GL_CULL_FACE) glDisable(GL_CULL_FACE) glCullFace(GL_BACK) Also: GL_FRONT, GL_FRONT_AND_BACK glFrontFace(GL_CCW) (default) Also: GL_CW