いんでぃーづ

ゲームいろいろ、いろいろ自由

Unity2017新機能のSpriteAtlasには、旧スプライトパッカーからすぐ移行するべき

Unity2017でスプライトパッキングの仕組みが刷新されました。

docs.unity3d.com

「今開発中のはスプライトパッカーで十分だし、まだいいかなー」などと思わず、すぐ移行すべきだと思います。

というのも、アセットストアで購入したスプライトにありがちな問題をすぐさま解決 してくれるからです。


旧SpritePackerのパッキングタグはテクスチャ単位のため、不要なスプライトも全部パッキング されてしまっていました。

例えば下のようなアセットの一部だけ使いたくても、全部がパックされてしまいます。

f:id:sugar_affordance:20170726105112j:plain

ですが新しい仕組みのSpriteAtlasを使えば 必要な部分だけくりぬいてパックしてくれる ので、無駄なデータをビルドに含まずに済みます。

一部のスプライトだけシーンに置いてビルドした結果を比較してみました。

f:id:sugar_affordance:20170726105134j:plain

上が旧スプライトパッカー使用時、下がスプライトアトラス使用時です。

f:id:sugar_affordance:20170726105418j:plain

f:id:sugar_affordance:20170726105435p:plain

まあ単純にファイルサイズだけ比較してもしょうがないかもしれませんが、参考までに。

特にアセットストアで買ったスプライトなどはこういう構成になっていることが多いので、データ削減に大いに役立ってくれると思います。

SpriteAtlasの使い方

下準備

まず準備としてメニューの Edit > Project Setting > Editor を開き、Sprite Packer の設定が Disabled になっていることを確認しましょう。

f:id:sugar_affordance:20171106101949j:plain

これにより、旧ツールが無効になります。

SpriteAtlasアセットを作成する

Projectウインドウの Create から、SpriteAtlasを作成します。

f:id:sugar_affordance:20171106102151j:plain

インスペクタでスプライトを設定していく

Inspectorでみると下のようになっているので、Objects for Packing にパッキングしたいスプライトをガンガン登録していきましょう。

f:id:sugar_affordance:20171106102348j:plain

基本的な使い方はこれだけです。

orz

実は自分で「テクスチャからスプライトを切り抜いて新しくテクスチャ化する」というエディタ拡張を書いて運用してました。
そしたらこんな便利が機能ができていた。。。
「アセット化したらウマウマw」とか思ってるうちにβのリリースノートちゃんと読むんだった orz


“Unity” and Unity logos are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere, and are used under license.


免責事項

当サイトの広告バナー、リンクによって提供される情報、サービス内容について、当サイトは一切の責任を負いません。

また、当サイトの情報を元にユーザ様が不利益を被った場合にも、当サイトは一切の責任を負いません。

すべて自己責任でお願いします。