今回はプログラム系、特にユーザーインターフェース周りのお話です。 ここでは、Python & QtDesigner & Pysideを使った作例をば。最近の3DCG系ソフトはだいたいPythonをサポートしているので、多少の違いはあれど、どのソフトでも応用がきくのではなかろうかと思いまして書きました。ただしあくまでCG屋が書くプログラムなので、そこのところあしからず。いくつかある作例の中の一つとして捉えていただければ。流れは下のようになります。①:Qt DesignerでUI作成↓②:PySideに変換↓③:コードを好きにいじる[...]
read more
Houdiniノード勉強回。今回は、"POP Proximity DOP"ノード。見たことあるけど使ったことないノード。Proximityとは日本語で「近接」を意味する言葉です。つまりPOP Proximity DOPはパーティクルの近接ポイントに関する情報を生成してくれるノードです。ほとんど使ったことないノードだったのですが実際に使ってみると、意外と有用なノードかもという印象。食わず嫌いはよくないなと。反省。こんな感じに、POPネットワークに組み込むと、nearest, nearestdist, numproximityといったアト[...]
read more
Houdini回ですぜ、旦那!今回はrippleです。こういうヤツ。波紋っぽいのを作るます、はい。ネットワークはこんな感じ。パーティクルと連携させていっぱい波紋を作ってみた。また、Ripple objectノードの”Use Deforming Rest”を有効にして、上ネットワーク例のメタボールを動かすと、こうなる。以上、文字少なめ、絵多めでおおくりしました。間違い等ありましたら、ご指摘を。では、また次回。使用バージョン:Houdini13[...]
read more
数学回です。今回から、数回に分けて「内積」について書こうと思います。が、その前に!= 注意 =この記事には三角関数やら数式やらが頻出します。 「三角関数は医者に止められてる」、というような方は読むのをお控えください。また、一連の記事は、「内積がなんとなく分かった気になれて、3DCGで応用できそう」くらいを想定しています。 数学として内積について深く掘り下げたものではありません。玄人はサポート対象外です。また、間違い等を見つけましたら、こっそりお知らせください。 おおっぴらに間違いを指摘されると、恥ずかしさで管理人が泣きます。[...]
read more
Houdini回。Mantra(ROP)とかArnold(ROP)とかにある、Pre-Render Scriptと"Switch"を組み合わせた活用例。作業時は軽いモデルで、レンダリング時やキャッシュ作成時は本番モデルでといった感じにSwitchノードで切り換えます。最近、仕事でちょっと話題に上がったので取り上げました。テストで次のようなシーンファイルを用意しました。シーンにはGeomtryがひとつ。中身はテストジオメトリがふたつ、Switch(SOP)につながっているだけです。また、レンダリング用に、mantra(ROP)がひとつあります。このmantra[...]
read more
うっす、Houdini回ッス。今回は、「続・影だけレンダリングする方法」っす。以前、影だけレンダリングする用のマテリアルを取り上げましたが、今回はその関連で、”特定のオブジェクトの影だけをレンダリングする方法”、です。上のようなシーンで影だけレンダリングするとこうなります。(地面にshadowmatteマテリアルを適応、キャラをPhantom)キャラの影だけ欲しいのですが、キャラの影以外にも地形のSelf Shadowが含まれてしまっています。この場合は、次のようにすると良いと思います。ライトのShadowの設定項目にある"Shadow Mask"を次のよう[...]
read more
Houdini Ver 15.0.244.16Blend Pose機能を覚えたのでメモや。この機能を使って、Mayaでいうところのドリブンキーをやってみたいと思います。こんな感じにSphereとBoxがある状態から始めてみました。Step1 : シェルフのModifyタブ -> Blend PoseシェルフのBlendPoseボタンを押した後、関連付けたいオブジェクトを選択します。最初にtargetオブジェクトを選択、次にdriverオブジェクトを選択。すると、Blen[...]
read more
Houdini勉強回。Python SOPに実行ボタンをつける。例として、ボタンを押すと`hogehoge`とメッセージウィンドウを表示するPython SOPを作ります。1:Python SOPを作る & Python Codeを記述するPython(SOP)を作成します。ここでは、簡単なメッセージを表示するPython関数にしました。def message(): hou.ui.displayMessage("hogehoge")2:ボタンを作るボタンを作ります。Edit Parameter[...]
read more
Houidini回ッス。Timeshift(SOP)とBlendshape(SOP)を使ったLoopアニメーションを作成するッス。もとは、こんなのッス。mountain(SOP)で動いてるッス。Loopさせたい尺分、TimeShift(SOP)でシフトさせて、BlendShape(SOP)で最初と最後をブレンドさせると動きがループするッス。そのままだと味気ないので、copy(SOP)でSphereを貼りつけたッス。ネットワークの全体はこんな感じッス。シンプルッス。[...]
read more
それでは前回に引き続き、『writeToColorBuffer』についてやっていきたいと思います。今回は主にAttributeについて調べていきます。ですが、そのまえに"writeToColorBuffer"ノードのデータの流れというものを見ていきたいと思います。データの流れるルートは2つ、Evaluation(評価部分)と、Data(パス出力部分)に分かれます。Evaluation(評価部)にデータが評価されると、colorで設定した情報がrenderPassに書き込まれるというイメージでしょうか。評価のモード(Evalutation Mode)にはの2種類あり。[...]
read more