Houdiniで炎のレンダリング結果が違う

   4931   12   1
User Avatar
Member
4 posts
Joined: April 2021
Offline
HoudiniでPyroFxで炎のエフェクトを制作していました。
1通り作業は終わり、レンダリングをMplayでレンダリングし動画の連番の様子も
確認しそこまではよかったのですが、Render to disk でレンダリングし
EXR形式で連番レンダリングを行ったのですが、Media EncoderやAfter Effectで読み込むと
煙だけのようなものになっていて、Mplayでレンダリングした時とは全然違う結果となってしまいます。
Render viewでもしっかり炎は表示されるのですが、連番にするとダメになります。


それの対処法として行ったのは

・png形式でレンダリングしてみた → 結果変わらず。
・炎の奥にgridを背景として置いてみた → 炎はいい感じに表示されたが背景としてオブジェクトを置いているため、アルファチャンネルとしてレンダリングできない。

Houdini詳しい方、誰かご教授してもらえないでしょうか(;;)
Edited by mackey1683 - Feb. 27, 2022 00:02:22
User Avatar
Staff
335 posts
Joined: April 2015
Offline
EXR はデフォルトでは色情報をリニア空間で保存します。
詳細はこちらです。

https://www.sidefx.com/ja/docs/houdini/render/linear.html [www.sidefx.com]


Media Encoder や AfferEffects に詳しくないのでそちら側の設定がわかりませんが、ガンマの調整で出来るのではないでしょうか?
Edited by Ken Taki - Feb. 27, 2022 00:05:03
User Avatar
Member
4 posts
Joined: April 2021
Offline
なるほど!
Houdini初心者なのであまり分からないのですが、ガンマの調整というのは
具体的にどういった設定を加えればこの問題が解決する可能性が広がるのでしょうか?
レンダリングのmantraの設定ですか?
User Avatar
Staff
335 posts
Joined: April 2015
Offline
上記のリンクにあるように、EXR は基本リニア空間です。Adobe 製品や .png や .jpg などは、sRGB の空間で保存していると記憶しています。
ですので、リニア空間を sRGB に変換するツールがAfter Effects にあると思うのですが、ないでしょうか?
通常はガンマ値を変換するツールです。
Edited by Ken Taki - Feb. 27, 2022 03:17:01
User Avatar
Member
4 posts
Joined: April 2021
Offline
色々調べてAEの設定を変えてみたりしたのですがパッと解決できませんでした。
Houdiniのプロジェクトによってはこの問題が起きないこともあって何の設定もいじらずに正常にレンダリング表示されるものもあります。
これはどうしてでしょう。。
User Avatar
Staff
335 posts
Joined: April 2015
Offline
お使いのバージョンやシーンファイルを見ないと正確にはわかないですが、Houdini 19 からは OCIO の設定がデフォルトでオンになっているかもしれません。
ここにそれに近いことが書いてあります。

http://ikatnek.blogspot.com/2021/06/bonfire-and-ocio.html [ikatnek.blogspot.com]
User Avatar
Member
4 posts
Joined: April 2021
Offline
たくさんの情報ありがとうございます。
試してみましたが違う原因かと思われます。

そもそもEXRで書きだした結果が真っ暗ということもありますし
背景にGridを置けば炎の表示はされるということを考えると何かHoudini内のトラブルだとは思います。
(他のプロジェクトだとすんなりエフェクトが表示されアルファ情報もあり透過もできるため)
User Avatar
Member
41 posts
Joined: July 2013
Offline
確か、炎は加算やスクリーンで合成するのを前提で、デフォルトの設定ですとアルファは無しの状態でレンダリングされたはずです。
After Effectsで表示させるには、読み込んだ素材を右クリックしてフッテージの変換からアルファ無視にして読み込んでみてください。
背景にグリッドを置いた時と同じ見た目になると思いますが加算やスクリーンで合成する場合は問題ないかと…思います。
アルファが必要な場合は、シェーダー側で設定が必要です。
もしくはAfter Effects上でRGB値をアルファにするエフェクトをかければいける気がします。
Edited by Koya Masubuchi - March 2, 2022 00:16:11
User Avatar
Member
12 posts
Joined: Nov. 2020
Offline
初めまして

