VR Interaction Framework unityアセットを買って動かしてみたメモ。ブラウザで動くVRのFPSゲームが作れるだとΣ(゚Д゚)

Unity
※記事内に広告が含まれています。

バーチャル3Dクリエイター神部まゆみです(*^-^*)

この記事はunityアセットのVR Interaction Frameworkを使ってみたからそのメモです。

VR Interaction Frameworkっていうのはこれね↓
VR Interaction Framework | UnityAssetStore

ちょくちょく半額セールやってるから安い時に買ってみるのも良いかも。

●PRスペース●
■PR■

現在、毎日割引アセットが変わる Unity Flash Deals セール(50~80%オフ)をやってるみたいです。

Unity Flash Dealsセール 最大80%オフ

欲しいアセットはこの機会に買っておくと良いかも。

〇まゆみマート|BOOTH

BOOTHでVRoidテクスチャやVRChat向けオブジェクトなどを販売しています。いいねしてくれると励みになります(*^-^*)

買おうと思ったきっかけ:webXRのアセットをいじりたかったから。あとセールで半額だったからw

WebXRはDe-panther氏のwebXR-exportを前いじったけど、他のやつもいじってみたかった。

それに何よりunityアセットスプリングセールで半額だったからw

paypal支払いで五千円ちょいくらいで買えた。

VeryAnimationとかPlayMakerとかの有名アセットがセールになる時は大体安くなってるかも?

たぶん年2~3回くらい安く買えるチャンスがある気がする。

VR Interaction FrameworkのWebXRサンプル

VR InteractionsもwebXRのサンプルがあって動いたのでいじってみたかった。

↓こちらで試せますが、Meta Quest2 + Metaブラウザで動かせました。

https://meet.beardedninjagames.com/xr/

↓動画

vrinteraction framework sample

↓GIF

webXRじゃないVR向けのゲームも開発できる

結構色々なデバイスのVRゲーム開発をサポートしてるっぽい。

Meta QusetだけじゃなくViveやPicoとかもサポートしてるようです。

というかVR Interaction FrameworkがwebXRをサポートしだしたのは比較的最近っぽいので、まだベータ版みたいな扱いっぽい?

買ってから気付いたけど、De-Panther氏のwebXR exportを使う感じっぽいですw

マニュアルだけじゃちょっと分かりにくいかも…?Discordに登録して調べつつやってみる

