人柱系CGモデラーのTipsブログ

3DCGモデラーとして活動する管理人の独自解釈に基づく実践重視の解説や備忘録です。

■管理人は硝子のメンタルです。齟齬や誤字にお気づきの際は優しくご指導ご鞭撻のほどお願いいたします。

PBRデジタルフィギュアメイキング

 

 

◼️ PBRデジタルフィギュアメイキング

 

 

 

この度、デジタル原型の師匠であるイクリエの浜島さんのご好意で、同社のマスコットキャラクターであるイクエリエちゃんの一点もののフィギュアをデジタルフィギュアとしてリメイクさせていただきました!

 

 

 

元々の企画は、商業フィギュア製作のためのチェックバックツールの開発に付随するものでしたが、今回担当させていただいたIkueRieChan!の質感再現モデルの再現度も高く、評判も良かったため

 

なんと『CGWORLD』7月号(Vol.227)の掲載記事として、メイキングを掲載していただきました。

 

 

f:id:maskmen2:20170629204555j:plain

 

アプリの開発と、デジタル復刻フィギュアのメイキングについて記事が掲載されています。

 

あまりマニアックなことを書いても主旨からズレますし、完結に説明するためCGワールドの方には技術的な細かい解説を省いた部分も多くございました。

 

そこで、技術寄りの深い部分の話は許可をもらい、本ブログ記事として紹介させてもらえることになりました。

 

さらに、IkueRieChanのデータはMarmosetToolbagを用いArtStatioにアップロードさせていただいたのですが、

 

www.artstation.com

 

『MarmosetToolbag』の優秀作品として、ShowCase、そしてMARMOSET VIEWER HIGHLIGHT | EP. 98に選出されました。

何かに応募したわけではなく、なんの連絡もなく、いきなりMarmoset公式サイトトップに作品とリンクが乗っていたため、ものすごくびっくりしました。

 

なんとも光栄な事です。

 

 

f:id:maskmen2:20170629204507p:plain

 

 

MarmosetToolbagはゲームモデリング分野のプレビュワーで、ゲームCGの分野では最も権威のあるソフトの一つだと思います。その見本作品として選出していただき、公式サイトなどで紹介していただきました。

 

私一人の力ではありませんが、夢であった『CGWORLD』掲載と『MarmosetToolbag ShowCase』選抜が一気に叶い、運を全て使い切ったのではないかと頬をつねりました。

 

 

 

 

 

◼️技術的な取り組み

 

 

 

今回のプロジェクトのメインの部分は、VRのフィギュアビュワーの作成でしたが、そちらは1st-Impactのプログラマーの皆さまが頑張って下さったのでCGWORLD本誌を確認していただくとして、

 

私が語れる部分は、このプロジェクトに参加する上で決めていた技術的な二つの取り組みについてです。

 

一つ目は
『今まで使い道のなかった高密度でデータ量の重いフィギュアの原型データを、ゲームエンジンWebGL上で閲覧できる軽量なモデルにリメイクする』という取り組み

 

二つ目は
『PBRペイント時の見た目と、Web掲載した時の見た目、ゲームエンジンに取り込んだ時の見た目をできるだけ一致させる』取り組みです。


デジタルフィギュアをリアルな質感で再現した後に、様々な環境で同一の質感を維持する必要がありました。

 

 

 

◼️まずは一つ目について言及していきます。

 

 

 

フィギュアの原型データを、ゲームエンジンWebGL向けの軽量なモデルとしてリメイクする取り組みですが、一般的には知られていないフィギュア業界の裏事情と、そのスキをついた大きな狙いがありました。

 

フィギュア原型のデータというのは、数百万ポリゴンの高密度なボクセルデータで構成されており、非常に重いデータのため、3Dプリント用にしか用いられることはなく、

フィギュアのリリース後は副次利用されることなく眠っているデータだからです。

 

絶版になった名作フィギュアの中でもデジタル原型のデータは全て、今もメーカーのサーバーの中に何に活用されることもなく眠っているのです。

 

さらに、フィギュアというのは一般的にラインを作りロット生産を行うため、一度解体した生産ラインを組み直し、もう一度生産をするためにはかなりのコストがかかってしまうし、かつてのロットと全く同じクオリティで生産し直すことは非常に難しいとされています。

 

