HoudiniのアトリビュートをCSV Exporterで書き出す

#はじめに
「[点群データをHoudiniでボクセル表示する](https://qiita.com/reisyu/items/1d57a7430139e97f2568)」でも使ってみた通り、Houdiniは3Dスキャンの点群データなど大量のデータを開いたり加工したりするアプリとしても非常に強力です
Houdiniで様々な加工をしたデータを他のアプリでさらに活用することを目指して、エクスポートする良い方法がないかと探したところCSV Exporterというノードがあったので試してみました。

#環境
Houdini 17.5.229
GAME DEVELOPMENT TOOLSET 1.196

#CSV Exporter は GAME DEVELOPMENT TOOLSET の中にある
CSV ExporterはHoudiniの標準機能としては入っておらずGame Development Toolsetをインストールすると使えるようになります
[GAME DEVELOPMENT TOOLSET](https://www.sidefx.com/ja/tutorials/game-development-toolset-overview/) とは  
> Houdini におけるゲーム関連のワークフローをスピードアップするための高度なツールのコレクションです。 UV 編集から、シミュレーションよりモーションベクトルを抽出するなど、90以上のツールが用意されています。

#GAME DEVELOPMENT TOOLSETのインストール
Houdini16.5からはGAME DEVELOPMENT TOOLSETをHoudini 内より直接ダウンロードできます。下記のサイトを参考にインストールしました
SideFX公式サイト ： [GAME DEV TOOLSET インストール](https://www.sidefx.com/ja/tutorials/game-dev-toolset-installation/)
サルにもわかる Houdini ： [Game Development Toolset](http://ikatnek.blogspot.com/p/game-development-toolset.html)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/8aa5912c-d6fe-5b20-8f9e-06e0bff68feb.png)
インストールするとシェルフにGame Development Toolsetタブが追加され、その中にCSV Exporterがあります

#テスト用のジオメトリ
[Pig Head](https://www.sidefx.com/ja/docs/houdini17.5/nodes/sop/testgeometry_pighead)に[Color](https://www.sidefx.com/ja/docs/houdini17.5/nodes/sop/color)ノードと[Attribute Create](https://www.sidefx.com/ja/docs/houdini17.5/nodes/sop/attribcreate)で適当なアトリビュートを追加したものです
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/e7809220-3c4a-6679-8711-2ffbc09f2e50.png)


#CSV Exporterの使い方
シェルフのCSV Exporterをクリックするとノードが作成されます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/d4532d5d-414b-6898-0ad0-1a623c5556e9.png)

##エクスポート対象を選ぶ
Export Nodeの右側のボタンから
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/ec17996d-a7c4-d4d3-2671-1e504178b725.png)

書き出し対象にするノードを選んでAcceptをクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/3886ee4d-9f88-eed0-49ee-40acf333ed4c.png)

##CSVをエクスポート
Renderをクリックすると
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/36740ba0-965e-aaab-393b-a29f99178e2e.png)

CSVが作成される
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/41979ce2-c8f7-2138-e58f-1f005c6e2dd1.png)

CSVを開くとこんな感じ。Pointのアトリビュートだけがエクスポートされるようです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/e9d75a54-c3cc-9105-4ec3-246f8e41ee21.png)

##書き出すアトリビュートを絞り込む
Filtered Exportにチェックを入れるとエクスポートするアトリビュートを選べます。Cdを指定してみました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/11177930-1438-bf76-c635-d5a6c1bec7b2.png)
Cdだけがエクスポートされました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/935bd38a-ca75-4804-9395-a24a7bce7396.png)

##ベクトルの成分を分解する
Separate Vector Componentsにチェックを入れるとベクトルの成分ごとに分けてエクスポートされます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/9042454d-b263-9129-221f-d4faf23e709c.png)
３列に分かれました
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/80022db4-4094-2a35-7692-f03ccd2e503a.png)

Component Suffixesを書き換えると
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/f45fce3a-3458-d4f1-d64a-a78d4e6d5092.png)

CSVのヘッダーに反映されます
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/433170/2804f121-60a5-139e-d36e-9a7dbf71b8d2.png)



#参考
SideFX公式サイト
　[GAME DEVELOPMENT TOOLSET 概要](https://www.sidefx.com/ja/tutorials/game-development-toolset-overview/)
　[GAME DEV TOOLSET インストール](https://www.sidefx.com/ja/tutorials/game-dev-toolset-installation/)
サルにもわかる Houdini
　[Game Development Toolset](http://ikatnek.blogspot.com/p/game-development-toolset.html)