Hidden-surface determination

In 3D computer graphics, hidden-surface determination (also known as shown-surface determination, hidden-surface removal (HSR), occlusion culling (OC) or visible-surface determination (VSD)) is the process of identifying what surfaces and parts of surfaces can be seen from a particular viewing angle. A hidden-surface determination algorithm is a solution to the visibility problem, which was one of the first major problems in the field of 3D computer graphics.[citation needed] The process of hidden-surface determination is sometimes called hiding, and such an algorithm is sometimes called a hider.[citation needed] When referring to line rendering it is known as hidden-line removal.[citation needed] Hidden-surface determination is necessary to render a scene correctly, so that one may not view features hidden behind the model itself, allowing only the naturally viewable portion of the graphic to be visible.

Background

Hidden-surface determination is a process by which surfaces that should not be visible to the user (for example, because they lie behind opaque objects such as walls) are prevented from being rendered. Despite advances in hardware capability, there is still a need for advanced rendering algorithms. The responsibility of a rendering engine is to allow for large world spaces, and as the world’s size approaches infinity, the engine should not slow down but remain at a constant speed. Optimizing this process relies on being able to ensure the deployment of as few resources as possible towards the rendering of surfaces that will not end up being displayed to the user.

There are many techniques for hidden-surface determination. They are fundamentally an exercise in sorting and usually vary in the order in which the sort is performed and how the problem is subdivided. Sorting large quantities of graphics primitives is usually done by divide and conquer.

Algorithms

Considering the rendering pipeline, the projection, the clipping, and the rasterization steps are handled differently by the following algorithms:

Z-buffering
During rasterization, the depth/Z value of each pixel (or sample in the case of anti-aliasing, but without loss of generality the term pixel is used) is checked against an existing depth value. If the current pixel is behind the pixel in the Z-buffer, the pixel is rejected, otherwise, it is shaded and its depth value replaces the one in the Z-buffer. Z-buffering supports dynamic scenes easily and is currently implemented efficiently in graphics hardware. This is the current standard. The cost of using Z-buffering is that it uses up to 4 bytes per pixel and that the rasterization algorithm needs to check each rasterized sample against the Z-buffer. The Z-buffer can also suffer from artifacts due to precision errors (also known as Z-fighting).
Coverage buffers (C-buffer) and surface buffer (S-buffer)
Faster than Z-buffers and commonly used in games in the Quake I era. Instead of storing the Z value per pixel, they store a list of already displayed segments per line of the screen. New polygons are then cut against already displayed segments that would hide them. An S-buffer can display unsorted polygons, while a C-buffer requires polygons to be displayed from the nearest to the furthest. Because the C-buffer technique does not require a pixel to be drawn more than once, the process is slightly faster. This was commonly used with binary space partitioning (BSP) trees, which would provide sorting for the polygons.
Sorted active edge list
Used in Quake 1, this was storing a list of the edges of already displayed polygons (see scanline rendering). Polygons are displayed from the nearest to the furthest. New polygons are clipped against already displayed polygons' edges, creating new polygons to display then storing the additional edges. It's much harder to implement than S/C/Z-buffers, but it scales much better with increases in resolution.
Painter's algorithm
Sorts polygons by their barycenter and draws them back to front. This produces few artifacts when applied to scenes with polygons of similar size forming smooth meshes and back-face culling turned on. The cost here is the sorting step and the fact that visual artifacts can occur. This algorithm is broken by design for general scenes, as it cannot handle polygons in various common configurations, such as surfaces that intersect each other.
Binary space partitioning (BSP)
Divides a scene along planes corresponding to polygon boundaries. The subdivision is constructed in such a way as to provide an unambiguous depth ordering from any point in the scene when the BSP tree is traversed. The disadvantage here is that the BSP tree is created with an expensive pre-process. This means that it is less suitable for scenes consisting of dynamic geometry. The advantage is that the data is pre-sorted and error-free, ready for the previously mentioned algorithms. Note that the BSP is not a solution to HSR, only an aid.
Ray tracing
Attempts to model the path of light rays to a viewpoint by tracing rays from the viewpoint into the scene. Although not a hidden-surface removal algorithm as such, it implicitly solves the hidden-surface removal problem by finding the nearest surface along each view-ray. Effectively this is equivalent to sorting all the geometry on a per-pixel basis.
The Warnock algorithm
Divides the screen into smaller areas and sorts triangles within these. If there is ambiguity (i.e., polygons overlap in-depth extent within these areas), then further subdivision occurs. At the limit, the subdivision may occur down to the pixel level.

Culling and visible-surface determination

