top of page
■第7回目(後期)
●顔モデルの読み込み
瞳01.jpg
瞳02.jpg

「face」オブジェクトを選択して、削除する。

瞳03.jpg

​別の顔モデルを読み込む。

瞳04.jpg
瞳05.jpg

[ウィンドウ]>[一般エディタ]>[ネームスペースエディタ]を選択して、ノード名を整理する。

瞳06.jpg
瞳07.jpg

「head」ジョイントと、読み込んだデータの「faceSkin」「heftEye」「rightEye」を選択する。

瞳08.jpg
瞳09.jpg

[スキン]>[バインド]□(オプション)を選択する。「バインド対象」を「選択してジョイント」に設定する。

​「スキンのバインド」を実行して、「head_con」コントローラを選択して回転する。

​選択したジョイントのみバインドされるので、ウェイトは1になっている。

●眼球のテクスチャ

テクスチャの一部に抜け(マスク)を設定して、透明する方法は2つある。

テクスチャ01.jpg
テクスチャ02.jpg

①アルファチャンネルを設定して、白の部分はテクスチャ、黒の部分はアルファチャンネルで透明になる。

テクスチャ05.jpg
テクスチャ06.jpg

②レイヤーの透明部分を設定して、その部分は透明になる。

瞳10.jpg

「サーフェスシェーダ」を作成して、眼球のオブジェクトに割り当てる。

瞳12.jpg

【アトリビュートエディタ】

瞳13.jpg

【プロパティエディタ】

アトリビュートエディタ、またはプロパティエディタの「出力カラー」のマップボタンをクリックする。

瞳11.jpg

[レンダーノードの作成]ウィンドウから、「2Dテクスチャの「ランプ」を作成する。

瞳15.jpg

ランプテクスチャはグラデーションのテクスチャで初期設定は、黒から白の線形グラデーションになっている。

瞳17.jpg

眼球オブジェクトの上下方向に黒から白のグラデーションが適用されている。

瞳21.jpg

ハイパーシェードで、ランプテクスチャとサーフェスシェーダをコネクトすることもできる。

瞳16.jpg
瞳18.jpg

ランプテクスチャのアトリビュートとその後ろにコネクトされている2D配置アトリビュートを編集する。

瞳19.jpg

眼球オブジェクトの中心から外側に向かって、白から黒のグラデーションになる。

瞳20.jpg

ハイパーシェードで、「2Dテクスチャ」の「ファイル」を作成する。

瞳22.jpg

「ファイル」テクスチャを「ランプテクスチャ」の代わりに、サーフェスシェーダにコネクトする。

瞳26.jpg

【アトリビュートエディタ】

瞳24.jpg

【プロパティエディタ】

アトリビュートエディタ、またはプロパティエディタの「イメージの名前」から画像テクスチャを選択する。

瞳23.jpg
瞳25.jpg

【pngファイルの場合】

【tifファイルの場合】

瞳の画像テクスチャが確認できる。

瞳27.jpg
瞳28.jpg

​ハイパーシェードで、「その他のテクスチャ」から「レイヤテクスチャ」を作成する。

​ファイルテクスチャとサーフェスシェーダのコネクトを切って、その間に「レイヤテクスチャ」を並べる。

瞳29.jpg

レイヤテクスチャの「出力カラー」⇒サーフェスシェーダの「出力カラー」をコネクトする。

瞳36.jpg
瞳30.jpg

レイヤテクスチャは空レイヤになっているので、ビューでは空レイヤの緑色が表示される。

瞳31.jpg
瞳32.jpg

ランプテクスチャを中ボタンで、レイヤテクスチャアトリビュートにドラッグする。

​(ドラッグするのは、プロパティエディタでもアトリビュートエディタどちらでも構わない)

※右ボタンクリックすると、プロパティエディタ、アトリビュートエディタは切り替わってしまう。

​「ファイルテクスチャ」も同じように、レイヤテクスチャにドラッグする。

瞳33.jpg
瞳34.jpg

空レイヤは☒ボタンをクリックして削除する。レイヤの順番は、左側が上になる。右側が下になる。

中ボタンでドラッグすると順番(左右)を入れ替えることができる。

​左側(上)をファイルテクスチャ、右側(下)をランプテクスチャに設定する。

瞳37.jpg
瞳35.jpg

ファイルテクスチャとランプテクスチャがミックスした状態になる。

●瞳のコントローラの設定
瞳41.jpg
瞳42.jpg
瞳43.jpg

「rightEyeFrame」を選択して、チャンネルボックスで「可視性」以外のアトリビュートを[ロック/非表示]にする。

瞳38.jpg
瞳39.jpg
瞳40.jpg

「rightEyeController」を選択して、チャンネルボックスで「移動X」「移動Y」「可視性」以外のアトリビュートを[ロック/非表示]にする。

瞳44.jpg

「rightEyeController」を選択して、アトリビュートエディタの「制限情報」>「移動」を表示する。

