3月に開催されたゲーム開発者向けイベント「Game Developers Conference 2023」(以下、GDC 2023)。Adobeによる基調講演「Substance Days 2023」では、Substanceスイート全般の新機能紹介、ロードマップの発表が行われた。
登壇者は、Adobe 3D&Immersive部門開発チームで、元Allegorithmic社長・現Adobe 3D&Immersive部門VPのSebastien Deguy氏、公式YouTubeチュートリアルでもおなじみヘッドエヴァンジェリストのWes McDermott氏、SubstanceエコシステムプロダクトディレクターのJeremie Noguer氏の3名だ。
本稿ではこちらの講演の内容を、前後篇2回に分けて紹介する。
ますく(坂本一樹)
1991年生まれ、多摩美術大学卒。
原型・ゲームモデリングの専門会社で修行を積み、大手ゲーム会社 R&D部門にてAIを活用したアバター生成技術の特許を取得したのち独立。アプリケーションやゲームなどリアルタイム分野のモデリングに特化したCGスタジオ「KATASHIRO+」を設立。CGWORLDの執筆に多く携わり、 ブログやFanboxなどのメディアに力を入れており、3Dモデリングやゲームエンジン、CG原型、3Dスキャンなどの指導を教育機関・個人へ行なっている。制作依頼、企業への技術顧問、教育機関・個人指導について、お気軽にお問い合わせください
X(Twitter):@mask_3dcg
■「Substance Days 2023」で発表された新機能
「Substance Days 2023」ではSubstance以外のツールも含めて、大量の新機能が発表された。ここ最近のSubstance関連のアップデート内容があまりにも濃いため、まずは今回、紹介する新機能群を図にまとめていこう。
1. 新パイプラインへの移行
まずはSubstanceのみならず、業界全体を通しての大きなながれとなっている、USDフォーマットやMaterialXへの統合関連の情報から見ていこう。
新しいパイプライン
- USDパイプラインへの移行
3Dフォーマットの統一化への動き
- MaterialXへの統合
USDに使用されるILMのMaterialXへの統合
- AdobeとAutodesk共通規格化へ
どこでも読める真のユニバーサルマテリアルモデルを目指したMaterialXグラフの共同開発
- Omniverseとの連携例
SubstanceマテリアルをNVIDIA Omniverseに用いた制作事例
- USD新パイプラインの紹介
- Substance Automation Tool kit2
USD内のシーンをバッチ処理で自動編集可能に
世界的に有名なスタジオや各種ソフトウェアメーカーが手を取り合って次世代のデファクトスタンダードフォーマットを確立するため、大きな動きをつくっていることがわかる。
2. 各ソフトの新機能
次に、Substance 3Dシリーズの新機能を紹介していく。
Sampler
- 3D Capture
フォトグラメトリー新機能群
- ペイントワープ機能
ブラシストロークによる直線化、湾曲化
- マテリアルスーパーレゾリューション
AIによる高解像度化(超解像)4倍までの高解像度化が可能
- Image to Material v2「Carbon」
画像から質感付きの(タイリング)マテリアルを生成するAI「Carbon」をリニューアル
- AIによるデライティング
Carbonの新機能ので写真のライティング効果を打ち消し、アルベドマップを生成する
Modeler
- 3D Modeler
SDFモデラの開発。USDフォーマットへの対応
- 新規デシメーションシステム
新たなポリゴン削減のためのデシメーション機能を搭載
- STLファイルのサポート
CADデータの取り込みが可能に
- Quest Pro、PicoVR対応
HMDのサポートを拡充
- レイトレーシングビューポート
ビューポートのレイトレーシング対応
- エクスプロードビュー
パーツ同士が重なり合わないようなパーツの展開表示モードを追加
- サーフェスディティールの追加
Substanceマテリアルのペイント機能並びに、プロシージャルな凹凸追加機能
- AIアシスト・キットバッシュ
人がつくったブロックアウトを基に、AIが適した3Dパーツを提案してくれる機能
Designer
- ポータルノード
ノードのワープ機能。念願の脱スパゲッティノードが実現
- ループ処理への対応
反復処理への対応。位置や形状を少しずつ変えながら重ねることが可能に
- パストレーシングノード
テクスチャ中にバウンスやブリーディングが再現可能に
- カーブノード
シェイプからカーブを抽出し、配列に使用できるノード
- 異方性エフェクト処理
新機能のループ処理を応用し、油彩フィルタのような効果を実現
- SDFノード
SDFオブジェクトを自由に配置しハイトマップとして出力可能に。散布マップなどに応用可
- ジオメトリグラフの廃止
プロシージャルモデルの生成機能を廃止し、マテリアル生成に専念する決断
Painter
- 新しいベイクモード
ハイポリ、ローポリ、ケージを見ながらベイク可能な新しいベイクモードを搭載
- 自動適応型ベイクゲージ
自動でケージメッシュを生成する新機能(鋭意開発中)
- カーブツール
Adobe Illustratorと同じUIで3Dモデル上にカーブを描ける機能
- Pythonレイヤースタック対応
近日公開予定のPythonによるレイヤー制御機能
今回のGDCでは昨今のAIによるシンギュラリティの影響もあってか、非常に多くの新機能が紹介された。では以下から新しいパイプラインへの移行について、そしてSampler・Designer・Painterそれぞれの新機能を詳細に解説していく。
■新しいパイプラインへの移行
USDパイプラインへの移行
まず取り上げられたのはUSDファイルフォーマットへの移行だ。昨年よりSubstance主要スイートの全てでUSDファイルフォーマットの入出力がサポートされるようになった。
USDはPixarが開発したオープンソースの3Dシーン記述フォーマットで、メッシュやマテリアル、ライトなどを包括して3Dアプリケーション間で受け渡すことを想定して設計されている。
USDは今後、Substanceエコシステム全体において中核の相互運用ファイルフォーマットになり、GLTF、FBX、CADデータなど、どんなフォーマットも読み込んだのちUSDに変換される。何かを編集したり追加する場合はUSDファイルに対して行い、元データを破壊しないパイプライン間の受け渡しができるようになるという。
例えば、今まではモデリングツールからFBXが出力されSubstance 3D Painterに読み込みテクスチャを作成、pngなどの画像データを出力し、ゲームエンジンがメッシュとテクスチャの両方をインポートして利用する、といったながれが主流であった。
それがUSDを中心としたワークフローの場合、モデリングツールからUSDを出力しそのままPainter内でレイヤーのようにマテリアル情報を新しいUSDデータとして追加し、そのままゲームエンジンへもっていくというながれになる。
USDシーンを構成する個々のUSDレイヤーが組み合わさったものをUSDステージと呼ぶ。
USDというソースがありDCCツールからSubstanceスイート、そして最終的なゲームエンジンまでをUSDファイルのまま非破壊で受け渡していくというパイプラインを実現しようとしているのである。
また、アプリケーションのビューポートのアップグレードにも力を入れており、来年以降に更新されていく予定だそうだ。
現在、各アプリはそれぞれ異なるビューポートを使用しており、裏側の技術も異なっているがUSDシーンとレンダラを繋ぐ役目を持ったHydraフレームワークをベースにしたパストレーシングレンダラとラスタライズレンダラ、両方を行うハイブリッドレンダリングのビューポートを開発中でUSD対応のどのアプリケーションでもこのレンダラを使用することができるようになるという。
また、RenderManなどサードパーティのHydra互換ビューポートも使用できるようにする計画である。
MaterialXへの統合
USD規格への対応とともに発表されたのが、USDシーン内部で使われるマテリアルフォーマットのMaterialXへの対応だ。
MaterialXはルーカスフィルムのILM(Industrial Light & Magic)が開発したオープンソースのマテリアルフォーマットで、異なるレンダラ間で同じマテリアルを受け渡しできるように設計されている。
前述のUSDにも対応しておりSubstance系ツールで作成したテクスチャセットやプロシージャルマテリアルであるSBSARマテリアルを最終的にMaterialXのグラフに統合することにより、MaterialXに対応したパイプライン全てに組み込めるようにするという構想のようだ。
AdobeとAutodeskの共通規格の開発
さらにAdobeとAutodeskの技術提携がアナウンスされ、Substanceの全てのアプリで使用しているシェーディングモデルであるAdobe Standard MaterialとAutodeskの主要DCCツールが使用しているAutodesk Standard Surfaceを1つの共通規格に統合するプロジェクトが発表された。
これはオープンソースの規格であり、SubstanceのSBSARも組み込まれた「どこでも読める真のユニバーサルマテリアルモデル」を目指しているという。最終的にはMaterialXグラフとして提供され、対応する多くのツールで読み込めるようになる。
Substanceエコシステムでインポート/エクスポートできるUSDファイルに全てを埋め込むことで、これらの資産をできるだけ多くのアプリケーションと互換性をもたせることが今後の目標だという。
今回発表されたUSDフォーマットに対応した次期統合マテリアルモデルに関しては、まだロードマップとして概要が示されたのみで詳細は明らかにされなかったが、今後の展開が期待されるところだ。
NVIDIA Omniverseを使った制作事例
USDを使ったワークフローの優位性を示すものとして、Unreal Engine製のプロジェクト『End of Summer』の制作事例が公開された。
NVIDIAの提供するコラボレーション・プラットフォームであるOmniverseを使用したUSDパイプラインの構築とリモートで離れたチーム同士による共同作業ワークフローの実証テストが目的である。
『End of Summer』は、Adobe社内のSubstance 3D&I部門の中にあるアート&デベロップメントチームが制作したストップモーション映画風の短編映像作品だ。「アーティスト・アルファ」と呼ばれている32人のアーティストとクリエイターからなるチームが制作にあたり、USDパイプラインを実際に構築し運用テストすることが目的だったという。
「アーティスト・アルファ」チームの目的は、現在開発中のツールやワークフローを実際に使用して魅力的なデモやPOC(概念実証)を作成し、開発チームに対しインスピレーションとフィードバックを与えることだ。ユーザーとして、またアーティストとしてコンテンツを作成する中で得られた情報を開発チームに提供する役割を担っている。
また、ユーザーのためのチュートリアルやトレーニングのためのデモコンテンツの作成、パートナーや顧客が新しいツールを使って確実に成功できるような支援体制を整える役割もある。
USDを活用したパイプライン構築
『End of Summer』ではシーンに配置されたアセットが6,000個あり、うち400個はこのプロジェクトのために作成された。
制作は3つの大陸にまたがる10人のアーティストによって行われた。スタジオLAIKAのストップモーションアニメにインスパイアされた同作を、様々な経験や文化に基づいたアートスタイルで一緒につくり上げていった。
最初に考えたのは、Unreal Engine 5コンテンツ作成にSubstanceツールを使用するための様々なワークフローを検討することだったという。また、Substanceツールセット内のUSDパイプラインの徹底的なテストも同時に行われることとなった。
3Dモデルの作成にはSubstance 3D Modeler、Maya、Blenderなどが使用され、USDファイルとしてSubstance 3D Painterへインポートされた。そこでテクスチャが作成されるとUSDファイルにマテリアルなどのサーフェス情報が追加され、NVIDIA Omniverse内に構築されたUSDステージと呼ばれるシーン内に読み込まれる。
このシーン内で大量のアセットのレイアウトや編集を行うために用意されているのがOmniverse USD Composerと呼ばれるツールセットで、USDレイヤーと呼ばれる個々のアセットやマテリアルをまとめたUSDステージデータを作成する。
最終的にこのUSDステージファイルがUnreal Engine 5にインポートされライティングとレンダリングが行われることになる。
上記画像の左側がOmniverse USD Composer、右側がUnreal Engine 5の最終シーンのスクリーンショット。作業期間中はパンデミック真っただ中で、アーティストは皆それぞれの国の自宅からリモート作業するしかなかったという。
また、アセット作成に使っているツールもバラバラだったがUSDというフォーマットで出力し、全てのアセットのサーフェスをSubstance 3D Painterで作成してから再びUSDとしてOmniverseに取り込むワークフローを構築した。
これによってアーティストは最も使い慣れたツールで作業しつつ、アセットのアセンブリとレイアウトをOmniverse内で共同でリアルタイムに行えるパイプラインを実現できたという。
Substance Automation Toolkit 2.0
続いては、Substanceツールセットのそれぞれについて、最新バージョンで搭載された新機能と今後搭載予定の機能について紹介が行われた。
Substance Automation Toolkitは、テクスチャリングの作業を自動化するためにスタジオに提供したコマンドラインツールのセットだ。
現在開発中の新しいSubstance Automation Toolkit 2.0は、以前からあるコマンドラインやPythonでSubstanceのノード作成やエクスポート動作を自動化するものとは異なり、USDシーン内の編集を自動化することを中心としたものである。
銃のモデルを例にとり、パーツの組み合わせやマテリアルの入れ替えによって何百ものバリエーションを簡単に生成できる様子が紹介された。SBSARをUSDの一部として使用することで、マテリアルを簡単に入れ替えることができる。
バッチ処理でアセットの作成、バリエーションの作成、レンダリング、シーンの作成、シーンへの統合までを一括して自動で行うことができ、ビジュアルを迅速かつ効率的に生成できる。
従来のSubstance Automation Toolkitも消えるわけではなく、並行して共存するようになるようだ。
■Samplerの新機能
3D Capture
Substance 3D Samplerには、2022年末にリリースされたバージョンからフォトグラメトリー機能の「3D Capture」が搭載されている。
それまでのSubstance 3D Samplerは、かつてSubstanceシリーズにあったBitmap2Materialのながれを汲むもので、写真1枚からPBRテクスチャを作成する、または既存のPBRマテリアルをブレンドして新しいマテリアルを作成するのが主な用途だった。
Samplerにフォトグラメトリーが搭載されたことで3Dメッシュそのものを作成し、かつPBRマテリアルも同時に貼られた完成品を出力することが可能になった。
下の画像の右側にある2つの例はSamplerを使ってフォトグラメトリーによって作成したものだ。
基本的なフォトグラメトリーのワークフローは、写真を撮り、Samplerに写真をインポートし、モデルを生成する、というながれだ。Samplerでフォトグラメトリーを行う場合、パラメータはほとんどなく、できる限り簡単に行えるようになっている。
写真をアップロードするだけで自動的にPhotoshopと同じ技術で被写体がマスクされ、背景が除去される。キャプチャしようとしている実際のオブジェクトだけを生成し、その周りにノイズとなるポイントを生成しないようにすることが可能だ。
また、フォトグラメトリーツールの必須機能としてベイクとデシメーションも統合されている。ベイク機能は他のSubstanceのアプリにあるものがSamplerの中に統合された。デシメーションについては独自の高速デシメータを内蔵しており、これについては後篇で紹介するModelerの解説を参照してほしい。
カメラのサポート機能としてはアライメント処理が新しくなり、iPhoneなどで使われているHEICフォーマットの画像ファイルをサポートするようになった。
Substance 3D Samplerのフォトグラメトリー機能については以前、執筆した関連レビュー記事があるため、そちらも参考にしてほしい。
参考記事:Substance Samplerでフォトグラメトリを試す! 【前編】新機能「3D Capture」の使い方を紹介
cgworld.jp/special-feature/202304-substancesampler1.html
上の画像の生地はパリ・オペラ座で使用された衣装をスキャンしたものだ。
Adobeはパリ・オペラ座とパートナーシップを結んでおり、過去数100年もの間に、演劇やオペラで使用された全ての衣装をスキャンしている。この衣装の生地データも公開するという。
ペイントワープ機能
ペイントワープはブラシストロークに従ってマテリアルをゆがませる機能だ。カーブに沿って画像を変形させるのだが、逆に写真では波打っていたりパースがかかっている箇所に線を引くことで、そこを直線化させることもできる。
応用としてタイリングフィルタ機能と併用すれば例えば服の写真の一部をサンプリングしてペイントワープで綺麗な平面にし、生地のタイリングマテリアルを作成することが可能になる。
AIによる超解像
Sampler開発チームは、AIによる素材の超解像にも取り組んでいる。
現在は4倍までの超解像化が可能で、上画像の左側は512pxのjpg画像、中央はAIによる2Kの超解像結果、そして右側が同じく2Kの元画像だ。2K解像度の生成は数秒でできるという。
上記画像は生地の超解像化の例。通常の画像からフルマテリアルの様々なチャンネルに一貫した超解像ディテールを追加することができる。
ノーマルマップはまだ100%の完成度ではないが、画像左の「Low-res」低解像度からつくったものと、中央「Super-rez」を比較すれば、非常に精細かつ綺麗になっているのがわかる。
改良されたマテリアルAI「Carbon」
Samplerのウリでもある画像からのマテリアル化を行うAIが、ほぼゼロから再トレーニングと再構築が行われた「Image to Material v2 Carbon」として搭載される。今までのAIモデルでは多くの背景テクスチャ、レンガ、壁、地面などでは非常にうまくいっていたのだが、布地などは苦手であった。
新バージョンでは布地の凹凸が良好に再現できているのがわかる。
タオル地のモコモコした部分や地面の小石などのボリュームが再現されている。
また、細かいディテール、いわゆる高周波成分が密集した個所はノーマルマップが汚くなりがちだったのだが、ノイズ感が少なく、それでいて情報量のあるマテリアルができている。
過去のバージョンでは画像中の黒いパイプ部分はへこんだ部分として認識され、暗い色は影とみなされ除去されてしまっていた。しかし次期バージョンでは正しい凹凸として認識され、陰色も再現されている。
AIによるハイライトの除去
今回、新たに学習されたAIのCarbonによるもう1つの新機能がデライティングの機能だ。
上の画像はデライティングのサンプル。飽和して白飛びしたハイライトをもったチェリーの写真を、現行のAIでマテリアル化したものが中央、画像を暗くしてもまだ白いハイライトが残っている。右端が新型で処理したもので、鮮やかな色を保ちつつ、ハイライトの除去が行われている。
この機能により、ライティングの影響を打ち消し、アルベドマップに近い状態でディフューズマップをつくることができる。
これらのハイライト除去機能と前述の超解像化を組み合わせることで、1枚の低品質の画像からでも高品質のPBR素材を生成することができるようになる。これらの機能は今後、数ヵ月以内に搭載される予定とのことである。
後篇につづく。
TEXT_KATASHIRO+ けろりん4410/ますく
EDIT_山田桃子 / Momoko Yamada