A related area to visible-surface determination (VSD) is culling, which usually happens before VSD in a rendering pipeline. Primitives or batches of primitives can be rejected in their entirety, which usually reduces the load on a well-designed system.

The advantage of culling early on in the pipeline is that entire objects that are invisible do not have to be fetched, transformed, rasterized, or shaded. Types of culling algorithms include:

Viewing-frustum culling

The viewing frustum is a geometric representation of the volume visible to the virtual camera. Naturally, objects outside this volume will not be visible in the final image, so they are discarded. Often, objects lie on the boundary of the viewing frustum. These objects are cut into pieces along this boundary in a process called clipping, and the pieces that lie outside the frustum are discarded as there is no place to draw them.

Back-face culling

With 3D objects, some of the object's surface is facing the camera, and the rest is facing away from the camera, i.e. is on the backside of the object, hindered by the front side. If the object is completely opaque, those surfaces never need to be drawn. They are determined by the vertex winding order: if the triangle drawn has its vertices in clockwise order on the projection plane when facing the camera, they switch into counter-clockwise order when the surface turns away from the camera.

Incidentally, this also makes the objects completely transparent when the viewpoint camera is located inside them, because then all the surfaces of the object are facing away from the camera and are culled by the renderer. To prevent this the object must be set as double-sided (i.e. no back-face culling is done) or have separate inside surfaces.

Contribution culling

Often, objects are so far away that they do not contribute significantly to the final image. These objects are thrown away if their screen projection is too small. See Clipping plane.

Occlusion culling

Objects that are entirely behind other opaque objects may be culled. This is a very popular mechanism to speed up the rendering of large scenes that have a moderate to high depth complexity. There are several types of occlusion culling approaches:

  • Potentially visible set (PVS) rendering divides a scene into regions and pre-computes visibility for them. These visibility sets are then indexed at run-time to obtain high-quality visibility sets (accounting for complex occluder interactions) quickly.
  • Portal rendering divides a scene into cells/sectors (rooms) and portals (doors), and computes which sectors are visible by clipping them against portals.

Hansong Zhang's dissertation "Effective Occlusion Culling for the Interactive Display of Arbitrary Models"[1] describes an occlusion culling approach.

Divide and conquer

A popular theme in the VSD literature is divide and conquer. The Warnock algorithm pioneered dividing the screen. Beam tracing is a ray-tracing approach that divides the visible volumes into beams. Various screen-space subdivision approaches reducing the number of primitives considered per region, e.g. tiling, or screen-space BSP clipping. Tiling may be used as a preprocess to other techniques. Z-buffer hardware may typically include a coarse "hi-Z", against which primitives can be rejected early without rasterization, this is a form of occlusion culling.

Bounding volume hierarchies (BVHs) are often used to subdivide the scene's space (examples are the BSP tree, the octree and the kd-tree). This allows visibility determination to be performed hierarchically: effectively, if a node in the tree is considered to be invisible, then all of its child nodes are also invisible, and no further processing is necessary (they can all be rejected by the renderer). If a node is considered visible, then each of its children needs to be evaluated. This traversal is effectively a tree walk, where invisibility/occlusion or reaching a leaf node determines whether to stop or whether to recurse respectively.

See also

Sources

  1. ^ "Occlusion Culling with Hierarchical Occlusion Maps". www.cs.unc.edu.

Read other articles:

Artikel ini sebatang kara, artinya tidak ada artikel lain yang memiliki pranala balik ke halaman ini.Bantulah menambah pranala ke artikel ini dari artikel yang berhubungan atau coba peralatan pencari pranala.Tag ini diberikan pada Februari 2023. SMKN 1 Kota JambiInformasiDidirikan1958[1]JenisNegeriAkreditasiANomor Statistik Sekolah241106001004Nomor Pokok Sekolah Nasional10505463Kepala SekolahIr.Sepriadi Erman, M. Si NIP.19641231 199404 1062Jumlah kelaskelasJurusan atau pemin...

 

 

Dorcadion songaricum Klasifikasi ilmiah Kerajaan: Animalia Filum: Arthropoda Kelas: Insecta Ordo: Coleoptera Famili: Cerambycidae Subfamili: Lamiinae Tribus: Dorcadiini Genus: Dorcadion Spesies: Dorcadion songaricum Dorcadion songaricum adalah spesies kumbang tanduk panjang yang tergolong famili Cerambycidae. Spesies ini juga merupakan bagian dari genus Dorcadion, ordo Coleoptera, kelas Insecta, filum Arthropoda, dan kingdom Animalia. Larva kumbang ini biasanya mengebor ke dalam kayu dan dap...

 

 

