どうも秋山です。
作業部屋から自宅までの30分のウォーキングがすごく気持ちいいです。
では、MAYAの学習を始めましょう!
この章は、MAYA2016以降のバージョンのMAYAで学習している人向けです。
MAYA2015以前のバージョンで学習している人は、ご相談ください。
シェーディングとは
オブジェクトの外観は材質とライトによって決まります。
MAYAでは、物体の形のデータと材質のデータを別々に作っておいて、それらを関連付けて物体全体のデータを構築するんです。
シェーディングとは、マテリアル(シェーダー)とテクスチャの組み合わせで作成した材質をオブジェクトに割り当てて質感を定義することです。
この章では、シェーディングの基礎であるマテリアルについて学習しようと思います。
今は、どういう意味なのか、まだよくわからないと思いますが、深く考えずに、とりあえず学習を進めてみてください。
マテリアルとは
マテリアルとは、色、透明度、光沢などの材質の基盤を定義するノードのことです。
シェーダーとも呼ばれます。
ちょっとまだわからないですよね。そのまま進めてください。
マテリアルの種類
MAYAにはいろいろなマテリアルが用意されていますが、主なものは以下の4つです。
Lambert : つや無し。チョークなどの、つやの無いものの材質を作るときに使います。

Blinn : やや鈍いつや有り。金属など。

Phong : やや鮮明なつや有り。車やプラスチックなど。

PhongE : やや鮮明なつや有り。Phongを単純化して処理速度を上げたものです。

つやが無いオブジェクトの場合は、Lambertを割り当てればよいと見当がつくと思いますが、つやが有るオブジェクトの場合は、Blinn、Phong、PhongEのうちどれを割り当てればよいか迷うところです。
しかし、特に決まりはありません。
Blinnでもアトリビュートを編集して鮮明なつやにすることができますし、PhongやPhongEでも鈍いつやにすることができるんです。
つや有りの材質を作成するときは、BlinnでもPhongでも、自分が扱いやすいと思うマテリアルを割り当てればいいです。
PhongやPhongEを割り当てた場合、レンダリングするとつや部分にノイズがでることがあります。
特にバンプマップを使っている部分にノイズがでることがあります。
そういう場合は、Blinnを割り当てたほうがノイズがでないようです。
この4つ以外にもいろいろなマテリアルがありますが、それらは、別の章で解説します。
UI右上にある水色目玉のボタンを押してください。
または、Windows→Rendering Editors→Hypershadeを実行して、Hypershadeを表示してください。

Hypershadeが表示されました。
Hypershadeは材質を作成、編集するウィンドウです。
HypershadeはMAYA2016で大幅に変更されました。
レイアウトを確認してください。
レイアウトがデフォルトの状態になっていることを前提に進めます。
Brower、Property Editor、Material Viewer、Create、BinsとWork Areaが表示されている状態です。
もし、デフォルトの状態になっていなくても、必要なパネルを表示しながら進められれば問題ありません。

Browserのタブをクリックして表示を切り替えてみてください。
シーンに存在する各ノードを確認することができます。
Browserの黒い下地の領域は、ビューと同様に、Altキー+RMB、aキーを使って、ノードの表示を見やすい位置や大きさに変更することができます。

Materialsタブをクリックしてください。
3つのノードが表示されています。
それぞれ、lambert1、particleCloud1、shaderGlow1という名前がついています。
これらはデフォルトで用意されているノードでプリミティブオブジェクトを作成した時などに自動的に割り当てられるものです。

Browserで、lambert1を選択してください。
Property EditorとMaterial Viewerに情報が表示されました。

HypershadeのメニューのWindow→Viewportを実行してください。

Viewportが表示されました。
どの位置でもいいので、Viewportをドッキングしてください。

Create→Polygon Primitives→Sphereを実行して、ポリゴンの球体を作成してください(pSphere1)
5キーを押して、シェーディング表示にしてください。
つや無しの材質が割り当てられています。
Viewportは、パースビューそのものです。
Altキー+LMBなどが有効です。

Hotboxやマーキングメニューの表示も、パースビューと同じようにできます。
もちろん、q、w、e、rも有効です。

Material Viewerの設定がHardwareとShader Ballになっていることを確認してください。

ViewportでpSphere1を選択してください。
Work Areaにある水色の丸のボタンを押してください。
または、HypershadeのメニューのGraph→Graph Materials on Selected Objectを実行してください。
このオブジェクトに割り当てられているマテリアル(lambert1)が表示されました。
MAYAではオブジェクトにマテリアルを割り当てることをアサインすると言います。
今後、オブジェクトには必ずマテリアルをアサインすることになるんです。

プリミティブオブジェクトには始めからlambert1がアサインされています。
モデリングの過程ではこのままでもよいですが、lambert1をそのまま完成したモデルデータに使用して色などを編集したらダメなんですね。
なぜなら、lambert1の色や透明度などを編集してしまうと以後、作成したプリミティブオブジェクトがすべてその材質になってしまうからです。
作りたい材質がつや無しでも、つや有りでも、オブジェクトには新たにマテリアルをアサインすると覚えておいてください。
次回、実際にオブジェクトにマテリアルをアサインする方法を学習しようと思います。
シェーディング基礎① まとめ
シェーディングとは
シェーディングとは、マテリアル(シェーダー)とテクスチャの組み合わせで作成した材質をオブジェクトに割り当てて質感を定義することです。
マテリアル(シェーダー)とは
マテリアルとは、色、透明度、光沢などの材質の基盤を定義するノードのことです。
Lambert : つや無し。チョークなどの、つやの無いものの材質を作るときに使います。
Blinn : やや鈍いつや有り。金属など。
PhongE : やや鮮明なつや有り。Phongを単純化して処理速度を上げたものです。
注意!
lambert1をそのまま完成したモデルデータに使用して色などを編集してはいけません。
lambert1の色や透明度などを編集してしまうと、以後、作成したプリミティブオブジェクトがすべてその材質になってしまいます。
今回はここまでです。
よくがんばりました。
お疲れさまでした。
もし、もっとまとめて学習を進めたいという人は、ご相談ください。家庭教師や事務所での研修も受け付けておりますよ。