Houdini 製品概要

45
HOUDINI 製製製製 2014/2/28 Houdini VFX Seminar @ 製製製製製製 製製 製

description

2014年2月28日にカナダ大使館で行ったHoudini VFX セミナーで使用したスライドです。

Transcript of Houdini 製品概要

Page 1: Houdini 製品概要

HOUDINI 製品構成

2014/2/28

Houdini VFX Seminar @ カナダ大使館

多喜 建一

Page 2: Houdini 製品概要

AGENDA

‣ プロダクションビルドとデイリービルド

‣ ツール

‣ HDK

‣ Houdini & Python

‣ HQueue

‣ Conclusion

このスライドは後日オンライン配布予定です。

Page 3: Houdini 製品概要

プロダクションビルドとデイリービルド

‣ www.sidefx.com Download > Daily Builds

‣ AUP ( 年間アップグレードプラン ) の一部

‣ プロダクションビルド

‣ QA ( 品質保証 ) による検証プロセスを経たリリース

‣ ほぼ月一回

‣ 過去 2 バージョンまで (13.0 、 12.5)

‣ コンパイラの違いは、 SDK 使用時に重要

Page 4: Houdini 製品概要

プロダクションビルドとデイリービルド

‣ デイリービルド

‣ 最新のバグ修正版自動テスト以外の品質保証プロセスを行っていないリリース

‣ ほぼ毎日アップロード

‣ 過去 3 バージョンまで (13.0 、 12.5,12.1)

‣ 差分は ジャーナル ( バージョン下のリンク )を参照

Page 5: Houdini 製品概要

プロダクションビルドとデイリービルド

‣ プロダクション または デイリー ビルドのインストールには、

‣ 過去のバージョンのアンインストールは不要

‣ ライセンスツールの再インストールも不要

‣ メジャーバージョンアップグレード ( 例 : 12.5 -> 13.0) 時には、最新のライセンスサーバツールのインストールが必要

使用バージョン インストールするバージョン 現バージョンのアンインストール

ライセンスツールの再インストール

13.0.288 13.0.314 不要 不要12.5.560 13.0.314 不要 必要

商用版も Apprentice も同じ

Page 6: Houdini 製品概要

Houdini の入れすぎには注意しましょう

Page 7: Houdini 製品概要

ツール

ツール名 概要Command Line Tools

Houdini 環境に設定のシェル ( ターミナル )

Geometry Viewer スタンドアロン ジオメトリビューア (gplay)

Image Viewer スタンドアロン イメージビューア (mplay)

License Administrator

ライセンス管理ツール (hkey)

その他多くのコマンドラインツールあり

Page 8: Houdini 製品概要

システム環境設定

‣ Cygwin などで環境を Houdini 環境を作る場合、

‣ Houdini インストールディレクトリで houdini_setup をソース

$ cd /Program\ Files/Side\ Effects\ Software/Houdini\ 13.0.314/

$ source houdini_setup

$HFS: Houdini のインストールディレクトリ他にも多くの環境変数

$ hconfig -a

Page 9: Houdini 製品概要

Houdini Development Kit (HDK)

‣ $HFS/toolkit 以下に- include/- makefiles/ Linux 、 Mac 、 Windows 用- samples/- slide/ HDK 概要 ( 英語 ) pdfが存在

‣ 2 つのコンパイル方法

‣ hcustom

‣ make または nmake (Windows*)

‣ コンパイルしたプラグインは、 $HOME/houdini13.0/dso に配置すると自動的に読まれる。

OS Houdini 13Windows

VC9 (Visual Studio C++ 2008)またはVC11(Visual Studio C++ 2012)

Linux gcc 4.4 または 4.6Mac Clang コンパイラ

*Windows で試す場合、 13.0.225 以降推奨

Page 10: Houdini 製品概要

HDK: hcustom でコンパイル

‣ $HFS/toolkit/samples/SOP/ 以下の SOP_Star.C をコンパイルする場合

‣ Command Line Tools を起動 ( もしくは、 Houdini の環境をソース )

‣ SOP_Star.C と SOP_Star.h を任意のディレクトリにコピー

‣ そのディレクトリで、$ hcustom SOP_Star.C

‣ 作成された .dso が ~/houdini13.0/dso に作られる。

Page 11: Houdini 製品概要

HDK: nmake でコンパイル‣ $HFS/toolkit/samples/SOP/ 以下の

SOP_Star.C をコンパイルする場合

‣ houdini の環境をソース

‣ SOP_Star.C と SOP_Star.h を任意のディレクトリにコピー

‣ そのディレクトリに Makefile.nmake を次の 3 行で作成

DSONAME = SOP_Star.dllSOURCES = SOP_Star.C!INCLUDE

$(HFS)/toolkit/makefiles/Makefile.nmake

‣ $ nmake -f Makefile.nmake SOP_Star.C

‣ SOP_Star.dso が、作業ディレクトリに作られる。

‣ 自分で、 ~/houdini13.0/dso/ に移動。

Page 12: Houdini 製品概要

HDK (nmake)

