Unityちゃんトゥーンシェーダーの色をスクリプトで変更

Unityちゃんの3Dモデル本体の各シェーダーでは、material.colorを変更するだけで色が変えられる。
しかし、Unityちゃんトゥーンシェーダーの場合は、一手間必要になる。

【使用バージョン:Unityちゃんトゥーンシェーダー2.0 ver:2.0.7.5】

Unityちゃんトゥーンシェーダーの色をスクリプトで変更

通常設定で使用するコード

以下のように記述すれば設定出来る。


//色を変更する対象のRendererを紐付け。
      public Renderer renderer;

//任意の色。
      Color color = Color.black; 

//"_"も含める。
      renderer.material.SetColor("_BaseColor", color);
      renderer.material.SetColor("_1st_ShadeColor", color);

マテリアルの設定次第では使用するかも知れないコード


//前述のコードに追加する。
//デフォルト設定のマテリアルでは影響が見受けられなかった、シェーダーのプロパティ。
      renderer.material.SetColor("_Color", color);
      renderer.material.SetColor("_2nd_ShadeColor", color);

解説

シェーダーのプロパティを変更しなければ、色の変更は出来ない。
Material.SetColorというメソッドを使用すれば、シェーダーのプロパティの値を変更出来る模様。

「_Color」や、「_2nd_ShadeColor」というプロパティも設定可能。
だが、Unityちゃんトゥーンシェーダーのマテリアル(色のみデフォルトより変更)では、変更しても影響は見受けられなかった。

タイトルとURLをコピーしました