こんにちわ、Unityエンジニアのオオバです。

先日OSS化されたDMM VR Connect SDKを使って、
自分の好きなVRMを自分のUnityアプリ上で表示させてみます。

📝 目次

最初に結論

自分のアプリに好きなキャラクターを持ち込む

DMM VR Connect SDKはアバター読み出し機能とストリーミング機能を内包したUnity Packageです。

DMM VR ConnectとはVRM対応させ、
自分のUnityアプリに自分の好きなVRMキャラクターを
持ち込むことができるパッケージです。

早速どういうSDKなのか使ってみたいと思います。

1. デベロッパー登録からSDKのダウンロード

DMM VR Connect for Devs
こちらからデベロッパー登録してください。

GitHub - dmm-com/vrlab-dvrsdk: DMM VR Connect SDK
SDKを含むサンプルプロジェクトを
↑こちらからダウンロードします。

$ git clone git@github.com:dmm-com/vrlab-dvrsdk.git  

オオバはgitを使ってダウンロードしました。

Unity2019.4.26f1で提供されていましたが、
オオバは最新のUnity2019.4.29f1を使用しています。

2. Unityプロジェクトを開くもエラーの嵐

ダウンロードしたプロジェクトをそのまま開くと、
エラーが出てコンパイルが通りません。

サンプルを動かすためには、
有料のFinalIKなどの外部アセットも必要になるようです。

本記事では「とりあえずDMM VR Connectを動かしたい」ため、
追加パッケージなしで動かしてみようと思います。

コンパイルを通すために、
以下のフォルダを削除します。

3. 設定ファイルの作成

このあたりは公式のマニュアルに従っていきます。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_86

Resourcesフォルダ内に設定ファイルを作成します。
オオバはSdkSettingsというファイル名にしました。

クライアントIDの設定

コチラのサイトからクライアント追加して、
クライアントIDを取得します。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_97

↑で入手したクライアントIDを、
先ほど作成した↓SdkSettingsのClient_idに入力します。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_104

4. 認証をテストしてみよう

認証サンプルのシーンを開いて再生します。
Assets/DVRSDK/Examples/DVRAuth/Scenes/LoginTestScene.unity

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_117

このような画面が表示されます。
中央上のLoginボタンをクリックします。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_123

外部ブラウザが開きます。確認をクリック。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_128

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_132

画面に従っていくと設定が完了します。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_138

これでログインは成功した模様です。

今後自分のアプリにログイン処理を組み込む際に、
このシーンの処理を参考にしましょう。

5. アバターを読み込む

こちらにアクセスして、読み込むアバターを準備します。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_151

「アバターを追加」をクリックします。

こちらでお借りしたキャラを表示してみたいと思います。
「右近」 / キツネツキ さんの作品 - ニコニ立体

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_159

ダウンロードした.vrmファイルを、
ドラッグアンドドロップします。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_165

するとこのように登録されます。

UnityでVRMを表示させる

Assets/DVRSDK/Examples/2DUIExample/Scenes/2DUIExample.unityこちらのサンプルシーンを再生してみます。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_175

コンパイルエラーを除去するために、
LiSyncInitializerがMissingになっていますが、
気にせずに進めます。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_182

左上のDMM VR Connectボタンをクリックします。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_188

Loginボタンをクリック。

【DMM VR Connect SDK】とりあえずVRMを表示させてみる!_193

表示された!!!

まとめ

DMM VR Connectは超簡単にVRMを、
Unity内に表示させることができることがわかりました。

次はこのキャラクタを動かしてみようと思います。

GitHub - baobao/vrlab-dvrsdk at LoadSimple
今回のプロジェクトはForkしたリポジトリにアップしていますので、
興味ある人は動かしてみてください。
※LoadSampleブランチに切り替えが必要です

最後にトラブルシューティング

キャラクタを読み込むときのトラブル。

Wait a moment, please  

Value cannot be null.  
Parameter name: value  

こういうエラーがでてキャラクタが表示されないことがありますが、
何度か再チャレンジするとキャラクタは表示されました。

👉 オススメ記事

2021秋 Asset Refreshセール
100以上のアセットがなんと50%OFF!!オオバもいくつか買いました!
期間 : 10月2日午後3時59分まで

👩‍💻 検証環境