ModelingCafe福岡支社の代表を務め、セミナーでの講演も多い北田栄二氏。「Maya上でのUV展開や編集」といった作業にターゲットをしぼり、便利なインディツールを紹介してもらった。

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

MayaでのUV作業に役立つ4つのフリーツールを紹介

今回は普段、記事としてあまり触れられることのないUV作業について紹介したいと思います。UV作業というのは、直接レンダリング結果やイメージのクオリティに関わりがないように感じられる方も多いと思いますが、筆者の中では非常に重要なウェイトを占めている作業です。UVを正確に展開し、正しく配置することでテクスチャの作成、修正の工数を大きく削減できますし、何よりクオリティアップにつながると思っています。また、最近のモデリングフローではよく利用されるDDOSubstance Painterなどの半自動化ペイントツールやMARIを使用した3DペイントにもUVは必須となります。UV座標はテクスチャを描くためだけの座標と思われがちですが決してそうではなく、ポストエフェクトの作業でもUV座標、UVパスといった情報が必要になる場合があります。もしUVをちゃんと展開していなければ、2Dでのポストエフェクト処理などが正しくできなくなってしまうのです。

普段、軽視されがちなUV作業ですが、筆者が愛用しているUV作業支援ツールを使用することで、UV作業の工数を削減することができます。今回は筆者が日常的に活用しているNightshadeUV EditorAriUVScaleCheckertransferAnd OffsetUVsMari2Mayaという4つのツールを紹介していきます。全て無償のツールなので、気軽に試せるのも大きな魅力です。

作業環境
●主な使用ソフトウェア
Autodesk Maya
MARI
Adobe Photoshop
ZBrush
Autodesk Mudbox
●使用マシン
OS:Window 7 Professional SP1
CPU:Core i7 3.30GHz
メモリ:32GB
GPU:Quadro K4200

次ページ:
TOOL 01 Nightshade UV Editor 1.6.1(Martin Dahlin)

[[SplitPage]]

TOOL 01
Tool:Nightshade UV Editor 1.6.1
Maker:Martin Dahlin

Nightshade UV EditorはUV関連の作業時間をスピードアップするためのUV総合支援スクリプトです。MayaのUVテクスチャエディタのデフォルト機能を拡張し、様々な使い方を可能にします。UVシェルを数値入力によって移動、回転、拡大縮小。UV展開支援からレイアウトにいたるまで、機能は多岐にわたります。無料版の利用は非商用に限定(※クリエイティブ・コモンズ・ライセンス「表示 - 改変禁止 4.0 国際/Creative CommonsAttribution-NoDerivatives 4.0 International (CC BY-ND 4.0).」にて配布。商用版「Nightshade UV Editor Pro」は30米ドル)されているのですが、筆者の知る限り無料のUVエディタとしては、最も扱いやすいUV支援ツールだと思います。そして多くのモデラーが愛用しているUVエディタでもあります。

Nightshade UV Editor 1.6.1
対応アプリケーション:Autodesk Maya 2012以降
対応OS:対応アプリケーションに準ずる
価格:無料(非商用版)、30米ドル(商用版)
問い合わせ:Martin Dahlin
e-mail:martin.dahlin@live.com
www.creativecrash.com/maya/script/nightshade-uv-editor

入手方法

CG情報サイトCreative Crash(www.creativecrash.com)上で公開されています。アカウントを作成して、ログイン後にダウンロードできるようになります。ダウンロードは下記のURLより行うことができます。
www.creativecrash.com/maya/script/nightshade-uv-editor

ダウンロードが完了したら、圧縮を解凍してMayaのユーザーディレクトリの「script」フォルダに移動します(例・C:\Users\EijiKitada\Documents\maya\2015-x64\scripts)。次にMayaを起動して、下のコマンドをコマンドラインに入力します。コマンド入力後にNightshade UV Editorが起動します。

----------
import NSUV
reload(NSUV)
----------

  • ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選


    Creative Crash上の、Nightshade UV Editorページ。ここからダウンロードをします

  • ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選


    コマンド入力例

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

Nightshade UV EditorのUI

