[Houdini] とりあえずジオメトリをレンダリングするまで
Houdiniでは様々なレンダラを使用することができる。
ここでは標準搭載されている、Mantraを使った方法とKarmaを使った方法を記載する。
Mantraによるレンダリングの一例
ジオメトリ、カメラ、ライト、マテリアル、レンダラ(ROP)を作成/設定すればいい。
ジオメトリ
obj階層でGeometryノードを作成する。
SOP階層(Geometry内部)で好きなようにモデリングする。
出力したいノードにレンダーフラグを立てる(レンダーフラグが立っていない場合はディスプレイフラグが立っているノードがレンダリングされる)。
カメラ
obj階層でCameraノードを作成する。
カメラからの見え方をビューで確認したい場合は、シーンビュー右上のNo camをクリックし、任意のカメラを選ぶ
各種設定を行う。
移動と回転
鍵アイコンをONでビュー操作でカメラを操作できる
赤枠上からレンダリング解像度、透視投影/平行投影の切替、焦点距離、Near/Far、imagePlaneの設定
※Mantraノードでレンダリングに使用するカメラとして設定する必要がある。(後述)
ライト
obj階層でLightノードを作成する。
ライトのTypeやIntensityを設定する。
TypeはPointが点光源、Sunが一方向からの光源。
マテリアル
mat階層に移動する。
shaderを作成する。(Tabメニュー>Shaders>Principled Shaderが標準的なshader)
自由にノードをつなぐ。例えば、テクスチャノードをbaseColorにつなぐことができる。
obj階層に移動し、任意のgeometryノードのRenderタブで作成したMaterialを設定する。
レンダラ(ROP)
out階層に移動する。
TabメニューからMantraノードを作成する。
作成したカメラを設定する。
出力
Mantraノードで、レンダリング範囲を設定する。
項目名(Start/Edn/Inc)をクリックで数値表示と式表示を切り替え出来る。
式表示で$マークがついているのは変数で、意味は以下の通り。
変数名 | 説明 |
---|---|
$FSTART | (プレイバーで設定されている)最初のフレーム |
$FEND | (プレイバーで設定されている)最後のフレーム |
同じくMantraノードで出力先を設定する。(ファイル名と拡張子もここで決まる。)
$マークがついているのは変数で、意味は以下の通り。
変数名 | 説明 |
---|---|
$HIP | シーンファイルの存在するディレクトリ |
$HIPNAME | シーンファイル名(拡張子を含まない) |
$HIPFILE | シーンファイル名(拡張子含む) |
$OS | ノード名 |
$F4 | フレーム番号(数字は桁数) |
例: $HIP/images/XXX_col_$F4.png
Output Pictureの部分を中ボタンクリックで実際のパスが確認できる。
設定が完了したら、[Render to Disk]で出力。
Karma(Solaris)によるレンダリング
説明がない場合、以下の操作はStage階層に移動して行う。
ジオメトリ
SOP Importノードを作成し、ジオメトリを読み込む。
複数のジオメトリを読み込む場合は縦につなぐ。
カメラ・ライト
それぞれScene Import (Cameras)/**Scene Import (Lights)**を作成すると、obj階層で作成したカメラ/ライトを読むことが出来る。
(Cameras)ではカメラだけ読み込むようにFilterが設定されている。
ステージ階層上で、CameraノードやLightノードを作成することも可能。
いずれにせよ、縦に一本につないでいく。
※Karma Render Settingsノードで使用するカメラを設定する必要がある。(後述)
マテリアル
Material Libraryノードを作成する。
内部に入り、USD MaterialX Builderを作成すると、その中でMaterialXのシェーダを組むことができる。
Stage階層に戻り、Assign Materialノードを作成し、下につなぐ。
Geometry Spreadsheet(Scene Graph Path)の任意のsopimportとマテリアルをⅮ&ⅮでそれぞれAssign MaterialノードのPrimitivesとMaterial Pathに設定する。
マテリアルが複数ある場合は、Assign Materialノードのハット付きの+マークを押して項目を増やす。
レンダリングと出力
シーンビューの右上のperspをクリックし、Karma XPU(PCが対応していなければKarma CPU)に切り替えるとプレビューが行える。
TabメニューでKarmaを作成すると、Karma Render SettingsノードとUSD Render ROPノードが作成されるので、下につなぐ。
Karma Render Settingsノードで出力先、使用するカメラ、レンダリング解像度を設定する。
USD Render ROPノードでレンダリングするフレーム範囲を設定する。
USD Render ROPノードのRender to Diskでレンダリングできる。
Discussion