Diary

参考資料

空撮映像が作れる「Google Earth Studio」

Google Earthの3D画像や衛星写真を、映像製作に活用できるツール「Google Earth Studio」が公開されたみたい。フォームに必要事項を記入して申請、承認されると使用できる。
https://earth.google.com/studio/docs/making-animations/rendering/

位置のキーフレームアニメーションの他に、特定のビルをターゲットにして回転や、太陽の位置も編集出来るみたい。レンダリングは画像シーケンスで、Zipにまとめられた物をダウンロード。

参考資料

Call Of Duty: Black Ops 4 Montage

Call Of Duty: Black Ops 4のゲームキャラクター紹介。モニターグラフィックスがカッコイイ。

参考資料

Dancing on Ice 2019

リアルな質感と気持ちのよいアニメーションのかわいい作品。

参考資料

Age of Sail

海外のノンフォト系のショートフィルム。輪郭線のないギザギザした輪郭が印象的。Steam  、Google Play  、  iTunes  でVR 360°バージョンが見でるらしい。

参考資料

機械学習を使用してマット生成「Rotobot」

機械学習を使用してマットを作成するOpenFX プラグイン「Rotobot」の記事。品質はまだまだみたいだけど、こういう方向の機械学習の使い方は好き。

https://www.fxguide.com/quicktakes/rotobot-bringing-machine-learning-to-roto/

Rotobotは人や車などのオブジェクトの「セマンティック」クラスに属するピクセルのインスタンスを分離することができます。これは反復畳み込みニューラルネットワーク(CNN)を使用してイメージを分析することによって、81カテゴリを分離することができます。これらのカテゴリごとに最大100個のインスタンスを一度に分離することができます。これはVFXにとって便利です。素早く汚いホールドアウトマットを生成するための素早いツールがあることを意味します。

 

 

 

このプログラムは超高速で粗いものからより洗練されたものまで、さまざまな品質レベルで設計されています。Rotobotによって達成されるロトの品質は、フレーム間でちらつく傾向があるので時間的に安定していません。これはフレームごとのソリューションを生成するので、編集可能なスプラインがなくなるため修正や作業を続けることができません。Kognatは結果の忠実度をはるかに高い基準に高めるよう努めています。

似た技術だとAdobeのFASTMASKがあるけど、Adobeのは対象の数が限定されてそう。こういう作業的な物はAIに頑張って欲しいですね。

CG News

NVIDIA PhysX オープンソース化

物理シミュレーションエンジンのNVIDIA PhysXがBSD-3ライセンスでオープンソース化されたようです。以前からフリーでソースコードにアクセスできたと思うけど、オープンソースとは言ってなかったみたいですね。流体エンジンのその後が気になります。
https://blogs.nvidia.com/blog/2018/12/03/physx-high-fidelity-open-source/

無料、オープンソース、GPUアクセラレーション

PhysXはGPUアクセラレーションを活用し、大きな仮想環境を処理できる唯一のフリーでオープンソースの物理ソリューションです。今日、シンプルなBSD-3ライセンスの下でオープンソースとして利用可能です。

PhysXはいくつかの重大な課題を解決します。

  • AIでは研究者は合成データ(現実世界の人工表現)を必要とし、データを必要とするニューラルネットワークを訓練する必要があります。
  • ロボット工学では、研究者は実際のロボットのように機能する環境でロボットの心を鍛える必要があります。
  • 自走車の場合、PhysXは実世界の状況を再現するシミュレータで数百万マイルの走行を可能にします。
  • ゲーム開発では、缶詰のアニメーションは有機的に見えず、洗練されたレベルでの制作に時間がかかります。
  • 高性能コンピューティングでは、忠実度の高いより強力なマシン上で物理シミュレーションが実行されています。

PhysX SDKは、スケーラブルで安定した正確なシミュレーションにより、これらの課題に対応します。

PhysX SDKはスマートフォンからハイエンドのマルチコアCPUやGPUまで幅広いデバイスをサポートするスケーラブルなマルチプラットフォームのゲームフィジックスソリューションです。完全なソースコードはGitHubで見つけることができます。

CG News

ZWrap for ZBrush

ZWrap for ZBrushがリリースされたようです。ZWrapは既存のトポロジを自動的にモデルにフィットさせるプラグインで、3Dスキャンされた人物のトポロジに変換を高速化するツールです。価格は$ 99 /年。
https://www.russian3dscanner.com/zwrap/

