アットウィキロゴ
Gelatoマニュアル 日本語訳 Wiki
掲示板 掲示板 ページ検索 ページ検索 メニュー メニュー

Gelatoマニュアル 日本語訳 Wiki

6. Materials

最終更新:

e1-605265

- view
管理者のみ編集可


サブセクション






6. マテリアル

6.1 Mayaシェーディングネットワークの変換

mangoはmayaのシェーディング機能の発達するサブセットに擬態する一組のシェーダとともに来るので、あなたは他のどのGelatoシェーダも使うことなくGelatoでレンダリングをすることができます。

6.1.1 Mayaのマテリアルノードのサポート

HyperShadeノードの完全なセットのサポートは、現在進行中です。ノードのリストがGelatoの特定のバージョンで取り扱われるのを見るために、インストール後$MANGOHOME/shadersを見てください。互換性メモは、ここにあります:

Surface Materials
  使用可
anisotropic, lambert, blinn, phong, and phongE, but without glow; rampShader, shadingMap; surfaceShader; layeredShader; oceanShader; useBackground
  使用不可
hairTubeShader

Volumetric Materials
サポートされていません。しかしGelatoはライトフォグをサポートしています。

Displacement Materials
置換は可能です

Lights
  使用可
ambientLight (except for soft shadows), directionalLight, pointLight, spotLight (no barn doors or decay regions)
  使用不可
areaLight, volumeLight

2D Textures
  使用可
bulge, checker, fractal, grid, noise, ramp; file (supports attributes that come from place2dTexture, and color effects, but not animated textures)
  使用不可
cloth, fluidTexture2D, mountain, movie, ocean, psdFile, water

3D Textures
  使用可
brownian, cloud, crater, marble, rock, snow, solidFractal, stucco, volumeNoise
  使用不可
fluidTexture3D, granite, leather, wood

Environment Textures
  使用可
envBall, envCube, envSky, envSphere
  使用不可
envChrome

General Utilities
  使用可
bump2d, bump3d, condition, layeredTexture, multiplyDivide, placeTexture2d, placeTexture3d (no shader; just uses the transform), plusMinusAverage, projection (except for perspective), reverse, samplerInfo, setRange, uvChooser, vectorProduct
  使用不可
arrayMapper, distanceBetween, heightField, lightInfo, stencil

Color Utilities
  使用可
blendColors, clamp, contrast, gammaCorrect, hsvToRgb, luminance, remapColor, remapHsv, remapValue, rgbToHsv, surfaceLuminance
  使用不可
なし

Switch Utilities
  使用可
singleShadingSwitch, doubleShadingSwitch, tripleShadingSwitch, quadShadingSwitch

Other Utilities
  使用不可
imagePlane, opticalFX, particleSampler

シェーダについてのテクニック

  • デフォルトと異なる場合だけ、シェーダパラメータは書かれます。あるいはデフォルトでなければ、アトリビュートはnonzero/nonemptyとなります。

6.1.2 反射と屈折によるぼやけとサンプリング
Gelatoは、ブルーリーレイトレースの反射と屈折を持つことができます。Mayaソフトウェアレンダラはこれをサポートしないので、普通のマテリアルダイアログ(Blinn、Lambert、その他)はこれらの規制を適用しません。その代わりにGelatoタブを開け、そして、反射数の追加と屈折コントロールを見なければなりません。

Reflection blur
ぼやけた光の跡の反射がどうかについて指定している角度(程度で)。
0のデフォルト値は、反射の輪郭が完全にはっきりしています。このマテリアルにおいて("Specular Shading"タブにある)"Reflectivity"が0である、あるいは光の軌道が完全にそれるならば影響はありません。

Reflection
反射のための平均値にする光の数。(デフォルトは1)
より多くの光はより長くなり、よりなめらかで、より雑音が多くなくて、よりよくエイリアシング除去された反射を生み出します。たとえぼけがないとしても、複数の光線(まあ4つ)を使うことはエイリアシング除去に反射を改善する手段として役に立つことでしょう。

Refraction blur
ぼんやりした光線をたどられた屈折はどうかについて指定している角度(程度で)。
0のデフォルト値は、屈折の輪郭が完全にはっきりしています。このマテリアルにおいて``Raytrace Options'' タブにある``Refractions'' の項目がチェックされていない、あるいは光の軌道が完全にそれるならば影響はありません。

Refraction
屈折のための平均値にする光の数。(デフォルトは1)
より多くの光はより長くなり、よりなめらかで、より雑音が多くなくて、よりよくエイリアシング除去された屈折を生み出します。たとえぼやけがないとしても、複数の光線(まあ4つ)を使うことはエイリアシング除去に屈折を改善する手段として役に立つことでしょう。

