VIVE CosmosでSRWorksを使う

VIVE ProでARコンテンツを作成するために導入されていたSRWorksというパッケージがあります
VIVE Cosmosでもversion 0.9.0.3より利用可能になっているということで導入の方法を紹介します

####機器概要
- Unity 2019.3.2.f1
- SteamVR Plugin 2.5.0
- windows Laptop PC
- VIVE Cosmos <導入は[こちら](https://qiita.com/T170521/items/931f466a83ec221ecea5)>

####準備
#####1. 必要ファイルのDL
先に以下のサイトからファイルをDLしておく
~~[[DOWNLOAD] VIVE SRWorks (XR) SDK 0.9.0.3](https://developer.vive.com/resources/knowledgebase/vive-srworks-sdk/)~~
`追伸 -6/3-
SRWorksのversionが更新されました(v0.9.3.0)`
[Vive SRWorks SDK Release 0.9.3.0](https://forum.vive.com/topic/8288-vive-srworks-sdk-release-0930/?ct=1591140939)

必要なファイルは以下の3つ
- SRWorks (XR) SDK Unity Plugin (zip形式) 
- SRWorks (XR) SDK Unity Samples (zip形式) 
- SRWorks Runtime (msi形式)

他のファイルは導入に必要ないがサンプルなどがあるので各自必要な人はDLしてください
またUE4用のPluginとSampleもあるが今回はUnityで行う
![キャプチャ_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/bc21c4e5-7871-b470-c8e1-4d8a5414b29d.jpeg)

#####2. SRWorks Runtimeをインストール
DLしたVIVE_SRWorksInstaller_0.9.0.3.msiを開く
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/0f72aefb-11c7-b89b-20e8-cc19a55b6224.png)
Nextを押す
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/f19a28d9-7cb0-dcf6-0fb5-cb14f4c75cce.png)
インストールする場所を決める
基本デフォルトのままでよい
EveryoneとJust meはどちらでも構わないと思うが一応適切に答えておく
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/7d662220-f97e-9082-775e-27adcb4181fd.png)
Nextを押す
デバイスへの変更を許可するとインストールが始まる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/9bdf254e-b73c-b4c1-bf01-cf672aaae206.png)
完了したらCloseを押す

#####3. zipファイルの解凍
DLしたzip形式のファイルを解凍しておく

####導入手順
最初にVIVE Cosmosは接続しておく
#####1. projectを新規作成する
3Dを選択
名前は任意でよい
![無題.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/ea35adb1-ae4b-1912-6bf5-4391a05564c3.jpeg)

#####2. VIVE Cosmosの環境設定
VIVE Cosmosが利用できる環境を設定する
・SteamVR Pluginの導入　<[導入の記事](https://qiita.com/T170521/items/7098a13d6332128b630f)>

#####3. SRWorks-Pluginを導入する
先ほどDL,解凍したファイルの中にあるVive-SRWorks-Unity-Plugin.unitypackageをUnityへimportする
importはProjectウィンドウのAssetsの中に直接ファイルをDrag&Drop
もしくはタブからAssets > Import Package > Custom Package...でファイルを選択
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/9e807fb7-b87b-cef2-a589-bd6b85509594.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/d4c4ee53-a3ba-ced2-49eb-e49bdbe928ad.png)
Import Unity Packageウィンドウが出てくるのでそのままImportする
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/ea6cb577-3c83-201d-f2ce-1f99fef5ff54.png)

同様のやり方でVive-SRWorks-Unity-Experience.unitypackageもImportする

`※Importすると何やらwarningがたくさん出てくるが気にしなくてよい`
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/106de61b-1ead-b87c-2bd1-042bcfbb9c40.png)

#####4.XR機能の設定

File/Build Settingsを開く
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/c64880f2-f169-b0c3-cb79-c1ccbbb6f7b7.png)
Player Settingsを開く
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/438a3f55-aa9f-a6b2-d5ea-124471a22893.png)
XR Plug-in ManagementからInitialing XR on Startupの項目にチェックを入れる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/f98189a2-d553-fec3-c34b-4b53df478468.png)
AssetにXRというファイルが追加されるので確認する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/ea4ed72f-b995-3be6-fee6-37b6b3b73a14.png)

