2018年11月

CG News

選択中の複数アイテムに対してチャンネルリンクするスクリプト

選択中の複数アイテムに対して、チャンネルをリンクするスクリプトが公開されてました。スクリプトとかまったく書けないですが、この行数なら改造して何かに使えそうかも。。。
https://community.foundry.com/discuss/post/1152345

 

#!/usr/bin/env python

import modo

chan_out = ‘visible’
chan_in = ‘render’

def scene():
return modo.scene.current()

def items_selected():
return [i for i in scene().selected]

work_space = scene().groups[0]

for item in items_selected():
item.channel(chan_out) >> item.channel(chan_in)
work_space.addItems(modo.Item(item.id))

Tips

modoのウェイトマップフォールオフ

modo 12.0で追加されたウェイトマップフォールオフについて書いてみたいと思います。
modoのデフォーマはインフルエンスによってどこを変形するか指定します。しかしジェネラルインフルエンスを使用していない Soft Lag や Wrap Influence のようなデフォーマはウェイトマップを使用して変形を制御することができませんでした。

ウェイトマップフォールオフを使用すると、これまでウェイトップに対応していなかったデフォーマでもウェイトマップを使用して変形を制御できるようになります。Soft Lagと組み合わせるとメッシュの一部だけ揺らすことができるようになるので、キャラクターの一部を揺らす擬似的なマッスルなんかに使えるんじゃないかと思います。

 

Soft Lagはウェイトマップの解釈が少し独特なようです。ウェイト値0の頂点は変形しませんが、ウェイト値が0以上の頂点はソフトラグの「強さ」が変わって見えます。単純にマスクしてくれた方が使いやすいんですけどね。

 

需要があるかわかりませんが、モーフもウェイトマップを使用して変形する範囲をマスクすることができます。

Locatorの位置Xが正数/負数かを条件式の「A は B より小さい」を使用してリグっぽくしてます。
ウェイトマップを切り替えはString Switchノードを使用します。String Switchは「入力」チャンネルにリンクされた順番で文字列を出力するので、ユーザーチャンネルに文字列チャンネルを追加してウェイトマップ名を設定し、String Switchの「入力」チャンネルにリンクしています。

これまではウェイトマップを使用できない一部デフォーマの使い勝手に不満がありましたが、ウェイトマップフォールオフのおかげで不満が解消されそうです。

CG News

OctaneRender 4 リリース

OctaneRender 4がリリースされたようです。modoの体験版はまだ古いバージョンみたい。
https://home.otoy.com/octanerender-4/

OctaneRender 4は2016年4月に発表され、2017年に出荷予定でした。Octaneの開発者が抜けてFStormRenderを開発。OTOYがFStormにOctaneのコードが使われていると販売の差し止めを求めたり、専門家の検証の結果FStormが無実だったりと開発以外のところで目立ってました。Octane 4が本当にリリースされるのか少し心配でしたが無事リリースされたみたいです。

OctaneRender 4と同時に、サブスクリプション専用となる OctaneRender 2018.1 のプレビュー版もリリースさてるようです。
https://render.otoy.com/forum/viewtopic.php?f=33&t=69461

OctaneRender 4の新機能

Octane 4は最先端のSpectral AI Denoising、AIライティング、高性能のアウトオブコアジオメトリ、シーングラフとビューポートで10倍〜100倍のスピードアップを含む、世界で最も高速なアンバイアスGPUレンダラーに数多くの業界初のブレークスルーを統合します。

OctaneRender 4は現在購入可能で、Octane 3のすべてのユーザーのための無料アップグレードです。

 

Octane オールアクセス

新しいOctane 4年間の「オールアクセス」サブスクリプションプラン $ 19.95/月(最低1年以上)、好きなDCCプラグインへのアクセス。
Maya、CINEMA 4D、AutoCAD、Revit、 Houdini、Blender、3ds Max、After Effects、Nuke、Unity、まもなくUnreal Engineなどがあります。

 

Brigade Engine の統合

OTOYのリアルタイムパストレースゲームエンジン「Brigade」はOctane 4に統合され、重いシーンの読み込みとインタラクティブ機能を最大10倍〜100倍高速化しました。

Brigadeは数百万のトライアングルを持つ重いメッシュやシーンを移動または変形するとき、Octaneビューポートで即座にゲームエンジンのようなフィードバックを与えます。

 