以前から似たようなソフトがあったなと思いましたが、スタンドアロンソフトのWarpXをZBrushに移植したものみたいです。

Tips

modoのリプリケータのランダムタイム変動

modoのリプリケータにある「ランダムタイム変動」について書いてみたいと思います。


リプリケータはアイテムを手軽に複製する機能ですが、アイテムにアニメーションが設定されている場合はアニメーションした状態で複製します。単純にアニメーションを複製すると、すべてのアイテムの動きがそろってしまいます。リプリケータの「ランダムタイム変動」を使用すると、アニメーションにランダムな時間の変化を設定することができます。

アイテムのトランスフォームにアニメーションを設定してる場合は、こんな感じにランダムにずれてアニメーションが再生されます。

 

デフォーマで変形したアイテムはビューポートで「ランダムタイム変動」を確認することができないので注意が必要です。下の画像はスケルトンで円柱を変形した例です。

レンダリングした場合は、正しく「ランダムタイム変動」が効いているのが確認できます。ビューポートで確認できないのがちょっと不便ですね。

アニメーションを特定のフレーム以降から再生したい場合は、「タイムオフセット」を使ってアニメーションの開始フレームを調整するといいです。

「量子化カウント」はアニメーションのパターン数を指定する機能です。例えば3を設定するとランダムなアニメーションのパターンが3種類になります。確認してませんが「量子化カウント」の値が小さい方が、メモリの使用量が少なくなったりするのかな?と思います。

リプリケータを使用してアニメーションしてるモデルを複製する場合は、「ランダムタイム変動」を使用すると手軽にランダム感が設定できて便利ですね。

ちなみにmodo11からリプリケータのパフォーマンスが大幅に向上しましたが、modo11.2~12.2でデフォーマを使用したメッシュに「ランダムタイム変動」を使用すると、ビューポートのアニメーション再生パフォーマンスが悪くなる問題が発生しているようです。レンダリング時のみ「ランダムタイム変動」に値を設定するといいかもしれません。

Tips

modoをカスタマイズした設定の保存方法

modoのバージョン間で、カスタマイズした設定を引き継ぐ方法について書いてみたいと思います。

modo901以前は一年に1度メジャーアップデートが行われていましたが、modo10以降は10.0、10.1、10.2のように1年間に3回アップデートされるポイントリリース方式になりました。これらのマイナーバージョンはそれぞれ初期設定が異なるため、ショートカットや初期設定をカスタマイズしているとマイナーバージョンごとに設定が初期化されてしまい不便です。

modoではユーザーがカスタマイズした設定は個別の.CFGファイルに書き出して管理します。設定をファイルを書き出すのはMaxやLightWaveなど他の3Dソフトと同じですが、modoは特定のフォルダにファイルを入れておくと全てのmodoバージョンから設定を参照してくれるので便利です。

設定ファイルの保存方法

modoのカスタマイズした設定ファイルの保存方法は、ファイルメニューの「ファイル / 設定の書き出し」を使用します。

画像では「一部出力」に「 (全て) 」を使用していますが、「初期設定」や「キーマッピング」など、カテゴリ別に保存することもできます。保存したファイルはmodoの「Configs」フォルダに入れます。

C:\Users\ (ユーザー名) \AppData\Roaming\Luxology\Configs

modoは起動時に自身のバージョンのコンフィグファイル「MODOxxx.CFG」を読み込みます。次に「Configs」フォルダ内のCFGを読み込み、重複している設定については後から読み込んだCFGの設定を使用している気がします。

.CFGファイルはテキストエディタで編集することができます。設定を変更するごとに別々の設定ファイルとして書き出し、必要な部分をコピペしてファイルを維持するといいと思います。

 

modoの初期設定ファイル

modoの初期設定は以下の「Luxology」フォルダにバージョンごと保存されています。

C:\Users\ (ユーザー名) \AppData\Roaming\Luxology

modoの初期設定ファイルを削除すると、インストール直後の状態になります(インストールしてるKitsは除く)。カスタマイズした設定ファイルを「Configs」フォルダに入れたら、modoの初期設定ファイルを一時的に移動してカスタマイズした設定ファイルが正しく読み込めてるかテストしておくと安心です。

 

参考

音声付きで丁寧に解説されています。

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