>   >  内なる破壊衝動に従って、美しいものをぶっ壊す! 「豚×京都~UE4でなろう破壊神~」(UE4 VFX Art Drive)
内なる破壊衝動に従って、美しいものをぶっ壊す! 「豚×京都~UE4でなろう破壊神~」(UE4 VFX Art Drive)

内なる破壊衝動に従って、美しいものをぶっ壊す! 「豚×京都~UE4でなろう破壊神~」(UE4 VFX Art Drive)

SNS上で2万いいね近くを獲得した、Unreal Engine 4を使った豚による破壊シーン。ゲームVFXのプロフェッショナルをあつめ、オンライン開催されたUE4 VFX Art Diveだがそのトップバッターとなった「豚×京都」は期待通り視聴者の喝采を浴びた。本記事では、そこで語られたシーン制作の舞台裏をさらに掘り下げて紹介する。

※本記事は月刊「CGWORLD + digital video」vol. 265(2020年9月号)からの転載となります。

TEXT_岸本ひろゆき
EDIT_藤井紀明 / Noriaki Fujii(CGWORLD)、山田桃子 / Momoko Yamada

「豚×京都 ~UE4でなろう破壊神~」

UE4 VFX Art Dive Online 各講演動画&資料集
www.unrealengine.com/ja/blog/epicgamesjapanonlinelearning-06

京都アセット
作者:中村基典氏(@motonak_jp
www.unrealengine.com/marketplace/ja/product/kyoto-alley

UE4における破壊表現と斎藤氏のそこにかける情熱

Unreal Engine 4(以下、UE4)のアートに焦点を当てた勉強会「UE4 Art Dive」の第2回目が、7月5日(日)にオンラインで開催された。制作途中からSNSで話題を呼んでいたのが、Epic Games Japanの斎藤 修氏の豚による破壊シーンだ。本来、斎藤氏は背景テクニカルアーティストであり、VFXというテーマで講演を行うに至ったのにはいくつかの理由があったという。今回のシーン制作には主にUE4とHoudiniが使われており、これは昨年末に開催されたArt Dive第1回目で斎藤氏が発表した「UE4でプロシージャル田植え」と同様だ。ただ、もともと斎藤氏は「田植え」のようにモデリング・レイアウト用途で両ツールを使うことを基本としてきた。「今回VFXというテーマでの登壇ということもあり、いわゆるエフェクトの中でも背景との密接な連携が必要となる破壊表現を題材にしようと考えたんです」(斎藤氏)。

ここで、前職時代に背景チームに所属しながら破壊シーンの作成に関わった経験が活かされたという。具体的には、背景制作・エフェクト制作両方のフローを把握し、またエフェクトチームには背景のフローを意識してもらうという、"お作法の伝達"を根気よく続ける必要があり、その中で破壊シーンにおける背景・エフェクト双方が理解しておくべき落とし穴を経験値として蓄積してきた。今回のArt Diveにおいても、両者の連携の重要性は強く説かれており、特に破壊モデルに対し適切に破壊可能になるよう前準備を行なっておくという点に関しては、講演の序盤1/3ほどを費やして非常に丁寧に語られていた。

「私はもともと破壊表現が好きで両方の技術を習得するに至ったのですが、もし別セクションの方が関わり合って破壊シーンをつくり上げる必要が出たときに、今回の内容がお互いの理解を深めることにつながれば嬉しいです」(斎藤氏)。

<1>適切な結果を得るための「破壊Ready」という概念

ゲーム用に最適化されたモデルと破壊シーン作成における落とし穴

まず最初に取りかかったのは、破壊するためのモデルを用意することだった。準備期間との兼ね合いからUE4マーケットプレイスを利用することにしたが、同サイトで提供されている背景アセットは数多い。今回斎藤氏が求めた条件としては、見た目が美しいだけではなく、ゲーム制作用の最適化度合いが重視された。「当初はそのクオリティの高さからMegascansなどの利用も考えたのですが、実際のゲーム開発現場において発生しがちな問題を再現したかったので、ゲームアセットとして精度の高いモデルを用意する必要がありました。その点、京都アセットはその条件を完璧に満たしてくれました」(斎藤氏)。

京都アセットは本誌259号でも取り上げたとおり、非常にクオリティの高いフォトグラメトリーアセットである。斎藤氏が求めた「破壊Ready」を満たすワークフローを説明するのには最適だった。講演の中でも語られたが、破壊とは本質的に"物理的な挙動"であり、何かにぶつかったり、跳ね返ったり、またぶつかったり、といった一連の動きが物理法則に従って起こる。つまり適切に破壊を行うには、使用されるアセットも物理的に正しい状態である必要がある。その条件としては「モデルが閉じていること」「めり込んでいないこと」の2点を挙げ、両方を満たした状態を斎藤氏は「破壊Ready」と表現した。「破壊Readyとは私の造語ですが、ゲーム開発向けに最適化されたアセットは基本的にはそれを満たさないどころか、真逆の状態であることが多いんです」(斎藤氏)。

破壊Readyに関してはいくつかの具体例と共に語られた。例えば「見えない部分のポリゴンを削る」「見えるところだけを結合して、一体成型にする」といった最適化は一般的に行われるが、これらは結果として形状・構造ともに物理的には正しくないものとなり、破壊シミュレーションの際に問題となってしまう。斎藤氏は今回、それらの対応が簡単なものではないと示すため、Houdini上で実際に行なった「破壊Readyにするための改変」を可視化したが、視聴者からは多くの驚きの声が漏れていた。「重要なのは、これらの最適化は全て丁寧に、工数をかけて行われたものであり、破壊Readyの観点から遠ざかるほど、背景のアセットとしては優秀だという点です」(斎藤氏)。多くの工数をかけて最適化を行なった後、さらにそこから破壊Readyの手間を割くほど無駄なことはない、と伝えるために「破壊は計画的に」という標語が提示され、場はコミカルな空気に占められた。ちなみに、豚モデルはHoudiniユーザーにはお馴染み「Test Geometry : Pig Head」をそのまま使用している。

Houdiniによる破壊Readyの可視化

「モデルが閉じている」「めり込んでいない」という破壊Readyの二大条件をHoudini上で可視化。判定手法としては、Unshared Edgesの検出でモデルの閉じを判定し、VDBとポイントクラウドを用いてめり込み判定を行うHDAを自作している。また、講演では最適化によって破壊Readyでなくなる具体例も多く共有された

モデルをパーツごとに並べ、破壊Readyの可視化を行なっている様子。赤色は破壊Readyではない

最適化によって破壊Readyでなくなる具体例

破壊Readyでないモデルを用いたシミュレーション

破壊Readyモデルでのシミュレーション。破壊Readyでないモデルは、物理的に正しくないためシミュレーションを行うと爆発してしまう。モデルの事前準備の大切さがよくわかる結果となっている

UE4インポートによる破壊Readyモデルの破綻

モデル自体が破壊Readyであったとしても、UE4へとインポートすることでモデルが破綻してしまうことがある

UE4へインポート、エクスポートしたことによって破綻してしまったモデル

レイアウトをFBXのトランスフォーム情報から復元。詳しい手法は斎藤氏のTwitterにて解説されている(twitter.com/shiba_zushi/status/1257055294095413248

次ページ:
<2>UE4による様々な破壊実装のワークフロー

特集