バナナラボ

Vtuber美作ワニのブログです

【Unity】すぐに使えるかも!?ゲームのデータを簡単に読み込んだりできる実装!

バナナラボの美作です。

ゲームのデータ実装大変だなぁ……そんな人のためにゲームデータの作成や読み込みを簡単にできる実装を紹介します!

以下の機能を使うので一読お願いします!

bananalabwani.hatenadiary.com

bananalabwani.hatenadiary.com

準備

以下のようなデータ構造を用意します。今回は Json 形式で用意します。

{
    "data" : [
        { "id": 1 , "name": "御坂美琴" },
        { "id": 2 , "name": "食蜂操祈" },
        { "id": 3 , "name": "インデックス" },
        { "id": 4 , "name": "フレンダ" }
    ]
}

データクラスの用意

データクラスを作る。

[System.Serializable]
public class Character
{
    public int id;
    public string name;
}

データを束ねるクラスを作る

ジェネリックと併用するとひとつのクラスで束ねたクラスを作ることができる。 データごとにクラスを作る必要はないです。

[System.Serializable]
public class MasterData<T>
{
    public T[] list;
}

データの読み込みの仕組みを作る

Resources.Load で読み込めるように Resources ディレクトリにJsonファイルを配置します。 JsonTextAssetとしてロードする。

var asset = Resources.Load<TextAsset>("characters.json");
// Jsonを取得する
var json = asset.text;
var data = JsonUtility.FromJson<MasterData<Character>>(json);

最後に

ゲームを作る時にデータは何かと必要になるけど準備が大変だったりします。 しかし上記のようにすぐに書き込みができる仕組みや読み込める仕組みがあると開発が捗ると思います。

今回Jsonにしていますがカラム追加が課題になったりしますがひとまずやりやすくなると思います!

宣伝

YouTubeでゲーム実況・ゲーム開発の動画投稿および配信をやっています! もしご興味があればチャンネル登録・高評価よろしくおねがいします!

www.youtube.com