今回は、簡単な破壊エフェクトについて手順も踏まえて書いてみようと思います。最終的にこういうのを作ります。出来るヒトは見なくてよろしwここでは事前にジオメトリを破片に分割して、それをシミュレーションするという手順で進めたいと思います。ざっくり書くと、1:ボロノイ分割での破片の作成2:RBD Fractureでシミュレーションです。 1:破片の作成まず、破壊したいオブジェクトを細かい破片に分割します。ここではboxを破片に分割しています。(Houdiniに限らず)破片の分割には、ボロノイという分割方法を使うのが一般[...]
read more
がんばって書いたHoudini入門書、「Houdini ビジュアルエフェクトの教科書」が現在発売中です。そこで宣伝も兼ねて、どんな内容か紹介したいと思います。この本はタイトル通り、Houdiniのエフェクトについて学習する事を目的とした本です。上のは、本書で作る作例の動画になります。(収録してある作例この倍くらいかな?)こういうのを作りながら、Hoduiniを学習します。内容は大きくわけて、9つのチャプターから構成されています。それぞれエフェクトの種類や機能ごとに、主題にそった内容を学習出来るようになっています。各チャプターにはチュートリアル形式の作[...]
read more
Houdini回。今回はこういうヤツ。パーティクルに板を貼り付けたもので、マテリアルとテクスチャ連番画像は共通。テクスチャのシーケンス番号に対する値をパーティクルごと個別に設定しています。簡単にできるとおもってたら思いの外手間取ってしまって。いくつか試して、最終的にinline Code(VOP)を使う方法に落ち着きました。inline Code(VEX)はVOP内でVEXが書けるノードです。このノードの詳しい解説はまたの機会に回すとして、やってる事はシェーダー側でのテクスチャパスの作成です。シェーダー側で使うテクスチャのフレーム番号は、事前にPri[...]
read more
toxikノード解説回です。今回は"Merge Streams"と"Extract Streams"の2つです。セットで使うことが多いと思うのであわせて解説です。Streamsとは、処理ラインとでもいいましょうか。複数の素材で、まとめて同じ処理をしたい場合、"Merge Streamsノード"を使うことで一旦ひとまとめにすることができます。処理後に再び素材をバラバラに分けるとき、"Extract Streamsノード"を使います。どんな時にこのノードを使うかと言うと、たとえば立体視の映像で右目用と左目用の画像をカラコレする際に、一旦"Merge Stream[...]
read more
今回から数回に分けて『user_ibl_env』 と『user_ibl_rect』の二つのノードにスポットを当ててみようと思います。どちらもMaya2013で新たに追加されたノードです。これら「user_ibl」ノードはひとことで言うと、「FinalGatherを使わずに環境光をエミュレートするノード」でしょうか。『user_ibl』のiblはImage Based Lightingの略だそうです。『user_ibl_env』ノード、機能としては以前とりあげた、『mib_bent_normal_env』ノードに似てるかなと。1回目の今回は『user_ibl_en[...]
read more
toxikノード解説回です。ニーズが少ないのはわかってるんですけどねwtoxikのめぼしいノードを一通りさらったら、Nukeもと考えとるんでご勘弁を。今回は、Freeze Frame。これ、一言でいうとスナップショットを撮るノードです。一時的なもので保存はされないらしい。ファイル開いてるときだけ有効。Proxy Scales・・・一時保存するプロキシの解像度。1/1、1/2、1/4、1/8の4種類。デフォルトは全部。プロキシについてはいずれ。Stream・・・保存するStream。デフォルトはすべて。Streamに[...]
read more
カッコつけて英語のタイトルにしちゃったw日本語だと、「HoudiniからMayaへAlembicデータを受け渡す」、です。MayaからHoudiniにabcデータを渡すことはよくあるけど、その逆も時々あるので。HoudiniからMayaにAlembicデータを渡す際、デフォルトだと、~.abc is not a valid Alembic fileとエラーメッセージが出て困ったので、その対処法。ちなみに、Houdiniのバージョンは13、Mayaは2014です。Houdini側からの書き出しにはROP Alembic Outputノードを使う。[...]
read more
Advent Calendarの17日目に参加です。ボリュームを捻じ曲げる方法です。H19で追加されたVolume Deformer(SOP)を使わない、VOPを使った方法です。そのうち書こうと思ってたらHoudiniの進化で過去の遺物になってしまったかもしれないネタ。Volumeを変形させる方法はいろいろありますが、ここでは私が良く使うVolume Sample(VOP)を用いた方法をシンプルな例を用いて紹介します。SampleFile・・・VolumeDeformSample.hiplc使用バージョンはHoudini19.0431VOPで煙を捻じる[...]
read more
前回に引き続き、『mib_amb_occlusion』のパラメータについてです。残りは"id_inclexcl"と"id_nonself"。どちらもIDによって、オクルージョン効果を管理するパラメータです。オブジェクトに”miLabel”というアトリビュートを追加することで、使うことができます。(いちいちアトリビュートを作らなきゃいけないのが面倒だけど。Mayaはこういうのほんと多い。中にはマニュアルに記載されていないのとかもあったりして・・・ブツブツ)では、引き続きパラメータを見ていきます。id_inclexclIDと一致するmiLabelアトリビ[...]
read moreここのところノードの話ばかりだったので、今日はScriptの話にしてみました。次のようなスクリプトを作ってみました。以前、Twitterでちょこっとツイートしたのですが、下の絵のように、2Dドット絵から3Dのドット風絵に変換するスクリプトです。(あくまで、ドットをCubeに置き換えるだけで、凸凹させるのはできません。あしからず)試しにレンダリングすると・・・もっとつくってみた。調子に乗って、さらに作ってみた。ピクセルってたら彼かな、と。えーと、スクリプトね。画像を制御するモジュールとしてPIL(Python Imagein[...]
read more