Unity開発

Unity初心者でも簡単!Easy Save3の使い方と導入手順を徹底解説

Unityでゲームを作っていると、「セーブ・ロードって意外とめんどくさい…」と思うこと、ありませんか?
PlayerPrefsだと対応できない複雑なデータや、セキュリティ面の不安もありますよね。

そんな悩みを一発で解決してくれるのが、Easy Save3(ES3)です。
この記事では、Easy Save3の導入方法から基本的な使い方までを、サンプル付きで丁寧に解説します!

この記事で学べること

  • Easy Save3のインストール方法
  • Easy Save3の設定場所
  • セーブ/ロードの基本構文
  • ゲームデータの保存例(数値・文字列・クラス・位置など)
  • セキュア保存やファイル分割の使い方

インストール方法

  1. Unity Asset Storeから「Easy Save3」を購入&ダウンロード
  2. Unityにインポート

※ インポート手順は以下を参考にしてください。

Easy Save3の設定場所

Easy Save3は以下の画像の場所にあり、設定が可能。(パスワード、保存パス、Auto Save等)

基本的な使い方(保存・ロード・存在確認)

数値や文字列の保存・ロード・存在確認

ES3.Save<int>("Score", 12345);

// データが存在するか確認
if (ES3.KeyExists("Score"))
{
    // ロード
    int score = ES3.Load<int>("Score");
}
else
{
    Debug.Log("スコアデータが存在しません");
}

Vector3の保存・ロード・存在確認

ES3.Save<Vector3>("PlayerPos", transform.position);

// 存在確認
if (ES3.KeyExists("PlayerPos"))
{
    Vector3 pos = ES3.Load<Vector3>("PlayerPos");
    transform.position = pos;
}

カスタムクラスの保存・ロード・存在確認

[System.Serializable]
public class PlayerData {
    public string name;
    public int level;
}

// 保存
PlayerData data = new PlayerData { name = "Taro", level = 5 };
ES3.Save("PlayerData", data);

// 存在確認&ロード
if (ES3.KeyExists("PlayerData"))
{
    PlayerData loaded = ES3.Load<PlayerData>("PlayerData");
    Debug.Log($"名前: {loaded.name}, レベル: {loaded.level}");
}

ファイル単位での存在確認

if (ES3.FileExists("save1.es3"))
{
    int score = ES3.Load<int>("Score", "save1.es3");
}
else
{
    Debug.Log("セーブファイルが見つかりません");
}

ファイル分けして保存するには?

//保存
ES3.Save("Score", 200, "save1.es3");
ES3.Save("Score", 500, "save2.es3");
//ロード
int score = ES3.Load<int>("Score", "save2.es3");

ファイルを削除するには?

ES3.DeleteKey("Score");
ES3.DeleteFile("save1.es3");

セキュリティ(暗号化)設定

  • ES3Settingsから「Encryption Key」を設定
  • 保存時に設定を渡すだけで暗号化可能
var settings = new ES3Settings { encryptionType = ES3.EncryptionType.AES, encryptionPassword = "mySecret" };
ES3.Save("SecretScore", 999, settings);

まとめ

Easy Save3は、「保存に悩む時間」を「開発に使う時間」に変えてくれる最高のツールです。
クラスや構造体もそのまま保存できるので、セーブ周りが一気にシンプルになります。PlayerPrefsで苦労している人、将来的にクラウドや暗号化を見据えたい人は、ぜひ導入を検討してみてください!