Backlighting
これは、表面下の散在の代わりとなる便利なものです。
それは、この値によって重みづけられた翻された標準を使っている照明計算の第2セットです。}

6.2 Gelatoシェーダの使用

mangoは、Mayaシェーダの代わりとして、またMayaシェーダと共に、Gelatoシェーダを使うことができます。GelatoシェーダはGSL(Gelato Shading Language)に書かれて、.gsoファイルに編集されます。$GELATOHOME/shaderフォルダは、いくつかのこれらのshaderを含みます。また自分のものとして書くこともできます。

Gelato shaderは、どのLambert、Blinn、またはPhong ノードに割り当てられることができます。Attribute Editorにある、Gelato ― Override shaderの欄を開けます。そしてShader Name}6.3のフォルダアイコンをクリックして、Gelato Shader Picker6.4を出します。(代わりに直接Shader Nameを入力するならば、「.gso」を無視することができます。)、Use Override shaderの欄をオンにしてなければ、GelatoはMaya shaderを使い続けます。

そのピッカーは、使用するシェーダにあるすべての.gsoファイルを表示します。それはシェーダのあるフォルダに集められています。望ましいshader(ここでは、greenmarble.gsoを選びました)をダブルクリックします。もし望みのシェーダがシェーダパスのフォルダの中になければ、それを見つけるためにBrowseボタンを押してください;これは、必要に応じてフォルダをshader pathに加えます。(または、Render SettingでRender Settingsの中からGelato-->Generalからshader pathを編集することが出来ます。;4.1参照)

一旦Gelato shaderが割り当てられるならば、そのパラメータはShader Parametersの下で見えるようになります。(6.5)これらのパラメータは、現在のノードの普通の特質です:それらは配置したり、動かしたり、そのまま他のノードに接続させることができます。

シェーダパラメータアトリビュートをつなぐことによって、いくつかのノードがGelatoにシェーダを優先して、他のノードがmayaに優先をするという、shaderグラフを製作することが可能です。たとえば、チェッカーまたはランプのような実用的なシェーダは、Gelatoシェーダのどんなパラメータにでも接続されることができます!または、Gelatoシェーダの出力は、Mayaシェーダにノードに接続されることができます。

改善点:maya shaderとGelato shaderを組み合わせることにいくつかの落とし穴があります。mayaシェーダはテクスチャーコーディネートのためにuvCoordを使います。そして、テクスチャ参照のためのrefPointObjは調和します。;Gelatoに含まれるシェーダは、s、tとPrefを使います。Hypergraph、またはConnection Editorを用いてきちんととこれらをつなぐ必要があります。

改善点:MELを使い、また(タイプ ”string” の)Gelato Shaderアトリビュートを加えてセットすることによって、Gelatoの優先シェーダを、どんなshaderノードにでも割り当てることが可能となります。しかし、LambertやBlinn、Phongのノードを使ったり、グラフの中央で終わるGelato層にはちょうど便利です。

改善点:Mangoはmaya shaderと張り合うためにGelato shaderを探すことによって、Hypershadeグラフを変換します。だから、チェッカーノードは、maya_checker.gso.の例に変換されます。これらの競争的なshaderは$MANGOHOME/shaderです。それが、そのフォルダが自分のshader pathの中にある必要である理由です。


6.3 ディスプレイスメント

MayaのSurfaceは、マップまたは有用性をオブジェクトのグループのDisplacement Matアトリビュートに付けることによって移し変えることができます。アルファまたはマップの輝き度は、表面を置き換えるのに用いられます。つくられたdisplacement Shaderノードの上のDisplacement Radius値がどんな置換アーティファクトでも避けるようにも調整しなければなりません。

デモをします。新規シーンから始めて、NURBS球をつくってください。球を選んで、ランバートのマテリアルを割り当てます。マテリアルをオブジェクトに割り当てた後、マテリアルのタブ(例えばlambert1)を選んで、出力接続ボタン をクリックして、このオブジェクトのshading groupを出してください

Gotcha:置換マップを物のためにと関連する「パーティクル」のshading groupでなく「サーフェイス」のshading groupにセットするように注意してください。これは、特に新しいマテリアルをオブジェクトに割り当てる代わりに、デフォルトマテリアルを使っているならば、気をつける何かです。出力接続ボタンを右クリックすると、表面のシェーダが接続しているグループをおおうメニューが出ます。これは、両方のシェーディンググループを見るところです。

次に、shading groupでDisplacement Matの項目の右側のボタンをクリックして、替えのマテリアルを選んでください。

これによって、ディスプレイスメントシェーダ、テクスチャ配置と地図/有用性例をつくります。