注意 :VC9 でコンパイルしたプラグインは、 VC11 ビルドの Houdini で読み込めない ( その逆も真 )

Page 13: Houdini 製品概要

デモ

種類 ファイル名 パス

ノードアイコン

SOP_hdk_star.svg

~/houdini13.0/config/Icons

ヘルプテキスト

hdk_star.txt

~/houdini13.0/help/nodes/sop/

ヘルプアイコン

SOP_hdk_star.png

~/houdini13.0/help/nodes/sop/

Page 14: Houdini 製品概要

ヘルプファイル

Page 15: Houdini 製品概要

デジタル アセット

‣ Houdini Digital Asset (.otl)

‣ Operator Type Library

‣ データのカプセル化と共有

‣ 形状データ

‣ テクスチャ

‣ スクリプト

‣ などを一つのファイルにまとめて共有可能

Page 16: Houdini 製品概要

HOUDINI & PYTHON

Nodes, Networks and Assets

Page 17: Houdini 製品概要

Houdini 内蔵スクリプト言語

言語名 概要Hscript Houdini 固有のスクリプト言語

スクリプト処理やエクスプレッションの定義に使用MEL みたいな言語

VEX Vector EXpression Language 言語シェーディング言語として開発され、頂点・点を扱うための言語として拡張。GUI で組んだノード構成を、( 自動的に ) コンパイルして使う。スレッド対応。13.0 から形状生成にも使用可能

Python Hscript を置き換え、スクリプト処理、エクスプレッションの定義に使用可能

今回の主題

Page 18: Houdini 製品概要

Python in Houdini

‣ Houdini インストールに Python が含まれる

‣ 2.6 および 2.7 (Houdini 13.0)

‣ Houdini の多くの機能が Python によって書かれている

‣ シェルフツール

‣ HQueue

‣ Amazon クラウド レンダリング

‣ さらに多くの細かい機能

‣ なぜ Python を使うのか ?

‣ 拡張するため

‣ 自動処理

‣ すでにある機能を置き換えるためではない

Page 19: Houdini 製品概要

Python が使えるところ

‣ Python Shell

‣ Python Source Editor

‣ パラメータフィールド

‣ シェルフツール

‣ デジタルアセット

‣ Hython

Page 20: Houdini 製品概要

Python Shell

‣ 埋め込みパネル : '+' -> New Panel Tab Type -> Python Shell

‣ 別ウィンドウ : Window -> Python Shell (Alt + Shift + P)

Page 21: Houdini 製品概要

Python Shell

‣ ドラッグ & ドロップでオブジェクト情報を取得可能

‣ ネットワーク エディタからノード

‣ シェルフエディタから

‣ 各種シェルフタブ

‣ 各種シェルフツール

‣ 各種パネルタブ

‣ Auto completion で使えるメソッドがわかる

Page 22: Houdini 製品概要

Python Source Editor

‣ 複数の関数の定義が可能

‣ ここで定義した関数は、 Python Shell では、 hou.session. を付けて呼ぶ

‣ 例 :

def childrenOfNode (node):result = []for c in node.children():

result.append(c)result += childrenOfNode (c)

return result

>>> hou.session.childrenOfNode(n)

‣ ここで定義した関数はシーンファイルに保存される

Page 23: Houdini 製品概要

パラメータ フィールド

‣ エクスプレッションを Python で記述

‣ デフォルトは HScript なので、以下の方法で変更する

1. Edit->Preferences -> Scripting で変更 Python デフォルトになる

2. パラメータ ウィンドウ 上のアイコンでノードごとに切替

3. RMB->Expression->Change Language to Python でフィールドごとに切替

‣ 注意 :string (文字列 ) 型のパラメータに Python でエクスプレッションを定義する場合には、最初にキーフレームを設定すること

Page 24: Houdini 製品概要

シェルフツール‣殆どすべてのシェルフツールが Python で記述されてい

る。

‣ 自分でツールを書く時も Python での記述が可能

‣ 例 : シーン内の file ノードをすべて Reload するスクリプト

‣ 1:file_nodes = [n for n in hou.node("/").allSubChildren() \ if n.type() == hou.sopNodeTypeCategory().nodeTypes()['file']]for n in file_nodes: if n.evalParm("filemode") == 1: n.parm("reload").pressButton()

‣2:for file_node in hou.nodeType("Sop/file").instances(): if file_node.evalParm("filemode") == 1: file_node.parm("reload").pressButton()

Page 25: Houdini 製品概要

デジタルアセット

‣ Python スクリプトをデジタルアセットとして作成

‣ File -> New Operator Type… Python Type で作成、Code タブにスクリプトを記述

‣既に作成したデジタルアセットに Python スクリプトを追加

‣ アセットノードを選択、 RMB->Type PropertiesScripts タブのイベントハンドラで、 Python スクリプトが実行されるタイミングを選択

‣ パラメータに Python スクリプトをアサイン (ボタンなど )

Page 26: Houdini 製品概要

Hython

‣ Houdini 環境下の インタラクティブ Python セッション

