Diary

CG News

Modo 12.0 リリース

Modo 12.0 がリリーされました。
https://community.foundry.com/discuss/topic/139173/modo-12-0v1-is-now-available

主な追加機能

glTF 2.0 Export

Facebookの新しい3D投稿機能に連動して開発されたこの機能を使うと、Modo で 3D オブジェクトを作成した後、Facebook ニュースフィードに共有することができます。

 

メッシュペイントの改善

ランダムプリセットペイント機能によってアセットライブラリを利用できます。配列ペイントモードでは、順序付けられたオブジェクトのコレクションをペイントする際に、より大きなコントロールを提供します。

 

メッシュフュージョン サーフェスストリップ

Surface Strip 作成オプションが追加されました。 このオプションにより単一のシンプルなサーフェイスから特徴とディテールを作成することができます。

 

モデリングとデザイン作成の強化

トランスフォームまたはスケールでメッシュまたはコンポーネントを操作する際に、キーボードショートカットで奥行き方向に移動することが可能になりました。
ジッターツールには、連結しているジオメトリの位置、スケール、回転のランダム化を行う新しいオプションが追加されました。
頂点選択モードのスライドツールには新しいハンドルが表示され、頂点を微調整する際の制御がより強化されました。

 

新しい手続きメッシュ操作

三角化ツールが追加され、三角ポリゴンを出力できるようになりました。

メッシュを統合オペレータはリプリケータアイテムをジオメトリ入力として読み込めるようになりました。これにより複製されたジオメトリはプロシージャルモデリングツールを使用して操作し、単一のメッシュアイテムに変換できるようになりました。

ミニグラフ編集を使用してアイテムフォールオフの形状を編集可能になりました。リギングやプロシージャルモデリングでフォールオフの表現の幅をさらに広げることができます。新しいフォールオフはシーンやジオメトリのパラメータを使用してメッシュオペレータのフォールオフを調整できます。

 

クラウドアセットとファウンドリ共有サイト

プリセットアセットの作成、共有、ダウンロードが改善されました。 クラウドアセットをドラッグしてアイテムツリーにドロップするか、または直接Modoビューポートにドロップできます。
プリセット作成も大幅に合理化されています。UIからプリセットブラウザにドラッグするだけで、任意のプリセットタイプを作成できるようになりました。

 

UVツールとワークフローを洗練

  • サードパーティのキットを簡単に管理できます。
  • Modo Modesツールバーは、一貫性を高めるために再構成されました。
  • 多くのモードでワークフローが改善され、標準のモデリングセッションでのクリック数が大幅に削減されました。
  • UVビューポートには新しいボタンが追加されました。
  • 複数のUV選択を一度に並べる方が簡単になりました。

 

ハチェットコレクション

人気のHatchet CollectionのPythonスクリプトが含まれました。Modoのコア機能が強化され、アセットの作成がさらに効率化されます。

 

アドバンスドビューポート のGPUアクセラレーション

アドバンスドビューポートの MSAA(Multi Sample Anti-Aliasing)はGPUハードウェアを使用してレンダリングを高速化しました。異方性テクスチャフィルタリングは、多くの場合優れたビューポートテクスチャ品質を提供しますが、少しパフォーマンスを犠牲にしています。

 

レンダリングとシェーディングの改善

アニメーションレンダリング中にどのフレームをレンダリングするか制御する新しいフレーム範囲チャネルが追加されました。

glTF Material Shaderは、Modoのネイティブレンダラー、アドバンスドビューポート、およびglTFシェーディングをサポートする他のアプリケーションの間で完全なWYSIWYGを可能にします。

 

その他

オンラインマニュアルのデザインが新しくなったみたいです。
https://learn.foundry.com/modo/content/help/pages/getting_started.html

MODO 12.0 新機能一覧

http://modogroup.jp/modo/modo12s/modo120v1_newfeatures

Modo 12.0 Quick Clips

https://vimeo.com/album/5061511

Modoフリーキットのアップデート

https://community.foundry.com/discuss/topic/139177/modo-free-kit-updates

GoZ 1.1

Sub-Dとしてではなくフェースとしてメッシュを転送するようになりました。このキットは10.1との互換性がなくなりました(10.2以上のみ)。

