CSC418 Computer Graphics n Polygon normals n Back Faces n Visibility Algorithms.

Slides:



Advertisements
Similar presentations
Visible-Surface Detection(identification)
Advertisements

Computer Graphics Inf4/MSc 28/10/08Lecture 91 Computer Graphics Lecture 9 Visible Surface Determination Taku Komura.
CS 352: Computer Graphics Chapter 7: The Rendering Pipeline.
Graphics Pipeline.
Computer Graphics Inf4/MSc Computer Graphics Lecture 9 Visible Surface Determination.
3D Graphics Rendering and Terrain Modeling
David Luebke5/11/2015 CS 551 / 645: Introductory Computer Graphics David Luebke
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:
CS 551 / 645: Introductory Computer Graphics Visible Surface Determination.
CAP4730: Computational Structures in Computer Graphics Visible Surface Determination.
CECS461 Computer Graphics II University of Missouri at Columbia Hidden Surface Removal.
Visibility in Computer Graphics Toni Sellarès Unversitat de Girona
Computer Graphics Visible Surface Determination. Goal of Visible Surface Determination To draw only the surfaces (triangles) that are visible, given a.
Graphics Graphics Korea University cgvr.korea.ac.kr 1 Hidden Surface Removal 고려대학교 컴퓨터 그래픽스 연구실.
Part I: Basics of Computer Graphics
CS 445 / 645: Introductory Computer Graphics
UBI 516 Advanced Computer Graphics
Chapter 6: Vertices to Fragments Part 2 E. Angel and D. Shreiner: Interactive Computer Graphics 6E © Addison-Wesley Mohan Sridharan Based on Slides.
CS 4731: Computer Graphics Lecture 18: Hidden Surface Removal Emmanuel Agu.
CGDD 4003 THE MASSIVE FIELD OF COMPUTER GRAPHICS.
Hidden Surface Elimination Wen-Chieh (Steve) Lin Institute of Multimedia Engineering I-Chen Lin’ CG Slides, Rich Riesenfeld’s CG Slides, Shirley, Fundamentals.
1 CSCE 441: Computer Graphics Hidden Surface Removal (Cont.) Jinxiang Chai.
Hidden Surface Removal April 30, Hidden Surface Removal Object-space algorithms: –Back-face culling (removal) –Depth sorting and Painter’s algorithm.
University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2005 Tamara Munzner Visibility II Week 7,
Visible-surface Detection Computer Graphics Seminar MUM
Vertices and Fragments III Mohan Sridharan Based on slides created by Edward Angel 1 CS4395: Computer Graphics.
Spatial Data Structure: Quadtree, Octree,and BSP tree Mengxia Zhu Fall 2007.
Part I: Basics of Computer Graphics Rendering Polygonal Objects (Read Chapter 1 of Advanced Animation and Rendering Techniques) Chapter
University of British Columbia CPSC 414 Computer Graphics © Tamara Munzner 1 Visibility: Z Buffering Week 10, Mon 3 Nov 2003.
CSE 872 Dr. Charles B. Owen Advanced Computer Graphics1 Other Rendering Techniques Types of rendering – Wireframe techniques – Scan-line conversion – Reyes.
Hidden Surface Removal
Technology and Historical Overview. Introduction to 3d Computer Graphics  3D computer graphics is the science, study, and method of projecting a mathematical.
CS 325 Introduction to Computer Graphics 03 / 08 / 2010 Instructor: Michael Eckmann.
CSC418 Computer Graphics n BSP tree n Z-Buffer n A-buffer n Scanline.
Week 2 - Friday.  What did we talk about last time?  Graphics rendering pipeline  Geometry Stage.
Visible-Surface Detection Jehee Lee Seoul National University.
Hidden Surface Removal 1.  Suppose that we have the polyhedron which has 3 totally visible surfaces, 4 totally invisible/hidden surfaces, and 1 partially.
1Computer Graphics Implementation II Lecture 16 John Shearer Culture Lab – space 2
Implementation II Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico.
Binary Space Partitioning Trees Ray Casting Depth Buffering
Hidden Surface Removal
Implementation II.
Computer Graphics Zhen Jiang West Chester University.
David Luebke 1 12/8/2015 Visibility CS 445/645 Introduction to Computer Graphics David Luebke, Spring 2003.
CS123 | INTRODUCTION TO COMPUTER GRAPHICS Andries van Dam © Visible Surface Determination (VSD) To render or not to render, that is the question… 1 of.
College of Computer and Information Science, Northeastern UniversityJanuary 6, CS4300 Computer Graphics Prof. Harriet Fell Fall 2011 Lecture 22 –
Computer Graphics I, Fall 2010 Implementation II.
1 CSCE 441: Computer Graphics Hidden Surface Removal Jinxiang Chai.
Computer Graphics Inf4/MSc 1 Computer Graphics Lecture 5 Hidden Surface Removal and Rasterization Taku Komura.
Visible surface determination. Problem outline Given a set of 3D objects and a viewing specification, we wish to determine which lines or surfaces are.
CS 325 Introduction to Computer Graphics 03 / 10 / 2010 Instructor: Michael Eckmann.
1 Computer Graphics Week11 : Hidden Surface Removal.
RENDERING : Global Illumination
Midterm Review. Overall No OpenGL programming questions, but programming pipeline and concepts of important OpenGL functions are required. – Parameter.
Hidden Surface Removal. 2 Goal: Determine which surfaces are visible and which are not. Z-Buffer is just one of many hidden surface removal algorithms.
Lecture 30: Visible Surface Detection
Visible surface determination
Visible Surface Detection
Week 2 - Friday CS361.
Hidden Surface Removal
CSC418 Computer Graphics Back Faces Visibility Algorithms.
CSCE 441: Computer Graphics Hidden Surface Removal
3D Rendering Pipeline Hidden Surface Removal 3D Primitives
Visibility: Z Buffering Week 10, Mon 3 Nov 2003
Visibility (hidden surface removal)
Hidden Surface Removal
Lecture 31: Visible Surface Detection
Presentation transcript:

CSC418 Computer Graphics n Polygon normals n Back Faces n Visibility Algorithms

Polygon Normal n Triangle normal calculation n Polygon normal calculation n Polymeshes (vertex normals)

Polygon Normal n Triangle normal calculation N=(P2-P1)X(P3-P2) P2 P3 P1

Polygon Normal n Polygon normal calculation N=(P2-P1)X(P3-P2) P2 P3 P1 P4 P5 Pn

Polygon Normal n Polygon normal calculation N=(P2-P1)X(P3-P2) Problems n Sliver triangles n Non-planar polygons P2 P3 P1 P4 P5 Pn

Polygon Normal n Polygon normal calculation Nx =  yj – yi)(zj + zi) Ny =  zj – zi)(xj + xi) Nz =  xj – xi)(yj + yi) j= (i+1) mod n P2 P3 P1 P4 P5 Pn

Polymesh Normal n Face normals

Polymesh Normal n Vertex normals

Polymesh Normal n Vertex normals average the face normals

Bilinear Interpolation P uv = (1-u)(1-v)P0 + ( u )(1-v)P1 + ( u )( v )P2 + (1-u)( v )P3 P0 P1 P2 P3 u v P uv

Bilinear Interpolation P uv = (1-u)(1-v)P0 + ( u )(1-v)P1 + ( u )( v )P2 + (1-u)( v )P3 P0 P1 P2 P3 u v P uv Gourard shading (color interpolation)

Visibility Problem n What is NOT visible?

Visibility Problem n What is NOT visible? primitives outside of the field of view back-facing primitives primitives occluded by other objects closer to the camera

Backface culling

V N E

n N.V > 0 is a back face?

Backface culling n N.(P-E) >0 V N E P

Backface culling Where in the graphics pipeline can we do backface culling? canonical projection

Occluded faces Does backface culling always determine visibility completely for a single object?

Occluded faces n In typical scenes some polygons will overlap, we must determine which portion of each polygon is visible to eye!

Painters Algorithm n Sort primitives in Z. n Draw primitives back to front (CBA). A B C

Painters Algorithm n Problems –Large faces –Intersecting faces –Cycles

Visibility Problem n Image space algorithms –Operate in display terms pixels, scanlines –Visibility resolved to display resolution –Examples: Z-buffer, ray-tracing –O(n*resolution) n Object Space algorithms –Analytically compute visible fragments –Examples: painters algorithm, BSP –O(n 2 )

CSC418 Computer Graphics n Next Lecture –BSP trees –Depth sorting –Z-buffer A-buffer