こちらがマニュアルですが、これだけだと少し分かりにくいかも?(;^_^A

Home

こちらがサポート用のDiscordなので、登録して過去のスレッドを見ると分からないところが潰せるかも。

Discord - Group Chat That’s All Fun & Games
Discord is great for playing games and chilling with friends, or even building a worldwide community. Customize your own...

discordの翻訳方法はいくつかあるみたいだけど、とりあえずブラウザ拡張機能のsimple translateでやってみます。

Simple Translate - Chrome ウェブストア
Webページ上で選択・入力したテキストを瞬時に翻訳します。Google翻訳とDeepL APIに対応しています。

選択部分だけ翻訳する感じだけど、特に設定もいらず動かせました。

選択してアイコンをクリックすると翻訳できます。

simple translate 翻訳 拡張機能

検索しても日本語の情報が少ないかも…

買う前に日本語で検索してみたけど、「明らかに買ってないでしょこの人…」って感じのまとめ記事みたいなのしか出てこなかった(~_~;)

実際に詳しくいじってくれてるのは↓このVTuberさんくらいかな?


英語のほうが情報が豊富なので、英語で検索したほうがいいかもしれない。

英語だけど、この方の動画は詳しく動かしてくれてたから参考になりそうです。

unity 2020.3.40を入れてインストールしてみる

記事執筆時点では2020.3.40以降って書いてあるけど、

執筆時点で最新版の2020.3.48で進めていたら、プロジェクトが2020.3.40に書き換えられてしまうエラー?みたいなのに遭遇したから2020.3.40でやります。

アーカイブはこちら↓からダウンロードできます。

Download Archive
Download Archive

パッケージマネージャーからインストール

購入してから、ウィンドウ⇒パッケージマネージャーを開くと、マイアセットに追加されてるのでダウンロードとインストールをします。

vr interactions framework

…けどなんかインストール失敗したっぽい?XRフォルダしか追加されなかった。

その後入れ直した時も最初インストールに失敗したので、ダメなら何回かやってみるといいかも。

ダウンロードとインストールやり直したら成功した。こうなればOK。

webXR用のフォルダはここにあった

Readmeに詳しい説明が書いてありました。

De-Panther氏のwebXR-exportを使うっぽい

readmeを読んだらそう書いてあった。

1. [ウィンドウ] -> [パッケージ マネージャー] -> [git URL から新規追加] に移動してパッケージをインストールします: https://github.com/De-Panther/unity-webxr-export.git?path=/Packages/webxr

2. [プロジェクト設定] -> [XR 管理] – [WebGL] で、[WebXR エクスポート] と [起動時に XR を初期化] がチェックされていることを確認します。

3.InputBridge Sourceを「WebXR」に設定します(デモシーンですでに設定されています)

4. デモ シーンがビルド リストの最初の順序で追加されていることを確認します。

オプション:

1. ステップ 1 と同じ原則を使用してデモ XR Interactions をインストールしますが、次の URL を使用します: https://github.com/De-Panther/unity-webxr-export.git?path=/Packages/webxr-interactions
– これにより、WebGL で試すためのツールの簡単なセットが得られます。

チップ :

1.「unityInstance.Module.WebXR.toggleVR();」を呼び出します。 JavaScript から VR モードを切り替える

webXR exportは前使ってみたけど、なかなか良いアセットだった。

Apache License 2.0でかなり自由に使えるようです。

GitHub - De-Panther/unity-webxr-export: Develop and export WebXR experiences using Unity WebGL
Develop and export WebXR experiences using Unity WebGL - De-Panther/unity-webxr-export

でもデフォルトだと移動ができなかったからスクリプト書いて動かしたりしてみたけど、VR-Interaction Framework使えばいけるかな?

webxr-export入れる前にwebxrシーンを開くとエラーが出るっぽい

あーこのエラーはスティック入力取得するスクリプト書いてる時に見た気がする…。

webXR-Exportのスクリプト内のメソッドだか関数を読み出しに行ってるけど、まだ入れてないので参照先がなくエラーになってる感じだったはず。

アセットフォルダに自作スクリプト入れたら動かなかったので、packagesフォルダにいれたら動いた記憶がある。

webxr-exportを入れる

UPMでも入れられた気がするけど指示されてる通りにGit URLからやってみます。

この二つを入れる。

unity-webxr-export/Packages/webxr at master ?? De-Panther/unity-webxr-export
Develop and export WebXR experiences using Unity WebGL - De-Panther/unity-webxr-export
unity-webxr-export/Packages/webxr-interactions at master ?? De-Panther/unity-webxr-export
Develop and export WebXR experiences using Unity WebGL - De-Panther/unity-webxr-export

ついでにWebXR Exportのサンプルも入れておくといいでしょう。

WebXR Export入れたらエラーが消えました。

あとはプロジェクト設定のここを設定すればOK。

WebXR exportのwebGLテンプレートをコピーして設定する

これはwebGLの枠みたいなやつ?ただのwebGLならデフォルトでいいけど、webVRの場合はVRに切り替えるボタン付けないとVR空間に入れないから設定が必要。

unity2020の場合はWebXR2020を選ぶらしいです。

サンプルをビルドしてサーバーにアップしてみたらjavascriptエラーが…

普通に再生はできたけど、向かって右下のVRボタン押したらjapascriptエラーが出てVRモードにできなかった。

キャッシュ削除すれば治るかと思ったけどダメだった。

んーなんだろうな…。

2023/08/19追記:やり直してみたら普通にできました(;^_^A

この記事書いてから三か月くらい経ったけど、やり直してみたら普通にできました。

この三か月でwebXR ExportやMetaブラウザがバージョンアップしたりしてたし、まぁ色々な要因でたまたまエラーになっただけかな?

一応サンプルをアップして動作確認した手順を書いておきます。

VR Interaction FrameworkのほうのwebXRサンプルはここにあります。

vr interaction framework webxr

とりあえずビルド設定画面を開いてwebGLにスイッチプラットフォームして、このシーンを追加してビルドしてみます。

vr interaction framework webxr

無事ビルドできてブラウザでも実行できました。

vr interaction framework webxr

FFFTPでサーバーにアップロードしてMeta Quest2で動作確認してみることにします。

確かzipに圧縮すればエックスサーバーのファイルマネージャーからでもアップできた気がする。

ffftp

webGL重すぎΣ(゚Д゚) いつもの9割で止まる現象が起きたので圧縮無しでアップしたらできた

これでMeta Quest2のMetaブラウザで見てみたけど、webGLが9割でロード止まるよくある現象に遭遇Σ(゚Д゚)

vr interaction framework webxr

こういう時はファイル容量が多少増えるけど、圧縮なしにすると解凍で止まることがなくなるのでだいたい動く気がする。

ついでに解凍フォールバックとかいうやつにチェックすると良いんだったかな?間違ってたらごめんm(__)m

vr interaction framework webxr

これでちゃんと動いたでござるぞ( *´艸`)

vr interaction framework webxr

ちょっと重いけどこちらからできます↓

Unity WebGL Player | VRIF-WebXR

Meta Quest2のMetaブラウザでしか動作確認してないけど、多分Wolvicでも動くと思う。

追記終わり。

↓以降の見出しの内容はこれで動かなかった時に、webXR ExportのサンプルシーンにVRIFのプレハブを持って行って動かしたところです。

↑のVRIFのほうのサンプルが動かなかったら↓こちらを試してみるといいかも。

とりあえずサンプルのプレイヤーをプレハブ化して別のシーンに持って行ってみる

とりあえず最低限使ってみたいのは、↓この操作できるプレイヤーなんだよね。

webXR Exportだと移動ができなかったので試行錯誤することになったし。

一応ここにプレイヤーのプレハブがあるのだけど、

これwebXR向けにカメラのセッティングがされていなかったので、アップしたら表示がおかしくなった。

大人しくwebXRのサンプルにあるプレイヤーをプレハブにして持って行ったほうが良さそう。

webXR Demoシーンを開いて、プレイヤーのXR Rig Advancedをアセットフォルダにドラッグ&ドロップして原型プレハブにしておく。

De-Panther氏のwebXRサンプルにプレイヤーを配置してみた。

これで動いたでござるぞ( *´艸`)

おお…これのためだけに買った価値はあったかもw

弓とかおいて遊べるようにしてみる

これまたサンプルから武器とかをプレハブにして持ってきてみました。

ブラウザのwebVRでこれだけ遊べるのはかなり凄いかもΣ(゚Д゚)

このブログのエックスサーバーに上げてみたけど、Meta Quest2+Metaブラウザで動かせました↓

VRIFテストwebVR

エラーが出る場合はキャッシュを削除するといけるかもしれない。

しかしwebGLは読み込みに時間がかかるな…。

Metaブラウザで読み込ませておいて、バーチャルデスクトップでyoutube動画見てたら読み込まれてたから待つしかないかも(;^_^A

確かサーバー設定すれば読み込み早くできるんだったかな?unity playとかは読み込み早いし。

朝読み込んでみたら読み込み早かったので時間帯によるかもしれない。

つづく?

とりあえずちょこっとだけ動かせたけどかなり面白そう。

セールになってたから勢いで買ってみただけだけど、腰を据えていじってみようかな。

VRChatとかのプラットフォームだとエロいやつは上げられないしな…(笑)。

こういう独自フレームワークのやつならサーバーの規約次第で割と自由に使えると思う。

まぁアセットストアのアセットをエロいのに使うのは、多分大丈夫っぽいけど自己責任的な可能性もあるみたいだけども(;^_^A

このアセットはちょくちょく半額セールで買えることが多いので、VRゲーム開発に興味がある方は買ってみるのも良いかも。


VR Interaction Framework | UnityAssetStore


追記:

PCVRもやってみました。


タイトルとURLをコピーしました