アウトオブコアジオメトリサポート – Octane シーン AI

Octane 4は、複数のGPUであってもスピード・ロスを最小限に抑えて、CPUメモリからコア・アウト・オブ・ジオメトリを高速にレンダリングできます。アンバイアスGPUレンダラー初です。

必要に応じてすべてのメッシュとテクスチャをCPUメモリに格納し、Octane ビューポートのレイテンシを持たない完全にインタラクティブな速度でレンダリングできます。シーンAIはリアルタイムにサーフェスの可視性をモデル化し、最大のパフォーマンスを得るためにジオメトリをコアの内外に動的に移動します。

Spectral AI Denoiser

Octane 4は画期的な機械学習技術を導入し、ビューポートと最終的なレンダリングの両方でインタラクティブにビューティーとAOVパスをオンザフライで伝えます。

Octaneの最先端のSpectral AI Denoiserは、エンジンの内部のスペクトル放射、シーンデータの内部知覚モデルのマテリアルで動作します。ドメイン特有のAIデノイザーはガラス、屈折、SSS、被写界深度、モーションブラーをサポートし、ノイジーなシーンでレンダリング時間を50〜100倍短縮します。

 

Volumetric AI Denoiser

OctaneのボリュームメトリックAIデノイザーは、ノイズのない結果を得るため従来は数万のサンプルを必要としていたボリューム(およびボリュームパス)のノイズを除去します。

 

AI Light

AIライトはAI デノイザーをさらに補完します。マルチポイントやスポットライトなどの小さな光源を多く使用したシーンでは、最大6〜10倍のスピードでリアルタイムにエミッシブポイントを追跡できます。

 

ライトリンクとライト除外

Octane 4のライトリンクとライトの除外は、複数のレンダーパスを作成せずに複雑なライティングのシーンを細かく管理するのに役立ちます。エミッタノードにライトIDが設定されているので、オブジェクトレイヤーノード内のマテリアルによってライトを含めることや除外することができます。また、カーネル設定でもグローバルにオブジェクトへのエミッターの影響を制御できます。

 

惑星環境システム

Octane 4の新しい惑星環境はNishitaスカイモデルに基づいており、上層大気と宇宙で太陽光による散乱をシミュレートしています。これは物理的条件と照明条件を拡張して、アンバイアス パストレースの精度で大気シェーダと惑星シェーダをサポートします。

ユニバーサルマテリアル

Octane 4のユニバーサルマテリアルでは、異なる材料を組み合わせるプロセスが簡素化されました。単一の「Uber」マテリアルを使用して以前は複数のタイプのマテリアルミックスを必要としていたものを達成することができます。

拡散、鏡面、光沢および金属などの、 ユニバーサルマテリアルには、Specular Transmission、Diffuse BRDF、Specular Reflection、Coating、Sheenを含む複数のBXDF ローブが組み込まれています。

 

シェーディングとライティングがOctaneBenchパフォーマンスで25%の速度向上

AIやシーングラフの改善がなくても、Octane 4は同一のGPU上でOctane 3 よりも25%速くレンダリングします。

 

ネイティブ Substance PBR テクスチャ統合

OctaneRender 4は、C4Dや3ds MaxなどのDCCツールにSubstance PBRテクスチャを統合するようになりました。

UDIMテクスチャ

プロダクションテクスチャワークフローの場合、OctaneRender 4は新しい画像タイルテクスチャノードを使用してUDIMテクスチャをサポートし、アーティストがカスタムタイルグリッドを設定できるようにします。

8:1 GPU テクスチャ圧縮

Octane4の動的に圧縮されたテクスチャは、通常のRGBA、グレースケールおよびフロートテクスチャのVRAMの仕様を 1/3 ~ 1/8にします。圧縮テクスチャはスピード損失がゼロで、非圧縮テクスチャとほぼ同じ品質です。

マテリアルのIORテクスチャ入力

ユニバーサルマテリアルのベースレイヤのマテリアルIORは、新しい1/IORテクスチャ入力ピンに接続されたテクスチャノードとOSLシェーダで手続き的に制御できます。

マルチレイヤーOpenEXR インポート/エクスポート

