シェーダのソース コードのサンプル
 
 
 
サンプル シェーダ 分類 説明

anisotropicShader

shader/surface

スペキュラ ハイライトを変更するサンプル シェーダ

backfillShader

shader/surface

照光が拡散しないエリアをカラーで塗りつぶす、変更済みの Phong サーフェス シェーダ マテリアル

brickShader

texture/2d

レンガ状のテクスチャ ノード

cellShader

texture/3d

セルからなるソリッド テクスチャ

checkerShader

texture/2d

UV テクスチャ座標を使用してチェック パターンを作るノード

compositingShader

texture/2d

アンチエイリアシングのマスクおよび RGB テクスチャを合成するためのノード

contrastShader

utility/color

コントラストとバイアスでカラーを操作するノード

depthShader

shader/surface

カメラからの距離に基づいてオブジェクトにカラーを適用するサーフェス シェーダ マテリアルのサンプル

displacementShader

shader/displacement

ディスプレイスメント シェーダ マテリアルのサンプル

flameShader

texture/3d

フレームからなるソリッド テクスチャ

gammaShader

utility/color

ガンマの補正でカラーを操作するノード

geomShader

utility/general

ジオメトリの XYZ 位置を出力するノード

hwAnisotropicShader_NV20

shader/surface/utility

異方性シェーディング エフェクトを作成する NV20 固有の(Geforce3)サンプル シェーダ

hwPhongShader

shader/surface/utility

ピクセル Phong シェーディングごとに実行する立方体環境マッピングのサンプル

hwToonShader_NV20

shader/surface/utility

マンガ風エフェクトを作成する NV20 固有(Geforce3)のサンプル シェーダ

interpShader

utility/general

サーフェス法線に基づいて 2 色を補間するノード

lambertShader

shader/surface

Lambert サーフェス シェーダ マテリアルのサンプル

lavaShader

texture/3d

溶岩層からなるソリッド テクスチャ

lightShader

light

ライト シェーダ マテリアルのサンプル

mixtureShader

utility/color

2 つのカラーと 2 つのマスクを入力として取り、それらを組み合わせて 1 つのカラーを出力するノード

noiseShader

texture/3d

出力カラーにノイズ関数を適用するノード

phongShader

shader/surface

Phong サーフェス シェーダ マテリアルのサンプル

shadowMatteShader

shader/surface

シャドウ付きのエリアのみにマスクとアルファを出力するシェーダのサンプル

slopeShader

utility/color

ユーザ定義のしきい値に対する傾斜または角度に基づくメッシュのカラー フェース

solidCheckerShader

texture/3d

ソリッド テクスチャのサンプル

vertexColorShader (cvColorShader)

utility/color

頂点カラー(CPV)をソフトウェア レンダーすることができるようになるノード

volumeShader

shader/volume

ボリューム シェーダ マテリアルのサンプル

ASHLI シェーダ(Linux と Windows)

shader/surface/utility

ハードウェア シェーダ インタフェースを使用するハイレベルなシェーディング言語である HLSL と GLSL をサポートする方法を例示します。

hwRenderPostEffect

NA

ハードウェア シェーダにポスト レンダリング エフェクトを追加する方法を例示します。

anisotropicShader

ディペンデンシー グラフ ノード AnisotropicShader を作成する

このノードは、サーフェス シェーダ マテリアルのスペキュラ ハイライトを変更します。

AnisotropicShader ノードの出力アトリビュートは、「outColor」および「outTransparency」です。このシェーダを使用するには、シェーディング グループで AnisotropicShader ノードを作成するか、このノードの出力をシェーディング グループの「SurfaceShader」アトリビュートにコネクトします。

backfillShader

ディペンデンシー グラフ ノード BackFillShader を作成する

このノードは、照光が拡散しないエリアをカラーで埋めるサーフェス シェーダ マテリアルのサンプルです。

Maya UI では、このノードへの入力はこのノードのアトリビュート エディタで見ることができます。

