Cryptomatte

Cryptomatte（クリプトマット）とは、社 の Jonah Friedman と Andy Jones によって作成されたオープンソースソフトウェアである。また、このソフトウェアもしくは他の同等機能を持つソフトウェアを使って生成された特定スタイルの画像のことも「Cryptomatte」と呼んでいる。

Cryptomatte はその普偏性、人気3DCGソフトへの統合、その使いやすさによって業界のほぼスタンダードとなった。

 レンダリング処理 
このプログラムは、例えばシーン内の一つまたは複数のオブジェクトに対して「画像マスク」（イメージマスク。アナログのフイルム時代は「マット」と呼ばれるのが一般的で、デジタル時代においてもしばしばそう呼ばれる）を作成する際などに使える、そのシーンの「IDマット」を自動で生成してくれる。このIDマットは Cryptomatte と呼ばれる通り、非常に特徴的な外観を持つ。生成された Cryptomatte 画像は、各オブジェクトやマテリアルごとに異なるランダムな色が割り当てられているため、一般的に非常にカラフルな見た目となっている。レンダリング時に既に利用可能なデータを使用して、モーションブラー、透明度、被写界深度に対応するマットを自動で作成して通常のレンダリング画像と同時に吐き出してくれる便利なプログラムであるCryptomatte on github.com。

 対応レンダリングエンジン 
Cryptomatte 画像はBlenderCryptomatte Node on docs.blender.org、Autodesk MayaCryptomatte in Maya on rmanwiki.pixar.com、Autodesk 3ds MaxCryptomatte on docs.arnoldrenderer.com、HoudiniCryptomatte on sidefx.comのような様々な3Dグラフィックソフトウェアによって生成することが可能であり、通常 OpenEXR ファイル形式でエクスポートされる。

プログラムが Cryptomatte 画像を生成できるかは、使用するレンダリングエンジンに依る。プログラムが複数のレンダリングエンジンをサポートしている場合、あるエンジンでは Cryptomatte 画像を生成できても、他のエンジンでは生成できないということがある。例えばBlenderではバージョン2.80より前は Cryptomatte 画像の生成をサポートしていなかったBlender 2.80 Release Notes: Cycles on wiki.blender.org。2.80では、パストレーシングレンダリングエンジン「Cycles」のみが Cryptomatte 画像の生成をサポートし、新しく追加されたリアルタイムレンダリングエンジン「Eevee」ではサポートしていなかった。Eevee に Cryptomatte 画像の生成のサポートが追加されたのは、Eeveeが初めて発表されてから1年半後にリリースされたバージョン2.92であったBlender 2.92 Release Notes: EEVEE on wiki.blender.org。

以下のレンダリングエンジンは Cryptomatte 画像の生成に対応している:

 レンダリングエンジン名 搭載 追加されたバージョン Arnold Cryptomatte Shader docs.arnoldrenderer.comSolid Angle ships Arnold 5.2.1 CG Channel 2018年11月23日 3ds MaxMaya Arnold 5.2 Cycles  Blender  Blender 2.80 Eevee  Blender Blender 2.92 Mantra  Houdini Houdini 16.5 Karma Karma Renderer FAQs SideFX Houdini Houdini 18.5 Modo renderer / mPathFoundry ships Modo 14.2 CG Channel 2020年11月13日 Modo Modo 14.2 Redshift Redshift Version 2.6.11リリースノート Born Digital 2018年6月12日 Cinema 4D (CPU版のみ搭載) Redshift 2.6.11 Radeon ProRender AMD ships Radeon ProRender 3.1 for Blender and Maya CG Channel 2021年4月1日  Radeon ProRender 3.1 3Delight Changelog - 3DELIGHT. DNA Research    Unreal Engine (Movie Render Queue) Movie Render Queue Render Passes Epic Games Unreal Engine 4.26  CRYPTOMATTE on aoktar.com   RenderMan PxrCryptomatte on rmanwiki.pixar.com  V-Ray Using the Cryptomatte In V-Ray for 3ds Max on tutorials.cgrecord.net V-Ray 3.6Corona RendererCorona Renderer 8

 対応コンポジットソフトウェア 

 コンポジットソフト名 追加されたバージョン Autodesk Flame 2020Autodesk ships Flame 2020 CG Channel 2019年4月16日 After Effects 17.0Adobe ships After Effects 17.0 CG Channel 2019年11月4日 Nuke 13.0Foundry ships Nuke, NukeX, Nuke Studio & Nuke Indie 13.0 CG Channel 2021年3月17日 Blender (コンポジットノード) 2.8 Houdini (COP) 16.5What’s new in Houdini 16.5  Side Effects Software V-Ray (V-Ray Frame Buffer) 5 Update 1Chaos releases V-Ray 5 for 3ds Max Update 1 CG Channel 2021年2月24日 Adobe Photoshop Exr-IO 2.0New: Exr-io 2.00 with cryptomatte support. Exr-IO is a third-party plugin

 ワークフロー例 
3Dシーンにおいて Cryptomatte 画像はそれぞれのオブジェクトに一意のIDを割り当てて生成される。通常、オブジェクト同士は明白に異なる色を持っているため、オブジェクトの多いシーンでは非常にカラフルとなる。IDマットはシーンにおいて一つまたは複数のオブジェクトを取り出して使うことができる。また、IDマットはデジタル合成のためにエクスポートしたり、3Dソフトウェア自身で使うことができる。

例えばのワークフローでは、画像の特定部分のみにエフェクトを掛けるための制限用マスクを生成するために Cryptomatte 画像が使われる。それによってシーン全体を再レンダリングする必要なく、素早くマスクを作成することが可能となる。

画像に対するワークフロー例:

動画に対する同様のワークフロー:

この例のマスクは中央の立方体だけ影響するように視覚効果を制限するために使用可能となっている。

 ライセンス 
開発者はこのプログラムのソースコードを公開し、それを「オープンスタンダードを中心としたエコシステムにするために」三条項BSDライセンスの下でライセンスした。開発者らの目標は「Cryptomatte 画像を生成できるレンダラーや、その画像をデコードするデジタル合成アプリケーションのプラグインなど、多様なエコシステムを実現すること」であった。

 関連項目 


 外部リンク 

 Cryptomatte on github.com
 Fully automatic ID mattes with support for motion blur and transparency (SIGGRAPH 2015よりPDFファイル)

 出典 

Category:FOSS

Category:2016年のソフトウェア
Category:Pythonでプログラムされた自由ソフトウェア
Category:Luaでプログラムされた自由ソフトウェア