2回生の吉本です。
今回は三次元コンピュータグラフィックス(3DCG)での「毛」の表現方法のひとつを紹介しようと思います。
シェル法
シェル法とは、3Dモデルを毛の断面図で覆うことで毛を表現する方法です。
この方法は
- 3Dモデル全体(もしくは毛を生やしたい部分)に何層もポリゴンを積層させる
- 断面図のテクスチャをポリゴンに貼り付ける
といった簡単な手順で毛っぽく見せることができます。
この手法はゲームでよく採用されており
・「ワンダと巨像」(SCE、2005)で3~6層
・「ロストプラネット」(カプコン、2007)8層ほど
・「ソニック・ワールド・アドベンチャー」(セガ、2008)15層ほど
などがあります
毛の中でも密集して茂っている表現が得意なので、絨毯や芝生のような背の低い草の表現にも使うことができます
欠点として、いわゆる毛並みを変えるようなことができない、毛にも見えが埃が積もっているようにも見えてしまう、などがあります
やってみよう
シェル法での毛の表現を実現する方法としては
・あらかじめモデルに毛のためのポリゴンを貼っておく
・シェーダでポリゴンを作る
といった方法があります。今回は二番目の方法を試しました
やってみた
Unity上で動くシェーダを書いてみました
・毛自身の色を付けるテクスチャ
・毛の形に画像をアルファ透過させるための画像(黒部分が透過する部分になります)
を用意し、層になるテクスチャを上、一層あたりの画像の透過具合を下の画像で指定します
といった感じです。
2枚目の画像を見ると、テクスチャを重ねていることが分かりやすいかと思います
それっぽいような…そうでもないような…
まとめたい
簡単にですが(遠目で見れば)それっぽい毛の表現ができました。
透過させるための画像を違うものにすれば別にも使い道がありそうです。