From BlenderWiki

Jump to: navigation, search

Blender 2.75: Cycles

Cycles には以下の改良があります:待望の AMD GPU によるレンダリングの(初期)対応、新しいライトポータル機能、ビルドインのアニメーションシード、多数のパフォーマンスとメモリ最適化など…。

AMD GPUへの対応

OpenCL Cycles カーネルが小さなパーツに分離され、パフォーマンスと安定性が向上しました。(7f4479da425b)

そのため、AMD GPU が Cycles でのレンダリングに使用可能になりました。必要なハードウェアと対応している機能については、GPU Rendering(英文)ドキュメントをチェックしてください。

現在、Windows 版と Linux 版のみ公式に対応しています。OSX ではまだ OpenCL コンパイラ側に問題があるため、Blender から対処することができません。

また、公式対応していないハードウェアでも、環境変数 `CYCLES_OPENCL_SPLIT_KERNEL_TEST` を 1 に設定することで、分割カーネルの動作のテストが可能です。これによりすべての OpenCL デバイスが User Preferences(ユーザー設定)に表示され、分割カーネルが使用できるようにします。


Portals(ポータル)

Area(エリア)ランプがライトポータルとしての機能できるようになりました。環境光のサンプリングを助け、収束を改善します。ライトポータルはレイを屋内シーン内の環境光源の方向に導くのに役立ちます。例えば窓のような、シーン内の開いた所にレイを誘導するような感じです(訳注:ただしエリアランプは内側に向けます)。

Object Data(オブジェクトデータ)プロパティの▼Lamp(ランプ)内の Portal(ポータル)オプションを有効にしてください。注意:ポータルによるレンダリングは通常遅くなりますが、収束が速くなり、必要なサンプル数も少なくなります。ポータル毎に追加のレンダリング時間が加算されるため、使用時はできるだけ少なくしてください。(f478c2c)

White Room シーンにポータルがない時とある時
Bedroom にポータルがない時とある時


メモリ最適化

シーンの準備・レンダリング

  • オブジェクトの同期によるキャッシュの解放。(10e18a5)
  • テッセレーション後のポリゴン解放により、ピークメモリ消費量を削減。(2ef2f08)
  • レンダリング中にインターフェイスをロックしている時、未使用の画像を解放するように。(74df307)
  • Derived Mesh をメッシュに変換時、データ所有者を渡すことにより、シーン同期のピークメモリ使用量を削減。(a1a7317)
  • BVH構築後の画像の同期で、制作ファイル群でのピークメモリ使用量を削減。(cd44449)
  • BVH ノードストレージを内部ノードとリーフノードに分割することで、BVH のリーフノードの無駄なメモリ使用を回避しました。(828abaf)

ベイキング

  • 二つ以上のオブジェクトへのベイク時、メモリ消費量が大幅に削減されました。それに対応するよう、Baking-API も変更されています。(394c5318)

パフォーマンスの最適化

全般

  • World(ワールド)の MIS テーブル構築をマルチスレッド化し、シーンの開始・更新時間を短縮しました。(rBcdb47b9dfc2d)
  • ボリュームの Decoupled Ray Marching(分離レイマーチング)コードで、連続する空のステップをスキップするように。(rB064fa4baaedc)
  • 複雑なシェーダでのマテリアルプレビューレンダリングの応答性を向上。(b5f58c1d0aae79)
  • Color(カラー)または Strength(強さ)が0の Emission(放射)シェーダをグラフから削除するように。(67eb2c789718)
  • Blackbody(黒体)でルックアップテーブルの代わりにカーブの近似を使用するように。(rB7201f6d14c01)

CPU

  • SSSとカメラレイにおいて、起こりうるボリュームの交差をすべて記録するように。(b3def11f5b75)
  • Haswell CPU でネイティブの float → half-float 変換命令を使用するように。(2ec221aa281d)

GPU

  • GPU での CMJ(Correlated Multi-Jitter)がスピードアップ、Sobol(ソボル)パターンとほぼ同じに。(61eab74)
  • GPU での Beckmann(ベックマン)スロープサンプリングの最適化。(b06962f)
  • clamp(x, 0, 1)を単一命令に最適化。(ae7d84dbc193)

その他

  • Panorama(パノラマ)カメラ:投影に Mirror ball(ミラーボール)が利用可能に。(60c5a2f2d21d)
  • (乱数の)シードのアニメーションがビルトイン機能に。(7c06190882a1)