自分もmackey1683さんと同じような状況に陥ってます。
試しにシェルフなどから作成したものや、配布されているhipファイルの作品は問題なくレンダービューと同じレンダリング結果が得られているため、houdiniの問題ではなく、恐らく炎の作成過程上で発生している問題だと考えています。
User Avatar
Staff
20 posts
Joined: Feb. 2022
Offline
多くの場合、ソフト間でのレンダリング結果の相違はカラースペースやガンマ,アルファ等の取り扱いに起因しますが、それ以外となると文章のみからの推測は非常に困難です。
もしよろしければ、問題のhip,aep,exr,MPlayでのスクリーンショット等、またお使いのHoudiniのバージョン、マシンに関する情報など、可能な限り全てをご提供いただくことは可能でしょうか?
User Avatar
Member
12 posts
Joined: Nov. 2020
Offline
さつき先生様

初めまして。

twitterの投稿や記事など拝見しております。
私もmackey1683さんと同じような状況で困っています。自分で作成した炎をレンダリングしたファイルを開いても真っ暗な画面、または煙のようなものしか反映されていません。真っ黒にしたgridなどを背景にレンダリングするとビューと同じ結果が反映される状態です。
新規ファイルを作成し、炎もコピーなどせずに1からノードを組みなおし作成してもレンダリング結果は変わりません。
pyroConfigureBonfireなどデフォルトで呼び出せる炎や有志の方がアップされているhipファイルを開いた炎では上記の問題が起こらないので、作成過程における初歩的なミスだと思いますが、ご対応いただけますと幸いです。
シェーディングはPyroBakeVolumeSOPで行っています。

使用しているのはHoudini Apprentice ver.18.5.759です。マシンのスペックは下記になります。
OS:Windows10
CPU:11th Gen Intel(R) Core(TM) i9-11900K @ 3.50GHz 3.50 GHz
メモリ:64GB
GPU:NVIDIA RTX A4000

問題が起きているhipファイル2種とレンダービューのスクリーンショット、実際書き出したレンダリングのファイルを添付します。
お忙しいところ恐れ入りますが、ご確認の程よろしくお願い致します。

Attachments:
Houdini_question.zip (2.2 MB)

User Avatar
Staff
20 posts
Joined: Feb. 2022
Offline
Lesson_Fire.hipncを確認したところ、ピクセルの情報としては問題なくレンダリングできているようです。(適当にタイムラインを進めて、既に存在していたMantraで1フレームだけexr形式でレンダリングしました)
期待した表示が得られない原因はアルファの値が全て0になっていることのようです。
Aeで以下の操作をしたところ、MPlayと表示が一致しました。(pngで同様の操作をしましたが画像は期待した表示にはなりませんでした)

1: コンポジションパネルで右クリック->Interpret Footage(フッテージを変換)->Main(メイン)を選択する。
2: アルファから「Ignore(無視)」を選択する。
3: Color Management(カラーマネジメント)タブから「Preserve RGB(RGBを保持)」にチェックを入れる。
4: レンダリングした画像から新規コンポジションを作成し、調整レイヤー等にOpenColorIO等を適用し、お使いのディスプレイに合わせてカラースペースをコンバートする。

特に4に関しては、お使いの環境設定により多少操作がことなります。
私の環境の場合はACESを利用しているので、添付したexrは->とすれば問題なく表示できるはずです。
H18.5ということですので、ACESに関して特に何も設定していない場合は、ガンマを補正することで見た目が一致するかと思います。

炎のアルファに関して、H19でも同じ挙動を示しました。
詳しいことは直接開発者等に問い合わせないことにはなんとも言えませんが、炎に関するCe(Color Emission)の情報は発光を表しているため、簡単にはその不透明度を定義することは困難なのかもしれません。(本来は端的には光が通り抜けた割合が不透明度だが、そもそも物体でもなく発光もしているため)
実際、煙に関しては期待通りアルファが出力されます。

逆に炎を合成する際は(そもそも不透明度が0なので)加算するのが最も適切であるかと思います。(作業中のガンマ,色深度に応じてスクリーンが良い場合もあります)HoudiniのCompute Lighting VOPは非PBRモード時はCf(サーフェスカラー)にCeの値を加算するようです。

Attachments:
alpha settings in ae.zip (1022.4 KB)

User Avatar
Member
12 posts
Joined: Nov. 2020
Offline
さつき先生様

ご連絡いただいた方法で解決できました。また、NUKEでもHoudini内のレンダービューと同じルックで表示できました。
私もレンダリング時にOCIOを適用させてみましたが、ルックを一致させるだけでしたらNUKEのほうが楽かもしれません。(project settingでカラーマネジメントをOCIOにし、OCIO configでacesに合わせるだけ)
ただし、こちらもexr形式以外のもの(jpg、pngなど)ではルックが一致しませんでした。

お忙しい中ご対応いただきありがとうございました。
  • Quick Links