2018年

CG News

ORB リリース

VideoCoPilotのフリープラグイン「ORB」がリリースされました。究極の3Dスフィアプラグインとのことで、惑星や衛星のような球体の作成に適した物のようです。
https://www.videocopilot.net/orb/

物理ベースシェーダー
  • 環境リフレクションマップ
  • モーションブラー
  • 高度なUV設定
アドバンスドイルミネーション
シャドーマスキング
  • ビルトインイルミネーション
  • 高度なイルミネーション オプション
  • After Effectsライトとシームレスに対応!
360°環境レンダリング
CG News

After Effects CC 2018 秋

After Effects CC 2018 の秋バージョンが発表になったようです。3Dレイヤーの深度が使えるようになるのはよさそうですね。
https://theblog.adobe.com/design-with-more-control-and-performance-improvements-in-after-effects-cc/CC

 

メッシュスカルプティング

パペットツールをより詳細に制御できる新しいパペットエンジンを導入しました。2種類の新しいピンタイプを追加。Mesh Sculptingをまったく新しいレベルにする新しいAdvanced PinsBend Pinsを使用してレイヤーを曲げたり、ねじったり、スケーリングしたり、ワープしたりします。

 

深度パス

After Effectsで3Dレイヤーを作成することができましたが、3Dチャンネルエフェクトは他のアプリケーションで生成されたレンダリングでのみ機能しました。
3Dコンテンツがどこから来ても、3Dレイヤーの深度パスにアクセスすることができます。 Classic 3DまたはCINEMA 4Dレンダラーのいずれかを使用して、任意の3DコンポジションからZ深度データを読み込みます。3Dチャンネルエフェクト(深度マット、被写界深度、フォグ3D)を3Dプリコンポに直接適用するか、3Dチャンネル抽出を使用して深度にアクセスします 。 ボーナスとして、3D Channel Extractは32ビット対応になりました。

レスポンシブ デザイン

すべてのインスタンスでキーフレームを移動することを心配することなく、コンポジションを時間伸縮できます。マスタープロパティとの連携も優れています。コンポジションをMotion Graphicsテンプレートとして書き出して、Premiereエディタに同じコントロールを与えます。

 

データ駆動型インフォグラフィックス

スプレッドシート駆動のインフォグラフィックテンプレートを設計できるようになり、編集者はデータを更新してコンテンツを動的に更新することができます。

さらに新しいモーショングラフィックスのテンプレートオーサリングの改良により、編集可能なパラメータを持つ整然としたモーショングラフィックステンプレートを、カスタム見出しと巻き上げを含むグループにまとめ、それぞれのコントロールを表示したり非表示にしたりすることができます。また、編集者がさまざまなフォントプロパティを変更できるようにすることもできます。(これはAfter EffectsとPremiereのユーザーからの一般的なリクエストでした。)

 

CG 日記

MayaでBackburnerのジョブ作成

MayaでBackburner使ってレンダリング回すメモ。

 

追加オプション

コマンド ライン レンダラのフラグを入力できる。ただしバッチファイルと異なりディレクトリ指定に\を使用できないので / で記述する必要がある。melの制限なのかな?

-rd //RenderPC/Share/img

 

マネージャー名

マネージャーを起動してるPC名を入力する。入力必須です。

 

レンダラ パス

サーバーPCのMayaインストールディレクトリを入力する。マニュアルには「Maya は各レンダー ノードで同じ場所にインストールしなければなりません。」と書かれてるので、サーバーは「C:\Program Files\Autodesk\Maya2018」のように全て同じパスにインストールする必要がる。パスが混在すると以下のエラーが出てレンダリングが実行できない。

Cmdjob adapter: Create Cmdjob process error: 2

ネットワークスパスを設定してもレンダリングを実行することができたけど、プラグインやModuleで問題がでて上手くレンダリングが回らない場合があった。

 

シーンファイルはネットワーク共有など、全てのPCを再起動後からアクセス可能なディレクトリに置く必要がある。ファイルにアクセスできない場合は以下の

Error message: Cmdjob adapter: Process exit abnormally,Exit code is 211

Tips

modoのファー使用時のレンダリング設定

ファーを使用するときのレンダリング設定について書いてみたいと思います。
ファーマテリアルを使用するとノイズやチラツキが発生しやすくなります。メッシュが密集するのが原因ですが、以下の設定を変えることで改善します。

  • 「間接サンプル」「放射照度」「反射サンプル」などサンプル値を高くする
  • アンチエイリアシングを高くする

 

