SlideShare a Scribd company logo
1 of 3
Download to read offline
Visible Surface Determination

       CS418 Computer Graphics
             John C. Hart
Painter’s Algorithm
• Display polygons in
  back-to-front order
• Sort polygons by z-value
                             -z
   – Which vertex?
   – O(n log n)
• Problems…
Quadtree Algorithm
• Sort polygons
• Subdivide screen until each region
  contains one or zero edges
• Invented by John Warnock in 1969

More Related Content

Viewers also liked

God Exists
God ExistsGod Exists
God Exists
antso
 
Slideshow Erena Willis
Slideshow Erena WillisSlideshow Erena Willis
Slideshow Erena Willis
Erena317
 
Twitter Micro Blogging
Twitter  Micro  BloggingTwitter  Micro  Blogging
Twitter Micro Blogging
mmti2008
 
Ebm talk-general-mar99-ppt95
Ebm talk-general-mar99-ppt95Ebm talk-general-mar99-ppt95
Ebm talk-general-mar99-ppt95
rubenroa
 
Hnp berritu behar. Zuzendarientzako aurkezpena
Hnp berritu behar. Zuzendarientzako aurkezpenaHnp berritu behar. Zuzendarientzako aurkezpena
Hnp berritu behar. Zuzendarientzako aurkezpena
hnoiratzualdea
 

Viewers also liked (20)

150311 TransLab Kampus
150311 TransLab  Kampus150311 TransLab  Kampus
150311 TransLab Kampus
 
Strijker, A. (2001). Using Metadata For Reusing Material And Providing User S...
Strijker, A. (2001). Using Metadata For Reusing Material And Providing User S...Strijker, A. (2001). Using Metadata For Reusing Material And Providing User S...
Strijker, A. (2001). Using Metadata For Reusing Material And Providing User S...
 
God Exists
God ExistsGod Exists
God Exists
 
Overzicht Stilteplatform
Overzicht StilteplatformOverzicht Stilteplatform
Overzicht Stilteplatform
 
Strijker, A., Collis, B. (2005, March 4). Strategies For Reuse Of Learning Ob...
Strijker, A., Collis, B. (2005, March 4). Strategies For Reuse Of Learning Ob...Strijker, A., Collis, B. (2005, March 4). Strategies For Reuse Of Learning Ob...
Strijker, A., Collis, B. (2005, March 4). Strategies For Reuse Of Learning Ob...
 
De uitdagingen van het lokaal cultuurbeleid in een veranderende samenleving
De uitdagingen van het lokaal cultuurbeleid in een veranderende samenlevingDe uitdagingen van het lokaal cultuurbeleid in een veranderende samenleving
De uitdagingen van het lokaal cultuurbeleid in een veranderende samenleving
 
HNPa Berritzeko Prozesua
HNPa Berritzeko ProzesuaHNPa Berritzeko Prozesua
HNPa Berritzeko Prozesua
 
Gifvrij tuinieren
Gifvrij tuinierenGifvrij tuinieren
Gifvrij tuinieren
 
160222 Stilteplatform Oud-Turnhout
160222  Stilteplatform Oud-Turnhout160222  Stilteplatform Oud-Turnhout
160222 Stilteplatform Oud-Turnhout
 
DMacPaag
DMacPaagDMacPaag
DMacPaag
 
What is a sales process?
What is a sales process?What is a sales process?
What is a sales process?
 
Slideshow Erena Willis
Slideshow Erena WillisSlideshow Erena Willis
Slideshow Erena Willis
 
Twitter Micro Blogging
Twitter  Micro  BloggingTwitter  Micro  Blogging
Twitter Micro Blogging
 
Strijker, A. (2008 05 08). Workshop Inrichten Van Surfgroepen Voor Onderwijs
Strijker, A. (2008 05 08). Workshop   Inrichten Van Surfgroepen Voor OnderwijsStrijker, A. (2008 05 08). Workshop   Inrichten Van Surfgroepen Voor Onderwijs
Strijker, A. (2008 05 08). Workshop Inrichten Van Surfgroepen Voor Onderwijs
 
Ebm talk-general-mar99-ppt95
Ebm talk-general-mar99-ppt95Ebm talk-general-mar99-ppt95
Ebm talk-general-mar99-ppt95
 
Guia autoevaluacion
Guia autoevaluacionGuia autoevaluacion
Guia autoevaluacion
 
Hnp berritu behar. Zuzendarientzako aurkezpena
Hnp berritu behar. Zuzendarientzako aurkezpenaHnp berritu behar. Zuzendarientzako aurkezpena
Hnp berritu behar. Zuzendarientzako aurkezpena
 
