Keep Coding!

A fearless adventure in knowing what to do when no one’s there telling you what to do.

Unity5.3でオブジェクトの色を変えたかった話。

UnityのC#でオブジェクトの色を変えたかったんですが、ちょっと詰まってしまったので書いておこうかと思います。

公式リファレンスなどから色を変えるには、Color( )を使えば良いらしい。

こんな感じ

gameObject.GetComponent().color = new Color(243, 156, 18, 125);

でもこれだと、変わらないどころか、インスペクターで設定した色から、白になってしまう。。。。

色々調べて見ると、0〜255の値ではなく、0〜1の値にしなければいけないらしい。

参考 GetComponent().color = new Color(1, 0, 0, 1);

gameObject.GetComponent().color = new Color( 243.0f / 255.0f, 156.0f / 255.0f, 18.0f / 255.0f, 125.0f / 255.0f );

それぞれの値に、( / 255.0f )すると解決しました。

おわり

インスペクターパネルとかの設定が0~255とかなので、スクリプトでも同じだと思ってました。。。。