Unity オブジェクトを動かす Rigidbody編 [v5.5.0f3]
まずはオブジェクトを生成してみましょう
Unityにおいてオブジェクトを作り出すのはとても簡単です
- Hierarchyエリアを右クリック => 3D Objectを選択
-
ゲーム画面に出したいオブジェクトを選択(今回はCube)
これで、立方体が生成されます
ここで作成したCubeのステータスの説明です
UnityではInspectorがオブジェクトのステータスを表示してくれます
①Transform
Position オブジェクトのある位置
Rotation オブジェクトの回転位置
Scale オブジェクトの大きさ
②Cube(Mesh Filter)
Mesh この項目は3Dオブジェクトを生成する上でな くてはならないものになります
簡単に言うとMeshとは、型紙のようなものです
なので、形を変えたければこれをいじれば根本的な形が変わります
③Box Collider
Is Trigger => チェックをつけることにより、物理演算をしなくなる
Material => 物理演算にこちらの好きな機能を追加するために追加する項目(追加しない場合普通の物理演算)
Center => コライダーのローカル座標を指定
Size => コライダーの大きさを指定
④Mesh Renderer
Cast Shadows => ライトによる影の有無
Receive Shadows => 影を表示するか
Motion Vectors => レンダリング時にどれをメインにレンダリングするか
Materials => モデルと一緒にレンダリングするマテリアルのリスト
以下のものは使うときに随時説明します
Rigidbody
前回作ったtestのスクリプトを使用してオブジェクトを動かす処理を書いていきます
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//Rigidbodyの種類別動き
public class test : MonoBehaviour {
Rigidbody RB;//Rigidbodyの入れ物
Vector3 GO;//最初の位置
void Start () {
RB = GetComponent<Rigidbody>();//CubeにアタッチされてるRigidbodyを取得
GO = this.gameObject.transform.position;//最初の位置を取得
}
void Update () {
//元の位置に戻す
if (Input.GetKeyDown(KeyCode.Space))//1で動く
transform.position = GO;
//velocity
//速度の変更する移動
if(Input.GetKeyDown(KeyCode.Alpha1) )//1で動く
RB.velocity = Vector3.forward * 0.1f;
//position
//位置を変更する移動
if (Input.GetKeyDown(KeyCode.Alpha2))//2で動く
RB.position = Vector3.forward * 0.1f;
//----------------AddForece-----------------
//力を加える
if (Input.GetKeyDown(KeyCode.Alpha3))//3で動く
RB.AddForce(Vector3.forward * 0.1f);
//Mode Force = 継続的な力
if (Input.GetKeyDown(KeyCode.Q))//Qで動く
RB.AddForce(Vector3.forward * 0.1f, ForceMode.Force);
//Mode Impulse == 瞬間的な力
if (Input.GetKeyDown(KeyCode.W))//Wで動く
RB.AddForce(Vector3.forward * 0.1f, ForceMode.Impulse);
//Mode VelocityChange == 瞬間的な力(質量無視)
if (Input.GetKeyDown(KeyCode.E))//Eで動く
RB.AddForce(Vector3.forward * 0.1f, ForceMode.VelocityChange);
}
}
まずは、こちらのスクリプトをコピペして動かしてみてください
うごかないと、いう方は
http://ux.getuploader.com/Unity_gameddd/download/1/New+Unity+Project.zip
こちらからダウンロードしていただければ動かせると思います