今回はMayaでカメラデプスを出力する方法を紹介したいと思います。
前回、Write To Depth Bufferを使ってカメラデプスを出力する方法を紹介したのですが、こちらは使えないと説明いたしました。
MayaのMentalray shaderの中には使えない駄作があるという結論でした。
今回は本当に前回とは違い使えるネタですので、是非覚えるとよいかと思います。
というよりも、知らないと終わっているというくらい重要な内容ですので注意してください。
今回は初心者のためにカメラデプスって何?という疑問にも言及することにします。
カメラデプスとは以下のようなものです。
つまり、白と黒の濃淡で表示される画像です。白はハッキリ鮮明、黒はボヤケルという意味です。
絵を描くときに遠くのものは輪郭がボケる、近くのものは輪郭がハッキリするということを、白黒の画像であらわしているわけです。
では、Mayaから出力してみましょう。
以下のような部屋のシーンがあります。
デプスを出力しなければ以下の結果のようにすべてのエッジが鮮明な画像ができあがります。
この状態でも良いのですが、試しにカメラデプスを使ってみましょう。
この方法はMaya2009以降の方法です。それ以前のバージョンの方は、この記事の続きに方法を記載します。
以下方法1
1、まず、一番簡単な出力の仕方から説明します。
レンダー設定パネルを開きましょう。
そして以下のボタンをクリック。
2、カメラデプスを選択して、作成して閉じるボタンを押しましょう。
3、以下のボタンをクリックしましょう。
4、depthという文字が下の項目に移りました。
これでOKです。バッチレンダリングしましょう。
以下の位置に保存されます。
確認しましょう。
以上の方法で出力できました。
しかし・・・しかしです。
ごく稀に真っ黒の画像が出力されることがあります。
なので、もっと安定した方法を学んでおきましょう。
以下方法2
右下にあるレンダーレイヤーパネルを確認しましょう。
1、Masterlayerを右クリックしてレイヤー内のオブジェクトを選択を実行します。
すべてのオブジェクトが自動的に選択されます。
すべてハイライトされて選択された状態になります。
2、以下のボタンをクリック
新しいレンダーレイヤーが追加されます。
3、名前を変更しましょう。
4、複製したレンダーレイヤーを右クリックしてアトリビュートを選択しましょう。
5、プリセットから輝度デプスを選択しましょう。
6、自動的にレンダーレイヤー内にあるすべてのオブジェクトにサーフェイスシェイダーが割り当てられます。
出力カラーが自動的にコネクトされています。確認しましょう。
7、setRangeというノードが自動的にコネクトされています。
以下の黄色い部分、古い最小、古い最大を右クリックしてロックを解除しましょう。
数字を右クリック。
真っ白な画面に変更されました。
理由は後で考えるとして次の作業に移りましょう。
8、ディスプレイメニューからヘッドアップディスプレイ>オブジェクトの詳細にチェックをいれましょう。
9、カメラからの距離に注目しましょう。
この数字は選択したオブジェクトとカメラとの距離を表示してくれます。
10、これを古い最小(ピントを合わせたいオブジェクトの距離)、古い最大(一番遠いオブジェクトの距離)に入力しましょう。
画面の濃淡が上手くグラデーションになるような数値を「カメラからの距離」をヒントに探しましょう。
これで完成です。
バッチレンダリングする前に以下を確認しましょう。
レンダリングマークが緑色になっていることを確認しましょう。赤の場合はそのレンダーレイヤーはレンダリングされません。
それではバッチレンダリング。
もしくはプレビューレンダーでもOK。
最後にシェーダーのコネクションを確認しましょう。
以下参考程度にとばしていただいて結構です。
万が一できない場合の最終手段です。
もし、不意にできない場合はプリセットを使わずに自分でコネクションを作成しましょう。
それほど複雑ではありません。
以下のシェーダーをすべてのオブジェクトに割り当れば同じ事なのです。
Sampler Info 余計なところをいじる必要はありません。
Sampler Info からMultiple Dvideへは以下のようにコネクトします。
ポイントカメラZ→入力1X
Multiple DivideからSetRangeへは以下のようにコネクト。
出力X→値X
SetRangeからSurface_shaderへは以下のようにコネクト。
出力値X→出力カラーR、出力カラーG、出力カラーB
モーションブラー、カメラデプスと微妙なようでとても大切な事をお話してきました。
動いているのにボケない。遠くにあるものなのに鮮明という不自然さは克服しましょう。
次の作業へ移ります。
以下Photoshopでの合成作業を紹介します。
PhotoshopはバージョンCS3を使用しています。
1、まずMasterlayerの画像とCameraDepthの画像を開きましょう。
2、MasterlayerのアルファチャンネルにCameraDepthをコピーペーストしましょう。
3、フィルタのぼかし、ぼかし(レンズ)を実行しましょう。
半径やぼかしの焦点距離などを調整してピントを手前に合わせましょう。
以上です。
その他に単に描画モードの乗算によってデプスを表現する方法もあります。
補足ですが、デプスを簡単に作成してくれるAfterEffectsの高性能なプラグインがあるようです。
アニメーションさせる際にも、かなり力強い感じがします。おすすめですね。
Lenscareというプラグインです。
http://www.flashbackj.com/lenscare/index.html
価格は2万円ほどとお高いのですが、非常に便利な感じがします。ほしいですね。
スタジオ ヒエイ提供 (Studio Hiei Presents)
スタジオ ヒエイのFacebookページ
できれば、「いいね」をよろしくお願いいたします。
前回、Write To Depth Bufferを使ってカメラデプスを出力する方法を紹介したのですが、こちらは使えないと説明いたしました。
MayaのMentalray shaderの中には使えない駄作があるという結論でした。
今回は本当に前回とは違い使えるネタですので、是非覚えるとよいかと思います。
というよりも、知らないと終わっているというくらい重要な内容ですので注意してください。
今回は初心者のためにカメラデプスって何?という疑問にも言及することにします。
カメラデプスとは以下のようなものです。
つまり、白と黒の濃淡で表示される画像です。白はハッキリ鮮明、黒はボヤケルという意味です。
絵を描くときに遠くのものは輪郭がボケる、近くのものは輪郭がハッキリするということを、白黒の画像であらわしているわけです。
では、Mayaから出力してみましょう。
以下のような部屋のシーンがあります。
デプスを出力しなければ以下の結果のようにすべてのエッジが鮮明な画像ができあがります。
この状態でも良いのですが、試しにカメラデプスを使ってみましょう。
この方法はMaya2009以降の方法です。それ以前のバージョンの方は、この記事の続きに方法を記載します。
以下方法1
1、まず、一番簡単な出力の仕方から説明します。
レンダー設定パネルを開きましょう。
そして以下のボタンをクリック。
2、カメラデプスを選択して、作成して閉じるボタンを押しましょう。
3、以下のボタンをクリックしましょう。
4、depthという文字が下の項目に移りました。
これでOKです。バッチレンダリングしましょう。
以下の位置に保存されます。
確認しましょう。
以上の方法で出力できました。
しかし・・・しかしです。
ごく稀に真っ黒の画像が出力されることがあります。
なので、もっと安定した方法を学んでおきましょう。
以下方法2
右下にあるレンダーレイヤーパネルを確認しましょう。
1、Masterlayerを右クリックしてレイヤー内のオブジェクトを選択を実行します。
すべてのオブジェクトが自動的に選択されます。
すべてハイライトされて選択された状態になります。
2、以下のボタンをクリック
新しいレンダーレイヤーが追加されます。
3、名前を変更しましょう。
4、複製したレンダーレイヤーを右クリックしてアトリビュートを選択しましょう。
5、プリセットから輝度デプスを選択しましょう。
6、自動的にレンダーレイヤー内にあるすべてのオブジェクトにサーフェイスシェイダーが割り当てられます。
出力カラーが自動的にコネクトされています。確認しましょう。
7、setRangeというノードが自動的にコネクトされています。
以下の黄色い部分、古い最小、古い最大を右クリックしてロックを解除しましょう。
数字を右クリック。
真っ白な画面に変更されました。
理由は後で考えるとして次の作業に移りましょう。
8、ディスプレイメニューからヘッドアップディスプレイ>オブジェクトの詳細にチェックをいれましょう。
9、カメラからの距離に注目しましょう。
この数字は選択したオブジェクトとカメラとの距離を表示してくれます。
10、これを古い最小(ピントを合わせたいオブジェクトの距離)、古い最大(一番遠いオブジェクトの距離)に入力しましょう。
画面の濃淡が上手くグラデーションになるような数値を「カメラからの距離」をヒントに探しましょう。
これで完成です。
バッチレンダリングする前に以下を確認しましょう。
レンダリングマークが緑色になっていることを確認しましょう。赤の場合はそのレンダーレイヤーはレンダリングされません。
それではバッチレンダリング。
もしくはプレビューレンダーでもOK。
最後にシェーダーのコネクションを確認しましょう。
以下参考程度にとばしていただいて結構です。
万が一できない場合の最終手段です。
もし、不意にできない場合はプリセットを使わずに自分でコネクションを作成しましょう。
それほど複雑ではありません。
以下のシェーダーをすべてのオブジェクトに割り当れば同じ事なのです。
Sampler Info 余計なところをいじる必要はありません。
Sampler Info からMultiple Dvideへは以下のようにコネクトします。
ポイントカメラZ→入力1X
Multiple DivideからSetRangeへは以下のようにコネクト。
出力X→値X
SetRangeからSurface_shaderへは以下のようにコネクト。
出力値X→出力カラーR、出力カラーG、出力カラーB
モーションブラー、カメラデプスと微妙なようでとても大切な事をお話してきました。
動いているのにボケない。遠くにあるものなのに鮮明という不自然さは克服しましょう。
次の作業へ移ります。
以下Photoshopでの合成作業を紹介します。
PhotoshopはバージョンCS3を使用しています。
1、まずMasterlayerの画像とCameraDepthの画像を開きましょう。
2、MasterlayerのアルファチャンネルにCameraDepthをコピーペーストしましょう。
3、フィルタのぼかし、ぼかし(レンズ)を実行しましょう。
半径やぼかしの焦点距離などを調整してピントを手前に合わせましょう。
以上です。
その他に単に描画モードの乗算によってデプスを表現する方法もあります。
補足ですが、デプスを簡単に作成してくれるAfterEffectsの高性能なプラグインがあるようです。
アニメーションさせる際にも、かなり力強い感じがします。おすすめですね。
Lenscareというプラグインです。
http://www.flashbackj.com/lenscare/index.html
価格は2万円ほどとお高いのですが、非常に便利な感じがします。ほしいですね。
スタジオ ヒエイ提供 (Studio Hiei Presents)
スタジオ ヒエイのFacebookページ
できれば、「いいね」をよろしくお願いいたします。