2015年10月11日日曜日

セカンドライフビュアー内蔵の HTML レンダリングエンジンを、WebKit から CEF に変更する「Valhalla」プロジェクト

セカンドライフビュアーの「内蔵 Web ブラウザ」や「HTML on Prim(共有メディア)」では、HTML のレンダリングエンジンに「WebKit」が使用されています。

WebKit は、Web ブラウザの中で HTML のページを表示してくれる機能のことです。

The WebKit Open Source Project

WebKit は Apple が開発をした HTML のレンダリングエンジンで、Mac や iOS の標準ブラウザである「Safari」で使用されています。

WebKit を使うと、他のアプリケーションでも Safari と同等の Web の表示機能を搭載することが出来ます。

セカンドライフビュアーでは、Qt の QtWebKit を介して WebKit の機能を利用しています。

Qt - Home

LLQtWebKit - Second Life Wiki

「内蔵 Web ブラウザ」や「HTML on Prim(共有メディア)」に Web のサイトが表示されるのは、WebKit のおかげです。

また、「内蔵 Web ブラウザ」や「HTML on Prim(共有メディア)」での表示はビュアーに内蔵されている WebKit で行われていますので、パソコンにインストールされている他の Web ブラウザの影響は受けません。
どんな環境でも、セカンドライフビュアーのみで Web のサイトが表示出来るような仕組みになっています。


現在のセカンドライフビュアー バージョン 3.x では、Qt4 の QtWebKit が使用されています。
このため、HTML5 には対応していません。
また、Mac では Flash Player の描画に問題があります。

セカンドライフで動画を見る方法

Mac 版セカンドライフビュアーで Flash のコンテンツが見れない原因

これらの問題は Qt5 にアップグレードすることで解決出来るようなのですが…、


リンデンラボは、セカンドライフビュアー内蔵の HTML レンダリングエンジンを、Chromium Embedded Framework (CEF) に変更することにしました。

chromiumembedded / cef - Bitbucket

CEF は、Google が Chrome 用に開発した HTML レンダリングエンジンです。
CEF も、他のアプリケーションに組み込んで利用することが出来ます。

そして、セカンドライフビュアーにこの CEF を組み込んだプロジェクトビュアー「Second Life Project Valhalla Viewer」が、先日公開されました。

Linden Lab Official:Alternate Viewers - Second Life Wiki


Valhalla Viewer では、「内蔵 Web ブラウザ」や「HTML on Prim(共有メディア)」の表示の部分が CEF に変わっています。

CEF になって変わった点は、下記の通りです。
  • HTML のレンダリングエンジンが Chrome で使用されているものになった(見た目も挙動も Chrome と同じになった)
  • HTML5 対応
  • CSS3 対応
  • WebGL 対応
HTML5/CSS3 対応になりましたので、バージョン 3.x のビュアーで正常に表示されない HTML 5 向けのサイトも、正しく表示されるようになっています。
もちろん、従来のサイトも問題ありません。

ヘルプからブログのページを表示してみたところ。
ここも CEF で表示されています。
CEF は最新の Chrome と同じレンダリングエンジンですので、描画の性能も改善されています。


Mac で YouTube などの動画が再生されない不具合も、HTML5 対応のおかげで改善されています。

Mac で YouTube の動画を表示してみたところ。
動画の部分は HTML5 で表示されています。
再生や停止などの操作も問題無く出来ています^^
Mac でインワールドにて動画を楽しみたい方は、ぜひ試してみてください。


また、Web ブラウザの中で 3D を表示する標準技術「WebGL」にも対応していますので、インワールドで Web の 3D コンテンツを楽しむといったことまで出来るようになりました。

WebGL - OpenGL ES 2.0 for the Web

こんなリアルな 3D モデルのコンテンツも、セカンドライフビュアーの CEF 上で動きます。
HelloRacer WebGL

WebGL Water

インワールドでも WebGL コンテンツを表示/操作出来ます。
3D モデルの投稿サイト「Sketchfab」の 3D モデルも確認出来ます
Sketchfab - The place to be for 3D

セカンドライフの 3D の世界と Web の 3D のコンテンツが同時に動く世界が手に入るようになりますので、今まで以上に表現の幅が広がるかもしれません^^

もちろん、WebGL のコンテンツだけを動かす場合と比べると、セカンドライフビュアーが動いている分重いですので、あくまでも“同時に見れる”という範囲になるかもしれませんけれど…


現在のところは QuickTime や Flash のコンテンツも CEF 上で動作していますが、正式リリースまでにはプラグインの機能はサポートされなくなります
インワールドからの閲覧を前提としたコンテンツで、QuickTime や Flash に依存しているコンテンツを作られている方は、HTML5 への移行を行われる必要があります。


Valhalla Viewer はまだ開発途中の技術披露の段階のものですので、致命的な不具合が残っていることがあります。

わたしの方で確認した不具合は、下記の通りです。
  • 検索が出来ない
  • 行き先ガイドの表示が壊れている
  • プロフィールなどの表示がログインした状態になっていない
  • CEF の部分に日本語入力が出来ない(コピー&ペーストは可能)
この辺は順次改善されていくと思いますが、この辺が使えないとダメ!という方は、もうしばらく待たれた方がいいと思います。


Valhalla Viewer のバージョンは、4.0.0 になっています。
セカンドライフビュアーのバージョン 3 はもうすぐ終わりで、いよいよバージョン 4 の時代に入るみたいです^^


ちなみに、セカンドライフビュアーの HTML レンダリングエンジンの変遷は下記の通りです。

ビュアーのバージョンHTML レンダリングエンジンレンダリングエンジンを使用している Web ブラウザ(参考)
1.xGeckoFirefox
2.xWebKitSafari
3.xWebKitSafari
4.xChromium Embedded Framework (CEF)Chrome

ユーザーが意識して使えるようになったのは「内蔵 Web ブラウザ」や「HTML on Prim(共有メディア)」がサポートされたバージョン 2 からですが、実はバージョン 1 の頃も、ヘルプメニューで表示される Web ページの描画に「Gecko」というレンダリングエンジンが使用されていました。

Gecko は、Firefox で利用されているレンダリングエンジンです。

Gecko - Mozilla | MDN

セカンドライフビュアーの HTML レンダリングエンジンが変わるのは、今回で二回目になります。
このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