そこで、無意味に眠っている多くの絶版フィギュアの原型データ達を、デジタルフィギュアとしてリメイクし、副次利用の幅を広げられないか、という意図がありました。

 

フィギュア業界の裏話、というほどではありませんが、将来的にデジタル復刻フィギュアという市場は、誰も損することがない新しい需要になりうるのではないかと考えています。

 

フィギュアメーカーのイクリエ様と、フィギュア復刻のワークフロー構築をさせていただいたのにはこういった意図がありました。

 

PBRワークフローを用い、リアルな質感で、しかもリアルタイムコンテンツとして、軽量ハイディティールなデジタルフィギュアのデータを作成する、

 

そんな業界需要が産まれれば良いなと、切に願います。

 

まずはデジタルフィギュアを販売する流通用のプラットフォームが一般化しなければならないので、先の長い話になると思いますが、

 

PBRやリアルタイム分野でフィギュアをリメイクするという新しい業界需要が産まれ
れば、PBRフローを用いた仕事の幅が日本でも増え技術の進歩につながるはずです。

 

 

 

◼️さて、そんな目論見はさておき、今回のデジタルフィギュア向けPBRワークフローの詳細です

 

 

 

大まかな流れは以下のような感じです。

 

 

① 原型データ ZBrush Fleeform → ② データプレパレーション ZBrush → ③ リトポ 3D-Coat → ④ ベイク → ⑤ PBRペイント → ⑥ Toolbag → ⑦ WebGL -- ⑧ゲームエンジン実装 Unity

 


特に、⑥、⑦、⑧の項目は先ほど言及した二つ目の取り組み

『PBRペイント時の見た目と、Web掲載した時の見た目、ゲームエンジンに取り込んだ時の見た目をできるだけ一致させる』ことにも関連します

 

この問題は、ゲームや映像を作る際に、モデラーが描画エンジンに自分のモデルを持っていく際に起こる問題で、自分が作ったイメージと、実際に使われる際のイメージが全く異なることが多々あります。

 

このことについては⑥以下の項目で触れたいと思います

 

 

 

◼️①今回のスタート地点、つまり上流にあるのは原型データです。

 

 

 

ZBrushとFleeformで作成したボクセルデータになります。

最近はZBrsuhで完結することも増えましたが、こちらのデータはFleeformで分割作業を行っております。

かなり重いデータで、一体のキャラデータで数GBになることも珍しくありません。

分割前のデータが残っていることは少ないです。
今回もほとんど原型データしか残っていない状態から始めました。

 

 

 

◼️②次に、データプレパレーションです。

 

 

 

時に百点を超えることもあるフィギュアパーツを整理しテクスチャ作業の準備をしなければなりません。

 

これをデータの準備、データプレパレーション、略してデータプレップと呼びます。

この問題は、フィギュアだけではなく、プロダクト設計とビジュアライゼーションの間でも同様に必要になる問題です。

 

実はこの準備が一番時間と手間のかかる作業で、このデータプレップでしなければならないことが3つありあります。

 

・不要なフェースの間引き

 

テクスチャ化する時に無駄を省くため、リアルタイムエンジン上で無駄なシャドウを計算させないため、見えない部分のフェースを排除します。髪と顔の間や、パーツ分割の接合部などは、デジタルフィギュアには完全に不要な部分なので、消去します。分割前のデータではこの作業が多少省けることが多いです。

 

・デシメーション

 

重過ぎるボクセルデータは、ある程度間引いておきます。ベイク時に必要なディティールが保てれば良いです。

 

・細かいパーツを要素ごとにグループ分け

これは同一のテクスチャにしたいものを同じグループにしておきます。

 

今回はZBrush上で全てのPreb作業を行いました。

 

ZBrushの場合、Subtoolを分ければ異なるメッシュとして分けることができ、

SubToolの中でも更に細かくPolygroupを分ておけば、セレクショングループ、もしくは異なるマテリアルがアサインされた状態でFBX Exportできます

 

ZPlugin > FBX Exporter から、詳細設定でPolygroup as SSerection / Material を選択することで、後ほど細かな表示非表示がしやすくなり、リトポやUV展開、ベイク、複数のUVセットの管理をしやすくなります。

 

 

 

◼️③リトポ

 

 

 

多くのパーツは、ZBrush上でリトポをかけます。

 

形状の複雑な髪の毛などはDecimationMasterを用、メッシュフローよりもシルエットや溝を怖さいないように自動リトポをします

 

滑らかな局面が求められる部分は、ZRemesherを用います。ZRemesherは、他のどのソフトのリメッシュ機能よりも優秀です

 

指先や脇の下などのかなり入り組んだ場所は、自動リトポでは崩れてしまうことが多いため3D-Coatのリトポルームを用います。

 

f:id:maskmen2:20170629201313p:plain

 

また、次の行程のために、ZBrushですでにリトポが完了しているパーツ群に関してはリトポメッシュとしてインポートしておきます。

 

リトポとデシメーションで約1,660,403頂点(104MB)のデータを→36,409頂点(3.6MB)まで削減することができました。

 

個人的な感覚ですが、iPhone6sのブラウザ上でテクスチャも含めストレスなく見れるのは50MB程度だと思います。

 

 

 

◼️④ベイク

 

 

 

ここで指すベイクとは、形状のベイク、つまり、形状の転写のことです。

 

まずは一般的な話

 

ハイポリと、それに対応するローポリを用意して、二つのメッシュの位置の差分から、形状を再現するためのテクスチャマップを生成します。

 

ZBrushのハイポリメッシュではデータが重すぎて何もできないので、軽量なデータにして、元のデータの見た目を再現するテクスチャマップを作る、ということですね。

 

f:id:maskmen2:20170629220058j:plain

 

こちらはリトポした状態です。ディティールが死んでしまっていますが、

ハイポリメッシュから作成した復元用のテクスチャを適応すると

 

f:id:maskmen2:20170629220259j:plain

 

このように、失われた質感が帰ってきます。

 

この際用いたのは、AO(アンビエントオクルージョン)、ノーマルマップのみです。

 

この他にもテセレーションシェーダーでハイトマップを適応することで、近づいた部分のメッシュが再分割され、元の凹凸がバンプしてくれるような技術もあります。

 

僕のいた海外のチームでは、リアルバンプ、などと呼んでいましたが、ハイトマップを用いたテセレーションによるバンプと呼ぶのが正しいかと思います。

 

3Dペイントのことを考えて、3Dペイント機能のあるSubstancePainterや3D-Coatでベイク処理を行ってしまうのが一番手っ取り早いですがKnaldというベイカーが素晴らしくとてもオススメです。

 

また、最近MarmosetToolbagにもベイカーがつきました。

 

SubstancePainterの機能実装はSubstanceDesignerよりも遅れているのでベイク関連の機能は少し不自由な部分があります。

 

2016〜2017年にかけてのトレンドは、ベイカー機能を様々なソフトが強化し始めたことでしょうか。

 

VR元年なんて言われている年なので、リアルタイムコンテンツへの注目が高まりベイク関連の機能の需要が高まった気がします。

 


ここからは私自身の用法ですが、

 

単純なモデルならクオリティを重視してKnaldを使いますが、大量のパーツがある複雑なモデルの場合3D-Coatのベイク機能を使っています。

 

Knaldはエラーが少なく、ほぼ自動で最適な差分マップを生成してくれますが、ベイク関連のテクスチャ生成機能しかなく、複数UVや複数メッシュの管理にも対応していませんが、

 

3D-Coatは複数UVや複数メッシュの管理にも対応しています。更にUV展開や、ローポリメッシュのスムージンググループの設定にも対応しているため、複雑なことをしようとすると3D-Coat以外のDCCToolの選択肢が今の所ないというのが現状です。

 

例えば髪と顔と目、のように隣接した部分がある場合、通常は別々に読み込み都度ベイクする必要がありますが、

 

3D-Coatの場合は一括で複数のパーツを読み込み、別々のUV、別々のテクスチャとして『名前の一致でベイク』することができます。

 

もう一つ重要なのが『ベイクのスキャンエリア』を目視で確認、調整できることです。

 

f:id:maskmen2:20170629212945p:plain

 

名前の一致でベイクする機能はSubstanceDesignerのベイカーにもある機能ですが、肝心のSubstancePainterには未実装であり、SubstanceDesignerのベイカーはUVを編集することも、モデルを目視で確認しながらベイクスキャンエリアを調整することもできないため、3D-Coatが結局現状一番出番が多くなってしまします。

 

本音を言えば、パーティクルペイントやプロシージャルテクスチャが運用できるSubstance系列のソフトを多用したいのですが、まだまだソフトが若すぎます。

 

 

f:id:maskmen2:20170629200436j:plain

 

画像はベイクのスキャンエリアを目視しながら調整しているところです。

部分的にはみ出しているエリアのみをブラシで修正することもできます。

 

コレに似た目視可能なベイカーとしては、3D-Coat以外にも、Knald、MarmosetToolbag が挙げられます。

 

https://www.knaldtech.com/

 

Substance Painterにこそこのあたりの機能は必須だと思うのですが…

まだまだ開発途中の若いソフトですので、今後に期待です。

 

さらに、3D-Coatはモデリングからテクスチャまで全てを一貫して行えるため、ZBrushSubstanceを足したような万能のモデリングソフトであり、バグなどは多く使い勝手も良くない部分はあるのですが、色々なソフトで足りない痒い所に手が届くツールのため、使用頻度がどうしても増えます。

 

3D-Coatを使わない場合は、Mayaか3dsMaxを用いることになりますが、3D-Coatは3Dペイントやモデリング専門特化のDCCツールなので、MayaMaxよりは機能の利便性に優れているところが多く、MayaやMaxで処理するよりもずっと時間短縮になります。

 

これらのベイクを行うことで、ようやく3Dペイントに入る準備が完了します。

 

 

 

◼️⑤PBRペイント

 

 

 

現在、PBRワークフローの中で3Dペイントを行う場合、Substance、Quixcel、Mari、3D-Coatが代表的なものとして挙げられます

 

この中でも私はSubstanceと3D-Coatを多用していますが、

 

Substance | allegorithmic

 

 

PBR | Digital Sculpting | Retopology | UV-mapping | Texturing software – 3DCoat

 

 

ベイクの時と同様の理由で、複雑なパーツ管理や、複数のUV、テクスチャに対して同一プロジェクト内でペイント、更にモデルの調整も行えるため、複雑なモデルを扱う時は3D-Coatに頼らざる得ない部分があります。

 

3Dペイント機能だけを見ればSubstanceに軍配が上がりますが、痒い所に手が届くのが3D-Coatといった感じです。

 

そういった理由から私は今回のプロジェクトでは3D-Coatを用いましたが、両者ともPBR(ラフネス/メタルネス)(スペキュラ/グロシネス)に対応しているため、ペイントの仕組みも非常に似ており、両者ともスマートマテリアルと呼ばれるPBRマテリアルで着彩することができる仕様になっています。

 

PBRについては過去記事で解説しておりますので、興味があれば読んでいただければと思います。

 

kazukisakamoto.hateblo.jp

 

スマートマテリアルは形状再現用のマップ(ベイク時に作成したノーマル、カバチャー、AOマップ)などを参照し、エッジや影領域、上面にだけホコリを積もらせたりなど、形状に即した影響を設定できるのが特徴です。

 

もちろん、スマートマテリアルを用いずに単色、単体のブラシで各チャンネルにペイントすることも可能です。

 

PBRペイントのコツですが、アナログ塗装の知識がベースになってきます。

フィギュアの場合、エアブラシによる明暗を意識したグラデーションの塗装を行います。

 

光方向と影方向から別の色を吹きかけるようなグラデーションの手法で塗装し、AOによる墨入れや、カバチャーによる塗装の剥げ表現などを施します。

 

アナログのフィギュア塗装の知識が非常に重要になるため『レプリカント』などのフィギュア造形雑誌でフィギュア着彩の勉強をすると非常に参考になります。

 

また、1万円程度でエアブラシとコンプレッサーのセットを購入できるので、実際にアナログでガレージキットなどを自分で塗装してみることも有効なアプローチです。

 

このようなエアブラシ塗装の手法をスマートマテリアルで再現して、

なるべく自動的にパーツのベースカラーを着彩します。

 

スマートマテリアルの根本的な考え方はHSLSと同じような考え方なので、UE4マテリアル読本や、SubstanceDesignerを扱える方なら容易に扱える仕組みです。

 

f:id:maskmen2:20170629213734p:plain

 

こちらが今回の塗装用に作成したスマートマテリアルです。

領域属性の違いでカラーやテクスチャ、凹凸感を変えることが可能です。

 

f:id:maskmen2:20170629213739p:plain

 

各領域に異なる要素をレイヤー方式で載せていくことでスマートマテリアルを作成します。

 

今回ベースに使ったものの多くはカラーちゃんねるのみを弄ったごく単純なグラデーションまてりあるですが、

 

単純なグラデーションとは異なり、形状の凹凸や影領域などに従って形状に従ったグラデーションをかけられるようになっています。

 

次に、デカール、模様の再現です。

模様は実際のデカールのデータを用いるか、写真などから起こします。

 

f:id:maskmen2:20170629201532p:plain

 

 

3Dペイントソフト上で細かい模様を描くのは難しいため、写真撮影や、絵を起こしてPhotoshopなどの外部ツールできちんとしたデカール画像を用意するのがベストです。

 

どの3Dペイントソフトにも共通して、ブラシとして適応する場合と、ステンシル機能を使ってペイントする手法があります。

 

f:id:maskmen2:20170629201606j:plain

上記のキャプチャがステンシル機能を使用しているところ

f:id:maskmen2:20170629201911j:plain

デカールをステンシルし、着物の模様を再現しました。

やはり一手間かけることでモデルのクオリティはぐんと上がりますね。

 

ZBrushのポリペイントでも同様の手法が使えますが、ZBrushの場合ポリペイントのみとなるため、かなりモデルを分割した上に色情報しかペイントすることができません。

 

やはり、3Dペイントソフトでテクスチャに対してPBRマテリアルでUVペイントを行う方がメリットが大きいです。

 

PBRペイントの少し技術的な話をします。

PBRには主に、ラフネス/メタルネス型、スペキュラ/グロシネス型の2種類があります

普段は感覚的に理解しやすいラフネス/メタルネス型のワークフローを使っているのですが、

 

今回は両者2パターンでテクスチャ出力し、

表示先のToolbagやUnity、Sketchfab上で全く同じ見た目を維持できることが実証できました。

 

方式は異なるものの、この二つのタイプのPBRテクスチャ運用法に優劣の差はないことが分かったので、

慣れているタイプの方式を使えば良いかなと思います。


スペキュラの方が嘘をつく余地はあるかと思うので、独自の世界観を構築したい人には向いているかもしれません、とは言っても、PBRのスペキュラ型は、あくまで光の質量保存則に従った物理ベースの仕組みであり、

 

旧時代にマシンパワーを補うために用いられていた擬似的なスペキュラ型とはかなりとこなるという話です。

 

同じ用語なので混乱しますが、スペキュラには旧式とPBRのスペキュラの二種類の運用法があるということなので、誤解なきようにお願いします。

 

光の質量保存則に関しては、Modoというソフトが非常に分かりやすいPBRマテリアルの構造をしているため、

 

amzn.asia

 

こちらのModoBuiginnersという本を読むとよく理解できると思います。

この本、Modoユーザー以外でも読むべき素晴らしい本ですが、プレミア価格で値段が4倍になっています…

 

 

◼️⑥MarmosetToolbag

 

さて、ここからが今回の取り組みの要です。アートディレクター、ゲームモデラー、Look Ddeveloperなど、CGビジュアルに関するに人々にとって一番重要な部分、

 

モデルが完成したら、そのままWebにアップロードしたり、ゲームエンジンに持っていけば良いわけですが、

 

上流から下流まで異なるソフトを跨いでも、モデルの見た目を一致させ続けるには、ノウハウが必要で、

 

従来であれば、3Dペイントソフト側で出力先のソフトに最適化した設定をしてやることが大切でした。


例えば、SubstancePainter、3D-Coat共にUE4向けのシェーダーや出力設定があり、そのシェーダーの見た目でテクスチャ製作を行い、UE4向けの設定で出力すれば良いのですが、その出力データをUnity上で組み直すのは難しいことでした

 

もっと便利に、万能なPBRテクスチャの運用法はないかと考えていた矢先、MarmosetToolbagをHubとして噛ませるという選択肢が現れました。

 

Toolbagは元々モデラーとアートディレクターを繋ぐためのチェックバック用のプレビュワーのような立ち位置でしたが、

 

各種ゲームエンジンへのエクスポート、3DモデルのHTML5WebGL書き出し、ノーマルマップなどの差分マップのベイクなど、ビュワーやリアルタイムレンダラとして以上の機能も強化されつつある、モデラーのためのサポートツールです。

 

Toolbag 3: Real-Time Rendering Suite - Marmoset

 

Toolbag3以降の機能で、Web書き出し、Unity、UnrealEngine向けのエクスポート機能が実装されたため、

 