基本機能

Nightshade UV Editorは非常に拡張されたUV支援ツールです。機能が多岐にわたるため、今回は筆者がよく使う2つの機能について解説します。

まずはマニピュレータです。パネル上のアイコンと数値入力の組み合わせによって、UVシェル、UV単位の移動、回転、拡大縮小を行えます。また水平反転や、UV間のグリッドの長さやUV間のピクセル数を計ることができるなど、非常に有用性の高い機能が詰まっています。

次にアライン/スナップのUIについて説明します。ここではUVの座標をコピー&ペーストしたり、UVを削除したり、UVを直線に揃えたり、グリッドへの移動などができます。またUVシェル単位でアラインしたり、ランダムに配置したり、グリッドにスナップさせたりすることもでき、UVをレイアウトする際に便利な機能がそろっています。そのほかにもMayaのUVエディタを拡張した機能が多数備わっているので、いろいろと試してみてください。

  • ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選


    マニピュレータのUI。UVシェル、UV単位の移動、回転、拡大縮小などを行えます

  • ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選


    アライン&スナップのUI。UV座標のコピー&ペーストや整列などができます

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

UVマッピングのUI。各軸へのUVプロジェクションや各種UVマッピングに対応します

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

そのほかにも様々な機能が用意されています

活用例

筆者はほとんどのUV展開作業にNightshade UV Editorを使用しています。多くのUIを開く必要がなく、1つのUIに機能が集約されていることがその大きな理由のひとつです。下記に筆者がよくテストで使用するオブジェクトをUV展開してみました。シンプルな形状に見えますが、球や円柱、正方形などベースとなる形状が集約されているため、シェーディングやレンダリングなど様々なテストで使用することができます。

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

サンプルモデルと、Nightshade UV EditorによるUV展開例

次ページ:
TOOL 02 AriUVScaleChecker(CG自習部屋 Mayaの時間)

[[SplitPage]]

TOOL 02
Tool:AriUVScaleChecker
Maker:CG自習部屋 Mayaの時間

AriUVScaleCheckerはオブジェクト(エッジ)に対して、UVが大きいのか小さいのか数値で確認することができるツールです。またUVを理想の解像度に統一することもできます。

AriUVScaleChecker
対応アプリケーション:Autodesk Maya
対応OS:対応アプリケーションに準ずる
価格:無料
問い合わせ:CG自習部屋 Mayaの時間
vectrix.blog.fc2.com

入手方法

このツールはブログ「CG自習部屋 Mayaの時間」を運営するA-RI氏のオリジナルツールです。ブログ内の記事「【MEL】UVの大きさを確認 正確な解像度にスケール(vectrix.blog.fc2.com/blog-entry-69.html)」よりダウンロードすることができます。このサイトは、あまり知られていない便利なインディツールをお探しの方にはうってつけのサイトです。Creative Crashなど海外のサイトとはちがい、ツールのUIや解説が日本語であという部分で、ビギナーの方には特にオススメかもしれませ ん。バラエティに富んだ面白いツールがたくさんあるので、ご興味ある方はぜひ一度、訪れてみてはいかがでしょうか。

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

ブログ「CG自習部屋 Mayaの時間」のAriUVScaleChecker紹介ページ

基本機能

ダウンロードしたスクリプトを[Script Editor→File→Source Script]で読み込み、コマンドラインに「AriUV ScaleChecker」と入力して実行すればAriUVScaleCheckerのUIが起動します。

次に[Texサイズ]に任意のテクスチャサイズを入力し、エッジを選択すると画像Cのようにエッジに対してUVの距 離・ピクセル数や1cmあたり何ピクセルか、などの情報が正確に表示されます。そして選択されたエッジに対して任意の数値でUVにスケールをかけることができます。

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

スクリプトを読み込んだ後、コマンドラインよりコマンドを実行します

  • ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選


    AriUVScaleCheckerのUIが起動します

  • ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選


    エッジを選択すると、UVの距離・ピクセル数や1cmあたりのピクセル数などが表示されます

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

AriUVScaleCheckerの適用前と適用後のUVスケール

