MOPs(Motion Operator)の簡単なご紹介

本記事はHoudini Advent Calendar 2020の19日目の記事となります。



# はじめに

HoudiniではSOP(Surface Operator)、DOP(Dynamics Operator)などのように　`*OP(*Operator)`のような呼称で各コンテクストを表していますが、 `MOPs` (Motion Operator)というのがあるのをご存知でしょうか？
![2020-12-10_22h31_18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/5b6523b3-3e13-58f3-c3fd-18dfe492f0eb.png)


これはデフォルトには付属はしていませんが、手動で追加できるものです。現在オープンソースでフリーで使用することができます。尚、更に拡張した `MOPs Plus` が現在開発中で近日公開予定となっています。

# 本記事の対象者
Houdiniでモーショングラフィックスをやってみたい人が対象です。
モーショングラフィックスを業務で行っている人はCinema4Dを使われている方が多いのかなと思いますが、このツールを使うとHoudiniでも簡単に行うことができます。（と思います。）
もちろん3dsMaxやMaya、Blenderなどでも3Dのモーショングラフィックスを作成することは可能です。
実際、私自身プロジェクションマッピングでモーショングラフィックス的演出を3dsMaxで作業していたことがありますので使えます。ただ当時Houdiniを使えることができて更にこのMOPsがあったらもっと早くいろいろできたのだろうと思います。

#環境条件
本記事はHoudini18.5、MOPs v1.2 Stable の状態で執筆しています。
Houdiniの旧ヴァージョンにもインストールは可能です。ただ17.0以前はインストール方法が異なりますのでWikiのインストール方法を参照してください。
MOPsのヴァージョンはStable版とExperimental版がありExperimental版の方は随時更新されていてつい先日もKineFXに対応したものが公開されています。


# 誰が開発したものか

