4.9K Views
November 14, 24
スライド概要
本講演へのアンケートにご協力をお願いします:
https://docs.google.com/forms/d/e/1FAIpQLSeeq3O53ausrSoHXHluKskiabOlucYgXBajAhVQ2IbL__Km7Q/viewform
Youtube URL:https://youtu.be/NdrzSU_lQqo
講演内容:
『戦場のフーガ』から始まり、『戦場のフーガ2』『戦場のフーガ3』と約7年間UEで制作続けております。
その開発の中で得たナンバリングタイトルでの知見やマルチプラットフォームで上手くいったこと、いかなかったこと、小~中規模ならではの作り方、割り切り方をお話させて頂きます。
講演者:
渡邉 慎吾(制作プロデューサー(株式会社サイバーコネクトツー))
サイバーコネクトツーについてはこちら:
https://www.cc2.co.jp/
UNREAL FEST 2024 TOKYO 公式サイト:
https://unrealengine.jp/unrealfest/2024/
Unreal Engineを開発・提供しているエピック ゲームズ ジャパンによる公式アカウントです。 勉強会や配信などで行った講演資料を公開しています。 公式サイトはこちら https://www.unrealengine.com/ja/
『戦場のフーガ』 UEでの小~中規模 ナンバリングタイトル制作事例 株式会社サイバーコネクトツー 渡邉 慎吾
自己紹介 わたなべ しんご 渡邉 慎吾 株式会社サイバーコネクトツー 制作プロデューサー 2018年 ゲームプログラマーとしてキャリアをスタート 2021年 サイバーコネクトツーにゲームプログラマーとして入社 『戦場のフーガ』ではDLC、体験版の作製に携わる 『戦場のフーガ2』ではメインプログラマーを担当 『戦場のフーガ3』では制作プロデューサーに就任 ©CyberConnect2 Co., Ltd. 2
目次 1. 『戦場のフーガ』シリーズとは 2. ナンバリングタイトルならではの作り方 3. 『戦場のフーガ』の制作方法 4. 『戦場のフーガ』シリーズのプラットフォーム(PF)対応 5. エンジンアップデート対応 6. CascadeアセットのNiagaraへの移行 7. 売り伸ばし戦略 8. まとめ 9. 告知 ©CyberConnect2 Co., Ltd. 3
『戦場のフーガ』シリーズとは ©CyberConnect2 Co., Ltd. 4
©CyberConnect2 Co., Ltd. 5
『戦場のフーガ』とは PS4 PS5 Switch STEAM Epic Games Store Xbox One Xbox X|S 戦場のフーガ 戦場のフーガ2 戦場のフーガ3 (以下『フーガ1』) (以下『フーガ2』) (以下『フーガ3』) 発売日 2021年7月29日 発売日 2023年5月11日 鋭意制作中 ©CyberConnect2 Co., Ltd. 6
『戦場のフーガ』シリーズ開発の軌跡 2019年から『フーガ1』の開発を始め、約6年開発を実施 『フーガ1』 発売後3年間で13回アップデートを実施 『フーガ2』 発売後1年間で7回アップデートを実施 ©CyberConnect2 Co., Ltd. 7
UnrealEngineのバージョン遷移 半年に一度のペースでエンジン更新を実施 ©CyberConnect2 Co., Ltd. 8
開発期間・予算・体制 開発期間 予算 体制 『戦場のフーガ』シリーズは 1作品あたり2年を目途に 開発~発売を計画 1本あたりの予算は 約2億円を目標 制作人数は平均15名前後、 ピーク時は25名前後 『フーガ1』は初めて という事もあり3年かかった 実際は3億円弱使っている こちらは計画通りできた。 職種内訳の比率イメージ 【ART5:PG3:GD2】 ©CyberConnect2 Co., Ltd. 9
発売後の継続的なアップデート 『フーガ1』『フーガ2』がより快適に、便利になるように対応 施設内ファストトラベル 戦術モードマイセット SNS上でいただいたユーザーのお声に対応したアップデートを実施 ©CyberConnect2 Co., Ltd. 10
主な対応内容 『フーガ2』で調整したものを『フーガ1』にも反映 最終的には通常のバグ修正に加え33件のクオリティアップを実施 ©CyberConnect2 Co., Ltd. 11
『戦場のフーガ3』 現在、最新作『戦場のフーガ3』を鋭意制作中。 『フーガ1』『フーガ2』の開発ノウハウや『フーガ3』で エンジンアップデートを行った際に対応した事等を お話しいたします。 ©CyberConnect2 Co., Ltd. 12
ナンバリングタイトルならではの作り方 ©CyberConnect2 Co., Ltd. 13
ナンバリングタイトルを制作するうえで 『フーガ1』を制作する段階で既に3部作の構想があった 特に下記3点を意識 1. 『フーガ1』で『フーガ2』『フーガ3』の遊びの基盤を作る 2. 継続的にアップデートする事を念頭において作る 3. エンジン改造も必要最小限のものに(エンジンアップデート時のコストカット) ©CyberConnect2 Co., Ltd. 14
実際は… 『フーガ1』をベースに 『フーガ2』をベースに 『フーガ2』を作成 『フーガ3』を作成 前作の各種データ(ARTリソース、データテーブル等)を 最新作の内容に差し替えていき、β等のタイミングで不要なアセットを削除 『フーガ2』は『フーガ1』のリソース、ゲームシステムを流用したため 開発費を2/3に抑えられた ©CyberConnect2 Co., Ltd. 15
流用するうえで意識したこと 流用する為に根幹のバトルシステム、ルート進行、インターミッションの仕様は変更なし。 あくまで既存機能の延長で新規性を出す 例) 『フーガ2』 バトル ルート進行 インターミッション ブレイクチャンス、ボム 飛行船マス、通貨 ソウルキャノン祈り じいちゃんのクイズ部屋 ©CyberConnect2 Co., Ltd. 16
ナンバリングタイトルを制作するうえでのまとめ ● 流用可能な物は最大限流用してコストカット ● 保守が大変になる仕様追加は要注意 ゲームの遊びの基盤がしっかりしていれば、 タイトル毎の新規性は出せる ©CyberConnect2 Co., Ltd. 17
『戦場のフーガ』の制作方法 ©CyberConnect2 Co., Ltd. 18
『戦場のフーガ』でこだわった実装 バトル画面は画面分割とUMGで作成。 ©CyberConnect2 Co., Ltd. 19
カメラアニメーションについて 画面分割はAPlayerControllerを生成して行う。 バトル転換時の左から右に流れるカメラアニメーション UGameViewportClient::LayoutPlayers()をオーバーライドし、 ULocalPlayerのOrigin、Sizeを調整変更して表現 ©CyberConnect2 Co., Ltd. 20
『戦場のフーガ』でのUI実装 ターゲットアイコンや敵ステータスはUMGで実装。 ProjectWorldToScreenを使用して予め仕込んでおいた ターゲットアイコン、敵ステータス用のソケットの位置にUIを表示。 ©CyberConnect2 Co., Ltd. 21
『戦場のフーガ』での背景制作事例 背景は書割で作成。 ©CyberConnect2 Co., Ltd. 22
コストカットのために行った工夫 ● 全て3Dで作成するのではなく書割で作成する事で背景制作工数、 ポリゴン数等を削減。 ● 戦車、カメラ、背景の位置が一定で、プレイヤーが自由にカメラを動か せない仕様にする。 ● 雨の表現も板ポリ+マテリアル、シーケンサー等で行う。 ● 戦車、背景は全て当たり判定はOFF。 ©CyberConnect2 Co., Ltd. 23
デイリービルド ビルドマシンはタイトル毎に1台で運用 日中はDLL、テキスト更新 夜は全PF、全リージョンのパッケージを作成 ● Jenkinsを使用しており、全てJenkinsから実行。 ● 『フーガ』シリーズは1本あたり2~4GBとパッケージサイズが軽量の為、 1晩、1台でパッケージ作成が可能。 ©CyberConnect2 Co., Ltd. 24
『戦場のフーガ』のPF対応 ©CyberConnect2 Co., Ltd. 25
『戦場のフーガ』のPF対応 対応プラットフォーム PS4 PS5 Switch STEAM Epic Games Store Xbox One Xbox X|S 各プラットフォーム向けに行った対応 ● セーブデータ移行 ● ショップ遷移 ● DLC ©CyberConnect2 Co., Ltd. ● 実績 ● アクティビティー ● サインイン… 26
UEの機能で実装出来たもの ● OnlineSubsystemAchievementを使用。 実績 ● 各PFで実績データを用意、実装側は WriteAchievementsの引数の調整を各PF毎に行う。 アクティビティー ©CyberConnect2 Co., Ltd. ● IOnlineGameActivityを使用。 27
UE機能を拡張したもの、無かったもの ● ショップジャンプは『フーガ2』から『フーガ1』といった他タイトルへの遷 拡張したもの 移や表示する商品ページを変更出来るように拡張。 IOnlineExternalUI::ShowStoreUIをベースに拡張 ● セーブデータ引継ぎは他タイトル、他ハードのセーブデータを参照 出来る様に拡張。 ● DLCは全て自前で実装。 無かったもの ● ゲームを作成する上で必要な機能は揃っている。 プロジェクト固有の対応をする際はエンジン改造が必要になる印象。 ©CyberConnect2 Co., Ltd. 28
エンジンアップデート対応 ©CyberConnect2 Co., Ltd. 29
エンジンアップデート履歴 『フーガ』シリーズのエンジンバージョン リリース済みのタイトルはアップデートはせず、 1→2→3 で開発中にエンジンアップデートを行う。 ©CyberConnect2 Co., Ltd. 30
いざUE5へ 『フーガ3』でUE5対応 ● 『フーガ2』をベースに4.27 → 5.0 → 5.4.3 までアップデート。 ● エンジン修正が少なかった事もありUE5へのアップデートはそこまで問題にはならなかった。 ● ビルドエラーの修正やアセットの修正など細々とした対応で完了。 プログラマ側としてはできるだけ最新の状態に合わせるように ● Visual Studioのバージョン ● 新規Warning対処はチケット化して対応 ©CyberConnect2 Co., Ltd. 31
アップデート後の問題 ・・がCascadeをどうするかの問題があった ● 5.0 にアップデートする分にはCascadeで良いが、リリースまで継続的にアップデート する予定があった。 ● Cascadeでは乗り切れないことが予想された。 Niagaraに移行 ● アセットの移行と呼び出し方(ソースコード)の変更のふたつの対応 ● ソースコードは容易に完了。 ©CyberConnect2 Co., Ltd. 32
アセットのNiagaraへの移行 エフェクト類は全般Cascadeで作成していたため、 CascadeToNiagaraConverterPlugin を使用して移行。 ・・・がCascadeと同じような見た目にならなかったものがあった。 そのため、プラグインの修正を行う。 ©CyberConnect2 Co., Ltd. 33
CascadeアセットのNiagaraへの移行 ©CyberConnect2 Co., Ltd. 34
CascadeアセットのNiagaraへの移行 これらの表示不具合を修正。 PG(プラグイン)側で修正出来る物、ART側で手動修正が必要な物が出てきた。 ©CyberConnect2 Co., Ltd. 35
WorldOffsetが意図した位置に表示されない WorldOffsetが意図した位置にならず想定の場所からずれる問題が発生。 音符のエフェクトが 表示されていない ©CyberConnect2 Co., Ltd. パーティクルが胸ではなく 足元に表示されている 36
WorldOffset調査結果 対応内容 ● NiagaraStackGraphUtilitiesAdapterLibraryにWorldOffsetを 考慮した座標を取得する為の関数を追加。 ● CascadeWorldOffsetToNiagara.pyの CascadeWorldOffsetConverterの中で、パーティクルのロケーション 情報を取得している箇所を追加した関数に置き換え。 ©CyberConnect2 Co., Ltd. 37
WorldOffset問題解決 音符のエフェクトが 表示されている ©CyberConnect2 Co., Ltd. パーティクルが正しい位置 (胸)に表示されている 38
SphereLocationでの問題 SphereLocationでVelocityScaleとOffsetが同時に使われていると Cascadeと挙動が異なる問題が発生。 ビームを溜めるエフェクトが 四方八方に霧散して しまっている ©CyberConnect2 Co., Ltd. 39
SphereLocation調査結果 対応内容 ● CascadeLocationSphereToNiagara.pyの中で SphereLocationのOffsetがVelocityに影響しないように修正。 ● また、Velocityが設定されていて親が回転しても方向が保たれる ように修正。 ©CyberConnect2 Co., Ltd. 40
SphereLocation問題解決 ビームを溜めるエフェクトが 正しく(中心へ)表示されている ©CyberConnect2 Co., Ltd. 41
『戦場のフーガ』シリーズの売り伸ばし戦略 ©CyberConnect2 Co., Ltd. 42
売り伸ばし戦略 1. リリース後も継続してアップデートを行う 2. 積極的にSALEに参加する 『フーガ2』を作りながら『1』のアップデートを繰り返し実施 ©CyberConnect2 Co., Ltd. 43
結果 発売から一定期間経った今も勢い落ちる事無く売り伸ばしが出来ている。 『フーガ2』を作りながら『フーガ1』のアップデートを繰り返し、『フーガ1』の売り伸ばしを図る。 ©CyberConnect2 Co., Ltd. 44
初のメジャーアップデート1.10 2021年11月『フーガ1』1.10 初のメジャーバージョンアップデートを実施 ● ドイツ語、韓国語といった対応言語追加 顧客層の拡大 ● 特にユーザーからのご意見が多かった、戦車の移動速度を上げる ターボモードを実装 ● “ユーザーの声をしっかり開発が聞いてくれている”という信頼関係が築けた ● レビュー欄に書かれているマイナスなご意見に対して、修正されている旨を 記載してくださるユーザーもいた ©CyberConnect2 Co., Ltd. 45
約1年の集大成 1.40&1.41 2022年5月『フーガ1』1.40 ● 予定していた全てのDLCを発売 2022年7月『フーガ1』1.41 ● 本編1~3章が遊べる体験版を配信 ● 公表していた言語に全て対応 ユーザーとしてはこれで最後と思ってもお かしくないアップデートだったと思われる。 ©CyberConnect2 Co., Ltd. 体験版のセーブデータを製品版に引き 継げる仕様にし、体験版 製品版購 入の流れをつくる。 46
『フーガ2』につなげる 1.50 2023年3月『フーガ1』1.50 超大型アップデート ● 2022年7月のアップデートから8ヶ月後(『フーガ2』発売2ヶ月前)に 超大型アップデート ● ユーザーからご指摘をいただきつつも『フーガ2』との平行開発では対応 が難しかった、『フーガ2』で行った改善を全て『フーガ1』へ移植。 同時に『フーガ1』にセールを打つことで “『フーガ2』を遊ぶ前に『フーガ1』を遊んでおこう”という導線をつくる。 ©CyberConnect2 Co., Ltd. 47
メディアミックス展開もフル活用 ● サイバーコネクトツーのアイデンティティとしてゲームだけ終わらせず、 コミカライズ化や完全設定資料集・サントラ等のグッズ化など、メディアミックス展開を実施。 ● 書籍やサントラはSteam、Epic Game Storeでも販売(当社として初事例) ©CyberConnect2 Co., Ltd. 48
まとめ ©CyberConnect2 Co., Ltd. 49
まとめ 1. UEを使う事でナンバリングタイトルという継続的な開発において、 ネックになる最新技術、最新PF対応をエンジン側で行ってもらえる 続編の初期コストが下がる! 結果、ゲーム側の進化の為にコストが使える 2.ナンバリングタイトルは継続的な利益を生み出してくる会社の柱、 長くユーザーに愛されるIPになる可能性をもっている だからこそユーザーとの信頼関係が大切! アップデートでユーザーの要望に応え続ける ©CyberConnect2 Co., Ltd. 50
まとめ 本講演が皆様がナンバリングタイトルを 作られる際の参考になれば幸いです。 ©CyberConnect2 Co., Ltd. 51
告知 ©CyberConnect2 Co., Ltd. 52
告知 『戦場のフーガ 鋼鉄のメロディ』 電子書籍8巻配信中! 定価:440円(税込) 著者:原作/サイバーコネクトツー 漫画:足立たかふみ 氏 代表作:『D・Mファイター焔』『メタルファイト ベイブレード』 『バレエヒーロー・ファンタジー ダンの冒険』『アニマギア』など。 ©CyberConnect2 Co., Ltd. 53
告知 電子書籍『戦場のフーガ 鋼鉄のメロディ』 1~3巻が無料!4~5巻50%OFF!新刊発売記念フェアを実施中! そのほか関連書籍もセール中!ご利用の電子書籍ストアでぜひご確認ください。 ©CyberConnect2 Co., Ltd. 54
告知 PlayStation Store、My Nintendo Storeにて 『戦場のフーガ』の関連商品が50%OFF! 『戦場のフーガ2』関連商品が40%OFF! この機会にぜひご購入ください。 ©CyberConnect2 Co., Ltd. 55
質疑応答 おことわり ・特定のPFに依存したご質問はお受けする事が出来ません。 ・NDAに関わるご質問はお受けする事が出来ません。 ©CyberConnect2 Co., Ltd. 56
アンケートへのご協力をよろしくお願いします https://docs.google.com/forms/d/e/1FAIpQLSeeq3O53ausrSoHXHluKskia bOlucYgXBajAhVQ2IbL__Km7Q/viewform ©CyberConnect2 Co., Ltd. 57