ゲームオブジェクトを移動しよう! (4/5)
作成:2014-04-19 11:40
更新:2014-04-19 11:40
更新:2014-04-19 11:40
■Vector3について
Vector3やQuaternionというのは、ベクトルデータのように3次元の数量をまとめて扱うために用意されているオブジェクトです。ここで簡単にまとめておきましょう。まずは「Vector3」からです。
「Vector3」というオブジェクトは、positionプロパティに設定されているものです。このVector3は、3次元のベクトルデータを扱うためのオブジェクトで、中に「x」「y」「z」といった3方向の値を示すプロパティが用意されています。このVector3オブジェクトを用意し、positionに設定することで位置を変更することができるようになります。これは以下のように作成します。
下のリスト欄に簡単なサンプルを挙げておきます。これはUpdateが100回呼ばれるごとに位置を初期値に戻しています。実際に試してみると、一定間隔でCubeが初期位置に瞬時に戻されるのがわかるでしょう。
「Vector3」というオブジェクトは、positionプロパティに設定されているものです。このVector3は、3次元のベクトルデータを扱うためのオブジェクトで、中に「x」「y」「z」といった3方向の値を示すプロパティが用意されています。このVector3オブジェクトを用意し、positionに設定することで位置を変更することができるようになります。これは以下のように作成します。
new Vector3( X位置 , Y位置 , Z位置 );3つのパラメータにはfloatの値で位置を指定します。例えば、絶対座標ゼロの位置にゲームオブジェクトを移動させたい場合は、こんな具合に実行します。
ransform.position = new Vector3(0, 0, 0);Vectorオブジェクトは、引数にX軸、Y軸、Z軸の値を指定してnewします。これで、指定した数量をもったVector3オブジェクトが作成されます。このVector3をpositionに設定することで、指定した位置に表示場所を設定することができます。
下のリスト欄に簡単なサンプルを挙げておきます。これはUpdateが100回呼ばれるごとに位置を初期値に戻しています。実際に試してみると、一定間隔でCubeが初期位置に瞬時に戻されるのがわかるでしょう。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
#pragma strict var count = 0; function Start () { } function Update () { transform.Rotate(0.0, 1.0, 0); transform.Translate(-0.1, 0, 0); if (count++ > 100){ transform.position = new Vector3(0, 0, 0); // 元の位置に戻す count = 0; } }
※関連コンテンツ
「JavaScriptではじめるUnityプログラミング入門」に戻る