URL: http://atnd.org/events/34621
今日も僕です。
NGUI使ってる方には、お馴染みのNGUIのAtlas Maker。
名前通りAtlasを生成するツールです。
このように、私のアイコンとBooのアイコンを入れてやってみます。
しかし結果は、こうなりモバイルには容量が大きくなりメモリ食います。
UIAtlasMaker.csがこの本体ですが、保存は、NGUIEditorTools.csっぽいですね。
・NGUIEditorTools.cs
MakeTextureAnAtlasメソッドが実際に該当します。
static bool MakeTextureAnAtlas (string path, bool force) { if (string.IsNullOrEmpty(path)) return false; TextureImporter ti = AssetImporter.GetAtPath(path) as TextureImporter; if (ti == null) return false; TextureImporterSettings settings = new TextureImporterSettings(); ti.ReadTextureSettings(settings); if (force || settings.readable || settings.maxTextureSize < 4096 || settings.wrapMode != TextureWrapMode.Clamp || settings.npotScale != TextureImporterNPOTScale.ToNearest) { //settings.mipmapEnabled = true; settings.readable = false; settings.maxTextureSize = 4096; settings.textureFormat = TextureImporterFormat.RGBA32; // settings.filterMode = FilterMode.Trilinear; settings.filterMode = FilterMode.Bilinear; // settings.aniso = 4; settings.aniso = 1; // add by shinriyo settings.mipmapEnabled = false; settings.ApplyTextureType(TextureImporterType.Advanced, true); settings.wrapMode = TextureWrapMode.Clamp; settings.npotScale = TextureImporterNPOTScale.ToNearest; ti.SetTextureSettings(settings); AssetDatabase.ImportAsset(path, ImportAssetOptions.ForceUpdate); } return true; }
こうやって変更してImportすると〜、テーレッテレー♪
さらにTextureFormatをRGBA 32bitにしたいときは以下を追記
Defaultで変わります
settings.textureFormat = TextureImporterFormat.RGBA32;
settings.textureFormat = TextureFormat.RGBA32;ではないので注意!
次回、てか明日は何しようかな?