物理マテリアル(Physics Material)の作り方

ここでは物理マテリアル(Physics Material)とその作り方について説明します。


※この記事で使用しているUnityのバージョン:Unity2019.1

物理マテリアル(Physics Material)とは

物理マテリアルは物理演算で摩擦跳ね返りを設定するためのマテリアルです。

では下の2つの動画を見てください。これらは物理マテリアルを何も設定していない時の挙動と、物理マテリアルを設定して跳ね返りの値を高くしたときの挙動を撮影したものです。

物理マテリアルがないときの挙動

物理マテリアルがないときの挙動

物理マテリアルで反発を設定したときの挙動

物理マテリアルで反発を設定したときの挙動

後者は床と衝突した後にバウンドしているのが分かりますね。

このように物理演算で摩擦や跳ね返りを考慮したい場合はゲームオブジェクトに物理マテリアルを設定する必要があります。

物理マテリアルの作り方と設定方法

それでは物理マテリアルの作り方と設定方法を見ていきましょう(※ここでは3Dの場合について説明します)。手順は次の通りです。

  1. 物理マテリアルを作成し、値を変更する
  2. 摩擦や跳ね返りを設定するコライダーに物理マテリアルを設定する

物理マテリアルを作成し、値を変更する

まずは物理マテリアルを作成します。プロジェクトウィンドウの適当なところを右クリックして、「作成」→「物理マテリアル」を選択してください。

そうしたら名前を適当に変更して、値を好きなように変更します。

物理マテリアルの設定項目

項目 機能
Dynamic Friction 移動しているゲームオブジェクトに対する摩擦(通常0~1)
Static Friction 静止しているゲームオブジェクトに対する摩擦(通常0~1)
Bounciness 跳ね返り係数(通常0~1)
Friction Combine 衝突するオブジェクト間の摩擦をどう処理するか
Bounce Combine 衝突するオブジェクト間の跳ね返りをどう処理するか

よく変更するのが「Bounciness」で、この値が大きいほどよく跳ね返ります。

摩擦や跳ね返りを設定するコライダーに物理マテリアルを設定する

設定ができたらコライダーの「マテリアル」のところに物理マテリアルを設定します。

コライダーへの物理マテリアルの設定

これで物理マテリアルを設定することができました。

デフォルトの物理マテリアルを指定する方法

ちなみに、プロジェクト全体で標準の物理マテリアルを指定することができます。やり方はメニューバーの「編集」→「プロジェクト設定」からプロジェクト設定ウィンドウを開き、「物理」の「Default Material」に物理マテリアルを指定するだけです(下図参照)。

デフォルトの物理マテリアルの設定欄

これでよく使う物理マテリアルをいちいちコライダーにつけなくてもよくなります。