From BlenderWiki

Jump to: navigation, search
Blender3D FreeTip.gif
IMPORTANT! Do not update this page!
We have moved the Blender User Manual to a new location. Please do not update this page, as it will be locked soon.

Specular Shaders

Mode: All Modes

Panel: Shading/Material Context → Specular

概要

Specular shaders は明るいハイライトを作成し、光沢のある表面に見えるようにして、光源の反射を模倣します。 diffuse shadingとは異なり、鏡面反射は 視点に依存します。 スネルの法則によると、鏡面に当たる光は入射光の角度でミラー反射される (表面の法線から見て)ので、視る角度が非常に重要になります。

Note
重要なので強調しておきますが、ここでいう 鏡面反射 現象は我々が鏡で見る反射ではなく、光沢のある表面に見える光のハイライトです。 本当の鏡のような反射を得るためには、内部レイトレーサを使用する必要があります。 マニュアルの RENDERING のセクションを参照してください。


オプション

各鏡面シェーダには共通の一般的なオプションがあります:

Specular color 
スペキュラハイライトの色
Intensity 
明度、またはスペキュラハイライトの明るさ。 この範囲は [0-1]です。

結果として、マテリアルは少なくとも2つの異なる色を持ちます。ディフューズのものとスペキュラのものです。 スペキュラカラーは、通常、純粋な白色に設定されていますが (反射光ソースと同じ "純粋なホワイト" )、異なる値に設定して様々な効果にすることもできます (例えば、金属のような色のついたハイライト)。

技術詳細

Specular Reflection.

実をいうと、拡散反射と鏡面反射は、まったく同じ光の散乱プロセスによって生成されます。 拡散反射する表面は、波長に関して、とても小さいデコボコのある表面で占められていて、光は表面の小片から、角度を少しずつ変化させながら多くの異なる方向に反射されます。

一方、鏡面反射のほうは、波長に関して、滑らかな表面で占められています。 これは、表面の各点から散乱される光線のほとんどが同じ方向に向いていて、拡散的に散在するのではないことを示しています。 これは細かいスケールでの話です。 表面の粗さが入射光の波長よりもはるかに小さい場合、表面はフラットに表現され、鏡面としての役割を果たします。

粗さのスケールと光の波長との関係を理解することが難しいのであれば、ボールを想像してみてください (たとえば、センチメートルスケールのね):石積みの壁にそれを投げつけると (デシメートルのスケールの粗さで)、毎回別々の方向にはねかえり、すぐに見失ってしまうはずです! 一方、コンクリートの壁に投げつけた場合は (粗さはたとえば、ミリスケール)、その跳ねかえりは非常に簡単に予測でき、追えるはずです (多かれ少なかれ!) 光の反射もこれと同じような原理なのです…

CookTorr

Mode: All Modes

Panel: Shading/Material Context → Shaders

CookTorr Shader (Lambert 0.8)

概要

CookTorr (クック - トーランス) は基本的な鏡面反射シェーダで、光沢のあるプラスチック表面を作成するときに最も有用です。これはPhongの少し最適化されたバージョンです。

Robert L. Cook (LucasFilm) and Kenneth E. Torrance (Cornell University) 
In their 1982 paper A Reflectance Model for Computer Graphics (PDF), they described "a new reflectance model for rendering computer synthesized images" and applied it to the simulation of metal and plastic.

オプション

Hardness 
スペキュラハイライトのサイズ


Phong

Mode: All Modes

Panel: Shading/Material Context → Shaders

Phong Shader (Lambert 0.8)

概要

Phongは基本的なシェーダで、CookTorrに非常に似ていますが、皮膚と有機表面に優れています

Bui Tuong Phong (1942-1975) 
was a Vietnamese-born computer graphics pioneer that developed the first algorithm for simulating specular phenomenon. His model included components for not only specular lighting, but also diffuse and ambient lighting.

オプション

Hardness 
スペキュラハイライトのサイズ

惑星の大気

そのぼやけから、このシェーダは惑星の周りの大気に適しています。 惑星の周りに、惑星よりわずかに大きい球を追加します。 そのマテリアルに、Phongスペキュラのシェーダを使用します。 非常に低いα(0.05)、拡散性ゼロ、低いhardness(5)、ただし高い鏡面性(1)に設定しましょう。

Blinn

Mode: All Modes

Panel: Shading/Material Context → Shaders

Blinn Shader (Oren-Nayar Int 0.8, Rough 0.5)

概要

ブリンは、より'物理的' な鏡面反射シェーダで、多くの場合 Oren-Nayar 拡散シェーダと併用されます。 4つのオプションが追加されるので、よりコントローラブルになります。前述の3つに、 屈折率 (IOR)です。

ジェームズF.ブリン 
はNASAのジェット推進研究所に勤務し、彼の功績はカール·セーガンのテレビドキュメンタリー Cosmosにおいて広く知られるようになった。 そのモデルは彼の1977年の論文 Models of Light Reflection for Computer Synthesized Pictures (PDF) に記され、光の方向にともなう鏡面反射強度の変化や、表面上のハイライトのより正確な位置決めなども盛り込まれている。

オプション

Hardness 
スペキュラハイライトのサイズ。 ブリンシェーダでは、ハイフォンやCookTorrよりはるかにタイトなスペキュラハイライトが可能です。
IOR 
'屈折率'。 このパラメータは、実際に材料を通りぬける光線の屈折を計算するためのものではありませんが (そのためにはレイトレーサーが必要になる)、スネルの法則によって鏡面反射の輝度と広がりを正しく計算します。


Toon

Mode: All Modes

Panel: Shading/Material Context → Shaders

Toon Specular Shader (Toon Diffuse, Int 0.8, Size & Smooth match)

概要

トゥーン鏡面シェーダは、トゥーン拡散シェーダの対偶のものです。 漫画のセル画のような、シャープで均一なハイライトを生成するように設計されています。

オプション

Size 
スペキュラハイライトのサイズ
Smooth
ハイライトのエッジの柔らかさ

ヒント

トゥーンシェーダはまた、ColorRampsを使用することで、よりコントローラブルな方法で遂行することもできます。

WardIso

Mode: All Modes

Panel: Shading/Material Context → Shaders

WardIso Shader

概要

WardIso は、金属やプラスチックに役立つ柔軟な鏡面反射シェーダです。

Gregory J. Ward 
は物理学の最も基本的な法則に従った比較的単純なモデルを開発しました。 彼の1992年の論文 Measuring and modeling anisotropic reflection でWardが双方向反射率分布関数 (BRDF) を紹介して以来、パラメータが少なく制御が簡単なことから、広くコンピュータグラフィックスで使用されるようになりました。 彼のモデルは、等方性表面 (光の方向に依存しない) と異方性表面 (方向に依存する)の両方を表現することができます。 Blenderでは、ウォード鏡面シェーダはまだ Ward Isotropic と呼ばれていますが、実際には異方性です。 (PDF)

オプション

Slope 
面勾配の標準偏差。 以前は 二乗平均平方根 またはrms値と呼ばれていたもので、このパラメータの影響内では、スペキュラハイライトのサイズの制御を、他のスペキュラシェーダとは別の方法を使用して行ないます。