r3fxrのdepth sensing
半年前に公式のサンプルでWebXRのdepth sensingは触れたが、この記事の時点ではr3fのxrのライブラリはサポートしてなくて自分で実装することはあきらめた
そしてXRKaigiのセッションで、再びこれが紹介されて、そういえば今どうなったかな~とおもって調べたらなんとサポートしてた!!
記事書いた2か月後にサポートしてたのか~
ということで触ってみる!
ちなみにreact-three/xr公式のdepth sensingのサンプルはこれらしい。車どーん
https://pmndrs.github.io/xr/examples/stage/
実装
r3fxrのv6.2以上の環境を用意できればdepth sensingをオンにするのは簡単。
を書くだけ。デフォルトではfalseになっているので書く必要はある
handモデルもオフにすると手に対して何もモデルが出ないのですっきり。もしくは半透明のモデルとかを用意したほうがよさそう。
v6の新しいプロジェクトを作るのに、いろいろ難航してすごい時間かかったが、最終的には以下のバージョンの組み合わせで作った・・・
react19だとr3fが動かないから、react-three/fiber@alphaなるものを入れた
react18でやるといろいろエラーが出て解決できなかった;;
dreiはそこについてきてない??でも-force legacyで動いた
動かす
Qeustだと動いた
ガビガビ
スマホAndroidChromeだと動かなかった。
公式のサポート表だとChrome for Android, 90はサポートして、それ以外はサポートしていないということになってる。R3FXRのdepth sensingとは違うのかな
90というのはChromeのバージョンのことだろうか
ぼかし
最初に試したサンプルはオクルージョンにぼかしがかかってていい感じだった。
コード。
パラメーターがgpu-optimizedなのはさすがに関係ないかな?
Geminiに聞いたけどいまいちどこでぼかしの処理をしているのかわからない。
なに作ろうかな~
r3fなどを作っている組織?がやっているgltfのマーケット
かわいいキャラも少しいるのでこの子たちとの記念写真ARとかにしようかな?
囲まれる感じ