スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
引き続き男性キャラクタを作っています。

今回は髪の毛,眉毛,ヒゲなどを作りました。

Maya2013 より nHair が実装されましたが、
まだHair をまともに使ってみたことがなかったので Hair をイチから勉強しました。
ずっと扱いづらそうなイメージをもっていましたが、
Maya Dynamics の知識さえあれば結構何ともないようです。

とはいえ、もちろん Dynamics だけでは髪の毛の形状をセットをすることはできず、
1本ずつ形を作っていくのも大変なので簡易的なスクリプトを書きました。
勉強のために Pymel で書きましたが Mel で書いても大差なかったと思います。

import pymel.core as pm

def moveCVsToAverage():

 selList = pm.ls(sl=1)
 cvList = selList[0].cv
 aveList = len(cvList)*[0]
 stList = []

 for sel in selList:
  stList.append(pm.pointPosition(sel.cv[0]))

 for i in range(1,len(selList)):
  for j in range(1,len(cvList)):
   aveList[j] += (pm.pointPosition(selList[i].cv[j])-stList[i])

 for i in range(len(aveList)):
  aveList[i] /= (len(selList)-1)

 for i in range(1,len(cvList)):
  p = stList[0] + aveList[i]
  pm.move(selList[0].cv[i], p[0], p[1], p[2])

moveCVsToAverage()


何も難しいことはしておらず、CV の座標の平均値を計算してるだけです。
複数カーブを選択して実行すると、最初に選択したカーブが他のカーブの平均の形状になります。

あまり多くの毛を自動的に補完すると均一になりすぎるため、このような形のスクリプトにしました。
何本かのキーとなる毛だけは自分で CV を動かして形状を作り、
残りは1本ずつこのスクリプトを使いながら、どの毛同士の平均をとるかによって
ある程度は楽をしながらも自由に形状を作っていくことができました。

眉毛とヒゲは Hair ではなく Fur を使用しています。

20120513_02.png


シェーダーに使用したのは Puppet 氏の mental ray 用プラグイン。
今回これらをレンダリングするにあたって存在を知り導入してみたのですが、
個人で作られたとは思えない、そしてドネーションウェアとは思えないほどクオリティが高いです。

マテリアル,ライト,ジオメトリ等々、各種の専用シェーダーがあります。
まだほとんど試していませんが、CSG 演算用シェーダー『p_CSG』なんかは
トポロジーを気にせずに済むため Maya の Boolean なんかよりもずっと便利そうです。

20120513_01.png

Hair や Fur に使えるシェーダーも Maya のデフォルトよりずっと汎用的で
調整次第では良いものが作れそうです。

20120513_03.png

差し当たりこんなかんじになりました。
毛髪類に限らず、シェーディング関係は最終的に全部まとめて微調整する予定です。


次回は私にとって恐らく最難関である、テクスチャ作成をする予定です。

何かアイディアが浮かんだらファンタジー祭に参加するための作品も
並行して作成していくかもしれないため、更に作業が遅くなる可能性があります。
コメント
もしかしてディズニー50周年記念映画のあのキャラクターですかね・・・
2012.05.14 00:08 | URL | ジャック・バウアー | 編集
>>ジャック・バウアーさん
コメントありがとうございます!
私は大好きな作品なのですが国内ではあまり振るわなかったようなので
この段階で気づく方がいたとは嬉しいです。
ただ全然似なくなる可能性も高いので全くの別モノとして見ていただけると嬉しいです^^;
2012.05.14 10:04 | URL | らい | 編集
管理者のみ閲覧可能にする
Profile
HN らい

都内某社テクニカルディレクター
都内某専門学校講師
都内某企業講師
元中国某社S3Dスーパーバイザー
Contact
(ENGLISH OK. 可以用中文。)
Categories
Archives
RSS Link
QR Code