Learning trajectories and repositories in a linked data digital curriculum
Learning trajectories and repositories in a linked data digital curriculumLearning trajectories and repositories in a linked data digital curriculum
Learning trajectories and repositories in a linked data digital curriculum
 
Strijker, A. (2006 06 15). Ubiquitous Learning
Strijker, A. (2006 06 15). Ubiquitous LearningStrijker, A. (2006 06 15). Ubiquitous Learning
Strijker, A. (2006 06 15). Ubiquitous Learning
 
Strijker, A. (2004 11 27). Lcmss
Strijker, A. (2004 11 27). LcmssStrijker, A. (2004 11 27). Lcmss
Strijker, A. (2004 11 27). Lcmss
 

More from antso

More from antso (20)

Jordania es Palestina
Jordania es PalestinaJordania es Palestina
Jordania es Palestina
 
La gran tribulación
La gran tribulaciónLa gran tribulación
La gran tribulación
 
El juez del universo
El juez del universoEl juez del universo
El juez del universo
 
Carta a los hebreos
Carta a los hebreosCarta a los hebreos
Carta a los hebreos
 
El Segundo Templo de Jerusalén
El Segundo Templo de JerusalénEl Segundo Templo de Jerusalén
El Segundo Templo de Jerusalén
 
Los Ángeles Caídos. los Gigantes, Espíritus Inmundos y las causas del diluvio
Los Ángeles Caídos. los Gigantes, Espíritus Inmundos y las causas del diluvioLos Ángeles Caídos. los Gigantes, Espíritus Inmundos y las causas del diluvio
Los Ángeles Caídos. los Gigantes, Espíritus Inmundos y las causas del diluvio
 
La señal de elojim
La señal de elojimLa señal de elojim
La señal de elojim
 
La Palabra de Elohim
La Palabra de ElohimLa Palabra de Elohim
La Palabra de Elohim
 
El Mashíaj-y-el-Evangelio-en-la-Creación
El Mashíaj-y-el-Evangelio-en-la-CreaciónEl Mashíaj-y-el-Evangelio-en-la-Creación
El Mashíaj-y-el-Evangelio-en-la-Creación
 
Aleph tav-study-book-word-format
Aleph tav-study-book-word-formatAleph tav-study-book-word-format
Aleph tav-study-book-word-format
 
Misterios y verdades
Misterios y verdadesMisterios y verdades
Misterios y verdades
 
En el principio la palabra ya existía
En el principio la palabra ya existíaEn el principio la palabra ya existía
En el principio la palabra ya existía
 
La Festividad Judia de Januka
La Festividad  Judia de JanukaLa Festividad  Judia de Januka
La Festividad Judia de Januka
 
Januca y guematria
Januca y guematriaJanuca y guematria
Januca y guematria
 
MEGUILÁT ANTIOCOS
MEGUILÁT ANTIOCOS MEGUILÁT ANTIOCOS
MEGUILÁT ANTIOCOS
 
El imperio Otomano
El imperio OtomanoEl imperio Otomano
El imperio Otomano
 
El islam dominará el mundo
El islam dominará el mundoEl islam dominará el mundo
El islam dominará el mundo
 
Yeshúa es Adonai
Yeshúa es AdonaiYeshúa es Adonai
Yeshúa es Adonai
 
Isaías 53
Isaías 53Isaías 53
Isaías 53
 
El Islam
El IslamEl Islam
El Islam
 

Recently uploaded

TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc
 
CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)
Wonjun Hwang
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
FIDO Alliance
 

Recently uploaded (20)

How to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cfHow to Check CNIC Information Online with Pakdata cf
How to Check CNIC Information Online with Pakdata cf
 
ERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage IntacctERP Contender Series: Acumatica vs. Sage Intacct
ERP Contender Series: Acumatica vs. Sage Intacct
 
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
TrustArc Webinar - Unified Trust Center for Privacy, Security, Compliance, an...
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 
Cyber Insurance - RalphGilot - Embry-Riddle Aeronautical University.pptx
Cyber Insurance - RalphGilot - Embry-Riddle Aeronautical University.pptxCyber Insurance - RalphGilot - Embry-Riddle Aeronautical University.pptx
Cyber Insurance - RalphGilot - Embry-Riddle Aeronautical University.pptx
 
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
Human Expert Website Manual WCAG 2.0 2.1 2.2 Audit - Digital Accessibility Au...
 
CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
 
ADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptxADP Passwordless Journey Case Study.pptx
ADP Passwordless Journey Case Study.pptx
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Design and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data ScienceDesign and Development of a Provenance Capture Platform for Data Science
Design and Development of a Provenance Capture Platform for Data Science
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdfFrisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
Frisco Automating Purchase Orders with MuleSoft IDP- May 10th, 2024.pptx.pdf
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 

