宇宙艦隊ゲームリベンジ:プロトタイプ作成3
前回、艦隊の陣形について検証を行い、ある程度の結果を得られたと思いました。しかし、何度か見直すうちに新たな懸念が生じました。
艦隊が移動中に陣形変更を行うと、個々の艦も移動するため、艦が異常に速く移動しているように見えることです。
また、艦隊が旋回する際、陣形の大きさに応じて端に位置する艦の速度が変わる点も気になります。陣形が小さいほど移動速度が遅くなり、逆に大きい場合は速くなります。
艦隊を一つの塊として扱っているため、どこかでムリが出るのは当然です。しかし、あまり不自然に見えないように、これを緩和する策が必要です。いくつか解決策を検討しました。
個々の艦ごとに処理を分ける
正攻法で行くなら、個々の艦ごとに処理を分けるのが解決策です。
艦隊全体の動きは統一して指揮しつつ、個々の艦は艦隊司令に従って動かします。陣形も同様で、艦隊ごとに「この陣形ではこの艦がここに配置される」といった具合に個々の位置を決定し、その位置に艦を移動させる形です。
ただし、この方法では艦隊の規模が大きくなると、計算量が爆発的に増える恐れがあります。以前の失敗を繰り返すことになるかもしれないので、この方法は避けたいところです。
陣形変更時の挙動
次に、個々の現象が自然に見えるように考えました。
陣形変更時に艦が異常に速く見える原因ですが、「艦隊の移動」と「艦の移動」が合わさっているからです。艦隊自体の移動速度は慣性運動として維持されるため、加減速を行っているのは陣形を変更しようとしている艦のみです。
そのため、見かけ上は艦隊の速度に艦の移動が加わり、非常に速く動いているように見えますが、実際には艦隊内での相対速度は変わっておらず、動いているのは艦自身だけという理屈になります。
ここで、
陣形変更時は艦隊自体の速度を変えない
陣形変更のために動く艦の速度に制限を設ける
というルールを設けることで、不自然さをある程度抑えることができると思います。
旋回時の速度調整
旋回時に、艦が艦隊の中央からどれだけ離れているかによって移動距離が異なります。そこで、
陣形ごとの最大半径を比較し、陣形ごとに旋回速度を調整する
という方法を思いつきました。これによって、旋回中の速度差を自然に見せられるのではないかと考えています。
まとめ
これらの調整によって、陣形変更や陣形自体に感じられる不公平感を多少は軽減できるのではないかと思います。
次回は、今回扱う予定だった艦隊の移動と攻撃について考察する予定です。
この記事が気に入ったらサポートをしてみませんか?