DDBY 2022/12/09 14:20

ARPG「海の守人」進捗.7 敵の挙動の作成

敵の作成

左上の数字 = 表示フロアに存在する、ランダムで移動する敵の数
右上の数字 = 表示フロアに存在する、主人公を追尾する敵の数

下記を作成しました。

・ランダムで移動する敵
・主人公を追尾する敵

ランダムで移動する敵

縦横無尽に動く敵を作りました。
何個もプロトタイプを作っては動かしての繰り返し。
試行回数がガンガン増えていく日々でしたが、出来上がった敵の挙動はおおよそ満足しています。

主人公を追尾する敵

主人公を追ってくる敵です。しつこく追ってきます。
実際に動かしてみて、「こいつどっかで見た事あるな?」と思ってたんですが、挙動としてはロマンシングサガ1のフィールドの敵に似てますね。お花とか。壁にあたるとお行儀よく待ってくれる所とかそっくりです。

制作に関して

ランダムに移動する敵、主人公を追尾する敵ともに下記の7つの項目を満たすという条件で作成しています。
1.画面内に複数体動かした時フレームレートは安定しているか
2.挙動がスムーズか
3.移動できないエリアがあったりしないか
4.プレイヤー側に安全地帯が存在するような設計になっていないか
5.プログラムの視認性、可読性は問題無いか
6.応用が効きそうか
7.動作させるうえでオブジェが数十個必要など、許容できない問題を抱えていないか

また、負荷テストを平行して行いました。
動画では画面表示数はA-4の37体(ランダム30、追尾7)ですが、負荷テスト、ゲームとして書き出しテストでは、画面に150体程動かしてフレームレートをチェックしています。
とはいえ、150体とか動かすとフレームレートが爆下がり。15前後になり画面はカクカクでした。
尚、75体くらいだとフレームレート35~40。

フレームレートの60前後を保つなら、敵が35以下だと快適、36~50以下となると処理によっては、55くらいになる時もある安全圏、くらいでしょうか。

ですので、
画面に映る敵が弾を吐いて来る、特殊な事を行うといった、一時的にオブジェ+1になる事を考え、35/2で17なので、17体以内だと快適、25体以内だと安全圏くらいでしょうか。

ここから、敵単体の処理項目を2倍~2.5倍にする事、敵以外のオブジェも配置する事などを考え、フレームレートが安定した状態の1画面内最大配置数数も変化しそうです。

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

月別アーカイブ

限定特典から探す

記事を検索