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

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

Blender 2.80: Cycles

Principled Hair BSDF

物理ベースのヘアーとファーのレンダリングが、Principled Hair BSDFによって簡単になりました。もう複雑なシェーダーネットワークのセットアップは必要ありません。ヘアーカラーは自然の人間のヘアカラーに合うよう Melanin(メラニン)値で指定したり、Tint(チント)で毛染めをシミュレートすることもできます(訳注:Melanin Concentration 選択時)。Roughness(粗さ)を細かくコントロールすることで、様々なタイプの動物の毛のシミュレートが可能になり、さらに Random コントロールがリアリズムの付加に役立ちます。

メラニンによるバリエーション(モデルと髪型のセットは Chris Chuipka 氏)
Cycles2.80 principled hair1.png
Cycles2.80 principled hair5.png
Cycles2.80 principled hair3.png
Cycles2.80 principled hair4.png

Principled Volume シェーダー

新しい Principled Volume シェーダーは、ボリュームマテリアルのセットアップが簡単になります。煙や火のようなボリュームが一つのシェーダーノードでレンダリングでき、スキャッタリング、吸収、黒体放射も可能です。

Principled Volume と黒体放射
Cycles2.8 principled volume cloud.png
Cycles2.8 principled volume green.png
Cycles2.8 principled volume colors.png


Cryptomatte

Cryptomatte はコンポジティング用のマットを効率よく作成する、スタンダード(ツール)の一つです。Cycles はレンダーパスを出力する必要があり、これが後で Blender 内のコンポジターや他の Cryptomatte に対応したコンポジターで、特定のオブジェクト用のマスクを作成するのに利用可能です。 これは次の二つの利点を持つ、オブジェクトとマテリアルIDの事実上の強化版といえます。

  • マスクを作成するオブジェクトには何も準備は必要なく、むしろコンポジティング中に選択が可能です。
  • モーションブラー、被写界深度、透過、アンチエイリアシングの対応が向上します。

一般的なワークフロー:

  • View Layer タブの▼Passes(パス)パネル内の Cryptomatte Object レンダーパスを有効化します。
  • A コンポジティングノード中に、Cryptomatte ノードを作成し、マッチするレンダーレイヤーの Image(画像)と Crypto パスのソケットをそれぞれリンクします。
  • Viewer(ビュワー)ノードを Cryptomatte ノードの Pick 出力に追加します。
  • Cryptomatte の Add/Remove ボタンを使用し、Pick の Viewer ノード用にオブジェクトを選択します。
  • Cryptomatte ノードの Matte(マット)出力を使用し、アルファマスクを取り出します。
Pick したオブジェクトと結果のマットを見るための二つの Viewer(ビュワー)ノードをつけた、コンポジターノードセットアップ
レンダー、ピッキングビュー、マット、オブジェクト単独(モデルは Pokedstudio 作)
Render
Picking View
Matte
Isolated Objects


Random Walk サブサーフェス・スキャッタリング

新しいRandom Walk(ランダムウォーク)サブサーフェススキャッタリング 方式は、薄くて曲がっているオブジェクトでの結果がもっと正確になります。これにより、肌のような、より高密度の媒体では、レンダリング時間やノイズの増加と引き換えに、形状の細部の維持が向上します。これは Subsurface Scattering(SSS)ノードと、Principled(プリンシプル)BSDF ノードで利用可能です。(0df9b2c)

Random Walk SSS
Random Walk SSS(モデルは Three D Scans より)

Random Walk はメッシュ内で真のボリューメトリックスキャッタリングを使用しています。つまり、閉じたメッシュでの動作が最適だということです。面内に重なる面や穴があると問題が発生する可能性があります。

サブディビジョンとディスプレイスメント

新しい offscreen dicing scale(オフスクリーンダイシングスケール)は、カメラビュー外の遠く離れたオブジェクトのダイシング率の削減による、メモリ使用量の大幅な削減に便利です。
また、形状を固定したままにしてアニメーションした時の、アーティファクトの出現を回避するため、別にダイシングカメラを指定できるようになりました。通常、このダイシングカメラはショット全体で実際のカメラから見える全範囲をカバーする位置に置いてください。(cce280d)

オフスクリーンダイシングスケールにより、目だった視覚的な違いもなく、このシーンのメモリ使用量が1/5になりました

マテリアル内でディスプレイメント使用する時、これからは新しい Displacement(ディスプレイスメント)ノードを使用してください。このノードは既存の .blend ファイルに(読み込み時に)自動的に挿入されます。この変更の理由は、ベクターディスプレイスメントへの対応と、ディスプレイスメントのスケールと中間レベルが簡単に調整できるようにするためです。(4a5ee1a) (b129ea8)

新しい Displacement ノードセットアップ

Vector Displacement(ベクターディスプレイスメント)を、新しいノードにて対応しました。通常のディスプレイスメントマップは法線方向にサーフェスを移動するだけですが、ベクターディスプレイスメントはどの方向でも働き、他のソフトウェアの高解像度のメッシュを、より高精度でベイクするのに使用できます。