このノードの出力アトリビュートは「outColor」です。これは、シェーダから作成されたカラーを表す 3 つの float 型の値です。このシェーダを使用するには、シェーディング グループを指定して BackFillShader を作成するか、このノードの出力をシェーディング グループの「SurfaceShader」アトリビュートにコネクトします。

brickShader

ディペンデンシー グラフ ノード brickTexture を作成する

このノードは、レンガ 2D テクスチャのサンプルです。

BrickTexture ノードの出力アトリビュートは「outColor」です。このシェーダを使用するには、BrickTexture を作成して、その出力をカラー(Color)などのサーフェス/シェーダ ノードの入力にコネクトします。

cellShader

ディペンデンシー グラフ ノード Cells を作成する

このノードは、3D 空間をセルに分割するソリッド テクスチャのサンプルです。

このノードの出力アトリビュートは、「outColor」および「outAlpha」です。

このシェーダを使用するには、セル ノードを作成し、その出力をカラーなどのサーフェス/シェーダ ノードの入力にコネクトします。

checkerShader

ディペンデンシー グラフ ノード CheckerNode を作成する

このノードは、テクスチャの UV 座標を評価するサンプルです。チェック パターンが作成されます。また、このノードでは、マニピュレータで UV 座標を移動する際に、2D テクスチャ配置ノードを利用することができます。

このノードに対する入力は、2 つのカラーと 2 つのバイアス値であり、各バイアス値を使用してパターンが決定します。

CheckerNode ノードの出力アトリビュートは「outColor」です。これは、オブジェクトの UV テクスチャ座標から派生したカラーを表す 3 つの float 型の値です。このシェーダを使用するには、CheckerNode を作成して、その出力をカラーなどのサーフェス/シェーダ ノードの入力にコネクトします。

compositingShader

ディペンデンシー グラフ ノード CompositeNode を作成する

このノードは、シェーディング ノードを合成するサンプルです。

このノードに対する入力は、フォアグラウンド、バックグラウンド、バック カラー、およびマスク値です。

CompositeNode ノードの出力アトリビュートは「outColor」および「outAlpha」です。このシェーダを使用するには、CompositeNode を作成して、その出力をカラーなどのサーフェス/シェーダ ノードの入力にコネクトします。

contrastShader

ディペンデンシー グラフ ノード ContrastNode を作成する

このノードは、カラーを操作するサンプルです。

このノードに対する入力は、入力カラー、コントラスト、およびバイアスです。コントラストとバイアスの入力は、3 つの float 型の値となるので、入力カラーの各 RGB チャンネルにそれぞれ適用することができます。

ContrastNode ノードの出力アトリビュートは「outColor」です。有効なコントラスト設定とバイアス設定から派生したカラーを表す 3 つの float 型の値です。このシェーダを使用するには、ContrastNode を作成して、その出力をカラーなどのサーフェス/シェーダ ノードの入力にコネクトします。

depthShader

ディペンデンシー グラフ ノード DepthShader を作成する

このノードは、カメラからの距離に基づいてオブジェクトにカラーを適用する、サーフェス シェーダ マテリアルのサンプルです。

Maya UI では、このノードへの入力はこのノードのアトリビュート エディタで見ることができます。

このノードの出力アトリビュートは「outColor」です。これは、ノードから作成されたカラーを表す 3 つの float 型の値です。このシェーダを使用するには、シェーディング グループを指定して DepthShader を作成するか、このノードの出力をシェーディング グループの「SurfaceShader」アトリビュートにコネクトします。

displacementShader

ディペンデンシー グラフ ノード DispNodeExample を作成する

このノードは、ディスプレイスメント シェーダマテリアルのサンプルです。

このノードに対する入力は、入力カラーと入力乗数です。

DispNodeExample ノードの出力アトリビュートは「displacement」です。このシェーダを使用するには、DispNodeExample ノードを作成して、その出力をシェーディング グループの “displacementShader” 入力にコネクトします。

