ソーシャルVRに点群を持ち込みたい
VRChat、Cluster、StylyなどのソーシャルVRに点群を持ち込みたい。なぜなら点群がかわいいから。今回はスマホで点群を撮影、パソコンで編集、ソーシャルVR向けの素材に変換するとこまでご紹介。
本記事はBoze Advent Calendar 2020 - Qiitaに登録されています。VRとかVRに関わるものの記事が多いみたい。
動いている様子
渋谷の点群データをClusterに表示した例。とりあえず表示しただけでまだワールドとして体裁は整えてない。
歩くとこんな感じ。これがスマホでできちゃうってClusterすごい。アップロードもポチーで終わるし。 pic.twitter.com/O5Od1wtRul
— クワマイ (@beet_lex) 2020年11月15日
点群ではないけどVRChatに恒星データを表示した例。PCVR、Oculus Quest両方に対応。同様のワールドをClusterにもアップし、こちらもPC、モバイル(スマホなど)両方に対応できた。
実は #VRAA01 MeetUp前日にHIPPARCOS SALONはアプデしてました。星座線の個別表示と恒星名表示、地球からの距離表示パネルが増えました。これで星座に詳しくない僕も学べる。いよいよ教材じみてきた。また遊びに来てね。
— クワマイ (@beet_lex) 2019年8月19日
#HIP_VRChttps://t.co/q9yEEc7t19 pic.twitter.com/rfgJY4wz8Y
モバイル対応したのでStyly ARにもアップロードするだけで簡単にAR表示できた。
HIPPARCOS SALONを #STYLY ARで表示してみた。歩き回るから縮尺を小さくして1m=10pc(32.6光年)くらい。とりあえずベテルギウスまで歩いてみた。
— クワマイ (@beet_lex) 2020年11月20日
↓Twitterだと星が潰れちゃうからYouTubeにもhttps://t.co/SoSZPdT8Vq
↓っていうかスマホで見たほうが早いねhttps://t.co/0oJIVkY5aG#HIP_SALON pic.twitter.com/Eika1PpUSG
スマホで点群撮影
最近は点群が撮れるスマホが増えてきた。iPhone X以降ならTrue depthが使えるし、iPhone 12 ProならLiDARが使える。Androidは使ってないからわからない*1けど、iPhone向けアプリをいくつか紹介。
ちなみに撮影した点群はあとでCloudCompareに読み込んで編集するので、形式は問わず何かしらの点群データが取れればOK。スキャンしなくとも自分で点の位置と色を用意するのも楽しそう。例えば星とか*2。
EveryPoint
今回はこのAppを使った。取得できる点群数が無制限みたいで描画負荷の限界まで撮れる。プレビュー機能が無いのが残念。今後追加されたらいいな。SiteScape
点群数の限界はあるけどアップデートでちょっとずつ増えてる。プレビュー機能もあるので狭い範囲ならちょうど良さそう。3d Scanner App
メッシュ生成が主体だけど点群も書き出せる。僕は点群スキャン用には使ってないので詳細はよくわかってない。Polycam
同じくメッシュ生成が主体だけど点群も書き出せる。こちらも僕は点群スキャン用には使ってないので詳細はよくわかってない。Capture
True depthを使うタイプなのでiPhone X以降のデバイスで使える。残念なことにアップデートが来なくてLiDARには対応してない。プレビュー機能も美しいしクラウドにアップできるしで使いやすい。点群を編集する
撮った点群を切り抜いたりノイズ除去したりしたい。今回CloudCompareを使ってみたけど長くなったので別記事にした。下記記事を参照。
点群をテクスチャに書き込む
現状点群がそのままアップできるソーシャルVRは多分無いので、点群をテクスチャに書き込んでshaderで展開する方式を用いる。まずはテクスチャへの書き込み。みんなが簡単に使えるようにGoogle Colaboratoryを使ってみた。使い方は下記リンク先に書いてるのでそっちを見て欲しい。
Unityに表示する
無事テクスチャができたはずなのでUnityに表示する。下記リンクから必要なパッケージをUnityにimportする。
生成したテクスチャもimport。こんな感じの設定にする。
新しくマテリアルを作ってPointCloud prefabにセットすると完成。あとは個々のプラットフォームにアップロードするだけ。
点群展とかしてみたい
せっかくアップロードできるようになったのでみんなで点群を持ち寄ってみたい。お友達どうしでできないかな。持ち寄れる人は教えて。
関連記事
モバイル環境に対応させる際に気をつけたところをメモした。よかったら見て。
*1:Tangoはちょっと遊んでたよ
*2:こんなん作りました→ VRChatに銀河を作る[2] - クワマイでもできる