‣ バッチ処理

‣ GUI に拠らない シーン操作

‣ デジタルアセットの内容確認

‣ 例 : hip ファイルを Python に読み込んで .fbx で出力

hou.hipFile.load("box_stack.hip")fbx_rop = hou.node("/out").createNode("filmboxfbx")fbx_rop.parm("sopoutput").set("<path_to>/output.fbx")fbx_rop.render()

‣ 注意 :hou 以下のモジュールを実行する際には Houdini ライセンスが必要

Page 27: Houdini 製品概要

Python: 他のパッケージの統合

コピー先 例各 Houdini インストール

$HFS/python27/lib/site-packages/<module>

複数の Houdini がある場合面倒

共有空間 & 環境変数で指定*

C:\Python27\Lib\site-packages\<module>

~/houdini13.0/houdini.env にPYTHONPATH = "C:/Python27/Lib/site-packages"

個人フォルダ C:\Users\ktaki\houdini13.0\scripts\python\<module>

環境変数の設定は不要

* 環境変数の指定が必要なのは Windows のみ。 Linux と Mac では不要。

Page 28: Houdini 製品概要

Python モジュールの統合例 : Dicom

‣ pydicom をダウンロードし、 site-packages 以下へ配置

‣ Dicom ファイルフォーマット入力ツールをHoudini デジタルアセットで記述。

‣画像ファイルよりボリュームデータを作成

Page 29: Houdini 製品概要

Python アセットで Dicom ファイルを COP に読み込む

Page 30: Houdini 製品概要

SOP 内で入力画像を元に 3 次元化

Page 31: Houdini 製品概要

HOUDINI PRODUCTS

Animation and VFX

Page 32: Houdini 製品概要

Workstation | Products

Page 33: Houdini 製品概要

Houdini | 機能

Modeling Character Animation Lighting Rendering Compositing Cloud FX Ocean FX

* * *

Page 34: Houdini 製品概要

Houdini FX | 機能

Particles Rigid Bodies Pyro FX Fluids Cloth Wire

Modeling Character Animation Lighting Rendering Compositing Cloud FX

Ocean FX

Modeling Character Animation Lighting Rendering Compositing Cloud FX Ocean FX

NEW IN

13.0

FEM

* *

* ***

* * *

Page 35: Houdini 製品概要

パイプライン | 概要‣ Mantra

‣ レンダーファーム‣ Houdini のライセンスで無制限に提供

‣ Houdini Batch

‣ GUI なしのコマンドライン

‣ すべての機能を網羅

‣ HQueue

‣ 分散レンダリング‣ 分散シミュレーション‣ Houdini のライセンスで無償

Page 36: Houdini 製品概要

HQueue

‣ sidefx.com (社内 )

‣ レンダリングとシミュレーションの両方に使用

‣ ワークステーション は Linux/Mac/Windows 混在

‣ HQueue クライアントは、事実上ほぼすべて Linux

‣ ジョブを流すユーザ ID は、ほぼ単一ユーザ (hquser)

‣ /mnt/hq/houdini_distros/ 各バージョンの

Houdiniprojects/ 各ユーザプロジェ

クトファイル

Page 37: Houdini 製品概要

HQueue ノードの設定

シミュレーションとレンダリングを親子関係にして、 HQueue でコントロールすることも可能

Page 38: Houdini 製品概要

HQueue ノードの設定 (HQ Render)

Page 39: Houdini 製品概要

HQueue: Python で設定確認・変更

‣詳しくは、 HQ Python API ドキュメント参照のことhttp://houdini.indyzone.jp/docs/hqueue125_jp/help/api.html

Page 40: Houdini 製品概要

Web | Sidefx.jp

‣ 製品情報

‣価格情報

‣ユーザ事例

‣ チュートリアル

‣評価版ダウンロード

‣ 日本語ユーザガイド

Page 41: Houdini 製品概要

Web | Apprentice

‣学生とホビーユーザ向け

‣ Houdini の無償体験版で個人プロジェクトや学習に

‣世界中で 20万以上ユーザ

‣ HD バージョン ($99) で「透かし」無で解像度無制限のレンダリング

Page 42: Houdini 製品概要

Web | ソーシャルネットワーク

‣ ソーシャルネットワーク‣ Facebook -

www.facebook.com/Houdini3Djp‣ Twitter - @Sidefx_jp または #HFXJP

‣ ビデオ‣ Vimeo - vimeo.com/goprocedural

vimeo.com/sidefxjp

‣ Youtube - www.youtube.com/houdini3d

Page 43: Houdini 製品概要

Vimeo による日本語キャプション

CCボタンをクリックして日本語キャプションを表示

Page 44: Houdini 製品概要

Web | 学習資料

‣ 日本語ユーザガイド (V12.1 + V13.0)

‣ Getting Started‣ インディゾーンによる UI紹介ビデオ‣ Houdini をはじめる ( 日本語 )

‣教育機関向け (学校版 ): 34,650円‣ Houdini Apprentice や Houdini

Apprentice HD との連携が可能