flameShader

ディペンデンシー グラフ ノード Flame を作成する

このノードは、タービュランスと軸を使ってテクスチャの動きをアニメートする、ソリッド テクスチャのサンプルです。

このノードの出力アトリビュートは、「outColor」および「outAlpha」です。

このシェーダを使用するには、炎(Flame)ノードを作成し、その出力をカラーなどのサーフェス/シェーダ ノードの入力にコネクトします。

gammaShader

ディペンデンシー グラフ ノード GammaNode を作成する

このノードは、ガンマの補正によってカラーを操作するサンプルです。

このノードに対する入力は、入力カラーとガンマ値です。ガンマ入力は、3 つの float 型の値を持つので、入力カラーの各 RGB チャンネルにそれぞれ適用することができます。

GammaNode ノードの出力アトリビュートは「outColor」です。このシェーダを使用するには、GammaNode を作成して、その出力をカラーなどのサーフェス/シェーダ ノードの入力にコネクトします。

geomShader

ディペンデンシー グラフ ノード GeomNode を作成する

このノードは、オブジェクトにおけるジオメトリの XYZ 位置を評価するサンプルです。

このノードへの入力は、このノード用のアトリビュート エディタにスライダとして描画されるスケールとオフセットです。

GeomNode ノードの出力アトリビュートは「outColor」です。これは、オブジェクトの xyz の位置を表す 3 つの float 型の値です。このシェーダを使用するには、GeomNode を作成して、その出力をカラー(Color)などのサーフェス/シェーダ ノードの入力にコネクトします。

hwAnisotropicShader_NV20

NV20 固有(Geforce3)のサンプル シェーダ

このシェーダは異方性シェーディング エフェクトを作成します。これで、異方性ルックアップ テーブルのパラメータを変更できるようになります。

このシェーダは、hwUnlitShader の方法を基礎としています。

hwPhongShader

立方体環境マップを使用してピクセルあたりの Phong シェーディングを行う場合の例です。

ライトの方向は現在視点の位置に固定されています。しかし、実際のライトをトラック可能なようにプログラムを変更することができます。

複数のライトがサポートされている場合、マルチ テクスチャリングまたはマルチ パスを使用して、ライトごとに環境マップを検索する必要があります。

hwToonShader_NV20

NV20 固有(Geforce3)のサンプル シェーダ

このシェーダを使用してマンガ風のエフェクトを作成することができます。

この場合、ベースになるデカル テクスチャやライティング ルックアップ テクスチャを指定することができます。

このシェーダは、hwUnlitShader の方法を基礎としています。

hwRenderPostEffect

このプラグインは、ハードウェア レンダラに処理を追加する方法を例示します。イメージの反転やビューに対するカラーの三角形の追加といった単純な操作は、このプラグインで実行されます。

このシェーダを使用するには、プラグインを読み込んで、高精度インタラクティブ(High Quality Interactive)ビューをオンにします。

interpShader

ディペンデンシー グラフ ノード InterpNode を作成する

このノードは、オブジェクトにおけるサーフェス法線を評価するサンプルです。

このノードへの入力は、2 つのカラーと、カラーの挿入を変更する入力値です。

InterpNode ノードの出力アトリビュートは「outColor」です。これは、サーフェス法線での作業の結果として補間されたカラーを表す 3 つの float 型の値です。このシェーダを使用するには、InterpNode を作成して、その出力をカラー(Color)または透明度(Transparency)などのサーフェス/シェーダ ノードの入力にコネクトします。

lambertShader

ディペンデンシー グラフ ノード LambertShader を作成する

このノードは、Lambert シェーダのサンプルであり、Maya にサーフェス シェーダ マテリアルとしてディペンデンシー ノードを構築する方法を示します。

このノードへの入力はたくさんあり、Maya UI からは、このノードのアトリビュート エディタで見ることができます。