活用例

UVのスケールを統一するという作業は、キャラクターモデラー、背景モデラーに関わらず重要な作業のひとつです。特に背景の場合はジオメトリの数が非常に多いので、これらのジオメトリを全てUV展開して、全て同じスケールに統一するという作業は本当に時間と労力を必要とします。そのためUV展開やUVスケールの統一を軽視するアーティストも多いですが、UVスケールを統一することで、テクスチャ作業、グループやチームで広大な背景をつくるときなどに効率化へとつながります。画像のように基準のUVスケールをスタッフ間で共有することで、同じロケーションの建物を別々にモデリングしても、同じUVスケールで統一することができます。

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

基準となるUVスケールを共有したワークフロー

次ページ:
TOOL 04 transferAndOffsetUVs.py(デジタル・フロンティア)

[[SplitPage]]

TOOL 03
Tool:transferAndOffsetUVs.py
Maker:デジタル・フロンティア

このツールは、以前福岡で開催したセミナー「プロダクションモデリングワークフロー 背景編」で筆者がデジタル・フロンティアの野澤徹也氏にお願いして作成していただいたツールです。このツールの特徴は、選択したオブジェクト群に対してUVを転送し、かつタイル状にUVの位置をオフセットできることです。特に同じオブジェクトを大量にもつ背景モデリングには非常に有用性が高いツールと言えます。

transferAndOffsetUVs.py
対応アプリケーション:Autodesk Maya 8.5以降
対応OS:対応アプリケーションに準ずる
価格:無料
問い合わせ:(株)デジタル・フロンティア
www.dfx.co.jp

入手方法

デジタル・フロンティアの技術ブログ「DF TALK」上の記事「御来場御礼【プロダクションモデリングワークフロー 背景編】UV展開支援スクリプトのおまけ付き(www.dfx.co.jp/dftalk/?p=17196)」からダウンロードすることができます。

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

「DF TALK」Webページ。先述の記事内からダウンロード可能で、インストール方法や使い方も解説されています

基本機能

ダウンロードしたファイルを、MayaがPythonスクリプトを認識できる場所にコピーしてください。その後、画像Aのコマンドをスクリプトエディタから入力します。これでUIが起動します。

[calc]ボタンは最初に選択したオブジェクトのUVの面積を調べて、0~1のUV空間の中に何個配置できるかを計算し、GUIのUV欄に最適な数値を入力してくれます。次に[mode]でU方向(横方向)優先か、V方向(縦方向)優先かを選びます。[direction]で+方向か、-方向かを選びます。その後[run]をクリックすれば、実行されます。

  • ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選


    スクリプトエディタから画像のようにコマンドを入力して、UIを起動します

  • ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選


    起動したtransferAndOffsetUVsのUI

活用例

これまではUV展開を支援するツールを紹介してきましたが、transferAndOffsetUVsはUVレイアウトを支援するツールです。特に広大な背景をつくる場合、ジオメトリやUVのリピートは効率化において欠かすことができません。しかし、同じ形状・同じUVでは見た目にリピート感が出てしまい、一気に説得力を失います。transferAndOffsetUVsで同じジオメトリでもUVシェルをタイリング化し、リピート感を回避することで説得力あるテクスチャを描くことができます。

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

transferAndOffsetUVs使用前と使用後のちがい。UVシェルをタイリングしてオフセットしているため、同一形状でも見た目が異なっているのがわかります

次ページ:
TOOL 04 Mari2Maya(AnimationManiac)

[[SplitPage]]

TOOL 04
Tool:Mari2Maya
Maker:AnimationManiac

Mari2Mayaは、MARIで作成されたテクスチャパッチをMaya内で自動セットアップするスクリプトです。Maya 2015以降はUVタイルやUDIMなどのテクスチャパッチがサポートされていますが、一部の外部レンダラなどではサポートされていないケースもあります。このスクリプトはMaya標準のレイヤーテクスチャを使用することで、テクスチャパッチをUDIMに自動セットアップすることができます。

