Houdini:ForLoop and TimeShift
Houdini勉強回。取り上げるのはForループとTimeShift(SOP)。 ここで言うForループとは、Block Begin/End(SOP)ノードによる繰り返し処理のことを指しています。 これとTimeShift(SOP)の併用に […]
Houdini回。個人的に「おっ!?」となったネタ。Polygon→VDB→Polygonでメッシュ化したトポロジ違いのジオメトリになんとなくオリジナルのUVを転送する方法。破壊で重宝しそうと思って。オリジナルこれのUVをトポロジ違いのジオメトリに転送していく。ふつうにAttribute Transfer(SOP)で転送これをVDB from PolygonとConvert VDB使ってトポロジを変更し、Attribute TransferでUVを転送すると、UVがつながったままでぐじゃっとなる。(Convert VDBのTransfer Surface A[...]
続きを読む
Advent Calendarの17日目に参加です。ボリュームを捻じ曲げる方法です。H19で追加されたVolume Deformer(SOP)を使わない、VOPを使った方法です。そのうち書こうと思ってたらHoudiniの進化で過去の遺物になってしまったかもしれないネタ。Volumeを変形させる方法はいろいろありますが、ここでは私が良く使うVolume Sample(VOP)を用いた方法をシンプルな例を用いて紹介します。SampleFile・・・VolumeDeformSample.hiplc使用バージョンはHoudini19.0431VOPで煙を捻じる[...]
続きを読む
Houdini回。Cloth系です。忘れては調べてを繰り返すので備忘録も兼ねて。Clothの一部分をターゲットオブジェクトの動きに完全に拘束する。オブジェクトに"pintoanimation"というPointアトリビュートを持たせることで、そのポイントをターゲットポイントに完全拘束出来る。この"pintoanimation"という名前がなぜだか私は覚えられない!ここでは布に見立てたグリッドを用意。ポイントアトリビュートpintoanimationを作り、布のはじっこは値1、それ以外は0にしている。ここでは暫定的にpintoanimation=1に赤、0に[...]
続きを読む
Houdini勉強回。今回はSpare Inputについて。"Spare Input"とは、ざっくり言うと「ノード参照のための追加パラメータ」です。たしか、Houdini16くらいから付いた機能だったかと思います。使い方"Spare Input"は次のようにして作成、使用します。例として、Spare Inputを使用してジオメトリの下にグリッドを配置します。あらかじめシーン内にGrid(SOP)とTestGeometry(ぶた)を用意いておきます。Spare Inputを使用して、TestGeometry(ぶた)のジオメトリ情報を取得[...]
続きを読む
Houdini勉強回。取り上げるのはForループとTimeShift(SOP)。ここで言うForループとは、Block Begin/End(SOP)ノードによる繰り返し処理のことを指しています。これとTimeShift(SOP)の併用についてがメインテーマです。上図のように、Forループ内にTimeShift(SOP)を組み込んだ場合、大抵TimeShift(SOP)が機能しないのですが、まれに機能している例を見かけ、はて?と思いリサーチしてみた次第です。結論から述べると、現状Forループ内でTimeShift(SOP)が機能するのは、以下の2パターンのみ。[...]
続きを読む
toxikノード解説回です。今回はノードです。Inputで入ってきた絵をsRGBカラースペースにコンバートしてOutputするノードです。リニアワークフローで作成した場合、よく使うノードではないでしょうか。パラメータは次の2つ。Output Depth画像のビット数。8bit8bitイメージ。0~255まで。最終的には8bitで出力することが多いのでは。16Bit(float)16bit浮動小数点。OpenEXR形式で使えるヤツ。絵の綺麗さと容量のコストパフォーマンスが一番いいのでは[...]
続きを読む
Houdini勉強回。サードパーティレンダラのRedshiftでVolume Fogをレンダリングする方法。こんな感じのヤツです。以前投稿したUrbanのレンダリングで使ったのですが、その際、設定の仕方が分からなかったので、備忘録も兼ねて書きます。ライトオブジェクトとレンダラの両方設定する必要があります。Step1: RS Lightを作成するLight TypeをここではSpotにしています。あと、パラメータLightタブの下の方にあるVolumeカテゴリにあるContribution Scaleの値を1に変更します。Volumeにライトの影響を与[...]
続きを読む
最近MotionBuilderのスクリプトを書くのですが、日本語の資料も少なく調べるのに手間取ったので、備忘録もかねてメモの一部公開します。確認環境はMotionBuilder2013です。MotionBuilderでPythonを書き始める際のとっかかりになれば幸いです。名前からオブジェクトを取得for i in FBSystem().Scene.Components: oObj = FBFindModelByName("Cube") print oObj.Name選択をクリア[...]
続きを読む
Houdini回。フレームとフレームの間の値が欲しい時があります。上の絵でいうと、1.57613…の小数点以下の部分、0.57613…ですね。この値があると、今、フレームとフレームの間のどのあたりかを知ることができます。この例だと、0.57613…なので、フレーム間のちょうど半分よりすこし次のフレーム寄りだということが分かります。フレーム間を補間するときに便利だったりします。この値をVOPで求めます。ネットワークはfloor(VOP)を使ってこう。floor(VOP)は入力されたFloat値に対して、小数点以下を切り捨てて整数値を返してくれま[...]
続きを読む
Nuke article.長い尺のカットで、3フレーム飛ばしとか、5フレーム飛ばしとかで再生したい場合があった。Readノードのframeパラメータに次のようなエクスプレッションで対応した。この場合は5フレーム飛ばし。ceil(frame/5)*5割り算して、小数点切り上げて、掛け算して、って感じ。ceilのかわりに、floorでもいいはず。もっと別な方法があったような気がするけど、分からなかったので、これで。もやもや。[...]
続きを読むHoudini勉強回。取り上げるのはForループとTimeShift(SOP)。 ここで言うForループとは、Block Begin/End(SOP)ノードによる繰り返し処理のことを指しています。 これとTimeShift(SOP)の併用に […]