Egység - útmutató grafikák
Mik azok a mobileszközök? Hogyan tervezed a játékodat? Ha a játék lelassul, és a profilozó azt mutatja, hogy a probléma renderelés alatt áll, honnan tudja, hogy mit kell változtatni? Hogyan lehet a játékod jobban kinézni és gyors maradni? Ez az oldal a módszerek általános, nem technikai bemutatására szolgál. Ha valamit keres, lásd: Vizualizálás optimalizálása.
Mit lehet végrehajtani az aktuális felhasználói eszközökön:
- A statikus geometria fényképezése. Vigyázat:
- Használjon alfa-teszt árnyékolókészletet
- Bumpmapping, különösen a beépített árnyékolók használatával.
- Számos sokszög
- Animált karakterek, még bizarr shaderekkel is. Vigyázat:
- Hatalmas tömegek vagy nagy poli-karakterek
- 2D játékok sprites. Vigyázat:
- Túljárás, vagy sok réteg húzódik egymásra.
- A részecskék hatása. Vigyázat:
- A nagy részecskék nagy sűrűsége (sok részecskéket húzanak egymás fölé, ez egy újabb folyószámlahitelhelyzet).
- Abszurd számú részecskék vagy részecske-gyűrűk.
- Fizika. Vigyázat:
- Mesh Colliders.
- Aktív testek készlete.
Mit ne hajt végre az aktuális felhasználói eszközökön:
- Grafikus hatások teljes képernyőn (pl. Fényesség és mélységélesség).
- Dinamikus perpixeles megvilágítás (sok fényforrás jelölt Fontos, nem égve a világítási térképeken)
- A dinamikus világításhoz minden renderelt objektumhoz további időre van szükség, ami gyorsan lassítja a játékot.
- Árnyékok valós időben mindenben
- Az Unity támogatja a valós idejű árnyékokat mobil platformokon, de használatuknak nagyon elgondolkodtatónak és valószínűleg csak a magasabb szintű eszközökre kell korlátozódnia.
Példák: hogyan lehet első osztályú mobil játékokat készíteni
A Shadowgun csodálatos példa arra, hogy mit lehet tenni az aktuális mobil szoftveren. Pontosabban, ez jó példa arra, hogy mit nem szabad tenni és hogyan kell megkerülni a korlátozásokat. Különösen azért, mert a játék egy kis részét nyilvánosan elérhetővé tették egy blogbejegyzésben.
Itt vannak azok a legfontosabb dolgok, amelyeket a Shadowgun a teljesítmény megőrzése érdekében valósít meg:
- A dinamikus világítást szinte soha nem használják.
- Valódi árnyékok helyett foltos árnyékokat és világítási térképeket használnak.
- a fényforrások karakterein, és nem valódi fényforrásként.
- Flash-felvételeket ad a fényforráshoz a szkripten keresztül.
- A BRDF kiszámításához a karaktereken csak dinamikus pixelenként világít, tetszőleges fény irányt használ.
- Az ütközést ritkán használják.
- Ez a bumpmapping csak karaktereken használható.
- Amennyire lehetséges, a kontrasztot és a részleteket a diffúz textúrák térképezik. Sült információ a megvilágításról a megkönnyebbülés térképéről.
- Jó példa erre a szobor szerkezete, vagy azok falai, amelyek ragyognak, ha jobb oldalról nézzük őket. Vizualizálásukhoz nem használják a bumpmap-ot (relief térképek), a láthatóság látható a textúra sütésénél. Annak érdekében, hogy ezek a modellek ragyogó megjelenésűek legyenek, a világítási térképek tükrös megvilágítással kombinálódnak a csúcsok megvilágításán alapulva.
- Ha szeretne megtudni, hogyan készíthet ilyen textúrákat, menjen a Renderingoptimalizálás oldalra
- Sűrű részecskék elkerülhetők.
- A sűrű részecskék helyett a textúrák UV görgetését használják.
- Kerülje a köd hatását.
- Isten sugarait kézzel modellezik.
- A megjelenő és eltűnő egységes síkok a köd kinematikus hatásának elérésére szolgálnak, megjelenésük megteremtésével.
- Ez gyorsabb, mivel több sík van és messze vannak egymástól (ez azt jelenti, hogy a köd minden egyes pixelét nem számítja az egyes shaderek).
- A fény elsötétül.
- Az egyes objektumok fényének megjelenítéséhez kevert sprite síkokat használunk.
Ez a bemutató azért jött létre, hogy megmutassa, mit képes az Unity a csúcsminőségű Android eszközökön.
- Ne használjon dinamikus világítást.
- Csak a világítási térképek.
- Terepi térképeket használnak
- A téglákon a relief térképeket irányított megvilágítási térképekkel világítják meg. Ez teljesen látható lesz a csúcskategóriás eszközökön.
- A valós idejű visszaverődés korlátozott.
- A valós idejű felületeket tükrözték óvatosan, külön-külön és távoli területeken, így egyszerre nem dolgoztak többet. A környezetet, amelyet kétszer kellett volna előállítani, az elzáródás megszüntetésével könnyen kezelhető lenne.
Eredmény - Mit jelent a játékod?
Minél többet figyelsz, és megérted a mobileszközök korlátait, annál jobb lesz a játékod, és annál jobb lesz a teljesítmény. Ha egy csúcskategóriás mobil játékot szeretne készíteni, akkor nagyban hasznot fog szerezni annak megértésében, hogy a grafika hogyan épül fel az Unity-ban és képes lesz saját shaderjeit írni. Ha a ShadowGun már shaderjeit szeretné használni, itt elérhetőek.
Ne imitálj! Bake it!
Nem kétséges, hogy a játékok igyekeznek követni a természet törvényeit. A parabola lövedék mozgását és az egyes briliáns pixelek színét a valós világban megfigyeléseket szimuláló formulák alapján írják. De a tudományos szimuláció csak egy része a játéknak, van egy másik rajz. A mobil piacon nem tudsz versenyezni a fizikailag pontosan újra létrehozott vizualizációval; a hardver nem teszi lehetővé ezt. Ha túlságosan szereted a való világot utánozni, akkor a játék korlátlan, szürke és zsúfolt lehet.
Rajzolj poligonjaidat, és színeket keverd művészként.
A Shadowgun-ban lévő domborművek sütése kiváló példa erre. Tükrös világítás már ott a textúra, az emberi szem nem veszi észre, hogy valójában nem esik egybe a fény irányának a textúra csak egy kontrasztos részletességgel, teljesen manipulált, de végül nagy keres. Ez egy közös "dummy", amelyet számos sikeres játékban használnak. Hasonlítsd össze a sisakot az első screenshotban a Halo-ból, mielőtt elengednéd a sisakkal egy release screenshotot. Ez a látszatot kelti, hogy a páncél előrejelzések tükröződik a sisak, de valójában tükrözi süssük a sisak textúra. A Legenda Ligájában kevés hatása van. a látszatot kelti, egy pixel világítás, de a valóságban van egy vegyes sík textúrát, ami valószínűleg keletkezik, amikor a képernyő lövés felvétel pixel fény világítja meg a földet.
Mi működik jól:
- Statikus geometriai világítás térképei
- Dinamikus világítás és a környezet nagy dinamikai elemeinek összekeverése. Válasszon egyet vagy a másikat.
- Fényprofilok mozgó tárgyakhoz
- A jelenlegi mobilkészülékek figyelmen kívül hagyják a dinamikus fény egyes forrásait, és nem tudnak árnyékot készíteni. Lightprobes - elegáns megoldás komplex játék világokhoz statikus világítással.
- Speciális árnyékolók, nagy kontrasztú textúrák
- Az ShadowGun Shaders minimálisra csökkenti az egyes képpontok számítását, és komplex, kiváló minőségű textúrákat használ. Tekintse meg a Renderingoptimalizálás funkciót, ha egy egyszerű shaderrel szeretne megjeleníteni a jól látható textúrákat.
- Rajzfilm grafika
- Ki mondta, hogy a játékodnak olyannak kell kinéznie, mint a fotó? Ha a világítást és a hangulatot a művész textúrájára helyezi, és nem a motornál, akkor sem kell aggódnia a megjelenítés optimalizálásával kapcsolatban.
Mi nem működik:
- Glow és egyéb utófeldolgozási hatások
- Amikor csak lehetséges, ezeket a hatásokat vegyes quadokkal érik el, a Shadowgun kiváló példa erre.
- Bumpmapping, különösen beépített árnyékolókkal
- Használja óvatosan, csak fontos karaktereken vagy tárgyakon. A képernyő minden objektumára nincs szükség bumpmapolásra.
- Ahelyett, hogy terepi térképeket használna, süsse több részletet diffúz textúrákra. A Legenda Ligája hatása kiváló példa arra, hogyan lehet sikeresen felhasználni az iparágban.
De hogyan tehetem ezt?
Gyakorlati útmutató a mobil optimalizálásához