SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Godot Engine 2Dゲーム開発入門

【Godot Engine 2Dゲーム制作 Part1】キャラクターを出して動かそう!

Godot Engine 2Dゲーム開発入門 第3回

  • X ポスト
  • このエントリーをはてなブックマークに追加

プレイヤーを作ろう

シーンの作成

 続いて「Player」シーンを作ります。Godot Engineでは、シーンは画面のことではなく部品の単位です。

 「Player」シーンのルートノードは「CharacterBody2D」を利用します。「CharacterBody2D」の継承構造は次のようになっています。

  • Node
    • CanvasItem
      • Node2D
        • CollisionObject2D
          • PhysicsBody2D
            • CharacterBody2D

 「CollisionObject2D」というのが、互いに衝突して相互干渉するノードのルートになります。この配下には、次のようなノードがあります。

  • CollisionObject2D
    • PhysicsBody2D
      • StaticBody2D
        • AnimatableBody2D
      • CharacterBody2D
      • RigidBody2D
        • PhysicalBone2D
    • Area2D

 「CharacterBody2D」は、プレイヤーキャラクターに特化したノードです。「テンプレート」をオンにしてこのノードにアタッチしたスクリプトを作ると、横スクロールゲームの左右移動とジャンプの処理が書かれた状態でスクリプトが作成されます。

 このノードは、キー操作や衝突時の処理が非常に手軽に行えるように設計されています。

 新しいシーンのルートに「CharacterBody2D」を作り、名前を「Player」に変更します。そして、子ノードを次のように配置します。

Playerシーン
  • Player(CharacterBody2D)
    • AnimatedSprite2D
    • CollisionShape2D

 また、2Dビューで「Player」ノードを選択した状態で、ビュー上部の鍵アイコンの右隣の「選択 Node をグループ化」をクリックします。

 「Ctrl+S」でres://scn/player/player.tscnに保存します。

 「Player」の「インスペクター」ドックの設定は特に変更の必要はありません。他のノードには変更が必要です。

AnimatedSprite2Dの設定

 「AnimatedSprite2D」の「インスペクター」ドックには、次のような変更を加えます。

  • 「AnimatedSprite2D」
    • 「Animation」>「Sprite Frame」で「新規Sprite Frames」を選択
      • 「アニメーション」の「default」を「walk」に変更
      • 「アニメーションフレーム」に、res://res/image/dot/player_1.pngres://res/image/dot/player_2.pngを順番にドロップ
      • 「アニメーション」の「フレームレート」を「3.0」に変更
AnimatedSprite2D
AnimatedSprite2D

CollisionShape2Dの設定

 「CollisionShape2D」の「インスペクター」ドックには、次のような変更を加えます。

  • 「CollisionShape2D」
    • 「Shape」で「新規CapsuleShape2D」を選択
    • キャラクターの画像に合わせてシェイプの形状を調整
CollisionShape2D
CollisionShape2D

次のページ
プレイヤーのスクリプトを書こう

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Godot Engine 2Dゲーム開発入門連載記事一覧

もっと読む

この記事の著者

柳井 政和(ヤナイ マサカズ)

クロノス・クラウン合同会社 代表社員http://crocro.com/オンラインソフトを多数公開。プログラムを書いたり、ゲームを作ったり、記事を執筆したり、マンガを描いたり、小説を書いたりしています。「めもりーくりーなー」でオンラインソフト大賞に入賞。最近は、小説家デビューして小説も書いています(『裏切りのプログラム』他)。面白いことなら何でもOKのさすらいの企画屋です。 

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/21371 2025/06/19 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング