Texture

参考資料

Snappers Wrinkles Designer

しわをすばやく作成できるMayaの新しいツールのビデオプレビューらしい。

Snappers Wrinkles Designer(Snappers Character Designer Suiteの一部)を使って、高品質でリアルなシワマップのフルセットを数分で作成するための新しいモデリングコンセプト(パラメータ化されたカーブモデリング)をご紹介します。トポロジーやUVレイアウトに関係なく、あらゆるモデルと互換性があります。

Tips

ZBrushで作成したディスプレイスメントマップをmodoで使用する方法

ZBrushで作成したディスプレイスメントマップをmodoで使用する方法について書いてみます。使用バージョンはmodo 14.0、ZBrush 2020.1.4です。

 

ZBrushでディスプレイスメントマップを作成する方法

ディスプレイスメントマップ作成 オプション

ZBrushからディスプレイスメントマップを出力する場合の設定です。「スケール」1、「中央値」0.5であることが重要です。それ以外のオプションは必要に応じて設定します。

 

 

アダプティブ

アダプティブはポリゴンの領域計算が正確になります。しかし、このオプションは信頼性が低く大きな解像度では不要という情報を見かけます。使用するデータに合わせて見比べるのがよさそうです。

 

DPSubPix

DPSubPixはサブピクセルの精度で、値を上げると滑らかなピクセルになります。4が望ましいですが値を高くするとレンダリング時間が長くなります。高解像度のメッシュ(16mil以上)や、マップサイズが2048以下と小さい場合は2でも十分なようです。

中央値

ディスプレイスメントの押し出し基準となる値です。16bit画像はマイナス値を持つことが出来ないので、中央値がディスプレイスメントしないグレー色、凸が白色、凹を黒色のピクセルとして出力されます。

 

垂直反転

垂直反転はUVのV軸を反転します。modoからGozを使用してZBrushにメッシュを転送した場合、UVはmodoのUV方向と一致します。objやfbx形式でメッシュをインポートした場合はUVが「垂直反転」します。必要に応じて使用します。

 

マップを作成してエクスポート

「ディスプレイスメントマップ作成」で作成されるマップは16bitフロート固定です。16bitでも十分な結果が得られますが、32bitのマップが必要な場合は「マップを作成してエクスポート」を使用します。

 

32Bit

32bitをONにすると32bitフロート画像でファイル出力することができます。OFFの場合は16bit画像として出力します。32bit出力する場合は「3チャンネル」「32Bit」ONにして「マップを作成してエクスポート」を実行します。

「3チャンネル」がOFFの場合はグレースケールのファイルとして出力されるのですが正常です。しかし、「マップを作成してエクスポート」を使用した場合は以下の問題があります。

  • tif形式を使用した場合、壊れたtifが出力されます。
  • exr形式を使用した場合、Rチャンネルにマップを書き込むためmodoに読み込んだとき赤い画像になってしまいディスプレイスメントとして使用することができません。

マルチマップエクスポーター」はtifのグレースケール出力が正常に動作してるので、基本的にマップ作成はマルチマップエクスポーターを使用するのがいいと思います。UDIMを使用したモデルのマップを作成するときもマルチマップエクスポーターを使用します。

 

modoのメッシュにディスプレイスメントマップを適用する場合のマップ作成

modoで作成したメッシュをZBrushでスカルプトしてマップを作成し、そのマップをmodoのメッシュに適用する場合はモーフターゲットを使用した状態でディスプレイスメントマップを作成する必要があります。

ZBrushからGoZでmodoに転送したメッシュを使用する場合、この作業は必要ありません。

 

モーフターゲットを使用したマップの作成方法

  1. モーフターゲットサブパレットで「MT格納」をクリック
  2. 「インポート」を使用して元のメッシュを読み込みます
  3. 「切り替え」でモーフターゲットの状態になってることを確認して「ディスプレイスメントマップ作成」を行います

 

ZBrushで「ディバイド」したりスカルプトした場合、低SubDivのメッシュも変形します。このため元のメッシュにディスプレイスメントマップを設定する場合は、元のメッシュとスカルプトで変形したメッシュとの差をなくす必要があります。

モーフターゲットを使用してマップを作成することで、元のメッシュで正しい変形結果を得られるディスプレイスメントマップを作成することができます。

 

オリジナルメッシュ
立方体と平面

 

スカルプトしたメッシュ SubDiv7
立方体のみスカルプトで凹凸を作成

 

スカルプトしたメッシュの SubDiv1
スカルプトの影響で低SubDiv時のメッシュが変形している

 

モーフターゲットを使用しない状態で作成したディスプレイスメントマップ。立方体の角が膨らんでしまいます。

 

モーフターゲットを使用した状態で作成したディスプレイスメントマップ。ZBrushと同じ形状でレンダリングできます。

 

 

modoでディスプレイスメントマップを設定する方法

ZBrushから出力したディスプレイスメントマップをmodoで使用する方法です。modoでディスプレイスメントマップを正しくレンダリングするにはいくつか設定が必要です。

  • 画像レイヤーとマテリアルを設定
  • サブディビジョンをCatmull-Clarkにする
  • UV補間をリニアにする

 

画像レイヤーとマテリアル設定

画像が16bitと32bitで設定方法が異なります。

 

16bit画像

画像レイヤーで「下限値」「上限値」にZBrushのディスプレイスメントサブパレットの「強度」×100を設定し、マテリアルの「ディスプレイスメント距離」を500 mmに設定します。これはGoZを使用したときに設定される方法と同じです。

デフォルトのレンダリング設定だとポリゴンが荒いので、レンダー設定の「ディスプレイスメント評価間隔」に小さい値を設定します。「ディスプレイスメント評価間隔」は小さいほど良好な結果になりますが、レンダリング時間が長くなります。

ZBrushのディスプレイスメントサブパレットの「強度」の値。「強度」はZBrushが作成する画像ファイル名にも追加されます。

 

32bit画像

画像レイヤーの「下限値」-100%、「上限値」100%に設定して、「ディスプレイスメント距離」を500 mmに設定します。ただし、マップに保存されている値が1より大きい場合、デフォルトではディスプレイスメントがクランプされてしまいます。

 

このような場合はチャンネルビューポートで「source High」の値を高く設定します。「source High」はプロパティに表示されないチャンネルなので、ちょっと不親切ですね。

 

ディスプレイスメント距離の「500 mm」という値は、modoのレンダラーが使用するディスプレイスメントの基準値と思われます。

3Dソフトはソフト内で使用する基準となる大きさがあり、modoの場合は1 mが基準になっています。ディスプレイスメントマップには何センチのように絶対的な距離が保存されているわけではないので、ディスプレイスメントの押し出し方向 ±500 mm の基準値+マップの値でディスプレイスメントされます。

 

 

サブディビジョンをCatmull-Clarkにする

modoには2種類のサブディビジョンが搭載されています。modoオリジナルのサブディビジョン(Tab)と、Catmull-Clarkサブディビジョン(Shift+Tab)です。
ZBrushの「ディバイド」はCatmull-Clarkサブディビジョンを使用しているので、ZBrushからディスプレイスメントマップを出力してmodoで使用する場合は、Catmull-Clarkサブディビジョンを使用すると形状が一致します。

下の画像はmdooのCatmull-Clarkサブディビジョン(白色)と、ZBrushでディバイドしたメッシュ(赤色)を同じ位置に重ねてレンダリングしたものです。形状が一致してるのが確認できます。

まだら模様に見えるのはレンダラーの特性によるものと思われます。ポリゴンが同じ位置にある場合どちらのポリゴンを前面にレンダリングするか優先順位がポリゴンごとに変わっているため、まだら模様が発生しています。Dキーを使用して細分化したメッシュや、ジオメトリキャッシュを比較すると頂点位置が一致していることが確認できます。

 

MayaのArnoldでメッシュスムーズプレビューをレンダリングした画像、同じく形状が一致してます。

ZBrushのSubDiv4はmodoの「レンダーレベル」3に対応します。同様にMayaのMesh Smoothも3になります。

 

UV補間をリニアにする

modoはサブディビジョンをONにしている場合、UVマップに対してもサブディビジョンを適用します。ZBrushから出力したマップを使用する場合は、メッシュのプロパティで「リニア UV」をONにします。

 

ZBrushのマップ作成オプションに「スムーズUV」というオプションがありますが、modoでUVを一致させるには「スムースUV」をOFFの状態でマップを作成する必要があります。

 

ZBrushの「スムーズUV」は他のソフトでも基本OFFがいいように思います。3dsMaxはOpenSubdivモディファイヤにUV補間に関するオプションがあります。Mayaも同様にUV境界のスムーズ設定があるのですが、ZBrushの「スムーズUV」とは計算が一致しません。ZBrushの「スムーズUV」と同じような補間が出来るのは、Arnoldの「pin_borders」が近いように思います(試したけど微妙にずれる気がする)。

 

メッシュの比較

modoでディスプレイスメントマップを適用したモデル(白色)と、ZBrushから出力したハイメッシュ(青色)の比較です。だいたい同じような形状になってるのが確認できます。

 

 

ノーマルマップを作成/使用する方法

おまけでZBrushからノーマルマップマップを出力する場合の設定です。

 

Gozで読み込んだ法線マップはカラースペースの設定が「デフォルト」になってます。この状態だと法線マップによるシェーディングがおかしな状態になることがあります(カラーマネジメントの設定によります)。そんな時はカラースペースを「リニア」にすると解決します。

 

 

参考

ZBRUSH DISPLACEMENT IN MODO

modoのチュートリアル。
http://www.xuanprada.com/blog/2014/7/30/zbrush-displacement-in-modo

このチュートリアルではマップ作成時に「中央値」0、modoのレイヤー設定では「下限値」0%「上限値」100%、「ディスプレイスメント距離」1mに設定しています。

私の記事で「中央値」0.5を使用したのは16bitと32bit画像で共通して使用する設定にするためです。Arnoldと設定を合わせたい場合は「中央値」0の方がいいかもしれません(ArnoldのScalar Zero Valueで合わせられる気もします)。

 

ACCURATE DISPLACEMENT WORKFLOW

ディスプレイスメントの基本的から解説されてます。
https://www.cggallery.com/tutorials/displacement/

Tips

modoでUDIMを使う方法

modoのUDIMの使い方について書いてみます。AfterEffectsやPremiereなどの動画編集ソフトでは連番画像を1つの素材として扱いますが、UDIMを使用すると複数のテクスチャ画像を1つの画像レイヤーとして扱うことができるので便利です。

 

UDIMとは

UDIM (U-Dimensionの略称)は、UV空間の整数ブロックに番号を割り振って管理する方法です。UVブロックと画像は1001、1002、1003...のような4桁の番号を使用してペアとして扱い管理されます。

UDIMは既存のUV作業工程と大きく変わりません。一般的なUVは0~1の範囲にメッシュを配置していましたが、UDIMでは0~1の外側の領域も使用します。UV空間の0~1の範囲を1001、1~2の範囲を1002のように番号で管理します。画像も同様にUV範囲に対応した番号をファイル名に含めることでUVとペアとして管理する仕組みです。

 

UVブロック

 

画像のファイル名称

 

UDIMの歴史は思いのほか古く、Weta Digitalが2002年公開の映画「ロード・オブ・ザ・リング/二つの塔」制作時に開発しました。その後Weta DigitalのインハウスツールだったMARIMudboxが一般販売されたことから、広く使用されることになります。

 

UDIMのメリット

UDIMのメリットは大きく2つあります。

  • 高解像度の画像を1枚だけ使う代わりに、複数の画像を使用できる
  • 単一の画像レイヤーとして管理できる

 

複数の画像を使用して高解像度化

高解像度の画像を1枚だけ使う代わりに、そこそこの大きさの画像をいくつも並べて、結果的に解像度の高いテクスチャにすることができます。
PhotoShop等で画像を編集するときも高解像度の画像1枚より、そこそこの大きさの画像複数枚のほうが取り回しが楽です。

 

1枚の画像レイヤーとして管理

複数のUVマップを使用する方法だと、画像レイヤーが複数必要でした。または、画像ごとにマテリアルを分ける必要がありました。UDIMを使用すると1レイヤーで済むようになり管理が楽になります。

 

複数のUVマップを使用した例(従来のUV設定方法)

1つのメッシュ内で複数のUVマップを使用した場合、シェーダーツリーではUVマップと同じ数の画像レイヤーが必要になります。画像レイヤーでは1枚ごとに使用するUVマップを指定する必要があり、画像枚数が多いと設定するのが手間です。

 

UDIMを使用した例

UDIMを使用した場合、シェーダーツリーは画像レイヤー1枚ですみます。下の画像ではディフューズ色のみの設定ですが、スペキュラー、ディスプレイスメント、法線など複数種類のマップを使用する場合は、UDIMを使用した方が管理が楽になります。

UDIMは元々は高解像度で大量のテクスチャを使用するWetaのインハウスツールに適した仕様として考えられたのだと思いますが、ゲームエンジンでもテクスチャのストリーミング等でメモリ使用量を少なくできるなどのメリットがあるようです。

 

modoでUDIM画像を読み込む方法

UDIM画像の読み込みには「新規UDMIの読み込み」を使用します。

  1. シェーダーツリー の「レイヤー追加」から「新規UDMIの読み込み」をクリックしします。
  2. ファイルオープンダイアログから、使用する画像を選択して「開く」をクリックします。
    開いた画像は自動的にフォルダにまとめられ「ファイル名称からUDIM番号を設定」が実行されます。
    画像レイヤーでは「画像」にフォルダが設定されることにより、UDIMとして動作するようになります。

 

UDIMはZBrushのように複数のUVマップに対応していないソフトでも使用できるので覚えておくと便利です。

ゲームではUDIMが使われることは少ないようですが、先日Substance PainterがUDIMに対応したので今後ゲームでの利用も増えたりするかもしれません。

 

参考

UDIMワークフロー
https://learn.foundry.com/modo/14.0/content/help/pages/uving/udim_workflow.html

CG News

Epic GamesがQuixelを買収

Epic Gamesはフォトグラメトリーによる3Dスキャンデータライブラリを公開しているQuixelを買収したようです。

1万点を超えるMegascansアセットはUnreal Engineユーザーが無料で利用できるようになり、UE4以外のユーザーのアセットコストは削減されます。当初ベータ終了時に$99のスタンドアロンアプリケーションになる予定だったMixerBridgeは無料でリリースされます。最初の無料バージョンであるMixer 2020とBridge 2020は今年後半に出荷予定。

Quixelは元の名前を残し、6か国で100名を超える従業員全員がEpic Gamesに参加します。
https://www.unrealengine.com/en-US/blog/epic-games-and-quixel-join-forces-to-empower-creators

https://quixel.com/blog/2019/11/12/quixel-joins-forces-with-epic-games

MegascansがUnreal Engineで使用できるようになります

Megascansライブラリは、Unreal Engineで使用するために完全に無料になりました。

つまりMegascansをUE4で使用している場合、BridgeとMixerおよびUnreal Engine Marketplaceの豊富なMegascansパックを介して、すべてのMegascansに無料で無制限に即座にアクセスできます。10の高解像度パックが本日、Unreal Engine Marketplaceで無料で共有され、追加のアセットパックはUnreal Engine 4.24のリリース期間内にMarketplaceで無料で利用できるようになります。これにより好きな方法でコンテンツにアクセスできます。

UE4でのみMegascansを使用している場合、2019年のすべてのサブスクリプションを払い戻します。アクティブなサブスクリプションをお持ちの場合は、ログインして払い戻しを取得する方法を確認してください。2019年にMegascansを購入したが、有効なサブスクリプションがない場合は払い戻しについて連絡します。

Megascansサブスクリプションの価格がすべての人に対して低下しました

Epic Gamesの支援により、Megascansの価格設定を即座に削減し、ダウンロードするコンテンツをほぼ2倍にし、解像度キャップを削除します。サブスクリプション期間の残りの期間についても払い戻しを行っており、新しいプランのいずれかに飛び乗ることができます。有効なサブスクリプションをお持ちの場合は、ログインして払い戻しを取得する方法を確認してください。

Bridge と Mixer 2020はすべての人に100%無料です

Epicは今後の2020バージョンのBridgeとMixerをすべての人に100%無料で提供するのに役立ちます。サブスクリプションは不要で両方とも完全に機能します。私たちは新しい無料バージョンを今から数週間以内にリリースします、そして最終的にあなたと今後のアップデートを共有できることを嬉しく思います。

Bridge 2020

Bridge 2020は大幅に改善されたブラウジングエクスペリエンスをもたらし、時間を可能な限り節約し、創造性を刺激するように設計されています。

閲覧はより視覚的で関連性が高く、楽しくなりました。ほぼ100の新しいコレクションが追加され、検索バーがよりスマートになり、強力なフィルタリングが導入されました。さらにフィードする画像内のすべてのアセットを検索するAI検索機能を実装しました。これにより、現実世界のリファレンスやコンセプトアートがあるかどうかに関係なく、環境計画が大幅に容易になります。

Mixer 2020

Mixer 2020は3Dペインティング、リアルタイム3D Curvature、スマートマテリアルなどを導入しました。

このアップデートでは最終的にMixerを究極にするための別のステップとして、3Dブラー、グループ化、マップ固有のブレンド、高度なAOミキシング、ボックス投影、マテリアルIDマスキング、3D位置グラデーション、3D法線も導入しました。現在、無料のテクスチャアプリです。

つまりスマートマテリアル、3Dペイントメッシュの設計、タイル化可能なサーフェスの作成をすべて1つのアプリで行うことができます。QuixelMixer 2020はスキャンデータ、PBRペインティング、手続きオーサリングをシームレスに融合し、毎日10,000回のスキャンと新しいコンテンツのローリング。Mixer 2020はオーガニック、ハードサーフェス、フォトリアル、または定型化されたテクスチャリングを対象としても、3Dまたは2Dで作業していても、最終的にカバーします。

参考資料

Lightbrush Cloud

