Dev:JA/Ref/Release Notes/4.00/Cycles

提供: wiki
移動先: 案内検索

元記事:[Reference/Release Notes/4.0/Cycles - Blender Developer Wiki](https://wiki.blender.org/wiki/Reference/Release_Notes/4.0/Cycles)

Cycles

ライト・シャドウリンキング

ライトリンキング(Light Linking)で、ライトをシーン内の特定のオブジェクトにのみ影響を与えることができます。さらにシャドウリンキングで、オブジェクトにライトのシャドウブロッカーの役割を与えることができます。(ba3f26fac58eb3a)

これにより物理法則を無視した、アーティスティックなライティングのコントロールが可能になります。例えば一つのショットで、背景とキャラクターに違うライトのセットアップを行うとします。キャラクターには専用のリムライトをリンクして目立つようにし、シャドウリンキングを使用して背景のオブジェクトがリムライトを邪魔しないように設定できます。

詳細はユーザーマニュアル(英文)をご覧ください。

モンキーオブジェクトのみリムシェーディングを与えるためライトをリンク。右はライトリンキングのないシーンでの、リムライト OFF(上)、ON(下)
Cycles4.0-monkey-link-on.png
Cycles4.0-monkey-link-none.png
Cycles4.0-monkey-link-all.png

設定方法

  • ライトもしくは放射(Emission)するメッシュオブジェクトを選択
  • Object(オブジェクト)プロパティ→Shading(シェーディング)パネルに移動
  • 新しいライトまたはシャドウリンキングするコレクションを作成
  • Outliner(アウトライナー)からオブジェクトまたはコレクションをドロップ

リンクは3Dビューポートで Link Data(データのリンク/転送:[Ctrl]+[L])でも設定可能です。アクティブライトオブジェクトが選択中のレシーバーまたはブロッカーオブジェクトにリンクします。

ライトやシャドウリンキングコレクションは複数のライトオブジェクトへ割り当て、または共有ができます。シーンコレクションでも直接ライトやシャドウリンキングコレクションを割り当てできますが、代わりに専用のコレクションを作成し、シーンコレクションとリンクすることをお勧めします。この方法にすると、シーンのレイアウトに影響せず、追加のオブジェクトの割り当てや除外が簡単にできます。

挙動

ライトレシーバーオブジェクトには「含める」ことも「除外する」(訳注:ライトリンキングに入れてチェックを外す)'こともできます。挙動は以下のとおりです。

  • もしレシーバーに「含める」オブジェクトのみ指定した場合、ライトはそのオブジェクトにのみ影響します。
  • もし「除外する」オブジェクトのみ指定した場合、ライトは指定のオブジェクト以外のシーン内のすべてのオブジェクトに影響します。
  • もし「含める」オブジェクトも「除外する」オブジェクトも指定した場合、ライトは含めるオブジェクトから除外するオブジェクトを引いて影響を与えます。例えば、キャラクターコレクションをライトリンキングに設定し、そのキャラクターの一部のオブジェクトのみ除外できます。

シャドウブロッカーオブジェクトにも同じロジックを適用できます。

パフォーマンス

ライトリンキングのサンプリングはライトツリー有効時にもっとも効率的になり、ライトリンキング用に特別なアクセラレーション構造を構築します。

シャドウリンキング使用時、直接と間接照明で別のパスを取るため、レンダリングが遅くなり、トレースするレイも増えます。

将来的な改善

将来のバージョンでは、ワールドライティングのリンキングへの対応と、シーン内のライトリンクの閲覧と管理用のもっと便利なインターフェイスを追加する予定です。

サンプル

車のパーツ毎に違うライトを設定し、反射の形状をコントロール。左側は全ライト、右側はライトリンキング
シーンは Fernando Alcala 氏、使用アセットは LRosario 氏作
Cycles4.0-car-link-off.jpeg
Cycles4.0-car-link-on.jpeg
ライトリンキングを眼と木の枝への光の変な反射の削除に使用。
シーンは Alaska Young 氏と Daniel Bystedt 氏作
Cycles4.0-creature-link-off.jpeg
Cycles4.0-creature-link-on.jpeg
キャラクター、背景、ボリュームを目立たせるライト
シーンは Fernando Alcala 氏、使用した Blendswap アセットは adi 氏作
Cycles4.0-char-link-char.jpeg
Cycles4.0-char-link-floor.jpeg
Cycles4.0-char-link-volume.jpeg
Cycles4.0-char-link-on.jpeg

パスガイディング

パスガイディングがディフューズサーフェスに加え、Glossy(光沢)サーフェスでも動作するようになりました。これは光沢サーフェス上のノイズを大幅に軽減でき、光沢のライトパスが見つからない場合は探してくれます。(PR #107782)

ディフューズのみのパスガイディングと、追加のライトパスを探す新しい光沢パスガイディング。レンダリング時間は同じ
シーンは Fernando Alcala 氏と LRosario 氏作。使用アセットは Blendswap より
Cycles4.0-path-guiding-diffuse.jpg
Cycles4.0-path-guiding-mis.jpg

複合散乱GGX

Multiscattering GGX(複合散乱GGX)の実装が、"Practical multiple scattering compensation for microfacet models(マイクロファセットモデル用の現実的な複合散乱補正)"(Emmanuel Turquin 氏作)を元にした近似で置き換えられました。(888bdc1419a2cd9)

  • これにより、複合散乱 GGX に関する用途のパフォーマンスとノイズの欠点を取り除き、安全にデフォルトへと採用できます。
  • この指向性分布は理論的にはもう理想ではなく、レンダリング画像を少し違う物にしてしまう可能性があるものの、複合散乱補正(エネルギーの保持、粗さが大きい場所で暗くなるのを回避、粗さが大きい場所の飽和度の増加)の全体的な効果は今も通用します。
  • 大きな Anisotropic(異方性)マテリアルでは、この補正は完全ではありません。これは現在知られているこの近似メソッドの制限の一つです。

Principled Hair BSDF(プリンシプルヘアーBSDF)

新しいバリエーション "Huang" が、論文(A Microfacet-based Hair Scattering Model by Weizhen Huang, Matthias B. Hullin and Johannes Hanika)を元に追加されました(PR #105600)。従来のプリンシプルヘアー BSDF は "Chiang" になりました。

  • 楕円型の断面に対応、通常、人類の髪の毛は楕円であるため、よりリアルになります。断面はカーブの法線方向に向き、ジオメトリノードで調整も可能です。デフォルトは Minimum Twist(最小ツイスト)です。
  • これは近景のプリンシプルヘアー BSDF モデルに対し、遠景モデルです。このヘアーはノイズ少ない傾向がありますが、小さい粗さ値では、ヘアーの太さに伴う数値積分の所為でレンダリング時間が長くなります。また、クローズアップするとフラットに見えます。
  • ライトを背にしたビューでは反射の集中が綺麗になります。

オリジナルの論文やPrincipled Hair ユーザーマニュアル(英文)にはもっと詳しい比較があります。

既存の Chiang と、新しいマイクロファセットベースの Huang シェーディングモデル
シーンは Simon Thommes 氏と Fernando Alcala 氏作
Cycles4.0-hair-chiang.jpg
Cycles4.0-hair-huang.jpg
Cycles4.0-hair2-chiang.jpg
Cycles4.0-hair2-huang.jpg

Open Shading Language

冗長だった Cycles 固有の大半のマイクロファセットクロージャが削除され、今は Cycles に汎用の OSL 標準の microfacet() クロージャが実装されました。(888bdc1419a2cd9)

  • 特に、microfacet() クロージャは beckmannsharpashikhmin_shirleyggxmulti_ggxclearcoat 分布に対応しています。refract 引数は 0 が純粋は反射、1 が純粋な屈折、そして 2 が両方に対応してます(指定の IOR と一致する誘電フレネルがベース)。
  • さらに、3つの MaterialX マイクロファセットクロージャの dielectric_bsdf()conductor_bsdf()generalized_schlick_bsdf() が提供されました。これらは beckmannggxmulti_ggx 分布のみ対応しています。
  • 二つの Cycles 固有のクロージャが残りましたが、これらは内部用であり、ユーザー作成の OSL シェーダーで依存してはいけません。

Metal ハードウェアレイトレーシング

新しい Apple M3プロセッサはハードウェアレイトレーシングに対応しています。GPU デバイスプリファレンスにて MetalRT を "Auto"(自動)に設定することで、Cycles はデフォルトでこれを使用します。

M1 と M2 プロセッサでは、MetalRT はもう実験的機能ではなくなり、完全対応になりました。ただしハードウェアレイトレーシングのない時は、今も Cycles 自身の交差コードの方がパフォーマンスが上であるため、デフォルトでは OFF になっています。

その他

  • Blender 3.6から続くジオメトリアップロードのパフォーマンス改善により、大きなメッシュで1.76倍の向上を計測しました。(2fac2228d05e165)
  • Metal AMD GPU レンダリングに、プリンシプルヘアー BSDF が使用されているシーンでの大幅なパフォーマンスリグレッションがあり、さらに現在ライトツリーとシャドウコースティクスの対応が欠けています。GPU ドライバーの修正の見込みがない制限の所為で、将来のリリースにて、macOS での AMD GPU レンダリングは完全に無効化される予定です。
  • AMD RDNA2 と RDNA3 APU でのレンダリングに対応。