プラットフォーマー チュートリアル Part 4:プレイヤーキャラクターをアニメーションさせよう

今回はプレイヤーキャラクターにアニメーションをさせる方法を説明します。

次の内容を含んでいます。

  • オブジェクトにアニメーションを追加する
  • イベントを使ってアニメーションをトリガーする

シリーズ

ステップ 1:プレイヤーにジャンプするアニメーションを追加する

GDevelop ではオブジェクトにアニメーションを追加して、そのアニメーションを(プレイヤーがジャンプしたときのような)何かのきっかけを合図にトリガーすることができます。

「Player」オブジェクトに「Jumping」アニメーションを追加する

「Player」オブジェクトにジャンプするアニメーションを追加する手順は次の通りです。

  1. オブジェクトパネル上で Player オブジェクトを右クリックします。
  2. オブジェクトを編集を選択します。
  3. アニメーションを追加をクリックします。
  4. アニメーションの名前に「Jumping」(ジャンプ)と入力します。
  5. 追加をクリックします。
  6. ファイルを開くダイアログが表示されたら、アセットの「p1_jump.png」を選択します。

これでオブジェクトにアニメーションは追加されましたが、それをトリガーするものが何もないのでまだ再生しない状態です。

「Jumping」アニメーションをトリガーする

「Jumping」アニメーションをトリガーする手順は次の通りです。

  1. イベントエディターに切り替えます。
  2. 新しいイベントを作成します。
  3. 「Player」オブジェクトのジャンプ中である条件を追加します。
  4. 名前でアニメーションを変更するアクションをイベントに追加します。
  5. アニメーションの名前フィールドに「“Jumping”」と入力します。名前を二重引用符でくくるのをお忘れなく(つまり "Jumping" です)。
  6. OKをクリックします。

ここまでの変更によって、ジャンプするアニメーションがトリガーされるようになりました。

ステップ 2:プレイヤーに待機アニメーションを追加する

ジャンプするアニメーションには、ひとつ問題があります。プレイヤーがジャンプし終わっても、リセットされないのです。これを改善するには、プレイヤーが着地したときに「待機」アニメーションをトリガーするようにします。

プレイヤーの接地状態を検出する

GDevelop はプラットフォームの表面を地面として認識します。

オブジェクトの接地状態は、次の手順で検出できます。

  1. 新しいイベントを作成します。
  2. 「Player」オブジェクトのは地面上にいる条件を追加します。

プレイヤーの静止状態を検出する

「待機」アニメーションをトリガーするときは、プレイヤーが静止していないと困ります。次のステップで説明しますが、プレイヤーがもし移動していたら「走り」アニメーションをトリガーすべきなので。

次の手順で、プレイヤーが移動していないことを確認します。

  1. 「Player」オブジェクトのは動いている条件を追加します。
  2. 条件を反転オプションをオンに切り替えます。

条件を反転オプションには、条件のテスト結果を反転させる作用があります。したがっては動いている条件は、今やは動いていない条件に変わったということです。

「Idle」アニメーションをトリガーする

ここまでの条件を両方満たしたときこそ、「待機」アニメーションをトリガーすべきときです。

  1. 名前でアニメーションを変更するアクションを追加します。
  2. アニメーションの名前フィールドに「“Idle”」と入力します。名前を二重引用符でくくるのをお忘れなく(つまり "Idle" です)。

ゲームをプレビューすると、ジャンプした後「Player」オブジェクトが「待機」アニメーションにリセットされるはずです。

ステップ 3:プレイヤーに走るアニメーションを追加する

「Player」オブジェクトに「Running」アニメーションを追加する

  1. 「Player」オブジェクトに「Running」と名付けたアニメーションを追加します。
  2. ファイルを開くダイアログが表示されたら、以下のアセットをすべて選択します。 - p1walk03.png - p1walk04.png - p1walk05.png - p1walk06.png - p1_walk07.png
  3. ループオプションにチェックを入れます。このオプションを有効にすると、アニメーションを(一回だけ再生して停止するのではなく)連続再生するようになります。
  4. 適用をクリックします。

「Running」アニメーションをトリガーする

  1. 新しいイベントを作成します。
  2. 「Player」オブジェクトのは地面上にいる条件を追加します。
  3. 「Player」オブジェクトのは動いている条件を追加します。
  4. 名前でアニメーションを変更するアクションをイベントに追加します。
  5. アニメーションの名前フィールドに「“Running”」と入力します。名前を二重引用符でくくるのをお忘れなく(つまり "Running" です)。
  6. OKをクリックします。

ゲームをプレビューすると、プレイヤーが移動したときに「走り」アニメーションが再生されます。

次のステップ