これで望みのテクスチャー機能を成立させることにより、置き換えることができます。たとえば、Fractalノードをためしてください。コントロールを調整するため、置換マップ(例えばfractal1)のタブを選んでください。ほとんどのマップは、置換のために使われる輝きかアルファチャンネルを生じます。この数値の大きさの調節で、ディスプレイスメントの最大量が変わります。

Gelatoタブの下にある最大ディスプレイスメント半径の中のdisplacement Shaderノードでセットしなければなりません。Displacement Radiusを最大displacement値にセットしてください。一般的に、これはdisplacementマップのアルファスカラー乗数と同じセッティングです。

6.3.1 Gelatoシェーダの代用

自分自身のジェラートシェーダを置き換えることも可能です。このためには、置換量のためにマヤノードのネットワークを構築する代わりに、GelatoUse Override Shaderのチェックボックスをつけてください。erride Shaderの枠を選び、使用するディスプレイスメントシェーダを選びます。

カスタムメイドのサーフェイスシェーダと同様に、どんなパラメータでもディスプレイスメントシェーダに合わせることができます。たとえば、e,phdentedシェーダを選ぶと、そのシェーダ特有のいくつかのシェーダパラメータが表示されます。


6.4 表面下の散在

このセクションで、のサブサーフェイススカッタリングを用いたレンダリング方法で、速いチュートリアルを学びます。

1. ビューアーはivを選択します(Render Setting-->Gelato-->General;4.1参照)。(ivは、境界線を綺麗に表示してくれます。mdisplayプラグインはmaya Render Viewではまだ表示することができません。)

2. Attribute Editorでsubsurface scatteringを必要とするマテリアルをあげてください。Gelatoフレームを開けてくださいLambertやBlinn、Phongなどのどんなマテリアルにでも、Subsurface Scatteringについてフレームを参照します。

3. マテリアルにSubsurface Scatteringを適用するために、Subsurface Scatteringのチェックボックスをチェックしてください。上記の例では、単にこの欄をチェックしているだけです(サブサーフェイスが適用されていないイメージは、右で比較のために示されます)
2つのイメージレンダーを見ます。第一が「ベイキング」パスで、二度と使われません。第2のイメージは、最終的な「美しい」イメージです。

4. サブサーフェイスマテリアルの特性を変えるためのパラメータ設定
Intensity.
表面下の散在の量のIntensity.An全体的なスケール。
Albedo.
表面下の散在の広がった反射率(そして、それによる色)をコントロールします。
Mean free path.
マテリアルの中に散在するイベントの間の平均距離(場面単位で)をコントロールします。(大きな値にすることによって、マテリアル中の光をより遠くに進ませます)
Eta.
マテリアルのEta.The屈折率。これは、大部分のマテリアルのために1.3~1.5の範囲にある傾向があります
Scale.
この数値で散在と吸収を登って、物の「スケール」の簡単な制御として使われるでしょう。より高い値はオブジェクトの見た目をより大きく(表面下の光は、ほとんど距離を進みません)見せ、そして低い値はオベジェクトをより小さく見せます。たとえそれらが両方が同じマテリアルから作られるとしても、こ特性のため、巨大な大理石の像は小さい大理石の像と異なるように見えます。
Two-sided.
オブジェクトが矛盾している法線を持つならば、これをチェックしてください、もしくは可能ならば、それから成る表面の「正面」と「後ろの」側を見てください。しかし、あなたのオブジェクトが一貫してモデル化されるならば、あなたが外側(物の法線によって)、そして去っている「二つの面の」チェックをはずしてから常にそれを見るように、表面下のレンダリングの速度を上げてください。
Diffuse File.
保存する空間データベースファイルの名前は、発光値を焼きました。通常、異なる物が異なるファイルに彼らの発光を焼くことを望むならばそれが役に立つかもしれないが、あなたはこれを変える必要はありません。
Max Solid Angle.
表面下の散在のための正確さ対タイミングをコントロールします。よほどの問題がない限り、通常このパラメータを調節する必要はありません。
Space.
焼かれた発光データが格納される座標系を挙げます。発光を焼くためにデフォルトに異議がない限り、これを変える必要はありません。

アルベドと平均自由行程パラメータの導入に先行するマテリアルとの後ろの互換性のために、散在と吸収カラーパラメータを提供します。アルベドと平均自由行程によるより新しいマテリアルのために、これらのパラメータのためにUI規制を見せられません。

Scattering Color.
マテリアルの散在の量をコントロールして、より大きな値にすることにより、散在の量を増やしていきます。
Absorption Color.
光が材料中を動き、どれくらい速く吸収されるかをコントロールします。より高い数はより多くの吸収を示します、低い数は光が吸収される前にマテリアル中をより遠くに進むことを示します。
Subsurface Color.
表面下の散在した光の色付け



最近更新されたスレッド
人気記事ランキング
ウィキ募集バナー