青空の月

Unity, C#, アプリ開発関連について。

Inspectorで表示される変数の文字列に変換する

Unityでは変数名をインスペクター上に表示すると自動的に見やすくしてくれる。

 

小文字と大文字の間にスペースを入れてくれたり、変数名の頭が「_」や「m_」、「k」で始まる場合は自動的に除いてくれる。

f:id:masa795:20131124233620j:plain

 

ObjectNames.NicifyVariableNameは文字列をこのルールに従って変換してくれる。

 

string[] list = { "_myValue1", "m_myValue2", "kMyValue3" };
string output = "";
foreach (string temp in list)
    output += temp +"=>"+ObjectNames.NicifyVariableName(temp) + "\n";
Debug.Log(output);

 

これを実行すると、インスペクトーに表示されるものと同じ値が取得できる。

_myValue1=>My Value 1
m_myValue2=>My Value 2
kMyValue3=>My Value 3

 

正直、利用シーンは思いつかないけど。。。

何かに役立つかな。

 

 

http://docs-jp.unity3d.com/Documentation/ScriptReference/ObjectNames.NicifyVariableName.html