← 一覧に戻る
議論 Reddit

GDevelopで「ヘビゲーム」のような挙動を実装するヒント

GDevelopで、プレイヤーキャラクターが自身の後方(例: ヘビゲームの体)に接触しないようにする実装は、多くの開発者にとって挑戦的な課題となり得ます。

この開発者は、緑色の四角形をプレイヤー(頭)、黄色の四角形を体の部分と見立て、緑色の四角形が黄色の四角形を通過しないようにする目標を立てました。初期段階では、衝突判定(Collisions)を用いたアプローチを試みましたが、期待通りの結果が得られませんでした。

さらに、プレイヤーキャラクターにビヘイビアを追加するなど、様々な解決策を検討しましたが、これも成功には至りませんでした。この過程で、キャラクターの移動が、GDevelopの標準的な移動システムではなく、直接位置を変更することによって行われていることに気づいたのが、ブレークスルーのきっかけとなりました。

この発見に基づき、開発者は異なるアプローチを採用しました。具体的には、青色の四角形を「ヒットボックス」として利用する方法です。これらの青色の四角形はプレイヤーキャラクター(緑色の四角形)にアタッチされ、キャラクターの周囲に配置されます。

この仕組みは以下の通りです。

  • 青色のヒットボックスのいずれかが、黄色の体部分や赤色の障害物に触れた場合、その方向への移動が無効になります。
  • 例えば、右側の青色ヒットボックスが黄色の部分に触れている場合、右方向キーを押してもキャラクターは右に移動しなくなります。

Day 3 (I think)
Day 3 (I think)

このように、直接的な衝突判定に頼るのではなく、移動方法の特性を理解し、ヒットボックスを応用することで、より柔軟で効果的なゲームロジックを実装できることが示唆されています。このアプローチは、類似のゲームメカニクスをGDevelopで開発する際の参考になるでしょう。

元の情報源を見る →