[Toadstorm](https://www.toadstorm.com/blog/) の [Henry Foster](https://www.toadstorm.com/about/)氏と　[Entagma](https://entagma.com) の [Moritz Schwind](https://twitter.com/pixelkram)氏の協力で2018年6月に最初のヴァージョンがリリースされました。

# 何のために開発したか

Houdiniでモーショングラフィックスをより簡単かつ直感的に使用できるようにし、アーティストが数学を気にせずに自由に作業できるようにという思いで開発をしているそうです。

MOPsはHDA形式で配布されていて中身も見ることができます。チラ見すると沢山の既存のノードの組み合わせと沢山のWrangleで構成されています。

##リリースノート
リリースノートはこちらを参照してください。
[Releases](https://github.com/toadstorm/MOPS/releases)

# どんなものが作れるか

公式からの転載になりますが、こんなのができるよーというのを貼っておきます。画像にリンク貼っているのでクリックするとVimeoに飛びます。
 [![MOPs demo: Coils](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/d12d75f1-7078-b1dd-fc86-e859b8466be1.png)](https://vimeo.com/278384083)
[![Ribeye torus](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/18dcb4d4-a1c3-f4a4-2384-ae64ff9b94ca.png)](https://vimeo.com/341493962)

尚、[Instagram](https://www.instagram.com/motionoperators/)で作例を公開しているようなので時々見てみるといいかもしれません。

# どうやってインストールするか

1. [MOPs – Motion Operators for Houdini](https://www.motionoperators.com/) にアクセスします。
2. Download now on GitHub のリンクをクリックします。
![2020-12-07_11h44_24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/241e719f-9676-2331-ba02-981fc3e66e1e.png)
3. Code>Download ZIP からファイルをダウンロードします。
![2020-12-07_11h43_30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/ea77df75-cd0d-ed23-b08f-33c670f827af.png)
4. 展開して任意の場所に配置します。
5. ドキュメント>houdini{version}>packagesに4で配置したパスを記述したjsonファイルを配置します。
![2020-12-07_11h59_29.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/27f596bb-181d-e2b4-af2b-09ddf514a90d.png)

6. そのjsonファイルの中身です。

 ``` 
{
	"env": [
		{
			"MOPS": "配置したパス"
		},
	],
	"path": "$MOPS"
	
}
``` 
7 .  Houdiniを起動するとshelvesの＋のリストにMOPsとMOPs Toolsが追加されています
![2020-12-07_12h04_28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/fcb53225-d3dc-46ae-bc49-fa4e6f6c738b.png)

※Houdini17.0まではpackegesが使えないので.envファイルに直接記述する必要がありましたが17.5以上はpackeges内にパスを記述したjsonを配置するだけでよくなりました。個人的には.envファイルを汚さないのでこの方式が好きです。

#更新方法
Shelf>MOPsの中にMOPs Updaterがあり、これを起動するとBranchとBuildを選択することができ、任意のヴァージョンをインストールすることができます。
![2020-12-17_20h17_28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/b7a63213-92b2-4237-b85a-7de75a9c12fc.png)
![2020-12-17_20h17_37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/b2c58022-2d95-07f7-3e80-559057aebc18.png)
ちなみにインストールされているヴァージョンの確認方法ですが、MOPsのディレクトリ内にVERSION.txtがありこのテキストファイル内に記載されています。
![2020-12-17_21h35_44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/a2762977-a09f-8966-74d7-c8fdb42dd684.png)
尚、更新情報は[Twitter](https://twitter.com/motionoperators)や[Facebook](https://www.facebook.com/motionoperators/)で告知されています。




# どうやって使うか
使用方法のリンクを項目毎に記載します。

## MOPsWiki

[MOPS WIKI DOCS](https://github.com/toadstorm/MOPS/wiki)

インストール方法、ノードリスト、チュートリアルのリンクが記載されています。

## 基本

[Basics](https://github.com/toadstorm/MOPS/wiki/Basics)

MOPsの基本概念の説明が記載されています。

## チュートリアル

[MOPs Tutorial](https://github.com/toadstorm/MOPS/wiki/MOPs-Tutorial)
公式のチュートリアルです。

[MOPs – Entagma](https://entagma.com/tag/mops/)
Entagmaのチュートリアルです。

## サンプルファイル

MOPsをダウンロードするとexamlesディレクリーがあり、その中に32個のサンプルファイルがあります。まずはそれを開いて見るのがいいと思います。
![2020-12-17_22h08_09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/4610fe2d-293f-10f1-e858-d0de7616d53f.png)


## MOPS: Beyond Motion Graphics

[Houdini HIVE Worldwide](https://www.sidefx.com/ja/houdini-hive/houdini-hive-worldwide/)  でHenry Foster氏がプレゼンテーションしたムービーです。MOPsの使用方法などを解説しています。画像にリンク貼っているのでクリックするとYoutubeに飛びます。
[![MOPS: Beyond Motion Graphics | Henry Foster | Houdini HIVE Worldwide](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/0d9a3049-73de-9a20-ce63-f87a8ef404e2.png)](https://www.youtube.com/watch?v=irAK6bw_Vnc&feature=emb_title&ab_channel=Houdini)

#どんなノードがあるか
今回はリストをあげるだけですが、以下のものが用意されています。
##Generators
ジオメトリを生成します。
![2020-12-08_10h46_44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/1100d20e-b925-a7dd-1b26-35625d51d17d.png)
##Falloffs
ポイントアトリビュート`f@mops_falloff`を作成、変更します。下流のModifierの効果に影響します。
![2020-12-08_10h46_32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/4da4f56b-34ca-d5d9-3313-6546ab4b5106.png)
##Modifiers
トランスフォーム情報やプロパティを変えます。
![2020-12-08_10h46_56.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/7edeb2bc-ed43-d626-d447-380630d8e496.png)
##Tools
その他のツール群。独自の新しいMOPs Operatorを作るためのものです。
![2020-12-08_10h47_03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/6536e026-b132-f526-b7b5-59f07e81675f.png)







# 分からないことはどこで聞けばよいか？また不具合報告はどこにすればよいか？

いくつかのフォーラムやグループが用意されています。

- Forum : [MOPs Forums - Index page](https://forum.motionoperators.com/)
- Facebook Group : [MOPs Users Group | Facebook](https://www.facebook.com/groups/616993195326231)
- Discord Server : [MOPs for Houdini](https://discord.com/invite/ZzwD3YRXr3)
- 直接メッセージを送る :　[Contact – MOPs](https://www.motionoperators.com/contact)

# MOPs Plus

更に拡張されたMOPs+が近いうちに公開されるようです。こちらはサブスクリプションでの提供となるようです。購入ページはまだ未公開ですが、楽しみですね。
[![MOPs+ Demo: Ball Pit](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/134079/d22314ec-fd1a-10e5-6636-71bab0a5d5e9.png)](https://vimeo.com/478607532)

# 終わりに

Houdiniでモーショングラフィックスをより簡単にするためのツールMOPsについて概要を簡単にご紹介してきました。日本国内ではまだこのツールを業務に取り入れているところはないように思います（取り入れているところがあったら教えていただきたいです。）が、表現の幅が広がりそうで個人的には楽しみです。
今回は簡単なご紹介に留まりますが、次回は各ノードのご紹介や作品作りに利用していきたいと思います。

# 参考

[MOPs: Motion Operators for Houdini導入のメモ｜shujihirai｜note](https://note.com/shujihirai/n/nd3c8edd2e731)
[First Look at Houdini MOPs Alpha - YouTube](https://www.youtube.com/watch?v=YRzmb_qvLi8&feature=emb_title&ab_channel=Five31)
[MOPs - Motion Graphics Operators for Houdini | Entagma | Houdini HIVE Utrecht - YouTube](https://www.youtube.com/watch?v=zuE8wP-e2w0&ab_channel=Houdini)
[A basic introduction to MOPs in Houdini - YouTube](https://www.youtube.com/watch?v=2L68t_MuVP0&feature=emb_title&ab_channel=RohanDalvi)
[LearnDay Episode 62: Motion Operators (MOPS) - YouTube](https://www.youtube.com/watch?v=rKPjiZ6g9vY&ab_channel=MIXTraining)
[Cinema 4D MoGraph in Houdini with MOPs! - YouTube](https://www.youtube.com/watch?v=SbzothO6Ois&ab_channel=Right-BrainedTutorials)