- スタンダードサーフェス:新しい
standard_surface
シェーダが追加されました。直感的で省エネルギー的なパラメータ、通常のメタルフレネル、薄いサーフェスサポートなどを備えたセカンダリスペキュラコートが追加されました。standard
シェーダはまだ利用可能ですが、推奨されないと考えます。(#5372)
- スタンダードヘア:
standard_hair
より正確な鏡面反射および透過性散乱、汚れた髪のためのより良い拡散散乱、メラニンのランダム化、および単純で直感的なパラメータを備えた新しい物理的 シェーダが追加されました。古いhair
シェーダは引き続き使用できますが、推奨されなくなりました。(#5370、#5851)
- スタンダードボリューム:新しい
standard_volume
シェーダが追加され、さまざまなボリュームのレンダリングに使用できます。シェーダは、デフォルトで省エネルギーの方法で密度、散乱色、透明度を独立して制御します。火災は、温度によって駆動される黒体放射を使用してレンダリングすることができます。ディスプレースメントを使用して、ボリュームに詳細を追加することができます。これdensity
は削除されたボリュームシェーダに取って代わるもの です。(#5090)
- シェーダのミキシング:サーフェス、ヘア、ボリュームのシェーダがカラーではなくクロージャを出力するようになりました。これにより、新しい
mix_shader
ノードを使用して、すべての軽いAOVを含む2つのシェーダをブレンドまたは追加することで、シェーダを効率的に混在させることができ ます。共通のシェーダから採用され、バニラ色の混合シェーダもありmix_rgba
ます。線スイッチシェーダは、二つに分割されているray_switch_shader
とray_switch_rgba
、それぞれのテクスチャの色を切り替えるためのシェーダと1の間の切り替えのために、ノード。(#5494、#5495)
- シェーダをバンプ:
bump2d
そしてbump3d
今、出力新にリンクすることができ法線ベクトルnormal
のパラメータambocc
、lambert
、standard_surface
およびutility
シェーダ。これらのバンプシェイダーは、もはやパススルーシェーダーとして機能しません。@before
バンプシェーダの構文は、同様に削除されました。(#5599) - ノイズシェーダ:この
noise.coord_space
パラメータにはuv
、オブジェクトのローカルUV座標を使用したテクスチャの列挙値が追加されました 。これは、他のすべての座標空間と同様に、3Dノイズではなく、より高速な2DノイズAPIを呼び出すことに注意してください。さらに、別のシェーダを新しいP
パラメータにリンクすることで、任意の座標空間を手動で指定することができ ます。シェーダは、 カラーチャンネルごとに別々のノイズ信号を使用して、 と 、と、とのscalar
間をブレンドすることによって、モードで カラーを出力できるようになりました 。新しい パラメータを使用すると、時間の経過と共にノイズを滑らかに変化させることができます。(#5195、#5235、#5247)color1
color2
vector
time
- ユーティリティシェーダ:
utility
シェーダに新しいmetal
シェーディングモードroughness
が追加され、プラスチックモードとメタルモードに影響を与えるコントロールが追加されました。(#5018) - 従来の標準シェーダ:(推奨されていない)
standard
シェーダのBeckmannスペキュラディストリビューションは、GGX で既に使用されていたように、より正確なマイクロフェースごとのフレネルを使用するようになりました。sss_profile
経験的なBSSRDFが常に使用されるようになりました。(#3285) - レガシーヘアシェーダ:
uparam
及びvparam
(非推奨)から削除されましたhair
シェーダ。代わりに、カーブはUVセットをサポートするようになりました。このシェーダはライトパス式を完全にサポートしていません。(#5646) - Env vars in
image
filename:image
ノードファイル名フィールドは、フォームの環境変数を 展開[var]
するだけでなく、すでにテクスチャ検索パスに入っているときに展開します。(#5671) - 新しいタグ
image
名:image
ノード名フィールドは、現在受け入れ<utile>
と<vtile>
タグ。それらは<utile:2>
タイル番号に追加するオプションの整数オフセットをとります 。例えば1.4のU座標から2のオフセットがタイル番号3を出力する(#5753) - 名前が変更さ
image
れたタイルパラメータの名前が変更されまし た:image
テクスチャリングノード 上にignore_missing_tiles
名前が変更されignore_missing_textures
、missing_tile_color
名前が変更されましたmissing_texture_color
。欠けているテクスチャの処理は、非タグ付きテクスチャに拡張されました。不足しているテクスチャを無視して修正することは推奨されます(レンダリングはエラーをログに出力し、そのまま残すと中断しますoptions.abort_on_error
)。しかし、場合によっては、UDIMやその他のタイルテクスチャが欠落していることは意図的な選択かもしれません。これらのオプションは、画像ノードごとの制御を可能にします。(#5753) - ビルトインのユーティリティ共通シェーダ:MtoA、C4DtoA、HtoA、KtoAの少なくとも一部で出荷されている一般的なユーティリティシェーダがコアに統合されています。いくつかのセットからシェーダ追加されていない、など
print
、linearize
、ln
およびマトリックスシェーダ、およびいくつかのパラメータのデフォルト値が改善され、そして他のものは最適化されているが、それらはほぼ同じです。(#5714、#5749) - カラージッタシェーダ:新しい
color_jitter
シェーダを使用して、指定されたゲイン、色相、および彩度の範囲内でランダムな色を生成できます。色は、顔、オブジェクト、手順インスタンスまたはユーザーデータ、またはその組み合わせごとにランダム化することができます。(#5793) - Triplanar Shader:新しい
triplanar
シェーダを使用して、UV座標を必要とせずにイメージテクスチャをすばやくマップできます。テクスチャは6面からオブジェクトに投影され、継ぎ目で滑らかにブレンドされます。(#5770) - 専用のノーマルおよびベクターマップシェーダ:共通のシェーダに
space_transform
は、接線空間の法線マップまたはベクトルマップを処理するための特別な機能があり、削除されています。代わりに、2つの新しいシェーダがあり、normal_map
それぞれvector_map
、通常の法線マップとベクトル変位マップデータを取り、後でシェーディングネットワークで典型的な使用のためにそれらを準備します。これは、バンプシェイダーの使用方法と同様です。(#5714) osl
シェーダ:.oslファイルを.osoにコンパイルしてシェーダパスに配置することをお勧めしますが、OSLシェーダコードはosl
ノード経由で直接参照することも 、文字列パラメータとして設定することもできます。シェーダノードは、param_
それぞれの前にプレフィックスが付いたOSLコードのすべてのパラメータを生成し ます。(#5471)- スカイドームライトカメラの視認性:新規
camera
およびtransmission
パラメータは、カメラおよび鏡面反射の透過光線に寄与する光の量を設定するので、そのような目的で別のバックグラウンドシェーダを使用する必要はありません。新しいshader
パラメータは、カラーと透明度を制御するためにクロージャシェーダをリンクするために使用されます。Skydomeライトは、より良いサンプリングで同じ機能を提供するため、バックグラウンドシェーダよりも優先されるようになりました。(#5744)
サンプリング
- ディザサンプリング:ほとんどのサンプラー(ソフトシャドウ、間接照明、被写界深度など)はディザサンプリングを利用して、低サンプルレートでのノイズの視覚的分布を改善します。(#5047、#5412)
- クワッドライト:サンプリングが改善され、表面照明のノイズが低減されました。以前のサンプラーとの比較のため、
options.enable_new_quad_light_sampler
無効にすることができます。(#4961、#5780) - シリンダーライト:サンプリングが改善され、シリンダーライトの音量やシリンダーライトが他のサーフェスの近くにある場合のノイズを大幅に削減しました。(#5347)
- ディスクライト:新しいディスクサンプリングアルゴリズムがディスクライト用に実装されています。これは、ディスクの表面付近、特にボリューム内にシェーディングポイントがある場合、レンダリング品質を大幅に向上させることができます。(#5316、#5856、#5862)
- ロシアルーレット:平均的に、毛髪、伝達、および体積散乱のより良い性能。(♯4052、♯5789、♯5690)
- モーションブラーの時間サンプル:レンダリングモーションブラーは、デフォルトではない
deform_time_samples
または を使用すると高速になりましたtransform_time_samples
。(#5336) - 腐食性ノイズ低減:腐食性物質からのノイズを低減するための新しい方法が追加されました。特に、GGXマイクロファセットスペキュラからのノイズは低減される。
options.indirect_specular_blur
より正確なノイズの多いレンダリング間のトレードオフを0.0に、よりぼやけたバイアスのあるレンダリングを、高い値でノイズを減らして制御します。(#4498) - より速い不透明度マッピング:不透明度マップされた透明なサーフェス(ツリーリーフなど)は、より効率的にサンプリングされ、特にスレッドが多いマシンでは最大20%高速にレンダリングできます。(#4704)
OSL、クロージャおよびAOV
- オープンシェーディング言語:プロダクションGIレンダラの高度なシェーディング言語であるOpen Shading Languageでシェーダを書くことができるようになりました。シェーダ検索パスに配置されたOSLシェーダは、Arnoldシェーダノードとして自動的に登録され、パラメータはArnoldパラメータに変換されます。ロードされると、C ++シェーダとまったく同じ方法で、インスペクション、インスタンス化、リンクが可能です。OSLシェーダは、クロージャを使用してテクスチャパターンとマテリアルを実装するために使用できます。詳細については、 OSLのマニュアル を参照してください。(#4357、#5400、#5487、#5526、#5471)
- クロージャ:新しいクロージャパラメータタイプが追加されました。シェーダは最終カラーの代わりに出力できます。BSDF、BSSRDF、エミッション、マット、透明度、ボリュームクロージャがあります。 これらの使用方法の詳細については、APIのドキュメントと例を参照してください 。クロージャパラメータにカラーをリンクすると、自動的にそのカラーでエミッションクロージャが作成されます。ただし、クロージャパラメータは、シェーダの評価後にインテグレータがライトを計算するだけなので、リンクすることも、カラーに変換することもできません。(#4793)
- ライトグループAOVs:サーフェスシェーダはライトグループAOVをネイティブにサポートしていましたが、以前はこの機能はボリュームシェーディングでしか使用できませんでした。(#4305)
- ライトパス式:ライトパス式は、照明コンポーネントを別々のAOVに書き込むために使用されます。もはや個々のシェーダが直接/間接ライトや様々なレイヤーのAOVを定義する必要はなく、各AOVに書き込まれるシーン内のすべての散乱イベントと放出イベントのサブセットを定義するために正規表現構文が使用されます。一般的なケースではAOVが内蔵されています。詳細については、 LPEのマニュアル を参照してください。(#5491、#5581、#5582)
カラーマネジメント
- カラーマネージャ:カスタム
color_manager
ノードを実装して、入力と出力のカラー変換を処理できるようになりました。カラーマネージャは、SynColorやOpenColorIOに似たパッケージです。何色マネージャが指定されていない場合はoptions.color_manager
、アーノルドが使用するビルトインサポートするものlinear
(無変換)、sRGB
およびRec709
(非線形)(#5262、#5527) - OpenColorIO:OpenColorIO構成で定義された色空間は、組み込み
color_manager_ocio
ノードを介して.assファイルで使用できるようになりました 。(#5598) - リニアカラースペース:ハーフまたはフロートをサポートする出力ドライバのカラーマネージャで、任意のリニアカラースペースを指定できるようになりました。(#5552)
- カラースペースメタデータ:OpenEXRファイルには、カラーマネージャタイプ(
arnold/color_manager
)、色空間名(arnold/color_space
)、色度(ColorSpace/Red Primary
など)がわかっている追加のメタデータフィールドがあります。(#5263) - Rendering color space: using specific implementations of a color manager it is now possible to specify Arnold’s rendering color space. Arnold’s default rendering color space is
Linear sRGB
. For other color spaces Arnold will try to auto-detect chromaticities and illuminant, and will expect all data (textures and .ass file parameters) in that same color space. An important note is that different rendering color spaces will yield different render results when compared with the defaultsRGB linear
. These color and intensity shifts will be more visible with transmission, but will also affect illumination and subsurface. Because of this, shader adjustments and texturing should happen in the same color space as the rendering one. (#5262, #5527, #5819) - 色空間に依存しないスペクトル効果:屈折分散のように、スペクトルの積分を実行、効果
thin_film
、blackbody
およびphysical_sky
アカウントにレンダリング色空間を取り、異なる光源と、より広い色域スペース、またはスペースのために正確な結果を提供し、今。改善された色計算のために、より高い彩度のようなこれらの効果にはいくつかの違いがあるかもしれません。(#5819、#5835、#5836、#5837) - 使用可能な色空間のリスト:使用 可能な色空間の
kick -lcs
リストを印刷します。(#5832)
ネームスペース
- ネームスペース:アーノルドシーンは手続きの階層構造で整理されていますが、これまでノードが異なる手続きで存在していた場合に名前の競合が発生する可能性がありました。各手続きには次の規則を持つ独自の命名スコープが追加されました:(#2712)
- 手続き型.assファイルでは、ノード名は現在のスコープ内で最初に検索されます。見つからない場合は、シーンルートに達するまで、親スコープ内で検索されます。
- あるいは、シーンルートから始まるノードをルックアップするために絶対パスを指定することもできます
"^root_node^proc1^proc2^node_name"
。 AiNodeLookUpByName()
parent
再帰的ルックアップが始まるスコープを指定 するパラメータを持つようになりました 。- 手続きのプラグインが使用してノードを作成
AiNode()
し、AiNodeClone()
今設定しなければならないparent
ノードは、現在の手続きのノードの子であることを示すために、パラメータを。
- プロシージャー・ノードの上書き:aの内部
procedural
のノードは、override_nodes
パラメーターを使用して他のノードに置き換えることができ ます。これは、例えば、既存の.ass手続き型のシェーダを置き換えるために使用することができる。このパラメータを有効にすると、プロシージャの親スコープの直下にあるノードがプロシージャ内の同じ名前のノードを置き換えます。(#2712)
その他の機能拡張
- OpenVDB:OpenVDB 4.0を使用してArnoldコアで.vdbファイルのレンダリングがサポートされるようになりました。
volume
ノードは、今持っているfilename
.vdbファイルを受け付けパラメータを。volume_implicit
ノードは暗黙面としてOpenVDBボリュームをレンダリングするために使用されてもよいです。両方のノードのパラメータは、以前のOpenVDBプラグインと同じですが、 ベクタに置き換えられたベロシティシャッタの開始点と終了点と、他のシェイプmotion_start
とmotion_end
共有されるパラメータ を 除きます。ベロシティ・グリッドは、名前付きv
、vel
またはvelocity
モーションブラーシーンで有効になっている場合、自動的に検出され、使用されています。options.texture_searchpath
相対ファイルパスを解決するために使用されます。(#4844、#5801、#5814) - OpenVDBの起動時間の改善:多くのスレッドでレンダリングしているLinuxでは、大規模なOpenVDBデータセットはレンダリングの開始時に大幅な速度低下を引き起こす可能性があります。起動時間が大幅に改善され、特にIPRのような低AAサンプルのバケットレンダリングが速くなりました。(#5816)
- より速い暗示的なサーフェス:暗黙のサーフェスは
implicit
、ジオメトリプリミティブを使用すると、特に均一なソルバーを使用すると、より高速にレンダリングされます。均一ソルバーでは、大幅に改善された品質を達成するために必要なソルバーサンプルが少なくて済みます。また、レベルセットソルバーも少し速くなりました。(#3221、#5472、#2097) - より速いカーブ:
curves
幾何学プリミティブは現在、約5-15%速くレンダリングされます。さらに、高密度ヘア塊をmin_pixel_width
レンダリングする場合、サンプリングノイズがわずかに増加することを犠牲にして、最大2倍高速化され、より正確なシャドーイングを実現します。(#4417、#5725、#5806、#5684、#5806) - オブジェクトの初期化の高速化:モーションブラーされたオブジェクトの初期化時間は、約700ns短縮されました。1Mのモーションブラーされたオブジェクトを持つシーンでは、約0.7秒の節減になります。(#5379)
- VRカメラ:
vr_camera
様々なフォーマットと投影でバーチャルリアリティに適したステレオビューを生成する新しい ノードが利用可能になりました。(#4906) - クワッドと光丸みをスポット:クワッドとスポットライトは今持っている
roundness
にも新しい持つ1クワッド・ランプで、ディスク形状に、丸みを帯びた角に、0で正方形行くから、パラメータをsoft_edge
と類似エッジ、柔らかくするためのパラメータpenumbra_angle
のためにスポットライト。(#5144、#5222) - シェーダ配列リンクのレイジー評価:呼び出す
AiShaderEvalParamArray()
とき、シェーダはもう評価されません。後で配列値の1つを読み取ると対応するシェーダの評価がトリガされ、複数のシェーダの評価を避けるために結果がキャッシュされます。つまり、パフォーマンスはもはやリンクの数に依存せず、必要に応じてスケーリングすることができます。(#2924) - RGBカメラのフィルタマップ:カメラのフィルタマップのデータタイプが
AtRGB
色付きのエフェクトが可能なようにfloatからfloatに変更されました 。(#5299) - オブジェクト
transform_type
:シェイプオブジェクト(ginstance
、polymesh
など)にはtransform_type
、オブジェクトが持つモーションの種類を指定するパラメータが追加されました。オプションはlinear
、、rotate_about_center
およびrotate_about_origin
です。linear
Arnold 4.2が以前に行った行列間の線形補間に相当しoptions.curved_motionblur=false
ます。rotate_about_origin
に対応するcurved_motionblur=true
。rotate_about_origin
回転ピボットを原点に設定するのとは異なり 、rotate_about_center
オブジェクトの中心を中心に回転します。これはデフォルトモードであり、車輪、プロペラ、および回転する他のオブジェクトに役立ちます。(#3962、#5376) - ヘアUV: ポリメッシュに似たテクスチャ座標
curves.uvs
を設定しsg->u
、sg->v
デフォルトする新しい パラメータです。UVは、カーブまたはポイントごとに指定することができ、アレイの長さは均一で、さまざまなユーザーデータとそれぞれ同じです。sg->bu
そしてsg->bv
依然としてUVは、それぞれの曲線の幅と長さに沿って座標含みます。hair
パラメータuparam
とは、vparam
彼らが今から設定することができますよう、削除されましたcurves.uvs
。(#5646) ARNOLD_PLUGIN_PATH
:この環境変数は、AiBegin()
プラグインをロードしたり、手続き型DSOとボリュームDSOを見つけるために、自動的に使用されるようになりました 。以前は、これはkick
DCCプラグインで使用されていました 。(#5282)kick
カメラコントロール:現在のレンダカメラを調整するための新しいコマンドラインフラグが追加されました。現在のカメラのposition(-position
)、up vector(-up
)、point(-lookat
)を設定することができます。これはkick -turn
、-lookat
フラグを使用する場合、マトリックスで定義されたカメラで機能する ようになりました 。(#5311)kick
露出キー:[
および]
キーを使用してkick
、イン-ipr
モードでの露出を減少または増加させることができ ます。(#5380)kick
abort on error:kick
デフォルトで.assファイルの読み込み中にエラーが発生した場合、プラグインが見つからない、またはファイルが破損している場合のレンダリングを回避するためにエラーが発生するようになりました。以前は、レンダリング中にエラーが発生した場合にのみ中断します。中止は引き続き無効にすることができます-set options.abort_on_error off
。(#5736)- ポリゴンの穴:新しい属性
polymesh.polygon_holes
を使用して、メッシュの指定された面に穴を追加できます。例えば、ポリメッシュ { 名前quad_with_hole nsides 2 1 UINT 4 4 polygon_holes 2 1 UINT 1 0 ...
インデックス1の面が面0のポリゴン穴になることを示します。面ごとに複数の穴がサポートされています。穴として使用される面の巻線は、逆にする必要はない。また、メッシュが細分化されている場合、多角形の穴は無視されることに注意してください。(#2972)
- 廃止予定ノードのタグ付け:ノードは、廃止予定であるとタグ付けすることができます(「廃止予定」という名前のブール・メタデータを、パラメーター名が空の)trueに設定します。これらのノードは、に表示されます
kick -nodes
と[deprecated]
、それらがアーノルドシーンでインスタンス化されるときには、ユーザーを思い出させるために警告を発行します。(#5746) - RLM 12.2BL2にアップデートされました:ライセンスサーバーとライセンスサブシステムを制御する外部ライブラリをバージョン12.0BL2から12.2BL2にアップグレードしました。これは、さまざまなクラッシュ、バグ、ハング、メモリリークを修正するより安定したリリースです。(#5754)
- OIIO 1.7.12にアップデート:OIIO 1.7.7からOIIO 1.7.12にアップグレードしました。(#5672、#5826)