GridMarketを使ったHoudiniレンダリング

こんにちは。
初めてのqiita投稿、アドカレ参加です！
自分は現在大学3年です。物は試しで参加してみました。
よろしくお願いします！

##はじめに
みんな知っている”ODFORCE”。このサイトの広告でいつも出ているGridMarket。調べてみるとクラウドを使ってシミュレーションやレンダリングができるサービスらしいです。
以前から気になっていたので、利用してみました。

##GridMarketとは
クラウド上でレンダリング、シミュレーションを行えるサービス。Houdini以外にもC4DやRedShiftなどにも対応しており、CPUだけでなく、GPUの処理も提供しているそうです。また、scholarshipで手厚いサポートを受けられたり、学割が効いたりします。
サイトは[ここ](https://www.gridmarkets.com/)



##登録
最初に会員登録をします。
Services -> HoudiniでHoudiniのトップ画面へ移動し、サイト最下部のフォームにて登録します。
あとはよくある会員登録作業なので省略します。

##レンダリングまでの3ステップ
実際に始めるためには3ステップだけです。
1GridMarketのEnvoyをダウンロード・インストール
2最新のプラグインをダウンロード・インストール
3Envoyを起動、ログイン

基本的には会員登録後送られてくるメールのリンクの誘導に沿って進めます。

#####1GridMarketのEnvoyをダウンロード・インストール
そもそもEnvoyとは、Lyft社が開発したオープンソースプロキシサーバーのことです。公式サイトは[こちら](https://www.envoyproxy.io/docs/envoy/latest/intro/what_is_envoy)。
[こちら](https://qiita.com/rerorero/items/0eea0e02955950dd85fc)のQiitaが詳しいと思います。
すごく簡単に言えば、サーバーに接続してデータのやり取りをするためのものです。Windows/mac/linuxに対応しているので、自分に合ったものをリンクからダウンロードします。このEnvoyによってレンダリングされた後のデータをバックグラウンドでダウンロードできます。

#####2最新のプラグインをダウンロード・インストール
Houdini用のプラグインをダウンロードします。ダウンロードしたファイルを開けるとサンプルhipとhdaファイルが入っています。hdaは
Windowsなら
```C:\Program Files\Side Effects Software\Houdini (使っているバージョン番号)\houdini\otls```
Macなら
```/Users/Shared/houdini/(使っているバージョン番号)/otls```
Linuxなら
```/opt/hfs(使っているバージョン番号)/houdini/otls```
の場所にコピペしてプラグインを入れます。

#####3 Envoyを起動、ログイン
Envoyを起動してログインします。この時、メールアドレスとアクセスキー入力が必要になります。アクセスキーはポータルのパスワードとは別です。ポータルのprofileで確認できます。

これで設定は終わりです。

##レンダリング
Houdiniを起動するとROPに新しいノードが追加されています。
![ROPノード1.png](https://qiita-image-store.s3.amazonaws.com/0/186607/ec611d35-9e3a-6bfe-8de6-fb79ed688581.png)

このROPでレンダリングしたいフレームの指定やラベルを付けることなどができます。
![attrib.JPG](https://qiita-image-store.s3.amazonaws.com/0/186607/1706de3b-9ce5-9c99-319f-381ddeeb9cc4.jpeg)


レンダリングしたいレンダラとこのROPを接続し、GridMarketsRenderSubmitROPのSubmit Renderを押すと、preflightが開かれます。![preflight.JPG](https://qiita-image-store.s3.amazonaws.com/0/186607/07d42e21-bc1d-b031-a45b-7fd73117098b.jpeg)Preflightではサーバーに何をアップロード・ダウンロードするかを決められます。シミュレーションやジオメトリのキャッシュはサーバーに上げっぱなしにできるので、便利です。(サーバーに上げるデータ量や上がっている期間によって料金が発生することはないようです。優しい。)

Preflight画面でSave and Continueを押せば完了。
Launcherが起動してデータのアップロードを始めてくれます。
ここでEnvoyを開くと、サーバー上の自分のファイルを確認できます。また、Envoyでサーバーに上げたデータの削除とダウンロードが可能です。
そして、レンダリングを始めるとGridMarketはメールをくれます。

レンダリングの進行状況はポータルサイトで確認できます。
GridMarketRenderSubmitROPのOpenManagerPortalでポータルを開きます。
![attrib_2.jpg](https://qiita-image-store.s3.amazonaws.com/0/186607/8e8b2392-63f1-efa4-3bdb-68641a927d42.jpeg)
↑ここ

ポータルを開くと、進行状況とクレジット残高などが見ることができます。
Actionの下にあるファイルマークを押すと、サーバーのログも見ることができます。![portal_2.jpg](https://qiita-image-store.s3.amazonaws.com/0/186607/42c5d972-1091-8f2a-ff96-1b2cc4e37a06.jpeg)

↑試しにレンダリングしてみたもの

レンダリングが終了すると、データはレンダラのROPで指定したディレクトリに保存されます。レンダリングが終わったものから逐次ダウンロードされて保存されるので、すぐに確認できます。

##コストについて
料金は使用するマシンの数に応じてかかります。他に関係する要素として、レンダラの種類、CPUかGPUか、レンダリングマシンのメモリ容量、レンダリングマシン1台に対する仮想プロセッサの数があるそうです。
アップロード・ダウンロードのデータ容量やファイル容量と料金は関係なく、[ここ](https://www.gridmarkets.com/calculator)で見積もることもできますが、正直あまりあてになりませんでした。
[こちら](https://portal.gridmarkets.com/init/member_plugin/getting_started)の方法を使って自分で見積もったほうがよさそうですが、会員登録してログインしないと見ることができないようです。

処理速度に応じてコースが3つあり、
Rush/Standard/Economy
から選べます。
マシンの数はそれぞれ60台/30台/5台となっています。

料金に関して細かく見るなら公式の[ここ](https://www.gridmarkets.com/pricing)。

##レンダリング中にクレジットがなくなると
レンダリングしていて予想していたよりも時間がかかってしまい、クレジットが0になってしまうとGridMarketが自動で5クレジットだけ貸してくれます。これはCredit Overdraftという名前でポータルサイトのprofileから自分があとどれくらい使えるのか確認できます。
しかし、Credit OverdraftはGridMarketが貸してくれるというだけなので、いつかは返さないといけません。そのため、Overdraftを使った後でクレジットを購入すると自動的にその分のクレジットは引かれてチャージされる仕組みになっているようです。

##まとめ
思っていたよりも簡単にクラウドレンダリングができて、びっくりしました。
今回はレンダリングの方法を紹介しましたが、シミュレーションでも使えるそうです。
初回登録すると20クレジット無料でもらえるので、試してみてはいかがでしょうか。

####追記
GridMarketRenderSubmitROPと一緒にインストールできるGridMarketTranscodeを使うと、GUI操作で手軽に.exrファイルからH.264ファイルを生成できます。
手順として(windowsの場合)
[FFMpeg](https://www.ffmpeg.org/)をダウンロード、解凍
transcodeROPでffmpeg.exeのディレクトリを指定
レンダラのROPに繋いでAutodetectInputにチェックを入れる
Renderをおす
となり、CUIが嫌いな人でも簡単にH.264に変換できます。

便利なツールですので、お試しください。

####追追記
裏技ですが、GridMarketでレンダリングするとApprenticeでもウォーターマークはつかないです。