2011年2月12日土曜日

modo 501: モデリングツール その1

今回はmodo 501で新しく追加された機能からモデリングツールを一つ説明します。先日modo 501の機能を説明している時に、実例をあげて解説しないと分かりにくいオプションがあることに気がつきましたので、今回はAdd Loopのオプションを詳しく解説しようと思います。毎回テーマがばらばらですみません。

Add Loopは、Loop Sliceツールのインタラクティブバージョンでクリックしたエッジ上にループを追加するツールです。このポリゴンループをスライスする機能はBandSawの頃から作っていますが機能追加や操作性に関するリクエストがいまだにあります。

Add LoopにあってLoop Sliceにないオプションに、Absolute Distanceがあります。通常、ループの各エッジ上の位置は各エッジの2つの端点上をパーセントで指定します。このAbsolute Distanceをオンにするとどちらかのエッジの端点を通るループをスライドしたループを作成することができます。これはスライドツールのAbsolute Distanceと同じ機能です。

Absolute Distance


このオプションを有効にした場合、スライドされるループが自分が意図した側と異なるループの形状になってしまう場合があります。その場合はOffset From Endをオンにすることによってもう一方の端点を通るループが選び直されます。

Absolute Distance + Offset From End


Both Sidesは、modoのスクリプトツールで有名なSeneca氏からのリクエストで追加したオプションです。スライドするサイドを両方ともスライドさせてしまうオプションです。

Absolute Distance + Both Sides


Preserve Curvatureは、エッジ上の位置をスムースなカーブ上の位置に補正するためのオプションです。通常はエッジの2つの端点の直線上にポイントを配置しますが、Preserve Curvatureをオンにするとエッジに連結された前後のエッジ端点から三次曲線を計算し、その曲線上にポイントを配置します。この機能はあくまでもエッジの前後のポイントから求めた三次曲線からスムースな位置を求めるもので、SphereツールやCylinderツールで作成した円などの正確な二次曲線を復元し、正確な曲率を推測して計算する物ではありません。
Preserve Curvature - OFF

Preserve Curvature - ON



Tensionは、Bridgeツールにもあるオプションで、補間に使用する三次曲線の接線ベクトルにスケールを掛けることによってポイントの高さを調整する物です。このPreserve Curvatureは、Add Loopツール以外にLoop SliceSlideツールにも追加されています。
Tension 100 %

Tension 180 %

2011年2月6日日曜日

modo 501: SDK その1

前回の投稿からだいぶ日にちが空いてしまいましたが、今回はmodo 501で拡張されたSDKの機能の概要を解説したいと思います。

SDKの入手方法
modoのSDKは、Luxologyもしくはマーズの製品ダウンロードページから入手することが可能です。SDKの使用にあたっては特別なロイヤリティは発生しませんので、このSDKを使って開発したプラグインは自由に配布・販売することが可能です。modo 501のSDKのファイル名称はLXSDK_40017.zipです。40017はmodoのビルド番号を表しています。基本的にプラグインの上位互換は保持されていますが、新しいビルドで機能が追加される場合があります。


開発環境
SDKを使ってプラグインはC++言語を使って開発することができます。開発にコンパイラツールが必要になります。Windowsでは、Visual Studio、Mac OS Xでは、XCodeを使って開発することが可能です。サンプルコードには、Visual Studio 2008, Visual Studio 2010, XCodeのプロジェクトファイルが含まれています。Visual StudioのバージョンはExpressでOKですので、Windows版もMac OS X版も動作環境があればどちらも費用を掛けずに開発することができます。


SDKのディレクトリ構造
LXSDK_40017.zipを展開するとcommon, docs, include, sampleというディレクトリが現れます。基本的にLXSDK_40017.zipはどこで展開しても大丈夫です。各コンパイラのプロジェクトファイルには、コンパイルに必要なインクルードファイルのパスなどは相対パスで記述されています。

common
このディレクトリには、プラグインが自分のソースコードと一緒にコンパイルリンクするためのmodo SDKのソースコードが含まれています。基本的にプラグインはmodo内部の関数を公開されたAPIを通して起動しますので、ここでは最低限必要なソースコードや幾つかのユーティリティ関数が用意されています。

include
プラグインから呼び出すクラスなどが記述されたインクルードファイルが保存されているディレクトリです。

docs
SDKのHTMLドキュメントが含まれているディレクトリです。index.htmlをブラウザで開くと全てのページにアクセスすることが可能です。

