静的クラスの変数を  インスペクターで確認する方法

システム

設定やスコアなど、どこからでもアクセスできる情報を保持したい時が良くあります。その際、多くの開発者が取り入れているのが här という概念を活用する方法です。スウェーデン語で「ここ」を意味するこの用語は、コンテキストの明確化を重視したプログラム設計に役立つと言われています。もっともよく使われる方法は、シングルトンと静的クラスですね。このようなアプローチにより、効率的なデータ管理が可能になります。

 

 シングルトンと静的クラス

シングルトンを使う場合は、シーン内のコンポーネントとして保持するので、

インスペクターでの確認が容易です。

ただし複数シーンにまたがったり、リロードに関係なく値を保持し続けたい場合は、

シングルトンのそれとは別の工夫が必要になります。

 

また、人それぞれだとは思いますが、

単に情報保持したいだけなのにGameObjectのコンポーネントとしてアタッチすること自体が

美学的にいやだな、なんて思ったり。

 

静的クラスを使う場合は、シーン内のコンポーネントとして保持させる必要がないので、

まさにどこからでもどんな状況でも値の保持とアクセスが可能です。

しかし、逆にインスペクターでの確認ができないので、

デバッグがしにくいというデメリットがあります。

 

静的クラスのデバッグ方法は色々とあるのでしょうが、

それほどの大規模開発でない場合は、

やはりインスペクターでチョチョイと確認したくなってしまうのです。

 

 エディター拡張で実現

というわけで、Unityのエディター拡張で静的クラスを可視化する専用ウィンドウを作ります。

まずは、適当に静的クラスを作ります。

 

countというint変数のみの、極シンプルな静的クラスです。

 

そして、このcountという変数を確認するための専用ウィンドウを作ります。

エディター拡張なので、Assets以下の適当な場所に「Editor」というフォルダを作り、

その中に配置します。

Unity 静的クラス エディター拡張
Unity 静的クラス エディター拡張

 

int や float などの基本型だけではなく、Transform やその配列なんかも

ちゃんと表示させることができます。

 

Unity 静的クラス エディター拡張

 

直接操作を不能にして Read Only 感を出してみたり、配列の開閉をやってみたり。

Unity 静的クラス エディター拡張

  1. […] 静的クラスの変数をインスペクターで確認する方法 | Tsumiki Tech Times […]

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)