Houdini:テクスチャ連番を個別にオフセットする
Houdini回。今回はこういうヤツ。 パーティクルに板を貼り付けたもので、マテリアルとテクスチャ連番画像は共通。 テクスチャのシーケンス番号に対する値をパーティクルごと個別に設定しています。 簡単にできるとおもってたら思いの外手間取ってし […]
Houdini回。VEXです。今回は、評価ポイントからN番目に近いポイントを取得する方法です。評価ポイントから2番目に近いポイントや、5番目に近いポイントを取得するってことです。以前、Noiseについて調べた時の副産物だったりします。N番目の前に、もっとも近いポイントの探し方から。これはnearpoint(VEX)を使うことでわかる。もっとも近いポイントの番号を教えてくれます。下のは、それを使ってWorleyノイズを作ってるとこ。ではN番目に近いポイントを取得するにはどうすればよいのか。PointCloudOpen(VEX)とPoint Cl[...]
続きを読む
今回は、シミュレーションを途中から再開する方法です。これを使えば、エラー等でシミュレーションが止まった場合でも、最初からやり直しせずにすみます。途中からシミュレーションをするには、”シミュレーションキャッシュ”というものが必要です。DOP Networkノードに設定項目があります。1:シミュレーションキャッシュを有効にするDOP Networkにある、"Cache Simulation"を有効にします。2:シミュレーションキャッシュを保存する。"Save Checkpoints"を有効にします。"Checkpoint File"でシミュレーション[...]
続きを読む
Houdini勉強回。今回はSpare Inputについて。"Spare Input"とは、ざっくり言うと「ノード参照のための追加パラメータ」です。たしか、Houdini16くらいから付いた機能だったかと思います。使い方"Spare Input"は次のようにして作成、使用します。例として、Spare Inputを使用してジオメトリの下にグリッドを配置します。あらかじめシーン内にGrid(SOP)とTestGeometry(ぶた)を用意いておきます。Spare Inputを使用して、TestGeometry(ぶた)のジオメトリ情報を取得[...]
続きを読む
Lightstorm3Dの無料ツールライブラリ「L3Library」にある機能の一つ、GeoLocatorが面白かったので備忘録も兼ねて。GeoLocatorという機能は、どうやらコンストレイン+追従の動きにノイズやDynamicsを加味するというものらしいです。試しに作ってみました。まず、インストール方からざっくりと。①サイトからL3Libraryをダウンロード。(※登録必要)②任意の場所にファイルを解凍。③Maya起動④ScriptEditorを起動しPythonタブに切り替え、↓のスクリプトをコピー&ペースト[...]
続きを読む
HoudiniのPythonメモ。書き方とかじゃないですよー!バージョンはHoudini15.0.244.16。Python shellの起動!「window」- >「Python Shell」 or 「Alt + Shift + P」コマンドラインっぽいヤツ。1行ずつ書く。Python Source Editor現行のHoudiniセッションからコール出来るクラス、関数、変数を定義出来る。hipファイル依存でpythonを書けるってことかな。[...]
続きを読む
数学回です。今回から、数回に分けて「内積」について書こうと思います。が、その前に!= 注意 =この記事には三角関数やら数式やらが頻出します。 「三角関数は医者に止められてる」、というような方は読むのをお控えください。また、一連の記事は、「内積がなんとなく分かった気になれて、3DCGで応用できそう」くらいを想定しています。 数学として内積について深く掘り下げたものではありません。玄人はサポート対象外です。また、間違い等を見つけましたら、こっそりお知らせください。 おおっぴらに間違いを指摘されると、恥ずかしさで管理人が泣きます。[...]
続きを読む
備忘録をかねて。pythonはモジュロ演算子(%)を使って文字列へのフォーマット操作ができます。型変換だけならstr()等でキャストでもいいのですが、桁揃えとかもやってくれるので極力こっちを使うようにしています。でも、すぐ忘れます。使い方はシンプルi=123print "Hellow World %d" % i#結果#Hellow World 123上の例では、%dの部分が123で置き換えられています。ここで使っている%dは「整数値と入れ替えますよ」の意味。複数を置換する場合は、下のように書きます。[...]
続きを読む
夜な夜なこんなのを作ってました。作業画面はこんな感じです。元ネタはこちら。サクッと作れて面白かったです。以下余談。最近、レンダリングにはKarmaのXPUレンダリングを使っているのですが、非常に早くていいですね。このくらいなら、Full HDサイズでも1枚30秒くらいで終わるので、おうちマシン使っても計240フレームが2時間くらいで吐き出されます。Mantraなら1枚3~5分くらい、Redshiftでも1枚1~2分くらいかかっていたイメージなので、ずいぶん早くなったなと。この手のテクノロジー進化は、時間節約になるので非常に有難いですね。[...]
続きを読む
ブログでプログラムのコードを綺麗に表示する方法を覚えたので、今回はそっち系です。再帰関数を使用して、複雑な親子階層からオブジェクトのみ取得するMayaのスクリプトを書いてみました。親を選択してこのスクリプトを実行すると、親以下すべての階層を検索してMeshのリストを作成します。ちなみにpymelです。#再帰関数使ってMeshのみを取得import pymel.core as pm#再帰関数def getMeshList(Node, MeshList): #選択したノードの子供をリストで返す children = Node.ge[...]
続きを読むHoudini回。今回はこういうヤツ。 パーティクルに板を貼り付けたもので、マテリアルとテクスチャ連番画像は共通。 テクスチャのシーケンス番号に対する値をパーティクルごと個別に設定しています。 簡単にできるとおもってたら思いの外手間取ってし […]
Houdini Tips回。 煙作成時「Gas Resize Fluid Dynamic(DOP)」を使用した際、シミュレーション開始時に計算領域と発生源が重なっていないと上手くシミュレーション出来ない場合があります。今回はその回避法です。 […]