ToolbagをHubとして用いることで3Dペイント中の見た目をそのままWebやゲームエンジンに持っていけることを期待して、今回はToolbagを中心としたPBRワークフローの構築実験をしてみたのが今回です。

 

やりたかったことは、3DペイントソフトからToolbagをHubとして、Toolbag上で見た目を決定し、Toolabgの見た目をUnity、UE4WebGLに持っていけないかということなのですが、

 

結論としては、WebGL書き出しは両者とも上手くいったため、あとはUnityとUE4側のマテリアルにテクスチャをアサインするときの方法に相互性がないことが問題なわけですが、

 

現状、Unity型かUE4型か3Dペイントソフトから個別に設定し、この2種類の出力データをMarmosetToolbagに持っていくしかないかな、という感じでした…

 

MarmosetToolbagにはUnity、UE4向けのExporterがあるので、一度Toolbag上でテクスチャをアサインして見た目を決めてしまえばExporterを使いUE4にもUnityにも同じ見た目で持っていけるわけですが、

 

とりわけToolbagのUnityExporterがダメダメで、Unityにインポート時にStanderdシェーダーで真っ暗表示になるという大問題が…

 

UE4側はBluePrintで細かい調整が可能なため、何にでも使えるPBRテクスチャの運用法としては、Unityに合わせて出力して、UE4でUnityのStanderdShaderと同じマテリアルを自作するのが一番良いのかと思います


この辺りはToolbagの将来に期待という感じなので、もうしばらく待ちましょう…

 


さて、今回の1番の収穫ですが、3D-CoatからMarmosetToolbagを経由してUnity、WebGL出力で同一の見た目を維持できるワークフローを組んでみたので、今回上手くいった方法を解説します。

 

大まかな手順の流れとしては

MarmosetToolBagや目的のソフトのシェーダー(リフレクション方式)を決める(GGX推奨)

 

f:id:maskmen2:20170629192918j:plain



3Dペイントソフトのシェーダーを一致させる

f:id:maskmen2:20170629192754j:plain



最終的に使いたいソフト向けのテクスチャ出力設定で出力
(Unity出力しておくとUE4や他のソフトでも頑張れば使える)

 

f:id:maskmen2:20170629192831j:plain

 

まず最初に大事なのが、

3Dペイントを開始する時点で、リフレクション設定をToolbagのGGXに設定するということです。

後々のことを考えて、PBRペイントソフトのシェーダーの見た目をまずは揃えておく必要があります。

GGXの他にも、様々な反射設定がありBlinn、PhongなどはMayaの初期値ですし、3D-Coat側の設定にはUE4向けのGGX、Marmoset向けのGGXなどが別個に存在しています。

Substanceの場合はシェーダーを変えられるのですが、UE4に最適化したものは有志の方かが作成し配布していたはずなので、ダウンロードして追加しておかないと、正しい見た目で持っていけないです。

次に

3Dペイントソフト側からのエクスポート設定です。

この辺も便利になってきたため、数回の試行錯誤で済むかもしれません。

SubstanceにはUnity、UE4、Dota2向けのエクスポート設定がありますが、
3D-Coatもかくソフトに向けたExportプロファイル設定が存在します。

ただし、このプロフファイル設定を使用する際に、大元の設定でもどのタイプのテクスチャ運用をするか決めておかなければなりません。

設定箇所が二箇所あるため注意です。

Toolbag、Unityに最適な設定を貼っておきます。

 

 

 

◼️⑦WebGL

 

 

f:id:maskmen2:20170629194336j:plain

 

MarmosetToolbagのMarmosetViewerについての使用レポですが、

Web実装でもFogやレンズフレアなどの一部の機能が行かなかったりと、あと一歩足りない部分はありました。

SketchfabはWebGL上で全てのポストエフェクトが使用できるため、一部のポストエフェクトが無効になってしまうToolbagには進化の余地があると感じました。

ただ、Sketchfab、Toolbag共にジョイントのキーフレームアニメーションに対応しているため、応用の幅はかなり広がったと思います。

MarmosetのPVではエフェクト関連のImporterもついているようでしたが、その辺りは追ってリサーチが必要そうです。

エフェクト関連で詳しい方がいましたらコメントお願いします。

 

また、MarmosetViewerは元々モデラーのためのプレゼンテーションツールとしての側面も強いため、様々なテクスチャアサインの状態を一括して閲覧できるモードもあって良い感じです。

 

