お気に入りタイトル/ワード

タイトル/ワード名(記事数)

最近記事を読んだタイトル/ワード

タイトル/ワード名(記事数)

LINEで4Gamerアカウントを登録
[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
特集記事一覧
注目のレビュー
注目のムービー

メディアパートナー

印刷2021/07/23 14:50

イベント

[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 Paradox Interactiveが2020年にリリースした「Crusader Kings III」PC / Xbox One。以下,CK3)は,中世ヨーロッパ世界のおける「家系」のサバイバルを描く初代「Crusader Kings」(2004年)の基本コンセプトを引き継ぎつつ(シリーズを追うにつれ,ゲーム世界はヨーロッパからインドにまで広がったが),驚くほど遊びやすくなったグランドストラテジーだ。
 もちろん本作は,シリーズ従来作に比べて,さまざまな改良と刷新が施されており,グラフィックス面の進歩もまた顕著だ。CKシリーズは登場以来,グラフィックス面に大きな特徴があり,それは「キャラクターのポートレイトが自動生成される」という点だ。

画像集#002のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
画像集#003のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

「Crusader Kings III」公式サイト


 CKシリーズでは(史実がそうであったように)支配者といえども,病気や怪我で簡単に死ぬにもかかわらず,ゲームは数百年規模の歴史を扱うため,例えば,その人物が生まれるはずの家系が数世代前に断絶してしまうといった状況が普通に起こる。そのため,歴史上の人物を史実どおりに再現するのは非常に困難だ。

 CK3はこうした側面を持つ「ポートレイトの自動生成」において,2つの課題に直面した。1つは3Dで表示されるキャラクターを,地域の文化に沿って自動生成しなくてはならないこと。もう1つはそうやって生成されるキャラクターが印象的で覚えやすいものであると同時に「この家の人物だな」という感覚をプレイヤーに与えなければならないことだ。
 この課題に対してParadox Interactiveがどのような対策を講じたのか。「GDC 2021」行われた講演,「Creating a Portrait System Based on DNA for 'Crusader Kings III'」の模様をお届けしたい。

画像集#004のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
画像集#005のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説


顔グラフィックスの単純なランダム生成を超えて


 登壇したのはParadox Development Studioでアートディレクターを務めるFredrik Toll氏と,プログラマのIgor Aleksandrowicz氏。カテゴリとしてはゲームアート関連の講演となるが,ポートレイトの自動生成ということで,アーティストのほかにプログラマも必要になるいう,最近の複雑なゲーム開発の現実を反映した登壇者だといえそうだ。

 CK3はとにかく大規模な作品で,「王朝を管理するゲーム」として見ても,100を超える王国が登場し,キャラクター数は5万人近くにおよぶ。これだけでもPCに大きな負荷がかかるゲームであることが容易に推察できるが,さらにそれぞれのキャラクターの3Dモデルを自動生成して表示するとなればレンダリングの速度も重要になってくる。

 一方,CKシリーズはParadox Interactiveの歴史ストラテジーの中でも,とくに「個人」が緻密に描かれる作品だ。CKシリーズでは王家の人々から宮廷の面々に至るまで,すべてが個人としてデータを有する作品であり,そういった意味でCKシリーズはRPGにも似たところがあり,キャラクターのグラフィックスがプレイヤーに愛着(あるいは嫌悪)を感じさせるものでなくては,ゲームへの没入感を損ないかねない。

画像集#006のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
画像集#007のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 以上のように,家系が重要な意味を持ち,かつ何世代にもわたるドラマが展開される本作では,それぞれのキャラクターが「家族」を感じさせるものでなくてはならないのだ。支配する世界が親から子へ引き継がれていくように,髪の色など親の特徴が,一定の法則に従って子供にも引き継がれねばならない。しかも,隔世遺伝という形で形質が発現することもあり得る。

 また,プレイ中にキャラクターの外見が動的に変化することもある。キャラクターは年を経ることで成長し,老いていくが,怪我や病気がその痕跡を残す場合もあるのだ。
 そのうえで,キャラクターはそれぞれ十分に個性的でなくてはならない。多くのストラテジーゲームにとって,没個性なキャラクターグラフィックスは文字どおり「なくても一緒」(最悪,ないほうがマシ)な存在なので,プレイヤーにとって有益であるためには,グラフィックスでキャラクターを覚えられる必要があるのだ。

画像集#008のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
画像集#009のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 「キャラクターの顔を自動生成する」だけなら,技術的にはそれほど新しくない。キャラクターメイキングのあるRPGやアクションゲームには,いろいろなスライダーでキャラクターの顔や体格をエディットする作品に事欠かないし,そういったゲームでは,「外見をランダムに決定する」ボタンがついていることも珍しくない。
 だが,上記のようにCK3では,ただ「外見をランダムに決定する」だけでは不十分。かくして,技術的かつ美術的な挑戦が始まったのだ。


プログラマ:「遺伝システム」の構築


 CK3のキャラクター造形の基本は,キャラクターメイキングができる作品に見られる,「さまざまな要素(目や耳の形状など)をパラメータで表現する」技法と同じだ。
 本作では,このさまざまなパラメータを「Gene」(遺伝子)として1つの情報セットにまとめるという手法が採用されている。身体を構成するそれぞれのパーツに対して,基本となるバリエーションを指定するインデックスと、それがどのように発現するかを定める「強度」を定義し,このような要素がたくさん集まって,キャラクターのGeneデータを形成する。

画像集#010のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 新たに生まれた子供に対して両親のGeneがどう発現するかは,メンデルの法則をベースとしているという。ただし,それぞれの形質(CK3の場合はGeneデータを構成する各要素)ごとに,メンデルの法則のような顕性,潜性が設定されているわけではない。それをすると複雑になりすぎるからだ。
 その代わりにCK3のキャラクターは,形質ごとにPrimarySecondaryという2つの異なる情報を持ち,実際のグラフィックスに反映されるのはPrimaryだけで,Secondaryはデータとしてのみ保持される。

画像集#011のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 形質情報は両親からもたらされる。したがって,例えば子のPrimaryにどのようなGeneが入るかは,「父のPrimary」「母のPrimary」「父のSecondary」「母のSecondary」の4種類があり得ることになる。
 CK3ではここで,まず子供のPrimaryに父と母いずれのGeneが入るかを2つに1つの確率でランダムに決定する。そのうえで,そのPrimaryに親のPrimaryのGeneが入るのか,あるいはSecondaryのGeneが入るのかを,3:1の確率でランダムに決定する。
 言葉で説明すると分かりにくいが,下のスライドを見てもらえれば理解しやすいはずだ。こうした独自の「遺伝の法則」を構築することで,実際に「一族」を感じさせるグラフィックスの自動生成に成功しているという。

実際の出力例
画像集#012のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
画像集#013のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 本作にはまた,さまざまな民族が登場するが,これは各文化圏に対して,Geneの要素に一定の偏りを与えることで再現される。このために,各民族の特徴を踏まえた根源的なキャラクターが用意された。
 興味深いことに,CK3のキャラクターデータに「民族」というパラメータは存在しないという。ゲームが進むにつれて王家の婚姻が進んでいくが,それぞれの「民族らしさ」はGeneシステムで維持され,そこに「ほかの民族のGene」と混ざることで,相互に影響を与えていくのだ。

画像集#014のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 もちろん,キャラクターの外見を構成するすべての要素がこうしたシステムによって決定されるわけではなく,衣装や頭飾り,傷跡など,遺伝とは無関係の要素もある。このうち衣装や頭飾りは文化,地位,役職などで決定される。また傷跡は,キャラクターに対するパッチとして発行され,遺伝はしない。

 また,CK3は史実をベースにしたタイトルなので,歴史的なキャラクターが登場することもある。このような特殊なキャラクターのグラフィックスを生成するために,スクリプト言語を用いた制御が可能になっており,このスクリプト制御は,キャラクターを個性づけるためのアニメーションパターンを与えるためにも用いられるという。

画像集#015のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説


アーティスト:効率的にキャラクターを個性付ける


 以上がCK3のキャラクターグラフィックス自動生成でプログラマが関与する部分だ。だが,このシステムはプログラムが3Dデータをゼロから作成するわけではなく,参照すべきデータがすでに存在することが前提になっている。ここからが,アートチームの出番というわけだ。

 まずはベースとなるメッシュデータだが,アートディレクターであるToll氏は「このデータの完成度が高くなければ始まらない」と指摘する。なぜなら,最初にできる限り中性的かつ平均的なモデルを作り,それを変形して分化させていくことになるからだ。
 ただしこれは「しっかり作り込めばよい」という話ではない。CK3は大規模なゲームなので,PCに負荷をかけ過ぎるわけにはいかないからだ。CK3の場合,顔が5400ポリゴン,身体もだいたい同じ程度のポリゴン数で作られている。ちなみに本作でキャラクターが常に口を開かないのは,「口を開くと中のデータが必要になるので,常に口を閉じていることにした」ためだという。

画像集#016のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 さて,上記のように5万人近いキャラクターが登場する本作。それぞれに個性を与えるためには大量の「原型モデル」が必要になりそうだが,一方で予算に限度もあり,また,顔の違いだけでキャラクターを見分けてもらうのにも限界がある。
 こうしたことから,アートチームは「グラフィックスが大きく変化する領域」に対してなるべくデータを数多く用意することにしたという。髪型はその典型で,実際,面積としては表情よりも髪のほうが大きいこともある。また髪型は,文化的差異を踏まえる必要性があるものの,性別については男女兼用な部分もあって,男性キャラクターに長髪が適用されたり,女性キャラクターが短髪だったりしても,さほど違和感は発生しない。

画像集#017のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 「面積の大きい要素」と言えば衣服もそうだが,こちらは3つのレイヤーの組み合わせによってバリエーションを生み出している。具体的には「基本となる衣装」「その上の衣装(マントなど)」,そして「頭飾り」の3つだ。
 衣服のベースとなる色を文化的差異に紐づけているのも特徴だろう。これと布の模様(テクスチャ)を組み合わせることで,少ない工数で多数の衣装データを構築できた。
 キャラクターアニメーションやポージングもまたキャラクターの個性を強化するが,こちらも基本パターンの組み合わせとなっている。これらはさほど多くのパターンを必要とせず,かつ組み合わせによるバリエーションの増加に寄与するが,同じ画面で複数のキャラクターが動くとPCの負荷が高くなるため,その点には注意が必要だ。

画像集#018のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
画像集#019のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説


TechとArtの協力体制


 さて,こうしたアーティストとプログラマの協業によって完成したCK3のキャラクターグラフィックス自動生成システムだが,完成度については満足できる反面,制作過程には反省点が多数あるという。

 まずキャラクターの外見を決定する形質の種類だが,最終的に100種類くらいになった。
 つまり,すべてのキャラクターが100項目について2種類のGeneデータを持っているわけで,「こんなに複雑にしなくても,アーティスト側の工夫で解決できることも多かった」と2人は述べた。
 「アートと技術のスタッフ間の連携を強め,この2つの間でイテレーションが進むようにする」というのは,当然そのほうが良いと現場の誰もが思っていても,いざプロジェクトが始まってしまうと,そうした体制を作ったり作り直したりするのは難しい案件だ。

画像集#020のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
初期の試行錯誤の歴史
画像集#021のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
「とりあえずやってみよう」でワークフローを組むと,のちに悲劇が起こることもある

 この「連携の悪さ」の問題は,別の側面でも噴出したという。形質の遺伝にまつわるシステムは,実際に適用する3Dデータがなければ,本当の意味で完成はしない。「ダミーデータではキャラクターの多様性がうまく表現できていたんですが,本番データではダメでした」という2人が語る悪夢は容易に理解できる。
 つまりこのプロジェクトは,プログラマとアーティストが同時に作業する必要のあるものだったのだが,その認識が甘かったため,「プログラムは先に進んでいるが,適用するアートが間に合わない」ということがしばしば起きたという。

予想以上に完成まで時間がかかってしまった
画像集#022のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 上にも書いたように,CK3の遺伝システムはスクリプト言語による形質発現制御も可能だが,これはしばしば,「アーティストがスクリプトを書く」という,微妙に効率のよくないワークフローを産んだ。

 「ツールを作ることによる効率上昇は無視できない」という意見は,「そのツールを作るためにも工数が必要になる」という反論で迎えられる。だが本作のように複雑で,かつ参照すべきグラフィックスデータが多いシステムを構築するためには,かかった時間を考える限り,「ツールを作ったほうがよかった」と彼らは反省する。

 最後に,開発期間と目標設定のミスマッチによる問題も指摘された。
 この遺伝システムで生み出されるキャラクターグラフィックスの品質について,開発開始の段階で「あまりにも現実的すぎるゴール」を設定した結果,いつしか「この程度のクオリティのグラフィックスが自動生成されても,プレイヤーにネガティブな印象しか与えかねない」ところまで落ち込んでしまったという。
 これについてToll氏は「現代はハードウェア,ミドルウェアともに進歩が速く,標準がどんどん上昇するため,最初から,ちょっと高いと思われるところに目標を置くほうが良い」と指摘した。

画像集#023のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説
画像集#024のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

 「困難なチャレンジなので,最初から高望みはしない」というのは合理的な判断だ。しかし,ゲーム産業では,半年前には革新的な技術だったものが,今やゲームエンジンの一部として無料で使えるといった,通称「民主化パンチ」が珍しくない。これを踏まえたとき,困難なチャレンジであればこそ,小さく作って大きく育てるという開発方針は,数年前とは別の意味を持ったように感じられる。

 とはいえ,その一方で,「未だに膨大な手作業の繰り返しでしか解決しない課題」が絡んできたりするのもゲーム開発の恐ろしいところ。このことは,ゲーム開発のワークフローがGDCの大きなテーマになり続けていることが証明していると言えるだろう。

登壇者をして「手作業で頑張るしかない」と言わしめた案件
画像集#025のサムネイル/[GDC 2021]「Crusader Kings III」の“遺伝”システムとキャラクターグラフィックスの自動生成について,技術とアートの両面から解説

「Crusader Kings III」公式サイト

4Gamer「GDC 2021」掲載記事一覧

  • 関連タイトル:

    Crusader Kings III

  • 関連タイトル:

    Crusader Kings III

  • この記事のURL:
4Gamer.net最新情報
プラットフォーム別新着記事
総合新着記事
企画記事
スペシャルコンテンツ
注目記事ランキング
集計:11月21日〜11月22日