Mari2Maya
対応アプリケーション:Autodesk Maya 2012以降
対応OS:対応アプリケーションに準ずる
価格:無料
問い合わせ:AnimationManiac
www.creativecrash.com/maya/script/mari2maya

入手方法

こちらもNightshade UV Editor同様にCreative Crash上で公開されています。ダウンロードはこちらのURLより行うことができます。
www.creativecrash.com/maya/script/mari2maya

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

Creative Crash上のMari2Maya公開ページ

基本機能

ダウンロードが完了したら、Mayaのユーザーディレクトリのscriptフォルダに移動します(例・C:\Users\EijiKitada\Documents\Maya\2015-x64\scripts)。その後、スクリプトエディタよりスクリプトを読み込みます。

次にスクリプトエディタよりPythonコマンド"Mari2Maya()"を実行するか、コマンドをシェルフに登録してください。次に"xxxxxx_1001.tif"といったようにUDIM座標がファイル名の末尾についているテクスチャをHypershadeにドラッグ&ドロップします。

このとき、MARIでなくPhotoshopで作成されたテクスチャでもファイル名の末尾にUDIM座標が含まれていれば、Mari2Mayaは機能します。スクリプトを実行すると、テクスチャのファイル名に含まれた座標を基に自動的にレイヤーテクスチャがセットアップされます。

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

スクリプトエディタにこのように実行コマンドを入力します

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

フォルダからテクスチャをHypershadeにドラッグ&ドロップします

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

スクリプト実行後

活用例

UDIMのようなUVのマルチタイリングシステムは国内ではほとんど馴染みがありませんが、海外プロダクションでは、5年以上も前からUVのタイリングシステムを使用したテクスチャワークというのが当たり前のように行われています。UDIMを使用するメリットは様々ですが、大きな役割としては複数枚のテクスチャを1枚として管理するためシェーダ数の削減につながり、レンダリング時間を短縮するというものが挙げられます。UDIMを使用することで1ジオメトリに対して高解像度のテクスチャを何枚も割り当てることができるなど、メリットは様々です。

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

UDIMに対応したUV展開とレイアウト

次ページ:
Column.UVを正しく展開することの重要性を理解しよう

[[SplitPage]]

Column.UVを正しく展開することの重要性を理解しよう

今回はUV作業を中心とした支援ツールを紹介しましたが、このUV展開を軽視すると、プロダクションフローにおいて様々なデメリットが発生します。特に大きな問題としては、UV座標を使用したポストエフェクトでの不具合などです。アセットをつくる側ではビューティパスさえレンダリングされれば問題ないと考える方も多いと思います。しかし、VFXやポストエフェクトの処理にUV座標が使用されることは時折あります。そうしたときに、UVが正しく展開できていないと、ポストエフェクト処理ができない場合もあります。

画像Aは左端が正常なUV展開、それ以外はUV展開に何かしら不具合をもった状態でのビューティとUVパス、UV展開の比較です。正常にUV展開されたジオメトリ以外はUVパスが正しくレンダリングされていないことがわかると思います。

またUV作業は多大な労力と時間を必要としますが、その反面、UVを正しく展開・レイアウトすることで得られるメリットも非常に大きいです。MARIやSubstance Designer/Painter、QuixelなどのテクスチャペイントソフトはUVを正しく展開しないと機能しません。逆に言うと正しく展開さえできていれば、テクスチャペイントや修正にかかる工数を大幅に削減できます。さらに、テクスチャやオクルージョンをベイクする際にもUVを正しく展開する必要があります。UV作業には多大な労力が必要ですが、今回、筆者が紹介したようなツールを使用することでその労力を大きく削減できるのです。

UVを正しく展開できれば、ポストエフェクトの際に迷惑をかけることもありません。皆さんも今回紹介したUV支援ツールを使用して、正しいUV展開・レイアウトを心がけてください。

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

正しく展開されたUVと不具合のあるUV展開時のレンダリング比較

ModelingCafe・北田栄二のオススメ! MayaによるUV作業お助けツール4選

MARIやSubstance、Quixelの各ツールに代表されるテクスチャペイントソフトは、UVが正しく展開されていないと機能しません