samples
ここにはSDKのサンプルソースコードと開発環境のプロジェクトファイルが含まれています。


modo 501 SDKのインターフェイス
docs/interface.htmを見るとSDKが提供しているさまざまなインターフェイスの一覧を見ることができます。ここではSDKで拡張することが可能なサービスの種類とアクセス可能なインターフェイスが公開されています。

ILxLoader/ILxSaver
このインターフェイスはmodo 501以前から公開されているインターフェイスで画像やシーンファイルの入出力を拡張するための機能を提供しています。modoに含まれているほとんどのファイル入出力機能はこのプラグインで実装されており、ソースコードもサンプルとして公開されています。

ILxMovie
QuickTimeなどのムービーファイルの入出力のためのプラグインインターフェイスです。

ILxTextScriptInterpreter
modoは、Perl, Python, Luaなどのスクリプト言語をサポートしていますが、このスクリプトインタプリタ自身もプラグインとして実装されています。この機能を使えばRubyなど他のスクリプト言語をmodoに組み込むことが可能になります。

ILxColorModel
modo 501では、カラーピッカーの機能が大幅に拡張されています。このインターフェイスを使って独自のカラーモデルをカラーピッカーに追加することができます。

ILxValueTexture
新しく追加されたテクスチャプラグインを開発するためのインターフェイスです。BentleyのテクスチャやEnhance:modoテクスチャも全てプラグインで実装されています。

ILxCommand
コマンドを開発するためのインターフェイスです。モデリングコマンドなどさまざまな種類のコマンドを作ることが可能です。

ILxTool
SDKを使ってツールが作れるようになりました。3Dビュー上にハンドルを表示してインタラクティブなツールを開発することができます。

ILxPackage
アイテムを拡張するためのインターフェイスです。ギアアイテムなどのプロシージャルジオメトリアイテムやチャンネルモディファイヤを開発することが可能です。


サンプルのビルド
XCodeを使って実際に付属するサンプルをビルドしてみましょう。XCodeのプロジェトファイルは、samples/xcode_projectというディレクトリに入っていますので、ここにあるxcode_projext.xcodeprojというファイルをXCodeで開きます。私の使用環境はMac OS X 10.6.6, Xcode 3.2.5です。このプロジェクトファイルは全てのサンプルのプロジェクトファイルが含まれており、Xcodeのビルドメニューからビルドを実行するとサンプルをビルドすることができます。




LXSDK_40017のXcodeのプロジェクトが参照するインクルードファイルが幾つか不足しているようで、ビルドエラーが発生してしまいます。includesフォルダにある全てのヘッダーファイルを下図のようにドラッグアンドドロップしてプロジェクトの”グループとファイル”にあるinclude階層の下に追加してみてください。これでビルドができるようになるはずです。




サンプルの実行
サンプルプラグインがビルドできましたら。実際にmodoにいれて実行してみましょう。今回はArcツールを実行しています。

プラグインをmodoで使うには、まず、拡張子(.lx)がついたプラグインファイル(ダイナミックリンクファイル)とコンフィグファイルをmodoに読みこませます。標準プラグインはmodoアプリケーションのExtraフォルダに、標準コンフィグファイルはResrcフォルダに置かれています。ユーザーが拡張するプラグインやコンフィグは下記のユーザーごとに用意されているユーザーコンフィグフォルダがありますのでこちらにコピーするのが一般的です。素システムメニューのFileメニューにあるAdd Plug-in...から明示的に追加することもできます。

Mac OS X
~/Library/Application Support/Luxology/Configs
Windows 7
~/AppData/Roaming/Luxology/Configs

ビルドが成功するとxcode_project/Build/Debug/フォルダにarc.lxができあがります。このファイルをAdd Pluginで登録するか、ユーザーコンフィグフォルダにコピーするとmodoにプラグインが登録されます。実はarc.lxは、既に標準のExtraフォルダに入っていますのでここではsamples/tool_arc/arc.cfgだけをコピーするだけでOKです。このコンフィグファイルにはArcツールのアトリビュートをUIに表示するためのリソースが含まれています。

次にmodoを起動したらプラグインが登録されていることを確認するためにプラグインビューポートを表示してみましょう。プラグインリストは新規ウィンドウを開いてUtilityタブから選択すると表示されます。Toolカテゴリの下にprim.arcというツールが見つかればOKです。




ツールの起動は、tool.setコマンドで行います。ほとんどのツールはシステムメニューやフォームにボタンとして登録されていますが。ARCツールはまだ登録されていませんので、ここではコマンド履歴から直接tool.setコマンドを実行してARCツールを実行してます。コマンド履歴のテキストフィールドから下記のコマンドを入力して見ください。

tool.set prim.arc on

下記のようにARCツールが起動し、画面をドラッグすると円弧のプリミティブが作成されます。



コマンド履歴で毎回実行するのは面倒ですので、ショートカットに上記のコマンドを割り付けたり、フォーム編集でメニューやツールバーに登録して使用することができます。

下記はフォーム編集(Form Editor)に登録されているシステムメニュー(Menu Bar)に "tool.set prim.arc on"をArcという名称で登録した例です。システムメニューにArcツールが登録され、ここからツールを起動する事ができるようになります。


2011年1月15日土曜日

modo 501: プロシージャルジオメトリ

modo 501で新しく追加されたアイテムにプロシージャルジオメトリがあります。プロシージャルジオメトリは、直訳すると手続き型ジオメトリで、あるパラメータに基づいてプログラムが自動生成する形状です。modo 501のデフォルトで用意されているのはギアとガスケットです。どちらもSDKを使ってプラグインとして製作されており、ソースコードがSDKにサンプルとして用意されています。


ギアアイテムのパラメータ

プロシージャルジオメトリの利点は、ジオメトリを作成した後でパラメータを変更することによって形状を容易に変更することが可能な点があります。また、これらのパラメータは時系列で変更可能ですのでアニメーションで形態が移り変わる形状を作成することも可能です。下記はギアアイテムとガスケットのアニメーションをレンダリングしたサンプルです。




プロシージャルジオメトリは、通常のメッシュではありませんので頂点単位、ポリゴン単位で編集することはできません。編集したい場合は、アイテムのタイプをメッシュに変更することでコンポーネントの編集を行う事ができます。メッシュへの変換はフリーズコマンドではなく、アイテムリストのコンテキストメニューから実行する「タイプの変更」ですの注意してください。また、アイテム単位の移動、回転、スケールは行う事ができます。

ギアアイテム〔左)とメッシュに変換したギア(右)

また、マテリアルの設定ですが、アイテムマスクを作成してアイテム単位にマテリアルを設定することができます。そのプロシージャルジオメトリの仕様にも依存しますが、形状の部品をマテリアルやパートで分けているプロシージャルジオメトリであればマテリアルやパート単位にマテリアルを設定することも可能です。

ギアアイテムのポリゴンタグタイプ

プロシージャルジオメトリは、SDKを使ってプラグインで作成することを前提として新しく追加されたアイテムです。これからいろいろなアイディアで作成されたプロシージャルジオメトリが作成されていくことが期待されます。

2011年1月12日水曜日

modo 501: レンダリングチャンネル

modo 501には、レンダリングの機能拡張としてレンダリングチャンネルが幾つか追加されています。プロパティシートに追加されていないチャンネルもあります。一部はまだ実験的機能(experimental feature)のようです。このブログで追加されたレンダリングアイテムのチャンネルを整理しておきます。

レンダリングチャンネルの一覧



間接バンプマッピング (Indirect Bump Mapping)
間接バンプマッピングは、間接レイでバンプマッピングの評価を行う機能を有効にします。もちろんグローバルイルミネーションの計算のために使用される機能です。この機能は、通常無効となっていますが、例えば、デコボコした表面にコースティクスを表現するなど、特定のグローバルイルミネーションを使う場合に利用することができます。


開始プリパス空間 (First Pre-pass Spacing)
終了プリパス空間 (Last Pre-pass Spacing)
開始プリパス空間と終了プリパス空間は、グローバルイルミネーションの品質をより細かく制御するために用意されたチャンネルで、ICのプリパスをピクセル数のプリセットで指定します。これは実験的機能のようでベータテスターのYazan氏がフォーラムで解説しています。デフォルトのプリパスは、開始32ピクセルと終了4ピクセルです。最初のプリパスは32ピクセルで行われ、領域がに2分割されていき、最終的に4ピクセルになります。


間接LOD (Indirect LOD)
間接LOD(Level of Detail)は、メモリーの消費とレンダリング速度を向上させるためのオプションです。この機能を有効にすると間接照明のレイがヒットしたときにレベルオブディテールのコピーがディスプレースメントサーフェイスで作られます。高解像度のサーフェイスをメモリーから解放してLODに応じた低レベルのコピーが使われるためメモリーの節約とレンダリングの高速化につながるというオプションです。高解像度のテクスチャを多く使用するGIレンダリングで効果がでる場合があります。


ディスプレースメント・バンプ (Displacement as Bump)
このオプションはディスプレースメントの計算をバンプとして計算する事によって、メモリー消費とレンダリング速度の向上をはかる機能です。ディスプレースメントマップはマップの解像度に応じて低解像度のポリゴンを細かいマイクロポリゴンに分割し、ディーテイルを表現する機能ですが多くのメモリーを消費します。これはサーフェイスのディーテールの品質をできるだけ落とさずにバンプの計算でディスプレースメントに近いレンダリングを実現するためメモリー消費とレンダリング速度の向上が期待できます。ディスプレースメント・バンプ に関しては以前のブログでも少し紹介しています。

ディスプレースメント(modo 401)とディスプレースメント・バンプ(modo 501)の比較



下記のチャンネルはまだ調べていません(すみません)。詳細がわかりましたら後のブログで紹介いたします。

レイトレース加速度 (Ray Trace Acceleration)
レイバッチサイズ (Ray Batch Size)
サンプル統合半径 (Sample Merging Radius)

2011年1月9日日曜日

modo 501: スナッピング

modo 501では、スナッピングのワークフローに見直しが行われました。


  • スナップトグルキー
  • スナッピングパレット
  • デフォルトスナップツール
  • 1Dスナッピング
  • 固定スナップ


スナップトグルキーは、スナッピングのオンとオフを切り替えるためのキーです。modo 401では、スナッピングのプルダウンメニューにあった有効ボタンと同じ機能ですが、使う状況によって動作が異なります。このトグルキーはグローバルなXキーに割り付けられていますので、modo 401までデフォルトであった押し出しツールは、SHIFT-Xに変更されました。Xキーを普通に押すとスナッピングの状態のオン・オフが切り替わります。グリッドスナップやジオメトリスナップなどを起動して、マウスボタンを押しながらXキーを押すとXキーを押している間だけスナッピング状態が切り替わります。modo 501では、スナッピングのデフォルト値はオフですので、必要なときにXキーを押すとスナッピングが効くようになります。


ペンツール、グリッドスナップはオフ

マウスをドラッグ中にXキーを押した時だけスナップが有効になる



modo 401までは、スナッピングに関する設定が初期設定パネルなどいろいろな場所に分散されていましたので少し分かりにくい場合がありました。modo 501では、F11キーもしくはツールプロパティのスナッピングボタンを押すとスナッピングに関係するアトリビュートを並べたポップオーバーが表示されます。グリッドやジオメトリスナッピングなどもここから呼び出せます。

スナッピングパレット


このスナッピングパレットに、デフォルトスナップツールという項目があります。これは移動ツールやペンツールなどメインツールを起動したときに自動的にツールパイプにスナップツールを追加する機能です。例えば、グリッドスナップを頻繁に使う作業があったとき、通常はグリッドスナップツールとメインツールを別々に起動したり、ツールプリセットを作って使う必要がありました。modo 501では、Xキーを押したときだけスナップが働くのでよく使うスナップツールをここに登録しておけば、必要な時にいつでもスナップが使えるようになります。デフォルトのデフォルトスナップは、最後に使用したスナップツールです。もし、modo 401と同じフローで使いたい場合はここを「なし」設定して置くことができます。


1Dスナッピングは、ジオメトリスナッピングの一機能でツールの軸ハンドルを使用した時にのみ働く機能です。通常、ジオメトリスナッピングはマウスボタンを押しながらエレメントが置かれているマウスの位置を他のエレメントの位置に吸着させる機能です。これはツールハンドルを使っているときは全く機能していませんでした。1Dスナッピングは移動ツールなどの軸ハンドルをドラッグしたときにその軸方向の延長線上と他のエレメントが置かれている平面が交差するポイントに吸着が行われます。ちょうどガイドをつかってエレメントを整列させるような作業を自動的に行う事ができます。

軸ハンドルをドラッグすると破線上にハンドルがスナップ


modo 501のジオメトリスナッピングは、二段階のスナッピング範囲を持っています。初期設定の入力>作業平面に定義されている外側範囲と内側範囲です。移動中のマウス位置があるスナッピング対象エレメントの外側範囲に入ると候補位置がハイライト表示され、内側範囲に入ると実際にスナッピングが行われます。これは非常に便利でスマートな機能なのですが、他のツールのスナップのように移動中のマウス位置が必ず最も近いスナップ位置に吸着して欲しいというリクエストもありました。これを有効にするとスナッピングは近傍の頂点に強力にスナップします。

2011年1月4日火曜日

modo 501: キット


modo 501では、キットのコンセプトがワンランク上の存在としての取り扱われるようになりました。キットはコンフィグファイル、リソース画像、スクリプト、プラグイン、コンテントで構成されるパッケージでmodoに特定の機能を追加する物です。代表的なキットには、HDRESplashSLIKなどがあります。













modo 501は、起動時に任意のディレクトリにキットがないか検索します。この検索ディレクトリにはuser:Configsとリソースディレクトリが含まれます。キットはindex.cfgというファイルを含むサブディレクトリです。これは一般的なコンフィグファイルですが、キットの名称を持つ宣言文があります。
<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName">
  [...]
</configuration>
キット名は内部名称でありグローバルかつユニークでなければなりません。このコンフィグファイルは自動的にキットを認識させるためだけのファイルです。その他の必要なファイルはこの場所から必要に応じて参照されます。キットは自動的にkit_<name>と呼ばれるキットのディレクトリを示すパスのエリアスを得ることができます。
<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName">
  <import>resrc</import>
  [...]
</configuration>
もしくは個々のリソースを名称を指定してインポートします。
キットにはプラグインを使うこともできますので、サブディレクトリにプラグインを配置し、32ビットと64ビットのプラグインを自動識別させて読み込ませることも可能です。
<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName">
 <atom type="Extensions32">
  <list type="AutoScan">extra</list>
 </atom>
 <atom type="Extensions64">
  <list type="AutoScan">extra</list>
 </atom>
 [...]
</configuration>
上記の例はキットが32ビット版と64ビット版のプラグインを持ち、正しいバージョンを"extra"フォルダにインストールされるように設定しています。もしくは、単一のキットが異なるディレクトリに入れた両方のバージョンのプラグインを同時に持つこともできます。
<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName">
  <atom type="Extensions32">
    <list type="AutoScan">x32</list>
  </atom>
  <atom type="Extensions64">
    <list type="AutoScan">x64</list>
  </atom>
  [...]
</configuration>
キットにアイコンやその他の目的の為に使用する画像を定義することもできます。アイコン画像は使用するコンフィグ自身のファイルパスからの相対位置が検索されます。この例では"icon.tga"ファイルは、コンフィグファイルと同じディレクトリに置かれます。画像リソースのキーはグローバルでユニークでなければなりません。
 <atom type="UIElements">
  <hash type="Image" key="testKit_icons">icon.tga</hash>
  <hash type="Icon" key="item.val.test.texture">
    <atom type="Source">testKit_icons</atom>
    <atom type="Location">0 0 13 13</atom>
  </hash>
 </atom>

スクリプトもキットから参照可能です。これはスクリプトへのエリアスを定義することで実現されています。画像の場合のように、スクリプトがキットディレクトリの中にある場合は、スクリプト名称以外なにも必要ありません。
 <atom type="ScriptSystem">
  <hash type="ScriptAlias" key="myScript">doit.pl"</hash>
  <hash type="ScriptAlias" key="myScript2">dir/doi2t.pl"</hash>
 </atom>
上記のように定義するとエリアスはスクリプトのある場所を参照するために使用されます。例えば、"@myScript"は上記の"doit.pl"を実行し、自動的にエリアスとキットの置かれている場所を認識します。これによってスクリプトを直接ユーザーが呼び出したり、キット自身から呼び出せるようになります。
キットだけでなく任意のスクリプトにエリアスを設定することが可能です。エリアスのパスは絶対パス、参照、エリアスパスもしくはユーザースクリプトフォルダのスクリプト名称でなければなりません。
 <atom type="ScriptSystem">
  <hash type="ScriptAlias" key="myScript">pathAlias:dir/doit.pl"</hash>
 </atom>
ユーザーがキーカスタマイズを確実に行えるように、キットで使用する全てのスクリプトにスクリプトエリアスを使用することをお勧めします。もしくはスクリプトをキットのパスエリアスの相対位置として直接実行する方法もあります。
キットを特定のシステムに対してのみに有効にしたり、逆に無効することができます。例えば、このキットはPCにだけにロードされます。
<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName" and="nt">
  [...]
