Houdini:ForLoop and TimeShift
Houdini勉強回。取り上げるのはForループとTimeShift(SOP)。 ここで言うForループとは、Block Begin/End(SOP)ノードによる繰り返し処理のことを指しています。 これとTimeShift(SOP)の併用に […]
Houdini回。ノイズ系VEXの続き。(以前、調べたのはTurblent Noise)Worley Noiseいわゆるセルノイズ。各種セルノイズの基本になるっぽい。派生があるっぽいので、ちゃんと調べる。HoudiniのWorley(VEX)は出力がいっぱいある。dist1~dist4までそれぞれ結果が違う。このdistは一体何なのか?その前に、Worleyノイズとはどういうノイズなのか?調べた。むずかしそうなこと色々書いてあったが、要約すると以下のようなものと理解した。あちこちに評価ポイントをばらまいて、近い評価ポイントまで[...]
続きを読むHoudiniで川のシミュレーションやってみました。Base10,000,000 Points(Compress)WhiteWater20,000,000 Points(whitout Bubble)fluidcompressのおかげで以前よりずいぶんデータ容量削減できて、ありがたや。WhiteWaterのキャッシュは相変わらず重い。全部入りだと2Tのハードディスク使いきっちゃったのでBubbleなし。600フレ計算させてキャッシュは300Gくらいでした。おうちマシンで一週間くらい放置して計[...]
続きを読むブログでプログラムのコードを綺麗に表示する方法を覚えたので、今回はそっち系です。再帰関数を使用して、複雑な親子階層からオブジェクトのみ取得するMayaのスクリプトを書いてみました。親を選択してこのスクリプトを実行すると、親以下すべての階層を検索してMeshのリストを作成します。ちなみにpymelです。#再帰関数使ってMeshのみを取得import pymel.core as pm#再帰関数def getMeshList(Node, MeshList): #選択したノードの子供をリストで返す children = Node.ge[...]
続きを読むTwitterで流れてたgifが面白かったので、Houdiniでマネして作ってみた。2つの形状をブレンドして、変形の際にJiggleを適応したもの。Jiggleについてはこっちの記事でサンプルファイルをアップしています。反省点としては、作り方とネットワークが力技だったなぁ、と。形状大きさ間隔速度に依存しないスマートな作り方ができたはずだ、と。いずれリベンジを、と。[...]
続きを読むHoudini回ですぜ、旦那!今回はrippleです。こういうヤツ。波紋っぽいのを作るます、はい。ネットワークはこんな感じ。パーティクルと連携させていっぱい波紋を作ってみた。また、Ripple objectノードの”Use Deforming Rest”を有効にして、上ネットワーク例のメタボールを動かすと、こうなる。以上、文字少なめ、絵多めでおおくりしました。間違い等ありましたら、ご指摘を。では、また次回。使用バージョン:Houdini13[...]
続きを読むみなさん、Houdiniの日本語フォーラムがあることはご存じでしょうか?https://www.sidefx.com/forum/71/Houdiniで分からないことがあれば、そこに日本語で書けば誰かが答えてくれますよ、きっと。何か作っててうまくいかない等の場合、シーンファイルを添付して質問すると、的確なアドバイスを頂けるのではないでしょうか。フォーラムは最初の投稿時のみ、SideFX側に承認していただく必要があり、反映にすこし時間がかかるそうです。くりかえします。Houdiniで誰かにアドバイスをもらいたいときは[...]
続きを読む久々更新Houdini回。マニュアル読んでて、ちょっとおもしろいなと思ったので。なんでもビューポートに働きかけるDetailアトリビュートがあるそうな。まず、gl_wireframe。float型のアトリビュートで、0以外の値の場合、そのオブジェクトはシーンビューで常にワイヤーフレーム表示になるそうな。やってみた。単純な球体にwrangleでgl_wireframeというDetailアトリビュートを追加。すると、シーンビューがシェーディング表示になっていても、そのオブジェクトはワイヤーフレーム表示になる。へ~もうひ[...]
続きを読むtoxikノード解説回です。今回は"Merge Streams"と"Extract Streams"の2つです。セットで使うことが多いと思うのであわせて解説です。Streamsとは、処理ラインとでもいいましょうか。複数の素材で、まとめて同じ処理をしたい場合、"Merge Streamsノード"を使うことで一旦ひとまとめにすることができます。処理後に再び素材をバラバラに分けるとき、"Extract Streamsノード"を使います。どんな時にこのノードを使うかと言うと、たとえば立体視の映像で右目用と左目用の画像をカラコレする際に、一旦"Merge Stream[...]
続きを読むPythonには”リスト内包表記”なるものがあるそうな。初めて目にした時は、「なんじゃこのケッタイな書き方は!」と思ったものです。リスト内包表記をザックリ説明すると、『for分とかif分とか使って複数行必要だった処理が一行ですむよ。しかも処理が早いよ。でもちょっと読みづらいよ』っていう書き方でしょうか。ものの本によると、”リスト内包表記とは、あるリストを元にして別のリストを作るための記法のことです”、だそうです。ちょっとMayaのpyemlで普通の書き方と、それを内包表記で書いた例を作ってみました。選択したオブジェクトのうち、Meshのみをリストで返[...]
続きを読むHoudini回。最近知ったこと。SOP階層で、複数のノードのアウトプットを選択してAlt押しながらドラッグすると、Merge(SOP)が作られる。最近のバージョン更新内容だった気がするけど、あらためて「へ~」って思ったので。以上!これだけ。[...]
続きを読むHoudini勉強回。取り上げるのはForループとTimeShift(SOP)。 ここで言うForループとは、Block Begin/End(SOP)ノードによる繰り返し処理のことを指しています。 これとTimeShift(SOP)の併用に […]