モジュロ演算子でフォーマット変換 for python
備忘録をかねて。 pythonはモジュロ演算子(%)を使って文字列へのフォーマット操作ができます。 型変換だけならstr()等でキャストでもいいのですが、桁揃えとかもやってくれるので極力こっちを使うようにしています。 でも、すぐ忘れます。 […]
Houdiniでシミュレーションすると、すぐメモリが足りなくなります。そんな時の対処方法のひとつ。DOP Networkノードのパラメータ"Cache Simulation"をOFF!これでシミュレーション時にキャッシュデータを保持しなくなります。ここでいうキャッシュデータとは、タイムラインで青とか橙色であらわされるデータです。DOP Networkノードのパラメータ"Cache Simulation"をOFFにすると、このキャッシュデータが作られなくなるのでタイムライン上でマウスをぐりぐりしても、現在のフレーム以外シミュレーション結果を確認でき[...]
続きを読む
Houdiniノード勉強回。サンプルファイル->WedgeTOP_Sample.hiplcHoudini17.5から追加されたPDG。タスク管理やディペンデンシーを管理する機能です。まだ私もあまり、使いこなせてないのでメモも兼ねて書いてきます。Wedge(TOP)は、パターン出しとかをTOPで制御するときに使うやつで、Wedge(ROP)のTOP版。以下、使用例。Pyroのシミュレーション違いを5パターン、ローカルで作ってみます。こんな感じ。最初に、Wedgeの対象にTab Menuから"Pyro Configure Billowy Smo[...]
続きを読む
Houdini回。前回に引き続き、Fog Rayを作る方法、別解!普通にVolume使ってもFog Ray作れるのでは、と思ってやってみた。アルファめちゃ薄いけど、っぽいものは出来たかなと。以下、手順をStep by Stepで。1:スポットライトを作成する。Fog Rayの光源ですね。基本、この光に照らされた範囲がFog Rayになります。2:Volume(SOP)でFogを作成するFogRayを作りたい領域にFogを作成する。ここでは、安直にVolume(SOP)を使った。普通にBox型でも良いですが、ライ[...]
続きを読む
若干、いまさら感のあるDifferential Curve Growthです。日本語だと・・・なんでしたっけ?Differential Growth系は手法が沢山あるのですが、今回はその中で最も簡単でシンプルな、Relax(SOP)とSolver(SOP)を使う方法を採用しました。めんどくさい処理は全部Relax SOPがやってくれます。わたし好み。いずれ、Differential Growthについてまとめたいなと思っているので、詳細はその時にでも。と、思いましたが、Entagma先生が解説されてましたね。そちら載せときます。他の処理で、少し手[...]
続きを読む
Houdiniです。MaxだとFumeとKrakatoaを覚えたエフェクト屋が一度は手を出すという、アレに私も手を出しました。Houdiniの場合、プラグインなしで作れるのはありがたいですね。・・・重いけど。大きいサイズはVimeoでみてねw流体なのにシンメトリ!・・・・・・みたいな感じにしたかったんですけど、なかなか制御が難しいですねぇ。途中から、「シンメトリじゃなくていいか!」、という心境の変化が見て取れます。まだ、加減がよくわからず、パーティクルは沢山出してます。最終的にパーティクルは30,000,000強、発生させました。一回当たり3,000[...]
続きを読む
ネタに困ったときのオペレーション小技集 - その参!知ってても知らなくても困らない、そんな無害なTipです。 多角形ポリゴンを見つける面選択可能モードの状態で、Polygonsメニューから"All and Next" と "Nsided"にチェックを入れる。この段階で、多角形ポリゴンが選択されます。"All and Next"は「自動で選択しまっせ」、"Nsided"はN角形の意。この?は、他にもいろいろな条件で選択できるようです。詳しくはマニュアル参照。このTool名の"Constrains"は、フィルタリングみたいなニュアンスなのかな?[...]
続きを読む
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つのベクトル[...]
続きを読む
今度は『miss_fast_skin_maya』です。長くなる気がして避けてきたのですが、そろそろ向き合わねばならぬ時がきたか、と。検証にあたって以下のようなシーンを用意しました。Mayaは2012の英語版。ライトはエリアライトでオーソドックスな3点照明。unit単位はcm。比較に置いてある煙草は実寸サイズです。マテリアルの設定で意外にも大事なのはシーンのスケールだったりします。モデルを実寸で作るのか、それとも1/10 or 1/100で作るのかによって調整しなければならないパラメータがあるからです。上のシーンのドラゴンをレンダリングするとこんな感じにな[...]
続きを読む
Houdini、こんなノードがあったのか回!Enumerate(SOP)というノード。このノード、ポイント、またはプリミティブに連続したアトリビュートを作成してくれるノードだそうです。例えば、パラメータのGroup Typeを"Points"に変更、Attributeに"id"と記述して、任意のジオメトリにコネクトする。結果、ジオメトリを構成する各ポイントにidアトリビュートが作成され、0から順番に数字が割り当てられる。・・・へ~パラメータにはグループ指定の項目があり、特定のグループのみにidを割り当てることも出来る。まとめると、これはID的なアトリビュ[...]
続きを読む備忘録をかねて。 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…] ② […]




