8
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

NeosVR resoAdvent Calendar 2020

Day 12

NeosFesta2を支えるダイナミックスポーンシステム

Last updated at Posted at 2020-12-14

12月12日土曜日、NeosFesta2がついにオープンしました!

私は入稿システムや本会場のロジック制作など裏方的なところを作っていました。
今回は特にこだわったダイナミックスポーンシステムについて書きたいと思います。

##そもそもダイナミックスポーンシステムってなに?
NeosFesta2では来場者が見たいブースを選択して開く形になっています。

そのため、会場ワールドの読み込み時には最小限のデータだけ読み込み、来場者が開いたときに各ブースのデータを読み込むようにしています。
この仕組みをダイナミックスポーンシステムと呼んでいます。

image.png
ダイナミックスポーンシステムはNeosFesta2のこんな魅力に貢献しています。

来場者目線
・会場は1ワールドで完結&読み込みが高速
・負荷に合わせてブースを開いたり閉じたりできる

出展者目線
・自動入稿受付といつでも会場チェック機能
・来場者が負荷をコントロールできるので、入稿規定がゆるく自由度が高い

##会場は1ワールドで完結&読み込みが高速(来場者目線)
ブースの容量を気にする必要がないので会場は1ワールドで完結しています。回るのが楽になりますね。
さらに、ブース数に関わらず会場ワールドの読み込み速度は高速です。(私のホームワールドより速いです。)

この仕組みだと例えブース数が1000を超えても、1ワールド完結で今回と同じ読み込み速度を実現できます。

##負荷に合わせてブースを開いたり閉じたりできる(来場者目線)
NeosFesta2では開いたブースを4つまでストックしています。(次のブースの読み込み中に以前のブースを眺めたり、複数人で別々のブースを見たりするために残しています。)
負荷が高いときはメニューから閉じることもできるため、来場者がPCスペックに合わせて開いておくブースを調整できます。

image.png
image.png

##自動入稿受付といつでも会場チェック機能(出展者目線)
NeosFesta2の入稿は専用ワールドを公開しており、NeosVR内で完結していました。
また、入稿したブースは自動でダイナミックスポーンシステムに乗るようになっており、入稿後はすぐに本会場同様の読み込みテストを行うことができるようにしていました。

##来場者が負荷をコントロールできるので、入稿規定がゆるく自由度が高い(出展者目線)
来場者視点でも書いたとおり、来場者がブースを開いたり閉じたりできるため、負荷の高いブースも許容できます。
そのため、ブースの制限も優しくなり、自由なブースが制作されました。

明確に定めた制限は以下の3つだけでした。

・ブースサイズは5x5x5以内
・Directional Light使用禁止
・Audio Outputの数は通常時10個以内

実際、それだけでワールドにできるほどの自由度の高いブースがいくつも出展されています。
ぜひ会場で見てみてください。

##ダイナミックスポーンシステムのこれから
NeosFesta2はダイナミックスポーンシステムのテストでもありました。
結果は大成功だったので、NeosFesta3ではもちろん、色々なところで使っていくつもりです。

こんなことしたいなーって思っています。
・Evolverのアプリストアを作りたい(Evolverとは?→https://twitter.com/mikan3134/status/1282253366383370242?s=20)
・誰でも何時でも何でも出品できる自動販売機作りたい
・ゲームワールドのステージをそれぞれ読み込むようにして特大ボリュームのゲームでも読み込みを快適にできそう

少し違う話ですが、これはダイナミックスポーンシステムと似た仕組みのアイテムです。便利なので良かったら使ってみてください。

##最後に
NeosFesta2は最高の出来なのでまだの方はぜひ遊びに来てください。

また、会場にはアンケートが設置されています。
NeosVR内でそのまま投稿できるのでぜひご協力をおねがいします!
image.png

##ダイナミックスポーンシステムの仕組み(追記)
Twitterで聞かれたので残しておきます。
インベントリのアイテムにはAssetUrlが振られていてそれをペーストすることで読み込んでいました。
AssetUrlはNeosJsから取得しました。
https://twitter.com/rhenium_vrc/status/1338617602252234752?s=20

NeosJs
https://www.npmjs.com/package/@bombitmanbomb/neosjs

8
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?