*

[Unity]コードリファレンス GameObjectを移動する。

公開日: : 最終更新日:2015/06/01 C#, Unity, ソース

移動します。

transformプロパティ

GameObjectのtransformプロパティのpositionにVector3を引き渡します。

Cubeを生成して、ランダムに移動させる。

private GameObject obj = null;

public void Move(){
	obj = 
		(obj == null)
			? GameObject.CreatePrimitive(PrimitiveType.Cube) 
			: obj;

//	以下のようなnull合体演算子はUnity3Dでは駄目っぽい。
//	obj = obj ?? GameObject.CreatePrimitive(PrimitiveType.Cube);

	float x = Random.Range(-3, 3);
	float y = Random.Range(-3, 3);
	float z = Random.Range(-3, 3);
	this.obj.transform.position = new Vector3(x, y, z);
}

実行すると、いろんな所に瞬間移動します。
unity move

Translate()

現在の位置から指定の距離を移動するときに使います。

Objectを作成し、ランダムな方向に移動させる。

ボタンをクリックしたときにTranslate()を呼ぶ処理にすると、瞬間移動と変わらないので、移動用のScriptを作成して、コンポーネントを追加します。

コンポーネント追加の部分。

public class Sample : MonoBehaviour {
	public void CreateAndAddObjectMove(){
		GameObject obj = new GameObject();
		obj.AddComponent<ObjectMove>();
	}
}

移動用スクリプト部分。

using UnityEngine;
using System.Collections;

public class ObjectMove : MonoBehaviour {
	private Vector3 _dir;
	private float _speed;

	// Use this for initialization
	void Start () {
		float x = Random.Range(-3, 3);
		float y = Random.Range(-3, 3);
		gameObject.transform.position = new Vector3(x, y, 0);

		_speed = Random.Range(1, 9) / 10f;
		x = Random.Range(-3, 3);
		y = Random.Range(-3, 3);
		_dir = new Vector3(x, y, 0);
	}
	
	// Update is called once per frame
	void Update () {
		gameObject.transform.Translate(_dir * _speed);
	}
}

実行するとランダムな方向にびゅーんって飛んでいきます。
unity move

ad

関連記事

NuGet visual studio

[C#]C#でPDFファイルを画像(System.Drawing.Image)にする

PDFを画像に PDFファイルを読み込んで、画像にする必要があったんです。 インターネットで調べ

記事を読む

wannabenote

[C#, Excel]最終行を取得する

Excelを触っているのでC#でExcelネタが続きます。 Excelの行数が知りたい Exce

記事を読む

Wannabenote

[Unity]Unity2Dチュートリアル 繰り返しパズルを消す その2

Unityまとめページはこちら。 前回の続き。 準備が出来たので、ソースを変更致しましょ

記事を読む

unity

[Unity]コードリファレンス GameObject生成

Unityをまじめに扱う必要が出てきたので、自分用のリファレンスを書いていきます。 適当にボタ

記事を読む

VisualStudio_

[C#,Excel]visual studio tools for office(VSTO)を利用してExcelのAddInをC#で作る

いい加減VBAが嫌になってきたので、調べたらC#でExcelのアドインが作れるんですね。 というわ

記事を読む

logo

[C#]別のソリューションのクラスをSerializeしたい。参照設定とかいじらずに。

すごいニッチ。 こんなソリューションがあるとして、 こっちのソリューションで

記事を読む

Unity_

[Unity]Unity2Dチュートリアル 直線で3つ同色のパズルを消去する ソース解説

◆全文 using UnityEngine; using System.Collection

記事を読む

Unity_

[Unity]Unity2Dチュートリアル 同じ色で繋がったパズルを消去する

前回の続き。 前回で横に同じ色がある場合は消去できるようになりました。 テトリスとぷよぷよを足し

記事を読む

logo

[C#]AS400をDBに見立ててPCのPGMからODBC接続する

◆前提条件◆ PCにClient Accessがインストールされている。 PCに.NET Fra

記事を読む

unity toggle button label

[Unity]コードリファレンス テキストを表示する。

テキストを表示します。 OnGUI() Unityでテキストを表示する場合は、OnGUI()

記事を読む

ad

Message

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

ad

  •  Auther;わなび

     「オープン系得意だよね? 俺のPCの調子悪いんだけど」という無茶振りから解き放たれゲームエンジニアに。
    C#とかUnityを扱います。
    Twitterフォロー大歓迎です。
    githubアカウント→wannabenote
  • follow us in feedly
PAGE TOP ↑