このノードの出力アトリビュートは「outColor」および「outTransparency」です。このシェーダを使用するには、シェーディング グループ(Shading Group)を指定して lambertShader を作成するか、このノードの出力をシェーディング グループの「SurfaceShader」アトリビュートにコネクトします。

lavaShader

ディペンデンシー グラフ ノード Lava を作成する

このノードは、タービュランスを使用するソリッド テクスチャのサンプルです。

このノードの出力アトリビュートは、「outColor」および「outAlpha」とです。

このシェーダを使用するには、Lava ノードを作成し、その出力をカラー(Color)などのサーフェス/シェーダ ノードの入力にコネクトします。

lightShader

ディペンデンシー グラフ ノード lightNode を作成する

このノードは、ディレクショナル ライトのサンプルです。

このノードへの入力には、方向とカラーのほか、ライトがアンビエント、拡散、およびスペキュラコンポーネントの一因となっているかどうかを示す boolean フラグがあります。また、シーン内の配置について、3D マニピュレータからコネクションを受け取る位置入力もあります。

LightNode ノードの出力アトリビュートは、「lightData」という複合アトリビュートです。このシェーダを使用するには、LightNode を作成し、その入力を変更して別の輝度の結果を表示します。

meshReorderCmd

ユーザ定義の開始フェースに基づいてポリゴン メッシュを再インデックスし、新しい順序のメッシュを新規作成するコマンド。

このコマンドを使用するには、ポリゴン プレーンを作成して、次を実行します。

meshReorder pPlane1.vtx[5] pPlane1.vtx[23] pPlane1.vtx[9];

mixtureShader

ディペンデンシー グラフ ノード MixtureNode を作成する

このノードは、複数の入力を評価するサンプルです。結果のカラーが生成されます。

このノードに対する入力は、2 つのカラーと 2 つのマスクであり、各カラーには、対応するマスクが関連付けられています。また、結果のカラーは、マスクが関連付けられた両カラーの混合になります。

MixtureNode ノードの出力アトリビュートは「outColor」です。これは、マスキングの値を基にして得られたカラーの混合を表す、3 つの float 型の値です。このシェーダを使用するには、MixtureNode を作成して、その出力をカラー(Color)などのサーフェス/シェーダ ノードの入力にコネクトします。

noiseShader

ディペンデンシー グラフ ノード SolidNoise を作成する

このノードは、3D テクスチャのサンプルです。

SolidNoise ノードの出力アトリビュートは、「outColor」です。

rockingTransform

このプラグインは、サンプルのカスタム トランスフォームを実装し、X 軸の周囲でロッキング モーションを実行するために使用できます。エフェクトを例示するために、任意の回転のジオメトリをこの変換の子にすることができます。このプラグインには、2 つの要素が含まれます。

1. カスタム変換ノード -- rockingTransformNode

2. カスタム変換行列 -- rockingTransformMatrix

ロッキング モーションを実行する場合、これらのクラスを同時に使用します。ロック アトリビュートは通常のトランスフォーム アトリビュートの外に格納されることに注意してください。

MEL の使用例:

// Create a rocking transform and make a rotated plane
// its child.
loadPlugin rockingTransform;
file -f -new;
polyPlane -w 1 -h 1 -sx 10 -sy 10 -ax 0 1 0 -tx 1 -ch 1;
select -r pPlane1 ;
rotate -r -ws -15 -15 -15 ;
createNode rockingTransform;
parent pPlane1 rockingTransform1;
setAttr rockingTransform1.rockx 55;

rockingTransformCheck

このプラグインは、サンプルのカスタム トランスフォームを実装し、X 軸の周囲でロッキング モーションを実行するために使用できます。checkAndSetRotation() メソッドは、ユーザ入力に対してロックおよび回転の制限を適用する場合に使用します。

エフェクトを例示するために、任意の回転のジオメトリをこの変換の子にすることができます。このプラグインには、2 つの要素が含まれます。

