CHEPE'S(ちぴぃーず)<--トップに戻るにはここをクリック
--------------------------------------------------
☆カテゴリ内容☆

ペンギンとゲーム制作が好きな管理人が、ゲームやちょっとした情報をお知らせするサイト。

タイトル毎に表示しています。
--------------------------------------------------

2011年08月04日

unity 3d でデータのセーブロード

  

unity で ipad 用の自分が楽しめる、アプリを作っているのですが、データの保存とロードを行いたくて色々調べてみました。
どうやら、これだー!っていう一個のやり方はなくていろんなやり方があり、絶対にこれみたいな正解はありませんでした。基本的に.NET命令で行うみたいなので .NET の知識が必要なかった私には結構苦行(調べ方から何にも知らないわけです)
同じような人がいたら、ちょっとは助けになるはず。

今回行ったのは、XMLでClassを保存 ipadでできるかどうか不明です(確認してないだけ)、一応 windows では保存できるようにはなったので、世間に情報が少なく調べるの大変だったので情報をはっておきます。

まずは wiki からすぐ使えるソースコードを拾ってきます。

unity wiki で XMLのセーブロードのソースコード

で、unityでC#のスクリプトを作成してください、名前は使用するするクラス名_GameSaveLoad を使ってください。
wikiには javascript バージョンもある。

<注意事項>
ビルドを web にしていると使えないクラスがあるためビルドエラーがでます、unity のビルドセッティングで windows などに変更してください。

maincameraかなにかにスクリプトをくっつけて、保存したい情報のあるオブジェクト(transformコンポーネントがあれば何でもいい)を先ほどくっつけたスクリプトに設定します。実行すると画面に save load のボタンが表示されて、押すだけで保存と読み込みが完成!

ここまでは凄く簡単だ、ただのコピペだし。

次は ArrayListで登録した複数のクラスを読み込む方法を知りたくなるはずです。

クラス入りのArrayListをXML形式で保存・読み出し のコードがあるサイト

こちらを参考に先ほどのコードを改良するだけで、完成します。

気をつけるのは、typeof(System.Collections.ArrayList),new Type[] {typeof(data)}
の Type[] が unity では System.Type[]です。

文章のみでわかりにくいけど、こんな感じです。

   
Posted by chepes at
TrackBack

TrackBackURL
http://www.orangejam.jp/chepes/newsbook2/mt/mt-tb.cgi/384
Trackback
Comments
コメントの書き込み









Remember personal info?