Location via proxy:
[ UP ]
[Report a bug]
[Manage cookies]
No cookies
No scripts
No ads
No referrer
Show this form
Submit Search
本当に無駄な仕事をしたくない人のためのHoudiniプロシージャル入門
•
Download as PPTX, PDF
•
27 likes
•
15,500 views
jyouryuusui
Follow
3DCG Meetup #12のHoudiniセッションで使用したスライドです。
Read less
Read more
1 of 48
Download now
Downloaded 62 times
More Related Content
本当に無駄な仕事をしたくない人のためのHoudiniプロシージャル入門
1.
本当に無駄な仕事をしたくない 人のための Houdini プロシージャル入門 @JYOURYUUSUI
2.
自己紹介 ◆「魔法の蒸留水」で同人活動 ◆Houdini本書きました ◆土日Houdinist @jyouryuusui
3.
話す事 Houdiniを使う事のメリットは何か? 無駄な仕事を減らすにはどうすべきか。 について話します
5.
エフェクトのソフト?
6.
Houdiniってどんなソフト? ■ノードベース ■プロシージャル な3Dソフト (SideFX社製)
7.
ノードベース NodeBase ある作業を完成するまでの手順 簡単に言うと“自動生成” プロシージャル
Procedual ノードに1つ1つ機能が格納されている
8.
Houdiniでダイナミクスを始めるぞ! Houdini学習1日目の人→
9.
まずはSOP を覚えましょう Surface OPerators モデリングやアトリビュートの編集 先生
10.
SOP?そんなことより爆発だ!
11.
多すぎるノード結果… 挫折
12.
なんで車が 動くんだろう 適当に繋げば 動くだろう あまりに無謀・・・! ▼ SOPを理解しないままDynamicsをやるという事
13.
上流(SOP)を制御せよ! 発生源はSOP 地面もSOP 自然現象は人間の 手に余る(予測不能)
14.
【制御例】上流の差し替え
15.
【制御例】Attributeの編集
17.
〇最重要➡
18.
この値をDOP に渡そう このノードを 繋げよう! You are Houdinist. SOPでAttributeをどう扱えばよいか理解す れば明るい未来が待っている!
19.
Houdini = 生産性が高い
は本当か? 全然できない・・・ 1日中やって何も 進まなかった Houdini最高! 凄く生産性高い! 日本語情報少な すぎてわからん 学習コストと 保守料割にあわ ない 1日でこんなの作って みました(凄い作品) 何が本当なのか・・・ 明るい未来が待っているのは分かった、しかし・・・
20.
と考えるなら、自動化 (プロシージャル)の出番 ではないだろうか? では、 無駄な仕事とは何か。 生産性が高い≒無駄な仕事をしない
21.
無駄な仕事 ◆単純な繰り返しの作業 ◆納期直前での手戻り 締め切りまで1日しかないけど もう一度テーマを考え直そう。 (昨日は正解だと思っていた けど、やっぱり違っていた。) モデルを100種類用意しろ
22.
無駄な仕事 = 不必要な手作業
23.
【例】手作業を減らすには ◆単純な繰り返しの作業 ◆納期直前での手戻り ◆回転寿司店の背景作り ◆寿司は数十種類×数形状× 遠景用・近景用=数百種類 ◆レーンは後で変更
24.
法則と無駄な仕事を最初に見つける 法則 懸念される無駄な仕事 レーン 半円状のベルトコンベア
レイアウト変更による手戻り 寿司 寿司=ネタ+シャリ+皿 組み合わせの爆発
25.
【法則】どうやってレーンを作る? 実物を観察しよう!
26.
レイアウト変更に強いプロシージャル
27.
【法則】どうやって寿司を握る? Traceで画像から自動モデリング 重力にまかせて落下 trace FEM
28.
【課題】組み合わせの爆発 ◆新しい形状の度に何度も作業が発生する。 ◆上流で何を変化させれば良いか考える。
29.
◆上流のバリエーション Switch や ノードをまるごとコピー?
30.
上流のボトルネック 値入力 無限の可能性を秘める 究極のアセット 手作業がボトルネック 湧き上がるアイデア
31.
色々値を試してみたけど 1回目のパラメータ何だっけ・・・ 大きさ シード値 1回目の入力 1
20 2回目の入力 2 53087 3回目の入力 3 8787 ・・・ 何かいい感じの結果だった 事だけは覚えている。
32.
Take パラメータをレイヤーの ように管理する
33.
Take バリエーションを持ちたい 値をTakeにインクルード 面倒ならAuto Mode で指定する。 レンダリング時にTake選択可能
34.
シミュレーション繰り返し trace FEM この処理をネタを変えて繰り返したい ・・・etc
35.
Wedge Output Driverが5回実行される。その間 ${WEDGENUM} は0~4の値を持つ
36.
以上、上流の手作業削減手法紹介でした。 NEXT 閑話:Houdini Engine
37.
Houdini Engine インストール時にチェックを入れると Houdini Engineのファイルも追加される。 Side
Effects Softwareフォルダ内にengineフォルダ Unityはパッケージを読み込み Unreal Engineの場合UE_4.15EnginePluginsRuntimeフォル ダに、HoudiniEngineフォルダを貼り付け。 インポートからotlを読み込みます
38.
Houdini Engine ApprenticeバージョンではHoudini Engineは利用できません。 Houdini Indie以上のライセンスが 必要です。
39.
Houdini Engine Load Houdini
Assetからhdaを読み込み インスペクタで値を変更します
40.
閑話:Houdini Engine Houdini Engine NEXT
Houdini=生産性が高い は本当か?
41.
Houdini=生産性が高い は本当か?
42.
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 7月3日 7月10日 7月17日
7月24日 7月31日 8月7日 タスクの進捗率 Houdini MAYA,MAX 逆転は鍛錬が必要 Houdiniスキル上昇
43.
0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% 7月3日 7月10日 7月17日
7月24日 7月31日 8月7日 タスクの進捗率 Houdini MAYA,MAX 過去の資産を利用することで ここから急上昇する事も可能
44.
Houdini=生産性が高い は本当か? 習熟度・目的・過去のアセット 再利用・工夫による 型にはまれば本当
45.
Houdiniの罠 ◆VEX・Python・C++ プログラミング 便利な反面 保守が大変になるかも ◆プロシージャルが全てではない 時には、一時ファイルに出力して非破壊な フローを壊すことで作業時間が減ることも
46.
学習方法 理論と実践で学ぶ Houdini -SOP&VEX編- 株式会社ボーンデジタル Entagma Houdiniではじめる 3Dビジュアルエフェクト I・O BOOKS Houdini
Forum Houdini実践ハンドブック Wrangle×Python od|force Forum Houdini - cgwiki cmiVFXなど有料動画 Houdini Master Class動画 nomoreretake
47.
Houdini学習循環
48.
3DCGを楽しもう! ご清聴ありがとうございました まとめ
Editor's Notes
#4:
SOPの重要性を理解していただいたところで本日話す内容を紹介します エフェクトを目当てに、いきなり爆発や破壊に手を出すと挫折する可能性が高いです。 なぜ挫折するのか パラメータが多すぎる ノードが多すぎるのに それぞれの関係性が理解できない 言い換えると、車の構造を理解していないのにエンジンを修理しようとしているようなものです http://sidefx.jp/index.php?option=com_content&view=article&id=4&Itemid=474
#6:
エフェクトを目当てに、いきなり爆発や破壊に手を出すと挫折する可能性が高いです。 なぜ挫折するのか パラメータが多すぎる ノードが多すぎるのに それぞれの関係性が理解できない 言い換えると、車の構造を理解していないのにエンジンを修理しようとしているようなものです http://sidefx.jp/index.php?option=com_content&view=article&id=4&Itemid=474
#7:
ノードベース&プロシージャルなソフト
#8:
ノードベース&プロシージャルなソフト 日本語では「手続き型」「手続き的」などと訳される。
#9:
エフェクトを目当てに、いきなり爆発や破壊に手を出すと挫折する可能性が高いです。 なぜ挫折するのか パラメータが多すぎる ノードが多すぎるのに それぞれの関係性が理解できない 言い換えると、車の構造を理解していないのにエンジンを修理しようとしているようなものです http://sidefx.jp/index.php?option=com_content&view=article&id=4&Itemid=474
#11:
SOPの重要性を理解していただいたところで本日話す内容を紹介します エフェクトを目当てに、いきなり爆発や破壊に手を出すと挫折する可能性が高いです。 なぜ挫折するのか パラメータが多すぎる ノードが多すぎるのに それぞれの関係性が理解できない 言い換えると、車の構造を理解していないのにエンジンを修理しようとしているようなものです http://sidefx.jp/index.php?option=com_content&view=article&id=4&Itemid=474
#20:
本当か、様々な意見があります。 どんな状況化でも生産性が高い。と一概に言い切ることは難しいです。 いうなれば、ある条件に合致した場合、型にハマったら信じられない生産性が生まれる。ということです。
#21:
本当か、様々な意見があります。 どんな状況化でも生産性が高い。と一概に言い切ることは難しいです。 いうなれば、ある条件に合致した場合、型にハマったら信じられない生産性が生まれる。ということです。
#24:
プロシージャル ワークフロー プロシージャル (手続き型) ネットワークとは、ある作業を完成するまでの手順を表す、相互接続されたノードの集合のことです。Houdiniでは、全てがプロシージャルになっていて、モデリング、キャラクタリギング、ライティング、レンダリング、特殊効果、これら全ての作業が恩恵を享受しています。特殊効果アーティストは、従来より、プロシージャルワークフローがパーティクルや物理シミュレーションによる効果制作に最適なため、Houdiniに惹かれてきていました。制作パイプラインの他の場所においても、プロシージャル手法は、生産性の向上を目指すスタジオにも創作手法を巧く制御したい個人アーティストにも、多くの利点をもたらします。
#25:
まず作業を進める前に順序だてて流れを考える必要があります。
#26:
Houdiniでは上流を変化させて、様々な出力結果から最適な答えを見つけ出します。 しかし、その上流で値を入れた結果、どのような差が生じたか、確認しなければ、せっかく 自動化した意味がありません。 ノードを全部コピーして貼り付けという手段も無くはないですが あまりスマートではありません。 そこで、2つの機能を利用します。TakeとWedgeです。 Takeとは何か、 Wedgeについても そのために 今回RopDependencyを
#28:
Houdiniでは上流を変化させて、様々な出力結果から最適な答えを見つけ出します。 しかし、その上流で値を入れた結果、どのような差が生じたか、確認しなければ、せっかく 自動化した意味がありません。 ノードを全部コピーして貼り付けという手段も無くはないですが あまりスマートではありません。 にぎっとらんやんけという意見もあるかもしれませんが、、方法はなんでもよいのです。 そこで、2つの機能を利用します。TakeとWedgeです。 Takeとは何か、 Wedgeについても そのために 今回RopDependencyを
#29:
Houdiniでは上流を変化させて、様々な出力結果から最適な答えを見つけ出します。 しかし、その上流で値を入れた結果、どのような差が生じたか、確認しなければ、せっかく 自動化した意味がありません。 ノードを全部コピーして貼り付けという手段も無くはないですが あまりスマートではありません。 そこで、2つの機能を利用します。TakeとWedgeです。 Takeとは何か、 Wedgeについても そのために 今回RopDependencyを
#31:
■Switch or ノードコピー?プロシージャルは いかに手で作らないかを考えると最初に言いました。そしてSOPの重要性も理解してAttributeを扱いプロシージャルで物をつくるところまでもできました。しかし、まだやり残したことがあります。それは上流の自動化です。例えば、特定の値を与える事で、1万種類の出力が可能なアセットを作ったとします。しかし、上流の入力エリアは1つしかありません。 1万種類が出力可能なのに入力エリアが手動なので、まあできて3~4つぐらいのパラメータを入れて、終了となるでしょう。同じエリアで100パターンの値を入力して、やっぱり20番目に入れた値のときが一番良かった なんてなかなかできません。そもそも覚えてられません。これは、社内ツールを作って 超便利になったのに自分しか使っていない事に似ています。そこで上流を制御する手法を2つご紹介します。まず、Takeです。これはパラメータにレイヤー構造を持たせることができます。基本となるmainの他にパラメータを複数入れる事が可能になります。これで、上手くいったパラメータをmainに保存しておいて、ちょっと別の値で実験したい場合に別のTakeで値を入力するといったことが可能です。次はちょっと難しい方法。Wedgeです。これはROP OutputDriverもしくは ROPDependencyと組み合わせて利用すると効果を発揮します。先ほどのTakeは値が切り替わるだけで実際に出力を行う場合は手動になるのですがその一連の出力すら自動にしようというのがWedgeです。たとえばボックスの大きさ123の3パターンを出力したいとします。Wedgeで1~3の値をパラメータに入力させます。WEDGENUMを利用するとさらに 汎用的に値を利用できます。 最終的にテクスチャさえ準備できれば 100種類の出力を1分で行う事ができました。寿司のTraceで利用する番号をWEDGENUMで利用してます。takeで遠景近景の切り替えもできます。今回はネタがバラバラだったのでPhotoshopでしたがサブスタンスデザイナーで出力できるようなマテリアルを利用すると、さらに高い効果が期待できます。デジタルアセットUnityEngineでは Houdiniで作成したノード群をHoudiniDigitalAssetにして保存する必要があります。
#33:
■Takeから説明していきます。 Takeのタブはデフォルトでは出ていないので +マークから追加する必要があります。 例えば、1つのオブジェクトで10個のアニメーションを試したいとします。しかしタイムスライダーは1つしか ありません。そこでTakeでパラメータごとにオーバーライドします。 そうすることで、レンダリング時にどのTakeを利用するかを選択する事が出来ます。 ビューポートで確認したい場合は右上のプルダウンメニューからTakeを選択します。
#34:
■Takeから説明していきます。 Takeのタブはデフォルトでは出ていないので +マークから追加する必要があります。 例えば、1つのオブジェクトで10個のアニメーションを試したいとします。しかしタイムスライダーは1つしか ありません。そこでTakeでパラメータごとにオーバーライドします。 そうすることで、レンダリング時にどのTakeを利用するかを選択する事が出来ます。 ビューポートで確認したい場合は右上のプルダウンメニューからTakeを選択します。
#36:
■次にWedgeの説明です。 Wedgeについては 1つのTake内で手動でなく自動で値を設定したい場合に利用します。 主に変数$WEDGEとして利用する方法と、数値のみの、WEDGENUMを利用する方法があります。 シミュレーションを組み合わせる場合はROPDependencyを利用します。 例えば0,1,2と連番の設定を上流で指定してシミュレーションが終わり次第出力する設定を行っておけば WedgeノードのWedgeボタンを押すだけで、本来なら10回行っていた作業をボタン1つで完了させることができます。 レンダリング時に出力したい場合に利用します。
#40:
HoudiniからUnityへの出力に関しては、モデルとして一度出力した後に読み込む方法と、HoudiniEngineを利用してUnityからAPIを叩きにいく方法があります。 HoudiniEngineIndieは無料ですが、Core、FXの通常ライセンスのEngineでは年間の料金が必要です。 HoudiniEngineを利用すると、例えばMAYA、Unity、UE4からHoudiniDigitalAsetを利用する事ができるようになります。 モデルとしての出力はHoudiniからはwavefrontのobjファイル、fbxファイル、alembicファイルが可能です。どの形式にもUVは保持させることができますが、 テクスチャが付いていく形式はfbxしかありません。加えてfbxはAperanticeバージョンでは出力させることができません。Fbxの出力はIndie以上のライセンスが必要です。 ライセンスに関する壁はもう一つあります。HoudiniEngineもまた、Indie以上のライセンスが必要です。Aperanticeでは、読み込んだモデルがロゴマークに限定されます。 よってApreranticeから出力する場合は、objで出力して、手動でマテリアルの設定を行う必要があります。 Fbxでの出力についても、シーン全体での出力となってしまうため、望ましくありません。 そこで、HADに対してどのテクスチャを利用するかExtraFilesで指定します。すると、Unity側で自動的にテクスチャが読み込まれます。 チャンネルには次のように指定 opdef:..?画像.png
#42:
本当か、様々な意見があります。 どんな状況化でも生産性が高い。と一概に言い切ることは難しいです。 いうなれば、ある条件に合致した場合、型にハマったら信じられない生産性が生まれる。ということです。
#43:
本当か、様々な意見があります。 どんな状況化でも生産性が高い。と一概に言い切ることは難しいです。 いうなれば、ある条件に合致した場合、型にハマったら信じられない生産性が生まれる。ということです。
#44:
本当か、様々な意見があります。 どんな状況化でも生産性が高い。と一概に言い切ることは難しいです。 いうなれば、ある条件に合致した場合、型にハマったら信じられない生産性が生まれる。ということです。
#45:
本当か、様々な意見があります。 どんな状況化でも生産性が高い。と一概に言い切ることは難しいです。 いうなれば、ある条件に合致した場合、型にハマったら信じられない生産性が生まれる。ということです。
#46:
基本的にはノードの繋がりだけでできますが、プログラミングが出来る方はぜひWrangleやPythonを利用してみてください。 いろいろ試していく内に最終的にはソフトを立ち上げることなく、処理を行うことができるようになります。 HoudiniFXで作ったHDAをHoudiniCoreで利用することも可能です。高いライセンスなので、そこは上手く やりくりしましょう。
#47:
昔は日本語書籍はなかったのですが、今はいろいろ発売されています
#48:
最後に、これからHoudiniを勉強していく人のお勧め学習プランを紹介します。 このソフトにはHoudini学習曲線という単語があり、最初はろくなものができず挫折しやすいです。 これを乗り越える手段をお教えします。 まず、書籍。 一番最初の初学者には「Houdiniを利用した」をお勧めします。 この本を一通りやった後、何か1つテーマを決めて、自分が考えた方法で つくってみてください。テーマがきまらなければEntagmaの中から1つ 自分がいいなとおもったものを選んで、挑戦してみてください。 重要なのは、一度最後まで作るというところです。 最初は苦戦すると思いますが、出来あがったとき その苦労した分の 喜びが沸き上がってきます。「よっしゃー俺は天才だ!」と そのその感情を持ったままループを継続させて下さい。 これを Houdini学習ループと僕は呼んでいます。 ここで思い出して下さい。このソフトを作った会社はSideFX。日本語訳すると副作用です。 物騒な会社名ですが、これこそが重要です。毎日毎日禁断症状になるくらいやり続ける 事が、上達への最短ルートとなるのです。 3Dって楽しいですよね。その気持ちを大事にしてみんなで遊んでいきましょう。 そしてWebにこんな手法があるよと自慢してください。その自慢がみんなの力となります。 以上となります。 ご清聴ありがとうございました。
#49:
Houdiniは難しいです。まぐれで上手くいくことはほとんどありません。 3Dの知識を正しく理解したとき、初めて上手く動作します。だから楽しいのです。
Download