PR

【Unityプラグイン】PlayerPrefsを編集するエディタを使おう!

PlayerPrefsを編集しよう! Unity

今回はUnityでゲームのセーブデータを保存するために利用される「PlayerPrefs」を編集するためのプラグインを作成したので公開したいと思います。

更新履歴

  • 2023/06/01 – 公開
  • 2023/07/13 –  PlayerPrefsの入出力機能を追加
  • 2023/07/15  – 入出力するファイル形式をcsvだったのをtppとして出力(カンマを含むテキストが含まれた場合のバグ対策)
  • 2023/07/29 – プロジェクト毎に切り替えられるように「プロジェクト名」を含む形に変更、C# 7.3でも動くように修正
  • 2023/08/02 – 解説動画を追加

 

「PlayerPrefs」について

Unityでセーブデータを実装する際によく使うのが「PlayerPrefs」です。

プログラム上の値を保存できたりして便利ですよね

 

PlayerPrefsの弱点

ただ弱点として「PlayerPrefs」はプログラム上からしか内容が確認できなかったりして開発時に面倒に感じることがよくあったりします。

そこで今回「PlayerPrefsを編集出来るエディタ」を作成したので公開してみます。

シンプルかつ、スクリプトなので導入しやすいかと思われます!

 

紹介動画

 

プラグインのダウンロード

ダウンロードはこちら
【Unity】PlayerPrefsエディタ

そして下記を参考にインストールします。

 

「PlayerPrefs Editor」の使い方

主な手順としては下記となります。

 

PlayerPrefs Editorを開く

メニューの「TedLab→PlayerPrefs Editor」でウィンドウを開く。

Key情報を入力

Keysに自身が利用しているPlayerPrefsの「キー名と型」を設定します。

PlayerPrefsの値を確認する

入力が終わるとPlayerPrefsの内容が反映されます。

これでセーブデータの中身が見えるようになりましたね!

 

キー項目ごとの編集方法

セーブデータのキー名を入力すると項目が出現し、値を編集することができます。

各ボタンの機能については下記のようになります。

  • Create・・・キーが存在しない場合に新しく作成する
  • Save・・・現在入力されている内容で保存する
  • Copy・・・エディタ内の値をクリップボードに保存(コピペ用)

現在のセーブデータの状態を再度確認したい場合は「Reflesh」ボタンを押してください。※入力中のものは消えます

 

2023/7/13  PlayerPrefsの入出力機能を追加

一時的にPlayerPrefの内容をどこかに逃しておいて
再設定したいことあったので入出力機能を追加しておきました。

入出力機能を追加

Export ・・・現在のキー情報と保存されている値をcsv形式でファイル出力します

Import・・・出力されたcsvファイルを読み込んでセーブします(現在の値やエディタの設定値は上書きされます)

csvファイルで保存されるので他の人にデータを渡して

別PCで読み取るようなことも可能になりましたね!

 

2023/7/15  入出力形式をcsvファイルからtppファイルに変更

先日追加した入出力機能に不具合があったので修正しました。

更新内容としてはPlayerPrefに保存するテキストにカンマが含まれている場合に正常に入出力ができないため、独自拡張子(tpp)のファイルとして出力するようになりました。

これでjson形式のテキストなどをPlayerPrefsとして保存している場合にも対応できるようになりました。

 

2023/07/29 – プロジェクト毎に設定、C#7.3に対応

エディタを閉じると設定値が保存されているのですが
プロジェクト毎に設定できない問題がありました。

この問題を解決すべく

プロジェクトごとに名前を設定して名前を変えれば個々の設定を参照できるように変更しました。

プロジェクト毎の設定を変えることができる

赤線のところを変えるとプロジェクト毎の設定に切り替わります!

ちなみに少しだけレイアウト変わっています(機能に大きな変更はないです)

あと、2019系のUnityエディタで一部ソースコードでエラーが出ていたのを修正しておきました。

これまでエラーで使えてなかった人はぜひ〜

 

2023/08/02 解説動画を追加

 

活動内容のPR

下記が本サイトでの活動内容となります。

他の開発動画を見る

 

最後に

いかがでしたでしょうか。
私はこの機能を追加したことでいつもより早くセーブデータのバグを見つけることができました。

ぜひ同じお悩みをお持ちの方にご利用いただけますと幸いです!

 

では今回はここまでとなります。
ここまでお読みいただきありがとうございました。

また本サイトではゲーム開発や日常で気になったことや英語学習などゲーム開発者である私が発信しているサイトとなります。もし興味がありましたら画面左下のベルマークから購読していただけますと幸いです。

 

 

コメント

スポンサーリンク
Ads Blocker Image Powered by Code Help Pro

Ads Blocker Detected!!!

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました