Sütik

Sütiket használunk a tartalom személyre szabására és a forgalom elemzésére. Kérjük, határozza meg, hogy hajlandó-e elfogadni weboldalunkon a sütiket.

Oldal tetejére
Bezárás
Zengo - Unity 6 - Főbb újítások és technikai fejlesztések
Kategória:

Unity 6 - Főbb újítások és technikai fejlesztések

Zengo - óra5 perc olvasási idő
2025. 04. 16.

Hivatalosan 2025. március 26-án jelent meg a Unity 6 LTS (Long Term Support) verziója, amely számos újítást hozott a teljesítményoptimalizálás, a fejlesztői workflow és a multiplatform támogatás terén. Ebben a blogposztban részletesen bemutatjuk a legfontosabb újdonságokat, kiemelten vizsgálva, hogyan segítik ezek az új funkciók a fejlesztők mindennapi munkáját, különösen URP (Universal Render Pipeline) környezetben.

Annak érdekében, hogy jobban lássuk a gyakorlati hasznát, egy teszt URP projektben néztünk meg néhány fejlesztést akció közben. Ehhez a Unity hivatalos URP Sample projectjét használtuk. Kíváncsiságból egy 2022-es Unity verzióban is megnyitottuk a projektet, így összehasonlíthatóvá vált, hogy milyen fejlődés történt a teljesítmény és vizuális minőség terén. 100%

Adaptive Probe Volumes – Automatikus világítás optimalizálás:

Eddig ha Light Probe-okat szerettünk volna a jelenetünkben, akkor ezeket kézzel kellett elhelyezni, figyelve a mennyiségre és sűrűségre, ami nem egyszerű feladat, ha optimális eredményt szeretnénk

Ezen segít az új Adaptive Probe Volumes (APV) rendszer. Beállítástól függően automatikusan helyez el light probe-okat a jelenetben a geometriák sűrűségének függvényében. Ezáltal például egy épület belsejében több probe kerül elhelyezésre, mint egy nyílt udvaron. Emellett képes kezelni a dinamikus fényváltozásokat is, például az égbolt változásait.

Az APV fő előnye, hogy jelentősen gyorsítja a világítás beállításának folyamatát, és lehetővé teszi a jobb fényeloszlást. Hátránya, hogy kézzel nem tudjuk ezeket a probe-okat mozgatni, nem használható együtt a standard Light Probe Group rendszerrel, és nem is konvertálhatjuk a már meglévő rendszert APV-re, újat kell létrehoznunk.

GPU Resident Drawer – Hatékonyabb GPU renderelés Unity 6-ban:

Ez az új rendszer automatikusan használja a BatchRendererGroup API-t a GameObjectek GPU-s példányosítására, csökkentve ezzel a draw call-ok számát, és tehermentesítve a CPU-t. Ez különösen előnyös lehet nagy, sok objektumot tartalmazó jelenetek esetén, ahol az egyidejű renderelés teljesítménykritikus tényező. Használata ezért különösen megfontolandó mobiljátékoknál, ahol a hardveres korlátok miatt a teljesítmény és az optimalizálás kulcsfontosságú.

A GPURD fő előnye, hogy látványosan csökkenti a renderelési terhelést. Ugyanakkor van néhány megkötés: a buildelési idő hosszabb lehet, továbbá csak a Forward+ renderelési folyamattal használható, és csak olyan mesh-ekre alkalmazható, amelyek Mesh Renderer-t használnak. Emellett csak olyan grafikus API-k és platformok esetén működik, amelyek támogatják a compute shadereket, az OpenGL ES kivételével.

GPU Occlusion Culling – Láthatóság alapú renderelés optimalizálás:

Ez a funkció a GPU Resident Drawerrel együtt használható, ugyanis ugyanott aktiválható. Segítségével a motor csak azokat az objektumokat rendereli, amelyeket a kamera valóban lát, ezzel további teljesítménynövekedést érhetünk el. Szerencsére a Unity biztosít eszközöket is az új Occlusion Culling nyomon követésére: a Rendering Debugger használatával vizualizálhatóvá válik nemcsak az Occlusion működése, hanem az Adaptive Light Probe-ok elhelyezkedése is.

Spatial Temporal Post-Processing – Képminőség javítása alacsonyabb erőforrásigénnyel:

