Sprite lap animációk megvalósítása
Ellenőrzési környezet
- Windows
-
- Windows 11 esetén
- Unity-szerkesztő
-
- 2020.3.25f1
- Bemeneti rendszercsomagok
-
- 1.2.0
A tipp előfeltételei
A következő beállítások előre konfigurálva vannak a tippek magyarázatának előfeltételeként.
Mi az a Sprite Sheet Animation?
A modern játékokban a karaktereket és effektusokat mozgó 3D-s modellek animálják, valós időben kiszámítják a robbanásokat és effektusokat jelenítenek meg. Ez azért vált lehetővé, mert a játékkonzolok számítási teljesítménye megnőtt, de mivel a régi játékkonzolok nem rendelkeztek annyi energiával, a sprite lap animáció, amely folyamatosan cserélte a képeket, hogy úgy tűnjön, mintha mozogna, volt a mainstream. Az elv ugyanaz, mint a tévében játszott animéké. A sprite lap animációkat kevesebb játék használja, mint a múltban, de még mindig gyakran használják őket, mert a számításokhoz szükséges terhelés sokkal alacsonyabb.
A Sprite sheet animáció több képet vált és jelenít meg egymás után. Ritkán lehet annyi képfájlt készíteni, amennyi van, és alapvetően az összes megjelenítési minta egy képen szerepel. Ez megkönnyíti a képfájlok kezelését, és csökkenti a képfájlok betöltésének terhelését. Az animációt összefoglaló képfájlt "sprite lapnak" nevezik.
Sprite-lap létrehozása
A sprite lap lényegében csak egy képfájl. Mivel semmi köze a Unity-hez, kérjük, hozza létre egy képszerkesztő eszközzel. A végső fájlformátum egy PNG fájl lesz, amelyet a Unity képes kezelni.
Ezenkívül a sprite lapok létrehozására a következő szabályok vonatkoznak.
- Egységesítse az összes képkocka képméretét. Ha például az első kép 32x32 képpont, a második és az azt követő képek 32x32 képpontosak lesznek. Például, ha sprite lapot készít "3x2" formátumban, 6 kerettel, a sprite lap mérete 96x64 pixel lesz.
- A képet szabadon igazíthatja, például "6x4" vagy "2x8", de győződjön meg róla, hogy azt feltételezi, hogy minden keret kitöltődik. Ha "6x4", akkor 24 képkocka és így tovább. Ha 13 képkockás animációról van szó, készítse elő "1x13" vagy "13x1" animációval.
- Mivel ez egy animáció, megfelelően van igazítva, hogy a keretek előtt és után ne legyen eltérés.
- Az animáció iránya a bal felső cellából indul és jobbra megy, és amikor a jobb szélre megy, balról indul egy lépéssel lefelé, és ismét jobbra megy.
Valójában nem kell szigorúan a Unity-ben elvégeznie a fentieket, de sokkal könnyebb előre dönteni a specifikációkról.
Ezúttal sprite lapot fogok használni a következő számok váltásához. Egy négyzet 32x32 képpont. 24 "6x4" keretből áll, így a képméret 192x128 pixel.
A sprite-lap konfigurálása a Unity-szerkesztőben
Miután létrehozta a projektet, adjon hozzá egy sprite lapfájlt a projekthez.
Itt feltételezzük, hogy a fájlnév NumberAnimation
.
NumberAnimation
Válassza ki a fájlt, és töltse ki az ellenőrt az alábbiak szerint:
Elem | értékei |
---|---|
Textúra típusa | Sprite-ok (2D és UI) |
Sprite mód | többes szám |
Sok más beállítás is konfigurálható, de hagyjuk úgy, ahogy most van. A konfigurálás után kattintson a "Sprite Editor" gombra.
Ha megjelenik az alábbi párbeszédpanel, kattintson az "Alkalmaz" gombra. Valójában ennek az ellenőrnek a beállításait el kell menteni, és ha az aljára görget, van egy "Alkalmaz" gomb, ezért el kell mentenie a beállításokat ezzel a gombbal. A párbeszédablakban az "Alkalmaz" is elmenti, így nem számít, milyen módon menti.
Megjelenik a Sprite Editor. Ebben a részben a sprite felosztásán fogunk dolgozni a sprite lapról.
A bal felső sarokban van egy "Szelet" nevű gomb, kattintson rá, és módosítsa a típust "Rács cellaméret szerint" -re. Ezen a sprite lapon a sprite egyik mérete "32x32" képpont, ezért minden képpontmérethez adjon meg 32-t. Ha elkészült, kattintson a Szelet gombra.
Ezt a képet nehéz megérteni, mert úgy tűnik, hogy a kezdetektől fogva egyértelműen meg van osztva, de 1 sprite 32px-szel oszlik meg. Nyomja meg a "Ctrl" gombot, és az osztott vonal zöld színnel jelenik meg.
A felosztás után mentse el az "Alkalmaz" gombbal.
Ha rákattint a háromszögre a projekt képfájljában annak kibontásához, láthatja, hogy a sprite fel van osztva.
Sprite elhelyezés és animáció
Húzza a beállított sprite-ot a nézetbe, és helyezze el.
Ezután megjelenik egy párbeszédpanel, ezért mentse el NumberAnimation
.
Ez a fájl tartalmazza az animációs beállításokat.
Az első sprite a nézetbe kerül, és egy animációs vezérlő és animációs klip jön létre a projektben. Ha a kép kicsi, állítsa be a méretezést, hogy nagyobb legyen.
Ezen a ponton az alapértelmezett animációs beállítások kerülnek alkalmazásra, így egyszerűen futtathatja a játékot. Látnia kell, hogy a sprite animáció mozog, amint a játék elindul.
Az animációk ismétlésének megakadályozása
Válassza ki az animációs klipfájlt (NumberAnimation.anim) a projektből.
Az ellenőrben van egy jelölőnégyzet a "Hurokidő" jelölőnégyzethez, ezért törölje a jelölést.
Ha futtatja a játékot, látni fogja, hogy az animáció megáll 24-nél. Hatékony egyszeri robbanási hatásokhoz.
Az animáció sebességének módosítása
Válassza ki az animálni kívánt sprite-ot a hierarchiából.
Ezután válassza az Animáció fület. Ha nincs Animáció lap, válassza az Ablak > az Animáció > az Animáció lehetőséget a menüből.
Van egy "minta" nevű szám, amely többször is képes képeket váltani egy másodperc alatt. Ebben a példában az animáció 24 képkockából áll, így az animáció 2 másodpercenként megismétlődik.
Ha csökkenti ezt a számot, az animáció sebessége lassabb lesz, és ha növeli, a sebesség növekedni fog.
Egyéb speciális animációs beállítások
A különböző animációs beállításokat külön ismertetjük az animáció-specifikus tippekben. Ezek a beállítások nem kizárólagosak a sprite animációkra, de nem kizárólagosak a Ez ugyanaz, mint más mozgásanimációk és 3D animációk beállítása.
Ebben a tippben elmagyarázzuk, hogyan lehet egy sprite lapról animációként mozogni.