AfterFX-IO Kit 2.0
  • 位置、回転、スケールのエンベロープを作成するときのトランスフォームアイテムのチェックを削除しました。
  • トランスフォームアイテムのないコンストレイント付きアイテムがゼロキーをエクスポートする問題を修正しました。
  • 変更を確認するためにModoからエクスポートするときにキーの値をチェックし、変更がなければエクスポートされたエンベロープでキーの作成をスキップします。ModoからJSONファイルまたはXMLとしてエクスポートできるようになりました。多数のエクスポートされたチャンネルとアイテム、特にAfter Effectsの終了時のXMLが高速になる可能性があります。 After EffectsはJSONだけをエクスポートします。
  • ModoとAfter Effectsの両方のスクリプトで、さまざまなパフォーマンスが向上しました。 After Effectsスクリプトは従来のキー作成よりもはるかに高速です。これまでにインポートするのに30秒以上かかるファイルが一瞬になりました。
  • カスタムチャネルを含む任意のチャネルやModoのアイテムをエクスポートできるようになりました。エクスポートされたアイテムに属するチャネルは、After Effects アイテムのレイヤーの下にあります。付随項目なしでModoからエクスポートされたチャンネルは、独自の「MODO CHANNEL」レイヤーでAfter Effectsに追加されました。エクスポートされたチャネルは1、2、または3次元の値[1] [1,2] [1,2,3]

 


 

メンテナンス契約してるとベータ版にアクセスできるので、今となっては新鮮さを感じなかったりしますw Modo11リリース直後にメンテナンス契約した人は、もれなく12をゲットできて少しお得感のあるタイミングでのバージョンアップなんじゃないでしょうか。

正直なところ大きな機能追加、期待していたアニメーション関連の機能追加がなくて残念ですが、メッシュペイントやジッターツールなど放置されていたモデリング機能が改善されてるのは嬉しいです。ジッターツールは将来的にメッシュオペレーターになったりするのかな?
Hatchet Collectionはフル機能ではありませんが、ランダム選択などモデリングで欲しいと思ってた機能が搭載されていて助かります。
個人的にはアニメーションで活躍しそうなフォールオフ機能の強化もいい感じです。
大きな機能追加は12.1、12.2待ちという感じですかね。

glTF 2.0フォーマットは今のところ直接の恩恵はありませんが、将来的に有用な物になるかも知れません。glTFフォーマットはジオメトリ、アニメーション、マテリアル、テクスチャ、ライトなどに対応していて、FBXのようなクローズドなフォーマットに変わるファイル形式になるんじゃないかと期待されているらしいです。
UnrealEngineがglTFをサポートしようとしてるらしい。Windows10に標準搭載されている「3D Builder」というアプリケーションでも使うことができます。

ちなみにmodoはサードパーティがglTF 2.0にネイティブに対応した最初のソフトらしい。Blenderも対応してますが、そちらはフォーマットを策定したクロノスグループが直接メンテナンスしてるみたいです。

他にフォーラムで見かけた気になる内容として、modo 12 リリースのメール内で12 シリーズのアニメーション強化についてふれられているようです。アニメーションミキサー的な機能でしょうか。「改善されたワークフローを含むアニメーションエクスペリエンスの強化により、アニメーション アクションを簡単にリタイム、再利用、結合、調整できます。」
https://community.foundry.com/discuss/post/1121551

パフォーマンスの話。MacBook Proでの話のようなので、Windows環境でも早くなってるのかは不明です。「CADシーンの簡単なテストで、12で大幅なパフォーマンス改善が見られます。私のシーンは約21万フェース、約600のアイテムがあり、GLメーターはデフォルトビューで35-45fpsのスピードになります。11.2では約15-18fpsでした」
https://community.foundry.com/discuss/topic/139198/modo-12-performance

メッシュフュージョンは古いシーンと互換がないようです。コンバートボタンで変換する必要があるようです。
https://community.foundry.com/discuss/post/1121565

CG News

ZBrush 2018 リリース

ZBrush 2018 がリリーされたようです。ダイナミックテッセレーション「SCULPTRIS PRO」が気になります。
http://pixologic.com/features/index.php

Sculptris Proデモとして、ベータテスターが球体からスカルプトした画像が公開されています。
http://pixologic.com/features/spheres.php

SCULPTRIS PRO

ダイナミックなテッセレーションスカルプティングのワークフローであるSculputris Proは、ポリゴンによる制限を考えることなく、ただスカルプトすることができます。

 

プリミティブ投影

メッシュのリシェイプ、サーフェスへのカットイン、別なメッシュからの構築などのために、複数のプリミティブを使用することができます。

POLYGROUPIT

PolyGroup Itが提供されます。PolyGroupを削除、追加、コピー&ペースト、拡張または縮小、シンメトリに作成することや、さらにPolyPaint(ポリペイント)を使えば、あなたがまさに見たいと思っているPolyGroupを描画することができます。

 

その他
  • Curveモードの弾性オプション
  • Curveモードの液状オプション
  • Equidistant Gizmo Mesh Duplication
  • 描画サイズの記憶
  • 描画サイズ用Dynamicモードの記憶
  • Tessimate ジオメトリ
  • Normal アルゴリズムによる新しいPolyGroup
  • 3D プリントハブ用の出力サイズ増大
  • SculptrisPro用の新しい Snake Hook ブラシ
  • スタートアップ・デフォルト・ マテリアルの保存オプション
  • QuickSaveで、ついにあらゆるハードドライブへの保存が可能
  • ユニークログインサポートが附属した、新しいアクティベーションおよびライセンス管理システム
  • HDジオメトリのレベルが示されている場合、最高位のサブディビジョンレベルからディスプレイスメントマップを作成
Tips

modoのテクスチャリプリケータ

modoにはアイテムをメッシュの頂点に複製する「リプリケータ」という機能がありますが、テクスチャ版の「テクスチャリプリケータ」という機能が便利なので紹介したいと思います。

テクスチャリプリケータ はアイテムの頂点にテクスチャを配置することで、模様を作ったりテクスチャのタイリングを目立たなくしたりに使える機能です。

画像だけでなくプロシージャルテクスチャにも使用する事ができます。ノイズテクスチャを使用すると下の画像のようになります。

Surface Generatorと併用することで、アイテムのメッシュに依存することなくランダムにテクスチャを散布することができます。
modoはプロシージャルテクスチャ機能が豊富なので、ゲーム向けにテクスチャをベイクして活用したいときなんかにも便利に使えると思います。

Gradient レイヤーにはテクスチャリプリケータに関連する設定があります。入力パラメータを「テクスチャパーティクルID」に設定するとランダムな色を設定することができます。

入力パラメータを「ロケータまでの距離」に設定すると、放射状のグラデーションにすることができます。

 

テクスチャリプリケータの面白いのが「パーティクルソース」にParticle Simulationを指定できて、パーティクル特性を利用できることす。例えばパーティクルが「サイズ」が徐々に大きくなるように設定すると、テクスチャリプリケータに反映されます。
下の画像はシェーダーツリーでレイヤーエフェクトを「ディフューズ色」と「バンプ」に設定したものです。

スケマティックも貼っておきます。Particle Operator に「寿命」と「サイズ」を追加して、「寿命」チャンネルを「サイズ」にリンクします。これで個々のパーティクルが発生してから徐々に大きくなるように設定しています。

 

あまり語られることはありませんが、modoのパーティクルはモデリング、レンダリングに次いで強力な機能だと思います。パーティクル機能とテクスチャリプリケータを併用することで、水の波紋、オブジェクトが濡れる表現、文字を書く、など他のソフトでは専用プラグインが必要そうな表現を標準機能だけで作ることができます。

次回はパーティクルとテクスチャリプリケータ使ったエフェクト的な表現について書いてみたいと思います。

参考資料

アニプレックスとLive2Dが業務資本提携

長編アニメーション映画制作を始動するそうです。Live2Dを使ったこれまでに無い全く新しい映像表現でのアニメーション作品制作に取り組むということなので、どんな映像になるのか楽しみですね。http://www.live2d.com/ja/news/aniplex_business_capital_alliance

両社は、このLive2Dを使ったこれまでに無い全く新しい映像表現でのアニメーション作品制作に取り組むという目標を共有し、この度の業務資本提携は、その大きな目標を実現するため、持続的な協業関係を構築し、長編アニメーション映画制作に挑戦することを目的としております。

Live2D社は本提携を機に、ソフトウェアの開発と全世界に向けた提供をさらに加速させるため本発表後から採用活動を強化し、Live2Dの開発に携わるエンジニア、長編アニメーション制作に従事するデザイナーを始め幅広い職種の人材採用を開始いたします。 ゲームを中心としたリアルタイム表現、そしてアニメーションによる映像表現に関わる2Dクリエイターにとって理想的な 『 描きたい通りに描き、動かしたい通りに動かす 』未来を実現していきます。

今後、両社は長編アニメーション制作を進めながら、それぞれが得意とする分野でノウハウや技術を共有し、アニメーション・ゲームなど多様なコンテンツ・サービスを通じて新しい表現・価値を創出する活動を行って参ります。

Tips

modoでグリッドアセンブリの作り方

手続き的にグリッドを表示するアセンブリの作り方を書いてみます。

modoのロケータはデフォルトで十字アイコンですが、「シェイプ」を「カスタム」にすることで、リギングに使えるプリミティブ形状を設定することができます。LightWaveには「Item Shape」という同じような機能があるのですが、modoに搭載されていないシェイプ形状として「 グリッド 」があります。

modo11.0からプロシージャルメッシュを「ワイヤフレーム」表示することができるようになったので、プロシージャルのCubeをリギングすれば簡単にグリッドのアセンブリを作ることができます。

アセンブリの中身はこんな感じです。

作り方で迷いそうなのは、軸XYZを切り替えたときにCubeのサイズXYZへの出力を切り替える部分でしょうか。
軸の切り替えはチャンネルタイプ「軸」の値を、条件式ノード「A は B と等しい」を使用してスイッチしています。値が等しい場合は「1」を、値が異なる場合は「0」を出力します。
あとは条件式ノードの出力値を演算ノードで乗算することで、指定された軸にみえるCubeの「サイズ」にのみ「Scale X」「Scale Y」の値が流れるようにしています。

スクリプトとかプログラム的なことはよくわからないので、条件式を使った切り替え方法としてこういう使い方が正しいのかわかりませんが、やりたいことはできている気がします。

補足ですが、ビューポートでアイテムをワイヤフレーム表示するには「3Dビューポートプロパティ / アクティブメッシュ」で、「描画スタイルの独立」をONのする必要があります。

 

Cubeの大きさに合わせてセグメントの分割数を増やす動作は、モデリング系のアセンブリにも使えるんじゃないかと思います。

CG News

3DS Max 2019 リリース

3DS Max 2019がリリースされたようです。

気になる機能は「OSL マップ」と「Alembic ファイルの読み込みと書き出し強化」ですね。特にOSLマップはユーティリティを含め101個追加されているようで、プロシージャルマップ機能が弱いMaxにはいい機能追加かもしれません。OSLはArnoldが対応してるので、そのことかと思ったらスキャンラインレンダーやVrayなどでも使用できるようです。
https://help.autodesk.com/view/3DSMAX/2019/JPN/?guid=GUID-40222876-7E08-42F8-A912-F6CDC597A3FD

ハイライト
  •  高度な木目マップ
    木目テクスチャを生成するための、高度なカスタマイズが可能な方法です。カエデ材、サクラ材、オーク材のプリセットが含まれています。
  • OSL マップおよび Open Shading Language
    Open Shading Language (OSL)マップというさまざまなプリセット マップが含まれている新しい OSL マップ カテゴリを使用するか、または独自の OSL マップを開発することにより、3ds Max で OSL を利用できるようになりました。
    独自のシェーダを記述できます。既存の OSL シェーダをダウンロードして、使用できます。
  • シェイプのブール演算
    シェイプのブール演算では、ブール演算を使用してスプラインを新しいシェイプに結合できます。
  •  共有ビュー
    任意のユーザとモデルをオンラインで共有し、フィードバックを受け取ることができます。
  • 3ds Max Interactive
    新しいレベル ビューポート VR を使用して VR を編集できるようになりました。これにより、VR ヘッドセットを使用して、自分のレベルをバーチャル リアリティ内で開始および編集することができます。
CG News

Edge Flow 1.0

Mayaのエッジフローツールをエミュレートするモデリングプラグインがリリースされました。
価格は€8。作者はTRacer XGeo From Curvesと同じ方です。
https://gumroad.com/l/edgeFlow

EdgeFlowはmodo 901以上で使用可能な新しいC ++ツールです。Mayaのエッジフローツールをエミュレートします。
win64とosXで利用可能です。

CG News

Instant Lighting Kit for Modo

Instant Lighting Kit for Modoというライティングプリセット集が発売されたみたいです。価格は$30。3月26日まで早期割引期間で、クーポンコードを使用すると25%OFFの$22.50で購入できるようです。
https://gumroad.com/l/lightingkit

製品概要

インスタント ライティング キットは可能な限り短時間で美しいレンダリングを作成できるように設計されています。シーンを素早くライティングしてボタンをクリックするだけでプロのライティング結果を得ることができます。

いくつかの異なるルックとムードを作り出すリグで、魅力的なシーンを素早く作成できるようにしたいという思いから生まれました。モデルを見せたり、プロダクトレンダリングを作成したり、アーキテクチャに最適です。

このキットには合計36の異なる環境を提供します。これらの環境はスタジオ、インテリア、エクステリアの3つの大きなカテゴリーに分かれています。プリセットブラウザから3つのカテゴリの1つを選択すると、それぞれの環境で12種類の環境が順番に切り替わります。さまざまなオプションをすばやく比較し、数分でシーンに適したものを選ぶことができます。

このキットは、ライティングに多くの時間を費やしたくない人に最適です。モデラーは最小限の労力で美しくメッシュを表示できます。シーンをすばやく作成する必要のある専門家にも適しています。

CG News

V-Ray 3.6 for MODO リリース

V-Ray 3.6 for MODOがリリースされたようです。
http://v-ray.jp/v-ray/modo/

V-Ray 3.6 for Modo 新機能

  • MODO 12 シリーズをサポート
  • GPU ハイブリッドレンダリング
    V-Ray GPU のCUDAデバイスとしてCPUを利用する事が可能です。CPUとGPUの境界が無くなりレンダリング環境の選択がより容易になります。(CPU用レンダーファームをGPUレンダリングで利用したり、その逆も可能)
  • 再起動の無いデバイス選択
    MODOを再起動する事なくGPUレンダリングデバイスを選択できます。
  • V-Rayファー(芝生)
    V-Ray Fur生成機能をサポートし、レンダリング時に手続き的に短毛を生成します。芝生やラグマットのディテール作成に大変便利です。
  • VRscansをサポート [※別売りライセンス]
    ChaosGroupが特許を取得したマテリアルスキャニングシステムを使用したスキャンデータをMODOでも活用いただけます。VRscansではBRDFの代わりに、BTF (bidirectional texture functions) を使用して、物体表面構造(模様)や光の反射率を完全にキャプチャーし再現します。ライセンスを購入するとChaosGroupが既にキャプチャした 650 以上もの汎用スキャンデータを活用いただけます。
  • 完全なライトセレクトエレメント
    GI、反射/屈折、SS等を含めた完全なライト別の要素出力に対応。ポスト編集で完全なライトのOn/Off、掛け合わせ処理が可能になります。
  • クリプトマット
    ポスト処理で被写界深度、モーションブラー等を適用する為に必要な情報を含めたIDマスクを自動的に生成します。ポスト処理の効率を大幅にUPします。現在 NUKEとFusionでご利用いただけます。

その他、機能改善と不具合の修正が含まれます。

参考資料

NVIDIA RTX and GameWorks Ray Tracing Technology Demonstration

映画品質のリアルタイム レンダリングを提供するレイトレーシング技術の NVIDIA(R) RTXを発表されました。DrectX 12にレイトレーシングのパイプラインを統合した「DirectX Raytracing(DXR)」のAPIを使用するアプリケーションと互換があるようです。

レイトレースのメリットであるシャドーやリフレクションの正確さがわかるいいデモです。擬似的な表現に比べて絵が安定して見えます。デノイズを使用してリフレクションブラーを滑らかにするデモも素晴らしい。

DXRはDrectX 12に対応したGPUであればDXRを使用できるとのことですが、RTXはデモに使用されたハードスペックがだいぶ高いっぽいです。将来的には昔から研究されているレイトレース専用チップを搭載したグラフィックカードが登場して、DCCツールのビューポートでレイトレースが動いたり、レンダリングが早くなったりしたら面白いですね。
http://www.4gamer.net/games/033/G003329/20180323013/

CG News

OctaneRender 4

OctaneRender 4が発表になりました。既存ユーザーはプレビュー版を使用できるようです。

OctaneRender 4はライセンスに大きな変更があり、新しくフリー版が発表されました。フリー版は商用利用でも最大2つのGPUコアまで無料で利用できます。フリー版には有料版のすべての機能が含まれており、DCCおよびCADツール用のプラグインのうち約12個にアクセスできます。
サブスクリプションライセンスは最大20のGPUコア、すべてのDCCプラグインを含んでいて月額 $20。追加のネットワークノードは月額 $10 。2番目のスレーブライセンス。
永久ライセンスは最大200のネットワークGPUコアと、NvidiaのNVLink GPU相互接続技術をサポートする「エンタープライズ」に移行する予定。
https://render.otoy.com/forum/viewtopic.php?f=33&t=66013

  • AI Lightの新機能
    OctaneにAI Lightが導入されたことで、ライトが多いシーンでは光のサンプリングが大幅に改善されます。AI Lightは学習システムとして、より多くのサンプルをレンダリングするうちに改善されます。Adaptive Samplingと併用すると一部のピクセルがサンプリングされなくなるので、他のライトが重要になることがわかるため、AI Lightはさらに向上します。
    これを有効にするには、カーネル設定のLightの設定を参照してください。
  • AIシーン
    AIシーンはシーンの読み込み時間を大幅に短縮し、ビューポートのインタラクティビティを大幅に向上させます。数百万のトライアングルがあるシーンでも、リアルタイムでジオメトリを配置や変更できます。一定のトポロジを持つ頂点アニメーションは、タイムスライダの移動に伴い複雑なシーンでもリアルタイムに更新されます。大規模なシーンのビューポートでギズモを使用することもリアルタイムです。
  • AI デノイザー
    Spectral AI Denoiserは、わずかな時間でノイズを除去します。 Camera Imager 設定で有効にできます。
  • アウトオブコアジオメトリ
    Octaneはコアジオメトリをサポートし、システムメモリの大部分をジオメトリデータに使用できるようになりました。複数のGPUもコアジオメトリ外でサポートされています。
    Out-of-coreの下に4つのスライダが表示されます。システムRAMの使用制限により、Octaneがコアジオメトリおよびテクスチャの外に使用するシステムメモリの量を制限することができます。これにより、ジオメトリに関連するテクスチャがVRAMから削除されるレベルのバランスを取ることができます。
現在の問題

上記の機能はアプリケーション全体で必要な変更が加えられており、それらをすべて解決するために努力しています。このリリースで現在認識している問題を以下に示します。

  • ネットワークレンダリングは現在無効です。
  • シーンを変更すると、AI Sceneは変更をキャッシュしてレンダリングを高速化します。これにより、一時的にビューポートがフリーズすることがあります。
  • 大量の発光トライアングル(数百万)があるシーンでは、AIライト処理が遅くなることがあります。
  • 最初のAIシーンキャッシング中に変更を加えると、エミッタが機能しなくなるかビューポートが一時的にフリーズします。
  • リグメッシュアニメーションでタイムスライダを変更しているとき、時々レンダリングエラーが発生します。
  • レンダリング速度とVRAMの使用状況プロファイリングはまだ未解決の課題です。将来のリリースでレンダリング速度とジオメトリの使用率を向上させることが期待されます。
  • AI SceneとAI Lightはまだヘア/スフェアプリミティブタイプでは完全には動作していません。
  • AI Denoiserは現在、1つのGPUのみをサポートしています。これは、環境設定ダイアログのデバイスタブから選択できます。
  • AI DenoiserはまだVoltaに取り組んでいません。

 

 

CG News

Mudbox 2018.2 – Dynamic Tessellation

Mudboxがアップデートがされて、Sculptrisのように動的にポリゴンを細分化する機能が搭載されたみたい。ビューのズームと連動してるらしい。
ここ数年Mudboxは新規能なしと停滞してましたが、開発に注力することが去年発表されました。思ったより早く結果が現れましたね。
https://area.autodesk.com/blogs/thebuzz/announcing-mudbox-20182-update-and-introducing-dynamic-tessellation/

Tips

modoで関節の位置にあるロケータでアップベクターを制御する方法

前回に引き続きIK制御に関連したリグの作り方です。IKで制御されている関節の位置にコントローラーを配置して、そのコントローラーを回転してアップベクターを制御するリグの作り方を書いてみます。

 

このリグは好き好きあると思いますが、IKの「モディファイヤ依存ループ」を回避する方法として紹介してみたいと思います。基本的には「IKゴールの移動範囲を制限する方法」と同じで、IK制御に関連しない階層を使用するのがポイントです。

