facebook twitter hatena line email

Unity/SpriteAtlas/基本

提供: 初心者エンジニアの簡易メモ
移動: 案内検索

SpriteAtlas

複数の画像を1枚の画像にするプラグイン。CPUの負荷軽減の効果がある。

SpriteAtlasインストール

Unityメインメニュー/Window/PackageManager から2dSpriteをインストール

初期設定

  1. Unityメインメニュー/Edit/Project Settings/Editorメニュー
  2. SpriteAtlasのModeを Disabledから Sprite Atlas V1 - AlwaysEnabledへ

使い方

  1. Unityメニュー/Assets/Create/2D/SpriteAtlasで、SpriteAtlasファイル作成
  2. SpriteAtlasファイルのObject for Packingに、画像アイコンをドラッグ追加

アイコンをまとめる

  1. SpriteAtlasファイルのObjectForPackingに、アイコンディレクトリを追加することで、その下のアイコンがすべて対象となる。

Atlas画像プレビュー表示

  1. PackPreviewボタンで、画像のプレビュー表示することができる。

UGUIへの適用

  1. ImageのSourceImageに普通にアイコンファイルを指定する。

AddressableのSpriteAtlasの場合

  • SpriteAtlasのInclude in Build を無効に
  • AllowRotationのチェックをはすず(UGUIの表示が崩れるので)
  • Tight Packingのチェックをはすず(UGUIの表示が崩れるので)

参考:https://kondeneenen.com/spriteatlas_for_aas/

参考:https://sunagimo-app.hatenablog.com/entry/2019/03/11/020119

コードでAtlas画像設定

using UnityEngine;
using UnityEngine.U2D;
using UnityEngine.UI;

public class ScriptScene : MonoBehaviour
{
    [SerializeField] SpriteAtlas spriteAtlas;
    [SerializeField] Image image;
    void Start()
    {
        image.sprite = spriteAtlas.GetSprite("baseline_cancel_black_24dp");
    }
}

参考:https://www.snoopopo.com/entry/2022/05/12/215449

負荷軽減確認

GameタブのStatsを選択肢、Batchesの値が減っていれば成功。

画像3つのatlasを作り、Canvasに画像を3つ設置して、前後で比較すると、28から26に減った。

参考

https://shibuya24.info/entry/unity-spriteatlas