Stock exchange in Zürich, Switzerland SIX Swiss ExchangeTypeStock ExchangeLocationZürich, SwitzerlandCoordinates47°22′28″N 08°32′28″E / 47.37444°N 8.54111°E / 47.37444; 8.54111FoundedGeneva: 1850 (1850)Basel: 1866Zürich: 1873Current form: 1993OwnerSIX GroupKey peopleThomas Zeeb(Head Swiss Exchange)Jos Dijsselhof (CEO SIX Group)Thomas Wellauer(Chairman SIX Group)CurrencySwiss francMarket capCHF 1.6 trillion (2018)[1]IndicesSMI, SPI, SLI,...

Election for Governor of Maine 1828 Maine gubernatorial election ← 1827 September 8, 1828 1829 →   Nominee Enoch Lincoln Party Democratic-Republican Popular vote 25,745 Percentage 91.59% Governor before election Enoch Lincoln Democratic-Republican Elected Governor Enoch Lincoln Democratic-Republican The 1828 Maine gubernatorial election took place on September 8, 1828. Incumbent Democratic-Republican Governor Enoch Lincoln won re-election to a third term. Resul...

 

 

Coordinate: 52°45′57″N 13°15′51″E / 52.765833°N 13.264167°E52.765833; 13.264167 Questa voce o sezione sull'argomento seconda guerra mondiale non cita le fonti necessarie o quelle presenti sono insufficienti. Commento: Mentre alcune sezioni della voce sono fontate, ce ne sono almeno sei che non hanno una pur minima fonte Puoi migliorare questa voce aggiungendo citazioni da fonti attendibili secondo le linee guida sull'uso delle fonti. Segui i suggerimenti del p...

 

 

العلاقات الأسترالية السريلانكية أستراليا سريلانكا   أستراليا   سريلانكا تعديل مصدري - تعديل   العلاقات الأسترالية السريلانكية هي العلاقات الثنائية التي تجمع بين أستراليا وسريلانكا.[1][2][3][4][5] مقارنة بين البلدين هذه مقارنة عامة ومرجعية لل�...

Upacara Penghargaan Academy Awards ke-81 Penghargaan film adalah penghargaan sinematik yang dapat diberikan dalam beberapa kategori. Berbeda dengan festival film, penghargaan film tidak mempertunjukkan film yang bersaing di hadapan penonton umum. Biasanya, penghargaan film diberikan melalui sistem pemungutan suara tertutup dari kalangan ahli, dan jarang sekali melalui hasil diskusi yang melibatkan para juri. Tiga penghargaan film paling bergengsi Academy Awards Academy Awards, popularly known...

 

 

Panicum hirticaule Klasifikasi ilmiah Kerajaan: Plantae (tanpa takson): Tracheophyta (tanpa takson): Angiospermae (tanpa takson): Monokotil (tanpa takson): Commelinids Ordo: Poales Famili: Poaceae Genus: Panicum Spesies: Panicum hirticaule Nama binomial Panicum hirticauleJ.Presl Panicum hirticaule adalah spesies tumbuhan yang tergolong ke dalam famili Poaceae. Spesies ini juga merupakan bagian dari ordo Poales. Spesies Panicum hirticaule sendiri merupakan bagian dari genus Panicum.[1]...

 

 

Italian Cardinal of the Catholic Church His EminenceAngelo BagnascoCardinalArchbishop Emeritus of GenoaBagnasco in 2010ChurchRoman Catholic ChurchArchdioceseGenoaSeeGenoaAppointed29 August 2006Installed24 September 2006Term ended8 May 2020PredecessorTarcisio Bertone, S.D.B.SuccessorMarco Tasca, O.F.M. Conv.Other post(s)Cardinal-Priest of Gran Madre di Dio (2007-)OrdersOrdination29 June 1966by Giuseppe SiriConsecration7 February 1998by Dionigi TettamanziCreated cardinal24 November 20...

Questa voce sull'argomento Unione europea è solo un abbozzo. Contribuisci a migliorarla secondo le convenzioni di Wikipedia. Segui i suggerimenti del progetto di riferimento. (EN) «We must build a kind of United States of Europe. In this way only, will hundreds of millions of toilers be able to regain the simple joys and hopes which make life worth living.» (IT) «Dobbiamo creare una sorta di Stati Uniti d'Europa. Solo in questo modo centinaia di milioni di esseri umani avranno la po...

 

 

