Open4

これからのWebブラウザはどうなるのか

マーティマーティ

今月初め、AppleからVision Proが発売された
https://www.apple.com/jp/newsroom/2023/06/introducing-apple-vision-pro/

日常的なインターネットとのインターフェースの1つだったディスプレイが
3D空間に置き換わる未来を見せてくれたな、というのが個人的な感想

そこで、インターネットにおける重要な機能であるWebブラウザが今後どうなるのだろうか
ひいてはWebエンジニアはどうなるのだろうか、ということが気になったため調べ始める

マーティマーティ

Appleの Vision Pro の空間コンピューティングには3つの要素があるらしい
https://developer.apple.com/jp/visionos/

  1. ウィンドウ
    • 基本的に2Dで表示される。3Dコンテンツを追加して奥行きを出すこともできるらしい。
  2. ボリューム
    • 3Dコンテンツを表示できるシーン。
  3. スペース
    • ユーザーをコンテンツ内に没入させられる、フルイマーシブなシーン。

今のVision Pro ではブラウザであるSafari はウィンドウで表示されている。

以降、Vision Pro 以外でもわかりやすさのためこの3つの要素の言葉を共通して使用する。

マーティマーティ

認識しているWebブラウジング/アプリケーションとアプリケーション違い

決定的に違うのは、リクエストベースでコードを取得するのか、バイナリコードをストレージに持っておいてしまうのか、だと思っている。

Webブラウジング/アプリケーション

  • Webブラウザのアプリケーションを起動し、そのアプリケーションがhttp通信して必要なHTML や JS や API からデータを取得したりする。
  • これらはクローリングされて検索エンジンにインデックスされる。
  • VRデバイスではWebブラウザのアプリケーションによるので現時点だとウィンドウで表示されることになる。

アプリケーション

  • ストアに並んだアプリケーションをインストールすることでデバイスにバイナリファイルが保存される。
  • 立ち上げると必要に応じてhttp通信でAPI からデータを取得したり、Webページを表示したりする。
  • VRデバイスでボリュームやスペースとして表示されるのは全てこちらの認識。一部ウィンドウで表示されるものももちろんある。
マーティマーティ

Webブラウザ/アプリケーションとアプリケーションの決定的な違いを踏まえると
今後のブラウジングは以下の2パターンのいずれか or いずれもになると考えられそう。

1. 現状と同じくウィンドウで行われるパターン

この場合、特定のリンクをクリック(タップ?)するとバイナリコードがインストールされる。
インストールされたものがボリュームまたはスペースに表示される、という体験になりそう。

2. ボリュームまたはスペースで行われるパターン

今のブラウザのレンダリングエンジンとJavascript エンジンがパワーアップした場合
ボリュームまたはスペースでブラウジングを行うこともありえそう。

膨大にあるインターネットの情報を扱うためには httpを利用しないといけず、
形式は基本的にHTMLとJavascriptで構成されているため
ボリュームやスペースにレンダリングできないのでは、とも思ったけれど
新しいviewport が登場したり Javascriptエンジンとレンダリングエンジンで
空間的的に描画できるようになりそうな気はする

ここからはよくわかっていないので、以下をやってみようと思う

  • 実際に Three.js を触ってみる
  • canvas x Three.js の場合Javascript エンジンとレンダリングエンジンがどのように機能するのか調べる

参考