Hvad er en displayliste?
En visningsliste i computergrafik er en sekvens af kommandoer, der, når de udføres, giver instruktioner om, hvordan man tegner et objekt til skærmen eller anden outputenhed. Formålet med at bruge en displayliste er at øge hastigheden og effektiviteten af de scener, der er gengivet, samt at gøre programmeringskildekoden lettere at læse. Flere typer software og hardware bruger en displayliste til at vise objekter, herunder vektorbaseret grafikredigeringssoftware, nogle spilkonsolsystemer og visse computergrafikbiblioteker. Et aspekt ved at bruge en visningsliste, der kan gøre det umuligt for visse applikationer, er det faktum, at når instruktioner er føjet til en liste, kan de ikke ændres, hvilket betyder, at objektet, som listen over kommandoer repræsenterer, skal forblive nøjagtigt det samme, hver gang det er gengives.
En vigtig anvendelse for en visningsliste er at forhindre, at grafikbehandlingsenheden (GPU) på en computer skal udføre den samme række af beregninger, hver gang en scene tegnes til outputenheden. Ved at tilføje grafikkommandoer til en liste og derefter instruere den software, der bruger listen til at kompilere kommandoerne, udføres og gemmes alle hukommelsesberegninger. Dette betyder, at de fleste af beregningerne allerede er udført, hver gang objektet tegnes. Når et objekt skal tegnes flere gange i en enkelt scene, kan det gøres meget hurtigere ved hjælp af en enkelt visningsliste.
Der er flere funktioner, som en displayliste kan udføre, når alle kommandoer er indlæst. For et objekt, der bruger et billede som en struktur, kan billedets originale farvedybde og andre egenskaber oversættes til det format, der kræves til den opløsning og det grafiske kort, der bruges. Overfladematerialer, især hvis de er lagdelte, kan beregnes på forhånd, hvilket sparer en betydelig mængde tid under den endelige gengivelse. Ud over andre beregninger, der er foretaget inden gengivelsen, kan de kompilerede listeoplysninger gemmes i grafikkortets hukommelse i stedet for i separat computerhukommelse eller virtuel hukommelse. Hvis du har de nødvendige oplysninger til GPU, der er gemt på det samme fysiske hardwarekort, kan det øge gengivelseshastigheden, fordi den vil kunne rejse meget hurtigere til processoren.
Afvejningen ved brug af en displayliste er, at beregningerne skal gemmes et eller andet sted. Dette betyder, at oprettelse af mange lister potentielt kan bruge en meget større mængde computerhukommelse, end det ellers ville være nødvendigt. Dette kan skyldes antallet af polygoner, der kræves af et objekt, eller størrelsen på et billede, der skal placeres i teksturhukommelse. For komplekse scener kan størrelsen på listerne overstige mængden af tilgængelig hukommelse og påvirke ydelsen på grafikkortet.