Auto9Slicer - 自動的に9スライス用画像に変換してくれるライブラリ

github.com

画像を入れると、自動的に9スライス用画像に変換してくれるライブラリです。
メリットとしては、テクスチャサイズが小さくなる、サイズを変更しても拡大した感がでなくなる、などなど9スライスの恩恵を自動的に受けられます。
(昔、OnionRingという名前で公開していたライブラリの改良バージョンです。)

インストール方法

f:id:kyubuns:20210131115435p:plain

Package Managerの Add package from git URL に次のURLを入れてください。
https://github.com/kyubuns/Auto9Slicer.git?path=Assets/Auto9Slicer

UnityPackageもあります。

簡単な使い方

Assets > Create > Auto 9Slice > Tester から、Auto9SliceTesterを作成します。

image.png

Auto9SliceTesterを選択し、InspectorのRunボタンを押すと、同じディレクトリにある画像が自動的にスライスされます。

image.png

スクリプトから使う

こっちが推奨です。
プロジェクト毎のフローに合わせて、なんか良い感じのタイミングで勝手にスライスされるように出来ます。

var slicedTexture = Auto9Slicer.Slicer.Slice(texture, SliceOptions.Default);
textureImporter.spriteBorder = slicedTexture.Border.ToVector4();
File.WriteAllBytes(filePath, slicedTexture.Texture.EncodeToPNG());

あとがき

良いな〜って思った方はぜひ、githubのStarをポチッとお願いします!