作成手順です。

  1. IKとアップベクターが設定されてたシーンファイルを準備します。
  2. ロケータを3個追加します。
    追加したロケータはそれぞれ、スケルトンの位置、アップベクター位置、IKゴール位置に配置します。アイテムの配置はドロップアクションの「位置を一致」を使用すると便利です。
  3. ロケータに親子関係を設定します。
    アップベクターに配置したロケータを、IKゴールに配置したロケータにペアレントします。IKゴールに配置したロケータを、IKゴールにペアレントします。
    アイテムのペアレントはドロップアクションの「同位置でペアレント」を使用すると便利です。
  4. スケルトンの「ワールド位置」を、スケルトンの位置に配置したロケータにリンクします。
    チャンネルビューポートから「ワールド位置」をスケマティックに追加して、ロケータの「ワールド位置」にリンクします。これにより異なる階層にあるロケータが、スケルトンにペアレントしたように動作します。
  5. 同様にアップベクターの位置に配置したロケータの「ワールド位置」を、アップベクターにリンクします。
    本来はスケルトンの位置のロケータに、アップベクターを直接ペアレントできればスマートなのですが、「モディファイヤ依存ループ」が発生してしまいます。このため異なる階層にあるロケータの「ワールド位置」をアップベクターにリンクすることで「モディファイヤ依存ループ」を回避しています。
  6. スケルトンの位置のロケータの回転Yを、IKゴール位置のロケータにリンクします。
    これでスケルトンの位置にあるロケータを回転させることで、アップベクターの位置を変更することができるようになります。

このあたりのリグの組み方がわかると、IKの「モディファイヤ依存ループ」に苦しまずに済むかも知れません。

Tips

modoでIKゴールの移動範囲を制限する方法

前回modoのIKについて書いたので、ついでにIKに関連したリグの組み方の例として、IKゴールの移動範囲を腕や脚の長さより遠くに移動しないように制限する方法を書いてみます。

 

LightWave のIKには「ゴールを接着 (Keep Goal In Reach)」という機能があり、IKチェーン(IKによって制御されているスケルトン)の長さより遠くにIKゴールが移動しない設定がありました。この設定をmodoで再現したものです。

作り方は単純でDistance Constraint を使用してアイテムの移動範囲を制限します。

作成手順です。

  1. IKの始点と同位置にロケータを作成して、ロケータの子のスケルトンにIKを適用します。
    これはFBIKのアップベクターの作成手順で使用する階層構造と同じです。
  2. Distance Constraint を作成します。
    Distance Constraint はその名の通り、距離でコンスレイントするモディファイヤです。
  3. ロケータを作成して、IKゴールの位置に移動します。
    ロケータをビューポートでドラッグアンドドロップ(長押し)すると、ドロップアクションメニューが表示されるので「位置を一致」を選択すると簡単に同じ位置にアイテムを移動できます。
  4. IKゴールをロケータの子にし、ロケータの「ワールド位置」をスケマティックに追加します。
  5. Distance Constraint を設定します。
    IKチェーンの親のロケータと、IKゴールの親のロケータの「ワールド位置」を Distance Constraint の「起点」と「終点」にリンクします。Distance Constraint のプロパティでクランプを「最大」、距離をIKチェーンの長さに設定します。画像ではIKチェーンの長さを計るために、測定モディファイヤの Measure Distance を使用しています。
  6. 最後にMeasure Distanceの「位置出力」を、IKゴールの親のロケータにリンクします。
    IKを制御するときはIKゴールを直接編集するのではなく、ロケータを編集することでIKチェーンの長さより遠くに移動しない状態になります。親アイテムを移動したときもIKゴールが一緒に引っぱられて動きます。
    注意点としては、見た目は制限されていてもトランスフォームの値は生きていることです。IKゴールを遠くまで移動してしまうと、IKチェーンの親アイテムを移動したときに、なかなかゴールに到達しない感じになります。

IKに関連したリグを組もうとすると発生しやすい問題が「モディファイヤ依存ループ」です。IKはIKゴールの位置を使用してスケルトンの位置や角度を計算するため、IKチェーン内のスケルトンの位置や角度を使用してIKゴールを操作しようとすると処理がループしてしまい計算不能になります。

IKに関連したリグを作るときは、IKチェーンと関係ない階層のアイテムを使用するとうまく行くと思います。