読者です 読者をやめる 読者になる 読者になる

Unityを学ぼう【第4回】

前回を続きまして、
壁やアイテムを作成します*1

壁配置

 1.左辺
  [ツールバー] -> [GameObject] -> [Create Other] -> [Cube]
  名前:West Wall
  設定:Position(-10,0,0) Scale(0.5,2,20.5)
 2.右辺
  [West Wall]を複製(Ctrl+D)する
  名前:East Wall
  設定:Position(10,0,0) Scale(0.5,2,20.5)
 3.上辺
  [West Wall]を複製する
  名前:North Wall
  設定:Position(0,0,10) Scale(20.5,2,0.5)
 4.下辺
  [North Wall]を複製する
  名前:South Wall
  設定:Position(0,0,-10) Scale(20.5,2,0.5)
 5.まとめる
  [ツールバー] -> [GameObject] -> [Create Empty]
  名前:Walls
 6.作成した壁を[Walls]にドラッグ&ドロップ

これで落ちる心配がなくなる

アイテム配置

 1.ボックス作成
  [ツールバー] -> [GameObject] -> [Create Other] -> [Cube]
  名前:PickUp
  設定:Position(0,0.5,0) Rotation(45,45,45) Scale(0.5,0.5,0.5)
 2.リサイズ後、[PickUp]はプレイヤーに隠されてしまった
 f:id:kou_yeung:20131021233059p:plain
 チェックボックスを外せば非表示できます

アイテム回転

回転用スクリプト作成
 1.[PickUp]を選択
 2.[Inspector] -> [Add Component] -> [New Script]
   名前:Rotator
 3.[Create and Add]
 4.[Scripts]フォルダーに移動
スクリプト編集
// Rotator.cs
using UnityEngine;
using System.Collections;

public class Rotator : MonoBehaviour
{
    void Update ()
    {
        // 現在角度 + (new Vector3(15,30,45) * Time.deltaTime) を適用する
        transform.Rotate(new Vector3(15,30,45) * Time.deltaTime);
    }
}

プレハブ作成

プレハブに登録すればシーンを跨いで使用可能になります

 1.[Assets]フォルダーに [Prefabs]フォルダー作成
 2.[Hierarchy] -> [PickUp] を [Prefabs]フォルダーにドラッグ&ドロップ
  f:id:kou_yeung:20131021235501p:plain

これでプレハブ登録完了です

複数アイテム配置

グループ作成
 1.[ツールバー] -> [GameObject] -> [Create Empty]
  名前:PickUps
 2.[PickUp] を [PickUps] にドラッグ&ドロップ
編集しやすいように [Scene View]を設定
 1.トップ視点に変更
  f:id:kou_yeung:20131022000503p:plain
  Gizmo(ギズモ)のY軸を押す
 2.グローバル座標に変更
  f:id:kou_yeung:20131022000543p:plain
複製して配置する

f:id:kou_yeung:20131022001257p:plain
円を配置します

実行&テスト

全部アイテムが回転してることを確認する

次回予告:アイテムと衝突判定

*1:http://unity3d.com/learn/tutorials/projects/roll-a-ball/pickup-objects