テクスチャノードのEXRレイヤーインジェストを使用して、マルチレイヤーOpenEXR出力ファイルをOSLポストプロセスおよびコンポジットノードグラフにリロードすることができます。
OpenEXRのインポートとエクスポートにより、レンダーレイヤのビューティーとライティングパスのコンポジット、デノイズ、ブレンディング、フィルタリング、リライティング、色補正を細かく行うことができます。 OSLシェーダノードのフルパワーと柔軟性を備えています。

新しいFBXシーンエクスポータノード

アーティストはOctaneRenderの内部ORBXシーン変換システムを使用してシーンジオメトリをフラット化およびエクスポートし、複数のジオメトリグラフをサードパーティ ツール用のFBX/Alembicファイルにエクスポートできます。

CG News

modoのランダム ワイヤーフレーム カラー スクリプト

modoのワイヤーフレーム色にランダムに色を設定するスクリプトが公開されています。バウンディングボックススレッショルドと組み合わせるとMaxっぽくて便利かもしれません。
https://community.foundry.com/discuss/post/1151471

スクリプトはファイルに保存してUIのボタンに割り当てるか、スクリプトエディターから実行することができます。

 

import modo, random

def random01():
# Convert random 0-1 into scring
return (str(random.random())+” “)

def setColor(item):
try:
# add draw package
lx.eval(“!item.draw mode:add type:locator item:%s” % item.id)
# Set color to user
lx.eval(“item.channel name:locator$wireOptions value:user item:%s” % item.id)
except RuntimeError:
# Item alread has package
pass
# Randomize color
color = (“{“+random01()+random01()+random01()+”}”)
# Set Color
lx.eval(“item.channel name:locator$wireColor value:%s item:%s” % (color, item.id))

# Get the active scene
scene = modo.Scene()
# Get selected objects of type mesh
items = scene.selectedByType(lx.symbol.sITYPE_MESH)
packAdded = False
# if selection contains meshes
if items:
for item in items:
print item
setColor(item)
else: # Otherwise Do all
for item in scene.iterItemsFast(lx.symbol.sITYPE_MESH):
setColor(item)
print item

 

 

Tips

modoでプロシージャルな等高線の作り方

modoのプロシージャルモデリング機能を使用した、オブジェクトの等高線のような表現方法について書いてみたいと思います。

プロシージャルモデリングとモデリング機能のように呼ばれていますが、modoのプロシージャルモデリングは自由度が高いので、アニメーション作成でも便利に使うことができます。例えば入力データに依存しないアセンブリやエフェクトを作成することができます。このサンプルファイルでは、好きなメッシュをMerge Meshにリンクすると等高線のようなカーブを生成します。

サンプルファイル(12.2以降)

 

スケマティックはこんな感じ。

処理は簡単です。プロシージャルモデリングのAxis Drillでスライスしてエッジを作成、Edges to Curves でエッジからカーブを作成しています。レンダリングは「カーブをレンダリング」機能を使用してます。

