Unity Editorでグラフを表示するAttribute

UnityとセンサーをUARTでつなげる。センサーの値で動くコンテンツを作るような仕事が多く。 時系列で変化する値を観測するときに、グラフで確認できると捗ります。

今までは別のデバッグ用シーンを作って確認したり、Debug.Logで頑張ったりしていたのですが、
シンプルにEditorのときだけ確認できると便利だなーと思ったので、Attributeでつくってみました。

https://camo.githubusercontent.com/b1b984f1782331e5f1966ef7ba1ba97874f5d7bd/68747470733a2f2f692e6779617a6f2e636f6d2f32623638373439376230386334363434333932333037333039333861313134332e676966

使い方は超絶シンプルで、[Graph(frame_count)]っていうアトリビュートをつけるだけ。

 [Graph(100)]
public int fps;

[Graph(100)]
public float positionX;

[Graph(100)]
public Vector2 positionXY;

[Graph(50)]
public Vector3 position;

[Graph(50)]
public Quaternion rotation;

[Graph(20)]
public Color color;

エディタないだけで、簡単にグラフを表示できるので、センサーの値のデバッグが捗りそう。

ソースコードはこちら

Show graph as unity custom attribute · GitHub

参考

Unity の Editor 拡張でインスペクタにグラフを描画する方法を色々調べてみた - 凹みTips