先日、小学生の兄弟がゲームメーカーと契約したニュースが流れていました。 見ていたらunityを使っていました。 すごい!! 本日は、スクリプトを作成する際、オブジェクトの初期位置やジャンプ先の位置を指定する際に用いる「Vectorクラス」について補足しておきます。名前の通りベクトルのことです。
資料はこちら → vectorクラス
p.1 2次元の場合「Vector2」、3次元の場合「Vector3」というクラスがあります。 座標を示す場合とベクトルを示す2通りがあります。
p.2 Vector2のクラスの変数「playerPos」を宣言(箱を用意)して、変数xとyが入ったインスタンスをnewで作成して箱に入れています。xとyに増加分を加算して表示します。 実行結果は(6.0、7.0)と表示されます。 下の左が初期状態、右が加算後の座標です。 オブジェクトにリンクすると、剣を持ったプレイヤが移動して表示されることになります。
p.3 初期状態を「startPos」、エンドを「endPos」として座標で指定した場合、「dir = endPos - startPos 」という演算を実行すると、座標x及びy方向の増減分「dir」及びベクトルの長さを「dir. magnitude」で算出してくれます。
増減分を逐次物理の計算式、例えば放物線で算出して変えてプレイヤを移動させることができるようになります。早くオブジェクトを動かしてみたくなりますね。unityで作成されたプログラムを入手すればゲームはできますが、やはり自分で作成した方が面白いとおもいますよ。