Juan 1.1

  • 1. Visible Surface Determination CS418 Computer Graphics John C. Hart
  • 2. Painter’s Algorithm • Display polygons in back-to-front order • Sort polygons by z-value -z – Which vertex? – O(n log n) • Problems…
  • 3. Quadtree Algorithm • Sort polygons • Subdivide screen until each region contains one or zero edges • Invented by John Warnock in 1969
  • 4. Quadtree Algorithm • Sort polygons • Subdivide screen until each region contains one or zero edges • Invented by John Warnock in 1969
  • 5. Quadtree Algorithm • Sort polygons • Subdivide screen until each region contains one or zero edges • Invented by John Warnock in 1969
  • 6. Quadtree Algorithm • Sort polygons • Subdivide screen until each region contains one or zero edges • Invented by John Warnock in 1969
  • 7. Quadtree Algorithm • Sort polygons • Subdivide screen until each region contains one or zero edges • Invented by John Warnock in 1969
  • 8. Z-Buffer -far -far -far -far Key Observation: Each pixel displays -far -far color of only one triangle, ignores -far everything behind it -far -far • Don’t need to sort triangles, just find -far -far for each pixel the closest triangle -far • Z-buffer: one fixed or floating point zbuffer framebuffer value per pixel • Algorithm: For each rasterized fragment (x,y) If z > zbuffer(x,y) then framebuffer(x,y) = fragment color zbuffer(x,y) = z
  • 9. Z-Buffer -far -.1 -.2 -.3 Key Observation: Each pixel displays -.4 -.5 color of only one triangle, ignores -.6 everything behind it -.7 -.8 • Don’t need to sort triangles, just find -far -far for each pixel the closest triangle -far • Z-buffer: one fixed or floating point zbuffer framebuffer value per pixel • Algorithm: For each rasterized fragment (x,y) If z > zbuffer(x,y) then framebuffer(x,y) = fragment color zbuffer(x,y) = z
  • 10. Z-Buffer -far -.1 -.2 -.3 Key Observation: Each pixel displays -.4 -.3 color of only one triangle, ignores -.1 everything behind it -.7 -.8 • Don’t need to sort triangles, just find -far -far for each pixel the closest triangle -far • Z-buffer: one fixed or floating point zbuffer framebuffer value per pixel • Algorithm: For each rasterized fragment (x,y) If z > zbuffer(x,y) then framebuffer(x,y) = fragment color zbuffer(x,y) = z
  • 11. Z-Buffer -far -.1 -.2 -.3 • Get fragment z-values by interpolating -.4 -.3 z-values at vertices during rasterization -.1 -.7 -.8 • Perspective projection destroys -far -far z-values, setting them all to –d -far zbuffer framebuffer • Need a perspective distortion that preserves at least the ordering of z-values
  • 12. Normalized View Volume glFrustum(left,right,bottom,top,near,far) y y (-1,1,1) 1 z z (0,0,-far) y x x -1 -1 x 1 z 1 -1 Screen Clip Viewing World Model W2V Persp View Model Coords Coords Coords Coords Coords
  • 13. Perspective Projection screen y yview yclip -z zview d xview yclip zview / d xview 1 xview yview d zview yview 1 yview yview zview / d zview yview 1 zview yclip zview / d d zview / d 1/ d 0 1 1
  • 14. Perspective Distortion screen y yview yclip -z zview 1 xview zview xview 1 xview yview yview yview 1 yview yclip zview zview zview zview zview 10 1 zview 1
  • 15. Distorted z-Values z1 z2 -z if z1 > z2 then - – /z1 > - – /z2 1/-z curve - – /z1 - – /z2 - - – /z xview zview xview 1 xview yview yview yview 1 yview yclip zview zview zview zview zview 10 1 zview 1
  • 16. Normalized Perspective Distortion y y (-1,1,1) 1 z z (0,0,-far) y x x -1 -1 x 1 z 1 -1 2 near right left right left right left 2 near top bottom top bottom top bottom far near 2 far near far near far near 1 0
  • 17. Hierarchical Z-Buffer -.2 -.3 -.3 • Invented by Ned Green in 1994 -.5 -.4 -.5 -.5 • Creates a MIP-map of the z-buffer -far -.6 -.7 -.7 – z-value equal to farthest z-value of -far -.8 -far -far its four children framebuffer hierarchical zbuffer • Before rasterizing a triangle… – Check z-value of its nearest vertex against z-value of the smallest quadtree cell containing the triangle – If z-test fails, then the entire triangle is hidden and need not be rasterized • Works best when displaying front-to-back