FC2ブログ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

今日考えたこと

兵装1~7の区別をする方法

兵装のプレハブには
・WeaponStatus
・WeaponLauncher
・WeaponPlacementのコンポーネントをアタッチする。
WeaponPlacementにはWeaponNumberを保持させる 。
HLGの設置段階では、「設置モード」を切り替えながらパーツを配置する。
「兵装n設置モード」のときに、インスタンス化した兵装オブジェクトのWeaponPlacement.WeaponNumberを設置モードに応じて設定。
PlayerのRootにアタッチした(はずの)WeaponControllerにWeaponLauncherコンポーネントを取得させる。
これを、WeaponNumberごとに配列に格納する。
表示する弾薬数は、WeaponLauncher.Ammoを配列の数だけ足したものに一致する。

WeaponControllerでは、配列ごとに兵装の状態を管理する。
装填時間や弾薬など、Transform以外は特定の兵装のどの砲塔も共通しているので、上位クラス、
すなわちWeaponControllerに管理させることが可能。
というか、そうしないと大変なことになる。

とすると、HLGでの設置時には、兵装ごとに新しくプレハブをインスタンス化するというより、既にあるものを複製するのが理にかなっているように思われる。
Transform以外共通しているということは、それぞれがコンポーネントを持っている必要はなく、
WeaponControllerが自動的にアタッチするようにすることも可能。
ロードは長くなるが、ゲームの容量は削減できる。

……しかし、市販のゲームではどうするのが一般的なのか不明。
プロジェクトの研究が必要。
スポンサーサイト

コメント

非公開コメント
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。