タンジェントスペースマップはキャラクターアニメーションのようにデフォームするメッシュに使用可能で、ディスプレイスメントはデフォームに追従します。オブジェクトスペースマップは動かないメッシュ用で、少ないメモリ使用量でレンダリングも少し速くなります。(f9ea097)

スムーズなベースメッシュへの、通常と強調したベクターディスプレイスメント(モデルはThree D Scansより)

ベベルシェーダー

ラウンドコーナーをレンダリングする Bevel(ベベル)シェーダーが追加されました。バンプマッピングのように実際の形状を変更せず、シェーディングのみ影響します。縁を少し丸くすることはスペキュラーハイライトをとらえるのに便利で、現実世界でも見られます。(26f39e6)

使用前
使用後(モデルは Juri Unt 氏作)

これは非常に高コストなシェーダーで、シーン内に他に複雑な物が多数あったとしても、20%レンダリング速度が落ちます。このため、これは主にベイク時、またはレンダリング時間があまり問題にならない、静止画像のレンダリングに使用することをお勧めします。ベベルモディファイアーは高速な代替手段の一つですが、時々複雑な形状や、汚い構造の形状では動作に失敗します。

アンビエントオクルージョンシェーダー

Ambient Occlusion(アンビエントオクルージョン)シェーダーがプロシージャルテクスチャ用に色や float を出力できるようになりました。例えば、コーナーのみにウェザリングエフェクトを与えるのに使用できます。

Bevel シェーダー同様、これも高コストのシェーダーであり、レンダリング速度が大幅に落ちます。レンダリング時間を懸念するなら、Geometry(ジオメトリ)ノードの Pointiness(凸部分)出力を使用するか、AO をベイクすればレンダリングが速くなるでしょう。

以下はこのシェーダーの新しい設定です。

  • Samples(サンプル): 使用するサンプル数、パフォーマンスを最大にするにはできる限り低くしてください。
  • Inside(内側): メッシュ内部の遮蔽を計算し、凹部分の代わりに凸部分を探知します。
  • Only Local: そのオブジェクト自身の遮蔽のみ探知します。他の物からの影響は無視します。
  • Distance(距離): トレースレイと遮蔽の探知との距離。
AO を元に汚れをコーナーにブレンド(モデルは Emiliano Colantoni 氏作)

シェーダーノード

  • Hair Info(ヘアー情報)と Particle Info(パーティクル情報)ノードに Random(ランダム)出力が付きました。ヘアーまたはパーティクル毎に、0から1の範囲のランダムな値を出力します。これは例えばカラーランプと組み合わせ、ヘアーやパーティクルの色をランダムにすることなどができます。(f6107af)
  • ノーマルマップのベイクが、ディスプレイスメント出力以外に BSDF につながる Bump(バンプ)ノードのベイクに対応しました。(b5f8063)
  • Bump(バンプ)または Bevel(ベベル)シェーダーがある場合、ノーマルマップのベイクが、アンチエイリアスと AA サンプル数を使用するように。(d0af56f)
  • Principled(プリンシプル)BSDF: 新しい Alpha(アルファ)と Emission(放射)入力。透過と放射が簡単にできます。
  • Math(数式)ノード:Arctan2(デカルト座標を極座標に変換)、Floor(床:端数切り捨て)、Ceil(天井:端数切り上げ)、Fract(小数以降の値)、Square Root(平方根)(6862762)
  • Voronoi(ボロノイ)テクスチャノード:Blender 内部レンダーの物と同様に、違う特徴の出力と、違うセル形状を可能にする、Feature Output(特徴出力)と Distance(距離)設定を追加。(83a4e1a)


  • IES テクスチャノード:IES 配光ファイルを元に、現実世界の光源とマッチさせます。(48155c2)
  • Color(カラー)や Value(値)のソケットを Shader(シェーダー)ソケットにリンクすると、自動的に Emission(放射)として処理されるように。シェーダーから他のソケットへのリンクは、リンクが無効ということを示すため、赤でハイライト表示されます。
  • カラーマネージメント:Cycles が Blender の OpenColorIO 設定に完全に従うように。Image Texture(画像テクスチャ)ノードは画像の色空間を使用するようになり、シェーディングノードは好きなシーンのリニア色空間で動作させることができます。

その他の機能

  • Area(エリア)ランプが Disk(円)と Ellipse(楕円)形状に対応。(5505ba8)
  • Glass(グラス)が、背景の上にコンポジティングするため、透明であるかのようにレンダリングできるようになりました。これは Film(フィルム)パネルで有効化でき、Roughness Threshold(粗さのしきい値)未満のグラスを透明にします。(322f022)
  • オブジェクト用の Holdout(ホールドアウト)設定。これは Holdout シェーダーと同じですが、オブジェクト全体用です。(e4b54f44c)
  • Roughness(粗さ)のベイクに対応。(23ccf57)
  • モーションブラーがオブジェクトスケールのアニメーションに対応しました。(25b794a)
  • カメラとオブジェクトのモーションブラーが、任意のモーションステップに対応しました。(78c2063, db333d9)


