🦔

Babylon.js:ストラテジーゲームの基礎をつくる

に公開

この記事のスナップショット

プレイ画面

https://playground.babylonjs.com/#R3K93M

ソース

https://github.com/fnamuoo/webgl/blob/main/101

ローカルで動かす場合、上記ソースに加え、別途 git 内の 069/js を追加して ./js に配置してください。

概要

領地をふやす戦略ゲーGalcon2に似てないけど同じようなものを作ってみました。(最初に触れた戦略ゲーがこれだったのでリスペクトを込めて紹介)

2Dではなく3Dなために操作がやや面倒になってます。
また、デバッグに時間がかかってしまい作りこみができず、とりあえず動くようになったところまでです。

やったこと

  • ゲームの仕組みをつくる

    • 選択操作

      • 3D操作のカメラ操作(回転、ズーム、パン)を生かしたく、ドラッグ操作できない
      • クリック2回で操作
    • 戦力を表示させる

      • 球表面にすると一方向、逆さに..
      • 内部にパネルをおいて、さらに billboardMode を設定してこちらを向くように
    • 戦力を移動させる

      • ガイドラインを表示させる
      • 移動表示用のアニメーション
  • 敵アルゴリズムを考える

    • いまはランダムに。毎回さいころをふって、ある確率を超えたら敵側を攻撃

まとめ・雑感

「別の地域(球)を攻めて、占領したときに自領域とする」の動作に手間取り、今回はここまでとなります。

またモチベが高まったら色々拡張したいかな。
3Dを生かして立体地図上に配置したり、球面上(地球)に配置したり考えていただけに少々消化不良。

Discussion