MotionBuilder:Pythonコマンド
最近MotionBuilderのスクリプトを書くのですが、日本語の資料も少なく調べるのに手間取ったので、備忘録もかねてメモの一部公開します。 確認環境はMotionBuilder2013です。 MotionBuilderでPythonを書き […]
Houdini回。前回に引き続き、Fog Rayを作る方法、別解!普通にVolume使ってもFog Ray作れるのでは、と思ってやってみた。アルファめちゃ薄いけど、っぽいものは出来たかなと。以下、手順をStep by Stepで。1:スポットライトを作成する。Fog Rayの光源ですね。基本、この光に照らされた範囲がFog Rayになります。2:Volume(SOP)でFogを作成するFogRayを作りたい領域にFogを作成する。ここでは、安直にVolume(SOP)を使った。普通にBox型でも良いですが、ライ[...]
続きを読む
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つのベクトル[...]
続きを読む
Houdini回。ノイズ系VEXの続き。Curl Noise & Curl Noise 2Dいろいろなところで名前が登場するCurl Noise。マニュアル読んでもよく分からぬから調べた。https://www.cgarts.or.jp/report/rep_kr/rep0201.html#p3要するに、「流体っぽいノイズが生成できてオブジェクトとの干渉も可能らしい」、と。なんか、よさそげ。特に、オブジェクトとの干渉を考慮できるっぽいあたりが。やってみた。下はVelocityを可視化したものです。たしかに干渉してるっぽい。[...]
続きを読む
前回に引き続き、内積についてです。前回は内積を使って角度を知る方法についてでしたが、今回はベクトルの大きさについてです。内積を上手に使うと、任意のベクトルが別のベクトルに落とす影の大きさを知ることができるのです。・・・なんのこっちゃですかね。初回のトロッコの例で、斜めに押す力(ベクトルa)の中にトロッコを動かす力(ベクトルb)がどれだけ含まれているかを求めました。cosを使って|a|cosθでしたね。この|a|cosθの値を知りたい時にも内積が使える、そういうことです。内積の定義式は、|a||b|cosθでしたね。ここで、ベクトル[...]
続きを読む
Houdini回です。以前、煙でパーティクルを動かすってのをやりましたが、今回はそれの別解です。前の記事の時は、POP Advect by Volumeノードを使ってパーティクルを動かしました。同様の事を、VDB使って出来るっぽいです。VDB Advect Points(SOP)というノードがあって、これを使うとVDBでポイントを動かすことが出来るようです。キーワードはSOPとVDBです。VDB Advect Pointsつかってポイントを動かす部分のネットワークはこんな感じになりました。fieldをVDBに変換したら、Velフィールドがxy[...]
続きを読む
Houdiniノード勉強回。今回はVOPのfor Loop系。vopでのfor loop処理がHoudini15から新しくなって、分からなくて困ったのです。「なんじゃこりゃ」、「どうやって使うんじゃ」と思って調べたやつ。・・・・・・前回同様、VimeoのMaster Class見ながら勉強したんですけどねwVOP内でLoop処理は、Block Begin系ノードとBlock End系ノードをペアで使用することで実現するようです。Loopの種類に応じて、使用するノードや組み合わせが微妙に違います。VOP Network内でtabメニュー[...]
続きを読む
今回はプログラム系、特にユーザーインターフェース周りのお話です。 ここでは、Python & QtDesigner & Pysideを使った作例をば。最近の3DCG系ソフトはだいたいPythonをサポートしているので、多少の違いはあれど、どのソフトでも応用がきくのではなかろうかと思いまして書きました。ただしあくまでCG屋が書くプログラムなので、そこのところあしからず。いくつかある作例の中の一つとして捉えていただければ。流れは下のようになります。①:Qt DesignerでUI作成↓②:PySideに変換↓③:コードを好きにいじる[...]
続きを読む
Houdiniで水の表現を模索中wポイント数はおよそ63,000,000。↓画像のように画面のほとんどを水で埋め尽くしました。というのも、FLIP SolverのFeedbackという機能を使いたかったからです。このFeedbackってのを使うと、RBD Object(ここではオレンジ)に水の浮力(密度の差?)の影響を与えることができるそうです。今回は水中でのオレンジの落下減速を再現したくて使ってみました。(最終的にアップした映像にはスローモーションの演出を加えてしまったため、あまり効果を感じられませんでしたがw)Feedback Scaleの値[...]
続きを読む
Houdini回。Camera Viewにコメントを付けられるのを覚えた。下図のようなコメントが付けられる。時々見かけるけど、皆どやってんのかと思ったけど、やっと分かったので備忘録もかねて。カメラに"Edit Parameter Interface"でパラメータを追加する。Render PropertiesにViewport Comment(vcomment)ってのがあるので、それを追加する。そのままだと1行コメントなので、Parameter DescriptionのMulti-line Stringを有効にして複数行コメントを可能にしとく。[...]
続きを読む
なんてことだ。記事を消してしまったようだ。なので、もう一度書き直します。Mayaのpymelでアトリビュートを調べる際はlistAttr()をつかい、メソッドを調べる際は、dir()を使う。import pymel.core as pmoObj = pm.polyCylinder(n="Cylinder", r=5, h=1,sz=1)print "アトリビュートのリスト↓"print pm.listAttr(oObj)print "使えるメソッド↓"print [...]
続きを読む最近MotionBuilderのスクリプトを書くのですが、日本語の資料も少なく調べるのに手間取ったので、備忘録もかねてメモの一部公開します。 確認環境はMotionBuilder2013です。 MotionBuilderでPythonを書き […]