年末に投稿したWhale Jumpの作り方メモ
このWhale JumpはHoudiniちょっと詳しい人向けかも。
はじめに
REBELWAYのWater FXのトレイラーを見て似たシチュエーションで作ったものです。
受講したわけじゃないので内容は(たぶん)だいぶ違います。オリジナルのがかなり良いですね。
Water FX in Houdini | Pro Online Course (Extended BTS Trailer) - YouTube
良くなかったところ
・FLIPのStick on Collisionオフにしたままだった
・White Waterにコリジョン忘れた
・Ocean Spectrumのスケール感調整したい
・Displacementのマスクの良い出し方思いつかなかった
・もっと霧みたいなWhite Water飛ばしたい
・船揺らしたかったからGuide Ocean使ったけど後処理的にめんどくさい
・各種コンプ用マスクがぱかぱかしがち
・WhiteWaterのEnbale Density Controlの代替え処理をsprayにもいれてしまった
良かったところ
・TOPでの一括シミュレーション〜レンダリング
・LOPでのレンダリング
・White Waterの前後処理
・White WaterとFLIP Meshの境界線
・キャッシュのとり方
・FLIPの相互作用時の注意箇所
・Edge Maskはかなり使えたので安定 / 高速化させたい
使用アセット
Whale
Boat
Old Rowing Boat - Buy Royalty Free 3D model by Kingy (@kingy) [5834328] - Sketchfab Store
HDRI
Kloofendal 48d Partly Cloudy HDRI • Poly Haven
hip
アセットは当然含まれていません。
このhipを使用して何かあった際にこちらは一切責任を取りません。
whaleJump_gd.hiplc - Google ドライブ
Houdini 19.0.472
アセット整理
購入アセットはFBXだったり、Houdiniへの読み込み後にシェーダーやテクスチャが外れることが多いので整理します。
特にスケールは気をつけて調整します。
既にアニメーションしているものの場合は位置や速度なども調整します。
コリジョンキャッシュ
船とクジラはRBD/Staticで読み込むのでメッシュとSDFをキャッシュします。
テクスチャのカラースペース
見逃しがちなのはテクスチャのカラースペースです。ここもしっかり直します。
直しつつもちょっと色調整したい場合は同時に調整したものを書き出して使用します。
OCIO設定しているの前提です。
HDRIの編集
テクスチャと同じでカラースペースは直しつつ、下半分を調整します。
デフォルトのままだと海の下から光が透けてきます。(わざと明るくするのも全然OK)
Clip to Positive Y Hemisphereでもいいですが、パキっと黒で別れてしまうので使ってないです。
遠景メッシュ
どんな方法でもいいので遠景用となるメッシュを作成します。
カメラ外はある程度余裕をもたせて削除します。ギリギリすぎると光が透過します。
Camera Frustumで切るのが良いです。デフォの機能でも作れますが、めんどくさいので事前に作っておくか、qLib等を使用しましょう。
レンダリングに使用するのでExtrude Volumeで押し出したメッシュも用意します。薄いと透けすぎる場合があるのである程度厚みをもたせます。
Ocean Spectrum
海面の波模様を作成
波の位置となるポイントをScatterでばらまきます。
大抵の場合カメラから見るとポイントが少なかったりするのでそういう場合は手でポイントを追加して調整します。
Addノードが確実に1ポイントずつ追加して動かせるので好きです。
追加したポイントを何分割かに分岐して異なるOcean Spectrumにつなぎます。
こうすることで均一感を減らせます。
Ocean Spectrumの設定はヘルプ見ながら実際に調整したほうがわかりやすいです。
特に大事なのは以下2つ
Resolution Exponent:解像度(上げるとディテールでる代わりに重い)
Grid Size:波自体の大きさ
レンダリングする前にOcean Evaluateを使用してカメラから必ずFlipbookを取ります。この時点でリピート感や動きが気になれば直しましょう。
この際のメッシュはそこそこの範囲とそこそこの解像度で大丈夫です。