Yksityiskohtaisuustaso

Yksityiskohtaisuustaso (engl. level of detail) tarkoittaa tietokonegrafiikassa kappaleen geometriasta vaihtuvia yksityiskohtaisuuksia, joista valitaan sopiva näyttövaatimuksien mukaisesti. Geometriasta on erillisiä polygonimalleja (matalan ja korkean yksityiskohtaisuuden mallit), joiden välillä siirtymiset pyritään piilottamaan. Parametreilla voidaan tehdä jatkuvasti muuttuvia siirtymiä. Koetun yksityiskohtien vähenemisen vaikutusta voidaan vähentää teksturointimenetelmillä.[1]

Etäältä katsotun kappaleen tekstuuri on myös sovitettava kappaleeseen, jolloin voidaan käyttää esisuodatettuja tekstuureja eri tarkkuuksilla. Näistä käytetään nimitystä mipmap.[2]

Mallien yksityiskohtia voidaan vähentää eri tavoilla, joita ovat reunojen yhdistäminen, verteksien poistaminen, lähekkäisten polygonien yhdistäminen ja niin edelleen. Virheiden ilmeneminen on ongelmakohta, jota pyritään vähentämään eri menetelmillä.[3] Grafiikkaprosessorien ohjelmoitavan tesselaation avulla dynaamiset yksityiskohtaisuustasot ovat tulleet suositummaksi, mutta ongelma ei ole täysin ratkennut vaan esimerkiksi kaukaiset kappaleet voivat tuottaa tarpeettoman paljon geometriatietoa.[4][5]

Geometrian sijaan videopelit käyttävät esimerkiksi ruoholle toisinaan billboarding-tekniikkaa ("näyttötaulu"), jossa yksinkertaisen kappaleen etupuoli on aina kohti kameraa, jolloin taustapuolta ei tarvitse renderöidä, ja yksityiskohtien sijaan käytetään tekstuureita.[6]

  • Esimerkkivertailu kappaleesta eri määrällä yksityiskohtia.
  • Noin 5500 verteksiä, lähietäisyydelle.
    Noin 5500 verteksiä, lähietäisyydelle.
  • Noin 2880 verteksiä.
    Noin 2880 verteksiä.
  • Noin 1580 verteksiä.
    Noin 1580 verteksiä.
  • Noin 670 verteksiä.
    Noin 670 verteksiä.
  • Noin 140 verteksiä, etäiset kappaleet.
    Noin 140 verteksiä, etäiset kappaleet.

Lähteet

  1. Akeley, Feiner, Foley, Hughes, Van Dam, McGuire, Sklar: Computer Graphics Principles and Practice, s. 347. Third Edition. Addison-Wesley, 2014. ISBN 978-0-321-39952-6. (englanniksi)
  2. Woo, Mason & Neider, Jackie & Davis, Tom & Shreiner, Dave: OpenGL Programming Guide, s. 379. Third Edition. Addison-Wesley, 1999. ISBN 0201604582.
  3. Level-of-detail LOD (PDF) computer-graphics.se. Viitattu 27.1.2024. (englanniksi)
  4. GPU based dynamic geometry LOD rastergrid.com. Viitattu 27.1.2024. (englanniksi)
  5. Jad Khoury, Jonathan Dupuy, Christophe Riccio: Adaptive GPU Tessellation with Compute Shaders (PDF) onrendering.com. Viitattu 27.1.2024. (englanniksi)
  6. Emil Johansson: Analyzing performance for lighting of tessellated grass using LOD (PDF) diva-portal.org. toukokuu 2021. Viitattu 27.1.2024. (englanniksi)