「移動制限X」の「最小」「最大」と「移動Y」の「最小」「最大」を設定する。
​※配布したデータには、設定されているが、各自の作業では自分で設定する。

●眼球のリギング
ドリブンキーオプション.jpg

「rightEyeController」を上下(移動Xと移動Y)に移動したら、2Dテクスチャ配置アトリビュートの

​「フレームの移動」と連動して、瞳が動くセットアップを設定する。ドリブンキーを使用する。

瞳48.jpg
瞳57.jpg
瞳58.jpg

ドライバーに「rightEyeController」をロードして、ドリブンに「place2dTexture」ノードをロードする。

​「place2dTexture」ノードは、ハイパーシェードで選択する。※ランプのplace2dTextureノードではない。

ドライバは「移動X」、ドリブンは「フレームの移動U」を選択する。

瞳51.jpg
瞳49.jpg

ドライバ「rightEyeController」の「移動X」→「0」

ドリブン「フレームの移動U」→「0.000」⇒キー①

瞳52.jpg
瞳47.jpg

ドライバ「rightEyeController」の「移動X」→「0.1」

ドリブン「フレームの移動U」→「0.1」⇒キー②

瞳53.jpg
瞳50.jpg

ドライバ「rightEyeController」の「移動X」→「-0.1」

ドリブン「フレームの移動U」→「-0.1」⇒キー③  ※チャンネルボックスで「フレームの移動X」を設定することもできる。

瞳54.jpg

ドライバは「移動Y」、ドリブンは「フレームの移動V」を選択する。

瞳59.jpg

ドライバ「rightEyeController」の「移動Y」→「0」

ドリブン「フレームの移動V」→「0.000」⇒キー①

瞳55.jpg

ドライバ「rightEyeController」の「移動Y」→「0.1」

ドリブン「フレームの移動V」→「0.1」⇒キー②

瞳56.jpg

ドライバ「rightEyeController」の「移動Y」→「-0.1」

ドリブン「フレームの移動V」→「-0.1」⇒キー③

●シェーダの複製

左目のセットアップは、新しくシェーダを作成して、同じ設定を行えばできるが、作業の効率化のために

​ここでは、ドリブンキーが設定されたシェーダを複製して、右目のコントローラと接続する。

瞳60.jpg
瞳61.jpg

右目に割り当てているシェーダを選択して、ハイパーシェードの[編集]>[複製]>[シェーディングネットワーク]を選択する。

​複製したシェーダを左目に割り当てる。

瞳67.jpg

「グラフをクリア」ボタンをクリックして、ノードエディタをリセットする。

瞳62.jpg

右目のシェーダと複製したシェーダを選択して、「入力接続」ボタンをクリックする。

​2つのシェーダが展開表示される。

瞳63.jpg

左目のコントローラ「leftEyeController」を選択して、「選択したノードをグラフに追加」ボタンをクリックする。

瞳64.jpg

複製したコントローラと左目のコントローラのアトリビュートを展開表示する。

瞳65.jpg

複製したコントローラと左目のコントローラの接続を入れ替える。

「移動X」の出力⇒「place2dTexture28_translateFrameV1」の入力に接続する。

「移動Y」の出力⇒「place2dTexture28_translateFrameU1」の入力に接続する。

瞳69.jpg
瞳66.jpg

複製したコントローラを削除する。

​「leftEyeController」を移動して、瞳が動くが確認する。

瞳70.jpg
瞳71.jpg

「eyeController」⇒「rightEyeController」の順に選択して、[コンストレイント」>[ポイント]□(オプション)を選択する。

瞳72.jpg

「オフセットの保持」をオンに設定する。

​「eyeController」は移動Xと移動Yのみなので、「コンストレイント軸」を「X」と「Y」に設定して実行する。

「eyeController」⇒「leftController」の順に選択して実行する。

瞳73.jpg

​「eyeController」を移動すると、両目の瞳が動く。

瞳80.jpg

左右の瞳を単独で動かす場合は、コントローラにキーを設定する。

キーを設定すると、「Blend Point」(ブレンドポイント)が追加される。

瞳82.jpg
瞳81.jpg

ブレンドポイントが「1」⇒十字のコントローラ(eyeController)が優先になる。

​ブレンドポイントが「0」⇒左右独自のコントローラ(rightEyeControllerかleftEyeController)が優先になる。

瞳76.jpg
瞳77.jpg
瞳78.jpg

「eyeController」は移動Xと移動Y以外は「ロック/非表示」に設定する。

瞳79.jpg

左右のコントローラと同じく、「移動制限」を設定する。

瞳74.jpg
瞳75.jpg

瞳のコントローラを5つ選択して、最後に「head_con」コントローラを選択して、[P]キーでペアレントする。

瞳68.jpg

「neck_con」や「head_con」などを回転すると、瞳のコントローラが追従する。

© 2020 by Kurita   Japan  Electronics  College  Computer  Graphics  Department

bottom of page