Roll-a-ball の制作(3) プレイヤーオブジェクトの作成~マテリアルの設定

Unity公式サイトのチュートリアルに沿って、
Roll a ball というサンプルゲームを制作する3回目です。


前回は、Unityエディタのビューに慣れるところまでをやりました。
今回は、プレイヤーオブジェクトの作成と、マテリアルの設定について説明します。

 

Playerオブジェクトの作成

Unityエディタは前回の続きからです。

最初にヒエラルキービューのところで、
前回、3DオブジェクトでPlaneを作ったのと同様に、
今回はSphere(球体)を選択します。

 f:id:Yamakawa-Yoshi:20200816202103p:plain

そうすると、このようにシーンビューに球体が出現します。
続けて、この球体を選択した状態で、インスペクターのところで、
オブジェクト名がSphereになっているので、
Sphere → Player に変更します。
下のTransformより、右の・が縦に3つ並んでいるところをクリックして、
Resetを選択します。 

f:id:Yamakawa-Yoshi:20200816202107j:plain

すると、
ヒエラルキービューに表示されていた名前も、
Sphere → Playerに変更されました。
また、このPlayerオブジェクトの座標位置も原点の 0,0,0 にリセットされました。

 

f:id:Yamakawa-Yoshi:20200816202111p:plain


さて、今のところ球体のPlayerオブジェクトは、平面Groundにちょうど半分だけめり込んでいます。
Playerを上方向に移動しましょう。
垂直上方向を向いている緑色がありますが、これはY軸を表します。
(赤い点線で囲ったところ)
このY軸の矢印にマウスカーソルを合わせて、上方向にドラッグしてください。

 

f:id:Yamakawa-Yoshi:20200816202115p:plain


Playerの球体が垂直上方向に移動しました。
PositionのY座標が、最初の0から、上に移動した分変化しているのが分かると思います。

PositionのYの値を0.5に変更します。 f:id:Yamakawa-Yoshi:20200816202119j:plain


Playerがちょうど地面Groundの上に接する位置に移動しました。
UnityのScaleの単位は、デフォルトでは1が1メートルらしいです。
今PlayerのScaleを見ると、X,Y,Zいずれも1なので、
Playerは直径1メートルの球体ということが分かります。

先ほどまではPlayerが原点にあったので、直径の半分のところで地面にめりこんでしまっていましたが、
上方向(Y軸のプラス方向)に0.5つまり半径の長さの分だけ移動したので、
移動後は、ちょうど地面に接する位置になったというわけです。

 

Lighting(照明)の調整

ゲームシーンのLighting(照明)について見ていきます。
ヒエラルキービューのDirection Lightを選択します。
インスペクターのLightタブより、Colorの色をクリックして、
Direction Lightのカラー選択ポップアップを出します。

f:id:Yamakawa-Yoshi:20200816202121p:plain

カラーピッカーのところでカーソルをドラッグしながら色をいじっていくと、色に応じて、Direction Lightで照らされたPlayerやGroundの色合いが変わっていくのが分かります。

f:id:Yamakawa-Yoshi:20200816202125j:plain

それではRGBそれぞれの値に255を設定します。
これでDirection Lightの色は、白になります。

 

f:id:Yamakawa-Yoshi:20200816202128p:plain

 

マテリアルでオブジェクトの色を変更する

Unityのゲームオブジェクトは、オブジェクト表面の色や質感の情報を管理しているマテリアルというプロパティがあります。
このマテリアルを変更することで、ゲームオブジェクトのカラーを任意に変更できます。 


最初にプロジェクトビューのAssetsの下に、
新しく Materials という名前でフォルダーを作ります。

f:id:Yamakawa-Yoshi:20200816202131p:plain

新しく作ったMaterialsフォルダーを選択した状態で、
右クリック → Create → Material を選択します。

 

f:id:Yamakawa-Yoshi:20200816202135j:plain


Assets > Materials の下に、
New Material という名前で新規にマテリアルが作られます。

このマテリアルの名前を、
New Material → Background に変更します。

f:id:Yamakawa-Yoshi:20200816202140p:plain


Backgroundマテリアルを選択した状態で、インスペクターを確認します。


Backgroundマテリアルのインスペクターより、
Surface Inputs セクション
Base Map の色選択のところをクリックして、カラーピッカーを表示させます。

f:id:Yamakawa-Yoshi:20200816202144j:plain


カラーピッカーのRGBのところに、それぞれ130の値を設定します。
また、Surface InputセクションのSmoothnessの値を0.25に変更します。

 

f:id:Yamakawa-Yoshi:20200816202148j:plain


ここまでで設定したBackgroundマテリアルをドラッグし、
シーンビューのGroundオブジェクトにドラッグアンドドロップして持っていきます。
(操作が失敗したら、Ctrl + Z で直前の操作に戻せます)

f:id:Yamakawa-Yoshi:20200816202151j:plain

これにより、設定したBackgroundマテリアルが、

Groundオブジェクトに適用されます。


同様に、次はPlayerオブジェクトに割り当てるマテリアルを作成します。
Materialsフォルダの下に、新しいマテリアルを作成し、マテリアルの名前をPlayerに変更します。

f:id:Yamakawa-Yoshi:20200816202154j:plain

Playerマテリアルを選択した状態でインスペクターを確認します。
Base Mapより、カラーピッカーのRGBのところに、
それぞれ0,220,225の値を設定します。

また、Surface Inputセクションの
Smoothnessの値を0.75に変更します。

 

f:id:Yamakawa-Yoshi:20200816202157j:plain


設定したPlayerマテリアルをドラッグし、
シーンビューのPlayerオブジェクトにドラッグアンドドロップして持っていきます。

f:id:Yamakawa-Yoshi:20200816202201j:plain


Direction Lightの角度を調整します。
ヒエラルキービューからDirection Lightを選択し、
インスペクターのTransformセクションより、
Rotationの値を、
X:50,Y:50,Z:0
にそれぞれ変更します。

f:id:Yamakawa-Yoshi:20200816202204p:plain


以上、今回は
プレイヤーオブジェクトの作成、およびマテリアルを設定して、
オブジェクトに適用するところまでを説明しました。

次回はいよいよ、Roll a Ballのゲーム機能部分の作成に入ります。

#UNITY#ゲーム制作