Houdini:Pre/Post Render ScriptとSwitch(SOP)
Houdini回。 Mantra(ROP)とかArnold(ROP)とかにある、Pre-Render Scriptと”Switch”を組み合わせた活用例。 作業時は軽いモデルで、レンダリング時やキャッシュ作成時は本番 […]
OPmenuというファイルを用いると、ノードの右クリックメニューを追加できる。以前書いたFBresと同様、Houdini起動時に、環境変数HOUDINI_PATHで指定されたパスにあるOPmenuファイルを参照します(たぶん)HOUDINI_PATHが設定されていなければ、$HOME/houdinixx.xを参照します(たぶん)(デフォルトだとHOUDINI_PATHは設定されてなかった気がします)($HOMEはwindowsの場合は、"C:\Users\<username>\Documents\"かな)参照先のパスに、OPmenuファイルがない[...]
続きを読む今回は"WriteToColorBuffer"ノードについて書くことにしました。MayaでPass出力する場合、避けては通れないノードですね。意外と長くなりそうなので、何回かに分けるつもりです。このノード、ひとことで言うと『自分で任意のカラーPassを作成することの出来るノード』です。各Attributeの説明はひとまず置いておくとして、実際の使い方を簡単にやってみたいと思います。例によってMayaは2012の英語版。サンプルシーンは下のようなもので、Materialはmia_material_x_passesに環境マップをコネクトしただけのシンプルなものです。[...]
続きを読むHoudini Tips回。マニュアルを読んでいたら、DOPデータを参照する構文なるものがあることを知りました。ネットワークパス:名前(/データ名)例1 /obj/AutoDopNetwork:sphere_object1例2 /obj/dopnet1:pyro/densityこれつかうと、読み込み系のノードでDOPオブジェクトなりデータなりを読み込めるらしい。いろいろやってみた。Object Merge(SOP)でRBD Objectを読み込むObject Merge(SOP)でフィールドデータを読み込む[...]
続きを読むHoudini Python、ダイアログ系のサンプル。シェルフにでも張り付けてポチると出てくる・・・たぶんね。ポップアップメッセージhou.ui.displayMessage("hoge")テキストフィールド付きダイアログimport houDialog = hou.ui.readInput(message ="Text Field Dialog\n",title = "TextField Dialog",severity=hou.severityType.Warning,b[...]
続きを読むBackBurner使ってて、こんな↓表示になった場合に治るかもしれない対処法。INF @ # $ message missing: 1047 $ # @INF @ # $ message missing: 1050 $ # @INF @ # $ message missing: 1205 $ # @INF @ # $ message missing: 1135 $ # @上位バージョンをインストールし、その後下位バージョンをインストールし直した場合、このようなエラーが出るように思います。対処として、以下のパスにある"backburner"フォル[...]
続きを読むtoxikノード解説回です。今回はRetimeノード。toxik使ってみて、コイツできる!っておもったノードの一つがこのRetimeだったりします。このノードはAfterEffectsのタイムリマップのような効果が得られます。スローにしてみたり、倍速にしてみたり、使い方はいろいろです。Retimeノード使ってスローにしてみたのがこちら↓左がオリジナルスピード、右が半分のスピード。ではパラメータを確認していきます。パラメータの左部分には、補完方法に関する項目があります。補完方法は2つ。"Warp"と"Blend"。この2つの手法の違いに焦点を絞って解説[...]
続きを読む最近、めっきりHoudiniな人の管理人、今日もHoudini回です。使用バージョン:Houdini13今回は、Houdiniの選択の拡張方法をいくつか。まず、ビューポート上で選択を拡張する方法は、管理人が知ってるだけで2種類。A : 頂点やエッジ等を選択しての、”Shift + G”!B : 頂点やエッジ等を選択しての、コンポーネント?(頂点とかエッジとか)切り替え。(例、キーボードの2と3を交互とか)次に、ネットワークでノード使って拡張する方法。上記Bをネットワークで組んであげるます。コンポーネント?のコンバートには、groupノードを使いま[...]
続きを読む以前教えていただいたのに、毎回忘れて調べるのでここに書く。Orientをrotateに変換するVOPの場合orient(bind)を Rotate by Quaternionのquaternionに繋ぎ、qrotateのvecに何かしらのVectorデータを繋ぐ。qrotateにつなぐvectorは、上例の場合vec(0,1,0)としているが、例えば@Nにすれば結構、各ポイントでコントロール可。Wrangleの場合@N = qrotate(@orient, {0,1,0});2022/02/18追記これの活用例。サンプルファイ[...]
続きを読むネタに困ったときのMayaトリビア Channels Box内の表示桁数を変更する↓の赤枠のところの数値の事です。デフォルトは小数点以下3桁まで表示されます。これは、4桁目で四捨五入された値で、数値としては小数点以下4桁よりも小さい値もちゃんと持ってます。それを見るには、Channel Boxのメニューから小数点以下何桁まで表示するか聞かれるので、桁数を入力。小数点以下15桁まで表示可能。数値上は同じ値なのにView上をよく見るとずれてる、なんて時にこの桁数を増やしてみると意外な誤差を発見する・・・なんてこともあったりして。[...]
続きを読む今回は『mip_cameramap』のアトリビュートについて調べてみました。このノードはカメラから見たプロジェクションマップを実現するノード、とで言いましょうか。bent_normalの回ではmip_matteshadowと併用して、簡易背景を作るのに使ったりしました。せっかくなので、bent_normalで使ったシーンファイル↓を元に確認していきたいと思います。HyperShadeはこんな感じ↓cameramapを使ってHDR画像を貼り付け、mip_matteShadowで影をキャッチ、その結果をSurfaceShacerに渡すといったことをしてます。案外[...]
続きを読むHoudini回。 Mantra(ROP)とかArnold(ROP)とかにある、Pre-Render Scriptと”Switch”を組み合わせた活用例。 作業時は軽いモデルで、レンダリング時やキャッシュ作成時は本番 […]
こんな感じの複数枚で構成されたテクスチャを、Nukeで一枚の大きなテクスチャにする方法を教えてもらいました。 「ContactSheet」というノードを使えば、できるようです。 似た名前のノードに”Layer ContactSh […]
Houdiniノード勉強回。 Copy to Point(SOP)を取り上げます。 Houdini18でCopy to Point2.0として新しくなったノードのひとつです。 これを使うことで、ポイントごとに異なるジオメトリを簡単に配置でき […]