多数のモーションステップによる、長時間露光レンダリング画像

最適化

  • ロシアンルーレット停止の効率化。各種シーンにおいて同じノイズで10%から30%レンダリングが高速化しました。最小バウンド数のオプションが削除され、現在は自動的に設定されます。サンプル数と Clamp Indirect(間接値を制限)は以前の結果とマッチさせるのに必要だと思われます。(cd023b6cecb7)
  • 形状の近くやボリューム内でのメッシュ光源のサンプリングを改善。(8141eac)
  • Performance(パフォーマンス)パネルの、ビューポートレンダリングの解像度をコントロールする Pixel Size(ピクセルサイズ)。
    高 DPI ディスプレイでのプレビューレンダリングがデフォルトで低解像度になりました。(66c1b23aa10d)
  • Simplify(簡略化)パネル内の AO Bounces(バウンス数)が、ディフューズバウンス数より多い Glossy(光沢)・Transmission(伝播)バウンス数でレンダリングするように。

これにより低い AO バウンス数設定での見た目をよくすることができます。例えば、インテリアレンダーのスピードアップに便利です。また、AO 係数でその強さもコントロールできるように。(659ba012171c4e9)

  • Environment(環境)テクスチャ用の重点サンプリング解像度の自動検知。従来はユーザーがノイズを削減できる解像度を手動で設定していましたが、今は典型的なケースでは自動で行われます。
  • Transparent Shadows(透明な影)オプションを削除。現在は全演算デバイス用に最適化されており、常に ON になっています。(5e4bad2c00e)
  • Filter Glossy(光沢フィルター)と Clamp Indirect(間接値を制限)がデフォルトで ON になっています。(8a7c207)


GPU レンダリング

  • 最終レンダリングで CPU と GPU を組み合わせたレンダリングに対応。レンダリング用の CPU コア数は GPU レンダリングが遅くならないよう、自動的に減ります。(dc9eb82)
  • CUDA レンダリングで大きなタイルを使用する必要がなくなりました。多くの場合、例えば32×32のタイルサイズによるレンダリングが実際に速くなりました。デノイズ使用時は、まだ大きなタイルの方がいくぶん速くなるかもしれませんが、メモリ使用量が大きくなります。(6da6f8d)
  • CUDA レンダリングが、GPU メモリに入らないが CPU メモリには保持可能なシーンのレンダリングに対応しました。この機能は自動ですが、シーンとハードウェアによってはパフォーマンスが犠牲になります。
    画像テクスチャが GPU メモリに入らない場合、私たちのベンチマークシーンでは、20から30%のスピードダウンを計測しました。他のシーンデータが GPU に入らない場合でも、レンダリングを CPU でした方がいいと思えるぐらい、大幅に遅くなる可能性があります。(c621832)
  • OpenCL カーネルコンパイル時間が大幅に短縮し、レンダリングが非常に早く開始するように。複雑なシーンのレンダリングも高速化されました。
  • CUDA と OpenCL レンダリングが、画像とボリュームの三次補間に対応しました。(2d92988f61c340)
  • CUDA GPU レンダリングが、GTX 480や580などの Compute Capability 2.0と2.1のグラフィックカードへの対応を取りやめました。残念ながら NVidia の最新の開発ツールが新しい Volta GPU と高速な CPU レンダリングに対応するため、これらの GPU への対応を止めてしまったため、私たちもアップグレードする必要があったのです。また CUDA も同様の理由で、32ビットビルドで利用できなくなりました。
  • OpenCL が Half Float テクスチャに対応しました。(df30b50f2f)
  • OpenCL コンパイラのバグと Apple による OpenCL 廃止により、mac OS プラットフォームでは OpenCL が利用できなくなりました。他のプラットフォームでは今も OpenCL に対応しています。(bb0d812d98)


修正

  • Strength(強さ)の高い Bump(バンプ)と Normal Map(ノーマルマップ)で黒い部分ができなくなりました。(d6e769d)
  • シャドウキャッチャーオブジェクトがお互いに影を落とさなくなりました。これらはすでに現実の映像内にあるということになっているからです。(8b73c9a)
  • 画像テクスチャの Box(立方体)マッピングが、テクスチャが反転しないよう変更されました。(dd8016f7)
  • ロシアンルーレットの停止の修正によって、いくつかのオブジェクトが以前より明るくレンダリングされていました。(d454a44e9)
  • Anisotropic(異方性)、Glossy(光沢)、Glass(グラス)、Refraction(屈折)BSDF が、Principled(プリンシプル)BSDFや他のソフトウェアと一致する、二乗粗さマップを使用するように。(7613ffc)