■STYLY 全身３Dスキャンデータ→Mixamo（リギング、モーション）→STYLYで動かしてみた件

##**■はじめに**
・"Psychic VR Lab"さんの所で自分の全身3Dスキャンデータを撮って貰ったので、そのデータを同社が運営しているVRプラットフォーム"STYLY"にアップロードして動かすまでの手順を忘れないうちに**備忘録**として残します

###**■■ここで出来るようになること**
・"Blender"を使ったfbxフォーマット変換方法
・"Mixamo"を使ったリギングとモーション割当方法
・"STYLY"でVR利用可能な"Scene"作成

**［実行イメージ（クリックすると動画が再生します）］**
[![STYLY実行動画](https://qiita-image-store.s3.amazonaws.com/0/224568/2e4263c5-fe89-f18e-b8c5-bccc1936ecc8.png)]( https://youtu.be/TceXOV5Ire4)

▲初投稿：2018-04-27


##**■開発環境**
・開発用パソコン（インストール要アプリケーション）
　・Blender 2.7.9b・・・3DCGアニメーションを作成するための統合環境アプリケーション ダウンロードは[こちら](https://www.blender.org/download/)

・Mixamo・・・3Dキャラクターやアニメーション制作やカスタマイズを行うことができるWEBサービス 詳細は[こちら](https://www.mixamo.com)
・STYLY・・・VR空間を制作し、配信することを可能にするWEBベースのプラットフォームサービス 詳細は[こちら](https://suite.styly.cc/)
**※上記の２つのサイトには事前にアカウント登録を行っておく必要あり**

##**■やってみよう！**
###**■■全身３Dスキャンデータを入手**
・自分の場合は"Psychic VR Lab"さんの所で全身３Dスキャンデータを撮って貰いました。ファイルには
　　・mesh.mtl
　　・mesh.obj
　　・mesh_u1_v1.jpg
　が入っており、このままだと、mesh.objのサイズが大きいので、"Mixamo" にアップロードすると
　エラーになります。と言う事で、サイズを小さくするため、"Blender" を使ってobjからfbxファイル
　に変換します

###**■■"Blender"を使ってobjからfbxファイルに変換**
**［Blender：初期画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/e9cada9f-3e67-31d0-5595-70e6cc886ad0.png">

・”Blender” を起動。初期画面にある”Cube”を削除する
・画面右側に出ている”アウトライナー”に出ている”Cube”の所で右クリックします
・表示されるメニュー内から”削除”を選択して押します

**［Blender：objファイルをインポート］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/97740f10-95bf-1e58-1ebd-bdc44856d8e5.png">

・メニューバーの ”ファイル” から ”インポート”　→ ”Wavefront(.obj)” をクリックします

**［Blender：objファイル指定］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/576fb060-4e65-9e4f-1433-9403352b9336.png">

・3Dスキャンした .obj ファイル(mesh.obj)を指定します。”OBJをインポート”ボタンを押します

**［Blender：トランスフォームメニュー表示］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/7f75dc6a-cd55-7153-ee71-0bb431b9d731.png">

・画面右側に出ている”アウトライナー”に出ている”default”をクリックします
・画面右側に出ているメニューの”＋”を押すと”トランスフォーム”メニューが表示されます

**［Blender：オブジェクト位置調整］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/bee785bb-30ce-44aa-d0d9-22073fde8ea2.png">
**［Blender：オブジェクト位置調整］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/42e416bc-bf39-5634-01ca-6eee142a2107.png">

・”トランスフォーム”メニューの位置(x,y,z)、回転(x,y,z)等の数値を変えてオブジェクトが対面になうように位置を動かします

**［Blender：fbxファイルにエクスポート］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/67a74e05-3e85-cb6c-94a0-8d556bfa6d70.png">

・メニューバーの ”ファイル” から ”エクスポート”　→ ”FBX(.fbx)” をクリックします

**［Blender：fbxファイル保存］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/ce52bbe8-7fed-46e0-77dc-e3b0bef0b0c7.png">

・任意の場所に保存するfbxファイル名を入力し、”FBXをエクスポート”ボタンを押します
・しばらく待って該当のファイルが出力されていれば成功です
・出力されたfbxファイルと3Dスキャン時にできたテクスチャのファイル(mesh_u1_v1.jpg)を一緒にした圧縮ファイル(Zipファイル)を作成します。この圧縮ファイルはMixamoにモデルデータをアップロードする際に使用します

###**■■Mixamoを使ってリギング、モーションを付けたfbxファイルを作成する**

**［Mixamo：ログイン画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/531e2fcf-f5f9-83d3-9e65-f0f27f8dafe1.png">

・"Mixamo"サイトにアクセスして事前に取得したアカウントでログインします。ログイン画面は[こちら](https://www.mixamo.com/)

**［Mixamo：ログイン後画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/a3649d9d-a6cd-3061-dad6-03c4ebed3586.png">

・ログイン後、画面右側にある”UPDATE CHARACTOR”ボタンを押して、モデルデータをアップロードする画面を呼び出します

**［Mixamo：アップロード画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/13ff3859-2b5c-3e0c-63dd-f5284dbf9b61.png">

・先ほど圧縮したZipファイルを画面の点線で囲んでいる”Select charactor file...”と書かれている四角の中にDrag&Dropします

**［Mixamo：アップロード中画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/e9a7e642-930e-7fad-eb01-ecb8dc4f9375.png">

・アップロードが始まるとインジケータ画面が表示されるので、しばらく待ちます。

**［Mixamo：アップロード完了画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/388f6646-90c9-0ca2-cf7a-86cd99ee466c.png">

・アップロードが完了するとモデルが表示された画面になるので画面左下にある矢印を押してモデルが正面に向くよう動かします

**［Mixamo：アップロード完了画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/2f2aa8a2-728e-226f-9210-4512d3910f18.png">

・モデルが正面を向いたら、画面右下にある”NEXT”ボタンを押します。

**［Mixamo：リグ入力画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/5cc0cd5f-4eb1-aeb9-123e-7fa5db2aca2e.png">

・モデルにリグを入れていきます。画面右側にある女性のサンプルのように画面左側の円をモデルの関節部にDrag&Dropして配置します
・通常左右対称に配置が出来るのですが、画面の様にモデルが中央線に来ていない場合画面下部の”Use Symmetry”のチェックを外すと左右別々に配置できます
・CHIN　　顎　　青円
・WRISTS　手首　緑円（左右）
・ELBOWS　肘　　黄円（左右）
・KNEES 　膝　　橙円（左右）
・GROIN 　股　　桃円
※3Dスキャンをした時は寒い時期だったので、厚着したままスキャンしたのですが、リグを設定する際に関節位置が見えずらかいのでやりにくかったです。スキャンは関節位置が分かりやすい服装でする事をお薦めします

**［Mixamo：リグ入力画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/5a3ea3e6-b9b3-5206-c82a-5c59dcb37ca8.png">

・リグの設置が終わったら、画面右下にある”NEXT”ボタンを押します

**［Mixamo：リグ設定中画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/1a6e87fd-ff48-cf22-67f4-84de86c39422.png">

・処理中のクルクル回る画面になるのでしばらく待ちます

**［Mixamo：リグ処理終了画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/0831cb76-d9c0-8595-add1-0875fd8c44c4.png">

・処理が終了するとデモンストレーション画面になるので画面右下にある”NEXT”ボタンを押します

**［Mixamo：アニメーション選択画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/ff95b2ef-b933-7379-4da7-40b4b65ed77e.png">

・モデルにモーションを割り当てます。画面の左側にサンプルアニメーションが表示されているので、割り当てたいものをクリックします
・アニメーションは多種類存在しているので、画面左上の検索枠か画面右の”FIND ANIMATIONS”ボタンを押して検索キーワードを入力して抽出します
・デフォルトで”combat”, ”dance”等の選択ワードを指定することも可能ですので色々探してみましょう 

**［Mixamo：アニメーションデモ画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/999cd069-f4bb-e32c-25c1-be71832983b8.png">

・サンプルアニメーションをクリックすると画面右側でモデルが指定したモーションで動き出します。これで良ければ”DOWNLOAD”ボタンを押します

**［Mixamo：ダウンロード設定画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/2f300a90-6cd5-b6db-2f9e-69c6044bb8cb.png">

・ダウンロードする際のファイルの設定が出来るので必要であれば設定変更します。開始するときは画面右下の”DOWNLOAD”ボタンを押します

**［Mixamo：ダウンロード準備画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/8be31593-a3ab-2323-f906-57ac10ba1486.png">

・ダウンロードするファイルを作成したいますのでしばらく待ちます。作成出来たらダウンロードが開始されます。ファイル名はアニメーションの名前が自動的に割り振られます
・ここではfbx形式ファイルを作成したという前提で話を続けます

###**■■STYLYを使ってモデルデータを動かしてみよう。そしてインターネットに公開してみよう**

・STYLYはPsychic VR Lab さんが運営しているVRやプログラミングに詳しくなくてもVR制作・配信までを行えるプラットフォームサービスです。
・現在、無料で利用可能となっているので感謝して使わせて頂きます

**［STYLY：ログイン画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/09dd60bc-ae20-7850-8e01-4bb6afd020b7.png">

・"STYLY"のWebサイトにアクセスして事前に取得したアカウントでログインします。ログイン画面は[こちら](https://webeditor.styly.cc/)

**［STYLY：Launch STYLY Editor起動画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/32f164b7-843f-5fd8-c891-ea24f86712fe.png">

・”Launch STYLY Editor”ボタンを押してエディタ画面に移行します

**［STYLY：既存データ呼び出し画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/28b04a63-d5ba-b086-1366-5d1f4ee2fcd8.png">

・既存のデータを呼び出せるメニューが出てきますが、今回は新規で作りたいので”Create Scene”タブを押します

**［STYLY：新規作成画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/47f03711-4235-5e9f-f0e7-3d25053ab652.png">

・データのタイトルを入力して”Create”ボタンを押します

**［STYLY：初期エディタ画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/dd020276-46ab-a91b-cf72-aa632ee25afb.png">

・初期画面が表示されます。まず、画面左上にある"Assets"アイコンを押して3Dモデルを呼び出す画面を表示します

**［STYLY：Assets画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/ad42cb00-2498-f1f0-08c3-0097d3c3b276.png">

・"3D Model"パネルを押します

**［STYLY：Upload 3D Model画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/ba1f8252-0eae-b926-732d-f6a1e4340f4f.png">

・ここではいくつかのタブがあり、その各々で色々な3Dモデルを使うことが出来ますので呼び出して使ってみましょう。ここではダンス用のステージを呼び出してみます
・先ほど作ったモーション入りのfbxファイルをアップロードしてみます
・"Select..."ボタンを押して先ほど作ったfbxファイルを指定します。そして"Upload"ボタンを押すとアップロードが開始します

**［STYLY：アップロード画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/0aa188ea-7ce3-6d46-c07e-85a03c6f724b.png">

・アップロード中はどこまで進んだか途中経過を確認することが出来ます

**［STYLY：My Models画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/c054c606-0eca-61d6-5ecc-add504933a8f.png">

・アップロードが完了すると"My Models"タブの中に指定したモデルの名前のパネルが出てきます
・パネルをクリックするとさっきアップロードしたモデルがSceneに表示され動き出します

**［STYLY：Scene画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/87672657-df82-1f53-2509-8e4c6afec516.png">

・このSceneでは、見栄えが良くなるようにAssetの "Poly 3D Models" からダンスステージの3Dモデルを配置しました
・"Start Position"が視界の中心になるように、3Dモデルを調整していきます
・画面左側に出ているModelの一覧から調整したいものをクリックして選択します
・画面右側にある上から二番目のアイコンをクリックすると"move"(移動), "scale"(拡大縮小), "rotatie"(回転)の順に切り替わります。これを使ってModelを調整します
・調整したいモードを選択して、モデルの近くに出ているスケーラ（３軸の矢印または球体）を動かしながら自分の置きたい位置、大きさ、傾きを決めていきます
・これで表示するための作業は終了です。保存はAutoSaveしてくれるのでしばらく待ってば保存されます。もっと詳しい使い方を知りたいときは下記のマニュアル、チュートリアルを参考にしてください

　・STYLYマニュアルは[こちら](http://docs.styly.cc/ja/%e3%82%88%e3%81%86%e3%81%93%e3%81%9d/)
　・STYLYチュートリアルは[こちら](https://newview.design/howto/start)

・作ったシーンをVR等で見たいので、Public処理を行います。画面左上のPublicアイコン（地球）をクリックします

**［STYLY：publish画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/5bb05008-eb07-1687-0abb-bd5dce10041b.png">

・publish画面が表示されますので、タイトルと説明文(任意)を入力します。良ければ "Publish" ボタンを押します

**［STYLY：publish処理中画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/b2561958-ed3f-18d6-4da1-63a9f13ecbee.png">

・しばらく処理中の画面が表示されるので待ちます

**［STYLY：publish処理完了画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/0e2244f4-635f-3401-17c9-a3b4eaae82d2.png">

・処理が完了すると、インターネットに公開されているURLのリンクが表示されるのでクリックします

**［STYLY：public公開画面（クリックすると動画が再生します）］**
[![STYLY実行動画](https://qiita-image-store.s3.amazonaws.com/0/224568/d4038bcf-6387-2263-1a47-c4d51fcfb110.png)]( https://youtu.be/TceXOV5Ire4)


・モデルを配置した公開用の画面が表示されます
・画面右下にある"キューブ"型アイコンをクリックすると別タブで単眼の立体画像が起動されます
・画面右下にある"アイマスク"型アイコンをクリックするとHTC VIVE, Oculus Rift, Windows Mixed Reality, Daydream等で使えるアプリケーションを起動しようとします。各々のデバイスでVR画像を楽しむことが出来ます

・実際にPublicに公開されているSTYLYのサイト[こちら](http://gallery.styly.cc/KenS/fc6d3e6b-4371-11e8-b34d-4783bb2170d0)

**［STYLY：GALLERY画面］**
<img src="https://qiita-image-store.s3.amazonaws.com/0/224568/67cbe801-b1d1-a8ab-71ab-5f92ea7a1cf1.png">

・Publicに公開されたSceneはSTYLY：GALLERY画面にも表示されます[こちら](http://gallery.styly.cc/)のでURLが分からなくなっても探すことが出来ます


##**■あとがき**
・気づかれている方もいるかと思いますが、今回の手順では一切プログラムコードは書いていません。VR系のアプリを技術的なことは判らないのだけど作ってみたいという方にはお勧めです。まずは自分で体感してみて次に進むのは重要なことです。興味を持たれたあなたちょっとやってみませんか？別の異世界が見えてきますよ！


##**■参考**
・Blender　ダウンロードは[こちら](https://www.blender.org/download/)

・Mixamo　サイトは[こちら](https://www.mixamo.com)
・Mixamoチュートリアルは[こちら](https://unt-ad.jp/blog/post.php?a=6)

・STYLY　サイトは[こちら](https://suite.styly.cc/)
・STYLY　マニュアルは[こちら](http://docs.styly.cc/ja/%e3%82%88%e3%81%86%e3%81%93%e3%81%9d/)
・STYLY　チュートリアルは[こちら](https://newview.design/howto/start)
・STYLY　GALLERYは[こちら](http://gallery.styly.cc/)
・STYLY　STEAM は[こちら](https://store.steampowered.com/app/693990/STYLY/)
・STYLY　Google Play は[こちら](https://play.google.com/store/apps/details?id=com.psychicvrlab.styly.daydream)

・実際にPublicに公開されているSTYLYのサイト[こちら](http://gallery.styly.cc/KenS/fc6d3e6b-4371-11e8-b34d-4783bb2170d0)