サンプル数

タイムラプスで使用した草を使って、どのサンプルがどの要素に影響しているか調べました。まずはmodoのデフォルト設定、「間接照明」の「跳ね返り」は 2 です。

デフォルト

アンチエイリアシング : 8サンプル/ピクセル
シェーディング率 : 0.5
間接サンプル : 64
放射照度 : 256


300%にズームした画像です。ファーの表面でノイズが多いのが確認できます。

 

シェーディング率

念のため「シェーディング率」を0に設定してレンダリングしてみた。

アンチエイリアシング : 8サンプル/ピクセル
シェーディング率 : 0.0
間接サンプル : 64
放射照度 : 256

シェーディング率の記事で書いた通り、「シェーディング率」を低く設定してもノイズへの影響は少ないです。

 

放射照度

GIノイズに影響する「放射照度」の値を上げてみます。

アンチエイリアシング : 8サンプル/ピクセル
シェーディング率 : 0.5
間接サンプル : 64
放射照度 : 512

 

「放射照度」は白い平面のノイズには影響がありましたが、ファーの表面のノイズに影響がないことがわかります。

 

 

間接サンプル

「間接サンプル」の値を上げてみます。

アンチエイリアシング : 8サンプル/ピクセル
シェーディング率 : 0.5
間接サンプル : 256
放射照度 : 256

ファーの表面のノイズが改善されました。ファーのノイズの原因は「放射照度」よりも「間接照明」の「間接サンプル」がより影響することがわかりました。

 

 

 アンチエイリアシング

ファーの形状は「円柱」と「ストリップ」が選択できます。草の場合は厚みのない「ストリップ」を使うんじゃないかと思います。

ですが「ストリップ」を使用するとカメラとポリゴンが垂直になるファーが、破線のようにとぎれてレンダリングされることがあります。板ポリゴンをカメラに垂直の位置でレンダリングすると、厚みがないのでレンダリングされないのと同じような問題です。ファーの場合は多少曲がった形状になることが多いので、アンチエイリアシングのサンプル数を上げることで改善します。

アンチエイリアシング : 8サンプル/ピクセル

 

アンチエイリアシング : 16サンプル/ピクセル

 

アンチエイリアシング : 32サンプル/ピクセル

アンチエイリアシングはファーが細い場合にも効果的です。厚みのないファーが V-Ray Fur で廃止されてるらしいのは、やはり途切れてレンダリングされてしまうからなのかな?

フレームパス

ファーを最も綺麗にレンダリングする最終手段として「フレームパス」があります。「フレームパス」は同じフレームを複数回レンダリングして合成することで、ファー、モーションブラー、被写界深度を柔らかくレンダリングする機能です。とても効果が高いですが、レンダリング時間が長くなります。

フレームパス : 2

ファーのランダムシードを変えてレンダリングして合成するような動作なので、ファーの量が多くなってる。

 

フレームパス : 4

 

ファーのレンダリングに何が影響しているのかがわかれば、効率的に設定を詰めることがでるようになると思います。
次回はファーのレンダリング設定をふまえてヘアーマテリアルをレンダリングしようと思いましたが、ガイドをダイナミックカーブで動かそうとすると、modo 10以降は計算が変な気がしますね。

Tips

modoのアンチエイリアシングとシェーディング率

odoのシェーディング率について書いてみたいと思います。ぼけてないシャープな反射、影、テクスチャを綺麗にレンダリングするには「シェーディング率」を0.1に設定してレンダリングした方がいいという話です。

一般的にレンダリングの綺麗さは以下のパラメータで決まります。ここでいう綺麗さはピクセルの品質のことです。GIの計算とかシェーディングアルゴリズムよりもCGの基礎の話です。

  • アンチエイリアシング
  • シェーディング率
  • サンプル数

 

アンチエイリアシングとは

アンチエイリアシングはレンダリング画像のジャギを滑らかにする処理です。アンチエイリアシングを使用するとチラツキがなくなり自然なアニメーションを作成することができます。
単純なアンチエイリアシング処理だとゲームで使われていたポストプロセス処理があります。周辺のピクセルの平均色を使用する方法でFXAAやTXAAというやつです。アンチエイリアシングの詳細はこちらの記事がわかりやすいです。

 

しかし3DCGは無限にズーム可能なので、ポストプロセスのようにピクセル単位で色を決めると情報が欠落してしまい正確なピクセル色になりません。アンチエイリアシングがポストプロセス処理のゲームを遊んだとき、オブジェクトの境界でチラツキ(クローリー)が発生するのを見かけたことがあると思います。

