Houdini20.5 review in CGWORLD vol.313
8/9発売のCGWORLD vol.313にHoudini20.5のレビュー記事を書かせていただきました。 CGWORLDページはこちら https://cgworld.jp/magazine/cgw313.html Houdini20.5 […]
Pythonには”リスト内包表記”なるものがあるそうな。初めて目にした時は、「なんじゃこのケッタイな書き方は!」と思ったものです。リスト内包表記をザックリ説明すると、『for分とかif分とか使って複数行必要だった処理が一行ですむよ。しかも処理が早いよ。でもちょっと読みづらいよ』っていう書き方でしょうか。ものの本によると、”リスト内包表記とは、あるリストを元にして別のリストを作るための記法のことです”、だそうです。ちょっとMayaのpyemlで普通の書き方と、それを内包表記で書いた例を作ってみました。選択したオブジェクトのうち、Meshのみをリストで返[...]
続きを読む
※ 注意 ※この記事のリグは失敗例です。記事のとおり作ると、記事の通り失敗します。それでもよいという天の邪鬼な方に向けておくる、"Mayaで作る車輪リグ考察(失敗編)最終目標はこういうヤツ↓簡単そうに見えて、意外と奥が深いのでは、と思いまして。作りたいのは、"進んだ分だけ正確に車輪が回るリグ"。”正確さ”が欲しいので、Expressionを使って計算させたいと思います。下絵のように、車輪の移動距離と円弧の部分が一致するような回転角を求めることができれば問題は解決するように思います。(下絵の赤い円周と青い距離の部分)では移動した[...]
続きを読む
Houdini回!VOP内でGroup化の方法を覚えたのでメモ代わりに。簡単なGroup化はwrangleで行う事が多いのだけれど、時々VOPでGroupを作りたいって時があったのです。Set Attribute(VOP)を使うと、Groupへのセットも出来るっぽいです。Set Attribute(VOP)のAttribute Classってとこに"Point Group"と"Primitive Group"ってのがあって、それ使うとPoint or PrimitiveのGroup作ったり格納したりできるそうな。ためしに、ノイズを閾値にしてPointのグルー[...]
続きを読む
Houdini python memo! ver 15.0.244.16 はじめにimport hou#/objに"geo1"という名前のgeoノードを作る。oGeo = hou.node('/obj').createNode('geo','geo1')#/obj/geo1を取得oNode = hou.node('/obj/geo1')#選択したノードを取得(配列で)oNodes = hou.selectedNodes()oNode = oNodes#使えるメソッド一覧dir(oNode)#メソッ[...]
続きを読む
Lightstorm3Dの無料ツールライブラリ「L3Library」にある機能の一つ、GeoLocatorが面白かったので備忘録も兼ねて。GeoLocatorという機能は、どうやらコンストレイン+追従の動きにノイズやDynamicsを加味するというものらしいです。試しに作ってみました。まず、インストール方からざっくりと。①サイトからL3Libraryをダウンロード。(※登録必要)②任意の場所にファイルを解凍。③Maya起動④ScriptEditorを起動しPythonタブに切り替え、↓のスクリプトをコピー&ペースト[...]
続きを読む
今回は3dsMaxです。3dsMaxの細胞マップとその周辺パラメータについて調べる機会があったので。備忘録もかねて。まず座標からソースマッピングの種類オブジェクトXYZ・・・オブジェクトのローカル座標。オブジェクトがアニメーションするけどデフォームしないならこれかなワールドXYZ・・・シーンのワールド座標でマッピング明示的マップチャネル・・・マップチャネルの有効。UVW座標を使うということかな。1~99の任意のチャネルを選択できるらしいが、つまり1~99までUVWマップが持てるということかな。頂点固有の[...]
続きを読む
今回は『mip_cameramap』のアトリビュートについて調べてみました。このノードはカメラから見たプロジェクションマップを実現するノード、とで言いましょうか。bent_normalの回ではmip_matteshadowと併用して、簡易背景を作るのに使ったりしました。せっかくなので、bent_normalで使ったシーンファイル↓を元に確認していきたいと思います。HyperShadeはこんな感じ↓cameramapを使ってHDR画像を貼り付け、mip_matteShadowで影をキャッチ、その結果をSurfaceShacerに渡すといったことをしてます。案外[...]
続きを読む
前回に引き続きHoudiniの破壊系のネタです。今回のネタは、徐々に壊れるシミュレーションです。これを書きたいがために前回のをやった!Houdiniのバージョンは14を使用しています。※ここで紹介する方法が唯一の解ではありません。Houdiniには沢山の別解があります。方法は人それぞれ。まずは基本的な破壊。前回、紹介した"voronoifracture"ノードと"RBD Fracture Object"を使って破壊のシミュレーションを作成します。こんな感じ。これに徐々に崩れる表現を追加していきます。球体の通ったあたりから崩れるようにしたい[...]
続きを読む
Houdini回。フレームとフレームの間の値が欲しい時があります。上の絵でいうと、1.57613…の小数点以下の部分、0.57613…ですね。この値があると、今、フレームとフレームの間のどのあたりかを知ることができます。この例だと、0.57613…なので、フレーム間のちょうど半分よりすこし次のフレーム寄りだということが分かります。フレーム間を補間するときに便利だったりします。この値をVOPで求めます。ネットワークはfloor(VOP)を使ってこう。floor(VOP)は入力されたFloat値に対して、小数点以下を切り捨てて整数値を返してくれま[...]
続きを読む
堅めのネタが続いたので、休憩がてら絵のネタを。写真を見ながら、そっくり絵を描いてみよう回。なので元にした写真があり、これは当方のオリジナルではありません。描いてみた結果、こうなりました↓案外、写真っぽくなったかなと。以下、過程です。写真を見ながら、ザックリ。?なんとなく、大きなパーツの色と位置を合わせる陰影&ディテールを追加しながらバランス調整?細部も描き込む?さらに細部をつめ、全体のバランス&色を調整せっかくなので、GIFで繋げてみました。先日参加したCGWカンファレンスのコンセプトアートセッションで、「写真そっくり[...]
続きを読む8/9発売のCGWORLD vol.313にHoudini20.5のレビュー記事を書かせていただきました。 CGWORLDページはこちら https://cgworld.jp/magazine/cgw313.html Houdini20.5 […]
