Lightstorm3Dの無料ツールライブラリ「L3Library」にある機能の一つ、GeoLocatorが面白かったので備忘録も兼ねて。GeoLocatorという機能は、どうやらコンストレイン+追従の動きにノイズやDynamicsを加味するというものらしいです。試しに作ってみました。まず、インストール方からざっくりと。①サイトからL3Libraryをダウンロード。(※登録必要)②任意の場所にファイルを解凍。③Maya起動④ScriptEditorを起動しPythonタブに切り替え、↓のスクリプトをコピー&ペースト[...]
続きを読む最近Houdiniネタばかりだったので、時にはMayaネタもと思いまして。久々、Mayaの小技回です。●Mayaで作ったテクスチャを書き出すMaya内部で作成したテクスチャは、ファイルとして出力することができます。例えば、NoiseだとかRampだとかをテクスチャファイルとして保存することが出きるのです。方法は、1:Hypershadeのメニューからオプションで出力イメージの解像度等の設定ができます。または・・・1:書き出したいテクスチャノードをHypershadeで選択2:右クリックメニューから”Render Texture R[...]
続きを読む備忘録をかねて。pythonはモジュロ演算子(%)を使って文字列へのフォーマット操作ができます。型変換だけならstr()等でキャストでもいいのですが、桁揃えとかもやってくれるので極力こっちを使うようにしています。でも、すぐ忘れます。使い方はシンプルi=123print "Hellow World %d" % i#結果#Hellow World 123上の例では、%dの部分が123で置き換えられています。ここで使っている%dは「整数値と入れ替えますよ」の意味。複数を置換する場合は、下のように書きます。[...]
続きを読む今回は、簡単な破壊エフェクトについて手順も踏まえて書いてみようと思います。最終的にこういうのを作ります。出来るヒトは見なくてよろしwここでは事前にジオメトリを破片に分割して、それをシミュレーションするという手順で進めたいと思います。ざっくり書くと、1:ボロノイ分割での破片の作成2:RBD Fractureでシミュレーションです。 1:破片の作成まず、破壊したいオブジェクトを細かい破片に分割します。ここではboxを破片に分割しています。(Houdiniに限らず)破片の分割には、ボロノイという分割方法を使うのが一般[...]
続きを読む今回はMayaとAfterEffectsのトリビア的小技、三本立てです。(内容の薄さを数でカバーしようと、そういう感じです。勘弁) Mayaでシーケンスファイルを読み込む時Mayaでシーケンスファイルを読み込みたい時、(※シーケンスの桁数が5以上の時)ファイル名に注意が必要です。どんな風に注意するかというと、↓こんな風にNG:FileName_XXXXX.exeOK:FineName.XXXXX.exe注意点は、ファイル名とシーケンス番号の区切りを”.”(ドット)にすることです。AfterEffectsなどはシーケンス番号の前は”_”[...]
続きを読む前回に続き、Houdini VEX勉強回。今回は「近接ポイントの情報を取得する」VEX系の関数についてです。近接ポイントとはこの場合、単純に距離の近いポイントのことを指します。近接ポイントを取得するVEX関数は幾つかあります。ここではnearpoint()とnearpoints()を取り上げようとおもいます。表記の違いは名前に"s"があるかないか。まぎらわしい。nearpoint()一番近いポイント番号を取得する。”一番近い”だから、取得するポイントは1コ。最大どこまでの距離を探すか指定する。ポイントが見つからなければ-1。int nearp[...]
続きを読むHoudini勉強回。前回、MatchSize(SOP)について取り上げましたが、そこで紹介しなかった機能があります。それが、Restore/Stash Transformのパラメータです。これらを使うことで、MatchSize(ROP)による原点への移動値をアトリビュートとして保持したり、逆にアトリビュートをもとに移動することができます。以下のようなネットワークで、ジオメトリ(任意座標)を原点に移動、Twistをかけて、元の位置に戻す、というものです。(1):MatchSize(SOP)で原点に移動。パラメータ"Stash Transform"を有効に[...]
続きを読む最近、めっきりHoudiniな人の管理人、今日もHoudini回です。使用バージョン:Houdini13今回は、Houdiniの選択の拡張方法をいくつか。まず、ビューポート上で選択を拡張する方法は、管理人が知ってるだけで2種類。A : 頂点やエッジ等を選択しての、”Shift + G”!B : 頂点やエッジ等を選択しての、コンポーネント?(頂点とかエッジとか)切り替え。(例、キーボードの2と3を交互とか)次に、ネットワークでノード使って拡張する方法。上記Bをネットワークで組んであげるます。コンポーネント?のコンバートには、groupノードを使いま[...]
続きを読むtoxikノード解説回です。今回はToxikでのトラッキングの仕方をざっくり解説です。ではさっそく。①"Tracker"ノードを作ります。②トラッキングしたい素材を"Tracker"ノードのinputにコネクトしておきます。③"Tracler"ノードを選択。トラッキング範囲を指定します。このトラッキング範囲、実線はトラッキングするターゲットの検出範囲。点線の方はターゲットの移動する範囲。前後のフレームでのターゲットの移動範囲がこの枠内に収まるようにします。この範囲が狭すぎるとうまくトラッキングできず、また広すぎると計算に時間がかかりま[...]
続きを読むはい、Houdini回。今回は地味に大事なPyroのContainerを回転させる方法です!ここで言う、Containerとは下図の四角い枠のことです。以下、手順です。(初めにShelfから標準的なPyroの煙を作成してあるとします)①:Positionノードを作成するPositionノードを作成し、Smoke Objectノード(Pyroと表記されたのード)の下に入れときます。このPositionノードは、オブジェクト(ここではSmoke Objectノード)が使用できる位置情報を作成することができます。[...]
続きを読む