Az STP a meglévő képkockák térbeli és időbeli információit használja fel a kép felbontásának növelésére és az élek simítására. Ez lehetővé teszi, hogy alacsonyabb felbontású renderelés mellett is magas minőségű vizuális eredményt érjünk el, optimalizálva ezzel a teljesítményt és a képminőséget. Az STP különösen hasznos lehet VR vagy mobilprojektek esetén, ahol a teljesítmény és az energiahatékonyság is kritikus tényező.

Render Graph System – Optimalizált Scriptable Render Pass URP-ben:

A Render Graph System egy új API-készlet, amely lehetővé teszi, hogy hatékonyabb Scriptable Render Pass-okat írjunk az URP-ben. Amikor egy ilyen render passt hozunk létre, először megadjuk, hogy milyen textúrákat vagy render texture-öket használjon, majd azt, hogy milyen grafikai parancsokat hajtson végre ezekkel az erőforrásokkal. Ezt követően a render passt hozzáadjuk az URP renderelő rendszeréhez, amely automatikusan optimalizálja azt, hogy csökkentse a szükségtelen műveleteket és erőforrás-felhasználást.

Az URP többféleképpen is optimalizálja a renderelést: összevon több render passt, elkerüli a felesleges erőforrás-allokálást, és nem hajt végre olyan lépéseket, amelyeknek a kimenete végül nem jelenik meg a képernyőn. Ezen kívül csökkenti a duplikált erőforrásokat, például az azonos tulajdonságú textúrákat egyesíti, és automatikusan szinkronizálja a compute és graphics GPU command queue-kat.

Multiplatform fejlesztések Unity 6-ban – Build Profiles és platformoptimalizálás:

Ezen felül történtek még változások a multiplayer megvalósításban, az UI Toolkitben, valamint a webes fejlesztés terén is. A multiplatform irányvonalat erősíti a build ablak átalakítása is, ahol bevezették a Build Profiles-t. Ez a funkció lehetővé teszi, hogy különböző platformokra testreszabott build konfigurációkat hozzunk létre, ezáltal átláthatóbbá és hatékonyabbá téve a többplatformos fejlesztést.

100% Forrás: Unity / https://unity.com/blog/unity-6-features-announcement

Unity Sentis – AI integráció Unity projektekben:

A Unity Sentis segítségével a motor egyre inkább nyit a mesterséges intelligencia felhasználása felé. A rendszer az összes támogatott platformon elérhető, és olyan válogatott AI modelleket használ, mint például a HuggingFace könyvtára. Ez lehetőséget biztosít a fejlesztőknek, hogy AI-megoldásokat integráljanak Unity projektjeikbe, legyen szó játékmenet-beli döntéshozatalról vagy intelligens karakterekről.

100% Forrás: Unity / https://unity.com/blog/unity-6-features-announcement

UI fejlesztések Shader Graph-ban – Grafikai elemek létrehozása Unity-n belül:

Nagy újítás, hogy most már Shader Graph-ban is tudunk létrehozni UI-hoz tartozó elemeket. Ez azt jelenti, hogy akár Unity-n belül is készíthetünk látványos és interaktív UI komponenseket, anélkül hogy külön grafikai szoftverekre lenne szükség. Ez a fejlesztés leegyszerűsíti a UI fejlesztési folyamatot, és csökkenti az asset importtal kapcsolatos hibalehetőségeket.

Lightmap generálás – GPU gyorsítás teljes értékű használatban:

A Lightmap generálás terén is történt előrelépés: a Progressive GPU beállítás kikerült a preview módból, és mostantól teljes értékűen használható. Ez gyorsabb lightmap készítést biztosít, különösen nagyobb jelenetek esetén, így javítva az iterációs sebességet és a renderelési hatékonyságot.

Összegzés – Miért érdemes kipróbálni a Unity új verzióját:

Mindezeket figyelembe véve a Unity 6 LTS verzió érdekes és hasznos újításokat hozott be, amelyek a modern fejlesztői igényekhez igazodnak. Saját tapasztalataink alapján egy 2022-es verzióban fejlesztett VR projekt átállása is zökkenőmentesen zajlott, nem ütköztünk problémákba. Kíváncsian várjuk, hogy a jövőben milyen további fejlesztéseket vezet be a Unity.

Érdemes kipróbálni az új verziót, különösen URP-ben dolgozóknak. Szerencsére rengeteg oktatóvideó, dokumentáció és egy letölthető e-book is rendelkezésre áll, amelyek segítik a fejlesztők eligazodását az új rendszerben.