画像からテクスチャマップをキャプチャしてテクスチャとイルミネーションに分けて画像操作ができるツールが、Webアプリケーションとしてサービス開始しました。現在アルファ版で提供されています。https://lightbrush.org/

価格
  • 1画像 $1
  • 100画像 $30/月
  • 500画像 $95/月

 

光と質感をトータルコントロール

Lightbrush Cloudを使用すると、画像のイルミネーションとその表面の色をさまざまなレイヤーに分割して編集できます。テクスチャマップの作成から写真の変更まで可能性は無限です。

 

3Dグラフィックスやビデオゲーム用のテクスチャマップを簡単に作成

 

正確なイルミネーションを維持しながら表面の色を変える

 

元の表面色を維持しながらイルミネーションを変更する

 

新しいLightbrush Cloud

新しいLightbrush Cloudアプリケーションにより、PCとインターネットにアクセスできる人なら誰でもLightbrushの背後にある強力なテクノロジにアクセスできるようになります。この新しいプラットフォームに依存しないアプリケーションを使用すると、画像をアップロードしてGoogle Cloud Computer Networkの機能で数秒で処理できます。

参考資料

CGモデルにディテールを追加するツール「Nexture」

フランスのCronobo VFXが開発するディテール生成ツール「Nexture」。
NextureはCGモデルにディテールを追加する方法を提供することを目的としたまったく新しいツールです。人工ニューラルネットワーク(ANN)とカスタム画像合成アルゴリズムを組み合わせて、参照パターンバンクからCGテクスチャマップにディテールを転送します。
https://cronobo.com/

AIを使用したディテール生成というと、映画アリータ毛穴生成を思い出しますね。以下のURLインタビューが公開されています。元々VFXとは関係ないエンジニアの方がテクスチャ転写技術に興味を持って作ったのが始まりのようです。数週間以内にインターフェースがあるソフトウェアをリリース予定らしい。
https://beforesandafters.com/2019/06/20/ever-felt-you-might-need-a-texture-micro-details-synthesizer/

概要

NextureはAIを使用して単一のテクスチャから多数のバリアントを合成します。最も細かい部分を統合しながら、テクスチャの構造に合った新しい画像レイヤーを生成します。

4Kディスプレイスメント

 

CG News

Quixel Mixerベータ版を無料公開

QuixelはPBRテクスチャ編集ソフト「Mixer」のベータ版を無料公開すると発表しました。
https://quixel.com/blog/2019/1/30/the-year-of-mixer

ベータ期間は1年以上あるようです。Mixerの開発にはPhotoshopプラグインだったNDOとDDOのホームを作成する意図があると説明しています。MixerはMegascansの一部としてのみ利用可能でしたが、Quixelは無料ベータ期間が終了すると$99の永久ライセンス方式で利用可能になることも発表されました。

https://quixel.com/mixer

DDOは購入してましたが、新規に作り直すと発表され初期バージョンは無料公開されてました。現在はDDO自体がダウンロード出来ない状態で不安に思ってましたが、開発が続いてたということかな?

CG News

SUBSTANCE for MODO アップデート

SUBSTANCEのMODO用プラグインがアップデートされました。ワークフローと生産性に焦点を当てて、Modo内のSubstanceのパワーをさらに強化、より簡単に作業できるらしい。
https://www.allegorithmic.com/blog/substance-modo-improved-workflow-and-productivity

 

32ビット浮動小数点サポート

Substanceマテリアルは32ビット浮動小数点をサポートし、高品質のディスプレイスをレンダリングできます。

 

glTF / Principledシェーダのサポート

マテリアルのPrincipled Shading Modelをデフォルトにしました。Principledモードを使用するとシェーダツリーで変換することなく、メタリック/ラフネス出力で直接作業できます。ModoのglTFマテリアルのサポートも追加しました。

 

プリセットと相対パス

プリセットの読み込みと保存のための新しいUIと、Substanceファイルの埋め込みプリセットを読み込む機能を作成しました。Substanceファイルを相対パスで保存することで、Substanceマテリアルを使用したModoプロジェクトのオープンと共有が簡単になりました。

 

ワークフローの改善

プラグインがLPK形式をサポートするようになりました。Substanceプラグインをインストールするには、LPKをModoにドラッグアンドドロップするだけです。また、グローバルな環境設定にアクセスするための新しいSubstance Kitメニューを追加しました。

Substance Engineを使用すると、GPUエンジンとCPUエンジンの両方でバンプが発生します。CPUエンジンは4Kをサポートしており、GPUエンジンで最大8Kまで出力できます。

 

Linuxサポート

Substance in ModoプラグインはLinuxをサポートしました。