Pari air tawar raksasa Status konservasi Terancam  (IUCN 3.1)[1] Klasifikasi ilmiah Domain: Eukaryota Kerajaan: Animalia Filum: Chordata Kelas: Chondrichthyes Superordo: Batoidea Ordo: Myliobatiformes Subordo: Myliobatoidei Superfamili: Dasyatoidea Famili: Dasyatidae Subfamili: Urogymninae Genus: Urogymnus Spesies: Urogymnus polylepisBleeker, 1852 Kisaran geografis (tidak termasuk populasi yang tidak dipastikan masih ada dan/atau sejenis)[1] Sinonim Himantura chaophraya ...

 

 

Men's 100 metre individual medley at the 2016 FINA World Swimming Championships (25 m)VenueWFCU CentreDates8 December (heats and semifinals)9 December (final)Competitors84 from 59 nationsWinning time51.84Medalists  Michael Andrew   United States Daiya Seto   Japan Shinri Shioura   Japan← 20142018 → 2016 FINA World Swimming ChampionshipsFreestyle50 mmenwomen100 mmenwomen200 mmenwomen400 mmenwomen800 mw...

New District in Guangdong, People's Republic of ChinaDapeng 大鹏新区New DistrictDapeng New AreaDapeng FortressDapeng (highlighted in brown) in ShenzhenCountryPeople's Republic of ChinaProvinceGuangdongSub-provincial cityShenzhenArea • Total294 km2 (114 sq mi)Population (2020[1]) • Total156,236 • Density530/km2 (1,400/sq mi)Time zoneUTC+8 (China Standard)Websitewww.dpxq.gov.cn Dapeng New AreaSimplified Chinese大鹏新区...

 

 

يفتقر محتوى هذه المقالة إلى الاستشهاد بمصادر. فضلاً، ساهم في تطوير هذه المقالة من خلال إضافة مصادر موثوق بها. أي معلومات غير موثقة يمكن التشكيك بها وإزالتها. (يناير 2022) هذه المقالة يتيمة إذ تصل إليها مقالات أخرى قليلة جدًا. فضلًا، ساعد بإضافة وصلة إليها في مقالات متعلقة بها. ...

 

 

American boxer (1943–2013) This article is about the boxer. For his son and American football coach and former player, see Ken Norton Jr. For other people, see Ken Norton (disambiguation). This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Ken Norton – news · newspapers · books · scholar · JSTOR (January 2022...

نينيانغ الاسم الرسمي 南洋 تعديل مصدري - تعديل   نينيانغ أو نين يانغ (بالصينية: 南洋، أي: «المحيط الجنوبي») هو مصطلح صيني يُطلق على المنطقة الجغرافية الأكثر دفئًا وخصوبةً الواقعة على طول المناطق الساحلية الجنوبية [الإنجليزية] للصين وخارجها، والمعروفة باسم «بحر الجنوب [الإن�...

 

 

National Forest in the United States Arapaho National ForestLocationColorado, United StatesNearest cityFort Collins, COCoordinates39°35′19″N 105°38′34″W / 39.588611°N 105.642778°W / 39.588611; -105.642778Area723,744 acres (2,928.89 km2)EstablishedJuly 1, 1908Governing bodyU.S. Forest ServiceWebsiteArapaho & Roosevelt National Forests and Pawnee National Grassland Map of Colorado. The area of the Arapaho National Forest area in red. Arapah...

 

 

Type of electric railway which runs within and between cities or towns Interurbans redirects here. For the publishing company once known by that name, see Interurban Press. This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: Interurban – news · newspapers · books · scholar · JSTOR (July 2015) (Learn how and when...

Il cuore di Thomasトーマの心臓(Tōma no shinzō)Copertina del volume dell'edizione italiana, raffigurante il protagonista Thomas Werner MangaAutoreMoto Hagio EditoreShogakukan RivistaShōjo Comic Targetshōjo 1ª edizione1974 – 1975 Tankōbon3 (completa) Editore it.Edizioni BD - J-Pop Collana 1ª ed. it.Moto Hagio Collection 1ª edizione it.16 ottobre 2019 Volumi it.unico Testi it.Valentina Vignola MangaThe VisitorAutoreM...

 

 

NGC 6504   الكوكبة الجاثي  رمز الفهرس 2MASX J17560570+3312300 (Two Micron All-Sky Survey, Extended source catalogue)MCG+06-39-027 (فهرس المجرات الموروفولوجي)NGC 6504 (الفهرس العام الجديد)UGC 11053 (فهرس أوبسالا العام)UZC J175605.7+331231 (فهرس زفيكي المحدّث)Z 1754.2+3312 (فهرس المجرات وعناقيد المجرات)Z 199-29 (فهرس المجرات وعناقيد المجرات)2...