#####5. サンプルシーンを開く
Assets/ViveSR/Scenes/ViveSR_Sampleをopenする
するとSettingsのウィンドウが出てくるのでAcceptを押す
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/2b18ff24-6a57-d3bc-2f62-18afafe17abf.png)
気にせずUpdate layersをクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/38c452b0-6587-5ac2-4ae6-e57633e5a2de.png)
完了したら実行してみる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563922/c41b914f-ec56-b6ce-9a92-640cffe4bcc8.png)
前面カメラを通して前方の映像が見える
またAssets/Vive_SRExperience/Scenes/Demoを実行するとより様々なデモを体験することができる
<blockquote class="twitter-tweet"><p lang="es" dir="ltr">Demo1<a href="https://twitter.com/hashtag/Vive?src=hash&amp;ref_src=twsrc%5Etfw">#Vive</a> <a href="https://twitter.com/hashtag/Cosmos?src=hash&amp;ref_src=twsrc%5Etfw">#Cosmos</a> <a href="https://twitter.com/hashtag/SRWorks?src=hash&amp;ref_src=twsrc%5Etfw">#SRWorks</a> <a href="https://twitter.com/hashtag/Unity?src=hash&amp;ref_src=twsrc%5Etfw">#Unity</a> <a href="https://t.co/tvDa6a0CLA">pic.twitter.com/tvDa6a0CLA</a></p>&mdash; ゆーま (@sagirin262) <a href="https://twitter.com/sagirin262/status/1278517172956880897?ref_src=twsrc%5Etfw">July 2, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
<blockquote class="twitter-tweet"><p lang="es" dir="ltr">Demo2<a href="https://twitter.com/hashtag/Vive?src=hash&amp;ref_src=twsrc%5Etfw">#Vive</a> <a href="https://twitter.com/hashtag/Cosmos?src=hash&amp;ref_src=twsrc%5Etfw">#Cosmos</a> <a href="https://twitter.com/hashtag/SRWorks?src=hash&amp;ref_src=twsrc%5Etfw">#SRWorks</a> <a href="https://twitter.com/hashtag/Unity?src=hash&amp;ref_src=twsrc%5Etfw">#Unity</a> <a href="https://t.co/JTp44HcSYq">pic.twitter.com/JTp44HcSYq</a></p>&mdash; ゆーま (@sagirin262) <a href="https://twitter.com/sagirin262/status/1278517276392603648?ref_src=twsrc%5Etfw">July 2, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
<blockquote class="twitter-tweet"><p lang="es" dir="ltr">Demo3<a href="https://twitter.com/hashtag/Vive?src=hash&amp;ref_src=twsrc%5Etfw">#Vive</a> <a href="https://twitter.com/hashtag/Cosmos?src=hash&amp;ref_src=twsrc%5Etfw">#Cosmos</a> <a href="https://twitter.com/hashtag/SRWorks?src=hash&amp;ref_src=twsrc%5Etfw">#SRWorks</a> <a href="https://twitter.com/hashtag/Unity?src=hash&amp;ref_src=twsrc%5Etfw">#Unity</a> <a href="https://t.co/29ZnMVJ3sC">pic.twitter.com/29ZnMVJ3sC</a></p>&mdash; ゆーま (@sagirin262) <a href="https://twitter.com/sagirin262/status/1278517394206412801?ref_src=twsrc%5Etfw">July 2, 2020</a></blockquote> <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
###参考記事
- [Vive SRWorks SDKのサンプルシーンでunityが落ちる](https://teratail.com/questions/172828)
- [【Vive Pro Eye】Unityで視線追跡を公式SDKを使って実行してみる。](https://umehashi.hatenablog.com/entry/2019/07/31/153929)

**公式ページ**
- [Intro To VIVE SRWorks SDK](https://developer.vive.com/resources/knowledgebase/intro-vive-srworks-sdk/)
- [VIVE Pro SRWorks SDK and VIVE Audio SDKs - downloads](https://forum.vive.com/topic/2232-vive-pro-srworks-sdk-and-vive-audio-sdks-downloads/)
- [VIVE SRWorks](https://developer.vive.com/us/support/sdk/category_howto/vive-srworks.html)

**VIVE Developers**
- [Download](https://hub.vive.com/en-US/download)

**バグ**
- [VIVE SRWorks 0.8.0.2 demos crash. How to fix?](https://forum.vive.com/topic/5959-vive-srworks-0802-demos-crash-how-to-fix/?ct=1589971621)
- [ViveSR_Sample Unity Black Screen with Vive Cosmos Elite](https://forum.vive.com/topic/8244-vivesr_sample-unity-black-screen-with-vive-cosmos-elite/?ct=1590713112)
- [v0.9.0.3_Prebuilt_Samples-Unity Visual C++ ランタイム エラー](https://forum.vive.com/topic/7540-v0903_prebuilt_samples-unity-visual-c-runtime-error/?ct=1590717991)
- [Runtime Error Crash in Unity](https://forum.vive.com/topic/8311-runtime-error-crash-in-unity/?ct=1591140802)