続いて、テクスチャです。
これらのほとんどは、プロシージャテクスチャです。
つまり、数学関数によって作られるテクスチャであり、解像度に制限がありません。
それぞれのアトリビュートをアニメーションさせることもできるので、柔軟性に富んでます。
チェックやグラデーションのパターンを作るシンプルなものから、流体や海や水をシュミレーションするものまで存在します。
プロシージャテクスチャに対して、通常の静止画や動画をマッピングするものに、ファイルテクスチャ、ムービーテクスチャ、PSDファイルテクスチャがあります。
この時、テクスチャの解像度は、原則として、512×512、1024×1024 といったように、
縦横のピクセル数が 2×2乗であり、尚且つ、正方形である方が望ましいです。
では、Logo_01を貼り付けてみましょう。
続いて、Logo_02 を貼り付けてみてください。
Logo_02.tif には、アルファチャンネルが設定されているので、自動的に透明度にもマッピングされました。
次に動画、今回は JPEG の連番シーケンスを貼り付けてみましょう。
この時、ファイル名の名前の付け方に注意が必要です。
ファイル名.番号.拡張子 というようにします。
これ以外の場合、ファイル名を一括でリネームソフトを使います。 私は Namery を使っています。
イメージシーケンスの利用にチェックを入れます。
シーケンスデータではなく、AVI データを貼り付けるときには、ムービーテクスチャを使用します。
Mac の場合は、MOV データです。
ただし、シーケンスの方がビュー上で動作が重い反面、安定しています。
PSDファイルテクスチャは、レイヤーと各アトリビュートを関連付けることで、1つのファイルで複数のアトリビュートにマッピングすることが可能です。
2D ファイルテクスチャは、通常、投影、ステンシルと 3つのマッピング方法があります。
通常は、UV に従ってマッピングします。
投影は、その名の通り、投影によって、マッピングします。
投影のタイプも、平面や球面といったものから、カメラを使うものまで、複数あります。
ステンシルは、マスクやキーイングを使って、一部分を非表示にし、その部分にテクスチャをマッピングすることができます。
2Dテクスチャを通常でマッピングした場合、UVに従って、マッピングするので、その境界で連続性が途絶えてしまいます。
3D テクスチャでは、3D空間に投影されたものなので、このような問題が生じません。
ただし、オブジェクトをアニメーションさせる時に注意が必要です。
3D空間に投影されてものなので、テクスチャが追従しません。
単純に移動・回転・スケールだけなら、3D 配置ノードを子にして親子関係を構築すればOKですが、変形アニメーションの場合は、
ファイルテクスチャに変換する必要があります。
オブジェクトとマテリアルを選択して、ハイパーシェードの編集メニューから、ファイルテクスチャに変換 を実行します。
これで、変形しても、テクスチャが追従するようになりました。
環境テクチャは、シーンのオブジェクトの背景や、リフレクションマップとして使用します。
レイヤテクスチャは、テクスチャをレイヤー化することができます。
レイヤマテリアルと同じですが、レイヤマテリアルの場合、質感そのものをレイヤ化できるのに対して、レイヤテクスチャはテクスチャのみです。
従って、レンダリング時間もレイヤテクスチャの方が軽いです。
ユーティリティは、各種アトリビュートおよびテクスチャの機能拡張をするためのものです。
例えば、乗算を使えば、Photoshop の描画モードを乗算にするような効果を得ることができます。
入力1に、ランプを、中ボタンでドラック&ドロップ、 入力2に、大理石のテクスチャをドラック&ドロップします。
さらに、乗算除算ノードからマテリアルに中ボタンにドラックアンドドロップ、カラーに接続します。
もう慣れたかと思いますが、Maya は中ボタンでドラックアンドドロップすることが多いです。
これに反転ノードを付け加えれば、文字通り、反転させることができます。
ユーティリティを使って、テクスチャの機能拡張することは、基本的には、Photoshop のような画像編集ソフトでやっていることと同じです。
ただし、Photoshop のように直感的な操作とは異なり、色を数値として捉える数学的な思考が必要かもしれません。
また、これらユーティティは、テクスチャをコントロールするため、だけのものではありません。
ありとあらゆるアトリビュートをコントロールすることができます。
例えば、プラスマイナス平均ノードを使って、このオブジェクトを 、これら 2つのオブジェクトの中間座標に配置してみましょう。
座標は、XYZ の 3D情報なので、入力 3D の新規項目を 2つ追加します。
シェイプノードではなく、トランスフォームノードです。
コネクションエディタが立ち上げるので、translate と、先ほど追加した input 3D アトリビュートを接続します。
続いて、このオブジャクトの translate に接続します。
操作を平均にすると、2つのオブジェクトの中間地点に配置されます。
次は、サーフェス上でサンプリングされる各ポイントの情報を得ることができる、サンプラ情報を使ってみましょう。
facingRatio と、 2D 配置ノードの vCoord を接続します。
facingRatio は、サーフェス法線とビュー方向の間の角度、つまりカメラを向いている割合を 0 から 1 の間で変化する値を生成します。
そして、0 なら赤になり、1 に近づくにつれて青く染まっていきます。
この場合は、0.5 までは赤で、それ以上は、青です。
ビュー上では、インタラクティブに確認することはできません。
次は条件を使ってみましょう。
これは、Excel でいう if 関数と同じです。
第1項 と 第2項 が同等ならば、RGB 0,0,0 黒です。 違えば、RGB 1,1,1 白です。
色を変更してみます。
第1項 と 第2項 が同等ならば、RGB 0.0.1 青で、違えば、RGB 1,0,0 赤です。
では、サンプラ情報の Flipped Normal を 第1項のアトリビュートに接続してみましょう。
Filpped Normal は、サーフェス法線が反転しているかどうかを 1 と 0 で示します。
テクスチャを貼り付けることも可能です。
ユーティリティを使いこなせば、テクスチャの機能拡張のみならず、アニメーションでも応用することができます。
さらに、エクスプレッションやMEL を使えば、ユーティリティを使わずとも、さらに柔軟性に富んだ機能拡張をすることが可能です。
それでは、また会いましょう。 ありがとうございました。
コメント