Unity事例ノート

UNITY

ぶつかったオブジェクトと同じカラーにする

ぶつかった相手のマテリアルを取得して、同じ色に変化させてみましょう。

Cube(プレーヤー)を操作して、青色のオブジェクトに触れると、プレーヤー自身も青色になります。

Colliderが触れたタイミングで、Materialを取得できるようにスクリプトを作ります。

関連記事:
触れた相手のオブジェクト名を取得
OnCollisionEnterとOnTriggerEnterの違い
領域に入っている間と離れたときに発生
オブジェクトから離れるとイベント発生
触れている間はイベントを発生させる
一瞬だけオブジェクトの色を変える
他のマテリアルを変数として取得する
Rayを使ってマテリアルカラーを取得

触れたオブジェクトのマテリアルを取得する

Cubeを2個作成し、一方をBlueCubeに名前変更します。

BlueCubeに青色のマテリアルを付け、横並びに配置します。

Cubeにリジッドボディを追加。

重力を使用のチェックを外し、回転を固定します。

ColorChange.csを作成し、Cubeに追加します。

ColorChange.csを記述します。

ゲームプレイして、Cubeを動かし、青色のCubeにぶつけてみましょう。

Cube(プレーヤー)自身も、青色に変わりました。

関連記事:
触れた相手のオブジェクト名を取得
OnCollisionEnterとOnTriggerEnterの違い
領域に入っている間と離れたときに発生
オブジェクトから離れるとイベント発生
触れている間はイベントを発生させる
一瞬だけオブジェクトの色を変える
他のマテリアルを変数として取得する
Rayを使ってマテリアルカラーを取得