f:id:maskmen2:20170629194917j:plain

 

 

 ◼️⑧ゲームエンジン

ゲームエンジン上で、数百点、数千点にものぼるゲームオブジェクト一つ一つに数種類のテクスチャをアサインするのは面倒な作業です。

この辺りはMarmosetToolbagのUnity、UE4出力機能に期待していたのですが、バージョン3.02現在ではなかなか上手くいっていない部分があり、半手動で行う必要があります。

また、前述した通り、UnityとUE4のPBRテクスチャを共通化して運用したい場合は、UE4でUnityのStandardShaderに相当するものを作る必要があると思います


主な違いですが、UE4型のPBRマテリアルでは、RGBチャンネルそれぞれのチャンネルにラフネス/メタルネス、時にAOなどを格納することが多いですが、

UnityデフォルトのStanderdShader場合はアルファチャンネルに格納したりする仕様になっています。

これはUnityの少し使いずらいところで、アルファチャンネルと
カラーチャンネルを同時に視覚的に確認するのが難しいからです

UE4の運用法の場合、これはこの部分の質感再現用のテクスチャだな、と一目で判断できます。

ただ、UnityのStanderdShaderにも良い点があります。ディティールマップの項目が初めから設けられていることです。

この点はUE4でも見習うべきで、多くの人がセカンドマップの実装を面倒だと感じていると思います。

ブループリントで機能実装したものがどこかにあったはずなので、そのうちUE4のUnity型シェーダーの作り方の記事を書くかもしれません。

 

今回のVRアプリ開発はUnityで行ったため、UnityのLookDev機能でPBRマテリアルをIBL環境でチェックします。

 

f:id:maskmen2:20170629193410j:plain

 

ちなみに、ポストエフェクトはPostProcessingStackを使用します。

http://u3d.as/KTp

 

f:id:maskmen2:20170629193610j:plain

 

 

 

最後に、後ろのHDRIイメージが異なるため全く同じ見た目ではありませんが、

ほぼほぼ同じような質感で3D-Coat、Toolbag、WebGL上で表示されている画像を貼って終わりたいと思います。

 

f:id:maskmen2:20170629194159j:plain

 

以上、今回の企画は結果にも繋がり、ノウハウの蓄積もあったため個人的には非常に有意義な取り組みでした。

 

今回の題材についてはまだまだ解決策が出尽くしていない部分だと思います。

 

今後とも各種ソフトのアップデートを待ちつつ、同じ分野に興味がある方々と議論の幅を広げていけたらなと、思います。

 

まだまだソフト側のアップデートを待たなければならない部分はありますが、ゲームエンジンに依存しない万能のワークフローの構築がMarmosetToolbagによって近いうちに実現するのではないかと思いました。

 

 

 

■今回の結果をふまえ、今後取り組んでいきたいことなど

 

 

 

『Sketchfab』のStaffPick選出も昨年のこの時期だったため、残す実績目標は『Pixologic ZBrushCentral TopRaw』だけでしょうか。これを達成すればモデラーとしての個人的な実績目標は全て達成したことになります。

 

今の目標は、いま在籍しているインディーのチームでE3に出場することと、同チームでZBrushCentralのTopRow入を果たし三冠を取ること、

 

北米やアジアなどの海外で行っているCG関連の活動をすべて落ち着かせること、でしょうか…

 

ShowcaseやPick作品選出やTopRowなどは、CGモデラーとして活動をする上で分かりやすい一つの実績です。

 

多少の影響力を得た後に、国内外のCGArtistやCGスタジオつなぐような仕組みを打ち出したいと考えているので、今はもう少しいろいろな人に実力を認めてもらえるように努力し続けるしかないのかな、という想いです。

 

本音としましては、早く引退してインディーのゲームを作りまくりたいんですが…

もう少しあがいてみます。

 

DominanceWarや、Allegolismicのコンテストなど、モデラーの頂点を決める世界大会もありますが、あそこは激戦区なので…、日本人が誰かトップを取る姿を見てみたい気もします。誰かお願いします。

  

もし、私のプライベートなゲーム制作や、海外での活動に興味を持っていただだける方がおりましたら、協力者はいつでも募集しておりますので、お気軽にコンタクトしていただけると有り難いです。

 

僕たちはE3目指してます(遠い目