Unity3D felbontása renderelt textúra felbontása csökken az eredeti fájl - kötegtúlcsordulást on
Próbálom, hogy egy köbméter panoráma. Egyszerű jelenet: kamera belsejében egy kockát, amely a 6-kocka oldalai. Az alkalmazás betölt egy textúrát nem a javak és erőforrások, valamint a számítógép fájlrendszert. Ekkor a program megjeleníti az arcok a kocka textúra megfelelő fragmentumok megfelelő mainTextureScales és mainTextureOffsets.
Panorama jelennek meg helyesen. De katasztrofális pixelation. Úgy tűnik, ha teszi a textúra csökkent többször át.
Van egy nagyon nagy képfájlt, amely 6 kép 2048x2048, ragasztott össze egy szalagot. Azaz teljes méretű képek mind a hat textúrák - 12288x2048. De a feltöltés után a mega-textúrát egy Texture2D, azt mutatja, a megfelelő méretet: 12288x2048.
Ha elolvastam a textúra a kocka arcok nem egy 12288x2048 fájlt, és az egyes fájlokat 6 2048x2048 a felbontás lesz sokkal jobb.
Kérdezzen, hogyan kell tárolni textúra köbös panorámák egy és nem a 6 fájl, de ez nem veszít felbontást teszi?
Között lehet olyasmi, mint egy start:
Szolgált egy sor bájt Texture2D van GetRawTextureData. Ez megfelelő letöltéséhez, először meg kell menteni a textúra elosztott tömbként byte kapott GetRawTextureData. Itt az a probléma, hogy ha ez a méret a blokkok, amelyek esetében szükséges, hogy csökkentsék a textúra nem mindegy, hogy van, például 512x512 textúra, vágjuk 512h255 nem történhet csak többszörösei Tipo 2h128, 256h64 stb (ez annak a ténynek köszönhető nem világos, hogy a szélesség vagy magasság nem többszöröse a dimenziója egy sor bájt még mindig)
Ui textúra típus lehet tenni a beállítást, és valami kapcsoló határozza meg a méretet (például DIMENSION_RGBA32) minden TextureFormat (jó, vagy talán Unity van néhány eszköz erre, nem tudom). Vagy, hogy meghatározzák a funkciót minden textúra használatos.