RPGの持ち物、サバイバルゲームの所持品、クラフトゲームの素材欄——インベントリは、多くのゲームに欠かせないシステムです。ところがいざ作ろうとすると、アイテムの定義・所持数の管理・スタック・UIの更新が絡み合って、どこから手を付けるか迷いがちです。ここでも鍵は データとUIの分離 。「何をいくつ持っているか(データ)」と「それをどう並べて見せるか(UI)」を分けると、驚くほどすっきり作れます。
この記事では、拡張しやすいインベントリの土台を組み立てます。アイテムを ScriptableObject で定義し、スロットのデータ構造、追加・削除・スタック 処理、グリッドUI への反映、そして セーブ まで。RPGの持ち物欄、サバイバルのバッグ、ローグライクの所持品——どれもこの設計から作れます。
この記事でわかること
- アイテムを ScriptableObject で定義する(アイテムマスタ)
- インベントリの データ構造(スロットのリスト)
- 追加・削除・スタック の処理
- グリッドUI への反映(Layout Group)
- 実践:拾う・使う・並べるインベントリ
動作確認環境: Unity 2022.3 LTS / Unity 6
目次
Sponsored
データとUIを分離する
インベントリ作りで最初に決めるべきは、 「持ち物のデータ」と「表示するUI」をはっきり分ける ことです。ここを混ぜると、アイテムを1個拾うたびにUIコードを直す羽目になります。
