Sprite (počítačová grafika)

Ukázka spritů

Sprite (někdy též sprajt) je označení používané v počítačové grafice pro většinou malý dvourozměrný obrázek (resp. animaci), který je integrován do větší scény.

Sprity ve 2D grafice

Sprity byly původně vyvinuty jako technika, která pro rychlé vykreslování scén ve dvojrozměrných počítačových hrách využívala speciální hardware s přímým přístupem do paměti (blitter). Blitter přesouval obsah paměti paralelně k práci mikroprocesoru, který se tak mohl v této době věnovat dalším výpočtům. Blitter navíc provedl přesun v kratším čase, než by ho provedl mikroprocesor. Díky tomu bylo možné i za pomoci méně výkonného mikroprocesoru spouštět graficky náročné počítačové hry. V dobách cca do roku 1996 to bylo jediné schůdné řešení pro osobní počítače té doby, protože bylo rychlejší a výpočetně méně náročné než reprezentovat postavy a interaktivní prvky pomocí trojrozměrných objektů. U mnoha dvourozměrných her (logických, „arcade“, „bludišťovek“ aj.) bylo pomocí spritů vykreslováno v podstatě vše, co se mělo objevit na obrazovce. Obvykle byl jeden bit vyhrazen pro alfa kanál („průhledná barva“).

Sprity mohly zobrazovat jakoukoli část pohybujícího se objektu ve hře, ne nutně jeho celek: například ve hře Abuse je jedna skupina spritů použita pro horní část těla hlavního hrdiny a druhá skupina pro všechny animační fáze jeho nohou, což umožnilo postavičce mířit zbraní nezávisle na směru, kterým utíkala.

Sprity se používají také pro vykreslení ukazatele myši.

Sprity ve 3D grafice

Pomocí spritů se v některých starších trojrozměrných počítačových hrách (např. Wolfenstein 3D, Doom) vkládaly pohybující se objekty (například postavy, power-upy, interaktivní předměty).

Zhruba od roku 1997 počítačová grafika zaznamenala vzestup významu 3D akcelerace; nově vyvíjené hry měly k dispozici vyšší výkon a techniku vykreslování spritů mohly nahradit věrnějšími a delikátnějšími metodami. Klasické sprity jsou stále využívány například v kapesních herních konzolích (tzv. handheldech), jako je např. Game Boy Advance.

Billboarding

S nástupem 3D grafiky termín „sprite“ začal označovat i další techniky, při níž jsou ploché obrázky „bezešvě“ integrovány do složitých trojrozměrných scén.

V moderních trojrozměrných počítačových hrách se výraz sprite někdy používá jako synonymum pro billboarding. Tato technika využívá 2D obrázek (resp. animaci) s alfa kanálem, který je mapován na speciální rovinu ve 3D scéně. Obrázek může být zmenšen či zvětšen, otočen v rovině zobrazení a překryt jinými objekty. Na rozdíl od obecné textury ale je tento obrázek vždy mapován na rovinu kolmou k ose vycházející z oka virtuálního pozorovatele.

Na rozdíl od „klasických“ spritů je tato technika závislá na grafické kartě s 3D akcelerací (DirectX, OpenGL). Technika umožňuje snížit nároky na počítač v porovnání s plně trojrozměrnou simulací. Často se používá jako plocha, na které se zobrazují částicové systémy (kouř, oheň apod.), u starších her i pro zobrazení keřů a stromů[1]. Pro postavy a další dynamické objekty se již zpravidla používají plně 3D modely.

CSS sprity

Na webových stránkách se zhruba od roku 2006 používá technika označovaná jako CSS sprity. Jde o spojení většího počtu malých ikon do jediného obrázku. Účelem není šetření výkonu procesoru, ale snížení počtu požadavků na WWW server. Díky tomu se stránky s obrázky načítají rychleji.[2][3][4]

Reference

Externí odkazy

Média použitá na této stránce

Sprite-example.gif
Autor: Kriplozoik, Licence: CC BY 3.0
Example of sprites