モジュロ演算子でフォーマット変換 for python
備忘録をかねて。 pythonはモジュロ演算子(%)を使って文字列へのフォーマット操作ができます。 型変換だけならstr()等でキャストでもいいのですが、桁揃えとかもやってくれるので極力こっちを使うようにしています。 でも、すぐ忘れます。 […]
Houdiniでシミュレーションすると、すぐメモリが足りなくなります。そんな時の対処方法のひとつ。DOP Networkノードのパラメータ"Cache Simulation"をOFF!これでシミュレーション時にキャッシュデータを保持しなくなります。ここでいうキャッシュデータとは、タイムラインで青とか橙色であらわされるデータです。DOP Networkノードのパラメータ"Cache Simulation"をOFFにすると、このキャッシュデータが作られなくなるのでタイムライン上でマウスをぐりぐりしても、現在のフレーム以外シミュレーション結果を確認でき[...]
続きを読む今回は、ワイヤーフレームでレンダリングする方法です。こういうのを出力したいのです。主にメイキング作成時によく使います。それ以外での使い道が果たしてあるのか!?ワイヤーフレームを出力するには、wireframeノードを使います(名前そのままですね)ここでは標準のCrayマテリアルにWireframeノードの要素を追加するかたちで使用しています。以下、マテリアルのネットワークです。こんな感じです。wireframeノード単体でもラインの色調整は出きるのですが、そのままだと黒地白ラインなので、rampノード使って反転し白地黒ラインにしてます。(もしくはco[...]
続きを読むHoudini勉強回。最近知った関数。makebasis()以下、マニュアルのURLhttps://www.sidefx.com/docs/houdini/vex/functions/makebasis.htmlマニュアル曰く、"指定したzaxisベクトルから正規直交基底を作成して、xaxisとyaxisの基底ベクトルを構成"、するらしい。なんのこっちゃ。その機能を意訳すると、あるベクトルに直行するベクトルを2つ作ってくれる関数。例えば、{1,0,0}に対してmakebasis関数を使うと、{0,1,0}, {0,0,1}の2つのベクトル[...]
続きを読むtoxikノード解説の回です。今回は もっともよく使うノードの一つです。その名の通り、二つの素材を合成します。入力は次の4つ●Front・・・前面のImage●Back・・・後面のImage●Matte・・・Front Imageのアルファチャンネル用Matte●Mask・・・Blend&Compノードの影響範囲のマスク Detail Areaのプロパティ Front GainFrontにコネクトされたImageのRGBごとの係数。デフォルトで100%。右のオレンジ色のボタンを押すと個別[...]
続きを読むHoudiniで川のシミュレーションやってみました。Base10,000,000 Points(Compress)WhiteWater20,000,000 Points(whitout Bubble)fluidcompressのおかげで以前よりずいぶんデータ容量削減できて、ありがたや。WhiteWaterのキャッシュは相変わらず重い。全部入りだと2Tのハードディスク使いきっちゃったのでBubbleなし。600フレ計算させてキャッシュは300Gくらいでした。おうちマシンで一週間くらい放置して計[...]
続きを読むHoudini:Eplosion WIPオーソドックスに爆発キノコ作ってみました。Houdini Previewこのくらいになりました。ウチのマシンだと、このあたりでメモリ使いきっちゃいました。これ以上のボクセル数はシミュレーション分割しなきゃメモリ不足じゃ。パスは少なめです。[...]
続きを読む若干、いまさら感のあるDifferential Curve Growthです。日本語だと・・・なんでしたっけ?Differential Growth系は手法が沢山あるのですが、今回はその中で最も簡単でシンプルな、Relax(SOP)とSolver(SOP)を使う方法を採用しました。めんどくさい処理は全部Relax SOPがやってくれます。わたし好み。いずれ、Differential Growthについてまとめたいなと思っているので、詳細はその時にでも。と、思いましたが、Entagma先生が解説されてましたね。そちら載せときます。他の処理で、少し手[...]
続きを読むまたHoudini回ですぜ、旦那!今回はこういうの。ラインをうにょ~んって伸ばします。使用するのはCurveノードとCarveノード。名前が似てて紛らわしいです。Curveノードはカーブを作るのノードで、Carveノードはスライスするノード。この二つを使うと、成長するラインが作れると。ノードの接続はこんな感じでシンプル。Carveノードのパラメータをアニメートさせると、うにょ~んとなります。シンプル故に、いろいろ使い勝手がよさそう。てな感じで今回はここまで。次回はこれを活用したレシピです!ではまた!(バージョンはH[...]
続きを読むHoudiniノード勉強回。Labs UV Transfer(SOP)UVの転送。以前これについての記事を書いたが、それのすごい版!トポロジが異るジオメトリに対して、いい感じにUVを転送してくれる。ひとまずVDBを介して低解像度ポリゴンを生成して、UVを転送してみるとその制度が分かる。中身をざっと確認してみると、手法的には以前書いた記事の中の、XYZ Distanceを使う手法と基本は同じで、UVのアイランド毎にUV転送を行っています。あとプラスアルファとしてUVの境界部の処理が付いている感じでしょうか。いつのまにこんな便利ノードが、と思うくらい[...]
続きを読むまたHoudini回。デフォーム系ノードのコネクションが、いつまでたっても覚えられないので。Cloth Capture / Deform低解像度のClothジオメトリを使って高解像度のジオメトリを動かすのに使う。作例のネットワークは以下の通り。Cloth Capture(SOP)とCloth Deform(SOP)のコンボ。Cloth Capture(SOP)で高解像度ジオメトリにCloth Captureアトリビュートを付与し、Cloth Deform(SOP)でそれを使って実際の変形を行う。そんな感じ。Wire Cap[...]
続きを読む備忘録をかねて。 pythonはモジュロ演算子(%)を使って文字列へのフォーマット操作ができます。 型変換だけならstr()等でキャストでもいいのですが、桁揃えとかもやってくれるので極力こっちを使うようにしています。 でも、すぐ忘れます。 […]
今回は『mip_matteshadow』について調べていこうと思います。 このノード、仕事であまり使ったことないんですよね。 そのためか、ちらほら分からない所があります。 さて『mip_matteshadow』ノードですが、マニュアル的には […]
再びオクルージョンネタと言うことで、今度は『mib_fg_occlusion』ノードについて調べてみました。 以前に書いた、『mib_amb_occlusion』同様、オクルージョン系のノードです。 Mentalrayはオクルージョンひとつ […]
今回は備忘録二本立てです。 一つめはmip_shaderを有効にするMelコマンド mentalrayCustomNodeClass.melを変更するのは面倒なので、こちら↑を使うことが多いです。 いろんなサイトで紹介されていますが、自分い […]
今回は「Z用マテリアルがどうしても必要。でも作るの面倒だ。」そんなときに役立つ方法です。 古いバージョンのMayaでは、レンダレイヤーから右クリックでオクルージョンとかZデプスとか、プリセットで選べたのだが、いつ頃からかそれがなくなってしま […]
今回はMayaでのmentalray proxyの方法について書いてみました。 自分これ何回やっても忘れてしまって・・・歳のせい? ①:プロキシ化したいオブジェクトを選んで、[File]→[Export Selction…] ② […]