Sprite (számítógépes grafika)

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2021. október 17-én felülvizsgált verziótól ; az ellenőrzések 4 szerkesztést igényelnek .

Sprite ( angolul  sprite  - " tündér , elf ") - egy grafikus objektum a számítógépes grafikában .

Leggyakrabban a képernyőn megjeleníthető bittérkép [ 1] . Ha rossz szögből nézünk egy sprite-ot a 3D-s térben, az megtöri az illúziót. Vagyis a legegyszerűbb egy sprite-t valamilyen térben mozgó térfogati test vetületeként felfogni, így a különbség észrevehetetlen.

A kifejezés eredete

A "sprite" szót az 1970-es években találta ki a Texas Instruments egyik alkalmazottja : az új TMS9918 chipjük kis képeket tudott megjeleníteni egy álló hardver háttéren [2] .

Sprite 2D-ben

Kezdetben a sprite-okat kis rajzokként értelmezték, amelyeket hardveres gyorsítással jelenítettek meg a képernyőn . Egyes gépeken ( MSX 1, NES ) a szoftveres rajzolás bizonyos korlátozásokat eredményezett , de a hardveres sprite-ek nem tartalmazták ezt a korlátozást. Ezt követően a központi processzor teljesítményének növekedésével a hardveres sprite-eket elhagyták, és a "sprite" fogalma minden kétdimenziós karakterre kiterjedt. Különösen a Super Mario és a Heroes of Might and Magic videojátékokban az összes grafika sprite, amelyet a sprite atlasz képei között animálnak.

A hardveresen gyorsított sprite-ok az 1990-es évek közepén tértek vissza , amikor a multimédia fejlődése, valamint a felbontás és a színmélység robbanásszerű növekedése speciális processzort igényelt a videokártyában. Ekkor jelent meg a DirectDraw , mint egy 2D-s hardveres gyorsító csomagolóanyaga . A DirectX 8 bevezetett egy közös API -t a 2D-s és 3D-s grafikákhoz, és a modern sprite-játékokban a 2D-s sprite-ok pontosan ugyanúgy jelennek meg, mint a 3D-s sprite-ek – texturált téglalapként .

A sprite atlasz egy bittérkép, amely a sprite-eket animációs forgatókönyvekké vagy más sprite-készletekké rendezi. Az alkalmazás célszerűsége a fájlok számának csökkentése és a sprite batch használata a renderelési folyamatban : egy kép kerül a videokártyára, egy sor koordináta, amelyen „ renderelni ” kell, és „stencilek”, amelyek vágják. egyes sprite-ok az atlaszból. Ennek eredményeként a kétdimenziós grafika sokkal gyorsabban "renderel", mint az egyes sprite-ok egyszeri átvitele a videokártyára a renderelési koordináták jelzésével. A további tömörítés és a kihasználatlan terület csökkentése érdekében az atlasz nem hálóba, hanem a legsűrűbben tömörített formában tudja kombinálni a képeket, így ha minden sprite körül egy téglalapot ír le, akkor a téglalapok egy része metszi egymást. Ez a formátum további információkat igényel azokról a csúcsokról, amelyek képesek leírni az egyes sprite-okat anélkül, hogy a többivel metszenek, és növeli az alkalmazás betöltési idejét, de csökkenti a memóriát.

CSS sprite-ok

A CSS önmagában is lehetővé teszi a sprite atlaszok használatát. Egy grafikai fájlban több kép található. Továbbá, hogy több képre bontsuk, a képméret-korlátozást az atlasz egy sprite méretére alkalmazzuk, és az atlasz háttérpozícióját a képmagasság többszörösének megfelelő értékkel toljuk el. Így egy fájl az egész webhelyhez ikonokat biztosíthat.

A CSS sprite-ok forgalmat takarítanak meg és felgyorsítják a betöltést – a böngészőnek kevesebb fájlt kell kérnie.

Sprite 3D-ben

Első generációs motorok

A korai 3D-s játékokban, például a Wolfenstein 3D ( 1992 ), a Doom ( 1993 ) és a Build Engine - alapú játékokban ( Duke Nukem 3D , Shadow Warrior , Exhumed, Redneck Rampage ) a karaktereket 2D-s rajzokként ábrázolták, amelyek mérete attól függően változott, hogy milyen távolságra voltak. a játékostól származnak.

3D - s gyorsítókon

A 3D gyorsítók a következő technikát használják: egy objektumot síkként rajzolnak meg, amelyre átlátszó területekkel egy textúrát helyeznek. Ezt a technológiát három esetben alkalmazzák.

Optimalizálás

A Sprite segítségével optimalizálható a grafikus mag, ha egy részletes 3D-s modell renderelése túl drága, és a renderelési sebesség súlyos csökkenéséhez vezethet. Ezek:

  • Olyan tárgyak, amelyek nagy számban vannak jelen a jelenetben, és amelyeknek 3D-s lévén sok arcuk lenne, és nagyon erős hatást gyakorolnának a teljesítményre - például a háttérben lévő extrák, füst, fű stb.
  • A távoli objektumok, amelyeket a sokszögű modellek közelítenek meg, távolodva változó részletességű sprite-kké (LOD) válnak.
Speciális effektusok

Egyes speciális effektusok , például a tűz, sprite-ekkel készülnek, mivel a sokszögű tűz rosszul néz ki. Hasonlítsa össze például a Quake 2 és az Unreal Tournament robbanásait .

A kép nagyobb hitelessége érdekében nagyszámú viszonylag kis spritet használnak (az úgynevezett részecskerendszert ).

Élő felvétel

Időnként sprite-okat használnak arra, hogy élő fotót vagy videót adjanak a játékhoz . Például:

Érdemes megjegyezni, hogy néhány sprite-játékban, mint például a Rise of the Triad , a sprite-eket inkább színészek fotózták le, nem pedig modellek, játékok vagy rajzok.

A shaderek megjelenése részben szükségtelenné teszi az élő fotózást – a fotókép számos árnyalata már valós időben is átadható a sokszögű modellekkel.

Terminológia

  • Billboard  - egy sprite, amely folyamatosan a kamerával szemben áll (hasonlóan az autópályák hirdetőtábláihoz , amelyek a legkedvezőbb szögben vannak elfordítva).
  • Az Impostor  egy sprite, amely nagy távolságban helyettesíti a 3D-s modellt.

Spray in FPS shooters

Az ilyen játékokban a "Spray" a minta neve, amikor különböző típusú fegyverekből tüzel, amely szerint a játékosok megtanulják irányítani a visszarúgást és javítani a lövöldözést.

Lásd még

Jegyzetek

  1. sprite definíció - Szótár - MSN Encarta (downlink) . Hozzáférés dátuma: 2008. január 11. Az eredetiből archiválva : 2009. május 25. 
  2. Karl Guttag konferencia a Delphi TI Netről - Google Csoportok . Letöltve: 2012. szeptember 3. Az eredetiből archiválva : 2013. augusztus 2..

Linkek