Epic Games Japan主催のUnreal Engine大型勉強会「UNREAL FEST EXTREME 2022 SUMMER」が、2022年5月23日(月)から5月28日(土)までの日程で開催されました。2日目に行われた講演『「アイドルマスター スターリットシーズン」におけるグラフィックス実装事例と最適化事例』では、Unreal Engine 4でセルアニメ調の表現を行うための工夫やレイトレース対応、最適化処理などについて、エンジンの改造まで踏み込んだ解説が行われました。
TEXT / 田端 秀輝
EDIT / 神山 大輝
『アイドルマスター スターリットシーズン』(以下、本作)は株式会社バンダイナムコエンターテインメントのアイドルプロデュースゲームで、2021年10月にPS4(PS4 Pro、PS5にも対応)と、シリーズ初のPC(Steam)向けに発売されたコンシューマー向けの最新作です。
本作は、『アイドルマスター』シリーズ4ブランドのアイドルたちが事務所の垣根を超えて結集したスペシャルユニット「プロジェクトルミナス」をプロデュースするというゲームで、シリーズの特徴であるステージシーンなどで究極のアイドルビジュアル表現を目指したとのことです。
登壇したのは、本作のプロデューサーを務めたバンダイナムコエンターテインメントの久多良木 勇人氏と、開発を行った株式会社ILCAのテクニカルリードプログラマ、岩本 東治郎氏です。
基本設計
本作の制作には、Unreal Engine(以下、UE)4.24とディファードレンダリング方式が採用されています。
PCでの展開を見据え、PS4をハード性能の最低ラインとして定義しており、PS4では30~60FPS、PCでは24FPS~240FPSの範囲で可変フレームレートを適用しています(24FPSはTVアニメのような映像を想定)。
本作は、「アイドルはセルアニメ調に、背景はリアル調に、というところを突き詰めた昨今の劇場版アニメのような絵作り」(久多良木氏)を目標に開発されました。
これを実現するため、セルルック調で表現されるアイドル本人や衣装、マイクなどの持ち物、ステージ演出で登場する鳩などの動物には「Toon Shading」、リアルな描画が必要な舞台などの3D背景や小物にはUE4標準の「Physically Based」と、実装のための描画方法を切り替えています。
Toon Shadingの実装例
キャラクターなどの描画に使用されているToon Shadingは、基本的にUE4のディファードレンダリングに沿い、Shading Modelとして実装しています。
アイドルと衣装はToonLitというShading Modelを作成し使用しています。また、UE標準のDefault Litとほぼ同じ挙動で動くToonHybridLitを導入することで、衣装の金属部分などのマテリアルが光を反射するようにしています。
Toon ShadingのためのG-Buffer拡張
ディファードレンダリング方式は、描画するシーンを内部的に深度情報、ベースカラー、法線情報などのデータ「G-Buffer」に書き込み、ピクセル毎にライティング計算を行い、その後にそれらを統合した画面を描画するレンダリング方法です。本作では、Toon Shadingを実現させるためにG-Bufferにも用途変更と追加を行っています。
また、G-Bufferの追加に関しては、影になったときに理想とする色を格納するためのG-BufferToonが例として挙げられました。
レンダリングフロー
レンダリングワークフローも紹介されました。レンダリングする際はまず、Materialからベースカラー、影カラー、影のなりやすさ、影のマスク値、高輝度化係数、衣装のサブサーフェス係数、ライティング影響度係数、DepthOffset、Normalなどを計算します。
UE4のBassPassPixcelShaderのフローでは、DEFAULT_LITをベースに、ToonLitの場合はIndirect Lighting、Skylight処理を省いてG-Bufferに書き込みを行います。
続くDeferredLightingのフローでは、ToonLit Shading Modelの適応を行います。
DeferredLightingの処理以降は通常のUE4の描画フローになります。
ToonLitの挙動
上述のフローでレンダリングを行うと、ToonLitの動的ライティングは素直に反映され、リフレクションやLight Shaft、Fog、Atmosphere等も通常通り反映されます。しかし、想定した色になりにくいため、動的ライティング時の色情報に関してはあえて反映せず、マテリアルでBaseColorを出力する時点で色を決めています。
レイトレースへの対応
本作では、PC版のDirectX12環境でリフレクションとシャドウに関してレイトレースが利用可能になっています。UE4のレイトレース機能を利用しているので、ToonLit等のカスタムShadingModelでも基本的にはそのまま恩恵を受けることができたとのことです。
その他のグラフィックスの工夫
トーンマッパ設定
トーンマッパは、r.TonemapperFilm=0 でレガシトーンマッパを使用しています。Film設定(ACESフィルムトーンマッパ)のみの場合は美白がかった肌色の傾向が強かったものの、レガシトーンマッパを使用すると高輝度領域も含めビビットな色傾向になるため、Photoshopなどで表示される色に近いルックになっています。
キャラクタ描画の構成要素とマテリアルの例
本作では顔のほか、体、髪の毛、目、眉、ネイル、不透明衣装、ディザ半透明衣装、半透明衣装、衣装用金属など、用途に応じて挙動が異なるマテリアルが用意されています。講演内では、実際のマテリアルのパラメータ例も紹介されました。
水面の揺れなどを表現する2D用特殊処理
本作で使用されている2D背景は、フローマップを足すことで、水面の揺れなどのゆるやかな動きを付けています。
Cinematic DOFの焦点範囲を調整できるようカスタマイズ
DOF(Depth of Field:被写界深度)は、焦点範囲の調整ができるようCinematic DOFを改造して使用しています。この際、キャラクターの眉毛などの半透明部位だけが浮き出るケースがあったため、フォーカスが外れている場合は半透明の度合を強くして浮いて見えないようにしています。
カメラに映る映像をスクリーン投影するためにFrameBufferのCapture機能を使用
カメラに映る映像をステージのスクリーンに映すシーンは、FrameBufferのCapture機能を追加して実装しています。SceneCapture、FrameGrabberはコンシューマー機で扱うには高コストだったため使用しなかったとのことです。
最適化処理の事例紹介
講演では、最適化作業においてエンジニアリングが必要になった部分が事例ベースで紹介されました。
講演の最後には質疑応答が行われ、「G-Bufferの拡張にあたり参考にした資料はあるか」「アニメ調の表現をする上でレンダリングフローの参考になるサイトはあるか」という質問に対し、インターネットの各種資料を参考にしつつ、UEの最新バージョンに対応するためには「自分でコードを見て解釈する必要がある」と岩本氏が回答しました。
講演動画には動画による動作解説が、スライド資料にはUEでの細かい実装例も掲載されていますので、本記事でUE4でのセルアニメ調の表現に興味を持った方はそちらもご確認ください。
『アイドルマスター』シリーズ 公式サイトUnreal Engine JP 公式YouTubeチャンネル「ゲームと社会をごちゃまぜにして楽しんじゃえ」がモットーの、フリーのコンテンツ開発者。節電ゲーム「#denkimeter」やVRコンテンツ、体験型エンタメの開発をしています。モニター画面の中だけで完結しないゲーム体験が好きで、ここ十数年注目しているのはアイドルマスターです。
関連記事
注目記事ランキング
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
1
2
3
4
5
連載・特集ピックアップ
西川善司が語る“ゲームの仕組み”の記事をまとめました。
Blenderを初めて使う人に向けたチュートリアル記事。モデル制作からUE5へのインポートまで幅広く解説。
アークライトの野澤 邦仁(のざわ くにひと)氏が、ボードゲームの企画から制作・出展方法まで解説。
ゲーム制作の定番ツールやイベント情報をまとめました。
東京ゲームショウ2024で展示された作品のプレイレポートやインタビューをまとめました。
CEDEC2024で行われた講演レポートをまとめました。
BitSummitで展示された作品のプレイレポートをまとめました。
ゲームメーカーズ スクランブル2024で行われた講演のアーカイブ動画・スライドをまとめました。
CEDEC2023で行われた講演レポートをまとめました。
東京ゲームショウ2023で展示された作品のプレイレポートやインタビューをまとめました。
UNREAL FEST 2023で行われた講演レポートをまとめました。
BitSummitで展示された作品のプレイレポートをまとめました。
ゲームメーカーズ スクランブルで行われた講演のアーカイブ動画・スライドをまとめました。
UNREAL FEST 2022で行われた講演レポートやインタビューをまとめました。
CEDEC2022で行われた講演レポートをまとめました。