OctaneRender:OctaneRender Primeの基本操作
https://www.youtube.com/watch?v=_jiMK7_sjjU
Modoはバージョン17.0からGPUレンダラーOctaneのDCC用プラグインツールOctaneRender Primeが標準で搭載されるようになりました。このビデオではOctaneRender Primeの基本的な操作をご紹介します。
まずOctaneについてですが、Octaneは歴史あるGPUレンダラーであり、開発元はOTOY社です:
OctaneRenderはスタンドアロンでもありますし、各DCCツールに対応したプラグインもあります。GPUレンダーなんですが、OctaneRenderではCUDAテクノロジ搭載のNVIDIAビデオカードが必要になっています。ですので、AMDやIntelのGPUというのはご利用になれません。このため、Modo 17.0 Mac版についてはIntel版には対応しておらず、AppleSillicon版にのみ対応となっています:
またModoに搭載されているOctaneRender Primeにはいくつか制限が設けられています:
・1GPUのみ
・ネットワークレンダリング非対応
OctaneRender Primeは開発自体はOTOY社で行われていることもあり、詳細な設定方法などのテクニカルサポートはOTOY社の方へとお問い合わせいただくことになります。ただ、操作方法など大まかなところなど、本ビデオも含めてMJGでいくつか日本語解説ビデオをご用意する予定ですので、ぜひ参考にしていただければと思います。
さてOctaneRender Primeを使う前の準備としてまず、OTOY社でアカウントを作っていただく必要があります。アカウントの作成方法などに関しては下記FAQに掲載しておりますので、そちらの手順をご覧ください:
OctaneRender for Modo プラグイン(Modo 17)のセットアップ
では実際にModoでOctaneRenderを使ってみましょう。
Modoを開くと、OctaneRenderが使いやすいように、新たにOctaneRenderというレイアウトが用意されています。使いこなすうちに、レイアウトを変更したいと思われるかもしれませんが、カスタマイズは自由ですので、ぜひ自分が使いやすいレイアウトへと変更してみてください。
このレイアウトの右上がカメラビューのOpenGLビュー、左上がOctaneRenderのビュー、そして下半分にスケマティックビューが組まれています。OctaneRenderはノードベースでマテリアルを構築していきますので、スケマティックビューがレイアウトに組み込まれているのですが、ノードが複雑に組まれていくうちにスペースが足りなくなるかもしれません。そういった場合には、レイアウトメニュー > パレット > スケマティックでスケマティックビューを別ウィンドウとして出して、セカンダリモニタなどで表示させておくのも見やすいかと思います。
ではまずModoのマテリアルで組んだシーンを読み込んでみます。こちらはSketchFabで配布されていたドラゴンのモデルを使用しています:
“Garden dragon” (https://skfb.ly/o8Sox) by Lassi Kaukonen is licensed under Creative Commons Attribution (http://creativecommons.org/licenses/by/4.0/).
シェーダツリーで確認してみると、ディフューズの色、法線、ラフネスに対して画像マップが設定されているのが確認できます。このModoマテリアルのまま、Octaneでレンダリングしてみましょう。ビューポート上のプレイボタンをクリックするとレンダリングされるようになります。
ここでModogがクラッシュしてしまうという場合には、お使いのコンピュータでメモリが足りていない可能性があります。そういった場合には、お使いのマシンを再起動して、他にアプリなどを起動していない状態で、もう一度お試しください。
レンダリングしてみると、ModoマテリアルでもOctaneでレンダリングされるのが確認できます。まだOctaneでのマテリアル設定を一切行っていないにも関わらずです。これはなぜ可能なのかというと、シェーダツリーで設定しているModoマテリアルのうち、いくつか基本的なプロパティに関しては、リアルタイムにOctane側で対応するプロパティへと変更することで、Octaneでのレンダリングをサポートしています。具体的にどのプロパティがサポートされているのかという点については、Octaneメニュー > オンラインマニュアルを開くと、Octaneヘルプ > Material > Modo Materialsに記載されていますので、こちらを参照するようにしてください。
このようにして、ある程度Modoで設定したマテリアルというのがOctaneでレンダリングされますが、すべてのOctaneの機能を使うということであれば、当然Octaneマテリアルが必要になってきます。Octaneでのマテリアル設定は、いちから行う必要はありません。変換したいModoのマテリアルを選択している状態で、OctaneメニューのOctaneオーバーライドを追加をクリックします。
そうするとマテリアルグループの中にOctaneロゴが付いたアイテムが追加され、スケマティックビューには自動的にOctaneのマテリアルが接続されているのが確認できます。このようにOctaneオーバーライドが追加されると、対応するOctane用のマテリアルノードが自動的に接続された状態で展開されるようになりますので、ここからさらにOctaneのマテリアル設定をスケマティックビュー上で行っていくことになります。
大まかに言うと、最終的なOctaneノードに対して、OctaneのOctane Overrideに入力することで、Octaneマテリアルでのレンダリングが行えるようになります。
今回のように標準的なModoマテリアルをOctaneに変換すると、Glossyマテリアルに変換されます。元々のModoマテリアルで設定されていたDiffuse、Normal、Roughnessの設定が、それぞれGlossyマテリアルの対応するプロパティに接続されているのがわかります。このように、ある程度Modoマテリアルでの設定というのが、Octaneマテリアルへと変換されたときに引き継がれますので、いちから全部自分で設定を行う必要はなく、ある程度の段階から設定を進めていくことが可能です。
現在Diffuse、Normal、Roughnessに画像ノードが接続されているのがわかりますが、この効果を確認したい場合、Modoのシェーダツリーであれば各エフェクトの目玉アイコンをクリックすることでオンオフを切り替えることができました。Octaneの場合はノードをソロ化というボタンがありますので、この機能を使うことで、選択しているノードの効果を単一に表示させることで、確認することが可能です。いろいろな画像を読み込みすぎて、どの画像だったかという効果がわからなくなった場合には、ソロ化ボタンで確認するようにしてください。
Octaneには様々なマテリアルがあって、今回変換されたGlossyマテリアルの他にも、様々なマテリアルが用意されています。New Materialボタンをクリックすると、それぞれ用途に応じて、光沢があるGlossy、拡散モデルとなるDiffuse、金属を表すメタリック、ガラスや液体といった透明な質感を表現するスペキュラなど、いろいろなマテリアルが用意されています。各マテリアルの詳細については、Octaneヘルプ > Materials > Octane Materialsにそれぞれ記載されていますが、各ページを見るとマテリアルのサンプルとなるサムネイルが掲載されていますので、一目でどんなマテリアルなのかを把握できるかと思います。
ModoマテリアルをOctaneオーバーライドに変換すると、今回の場合は自動的にGlossyマテリアルへと変換されましたが、これを別のマテリアルへと変換することも可能です。例えば、ブロンズのような金属の質感へと設定しなおしたいとなった場合には、変換元となるGlossyマテリアルを選択した状態で、Metallicへ変換ボタンをクリックします。そうすると、一気に質感が変わりました。
マテリアルノードを見てみると、GlossyマテリアルからMetallicノードへと変換されています。ただ、その状態であってもGlossyノードで接続されていたDiffuse、Normal、Roughnessの接続は維持されています。この状態だと接続されているはずのDiffuseの色、画像の状態というのは確認できませんが、MetallicマテリアルのSpecular Mapの値を0にすると、スペキュラの効果が消え、接続されているDiffuseが確認できるかと思います。このSpecular Mapはスペキュラの割合を表していますので、例えば値を0.5ぐらいに変えていくと、接続されているDiffuseの効果がうっすらと重ねることができるようになります。
ここではSpecular Colorが指定されていませんので、この金属の色を指定する方法を解説していきます。Diffuse Colorとして存在しているRGB ImageノードをSpecular Colorノードに接続してもよいですが、今回は新たに色指定用のノードの設定を行ってみましょう。
色を指定するには色指定用のテクスチャノードを追加設定します。New Textureボタンをクリックしてみると、様々なテクスチャノードが用意されています。Modoでチェックやマーブル、ドットといったプロシージャルテクスチャが存在したように、Octaneでも同様のプロシージャルテクスチャも用意されています。画像を追加する場合には、画像用のテクスチャノードを追加します。今回の場合は単純に色を指定するだけなので、RGB Colorノードを追加します。単純に追加したテクスチャノードを、後から目当てのプロパティへと接続してもよいですし、今回の場合Specular Colorに接続したいというのがわかっていますので、先にSpecular Colorを選択している状態でRGB Colorノードを追加すると、追加したノードが自動的に接続された状態で追加されます。ここで色を変えると金属の色が変わっていきます。効果がわかりずらいようであれば、いったんラフネスの接続は解除してみるとよいかもしれません。今回のモデルでは違いが分かりづらいかと思いますが、反射モデルとしてBRDF Modelに複数の選択肢が用意されています。お好みの反射の具合をお使いのモデルで試してみてください。
ここまではMetallicでしたが、次にSpecularへと変換してみます。Specularはガラスや液体など透明なマテリアルを表現します。今回変換してみたらすりガラスのような曇った感じになっています。これは先ほどと同様、マテリアルを変換したときに以前の接続をできるだけ維持したまま変換するため、ラフネスの設定が聞いているからです。ラフネスの設定を外すと、より透過度の高いマテリアルとなります。
ただ変換前のマテリアルからの接続をできるだけ維持するとは言っても、よく見てみるとDiffuseの接続が解除されています。これは変換先のSpecularマテリアルにはそもそもDiffuseのプロパティがないために、接続先がないため、解除された状態になっています。
OctaneはGPUレンダーで非常に高速ですから、Modoマテリアルだと時間がかかるような屈折率の変更なども、そのフィードバックが高速に行われます。
Specular Materialには透過に関するいくつものプロパティというのが用意されていますが、Modoの透過表現にはないThin Wallというプロパティは厚みのない透過を表現します。通常は中身の詰まったソリッドな状態ですが、Thin Wallだとペラペラの薄い透過状態を表現することが可能になります。
またDispersion Coefficientは光の分散係数を表していますので、こちらも面白い表現が可能になります。
サブサーフェイススキャッタリングまたは色のついたグラスなどの表現は、Specular MaterialにあるMediumでコントロールします。Mediumを選択した状態で、New Mediumボタンをクリックし、今回はAbsorption Mediumを使用してみます。Absorptionとは光のの吸収を表します。Absorptionに接続されているRGB Colorで色を設定し、Densityで密度の値を調整することで、ガラスの色や濃さを表現することが可能です。
このように基本的にModoのマテリアルからOctaneのマテリアルを使う際には、GlossyやMetallic、Specularなどの設定を行うことになります。
ここまで基本的なところを説明してきましたが、マテリアルを変換したり、またノードを追加したり、解除したりを繰り返すうちに、不必要なノードが増えてくるかと思います。そういった場合には、未使用のノードボタンをクリックすることで、スケマティックビューをきれいに整理することができますので、こまめに整頓するようにしてください。
またこのOctaneマテリアルはアセンブリとしてまとめられています。スケマティックをオーバービューで見てみると、ドラゴンモデルのOctaneマテリアルのノードが一つのアセンブリとしてまとめられています。例えばもう一つ別のマテリアルに対してOctaneオーバーライドを追加してみると、それ用のアセンブリが別で追加されるようになります。このようにそれぞれが異なるアセンブリとして管理されるようになりますので、混乱することもありません。