【Unity】回転するアイテム配置|超簡単!Rotateメソッドの使い方

How-to-use-Rotate-method Unity development

ゲームにおいて変化をもたらすのが「アイテム」です。

まずは、回転するアイテムを配置する方法を解説していきます。

実際に画面操作をしながら理解を深めていただきたく、以下の続きとして解説していきます。
エッセンスだけを知りたい方は、このステップをスキップして本文へお進みください。

【解説画面に沿ってやりたい方】
以下の1記事の内容をベースに解説しますので、事前に実施をお願いします。(必須)

[所要時間:約10分]

▼キーボードからオブジェクトを操作▼

解説画面と全く同じ環境にしたい場合は、追加で以下の3記事を実施お願いします。(任意)

[所要時間:約20分]

▼オブジェクトに色を付ける▼

▼オブジェクトが落ちないように壁を作る▼

▼エディタでパラメータ調整▼

https://takugymnastics.com/u9/

ここまでで、事前準備は完了したと思いますので、早速解説していきましょう。

オブジェクトの配置

アイテムをステージに配置していきます。今回は、よくあるボックスタイプで回転するアイテムを作成していきます。

オブジェクトの追加

アイテムをステージに配置していきます。

Hierarchyウインドウで、[3D Object]>[Cube]をクリックします。

1-Item-add

名前を[Item]として、Transformを以下のように設定します。2-Item-transform

Scriptの追加

ゲームらしくするために、アイテムを回転させます。オブジェクトに効果を与えるのは、Scriptです。

Hierarchyウインドウで、[Item]をクリックしアクティブにします。
そのまま、Inspectorウインドウで、[Add Component]>[New script]を選択し、名前を[ItemRotation]と設定します。

Item-script-add

Scriptの編集

オブジェクトを回転させるためには、時間軸に対してTransformを変更する必要があります。Transfromの回転には、Rotateメソッドを使って、Scriptに変更を加えていきます。

Rotateメソッド
現在の角度から引数を与えた量だけ回転する機能。
渡す引数は、(X、Y、Z)の順番。
+の値は反時計周り、−の値は時計周り。
Projectウインドウの[ItemRotation]をクリックしてVisualStudioで開きます。
そして、public Class名とUpdateクラスを以下のように変更します。
3-Script-Item
変更が完了したら、保存をします。

Scriptの動作確認

Unityエディタに戻ります。

[▶︎]プレイボタンを押して、動作を確認します。

オブジェクトが回転したら、Scriptは完成です。

オブジェクトの複製

アイテム1つではゲームとしては寂しいので、3つに増やします。

こちらの記事と同様に、プレハブ(Prefab)という機能を利用します。

まずは、プレハブ化をします。

Hierarchyウインドウの[Item]をProjectウインドウの空白にドラッグして離します。4-prefab

ここから、複製をしていきます。

Hierarchyウインドウで[Item]を選択した状態で、

  • Win)Ctrl+D
  • Mac)Command+D

を押すと、プレハブが複製されます。5-frefab*2

オブジェクトの移動

複製した2つのオブジェクト[Item(1)]、[Item(2)]は、Sceneビュー上で[Item]と重なって表示されています。各オブジェクトを移動して、適当な位置に配置しましょう。

2通りの方法があります。

  • Transformを変更
  • Sceneギズモをドラッグ

Transformを変更

Hierarchyウインドウで、オブジェクトをそれぞれ選択し、Transformを変更していきます。

解説では以下のように設定しました。
6-Item17-Item2

Sceneギズモをドラッグ

もう一つの方法です。
Sceneギズモをドラッグして直接移動させる方法です。

このままの状態でSceneギズモを移動させてしまうと、PositionのY座標も変化してしまいます。これは、Local座標(オブジェクト固有の座標)になっていることが原因です。

ステージに沿って(PositionのY座標を変化させずに)移動させるためには、Global座標にする必要があります。8-Local

Localをクリックすると、表記がGlobalに変わり、Global座標になります。

この状態でSceneギズモを移動します。9-Global移動ができたら、配置は完了です。お疲れ様でした。

Materialの設定

デフォルトのグレーでは、アイテムとしては味気ないので、色や模様を付けていきましょう。

Materialの追加

ProjectウインドウにMaterialを追加します。

ProjectウインドウのMaterial[PlayMat](Materialなら何でも可)をアクティブにします。

その状態で、

  • Win)Ctrl+D
  • Mac)Command+D

を押すと、Materialが複製されます。(Projectウインドウ下の[+]>[Material]も同様)
名前は、[ItemMat]にします。10-ItemMat

Materialに色・画像を設定

Projectウインドウの[ItemMat]を選択して、Materialに任意の色や画像を設定します。

▼色や画像の設定方法が不安な方はこちらをご参照ください▼

全てのオブジェクトにMaterialを反映

Materialに設定した色や画像をプレハブ化したオブジェクト3つに反映させます。

2通りの方法があります。

  • OpenPrefabの使用
  • 1つに適応して残り2つに拡張

OpenPrefabの使用

Projectウインドウの[Item]を選択して、Inspectorウインドウの[OpenPrefab]をクリックします。10-Openprefab

編集モードに移行します。

色や画像を設定した[ItemMat]をSceneビュー上のオブジェクトにドラッグして離します。11-pict-add

1つに適応したものを反映

もう一つの方法です。

Projectウインドウの色や画像を設定したMaterial[ItemMat]をHierarchyウインドウのプレハブ化したオブジェクト[Item]にドラッグして離します。
12-Applay-all1

これで、[Item]に[ItemMat]が設定されます。
そして、[Item]の設定を[Item(1)]、[Item(2)]にも拡張していきます。

Hierarchyウインドウの[Item]をクリックし、Inspectorウインドウの[Overrides]をクリックし、[Apply All]をクリックします。13-Applay-all2

これで、[Item]に設定したMaterialが[Item(1)]、[Item(2)]にも適応されます。14-Material-add-all

これで、Materialの設定は完了です。
色や模様を追加すると一気にゲーム感が演出できます。

今回は以上になります。お疲れ様でした。

▼ポチッと応援お願いします▼
にほんブログ村 IT技術ブログ Unityへ
にほんブログ村
タイトルとURLをコピーしました