</configuration>
こちらはMacの32ビット版のmodoにだけロードされます。
<?xml version="1.0" encoding="UTF-8"?>
<configuration kit="kitName" and="app32" or="mac">
  [...]
</configuration>
この論理値は読み込まれた順番に評価されます。グループ化はできません。"!x86"などの記述は負の論理値を表すために使うことができます。サポートされているキーには、pp32, app64, x86, x64, mac, osx, win, ntがあります。この規則には制限がありますので対応できない組み合わせもあります。
modo 501用には既にLaubwerk Plants(樹木のキット)などサードパーティのキットの開発も進んでいます。
このmodoのキットの仕組みと変幻自在なUIを使うことによってアイディア次第で特定用途向けのCGパッケージを作ることが可能です。キットは、modoを3DCGのツールキットとしてコンテンツパッケージを作る手段を提供しています。http://www.luxology.com/store/hdre02_landscape/

2011年1月2日日曜日

modo 501: レンダリング性能の改善

modo 501では、レンダリングに様々な改善が行われています。中でもレンダリング速度の大幅な改善は501の大きな改善事項の一つです。CPUの性能が幾ら高速化されてもレンダリング速度向上は重要ですね。

基本的にmodoのレンダリングは、GPUを使用せずCPUの機能のみを使ってマルチスレッディングの処理に最適化されています。CPUで必要な命令はSSE2ですので、最近のCPUでしたらほとんど問題なく動作します。レンダリングの単位であるバケットは各スレッドに割り当てられますのでコア数が増えるほど並列化され高速にレンダリングされます。下記はmodo 401とmodo 501のレンダリング速度を比較した結果です。もちろん、レンダリングするシーンの特性によりスピードアップのバラツキはありますが、1.5倍ぐらいは普通に速度アップしています。シーンによっては3倍以上のパフォーマンスを発揮します。
Room, modo 401: 66.3s
Room, modo 501: 44.1s (1.50x speedup)
8Spheres, modo 401: 64.6s
8Spheres, modo 501: 40.1s (1.61x speedup)
TeaTime, modo 401: 55.3s
TeaTime, modo 501: 32.2s (1.72x speedup)
AngerManagement, modo 401: 42.8s
AngerManagement, modo 501: 24.0s (1.78x speedup)
WMD_Full_Scene, modo 401: 111.4s
WMD_Full_Scene, modo 501: 58.1s (1.92x speedup)
TestTubes, modo 401: 44.0s
TestTubes, modo 501: 22.6s (1.95x speedup)

特にレンダリング速度がアップした物にMDDファイルを使ったアニメーションのレンダリングがあります。MDDはモデルデータの頂点座標の時系列情報を保存したファイルでLightWaveを始め、多くの3DCGソフトウェアがMDDファイルをサポートしています(※一部のソフトウェアはPointOvenなどサードパーティのソフトが必要になります)。他のソフトでアニメーションを作成し、modoでレンダリングをするフローで仕事をする方には特に恩恵が大きいのではないでしょうか。


また、ファーを使ったシーンではレンダリング速度の向上に加え、使用メモリーの節約も同時に行っています。レンダリングに不必要な視野外のファーを可能な限り除去することによってレンダリング速度とメモリー節約を同時に行っています。ファーを使用したレンダリングは時間が掛かる処理ですので効果は大きいと思います。リリース版ではありませんがMac OS版も64ビットになり、2Gバイトメモリーの制限からは解放されますが、使用メモリーの効率化もまだまだ重要です。

ファーカリング(オフ)

ファーカリング(オン)
その他、バンプマッピングの改善もレンダリング速度とメモリー節約に貢献しています。ディスプレースメント・バンプ(Displacement as Bump)は、同じ条件でのレンダリング効率がアップした物ではありませんが、ディスプレースメントを使用してレンダリングしたイメージと同じぐらいの品質のイメージをバンプで実現する機能です。条件によっては見た目でわからないディスプレースメントのレンダリングを高速かつ少ないメモリーで行う事が可能です。また、バンプマップそのもののアルゴリズムも改善されましたので、よりリアルな凹凸を表現できるようになりました。
通常のディスプレースメントでのレンダリング

ディスプレースメント・バンプを使ったレンダリング