以下の画像はNvidia コントロールパネルを使用してmodoのビューポートにFXAAを適用したものです。

 

オブジェクトの境界を300%に拡大した画像です。FXAAはポストエフェクトなので静止してる場合はアンチエイリアシングが掛かって綺麗に見えますが、ビューが動くと階段状のチラツキ(クローリー)が発生しているのが確認できます。

 

ゲームは応答速度が重要なのでジャギやチラツキは許容されますが、映像目的のプリレンダリングではチラツキやノイズは好まれません。このため昔から3Dソフトのアンチエイリアシング処理は、1ピクセルを分割しサブピクセルをサンプリングしてピクセルの色を決定します。

例えば1ピクセルを4分割する場合、アンチエイリアシングがない状態で4倍の解像度でレンダリングするのと同じくらいの計算コストが掛かります。アンチエイリアシングのサンプル数を高くすることで、正確なピクセル色を得ることができますがレンダリング時間が長くなってしまいます。

 

全てのピクセルを分割するとレンダリング時間が長くなるので、レンダリング時間を短くする工夫として、3Dソフトのレンダラーはオブジェクトの境界を集中的にアンチエイリアシング処理するのが一般的です。

 

たとえば3dsMaxのスキャンラインレンダラーでレンダリングした画像です。Maxのスキャンラインレンダラーは2000年頃からほとんど変わってなくて、デフォルトでは鏡面部分のシェーディングでサブピクセルがほとんど考慮されない設定になってます。

 

同じ問題はmodoでも発生します。下の画像はmodoのデフォルト設定でレンダリングした画像です。球体の輪郭に比べて、シェーディング部分がジャギってるのがわかると思います。

 

ここまで前置きです。シェーディング部分のジャギを軽減するために使用するのが「シェーディング率」です。

 

シェーディング率

「シェーディング率」はシェーディング部分のサンプリングを増やすことでジャギを軽減します。反射、影、テクスチャのジャギが発生したら、シェーディング率を0.1や0のように小さな値を設定することで改善することができます。

シェーディング率はアンチエイリアシングと関係していて、シェーディング率 0.5は1ピクセルあたり4サンプル、0.25は16サンプリング、0.1は1ピクセルあたり100サンプリングのようにサンプルが増えるらしい。

 

下の画像は「シェーディング率」 の比較画像です。シェーディング部分のジャギが改善しているのを確認することができます。

 

リファインメントしきい値 と リファインメントシェーディング率

「シェーディング率」の下には「リファインメントシェーディング率」「リファインメントしきい値」というパラメータがあります。これはレンダリングを最適化するためのパラメータです。「リファインメントしきい値」で設定されたしきい値内のピクセルのみ「リファインメントシェーディング率」で設定された値でサンプリングします。

modoは「シェーディング率」と「リファインメントシェーディング率」で値が低い方の設定を採用するようです。デフォルトでは「シェーディング率」が0.5、「リファインメントシェーディング率」が1.0に設定されているため、「リファインメントシェーディング率」が使用されることはないようです。通常は「シェーディング率」だけ設定しておけば問題ないと思います。

「リファインメントしきい値」の動作が気になたのでアニメーションしてみました。
色の差が大きいピクセルから徐々に滑らかになるのが確認できます。有効に動作しそうなのは50%以下で、0%になると全てのピクセルがサンプリングされるためテクスチャがぼけたように見えます。

左はテクスチャのみ、右はテクスチャとバンプです。バンプを使用するとシェーディングでチラツキが発生しやすくなります。

 

UV確認用のテクスチャ、テクスチャの模様が滑らかに変化するのが確認できます。AEにいれてコマ送りでみると変化がよくわかると思います。

 

反射サンプル と シェーディング率

「ブラー反射」を使用した場合にノイズが軽減するかテストしてみました。シェーディング率を下げるとノイズが少しぼけますが、ノイズそのものへの影響が少ないことが確認できます。反射やGIのノイズを軽減したい場合は、サンプル数を増やした方がよいです。

反射サンプル:64、シェーディング率:0.5

 

反射サンプル:64、シェーディング率:0.1

 

反射サンプル:1024、シェーディング率:0.5

 

反射サンプル:1024、シェーディング率:0.1

 

「シェーディング率」はRender設定の他に、Shaderにもパラメータが存在します。

Renderのシェーディング率はシーン内の全てのマテリアルに影響しますが、Shaderは特定のマテリアルだけシェーディング率を上げることができます。
modoはRender設定とShaderのうち値が低い方のシェーディング率を採用するようです。またShaderはサンプリングのグループを結合する役目があるようです(後述)。アニメーションなどでレンダリング時間を最適化したい場合は、Shader単位で設定が変えられるのが便利ですね。

 

Shaded AA Samples Output

modoのレンダー出力には、アンチエイリアシングとシェーディング率のサンプリングを確認するための出力「Shaded AA Samples Output」があります。Shaded AA Samples Outputはピクセルのサンプリングの割合を視覚化した物で、1回のサンプリングで終了しているピクセルは青、設定の上限までサンプリングされたピクセルが赤で表示されます。適切なサンプリングが行われてるか確認するのに役立ちます。シェーディング率を0.1にすると全てのピクセルが赤になります。

以下の画像はシェーディング率0.5で、アンチエイリアシングの設定を上げた場合のShaded AA Samples Outputです。アンチエイリアシングを上げると青になるのはピクセルあたりのサンプリング数が増えるため、サンプリングの上限に達する前に計算が打ち切られてるってことかな?このことからアンチエイリアシングを上げた場合はシェーディング率を0.1で固定するよりは、シェーディング率を0.25とか適度に設定した方が効率的にレンダリングできるのかもしれない。

アンチエイリアシング : 8サンプル/ピクセル

アンチエイリアシング : 16サンプル/ピクセル

アンチエイリアシング : 32サンプル/ピクセル

アンチエイリアシング : 64サンプル/ピクセル

色がブロックのようにまとまってるのは、シェーディング部分の効率化による物です。サーフェース上のサンプリングが近い場合、グループとして結合することでシェディングの計算を効率化しているとのことです。

このサンプリングのグループ化は、Shaderのシェーディング率の値によって許容量が決定されるらしい。シェーディング率が1.0の場合、ピクセル内のすべてのサンプルが1つのグループとしてシェーディングけされる可能性がある。

 

 

modoのデフォルトのレンダリング設定は、速さを優先しているように思います。最終レンダリング時には「シェーディング率」は0.1のように低い値に設定するのがお勧めです。「シェーディング率」を下げてモアレやチラツキが酷いときに、はじめてアンチエイリアシングのサンプル数を上げるのがよいのではないでしょうか。

MentalRayやArnoldのようなプロダクション向けのレンダラーは、デフォルトでシェーディング部分をある程度サンプリングする設定になってます。そのため、はじめてレンダリングしたときはレンダリングの遅さが気になったりします。

ちなみにMaxでは「スーパーサンプリング」を使用するすことでシェーディング部分のジャギを消すことができます。

 

参考

https://community.foundry.com/discuss/post/339862
https://community.foundry.com/discuss/post/808199

Tips

modoのファーマテリアルとガイド

modoのファーガイドについて書いてみます。セグメント数の少ないガイドを使用する場合は「ポリライン」より「カーブ」を使用した方がいいんじゃないかという話しです。

 

ファーマテリアルとガイド

modoにはファーやヘアーを表現するためのFur Materialがあります。Fur Materialで髪の毛や長い草のような形状を指定する場合や、アニメーションしたい場合は「ガイド」を使用します。
ガイドとして使用できるのは「カーブ」と「ポリライン」の2種類です。現在はヘアーツールの「ガイドを生成」で生成されるのは「ポリライン」ですが、701以前のバージョンでは「カーブ」が生成されていました。ガイドを多く生成した場合に「カーブ」より「ポリライン」の方がパフォーマンスがよいとのことで仕様が変更されました。

 

ですがタイムラプス表現で使用したように「ダイナミックカーブ」で草を揺らす場合は、ガイドの「セグメント数」が多いと物理計算の負荷が上がります。アニメーションを前提とした場合も「セグメント数」が少ない方が制御しやすいと思います。
そこで少ないセグメント数のガイドを使用したとき、「カーブ」と「ポリライン」でどんな違いが出るかテストしてみました。

 

ガイドと最大セグメントの数

下の画像では緑の線が「ガイド」です。左から順に「セグメント数が20のポリライン」「セグメント数が5のポリライン」「セグメント数が5のカーブ」です。赤の線はファーのプレビューです。パースの関係でガイドの形状が違うように見えますが、全部同じ形状です。

 

ファーをガイドの形状にそわせるには「最大セグメント数」が関わってきます。「最大セグメント数」はファーの長さの分割数で、値が大きいほどなめらかに曲がったファーになります。

 

最大セグメント数:5

 

最大セグメント数:10

 

最大セグメント数:50

 

最大セグメント数:100

 

最大セグメント数:1000

 

レンダリング結果を見ると一目瞭然ですね。ガイドのセグメント数が5のように少ない場合は、ポリラインよりカーブを使用した方がなめらかに曲がります。ポリラインをガイドに使用する場合は、なめらかに曲がる程度のセグメント数が必要です。ファーのガイドをアニメーションさせたい場合は、カーブを使ったほうが良好な結果が得られそうです。またカーブを使用した方がガイドの先端までファーが伸びているのが確認できます。

「最大セグメント数」は値が小さすぎるとカクカクした形状になりガイドから離れてしまいます。値が1000のように大きい場合はガイドに近い曲がり方になりますが、ポリラインを使用した方はセグメント数が20程度だと、ガイドのカクカクした感じがレンダリングにあらわれてしまいます。

「最大セグメント数」の値が大きければよいかというとそうでもなく、「成長ジッター」に値が入っている場合はシェーディングがデコボコすることがります。以下の画像は「最大セグメント数」1000で「成長ジッター」25%(デフォルト)のレンダリング画像です。成長ジッターの影響でセグメントの長さが重なってるのか?バンプを設定したようになりました。髪のように綺麗なスペッキュラが欲しい場合には、このあたりの設定に注意が必要だと思います。

ファーの長さにもよりますが「最大セグメント数」は10~50くらいが実用的かもしれません。ちなみにカーブの作り方は、ポリラインでガイドを生成してから、エッジモードでポリラインを選択して「エッジからカーブ」を実行しました。

 

ガイドオプション

Fur Material でガイドを使用する場合はガイドオプションで「ガイド」の適用方法を指定します。ガイドをアニメーションしたときに、GLでの動きとレンダリングが違うのが気になったので検証してみました。

 

クランプ

クランプは「クランプ量」が設定されてるときファーがガイドに集まるようになります。

クランプはGLとレンダリング結果が変わります。画像の左がポリライン、右がカーブです。ガイドのセグメント数は3ポイントです。ポリラインはカーブに比べてファーの長さが短くなるようです。先端の集まり方も極端ですね。

 

方向

GLとレンダリング結果が一致してます。

 

方向 + 長さ

GLとレンダリング結果が一致してます。

 

シェイプ

GLとレンダリング結果が変わります。赤のガイドは意図した通りにアニメーションしていますが、緑のファーがカクカクしてます。マニュアルによると「シェイプ」は近くの3本のガイドを補間する処理で、ロングヘアーには向いていないとのことです。GLではガイドの補間が処理されないため、ファーの位置が飛んで見えるのかもしれません。

 

範囲

GLとレンダリング結果が変わります。下の画像ではファーが表示されてませんが、「範囲」はポリゴン数が少ないとファーが表示されないようです。ポリゴンを細分化すると表示されるようになります。
またGLとレンダリングでファーの長さが違います。マニュアルにはヘアーの長さはガイドの長さで決まる。ロングヘアーに向いてると書いてます。ガイドが密集してる場所はガイドの長さに近づき、ガイドの外側はファーが短くなる処理されるようです。その範囲の処理がGLに反映されないので、GLとレンダリングが違って見えます。また左のポリラインを使用したレンダリングは、ファーの長さがガイドより短いようです。ポリラインに「範囲」を使用すると、先端が考慮されないのかもしれません。

 

ファーのGL表示は極端な動きに見えることがわかりました。しかしレンダリングでは極端な動きが発生しないことが確認できました。プレビューなのでレンダリングと異なるのは理解していましたが、思ったより違う印象ですね。

ちなみに、ガイドのアニメーションはLinear FalloffのテクスチャロケータにRippleを設定しています。

 

 

次回はファーマテリアルを使用した時のレンダリング設定について書いてみたいと思います。

趣味

Windows エクスプローラで任意の文字列を含むファイルの検索方法

Windows エクスプローラの右上にはファイルを検索するフィールドがあります。ファイル名に含まれているはずの文字列で検索しても、検索に引っかからないファイルがあります。そんなファイルを検索する方法について書いてみます。

たとえばフォルダには「Egg」という文字列を含むファイルが5個あります。

 

「Egg」で検索すると3ファイルしかヒットしません。「Egg」の直前の文字がハイフンやアンダーバーの場合は検索されますが、「BaconEgg」「ToastEggBacon」のようなファイルは検索に引っかかりません。

 

「*Egg」のように検索文字列の先頭にアスタリスクを追加すると、「Egg」を含むファイルが検索されるようになります。

 

 

命名規則に沿ってファイルを大量に作る必要があったときに、特定の文字列を含むファイルが検索に出てこなくて、アレ?と思ったのでメモしておきます。

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をサポートしました。

 

参考資料

Incredibles 2のエンジニアリングに忠実な髪

Pixar が Incredibles 2 向けに開発したヘアワークフローを紹介するビデオをアップロードしています。 SIGGRAPH 2018でおこなう講演用らしい。プレビューでの再現性が高そうですね。

Tips

modoのセットアップ/静止値の使い方

リギングでの「セットアップ/静止値」の使い方について書いてみます。
modoのセットアップモードには、セットアップモード専用の値として「セットアップ/静止値」があります。スケルトンに位置コンストレインなどを提供してリグを構築する場合は、セットアップモードでチャンネルを右クリックして「セットアップ/静止値に適用」することで、セットアップモード内に値を設定することができます。

■ サンプルファイル

 

セットアップモードの記事で書いた通り、バインドしたスケルトンのトランスフォームには自動的に「セットアップ/静止値」が設定されます。

もし手動でリグを構築しているときに、シーンの編集がセットアップモードに影響をあたえてしまう場合は、「セットアップ/静止値」を明示的に適用してあげるといいと思います。

 

キャラクターリグ用のプラグイン、CharacterBoxではセットアップモードONとOFFでトランスフォームの値が変わります。このためトランスフォームチャンネルに直接チャンネルをリンクするとセットアップモード内の値を上書きしてします。

こういうリグには条件式の「A は B と等しい」を使用するとよいです。「値 A」のチャンネルに「セットアップ/静止値」として1を設定し、セットアップモード OFFのとき 0 に設定します。
以下の画像は足の角度でスカートを自動的にアニメーションさせるためのリグをテストしたものです。

■ サンプルファイル

 
尾リグはプライマリ トランスフォームの値を使用して遅延したアニメーションを実行します。プライマリ トランスフォームのチャンネルを直接書き換えるとセットアップモードの値に影響をあたえてしまうので、条件式を使用してセットアップモードを判断してます。
条件式の「A は B と等しい」を使用することで、セットアップモード ONのときは「出力 True 値」としてスケルトンの「セットアップ/静止値」が出力され、セットアップモード OFFのときは「出力 False 値」として Relationship の値を出力するようにしてます。

 

再利用可能なリグを作る場合はシーンでの編集がセットアップモードの位置に影響をあたえないように、トランスフォームに「セットアップ/静止値」を設定しておくといいような気がします。

CG 日記

VRoidStudio 使ってみた

VRアバター作成ソフト、VRoidStudioを使ってみました。
https://vroid.pixiv.net/

髪が一筆入魂な男らしい作りです。このソフトはUnityで作られてるというのが面白いです。まだベータ段階ということで一般的な3D/2Dソフトに比べると全体的に粗削りな状態ですが、今後改善されれば3D未経験者が手軽に3Dにふれるいい機会になるんじゃないでしょうか。

 

モデルとテクスチャはmodoに読み込むこともできました。VRoidがエクスポートするVRM形式はglTF v2.0互換フォーマットのようです。拡張子を.vrm から .glb に書き換えることで、.glb対応のソフトに読み込むことができます。
modo 11.2V3以降はglTF v2.0形式に対応してたと思ってましたが、出力に対応してるけど読み込みできないという中途半端な対応状態だったので、Windows10 にプリインストールされている 3DBuilder を使ってobj形式でエクスポートした物をmodoで読み込みました。

 

modoでの質感ですが、テクスチャは「ディフューズ色」として読み込まれますが、トゥーンぽくしたかったので「ルミナンス色」に変更して「ルミナンス量」を1.0にしています。
髪や眉毛のテクスチャは白黒マップとして出力されるので、シェーダーツリーでテクスチャを「乗算」にして色を乗せています。また読み込んだ直後だと髪や眉毛の板ポリ表示されてるので、テクスチャを複製して「反転」、アルファチャンネルを「アルファのみ使用」、レイヤーエフェクトを「ディゾルブ」にして透明部分を抜いてます。

3D初心者にとって作るのが難しい髪やキャラクターを手軽に作成できるので、3Dのとっかかりとして便利かも知れませんね。