1. カスタム変換ノード -- rockingTransformCheckNode

2. カスタム変換行列 -- rockingTransformCheckMatrix

ロッキング モーションを実行する場合、これらのクラスを同時に使用します。ロック アトリビュートは通常のトランスフォーム アトリビュートの外に格納されることに注意してください。

MEL の使用例:

// Create a rocking transform and make a rotated plane
// its child.
loadPlugin rockingTransformCheck;
file -f -new;
polyPlane -w 1 -h 1 -sx 10 -sy 10 -ax 0 1 0 -tx 1 -ch 1;
select -r pPlane1 ;
rotate -r -ws -15 -15 -15 ;
createNode rockingTransformCheck;
parent pPlane1 rockingTransformCheck1;
setAttr rockingTransformCheck1.rockx 10;

注: このサンプルで使用されるクラスは、rockingTransform サンプルで定義されたクラスから派生します。

shadowMatteShader

ディペンデンシー グラフ ノード ShadowMatte を作成する

このノードは、透過出力を通じたライト シャドウ内のエリアにのみマット/マスクを作成します。

オプションで、boolean 入力を使用し、マスクではなくカラー チャンネルにあるシャドウ エリアを確認することができます。

ShadowMatte ノードの出力アトリビュートは、「outColor」および「outTransparency」です。このシェーダを使用するには、シェーディング グループ(Shading Group)で ShadowMatte ノードを作成するか、このノードの出力をシェーディング グループの「SurfaceShader」アトリビュートにコネクトします。

slopeShader

ディペンデンシー グラフ ノード slopeShader を作成する

slopeShape は、slopeShader、slopeShader Behavior、slopeShaderNode の 3 つのコンポーネントから構成されています。

slopeShader は、ユーザ定義のしきい値に対する傾斜または角度に基づいてメッシュのフェースに色をつけます。

solidCheckerShader

ディペンデンシー グラフ ノード SolidChecker を作成する

このノードは、3D チェック テクスチャのサンプルです。

SolidChecker ノードの出力アトリビュートは「outColor」および「outAlpha」です。このシェーダを使用するには、SolidChecker ノードを作成し、その出力をカラー(Color)などのサーフェス/シェーダ ノードの入力にコネクトします。

phongShader

ディペンデンシー グラフ ノード PhongNode を作成する

このノードは、Phong シェーダのサンプルであり、Maya にサーフェス シェーダ マテリアルとしてディペンデンシー ノードを構築する方法を示します。

Maya UI では、このノードへの入力はこのノードのアトリビュート エディタで見ることができます。

このノードの出力アトリビュートは「outColor」です。これは、ノードから作成されたカラーを表す 3 つの float 型の値です。このシェーダを使用するには、シェーディング グループ(Shading Group)を指定して phongNode を作成するか、このノードの出力をシェーディング グループの「SurfaceShader」アトリビュートにコネクトします。

vertexColorShader (cvColorShader)

このプラグインは、頂点カラー(CPV)をソフトウェア レンダーできるようにするノードを作成します。

volumeShader

ディペンデンシー グラフ ノード VolumeNode を作成する

このノードは、ボリューム シェーダ マテリアルのサンプルです。ボリューム シェーダ マテリアルを使用して、「light shapes」という光源にコネクトされた特殊なシェイプにカラーを適用します。そのようなシェイプのセットを作成するには、ライト フォグ(Light Fog)エフェクトを使用します。ライト フォグ エフェクトは、ポイントおよびスポット ライトに対するアトリビュート エディタを通じて、いずれのポイントまたはスポット ライトに割り当てることもできます。

VolumeNode ノードの出力アトリビュートは「outColor」です。このシェーダを使用するには、VolumeNode ノードを作成し、その出力をシェーディング グループ(Shading Group)の「volumeShader」 入力にコネクトします。シェーディング グループは、ライト シェイプにコネクトする必要があります。