スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

【Unity】ScriptableObjectを使ってて、詰まったこと

Unityで使える"ScriptableObject"って知ってますか?
簡単に説明すると、Unityでデータを共有することができるクラスです。

例えば、ゲーム内の店舗別のアイテム格納とか、キャラクターの基礎ステータスをもたせたりなんて時に使います。

具体的に実装すると、
---ItemShopData.cs
[System.Serializable]
public class ItemShopData : ScriptableObject {
[SerializeField]
public List ItemList;
}

[Serializable]
public class Item {
public int id;
public string itemName;
public int price;
}


こんな感じでしょうか。
あとは、Inspector上でデータを入れて上げて、Resourcesフォルダにでも入れておけば、誰でも触れるデータベースになりますね。

さて、ここで私が陥ったミスです。
ファイル名をItemShopData.csではなく、Item.csとしてました...
この結果、タイトルシーンでは作成したデータベースをなぜか触れて、他のシーンではnullになってしまってました。
また、Inspector上で
The associated script can not be loaded. Please fix any compile errors and assign a valid script.
って出てました。

調べても、なかなか解決できなくて、ふとスクリプトを見なしたら、名前が...ってなったので、一応記事に残しておこうと思いました。

皆さんも気を付けましょう(笑) ←
スポンサーサイト

コメントの投稿

非公開コメント

プロフィール

farCiel

Author:farCiel
自由気ままに楽しく書いていければ良いですね.

最新記事
最新コメント
月別アーカイブ
カテゴリ
amazon
アクセス数
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
ß
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。