本当は等間隔でエッジを作るにはAxis DrillよりAxis Sliceを使うのがスマートです。Curve Slice、Slice Effector、Pen Slice、Curve Sliceというスライス関連のノードがありますが、Axis Sliceには「エッジ選択セット」を作成する機能がないため、スライスしたエッジを選択する手段がありませんでした。しかたがないのでArrayで平面を複製してスライス専用のメッシュとして使用しました。(2018/12/11追記、Assign Selection Setで追加したエッジのみ選択する方法を見つけました

Merge Meshes でメッシュの入力を分けてるのは好みの問題です。アニメーションしているメッシュにノードをまとめることもできますが、メッシュオペレータは処理が重いので、分けたほうが表示をオンとオフで切り替えるのが簡単です。処理をライブラリ化して使い回したい場合にも便利だと思います。

テクスチャでも似た感じのことができると思いますが、メッシュをスケールしたときに、均一な太さの線にならないんじゃないかな?という気がします。

 

メッシュ入れ替えた例。いちど処理を作ってしまえば再利用できるのがいいですね。

ダイレクトモデリング機能でも同じようにエッジからカーブを作ることができますが、プロシージャルモデリング機能では自動的に等間隔のカーブを作ることができます。しかもアニメーションしているメッシュを使用できるというのが、プロシージャルモデリングの魅力ですね。

 

参考

CG News

Modoブラックフライデーセール

Modoのブラックフライデーセールが告知されていまっす。サブスクリプション価格を30%OFF、メンテナンスアップグレードを15%OFFだそうです。今から1年のタイミングだと12.2から13.2までのバージョンが使えるようになりますね。
https://www.foundry.com/news-awards/modo-black-friday-2018

セール期間

11月23日午前12:00 ~ 11月 26日 11:59 PM(PST)

CG News

Modo 12.2 リリース

Modo 12.2 がリリースされました。
https://community.foundry.com/discuss/topic/144069/modo-12-2v1-is-now-available

Modo 12.2v1の新機能
https://learn.foundry.com/modo/content/help/pages/welcome_modo/whats_new.html?_ga=2.100623070.1946215033.1541980946-113635308.1486795389

 

プロシージャルモデリング機能の強化。modoにしては珍しいステッチ専用機能とモデリング関連の機能が継続してアップデートされています。個人的にいいと思った機能は、レンダリングのOptixのデノイザー搭載。601の頃からずっと欲しかったスケマティックのコメントノードと、Nukeのようなバックドロップノード。

少し残念だったのがバウンディングボックススレッショルド機能です。LWにあった同名の機能はアニメーション作成でとても役だったので、追加されたと知ってとても期待していました。ですがLWやMaxのようにアイテム編集中やアニメーションの再生中にはバウンディングボックスにならないため、アニメーション作成時のレスポンス改善にはつながらないのが残念でした。ぜひ次のバージョンアップではアニメーション関連のレスポンスを改善して欲しいですね。

Pixel FondueのMODO 12.2リリースチャットの中で、modoのパフォーマンスに関して大きなプロジェクトが進行中との話が語られてるようです。またデノイズは将来オクルージョンパスをサポートすることを検討している。アニメーション関連についてはアニメーションレイヤーと真のノンリニアニメーションのサポートに取り組んでいたらしい。 ProRenderについては12.2と互換性のあるテクニカルプレビュー版がすぐに利用できるようになるとのことです。

 

 

Modo 12.2

NVIDIAのOptixによるGPUアクセラレーションレンダリング

NVIDIAのエンジニアリングチームと協力して開発され統合されたOptixは、Modo 12.2および今後のリリース向けに最適化されています。

MeshFusionの最適化

複雑なコーナーと凹型のコーナーで、自然なベベル機能に沿ってより多くの結果をシミュレートするための強力な改善が行われました。

アニメーションとリギングの改善

世界をリードするアニメーションやキャラクターアーティストと協力して、スケマティックビューポートを合理化し、クリエイティブなワークフローでよりクリーンで使いやすい体験を提供しました。

Modo 12.1はエンベロープのプリセットを開始しましたが、Modo 12.2ではグラフエディタから直接保存できるベクターエンベロープとスケールエンベロープを追加することでプリセットを拡張し、シーンに直接ドラッグアンドドロップできます。新しいスケマティックビューポートノート機能を使用すると、手動で機能を確認したりチャンネルの値を自動的に強調表示することができます。

ワークベンチによるユーザーインターフェイスのカスタマイズ

Modo 12.2にはカスタマイズ可能なUIモジュールであるWorkbenchが導入されています。このモジュールを使用すると、ボタンコントロール、アイテムチャンネル、コマンドリストのコマンド、プリセットブラウザのプリセットなどの大半を追加できます。スクリプト作成の専門家でなくても、ワークフローに合わせて直感的で柔軟な方法でツールプリセット、マクロ、スクリプトを追加することができます。
ユーザーエクスペリエンスの強化は、より大きなシーンを扱うためのバウンディングボックススレッショルド オプション、プリセットブラウザでの新しい表示の追加により、プリセットを素早く見つけて整理できます。

プロシージャルモデリングとプロシージャル ステッチング

12.2のプロシージャルモデリングでは、UV矩形、UVフィットメッシュ、UVアンラップメッシュを追加することで、大幅に改善されたUVマッピングファンクションが導入されています。UV-to-Meshメッシュオペレータは、選択されたUVマップに基づいてメッシュを手続き的に生成します。
プロシージャル ステッチングは、自動車、靴およびアパレルの顧客が求められている機能でした。新しいステッチツールを使用するにはメッシュに描く方法や、既存のメッシュのエッジを選択してステッチに変換する方法など、ステッチを下のサーフェースに固定したままにする方法があります。

 

アドバンスドビューポートでダイレクトモデリング

AVPを使用すると四角形の代わりに円で表されたポイントや、通常のビューポートとよりインラインになり、ジオメトリの背後に配置されたときに表示される選択肢をより鮮明に視覚できます。
デプススナップは、スナップ動作を定義された深さに分離するのに役立ちます。複雑なシーンで作業する場合、カーソルはより直感的な方法で表示されます。

 

Modo ブリッジ

Modo 12.2とUnreal Editor間のアイテム転送は、以前のバージョンより最大400%速くなり、大規模で複雑なシーンのラウンドトリップを劇的に改善します。 一時的なフリーズや遅延の除去はバックグラウンドで行われるようになり、アセットがシーンに取り込まれている間も作業を続けることができます。

統合されたバーチャルリアリティビューポート

Modo 12.2ではVRビューポートの実装を拡張して、コンポーネントの選択と、小さくて洗練されたコアモデリングツールのセットを可能にするVRツールセットを紹介します。
選択モードでは、頂点、エッジ、ポリゴンの選択間をジャンプできます。モデリングツールのサブセットは、ペンツールやカーブツールなどの使い慣れた機能を提供します。 これまで以上に没入感のある方法でスライド、ベベル、フリップ、押し出し、厚くすることができ、創造的な旅の境界を押し広げることができます。
トポロジーペンは、VRビューポートで最も重要な追加機能の1つで、サーフェスの操作、コンポーネントの移動、エッジの移動を自由に行うことができます。

Tips

modoのデフォーマリスト

modoのデフォーマリストについて書いてみたいと思います。デフォーマリストを使用するわかりやすい例はキャラクターのスケルトン変形やモーフィングですが、幾何学的なメッシュ変形のアニメーションを作ることもできます。

サンプルファイル

 

デフォーマリストとは

modoには非破壊的にメッシュ変形する「デフォーマ」機能が搭載されています。デフォーマはいつでも変形を調整できるので、アニメーションのような用途に向いています。1つのメッシュに複数のデフォーマを適用した場合に、デフォーマの計算順を指定するのがデフォーマリストです。

望んだ変形結果を得るにはデフォーマの計算順は重要です。デフォーマリストはリストの下から順に計算されます。例えば Linear Falloffで波のように変形してからベンドするのと、ベンドしてから波のように変形する場合では変形結果が変わります。

 

正規化フォルダ

デフォーマリストで重要な機能がNormalizing Folderです。デフォーマリストはデフォーマを順番に計算しますが、複数のデフォーマを順番にでなく一度に加えたいときがあります。例えばキャラクターのように複数のスケルトンでメッシュを変形する場合です。

modoのバインドを使用したスケルトン変形は「トランスフォームエフェクタ」による変形と同じで、アイテムのトランスフォームを使用してメッシュを変形します。このとき変形の影響範囲が重なると、2重トランスフォームが発生します。この問題を解決するのがNormalizing Folderです。

下の画像では真ん中のボックスにウェイトマップ値を100%ずつ重複するように設定しています。スケルトンを回転や移動したとき2倍変形しているのが確認できます。General InfluenceをNormalizing Folderに入れることで正規化されて、意図した変形になります。

Normalizing Folderには変形の正規化の他に、メッシュ変形の補完法を「クォータニオン」にしたり、影響するウェイトマップの上限を設定する「最大ソース」を設定することができます。ちなみに、Normalizing Folderはベンドなど他のデフォーマでも正規化が動作します。

modoでつまずきやすいのがスケルトン変形とモーフィングの計算順です。バインドで生成されたNormalizing Folderと、Morph Influenceの順番が適切でないと望んだ結果になりません。

FBX形式でバインドされたキャラクターモデルをmodoに読み込んだ場合も変形結果がおかしくなりがちです。変形結果がおかしいなと思ったら、デフォーマリストやNormalizing Folderを確認して見るといいと思います。
ちなみにデフォーマリスト右の#をクリックすると、ウェイトマップが設定された頂点を選択することができます。

デフォーマの変形順は、modo 10.1以降のプロシージャルモデリング用の「メッシュオペレータ」からも編集することができます。

 

デフォーマの計算順はmodoに限らず3dsMaxの「モディファイヤスタック」Mayaの「入力の操作リスト」など、3Dソフトでは一般的に搭載されている機能です。下の画像のような円柱のトランスフォームとデフォーマの計算順を利用したアニメーションは3DCGの古典的な手法です。

 

デフォーマの計算順を変えるとモーショングラフィックなんかで見かける幾何学的な変形が得られて面白いんじゃないかと思います。以前公開した「アニメ風の眼球制御」なんかもトランスフォームとデフォーマを利用したものでした。

CG News

Appleseed 2.0 ベータリリース

オープンソースの物理ベースのグローバルイルミネーションレンダリングエンジン「Appleseed」の2.0ベータ版が公開されたようです。
https://appleseedhq.net/news.html
https://github.com/appleseedhq/appleseed/releases/tag/2.0.0-beta

「カートゥーンシェーディングを実装したOSLシェーダと輪郭レンダリングを実装、ノンフォトリアリスティックレンダリング(NPR)の世界への最初のステップを進めました」とのことなので、今後も継続的にNPR機能が開発されるのかな?

Tips

modoのカーブプローブでアニメーション制御

前回のフォールオフプローブの続きで、カーブプローブを使用したアニメーション制御について書いてみたいと思います。

カーブプローブはカーブとアイテムの「距離」や「パーセンテージ」を抽出して、他のチャンネルで使用することができるようにするノードです。このカーブプローブとリプリケータを使用すると、カーブの特定の位置にあるアイテムを制御することができます。

例えばモーショングラフィックでよく見かける、オブジェクトがシーケンシャルに組み上がるようなアニメーションを作ることができるようになります。

サンプルファイル

 

カーブプローブを使用したアニメーション制御

簡単にテストしたところ、カーブプローブとリプリケータを使用して制御できるのは表示の「可視」、「ローカル」「ワールド位置」「ワールド回転」「ワールドスケール」のような、リプリケータの機能が使用しているチャンネルのみのようです。

 

可視の制御

見てわかりやすい、アイテムの「可視」の制御例です。

スケマティックはこんな感じです。

サンプルファイルがあるので、ザックリした解説です。

  1. カーブを作成してCurve Probeノードにリンクします。
  2. 別のメッシュにプロシージャルモデリングのCurve Rebuildノードを追加して、カーブをリンクします。
  3. Curve Rebuildしたメッシュは Replicator の「パーティクルソース」にリンクします。
  4. Replicatorの「原型となるアイテム」にはメッシュのない空のアイテムを指定して「子のアイテムを含む」をONに設定するのがポイントです。空のアイテムにペアレントしたアイテムがReplicatorによって複製されます。
  5. LocatorはユーザーチャンネルにControllerというパーセンテージ型のチャンネルを追加し、アニメーションのタイミング制御用のチャンネルとして利用します。
  6. 減算ノードを作成して Controllerの値から、Curve Probeの「パーセンテージ」を引きます。
  7. 減算ノードの出力をRelationshipノードを使用して値をリマップします。
  8. Relationshipノードの出力をアイテムの「表示属性」チャンネルにリンクします。

「表示属性」はプロパティでは「可視」と表示されます。modoはチャンネルタイプがリストの場合、0からの数字でリストの項目を制御できます。Relationshipを使用したリマップの値が2と1のリニアカーブなのは、「可視」が「いいえ」の2、「はい」の1に切り替えてるからです。


modoのカーブ関連の機能はあまり使いやすいとは言えませんでしたが、徐々に強化されて12.1のCurve Rebuild はだいぶ使いやすい状態になってる気がします。

 

位置の制御

基本的には「可視」と同じです。Relationshipノードの出力をアイテムの「ローカル」チャンネルにリンクすることで位置を制御しています。Relationshipと「ローカル」の間にMatrix Composeノードを使用しているのは、「ローカル」がマトリクスチャンネルだからです。位置のマトリクスを出力したいので、Matrix Composeのマトリクスタイプを「位置」にします。

 

回転の制御

回転のマトリクスを出力したいので、Matrix From Eulerを使用します。

 

スケールの制御

スケールのマトリクスを出力したいので、Matrix Composeのマトリクスタイプを「スケール」にします。

今回参考にしたmodo 801のCurve Probeの紹介ムービーでは「ワールドスケール」を使用していますが、「ローカル」がお勧めです。「ローカル」を使用すると Replicator の「ばらつき」にあるランダム系パラメータを使用してランダムさを加えることができるからです。「ワールドスケール」を使用するとマトリクスの計算順の関係で、Replicator のランダム系のパラメータを上書きしてしまいます。

 

 

ランスフォームを制御

Matrix Compose ノードを使用して位置、回転、スケールを「ローカル」にリンクする方法です。

Matrix Composeはチャンネルをリンクする順で計算するので、スケール、回転、位置の順番でリンクします。リンクする順番が違うとアイテムの位置が変わります。この計算順は座標変換の数学的な問題らしい。

 

カーブプローブを使用したアニメーション制御

上で紹介した方法でも十分アニメーションを制御できると思いますが、普通にアイテムにキーを設定して動かしたものを制御する方法について紹介したいと思います。方法は単純でTime Offset:Matrix ノードを使用します。

まずは普通にアイテムのトランスフォームにキーを設定してアニメーションを作成します。

あとは、アニメーションを設定した各アイテムの「ローカル」チャンネルをTime Offset:Matrixで循環させ、Curve Probeの「パーセンテージ」をTime Offseの「タイム」に入力すると、個々のアニメーションをオフセットできるようになります。

Time Offseは数が多くなるとアニメーションの再生に負荷がかかるようです。ハンバーガーを構成する6アイテムくらいなら問題ありませんが、ハンバーガー、ポテト、ドリンクの計23個のアイテムにTime Offseを設定したら、そこそこ重くなりました。12.1で追加された Driven Action を使って制御できたら便利だなと思ってテストしましたが、Driven Action では上手く行かなかったです。

ちなみにTime Offseはリンクしたらたまたま動いた感じで、正直なところCurve Probeの「パーセンテージ」が出力してる値がよくわからないです。出力先が「タイム」チャンネルの時だけアニメーションに関する何かが出力されてる気がします。上のスケマティックではCurve Probeの「パーセンテージ」を適当な値で割ってアニメーションの再生タイミングを遅くしようとしてますが、なぜかカーブの始点から終点に向けて徐々にアニメーションの再生間隔が遅くなっていきます。

 

簡単にアニメーションを設定するとこんな感じです。それっぽいんじゃないかと思います。

 

カーブプローブとリプリケータを使用すると、modoでもモーショングラフィック的なアニメーションを手続き的に作ることができたのは驚きですね。ノードを理解できれば、もっといろんな表現ができそうです。

 

参考

modo 801リリース時に公開された草のツルの成長アニメーションと、成長に合わせて葉が生えるチュートリアル動画です。木とかも作れそう。

CG News

GRADIA AE PLUGIN

超解像技術「GRADIA」のAfterEffects版プラグインが公開されたようです。GRADIAはTVアニメ「イングレス」で採用されていて、1280×720を1920×1080に拡大しているそうです。「GRADIAのShaderバージョンを使用することで汎用のGPUでリアルタイムの4k変換が可能です」というのは凄そうです。
https://gradia.xyz/ae/

 

 

概要

GRADIAとは、株式会社アクセルが開発した超解像技術です。
完全自社開発のため、ハードウェアIP、ソフトウェアIP、組み込みミドルウェアなど、あらゆるプラットフォームで提供が可能な技術です。

用途
  • ゲーム向け:テクスチャのスケーリング
  • VR向け:全天球動画をリアルタイムに高解像度化
  • 放送向け:過去版権映像の拡大
  • シンクライアント向け:転送元での圧縮、転送先での高精細表示
  • 電子書籍向け:電子書籍の高画質化
  • 映像制作向け:アニメ・その他映像作品のアップコンバート
対応OS

Windows7/Windows8/Windows8.1/Windows10
64ビット版のみ対応

 

対応ツール

After Effects® CS6、CC、CC2014、CC2015、CC2015.3、CC2017、CC2018

 

価格

ノードロック(PC固定) 
1年間ライセンス 60,000円(税抜)/ 3ヶ月ライセンス 32,000円(税抜)


コーポレート(コピー自由)

お問い合わせください