3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

MOPsであそぼう

Last updated at Posted at 2022-12-21

はじめに

こちらの記事はHoudini Apprentice Advent Calendar 2022 / 21日目の記事になります。
Houdini使用バージョンは 19.0.622 になります。

専門学校でHoudiniを学んでおります。Houdini歴は1年ほどとなります。よろしくお願いします。

今回はHoudiniの有名なHDA「MOPs」を紹介していこうと思います。

MOPsとは?

MOPs (Motion Operator Tools) とは、オープンソースで開発されているHDA (Houdini Digital Asset) です。
・公式サイト https://www.motionoperators.com/
モーションデザイナー向けのHDA Toolsetとなっており、モーショングラフィックスなどの制作に特化したツールとなっています。

なぜ使うのか?

Houdiniを使う上で特に大事になるのが、Attributeの概念です。
どのポイントにどの値が入っているのか?
そして、Houdiniへ新規に参入してきたユーザーにとっては「どのように値を作るか」が一つの障壁となっています。
MOPsを使うことでCinema 4DのMoGraph, MayaのMASHのようなことが簡単に行えるようになります。
具体的には、Falloffsノードを使うことでアトリビュートを感覚的に作成することができます。

プラグインの導入

ここからMOPsをダウンロードしましょう。
https://github.com/toadstorm/MOPS

ファイルを展開し、MOPs-masterフォルダを任意の場所に置きます。
MOPS.jsonを書き換え、Houdiniのpackagesにコピーします。

{
	"env": [
		{
			"MOPS": "MOPs-materを配置したパス"
		},
		{
			"HOUDINI_PYTHONWARNINGS": "ignore"
		},
	],
	"path": "$MOPS"
	
}

MOPsの更新方法

シェルフからMOPsをオンにします。
image.png
MOPs Updaterをクリックし、Apply UpdateでMOPsをアップデートさせて完了です。
image.png
image.png

まずは動かしてみよう

1つ作例を作ってみましょう。
advent_calendar_mops_01.gif
ネットワーク
image.png

作成手順

scatter でばらまいたポイントにCopy to Pointでジオメトリをコピーします。
image.png

MOPs Shape Falloffで値を作成します。
指定した向きと、その位置で値が決まります。
advent_calendar_mops_02.gif

point wrangleでmops_falloffアトリビュートをrampで調整します。
image.png

こうすることで、上に移動する際のアニメーションを調整できます。
advent_calendar_mops_03.gif

位置の移動には、MOPs Transform Modifierを使用します。
Falloff Attributeの値に応じてTransformの操作が行えるので便利です。
image.png

セカンダリアニメーションの作成

この状態ではリニアの動きで寂しいので、セカンダリアニメーションを付けていきましょう。
ここでは、スプリングのアニメーションを2通りの方法で紹介します。

MOPs Spring Modifierを使用する方法

MOPsに入っている「MOPs Spring Modifier」 を使用して簡単につけられます。
image.png

CHOPを使用する方法

CHOPを使うことでもアトリビュートに対し、セカンダリアニメーションをつけることができます。
自由度としてはこちらのほうが高いです。

まずは、ChannnelとCHOP netを出します。
image.png

CHOP内
image.png

GeometryでSOPのどのアトリビュートを読み込ませるか設定します。
ここではpoint wrangle後のnullを指定しています。
必ず、Attribute ScopeとRename Scopeを変えておきましょう。(デフォルトではベクター型)
image.png

springで動きをつけます。
image.png

filterで動きをなめらかにします。
image.png

SOPのChannelで指定のchopノードを取り出します。
ここでもChannel ScopeとAttribute Scopeを忘れないようにしましょう。
image.png

最後にMOPs Transform Modifierを適用します。
image.png

おめでとうございます!
これにて作例は終了です。おつかれさまでした。
advent_calendar_mops_01.gif

おわりに

今回の作例に加えてもう一つRBDを使った作例を作ってみましたので、ぜひhipをご覧ください。
advent_calendar_mops_05.gif

hipファイル
https://drive.google.com/file/d/1jVNGzSJkkE00yqZD08MN5LauABHcqLwP/view?usp=sharing

作業時にはGeometry Spread Sheetを必ずオンにして作業をしましょう!

参考

MOPs公式サイト : https://www.motionoperators.com/
MOPs wiki : https://github.com/toadstorm/MOPS/wiki/

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?