unityでローグライクゲームの作り方!Part4

皆さん、こんにちは!

 

 

part4では

  • Unit移動用の抽象クラス
  • UnitAnimation

の実装を行っていきます。

 

ちなみにチュートリアル動画はこちらです。

Unity Learn
PR

 

環境は
MacOS Catalina:ver 10.15.4
Unity:ver2019.4.3f1

です。

 

 

Player+Enemy動きの作成

抽象クラスの作成(動作用)

script(MovingObject)を作成

 

MovingObjectに下記のコード記述してください

以下解説です。

6行目のabstractをつけると抽象クラスの宣言になります
(詳しくはこちらを参考に)

 

33行目の引数にoutがついているが、
それはその関数内で必ず結果が入る宣言になります。

 

64行目のSmoothMovement関数について

関数は1フレーム内で処理が終了するので、
移動などの処理を行うといきなり目的地に瞬間移動したみたいになってしまう。

なので移動シーンなど、
移動の道中を反映したい場合はコルーチンが最適

yield return の行が処理を一旦停止し
次のフレームから実行を継続する。

 

70行目のsqrMagnitudeはベクトルの二乗を返す。
今回は移動距離の二乗を出している。

 

Vector3.MoveTowardsは移動に使えるメソッド

(現在位置、目的位置、呼び出されるごと(1フレーム)に移動する距離)となっている

 

 

次のページから、
Animationの設定を行っていきます

PR