AltspaceVR-Unity-SDKを使ってAltspaceVR内に表示させるまでの流れ

##**はじめに**
AltspaceVR SDKが本家（Altspace）から出ていますが、[AltspaceVR-Unity-SDK](https://github.com/amadden1990/AltspaceVR-Unity-SDK)（以下：AUS）は、Anthony Maddenという方が作られたUnity向けパッケージです。これによりUnityでAltspaceVRのコンテンツを作るのが簡単になるらしい。
（らしいというのは自分がまだ本家のSDKやUnityをほとんど使っておらず比較できないため）

この記事の内容は

- UnityへのAUSの導入の仕方。
- AUS入りUnityで簡単な3Dを配置しファイルを出力。
- 出力したファイルをAltspaceVR内で確認。

になります。

[AfjK](https://qiita.com/afjk)さんの本家AltspaceVR SDKを使用した記事は[こちら](https://qiita.com/afjk/items/0914b2ec8ff580d73136)です。

##**対象**
Unity初心者向け。ただし既にUnityはインストールしていることを前提にしています。
（自分でパッケージを入れて設定しWebサーバにアップできる方は、この記事は不要です。）
英語が大丈夫な方は、AUS作者の[動画](https://youtu.be/RtzNc_02FKs)を見るだけで大丈夫だと思います。英語が苦手な方は、この記事を見つつ動画を見ると補完できるのかなと思います。




##**環境**
**自分の環境**
OS:  Windows 10, 64bit
GPU: GeForce GTX1070
Unity: 2018.1.6 / 2018.2.2
AUS unitypackage: 0.4

**動作確認HMD**
oculus go

##**手順**
**1.まずは、AltspaceVR-Unity-SDKをダウンロードします。**
ファイルは[ここ](https://github.com/amadden1990/AltspaceVR-Unity-SDK)。
![AltspaceVRUnitySDK.png](https://qiita-image-store.s3.amazonaws.com/0/277460/104fc47a-d599-2602-31e8-1cebdbd8f188.png)
一番新しいファイルAltspaceVR_0.4.unitypackage（18/08/04現在）を適当な場所にダウンロードします。


**2.Unityを起動します。**
いつものように新規で作ってください。

**3.ダウンロードしたパッケージをインポートします。**
メニューからAssets>Import Package> Custom Packageを選択。AltspaceVR_0.4.unitypackageを選びます。
![unity02.png](https://qiita-image-store.s3.amazonaws.com/0/277460/680b5c1a-018c-6b15-153f-fe12fa408452.png)

以下の画面が出るのでImportをクリック。
![unity03.png](https://qiita-image-store.s3.amazonaws.com/0/277460/dae94282-86d1-25e2-93dc-f3eb7e524547.png)


**4.AltspaceVR ウインドウを確認**
メニューからWindow>AltspaceVRを選択。
![unity05.png](https://qiita-image-store.s3.amazonaws.com/0/277460/81016db2-6fc2-c189-4ee3-ac203f5ef9da.png)


適当な場所にできたウインドウをくっつける。（つけるとしたら右端かな。下図参照）
![unity091.png](https://qiita-image-store.s3.amazonaws.com/0/277460/f8ff9dbc-d419-2ced-dca0-2225b2163fe0.png)
上から３番目の空白に「vrtest」と入力します。(自分で適当な名前を入れて下さい）

**5.３Dオブジェクトを配置**
Create a new entityの中にあるa-planeをクリックする。
TransformでRotationやScaleに適当に値を入れる。
![unity04.png](https://qiita-image-store.s3.amazonaws.com/0/277460/7125fd8b-fed9-a5ef-a1af-c1532b4584de.png)
この辺のことは好きに配置してみてください。

**6.テクスチャを３Dオブジェクトに設定**
白いままでは味気ないのでテクスチャを貼ってみます。

画面下付近にある
Assets＞Resourse＞textureを開き、テクスチャになる画像をドラッグアンドドロップで放り込んでください。

![unity12.png](https://qiita-image-store.s3.amazonaws.com/0/277460/441734cc-5aff-1afc-d9b4-eff20eba3e0c.png)
右上あたりのEntity(Script)にあるTexture Nameのところにテクスチャ画像の名前を入れて下さい。
ここではcubeにはgreentile.pngと入力してます。

**7.プロジェクトをビルドしてファイルを出力**
AltspaceVRウインドウのbrowseを押して、出力するフォルダのpathを指定します。
例えば「D:\Unity」となれば「D:Unity\vrtest」にファイル一式が出力されます。pathを指定し忘れるとエラーが出ますので注意してください。

次に一番下にあるBUILD PROJECTのボタンを押して下さい。ウインドウ開いてファイルとフォルダが生成されます。



##**動作確認**
作成されたindex.htmlを確認する方法はいくつかあるかと思います。
ただ[XSS](http://e-words.jp/w/%E3%82%AF%E3%83%AD%E3%82%B9%E3%82%B5%E3%82%A4%E3%83%88%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0.html)対策のため、index.htmlをクリックして、通常ブラウザで見ても正しく見えません。ローカルサーバを立ててテストをするのが流れだと思いますが割愛し、公開webサーバにアップロードする方法を紹介します。
　　
生成されたファイル一式（index.html他同じ階層のフォルダ全て）をFTPで公開webサーバにアップロードします。


公開webサーバにアップロードするためには、
・サーバはレンタルする
・自宅サーバを立ち上げる
という方法があります。
またインターネットを接続する際に契約したプロバイダがオプションとしてウェブサイト制作用に提供している場合があります。（無料レンタルサーバもありますが、広告がつくものが多いです、、、どうなるんでしょうね。。。）ちなみに私の場合はプロバイダが提供していて10MB分だけ無料でついてましたので、これを使いました。もちろん広告はつきません。

ファイル一式をサーバにアップロードするにはFTPアップローダを用います。
アップローダはいくつかあると思いますが、ここでは[FFFTP](https://ja.osdn.net/projects/ffftp/)を使用しました。
![unity13.png](https://qiita-image-store.s3.amazonaws.com/0/277460/e6defde3-67cd-c59a-22e5-80294f432cd1.png)

アップロードが済んだらAltspaceVRにログインし、適当な部屋で五角形？のボタンからアップしたアドレスを指定し読み込ませて下さい。
作成したものが表示されたら一連の流れは達成です。
![unity14.png](https://qiita-image-store.s3.amazonaws.com/0/277460/58c3ad17-87e5-75b5-f0a4-5025afc32275.png)


##**おわりに**
[AfjK](https://qiita.com/afjk)さんの[記事](https://qiita.com/afjk/items/0914b2ec8ff580d73136)に
>つまり、AltspaceVRのアプリ表示機能は実は3D表示専用(WebGL専用?)のブラウザだったというわけです。

とあり、自分的には一気に理解が進んだのですが、公開webサーバにアップロードするなどは自ウェブサイト（ホームページ）を作ったりする経験がないとちょっと大変かなと思います。ローカルサーバもいろいろ方法があると思います（自分の場合はpythonでflaskを使用）が、他サイトでも多く解説されているので割愛しました。
日本語でAltspaceVR-Unity-SDKについて書いている記事があまり無いようだったので取り上げてみました。

長くなりましたが制作の助け・きっかけになれば幸いです。以上です。


##**参考・資料サイト**

- [AltspaceVR-Unity-SDK](https://github.com/amadden1990/AltspaceVR-Unity-SDK)
- [AltspaceVRへ３Dモデルを持ち込む](https://qiita.com/afjk/items/0914b2ec8ff580d73136)