バージョン 3.13.1.2
2015 年 1 月 22 日
Copyright 1986, 2015 NVIDIA ARC GmbH. All rights reserved.
これらのリリース ノートには、バージョン 3.12.0.1 以降の mental ray の変更点がまとめられています。
注意: mental ray のバージョン 3.13 以降は、mental ray バージョン 3.12.x およびそれ以前のバージョンとはバイナリ非互換です。3.12 とそれ以前のバージョンとの部分的な互換性は維持されています。
機能強化:
"label"
ではなく)チャネル サフィックス "id"
を使用します。こうすると、OpenEXR チャネルの命名規則に従うことができます。"deep merge
threshold"
が追加されました(既定値は 0.01)。このオプションを使用すると、サンプルの深度許容値を指定して、深度が似ているサンプルを結合できます。バグ修正:
state::transform_vector()
、state::transform_normal()
、state::animation_time()
メソッドのサポートが修正されました。シェーダの変更:
mia_physicalsky
シェーダで停止時/夜間(太陽が地平線の下に沈んでいる時間)に Preetham モデル(sky_illuminance_mode 0
)を使用する場合、太陽が地平線から約 18 度下に沈むと、夕焼けの値から夜カラー(既定は黒)に滑らかに移行する機能が追加されました。標準の Preetham モデルは夜間照明をサポートしていません。このシェーダの以前のバージョンでは、太陽が地平線から下に大きく沈んだ場合も、夕焼けの照明がわずかに調整されて表示されていました。バージョン 3.13.0.15 でシェーダが修正される前の夜間ライティングは、偶然にも許容できるものでした。これは、夕焼けの照明が誤って計算されて、Preetham モデルよりも値が小さくなることが多かったためです。
iray レンダリング モード(MDL および MetaSL シェーダ)に対応する修正が適用されました。
coreutil
シェーダで既定のサーフェス シェーダを使用すると、セグメント化シャドウ モードで影が失われました。この問題は解決されました。mila_layer_hair
フェノメナ宣言の apply
フラグが削除されました。機能強化:
Z
から <framebuffername>.Z
に変わりました)。 これは、他のフレームバッファや、複数パーツの OpenEXR ファイルに対する出力と整合性が取れています。.r/.g/.b/.a
チャネルがカラー チャネルとして検出されます。このようなファイルを生成するツールは、チャネル名を大文字にする必要があるという OpenEXR の規則に従いません。imf_disp
および imf_info
ツールでは、便利なように、レイヤ内の .X/.Y/.Z
または .x/.y/.z
チャネルを 3 つ検出します。このようなファイルを生成するツールは、強度を高めるために .Y
チャネルを保持するという OpenEXR の規則に従いません。imf_info
ツールの場合、廃止されたリマップ済みの解像度でなく、タイル サイズを出力します。バグ修正:
miOptions::trace
)を無効にして BSDF (特に MDL BSDF)で補助的光線をトラックしようとすると、クラッシュする可能性がありましたが、修正されました。imf_disp
および imf_info
ツールでは、標準イメージ チャネルが存在するレイヤ内で追加チャネルを検出するコードが修正されました。たとえば、R
、G
、B
、A
、Z
チャネルが存在する単一パートの OpenEXR ファイルで Z 深度が検出されます。.mi
パーサでは、フレームバッファ文字列アトリビュートと走査関数名のメモリ リークが発生しましたが、修正されました。 シェーダの変更:
coreutil
Alembic abcimport
シェーダで、三角形専用オブジェクトの面ごとのマテリアルのサポートが追加されました(パラメータについては、バージョン 3.13.1.0 を参照)。 複雑なポリゴン オブジェクトでは、バージョン 3.13.1.0 で追加された面ごとのマテリアルに問題が発生する可能性がありましたが、修正されました。facesetmaterials
パラメータが有効(既定)になっていて、オブジェクト上にフェース セット名が存在する場合、mental ray はこれらのフェース セット名を割り当て対象マテリアルの API 名として認識します。tubeshade
が既定で無効になります。noise
パラメータの既定値も 0 に変更されます。mila_mix
シェーダにメモリ リークが発生しましたが、修正されました。機能強化:
"sample improved pattern"
off
で無効にできます。バグ修正:
imf_disp
および imf_info
のツールでは、チャネルに小文字の r/g/b/a サフィックスを使用してレイヤを検出していましたが、修正されました。mi_query()
の miQ_PRI_VERTICES_BUMPS_U
、miQ_PRI_VERTICES_BUMPS_V
、miQ_PRI_VERTEX_INFO_INDEX
、miQ_PRI_VERTEX_INFO
モードを使用すると、シェーダがクラッシュする可能性がありましたが、修正されました。state::object_id()
の使用はサポートされていませんでしたが、追加されました。シェーダの変更:
coreutil
Alembic abcimport
シェーダで、ポリゴン オブジェクトに対する面ごとのマテリアルのサポートが追加されました。 新しいブーリアン facesetmaterials
パラメータが有効(既定)になっていて、オブジェクト上にフェース セット名が存在する場合、mental ray はこれらのフェース セット名を割り当て対象マテリアルの API 名として認識します。mila_light
シェーダが追加されました。
declare shader color "mila_light" ( color "color", # energy from color, intensity, exposure scalar "intensity", scalar "cone", # inner solid cone for spotlight scalar "threshold",# accuracy threshold for opti. scalar "cos_exp" # cosine exponent (disc&rectangle) ) apply light end declare
"Le<R[GS]>E"
/"Le<R[SG]>E"
,
"<L'1'><R[GS]>E"
/"<L'1'><R[SG]>E"
、"<L'2'><R[GS]>E"
/"<L'2'><R[SG]>E"
、"<L'3'><R[GS]>E
"/"<L'3'><R[SG]>E"
、"<L'4'><R[GS]>E"
/"<L'4'><R[SG]>E"
LPE アトリビュート)。mila_layer_hair
フェノメナで、スカラー direct
および indirect
ウェイト パラメータが追加されました。layering_phen.mi
フェノメナ宣言ファイルでは、layering.so/dll/dylib
をリンクしません。mib_illum_hair_x
basehair
シェーダで、間接光の影響が追加されました。バグ修正:
-texture_continue on
コマンド ライン オプションが機能しませんでしたが、修正されました。バグ修正:
バグ修正:
base::coordinate_source
)のサポートが修正されました。シェーダの変更:
mia_physicalsky
シェーダでは、sky_illuminance_mode 0
(Preetham モデル) の入力ミスにより、太陽が地平線の上まで沈んだときに空が暗くなりすぎましたが、修正されました。iray レンダリング モードおよび MetaSL シェーダに、対応する修正が適用されました。coreutil
ライブラリの Alembic abcimport
シェーダの変更点:
cure_approx
パラメータの名前が subdivisions
に変更されました。 名前が変更されたパラメータはパラメトリック近似として NURBS オブジェクトに適用されるようになりました。 バグ修正:
GPU AO および GI プラグインが Optix Prime 3.7 を使用するように切り替わりました。
機能強化:
バグ修正:
raylib.dll
の周りで mental ray スタンドアロン ビルドがスレーブ モードで動作機能がありましたが、修正されました。シェーダの変更:
coreutil
Alembic シェーダで、トポロジを変更するオブジェクトに対するモーション ブラーのサポートが修正されました。機能強化:
バグ修正:
シェーダの変更:
coreutil
シェーダ ライブラリが uvtile、Alembic、Ptex シェーダで構成されるようになりました。 互換性を維持するために、引き続き古いライブラリが個別に提供されています。coreutil
Alembic シェーダで、ユーザ データ ブロックが使用されている場合クラッシュする可能性がありましたが、修正されました。機能強化:
mi_api_*
タグがスレーブ/サテライト ホストで機能するようになりました。このバージョンの既知の制限: 名前に含めるシンボル数は 1024 以下にする必要があります。バグ修正:
{_MI_REG_LIBRARY}
レジストリ パスは検索されませんでした。 mib_tiled_texture
のような従来のシェーダによってテクスチャが作成された場合、ピン数が間違っている可能性がありましたが、修正されました。imf_disp
および imf_info
ツールでは、OpenEXR 単一パーツ ファイル内で、名前にドットを含む単一チャネル レイヤが適切に検出されませんでした。特に、レンダリングされたマルチレイヤ イメージに深度コンポーネントがないことがありました。この問題は解決されました。builtin_object_light
マーカー シェーダの不要なコピーが作成されました。この問題は解決されました。mi_rc_run_query()
関数が、統合インタフェースからシェーダ インタフェースに移動されました。シェーダの変更:
mib_tiled_texture
シェーダでは、任意のイメージ ディレクトリを使用する場合のみ、utiles
パラメータを使用します(値 mode 3
)。 それ以外の場合は、パラメータの値が自動的に検出されます。新機能:
coreutil
が追加されました。
初期のバージョンでは、このライブラリ内に、効率的に UV タイルを実装できる新しい単一のシェーダ mib_tiled_texture
が含まれています。 このシェーダは必要に応じてタイル テクスチャを作成およびロードします。実際にアクセスできるのは、メモリにロードされているタイルのみです。
declare shader color texture "mib_tiled_texture" ( integer "mode" default 0, integer "utiles" default 10, scalar "filter", string "colorprofile", vector "uvCoord", string "texture_dir", array struct "texture_info" { string "filename", vector "tile_coord" } ) end declare
"mode"
パラメータは使用されるファイル名およびレイアウトの規則を指定します。値 0
(既定)は UDIM 用、値 1
は Mudbox 用、値 2
は Zbrush 用です。値 3
を使用すると、任意のイメージ ファイル名のリストを "texture_info"
配列で指定できます。
モード 0、1、2 の場合、シェーダはディレクトリ "texture_dir"
を解析して、一致するファイル名(モード 1 および 2 の場合は uXX_vYY など)を検索し、このデータから v
次元のタイル数を取得します。モード 3 の場合、配列はタイルの配置に応じて、任意のファイル名および U/V 座標のペア(0 から U の最大値/V の最大値までの整数)のリストを指定します。パラメータ "utiles"
は u
次元のタイル数を指定します。 タイル ファイルの一部は省略できます。
"filter"
および "colorprofile"
パラメータはテクスチャ タイル テクスチャを作成する場合に使用します。
タイルを選択し、対応するテクスチャがまだロードされていない場合はロードできるように、[0, utiles
) の「uvCoord」パラメータ x および [0, max_v) のパラメータ y が渡されます。
既知の制限事項: マルチホスト レンダリング テクスチャの には、ファイル システムのすべてのマシンからアクセスできる必要があります。テクスチャはカラー テクスチャとして解釈されます。
機能強化:
"ambient occlusion
gpu *
" 文字列オプションが名前変更されました。新しい名前は "ambient occlusion
pass devices"
、"ambient occlusion pass oversampling"
、"ambient occlusion pass filter"
です。imf_copy
ツールで、タイル化されたディープ データからスキャン ライン ディープ データへの変換(-s
コマンド ライン オプション)が追加されました。バグ修正:
シェーダの変更:
"LPE"
(値は "L<RD>E"
または "direct_diffuse"
など)として指定できます。 これがお勧めする主要な方法ですが、下位互換性のために、フレームバッファ名を示す "LPE:
L<RD>E"
などの文字列オプション セットや、「direct_diffuse」などのフレームバッファ名が引き続きサポートされています。
以前のバージョンのシェーダでは LPE の不正な割り当てがフレームバッファに渡される可能性がありましたが、修正されました。
透過される拡散反射、光沢反射、スペキュラ反射に対して、フレームバッファ LPE サポートが追加されました(名前は "L.+<RD><TS>+E"
/"indirect_diffuse_transmitted"
、"L.+<RG><TS>+E"
/"indirect_glossy_transmitted"
、"L.+<RS><TS>+E"
/"indirect_specular_transmitted"
)。
mip_matteshadow
シェーダでアーティファクトが生成される可能性がありましたが、修正されました。 緑や青のチャネルにも ao_dark
パラメータの赤チャネルが使用されていました。abcimport
Alembic シェーダがライブラリ バージョン 1.5.5 に切り替わりました。これにより、特に、mental ray バージョン 3.13.0.6 に導入されたヘア サポートのノットの均一性に関する制限がなくなりました。バグ修正:
現在の mental ray およびそのプラグインで OptiX Prime のみを利用しているため、配布テープから OptiX ライブラリが削除されています。Optix Prime ライブラリは引き続き配布テープに含まれています。
新機能:
新しいタイプのシェーダである colorprofile
が追加され、完全にプログラム可能なカラー変換を使用できるようになりました。サードパーティのニーズに基づいて、カスタム カラープロファイル/LUT の変換を実装できます。
.mi
構文が変更されました。 カラー プロファイル シェーダの宣言およびインスタンス化は、共通のシェーダ宣言ルールに従います。
シェーダの宣言に apply colorprofile
フラグを含められるようになりました。
カラー プロファイルで、次の構文を持つシェーダ インスタンスを指定できるようになりました。
colorprofile "profilename" ... shader <shader instance> ... end colorprofileraylib 統合の miColor_profile struct::shader メンバーが追加され、トランスレータによってシェーダ インスタンス タグを割り当てられるようになりました。
miColor
in-out ポインタです。このシェーダは必要な方向にカラーを変換すると想定されています。
miRAY_COLOR_TO_INTERNAL
と miRAY_COLOR_FROM_INTERNAL
という 2 つの新しい「レイ タイプ」が追加されました。シェーダが呼び出された場合、miState::type
はこれらの値のいずれかに設定されます。 前者の値は、テクスチャまたはテクスチャ タイルがメモリにロードされている場合に使用されます。後者の値は、フレームバッファなどの出力イメージに使用されます。
最適化のために、カラー プロファイル シェーダで SIMD 型の変換を実装することができます。シェーダが呼び出されると、miColor* パラメータはカラーの配列をポイントし、この配列内の要素数(1 以上)を使用して miState::count が初期化されます。カラープロファイルによって複数の変換が行われることがあります。この場合、戻り値はシェーダが変換した要素数になります。特に、この拡張を認識しないシェーダや、この拡張を実装していなシェーダは、単一カラーを変換して、miTRUE
を戻します。miTRUE ==
1
であるため、カーネルはこれを単一要素変換と解釈します。この SIMD 最適化が有効なのは、C/C++ シェーダ/シェーディング ツリーのみです。フェノメナには有効でありません。
テクスチャがフレーム レンダリング範囲外にロードされる可能性があるため、カラー プロファイル シェーダから、使用できない可能性のあるオプションまたはカメラにアクセスしてはなりません。
機能強化:
AO バッファ計算のレンダリング速度が大幅に向上し、GPU メモリ消費量が低下しました。
次の新しい文字列オプションが追加されています。
構文 [local|filter[<value>]]* [color|scalar|vector]
texture <texture_name> [colorprofile <colorprofile_name>]
<file_name> <image_type>
が追加されました(<image_type>
が追加されたことに注意してください)。たとえば、カラー プロファイル "rgb_h"
(ハーフ)で使用される 8 ビット "rgb"
テクスチャが、使用するイメージ タイプとして適切な場合があります。
raylib 統合は mi_api_texture_file_size(0, 0, 0,
image_type)
を呼び出すことがあります。image_type は mi_api_texture_type_identify(mi_mem_strdup("<
image type 文字列>"))
を呼び出した結果です。以前のバージョンの mental ray と異なり、mi_api_texture_file_size()
関数は書き込み不可能なテクスチャに対して機能します。
"dwaa"
および "dwab"
の不可逆圧縮モードを含む OpenEXR 2.2 のサポートが追加されました。これらのモードでは、圧縮レベル/不可逆度を指定する精度パラメータが必要です。現在の OpenEXR 開発者の推奨値は 45 (不可逆度が最小/ファイル サイズが最大/イメージ精度が最大)~ 2000 (不可逆度が最大/イメージ サイズが最小)の範囲です。mi_geoshader_echo_tag_file()
関数が追加されました。
miBoolean mi_geoshader_echo_tag_file( const char *file_name, /* file name */ miBoolean append, /* append or rewrite file */ const char *header, /* optional string to be written to file */ miTag tag, /* DB tag to echo */ miEchoOptions *options) /* echo options */
mi_geoshader_echo_tag()
関数と異なり、この関数はファイル名およびファイルを開くモード(追加または上書き)を取ります。ファイル モードは、ファイルがすでに存在する場合のみ関係します。この関数は UTF8 ファイルの名前(WIndows プラットフォームなど)をサポートします。
mi_geoshader_echo_tag()
関数は廃止されています。引数の 1 つの FILE*
ポインタをダイナミック ライブラリ境界を越えて渡してはならないためです。 これにより、別のコンパイラ バージョンまたはコンパイラ オプションを使用していた場合、矛盾が生じる可能性があります。
バグ修正:
parti_volume
シェーダなどの重要でない初期化を行う一部のシェーダとの互換性が修正されました。rgb_h
から rgba_h
イメージ タイプにイメージを変換する場合にクラッシュしましたが、修正されました。b44a
圧縮サポートが含まれていませんでしたが、修正されました。シェーダの変更:
abcimport
シェーダで、(Alembic の ICurves
から)ヘアのサポートが追加されました。このバージョンでサポートされているのは、ノット ベクトルが均一なリニア セグメントおよびキュービックのみです。mip_binaryproxy
シェーダが mi_geoshader_echo_tag_file()
関数を使用するように切り替わり、UTF8 ファイル名のサポートが追加されました。MacOSX ビルドが CUDA バージョン 6.0 (Windows/Linux と同じ CUDA バージョン)を使用するように切り替わりました。
既知の問題 :
-assert_fatal
off
コマンド ライン オプションを使用するか、raylib を統合するアプリケーションで mi_set_assertion_fatal(0)
を呼び出して、アセット メッセージを無視してください。非デバッグ ビルドは影響を受けません。機能強化:
mi_api_texture_callback_def_x()
、mi_api_object_placeholder_callback_x()
、mi_api_data_callback_x(
が追加されました。3 番目のオプションのコールバック関数は、アセンブリ/オブジェクト/データ ブロックを削除すると呼び出されます。mental ray はデータを何度も作成し直すことができます。これにより、ゼロ、1 つまたは複数の作成コールバック(#1)呼び出しとフラッシュ コールバック(#2)呼び出しが交互に行われるようになります。フレームまたはレンダリングの最後に、削除コールバック(#3)が 1 回呼び出されます。したがって、コールバックのパラメータは、新しく追加された削除コールバック内で最初にリリースする必要があります。
フラッシュ コールバック(#2)でコールバック パラメータをリリースするジオメトリ シェーダ ライターに共通の誤りがありました。作成コールバック(#1)を複数回呼び出した場合にクラッシュしたり、作成(#1)およびフラッシュ(#2)コールバックをまったく呼び出さなかった場合にメモリ リークが発生する可能性がありました。
mi_rc_run_query()
の miRCQ_CUDA_*
モードで iray プラグインをロードする必要がなくなりました。照会機能を実行できるように、raylib および mental ray スタンドアロン実行可能ファイルが CUDA の静的なランタイム ライブラリとリンクされるようになりました。バグ修正:
dlclose()
が呼び出されず、シェーダのダイナミック ライブラリおよびシンボルがプロセス テーブルに残りました。raylib を統合するアプリケーションでは、mental ray プラグインをアンロードすることもできませんでした。iray
のベイク処理環境でクラッシュが発生しましたが、修正されました。フェノメナは環境シェーダとして使用されていました。fg_copy
でクラッシュが発生しましたが、修正されました。imf_copy
で、複数レベル モードの照合(imf_copy -c
)が修正されました。シェーダの変更:
mib_illum_hair_x
シェーダのパラメータが追加されました。
scalar "noise"
(既定値は 1.0
)。特に、値 0.0 を指定すると、ビルトイン ノイズは無効になります。boolean "tubeshade"
(既定は true
)。false
に設定されている場合は、チューブ形状のシェーディングでなく、平坦なサーフェスが使用されます。このバージョンでは、 mental ray と MDL シェーダを併用する場合のミニチュートリアルが追加されました。
バグ修正:
mi_par_random()
乱数生成関数のシード初期化が適切に行われませんでしたが、修正されました。シェーダで乱数を使用する場合や、レンダリングされたイメージをディザリングする場合、この変更によってノイズが少し変更されることがあります。機能強化:
バグ修正:
バグ修正:
mi_api_scope_begin()
関数が修正されました。 これにより、特に、.mi namespace
構文によって指定された複数レベル の範囲を使用したり、シェーダ/フェノメナ宣言で範囲を使用できるようになります。-echo callgeoshader
および -echo
callassembly
コマンド ライン オプション)の結果をエコーするときに、タグが失われる可能性がありましたが、修正されました。fine
モディファイヤを使用しないポリゴン ディスプレイスメントで、100 万個の三角形という制限が解除されました。これにより、テッセレーションされたアーティファクトが生成される可能性がなくなりました。.mi
ファイルを渡した場合、またはこのファイルが存在しなかった場合は、ファイル名メモリ リークが発生しましたが、修正されました。注: 主要コンパイラのビルド バージョンが Linux では gcc 4.8 に、Macosx では Clang に変更されました。
新機能:
新しいアルゴリズムを使用することにより、iray レンダリング モードのパフォーマンスが大幅に向上し、劇的な向上が見られたシーンも多数ありました。インタフェースおよびオプションは変更されていません。既存のシーンのレンダリング方法は以前の iray バージョンと非常に似ていて、異なるのはノイズ分布のみです。
OEM の raylib 統合では、raylib をスタティック ライブラリではなく、ダイナミック ライブラリの形式で配信できます。この場合、OEM は統合アプリケーションが raylib を使用して自分自身を認証するための機密情報を受信します。この方法の利点は、ホスト アプリケーションを更新しなくても mental ray のコアを更新できること、ZLib などの一般的なライブラリで発生するシンボル/バージョンの競合を回避できること、mental ray およびアプリケーションを構築するためのさまざまなコンパイラ バージョンおよびオプションを使用できることです。OEM 統合に使用されるテープのサイズも小さくなりました。
ラスタライザを使用してレンダリングする場合、レンダリング フレームバッファは OpenEXR ファイルに格納され、フレームバッファのブーリアン アトリビュート "deep"
は true
に設定されます。作成されたイメージは OpenEXR 2.0 ファイル フォーマットの DeepTile 形式で保存され、Z 軸に沿ったピクセル カラーの追加情報が含まれています。同じレンダリング中にディープ データおよび従来のデータを異なるフレームバッファに保存することができます。
このバージョンの mental ray はディープ データをサポートしていないため、ラスタライザを使用しない純粋なレイトレーシング レンダリングは実行できません。ただし、将来この機能を追加する予定です。
-echo callgeoshader
コマンド ライン オプションを使用すると、ジオメトリ シェーダを参照する代わりに、ジオメトリ シェーダが呼び出され、生成されたコンテンツがエコーされます。このモードは、アセットを解析する場合、またはジオメトリ シェーダ コンポーネントの従属関係を削除する場合に便利な可能性があります。-echo callassembly
コマンド ライン オプションを使用すると、手続き型アセンブリのコールバックが評価され、生成されたコンテンツが .mi
ファイル(アセンブリごとに 1 つのファイル)にエクスポートされます。mental ray 3.13 は、ray/iray レンダリング モードを含むマテリアル定義言語(MDL)をサポートします。
新しいプラグイン(libmdl.dll/.so/.dylib)には、MDL マテリアルをプラットフォーム固有の実行可能ファイル コード(メモリ内)に変換する MDL コンパイラが含まれています。 コンパイラは自己完結型です。特に、外部 C/C++ コンパイラおよびリンカを利用することはありません。
.mi 構文が $mdl
ステートメントで拡張され、MDL マテリアルを .mi ファイルに直接埋め込めるようになりました。$include
ステートメントで .mdl ファイルを追加することもできます。mental ray API は mi_api_mdl_load_module()
関数によって拡張され、特定の MDL モジュールをロードできるようになりました。 mental ray API データベース内のすべての MDL マテリアルにアクセスできます。使いやすいように、これらは "mdl::"
スコープに配置されています。
制限事項: mental ray 3.13 の MDL マテリアルでは、mental ray C/C++/MetaSL シェーダを MDL マテリアル入力に接続されたパラメータとしてアタッチすることができません。 サポートされているのはサーフェス マテリアルのみです。
現在のリビジョンでは MDL のサポートがまだ機能しません。
機能強化:
mi_api_tag_lookup()
を使用して、重要な情報メッセージの出力などを行うことができます。下位互換性に影響する機能:
miFunction_decl
構造にシェーダまたはフェノメナ宣言の名前が含まれなくなりました。ジオメトリ シェーダおよび raylib 統合では、miFunction_decl::name
ではなく、宣言データベース タグで呼び出される mi_api_tag_lookup()
関数を使用する必要があります。"unified sampling subfilter"
文字列オプション(-unified_sampling_subfilter
コマンド ライン オプション)が既定で有効になっています。 優れた精度のイメージが生成されることが証明されています(特に、コントラストの高いエッジ沿い)。バグ修正:
シェーダの変更:
mila_layer_hair
フェノメナを含む一連のレイヤ フェノメナが layering_phen.mi
ファイルに追加されました。 ヘアのユーティリティ シェーダが追加されました。mia_ciesky
シェーダのスケール パラメータが修正されました。バグ修正:
シェーダの変更:
機能強化:
バグ修正:
mi_api_tag_lookup()
関数を呼び出すとクラッシュしましたが、修正されました。 代わりに Null ポインタを返すように関数が変更されました。シェーダの変更:
abcimport
シェーダで、ジオメトリ プロパティ データのサポートが追加されました。mental ray の trilist 頂点に color3、color4、point、normal、float、int のデータ型がアタッチされています。次のシェーダは、データを取得する方法の一例です。
inline void bary_interpolate( miScalar * result, const miScalar * va, const miScalar * vb, const miScalar * vc, const miScalar bary[3], const miUint dim) { for (miUint i=0; i < dim; i++) { result[i] = bary[0] * va[i] + bary[1] * vb[i] + bary[2] * vc[i]; } } extern "C" DLLEXPORT miBoolean vertex_color(miColor * result, miState * state, void * p) { int nu = 0; result->r = 1; mi_query(miQ_NUM_USERS, state, 0, &nu); if (nu >= 1) { int num; mi_query(miQ_PRI_NUM_VERTEX_INFOS, state, 0, &num); for (int i=0; i < num; i++) { miApi_vertexinfo vi; if (mi_query(miQ_PRI_VERTEX_INFO_INDEX, state, 0, &vi, i)) { if (vi.kind == 'u' && vi.type == miAPI_VERTEXINFO_TYPE_COLOR && vi.name && !strcmp(vi.name, "bifrostVorticit const miScalar *a, *b, *c; mi_tri_vectors(state, '*', i, (const miVector**)&a, (const miVector**)&b, (const miVector**)&c); miScalar r[20]; bary_interpolate(r, a, b, c, state->bary, vi.dimension); for (int i=0; i < vi.dimension; i++) r[i] /= 255.f; result->r = r[0]; result->g = r[1]; result->b = r[2]; if (vi.dimension == 4) result->a = r[3]; else result->a = 1.f; } } } } return miTRUE; }
layering
シェーダで MILA サブサーフェス スキャタリングを初期化するときにクラッシュが発生する可能性がありましたが、修正されました。機能強化:
バグ修正:
mi_trace_continue
を使用した場合、深いレベルの再帰(パフォーマンス、警告)が発生する可能性がありましたが、修正されました。機能強化:
shader.c
ファイルが追加されました。Windows プラットフォームでは、このファイルをコンパイルし(普通の C を使用)、shader.lib
の代わりに使用して、mental ray 自体で使用されるものと一致しない C/C++ コンパイラ バージョンまたはオプションを含むシェーダ ライブラリを構築することができました。バグ修正:
mi_trace_continue
が呼び出された場合、深いレベルの再帰(パフォーマンス、警告)が発生する可能性がありましたが、修正されました。mi_sample_light
を呼び出して dir
または dot_nl
パラメータに Null ポインタを渡すシェーダがシーンに含まれている場合、クラッシュが発生しましたが、修正されました。mia_photometric_light
および一部の OEM シェーダを使用するシーンが影響を受ける可能性があります。rgbe
フレームバッファ(特に HDR イメージファイル フォーマットで使用)がサポートされていませんでしたが、追加されました。ptex.so
シェーダ ライブラリがリンクされている場合、クラッシュしましたが、修正されました(新しいバージョンの mental ray では代わりに mrptex.so
が使用されます)。シェーダの変更:
ptex
シェーダ
miState::bary
をベースとしています。layering
シェーダで、光沢のあるコンポーネントにユーザの IBL 環境シェーダが与える影響が強くて、明るくなりすぎましたが、修正されました。機能強化
バグ修正:
scanline on
(非推奨)オプションを使用している場合に、mental ray がメモリ不足になると、クラッシュする可能性がありましたが、修正されました。"gpu gi border"
<int>
を使用すると、指定されたピクセル数でタイル レンダリングしているときに有効な間接光データを拡張できました。既定値は 0
です。シェーダの変更:
mip_matteshadow
シェーダを使用している場合、Linux および MacOSX プラットフォームでシンボルがないためにクラッシュする可能性がありましたが、修正されました。ptex
シェーダで、フェース インデックスおよび重心パラメータを使用した場合、バージョン 1 に誤ってフォールバックしていましたが、修正されました。バグ修正
"mi"
レジストリが mi_api_eval_registry()
呼び出しによって評価された場合、このレジストリのアトリビュートによって .mi
ファイルの解析がトリガされませんでした。この問題は修正されました。.mi
/rayrc
ファイルの解析は、この問題の影響を受けません。mi_shaderstate_set()/get()
関数を使用したときに発生するメモリ リークの問題が修正されました。具体的には、いくつかの OEM パッケージに、この関数を使用する状態シェーダがあります。miRENDER_DISPLAY_PROGR
レンダー モードとプログレッシブ インタラクティブ(統合フレームバッファ)レンダリングを組み合わせて使用した場合、クラッシュしましたが、修正されました。{_MI_OPENEXR_MULTI_PART}
の同義語として {_MI_REG_OPENEXR_MULTI_PART}
レジストリが追加されました。finalgather mode "force"
と組み合わせて使用した場合、輝度に差が生じる可能性がありましたが、修正されました。/usr/local/cuda/lib
を追加することによって、この問題を回避できます。imf_copy
ツールを使用して 2 GB より大きいイメージ ファイルを処理する方法が修正されました。シェーダの変更:
機能強化:
"gi gpu devices" <integer>
文字列オプションで指定される CUDA デバイス選択ビットマスクが実装されました(3.12.1.10 の説明を参照)。バグ修正:
mi_inclusive/exclusive_lightlist()
の呼び出しが行われない場合に、ライト重要度サンプリングが実質上無効になってしまう問題が修正されました。ccmesh
オブジェクトに、クラック アーティファクトが発生する可能性がありましたが、この問題が修正されました。miRENDER_DISPLAY_PROGR
レンダリング モードのビットと組み合わせて使用するとクラッシュしていましたが、この問題が修正されました。シェーダの変更:
mila_bump_flakes
用のノイズ ジェネレータが改善されました。 機能強化:
(lib)optix_prime.1.dll/so/dylib
がリリース テープに追加されました。
GPU レイ トレーシングのパフォーマンスが大幅に改善されました。
"gi gpu
devices"
を 0 に設定して CPU フォールバックが起きるようにすることもできます。フォールバックは GPU レンダリングと同一のサンプリングとレンダリングの技術を使用し、GPU レンダリングと同一に近い(モジュロ浮動小数点の精度)イメージを作成できます。"gi gpu devices"
<integer>
が追加されました。既定値の -1 は、使用可能なすべての CUDA デバイスを有効にします。値を 0 にすると、CPU レンダリングが強制されます。この値は、次期バージョン (3.12.1.11)からビットマスクとして解釈され、設定されたビットがレンダリングに使用する CUDA デバイスに対応することになります。"gi gpu cpu
threads"
が追加されました。既定値は -1
です。レンダリングのスレッド数は、mental ray のコアが使用するレンダリング スレッド数を継承します。バグ修正:
"ambient occlusion gpu filter" 0
文字列オプション)。 機能強化:
mi_query()
モードの miQ_HAIR_RADIUS
が追加されました。クエリの対象となる値は、レイの当たったポイントでのヘアの半径(浮動小数)です。 バグ修正:
object_id
フレームバッファが修正されました。シェーダの変更:
mila_diffuse_reflection
の tint
パラメータの既定値が 0.7 になりました。機能強化:
imf_disp
ツールのライブビュー モードでは、インデックスが 0 のフレームバッファではなく、一次フレームバッファが既定で表示されます。イメージ ファイルの内容が表示されたら、インデックス ゼロのフレームバッファに切り替えてください。"primary"
コマンドを使用する DISP 通信ソケット プロトコルが拡張されました。返信は、一次フレームバッファのインデックスと名前(存在する場合)を使った単一の文字列です(これに続く新規の空白行はありません)。imf_disp
ツールで、フォワード スラッシュ"/"
が、コマンド ライン スイッチ(ダッシュ、"-"
)の同義語としてではなくファイル名の一部として解釈されまます。これは、他の mental ray のツール、および他のプラットフォームの imf_disp
と一貫しています。"gpu gi xxx"
の名前が "gi gpu
xxx"
に変更されました。-finalgather_gpu S
の名前が -gi_gpu S
に変更されました。互換性を維持するため、古いものも引き続き利用できます。バグ修正:
mi_inclusive/exclusive_lightlist
の呼び出しを適用せずにライト リスト パラメータを使用するシェーダを使ったシーンでアーティファクトが発生する可能性がありましたが、この問題が修正されました。material_id
で、可視ライトの当たるときの値が修正されました(この場合はマテリアルの設定なし)。material_id
は、インデックスではなく、タグの値で埋めます。object_id
は、インデックスではなく、インスタンスのタグの値で埋めます。diagnostic.exr
ファイルに保存できません。シェーダの変更:
layering
シェーダで、ビルトインの IBL が使用されている場合にライトの強度に発生する可能性がありましたが、この問題が修正されました。機能強化:
"material_id"
または "object_id"
の場合に、タイプ タグのフレームバッファに格納されます。"irradiance
lpexpr=<LPE>"
のフレームバッファの名前に基づいてフレームバッファに保存されます。メイン(ビューティ)のカラー フレームバッファや非放射ライト パス エクスプレッションを使ったカラー フレームバッファなどの「放射系」フレームバッファと同時に放射フレームバッファを計算することはできません。{_MI_REG_SHARED_DISPLACEMENT}
レジストリの値が ccmesh
オブジェクトで無視されるようになりました。このため、共有ディスプレイスメント(ディスプレイスメント後にクラックなし)が常に適用されます。非共有ディスプレイスメントは、ポリゴン/trilist オブジェクトのモデリングでのみ使用可能です。 バグ修正:
注意: GPU GI および GPU AO の各プラグインは、GPU ドライバの更新が必要な場合があります。Windows プラットフォームの最小バージョンは 320.49 です。
機能強化:
cudartXXX.dll/so/dylib
)は不要になったため、テープから除去されました。バグ修正:
"finalgather sampling version"
が追加されました。値 2
(既定)は、バージョン 3.12.1.5 で導入された新しいサンプリング モードに対応しています。値を 1 に設定すると古いサンプリングを使用でき、これによりレンダリング イメージを mental ray の以前のバージョンと同一にできます。シェーダの変更:
mila_material
シェーダで、バンプ法線に接続するために bump
パラメータが追加されました。引数のレイアウトが変わり、宣言ファイルと以前のバージョンの layering.so/.dll
とは互いに互換性がないことにご注意ください。mrptex.so/dylib
)および Alembic (abcimport.so/dylib
)シェーダの内部シンボルを削除しました。機能強化:
miRENDER_DISPLAY_PROGR
レンダリング モードのビットが追加されました。このビットがプログレッシブ レンダリングに設定されている場合、mental ray は、ファイナルギャザーの事前計算のライブビューと同様の希薄なイメージをペイントすることにより、ライブビュー表示を開始します。ユーザのイメージ リファインの手順が、ファイナルギャザーを有効または無効にした場合と同様になります。
初期プレビュー パスの数は、"progressive passes"
文字列オプションで指定できます。既定値は 3 です。
.mi
ファイルをエコーする場合、文字列オプションとフレームバッファ アトリビュートはアルファベット順にエコーします。mib_lookup_background
シェーダのバックプレートのサポートが追加されました。OEM シェーダのサポートが強化されました。バグ修正:
シェーダの変更:
layering
シェーダで、ノイズ関数が改善されました。機能強化:
Iray を使用するコンピュータでは、ドライバの更新が必要になる場合があります。Iray レンダリング モードに対し、CUDA ランタイム ライブラリ(cudartXXX.dll/so/dylib
)が不要になりました。ただし、それらは GPU AO/GPU GI プラグインの Optix ベースのコンポーネントではまだ使用されています。
"gpu
gi"
で使用できるようになりました。使用可能な値は次のとおりです。
"on"/on
: GPU アクセラレーションが有効になります。拡散パスは GPU で計算され、スペキュラ サブパスは CPU 上で計算されます。CPU でのレンダリングに比べるとパフォーマンスの向上は中程度ですが、レンダリング イメージは高品質になります。"diffuse"
: GPU アクセラレーションが有効になり、拡散パスのみが計算されます。パフォーマンスが劇的に向上しますが、一部のシーンが暗くなったり、スペキュラ コンポーネントを持つライト パスから一部のイルミネーションが欠落したりする場合があります。"off"
GPU アクセラレーションは無効になります。-finalgather on
を -fin
on
で指定することができます。-unified_sampling_subfilter on/off
が追加されました。これで、バージョン 3.12.1.0 で導入された新しい統一サンプリング スキームを有効/無効にすることができます。このコマンド ライン パーサの改善とともに、引き続き -unified
コマンド ライン オプションのショートカットを使用することも可能です。バグ修正:
"finalgather precomp legacy"
off
文字列オプション)は影響を受けません。miImg_file
構造で 32 ビットの整数を使用してディスク上のイメージ ファイルのサイズを管理していました。それが今回、4GB より大きなイメージも使用できるように、64 ビットに拡張されました。バイナリ互換のために、冗長フィールド filesize0
が導入されました。これにより、4 GB より小さなイメージ ファイルで動作する従来のシェーダでも再コンパイルなしで使用できます。シェーダの変更:
バグ修正:
機能強化:
アプリケーションは、新しい mi_rc_progressive_set_callback()
関数でコールバックを登録することができます。
typedef miBoolean (*miRc_progressive_callback) ( void *data, /* callback data */ miUint subframe, /* subframe count */ miUint what); /* event type */ miBoolean mi_rc_progressive_set_callback( miRc_progressive_callback callback, void *callback_data);登録されている場合は、コールバックは次のように呼び出されます。
what
パラメータの値は MI_RC_PROGRESSIVE_FG_PRECOMP_PASS_FINISHED
です。サブフレーム値は、プリコンポジット パスの連続番号(1、2、3)です。what
パラメータの値は MI_RC_PROGRESSIVE_SUBFRAME_FINISHED
です。サブフレーム数は mi_rc_progressive_get_update_count()
関数によって返されるものと同じです。what
パラメータの MI_RC_PROGRESSIVE_RENDER_FINISHED
値で呼び出されます。そのコールバックが呼び出される前に、統合アプリケーションがシーンに mi_api_
の変更を適用しないことが重要です。これに失敗すると、まだ実行中の mental ray シェーダが存在しないデータベース要素へアクセスすることになり、クラッシュが発生することがあります。バグ修正:
mi_rc_progressive_set_buffers()
を呼び出した場合にプログレッシブ インタラクティブ レンダリングでクラッシュが発生する問題が修正されました。miState::bary
座標系が [0,1]
の間隔になっていない場合の精度の問題が修正されました。apply
contour
フラグのエコーが修正されました。シェーダの変更:
layering
で、apply
フラグが修正されました。光沢のある反射と屈折に対して roughness
パラメータの既定値が調整されました。base_phen.mi
が復元されました。機能強化:
バグ修正:
mi_geoshader_tessellate()
関数がプレースホルダ オブジェクト上に呼び出された場合に、データベースの破損およびクラッシュが発生する可能性がありましたが、この問題が修正されました。特に、この関数は mip_binaryproxy
ジオメトリ シェーダによって使用されます。機能強化:
"unified sampling
subfilter" on
、またはコマンド ラインオプション -unified
subfilter
で有効にできます。新しいフィルタリングでは、より多くのメモリが必要です。これは、X 軸および Y 軸のフィルタ サポート サイズ、タイル内のピクセル数、フィルタされたフレームバッファの数、実行中のレンダリング スレッドの数に比例)。典型的なシーン(64x64 タイル サイズ、8 CPU スレッド、5x5 フィルタ サイズ、単一カラーのフレームバッファ)では、およそのメモリ オーバーヘッドは 20 MB です。
現在のバージョンでは、最小サンプル レートがピクセル当たり 1 サンプル未満である場合、新しいスキームはサポートされません。この場合、フィルタリングは、古いスキームに切り替えられます。
バグ修正:
シェーダの変更:
mia_physicalsun
シェーダで、mode
が 0 ではないときに発生するタイル アーティファクトの問題が修正されました。layering
シェーダで、レイヤ スコープの範囲外(スウォッチのレンダリングなど)で mila_layer
/mila_mix
が使用された場合にクラッシュする可能性がありましたが、この問題が修正されました。致命的な呼び出しをエラーに置き換えました。basehair
シェーダで、ランダム シードの初期化が修正されました。レイの当たらない透明部分のアルファ値が修正されました。機能強化:
文字列オプション "finalgather gpu" on
またはコマンド ライン オプション -finalgather_gpu on
を使用すると高速化を有効にできます。現在の実装では、拡散バウンスのみがサポートされています。廃止された finalgather filter
オプションは、このモードでは無効になっています(0 に設定)。
バグ修正:
シェーダの変更:
architectural
および MILA layering
シェーダで、反射のタイルにアーティファクトが発生する可能性がありましたが、この問題が修正されました。layering
シェーダで、メッセージのレポートが改善されました。layering
シェーダで、メモリ リークの問題が修正されました。mia_photometric_light
シェーダで、正規直交ではない(特にスケール)トランスフォームを使用したライト インスタンスの光の強度の問題が修正されました。abcimport
シェーダで、モーション トランスフォーム行列の補間が修正されました。機能強化:
バグ修正:
-message <module list> time
コマンド ライン オプション)を使用した場合に発生するクラッシュの問題が修正されました。 互換性に影響する変更点
mi_rc_progressive_set_camera()
および mi_rc_progressive_refine()
が、プログレッシブ インタラクティブ統合インタフェースから削除されました。 mi_rc_progressive_update_buffer_first_subframe()
関数がプログレッシブ統合インタフェースから削除されました。この関数は、既存の raylib 統合では利用されていませんでした。シェーダの変更:
abcimport
シェーダので、.abc ファイルにモーション インスタンス トランスフォームのサポートが追加されました。layering
シェーダで、強力なバンプ マッピングの場合に結果が NaN になる可能性がありましたが、この問題が修正されました。バグ修正:
ccmesh
SDS オブジェクトで、ptex
シェーダを使用した場合にクラッシュが発生する可能性がありましたが、この問題が修正されました。mi_raylib_exit()
が呼び出されていない場合に、raylib プラグインのアンロードでクラッシュが発生する可能性がありましたが、この問題が修正されました。mi_mi_parse_assembly()
関数がジオメトリ シェーダのインタフェースから使用できませんでしたが、この問題が修正されました。この関数は、アセンブリの一部として .mi
ファイルを解析するために、アセンブリ作成コールバックから使用される場合があります。mi_lib_registry_begin()/add()
が除去されました。代わりに、同等の mi_api_*
関数を使用する必要があります。シェーダの変更:
abcimport
シェーダに、1 秒あたりのフレーム数を指定するための "fps"
パラメータが追加されました。既定値は 24 です。モーションのシーンに対してモーション ベクトル値が作成される問題が修正されました。機能強化:
mi_rc_progressive_update_single_buffer(size_t which)
)。複数のフレームバッファを使用するシーンでは、すべてのフレームバッファを更新するよりも、現在表示されているフレームバッファにこの関数を呼び出すことのほうが効率的です。"light
importance sampling samples" <int> [<int>]
が追加されました。このオプションを設定すると、ライト重要度サンプリング メカニズムで使用されるライトに対して、ライトあたりのサンプリング レート(高/低の値)が上書きされます。2 番目の値が省略された場合は、既定値 1 が使用されます。コマンド ラインにも、これに対応するオプション("-light_is_samples <int> [<int>]"
)が追加されました。"light importance sampling precomp"
の名前が "light importance sampling precomputed"
に変更されました。下位互換性のために、古いオプションもまだサポートされています。バグ修正:
mi_api_int_strdup
(mi_api_strdup
マクロによって参照される)が利用できなかった問題が修正されました。シェーダの変更:
abcimport
シェーダが Alembic 1.5 にアップグレードされました(Ogawa サポートの追加)。 "mila compatibility mode"
が追加されました。値が 1 の場合、mental ray 3.11 のシェーディング モデルを使用して計算されます。 physical_light
シェーダで、目に見えるレイの当たった場所の色の強度が修正されました。dielectric_material
シェーダで、統一サンプリングを使用している場合に屈折アーティファクトが発生する可能性がありましたが、この問題が修正されました。機能強化:
新しい関数 mi_rc_progressive_set_buffers()
が追加され、これにより複数の出力フレームバッファを指定できます。
バグ修正:
mi_raylib_exit()
が呼び出されていない場合に raylib プラグインをアンロードするとクラッシュが発生する可能性がありましたが、この問題が修正されました。.mi
ファイルから行うインスタンス モーション トランスフォームでのパーサの問題が修正されました。シェーダの変更:
機能強化:
バグ修正:
ccmesh
で、フェースの境界上にクラックが発生する可能性がありましたが、この問題が修正されました。シェーダの変更:
ptex
シェーダで、レイ タイプの警告が表示されない可能性があります。機能強化:
state->pri
のプリミティブ タイプを直接クエリするための miQ_PRI_TYPE
クエリ コードが追加されました。バグ修正:
mi_point/vector/normal_to/from_camera()
関数が正しいトランスフォームに使用されていなかったため、これらの関数を使用したシェーダでアーティファクトが発生していました。miSTAGE_TILE
に設定されていませんでした。この問題は解決されました。シェーダの変更:
mia_portal_light
シェーダおよび mia_photometric_light
シェーダで、フォトン放出が中止される可能性がありましたが、この問題が修正されました。機能強化:
.mi
が拡張されました。バグ修正:
typedef
ステートメントの重複する MetaSL ファイルを解釈したときにクラッシュする問題が修正されました。シェーダの変更:
.mi
ファイルの名前がそれぞれ ptex.dll
/ptex.mi
から mrptex.dll
/mrptex.mi
に変更されました。これは DLL 名の競合を回避するためです。古いシーンとの互換性を維持するために、ptex.mi
ファイルが mrptex.mi
に含まれるようになりました。mental ray のカーネルのローダーは、tex.dllptex.dll
をロードする試みは認識するものの、それではなく mrptex.dll
をロードしようとします。mrptex.dll
が見つからない場合、ptex.dll
がロードされます。abcimport
シェーダで、不正なモーション トランスフォームが発生する可能性がありましたが、この問題が修正されました。mila_bump_flakes
シェーダで、OEM アプリケーションの入力/出力パラメータ名の衝突を避けるために、"weight"
出力の名前が "visibility"
に変更されました。機能強化:
バグ修正:
""
)パーツ名を使用してください。これにより、mental ray 3.11 以前のバージョンでレンダリングされたイメージとレイヤの順番が確実に一致します。imf_disp
ツールにおいて、レンダリング フレームバッファのうち 1 つでもその名前が 32 文字より長いとクラッシュが発生する可能性がありましたが、この問題が修正されました。シェーダの変更:
バグ修正:
シェーダの変更:
thin_walled
パラメータが個別のレイヤから mila_material
シェーダ自体に移動しました。backface_shader
パラメータが追加されました。新機能:
この新機能は、mental ray 3.11で導入されたライトの重要度によるサンプリングの上に構築されたものです。複数のライトにわたって重要度に基づいたサンプルの分配ができます。これにより、ノイズが格段に減り、大量のライトを使ったシーンでのレンダリング時間が短縮できます。ライト サンプルの分配は、カーネルに実装されています。シェーダのコード変更は不要です。
ライト重要度サンプリングは、文字列オプション "light importance
sampling"
を使って有効にします。指定可能な値は次のとおりです。
on
、"on"
: シーン内のすべてのエリア ライトに対してライト重要度サンプリングが有効になります。"all"
: シーン内のすべてのエリア ライトとポイント/スポット ライトに対してライト重要度サンプリングが有効になります。これは、大量のポイント ライトを使用したシーンで役に立ちます。ただし、ポイント ライトが 1 つまたは数個しかないシーンの場合、値を「オン」にして使用することをお勧めします。"local"
: 重要度によるサンプリングが各ライトに個別に適用されます。ライト間の相互バランスは調整されません。これは、mental ray 3.11 でのライトの重要性によるサンプリングに対応しています。off
、 "off"
(既定): ライト重要度サンプリングが無効になります。ユーザ定義のライトが、すべてのモードにおいて、重要性によるサンプリングの仕組みから除外されます。
文字列オプション "light importance sampling quality"
は、引数として 1 つまたは複数の浮動小数点数を取り、それらを乗数として使用してそのライト一式に対するサンプル総数を決めます。値が 2 つある場合、最初の値はプライマリ レイの質を、2 番目の値はセカンダリ レイの質を示します。値が 1 つしかない場合、プライマリ レイとセカンダリ レイの両方に使用されます。既定値は 1.0
です。つまり、ライトの重要度によるサンプリングを無効にした場合と同じサンプル数になりますが、バランスの調整は行われます。このオプションのセマンティックが mental ray 3.11 以降に変更されていますので、ご注意ください。
文字列オプション "light importance sampling precomp"
on/off
(既定値は off
)は、ライトの事前計算モードを有効にします。有効にすると、コアはライト シェーダを実行せずに、事前計算されたライト放出値が使用されます。このモードでは、光が等方性である(すべての方向に同じ強度の光が放出される)とみなしています。前計算の段階で、カーネルがライトのいくつかが等方性でないことを検知すると、検知されたライトが事前計算から除外され、ライト シェーダの呼び出しによって処理されます。ただし、ライトの重要度によるサンプリングそれ自体は、そのようなライトに適用されたままになります。テクスチャを提供したライトの場合、事前計算のオプションを選択することで、イルミネーションの細かい部分が多少犠牲になるものの、短い時間でスムーズなイメージが生成されます。
文字列オプション "light importance sampling resolution"
(既定値は 1.0
)は、エリア ライトの事前サンプリングをコントロールするために使用されます。 これを変更するのは通常、それらに取り付けられた高分散 HDR テクスチャを使ったライトの場合のみです。オプションの値を高くすると、事前サンプリングが細かく行われます。
コマンドライン オプション -light_is
on/off/all/local
、-light_is_quality F [F]
、および light_is_precomp on/off
が、対応するシーン文字列オプションを上書きするために使用できます。
このバージョンの既知の制限事項: ライトの移動はサポートされていません。プロファイルが IES のライトでは、特に「ブラインド スポット」がある場合は、事前サンプリングによって光の強度の見積もりが間違う可能性があり、これはイルミネーション アーティファクトの発生または収束速度の低下につながります。
機能強化:
既定で、mental ray は複数のレイヤを個別のパーチに書き込むようになりました。規則により、OpenEXR、パーツの名前は mental ray のフレームバッファの名前と一致します。内部的には、IMF ツールがチャネル/レイヤ名の前に OpenEXR パーツの名前を付加しています(さらに、パーツ名が空でない場合は「.」を付加)。
新しいレジストリ "{_MI_OPENEXR_MULTI_PART}"
(既定: "on"
)が追加されました。これで、複数パーツ対単一パーツの複数レイヤ出力をコントロールできます。レジストリの値が "off"
に設定されている場合、mental ray は単一パートの複数レイヤのイメージ ファイルを作成します。これは、OpenEXR 1.7 と互換があります(他の OpenEXR 2.0 の新機能が使用される場合を除く)。
注意: 複数パーツの OpenEXR ファイルは、OpenEXR 1.7 以前のライブラリを基にしたツールとは下位互換性がありません。パーツの数が 1 に等しい場合を除き、このようなツールは、イメージ ファイルを開こうとしたときにエラーをレポートします。これは特に、mental ray 3.11、および mental ray 3.11 以前のバージョン用の imf ツールに適用されます。
“iray
interactive mode” <bool>
で有効にする)。このモードは、OEM アプリケーションでインタラクティブ レンダリングのときに使用することをお勧めします。-message all default,time
-- コマンドライン オプション)。"tag"
、miIMG_TYPE_TAG
)をネイティブとして(変換せずに) OpenEXR ファイル内に保存するサポートが追加されました。バグ修正:
scanline on
モードが統一サンプリングと組み合わせて使用されている場合に大きなシーンで起きるパフォーマンスの問題が修正されました。シェーダの変更:
.abc
ファイルからの速度プロパティの読み込みに関するサポートが追加されました。layering
(MILA)シェーダのパッケージに対し本格的なリファクタリングを行いました。OpenEXR は Industrial Light & Magic 社が設計した柔軟性の高いイメージフォーマットで、mental ray 3.3.0.389 以降のバージョンに統合されています。OpenEXR には、mental ray の OpenEXR 部分にのみ適用される以下の著作権情報が付属しています。
Copyright © 2004, Industrial Light & Magic, a division of Lucasfilm Entertainment Company Ltd. Portions contributed and copyright held by others as indicated. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
OpenEXR の ``Pxr24'' 圧縮には、mental ray の OpenEXR 部分にのみ適用される以下の著作権情報が付属しています。
Copyright © 2004, Pixar Animation Studios
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
マルチビュー イメージ、Deep Compositing、およびその他の OpenEXR ファイルには、mental ray の OpenEXR 部分にのみ適用される以下の著作権情報が付属しています。
Copyright © 2007, Weta Digital Ltd
Copyright © 2012, Weta Digital Ltd
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
OpenEXR の「DWA」圧縮には、mental ray の OpenEXR 部分にのみ適用される以下の著作権情報が付属しています。
Copyright (c) 2009-2014 DreamWorks Animation LLC.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Ptex は Walt Disney Animation Studios が設計したフェースごとのテクスチャ マッピング用のファイル フォーマットおよびライブラリで、mental ray 3.10.0.1 以降のバージョンに統合されています。 Ptex には、mental ray の Ptex 部分にのみ適用される以下の著作権情報が付属しています。
PTEX SOFTWARE Copyright 2009 Disney Enterprises, Inc. All rights reserved
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Disclaimer: THIS SOFTWARE IS PROVIDED BY WALT DISNEY PICTURES AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NONINFRINGEMENT AND TITLE ARE DISCLAIMED. IN NO EVENT SHALL WALT DISNEY PICTURES, THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND BASED ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Alembic は、Lucasfilm 社と Sony Imageworks 社によって開発されたコンピュータ グラフィックス交換フォーマットです。 mental ray 3.10 では、ジオメトリ シェーダ形式でのサポートが提供されます。 Alembic には、mental ray の Alembic 部分にのみ適用される以下の著作権情報が付属しています。
TM & © 2010-2011 Lucasfilm Entertainment Company Ltd. or Lucasfilm Ltd. All rights reserved.
Industrial Light & Magic, ILM and the Bulb and Gear design logo are all registered trademarks or service marks of Lucasfilm Ltd.
© 2010-2011 Sony Pictures Imageworks Inc. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
ALEMBIC ATTACHMENT A — REQUIRED NOTICES FOR DISTRIBUTION
The Alembic Software is distributed along with certain third party components licensed under various open source software licenses ("Open Source Components"). In addition to the warranty disclaimers contained in the open source licenses found below, Industrial Light & Magic, a division of Lucasfilm Entertainment Company Ltd. ("ILM") makes the following disclaimers regarding the Open Source Components on behalf of itself, the copyright holders, contributors, and licensors of such Open
ソース コンポーネント:
TO THE FULLEST EXTENT PERMITTED UNDER APPLICABLE LAW, THE OPEN SOURCE COMPONENTS ARE PROVIDED BY THE COPYRIGHT HOLDERS, CONTRIBUTORS, LICENSORS, AND ILM "AS IS" AND ANY REPRESENTATIONS OR WARRANTIES OF ANY KIND, WHETHER ORAL OR WRITTEN, WHETHER EXPRESS, IMPLIED, OR ARISING BY STATUTE, CUSTOM, COURSE OF DEALING, OR TRADE USAGE, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT, ARE DISCLAIMED. IN NO EVENT WILL THE COPYRIGHT OWNER, CONTRIBUTORS, LICENSORS, OR ILM AND/OR ITS AFFILIATES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THE OPEN SOURCE COMPONENTS, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Boost C++ ライブラリ。
Boost Software License – Version 1.0 August 17th, 2003 Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute, and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the Software is furnished to do so, all subject to the following:
The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all derivative works of the Software, unless such copies or derivative works are solely in the form of machine-executable object code generated by a source language processor.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
MurmurHash3
MIT ライセンス(MIT)
Copyright (c) <year> <copyright holders>
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Copyright Information
© 1986, 2015 NVIDIA ARC GmbH. All rights reserved.
This document is protected under copyright law. The contents of this document may not be translated, copied or duplicated in any form, in whole or in part, without the express written permission of NVIDIA ARC GmbH.
The information contained in this document is subject to change without notice. NVIDIA ARC GmbH and its employees shall not be responsible for incidental or consequential damages resulting from the use of this material or liable for technical or editorial omissions made herein.
NVIDIA and the NVIDIA logo are registered trademarks of NVIDIA Corporation. imatter, indeX, Iray, MDL, mental images, mental ray, and RealityServer are are trademarks and/or registered trademarks of NVIDIA ARC GmbH. Other product names mentioned in this document may be trademarks or registered trademarks of their respective companies and are hereby acknowledged.