CG基礎講座(C4D-MAYA)マテリアル篇

CGの色や質感を決めるのは何でしょうか?
objectには、その属性としてcolor、ambient,difuse,speculer,
テクスチャーマッピングの手法は、E&S、ユタ大学(エド・キャットマル=PIXAR社長)などによって開発された質感を作るための手法のひとつです。例えば、岩肌、木目、カーペットなど材質や肌感、ざらつきなどを表現したり、ラベルやぱ  CGモデル(object)に画像を貼ることによって質感を出すことをテクスチャーマッピングTexture Mappingと呼びます。

レンダリング - レンダリングのアルゴリズム
モデルのデータ(形状,属性)をもとにしてリアルな画像を生成することをレンダリング( rendering, 描写)という。 レンダリングのアルゴリズムには,つぎのようなものがあるが, ふつうの 3D ソフトでは,スキャンライン,レイトレーシングなどが使われることが多い。

画家のアルゴリズム (painter’s algorithm)

ポリゴンを,遠方の面から順に塗ることによって隠面消去を行うという単純な方法。 CADソフトなどのレンダリングに使われることがある。 影や透明体は扱えない。アンチエイリアシング不可。

Z バッファ法 (Z-buffer algorithm)

ポリゴンを順に塗っていく。このとき,ピクセルごとに,塗ったポリゴンの z の値(奥行き)をバッファ(一時的なメモリのこと)に記憶し,つぎに別のポリゴンが同じピクセルに来たときに,zの値を比較して,前のポリゴンよりも手前である場合だけ塗るという方法。 処理が速いので,リアルタイムで表示する必要がある CAD やゲームのレンダリングなどで使われることが多い。 単純なので速いが,影や透明体が扱えない,アンチエイリアシングができないなどの欠点がある。

スキャンライン法 (scanline method)

画面の走査線 (scanline) ごとに,走査線に掛かるポリゴンを探し出し,前後判定をして塗っていく方法。比較的速いので,広く使われる。アンチエイリアシングができる。影や屈折は不可。向こうが透けて見えるだけの半透明体は可。

レイトレーシング (ray tracing, 光線追跡法)

視点から画面の各ピクセルに向けて光線 (ray) を出し,屈折,反射などの物理現象をシミュレートしながら,光線を光源まで逆に辿ることによって画像を生成する方法。 影,屈折,映り込みなどが表現できるので写真的なリアルな画像が得られる(原理的には,あらゆる物理現象が表現可能)。
高度なソフトでは,広がった光源による照明の効果(ラジオシティ,radiosity という), 霧やかすみの効果(フォグ,fog), コップやガラスによる集光模様(コースティクス,caustics)の表現, ピンぼけ効果,ブレの効果 (モーションブラー) もシミュレートできる。
アンチエイリアシングは,1つのピクセルの中の多数の点の色を計算して平均化する (over-sampling) などの方法で行う。
計算時間がかかるのが欠点であるが,コンピュータの処理速度の向上で,パソコンレベルでも十分なことができるようになってきた。

レイトレ1  レイトレ2  図.レイトレーシングの例

 
レンダリング - シェーディングモデルとアトリビュート
レンダリングして画像を作るためには,色のほかにシェーディングのための属性を与えなければならない。

1.シェーディング (shading)

オブジェクトに,面の向きに応じた陰 (shade) をつけることをシェーディングという(陰 shade と影 shadow は 3D CG では別扱いなので,「陰影」とは訳してはいけない),照明モデルなどとよぶ。
シェーディング属性はふつう,つぎの3成分で指定することが多い。

(1) アンビェント (ambient) 成分
周囲光の強さのこと。光源からの光が全く当たらない陰の部分はこの成分だけで明るさが決まる。 0% で真っ黒になる。立体の置かれた環境に応じて数%~数十%の間で調整するとよい。

(2) ディフューズ (diffuse) 成分
いわゆる乱反射による明るさの強さ。光線との角度に応じて明るさが変わる。ふつう,簡単のため入射角の cos に比例する(Lambert の法則)ように計算している。材質に応じて調整する。

(3) スペキュラー (specular) 成分
表面に光沢がある場合の反射成分,いわゆるハイライトの強さ。サイズも変えられる。金属と非金属では光の反射のメカニズムが異なるので,スペキュラーの入れ方も違う。すなわち,金属ではスペキュラーに金属特有の色が付く。いっぽう,非金属ではスペキュラーの色は光源の色と同じになる。

シェーディングモデル

この3成分の組み合わせで,かなり幅広い質感を表現することができる。例えば

・プラスチックでは,スペキュラーを鈍く弱くする。
・ガラスでは,アンビェントとディフューズを弱くし,スペキュラーを鋭くする。
・光沢のある金属では,アンビェントとディフューズを弱くし,スペキュラーを強く鋭くする。

【注.フラットシェーディングとスムーズシェーディング】

ポリゴンからなるモデルをシェーディングするとき,ポリゴンの向きに応じてそのまま面の明るさを決めることをフラットシェーディング (flat shading), 表面を滑らかに見せるように陰をつけることをスムーズシェーディング(smooth shading)という。

flat Phong
フラットシェーディング スムーズシェーディング
(Phong)

スムーズシェーディングの方法としては,単に各ポリゴンの色を補間して滑らかに見せるグローシェーディング(Gouraud はフランス人の名前)と,ポリゴンの各面の法線ベクトル(面に垂直な方向のベクトル)を補間して滑らかに見せるフォンシェーディング (Phong =「馮」は中国人の名前) がある。 グローシェーディングにはスペキュラーを正しく表現できないという問題があるので,ふつうはフォンシェーディングが使われる。CAD などの分野で,スペキューラーを必要としないときは,計算の速いグローシェーディングが使われることがある。

2.テクスチャ (texture)

単に色を付けてシェーディングするだけではものたりないとき,柄 (がら) を物体の表面に貼り付けるマッピング (mapping,写像のこと) という方法がある。 テクスチャ(柄)を貼り付けるテクスチャマッピング(texture mapping),物体のまわりの風景を貼り付けて映り込みのように見せかける リフレクションマッピング(reflection mapping,環境マッピングともいう),凹凸の情報を貼り付けて表面に凹凸があるように見せかけるバンプマッピング (bump mapping)などがある。 マッピングではないが,柄を空間の関数として与え,切り口に柄が現れるソリッドテクスチャ (solid texture) も,木目・大理石などの質感を出すために利用される。

テクスチャマッピング リフレクション バンプ
テクスチャマッピング リフレクションマッピング
(環境マッピング)
バンプマッピング(皮膚の凹凸)

 

バンプマッピング ソリッドテクスチャ ソリッドテクスチャ
バンプマッピング(波紋) ソリッドテクスチャ ソリッドテクスチャ

PDF