Bemutató a menüben lokalizációs Unity3D

Előbb vagy utóbb, még egy kis projekt sikeres szeretne mutatni, nem csak a barátok, hanem a szélesebb közönség más országokban. Annak érdekében, hogy egyre több ember van átitatva a „zseniális” ötlet, meg kell átvinni az összes képernyőn megjelenő szöveg és aláírások a nyelvhelyesség az ő „natív” lakói.

Ez a cikk megmutatja, hogyan lehet elég gyorsan írni a lokalizáció vezetője, párhuzamos nehéz megtenni a főmenübe, és a Unity nyelv kiválasztására szolgáló menü. Van egy több nyelven áll 3: angol, német és természetesen oroszul.

Úgy fog kinézni, így lokalizált főmenü 3 nyelven a végleges verzió:

Bemutató a menüben lokalizációs Unity3D

A fejlesztés fogja használni Unity3D és a C #.

alapvető főzési

Először hozzon létre egy projektet az Unity, hozzon létre egy jelenet a következőkből áll: a kamera; üres elem «Menü» típusú «Gameobject»; struktúra típus «GUITexture» megkötve érdekes kép, amely lehet használni, mint a háttér; üres textúra «egység» logó. «Játék» Hit.

Bemutató a menüben lokalizációs Unity3D

Hozzon létre egy fájlt lokalizáció

Számos lehetőség rendezésére és adattárolásra Lokalizáció:

Egynyelvű tároló - adatok (szöveg, párbeszéd, a nevét az audio fájlok, stb) is tartalmaz az egyes fájlok, például az orosz Russian.xml, és néhány kínai - illetve Chinese.xml

Többnyelvű tárolás - akkor minden adatot tárolnak egyetlen fájlban, hogy az úgynevezett «all in one». Valaki azt mondják, hogy kényelmetlen tárolni egyetlen fájlban, de a projektek egy kis mennyiségű lokalizált adatok, ez a „nem”.

A második lehetőség a kiegyensúlyozott megoldás a kis probléma, de az első sokkal kényelmesebb a szempontból a szervezet a projekt a lokalizáció a nagy nyelvek száma.

Tárolására szöveges adatokat fogja használni a legalkalmasabb az ilyen típusú - XML.
Az adatok formátuma XML-fájl a következő:

Bent a «meta» elemet tartalmazhat az általános adatokat a projekt, például név, verzió, az adatok ellenőrzésére az eredetiség és fájl sértetlenségét.
Element «csoportazonosító» használjuk a főmenü nevek, akkor is lehet használni a nevét a különböző másodlagos menük, helyszínek nevek, stb
Element «string id» tartalmazza ugyanezen mezőket adatok honosítható.

lokalizáció manager

Most közvetlenül a létrehozása szkripteket.

Hozzon létre egy osztályt és egy script «LangManager.cs», ez lesz a fő script lokalizáció vezetője.

Először. az adatok típusát. Van, amint arra már rámutattunk, nem lesz 3 nyelv:

Ennek megfelelően, változó és ingatlan tárolja az aktuális nyelv, angol lesz az alapértelmezett:

Második. Ez a funkció podzagruzki file:

«LanguagesFileName» - egy változó típusú «húr», az utat a lokalizációs fájlt, például, LanguagesFileName = @ „/ Beállítások / Languages.xml”

Harmadik. funkció megszerzése lokalizált adatok függvényében az aktuális nyelvet. (Egyesek azt mondják, hogy nem túl hatékony, és fel kell használni a szótárak. De ahogy mondják, «senki sem törődik»).

Az adatok hiányában a kért területen feliratot «nem fordították» jelenik meg.
Persze, mindenki felveheti a saját márka „bun”. Tehát az alapvető lokalizáció vezetője kapta.

Creation és lokalizáció menü

Az első dolog, amit teszel egy scriptet, és összeköti azt a játékot objektum menü.

A script indításakor meghatározni, hogy a lokalizációs fájl letöltése, ha nem, akkor podgruzhaem.

Módon az összes példány végzett belső «OnGUI» funkciót.

«ScreenX» és «Screeny» - koordinátáit a bal felső sarokban a régióban, ahol a menü kezdődik;
«AreaWidth» és «areaHeight» - a méretei a szélesség és magasság;
«CurrentPage» - saját változó típusa „oldal”, meghatározásához használt „mi menü vagyunk.”

Közvetlenül működik, hogy hozzon létre saját gombokat a főmenüben. Belül is hozzá saját rakodók prések, például a terhelési szint vagy egy új menü.

Minden nyelv lesz saját font, tehát állapítsa meg a megfelelő változók:

Hozzárendelése minden változó kívánt betűtípust:

A nyelv kiválasztása menü:

Mentés, mi nyomja «lejátszás».

Kaptam egy főmenüt, és válassza ki a menü nyelvét (orosz változat):

Bemutató a menüben lokalizációs Unity3D

A végén, akkor kap egy vonzó kép, amely adott esetben ki lehet nyomtatni, és a falra akasztott:

Bemutató a menüben lokalizációs Unity3D

alternatívák

A Unity Asset Store elég használható üzemi idővel (formájában egy kiterjesztés Unity3D). És még egy külön fejezet szerkesztő

Ha veszel hivatalosan, akkor nézd meg:

következtetés

Desire, egy kis türelmet, és kész!

Bemutató a menüben lokalizációs Unity3D

UPD: Fix hibák, címzett habrapolzovateley kívánságait

1) törölve hindu kódja;
2) új betűtípusok, beleértve a cirill.

Minden résztvevő disskusii és HomoLuden. Gafs. - Köszönöm, nagyon érvényes észrevételeit és javaslatait!