お知らせ

2020年5月から、セカンドライフの情報は仮想生活ガイドというサイトにまとめていくように変更しました。
天使になりたくてのこれまでの情報は今後も過去ログとして残しておきますけれど、新しい情報は仮想生活ガイドをご覧ください^^
ラベル Chrome Embedded Framework の投稿を表示しています。 すべての投稿を表示
ラベル Chrome Embedded Framework の投稿を表示しています。 すべての投稿を表示

2015年12月24日木曜日

セカンドライフ公式ビュアー バージョン 4.0.0 が公開されました

セカンドライフ公式ビュアー バージョン 4.0.0 (309247) が公開されました。

セカンドライフ公式サイトのダウンロードページからダウンロード出来ます。

Downloads | Second Life

今回のバージョンでは、Valhalla ビュアーの内容が公式ビュアーに取り込まれました。

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

セカンドライフビュアー内蔵の HTML レンダリングエンジンが、WebKit から Chromium Embedded Framework (CEF) へと変更されました。


WebKit

chromiumembedded / cef   - Bitbucket

セカンドライフビュアーでは、下記の部分などで HTML レンダリングエンジンが利用されています。
  • Web プロフィール
  • 検索
  • 行き先ガイド
  • ビュアー内のアバターの選択画面
  • 内蔵 Web ブラウザ(ヘルプでのサイトの表示、マーケットプレイスの表示など)
  • プリムでの Web コンテンツの表示(HTML on Prim)


これらは、外部の Web ブラウザを通して表示されているのでは無くて、セカンドライフビュアーに内蔵されている HTML レンダリングエンジンで描画が行われています。

セカンドライフビュアーの中に Web ブラウザの機能が内蔵されていて、そこで描画されたものがセカンドライフビュアーの画面上にも表示される…という仕組みです。

Chrome や Safari などの外部の Web ブラウザがインストールされているかどうかや、そのバージョンなどを気にしなくても、Web のコンテンツを共通の見た目で確実に描画出来るため、こういう仕組みが用意されています。


セカンドライフビュアーでは、これまで下記の HTML レンダリングエンジンが使用されていました。

ビュアーのバージョンHTML レンダリングエンジンHTML レンダリングエンジンを使用している Web ブラウザ
1.xMozillaFirefox
2.xWebKitSafari
3.xWebKitSafari

今回それが、Chrome で使用されている HTML レンダリングエンジン「Chromium Embedded Framework」に変更されました。


 HTML レンダリングエンジンが CEF になって変わったところは、下記の点です。
  • HTML5 対応
  • 最新の JavaScript エンジン(V8)対応
  • WebGL 対応
公式ビュアー バージョン 3.x までで採用されていた Webkit は古いバージョンだったため、HTML5 には対応していませんでした。
このため、最近主流の HTML5 向けのサイトは正しく表示されないことがあるなど、Web ブラウザとしては使いにくい状態が続いていました。

また、Flash Player の仕様変更のため、Mac OS X では Flash のコンテンツが描画されないという大きな問題も抱えていました。

天使になりたくて: セカンドライフで動画を見る方法

天使になりたくて: Mac 版セカンドライフビュアーで Flash のコンテンツが見れない原因

こういった部分が、今回 CEF に変わったことで全て解決しました^^/

さらに、Web で 3D の表現を実現する「WebGL」も表示出来るようになりましたので、Web の 3D コンテンツをセカンドライフで楽しむことも出来るようになりました。


もちろんこれらは、プリムでの Web コンテンツの表示(HTML on Prim)でもその恩恵を受けることが出来ます。


今後は、セカンドライフのような世界と Web の世界が、今まで以上に繋がっていく可能性があります。
CEF は、その掛け橋をより強固にするためのものです。


ただし今のところは、プロフィールなどで表示される内容は従来のままです。
CEF に変わったということで、見た目に分かる変化は今のところはまだありません。

この辺は、サードパーティービュアーでの CEF の対応状況の関係もありますので、すぐに大きな変化が出てくることは考えにくいと思います。
その辺が解決したら、もしかすると今よりずっとモダンな表示に変わるかもしれません。


CEF では Web ブラウザのプラグインの機能は当初サポートされない予定だったのですが、最終的に Flash の表示はデフォルトでオンになることになったそうです。

CEF での Flash Player は WebKit の時とは違い、PPAPI 版の Flash Player が必要です。

How to use Adobe Flash in Second Life Viewer 4.0 a... - Second Life

ただしこれは、Flash のコンテンツの作成を推奨するものでは無いそうですので、既存の Flash で作られたコンテンツは、HTML5 への移行を進められた方がいいと思います。


内部的には非常に大きな変更にあたりますので、ビュアーのバージョンは、

4.0.0

へとステップアップしました。

セカンドライフビュアーも、とうとうバージョン 4 の時代です^^


わたし個人的には、インワールドのテレビで YouTube などの動画が Mac でもまた見れるようになったのがすごくうれしいです。


Mac で動画が見れなくて困っていらっしゃった方にとっては、待望のバージョンアップです^^
このエントリーをはてなブックマークに追加

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 レンダリングエンジンが変わるのは、今回で二回目になります。
このエントリーをはてなブックマークに追加

2014年12月10日水曜日

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

2014 年 12 月 10 日現在、Mac 版のセカンドライフビュアーでは、「共有メディア(Shared Media)」で Flash のコンテンツを見ることは出来ません。


共有メディアでは、レンダリングエンジン「WebKit」で Web のコンテンツを表示します。

WebKit

WebKit は、Mac や iOS の Safari で使用されている HTML のレンダリングエンジンです。

それらと同じ表示機能を持つものが、セカンドライフビュアーの中に入っています。


セカンドライフビュアーでは WebKit を直接扱うのではなくて、QT4 の QTWebKit を介して WebKit を利用しています。


Qt Project

QtWebKit

LLQtWebKit
http://wiki.secondlife.com/wiki/LLQtWebKit

Qt4 自体は Qt 4.5 の段階で Cocoa に対応しているのですが、

Qt 4.5.3: What's New in Qt 4.5
http://doc.qt.digia.com/4.5/qt4-5-intro.html

QTWebKit の描画には旧来の QuickDraw が利用されています。


Flash Player は 11.8 の時点で、この QuickDraw での描画を“レガシーなコード”として切り捨てました。


Bug#3597462 - media streaming with FlashPlayer in SecondLife viewers (SL viewer, Firestorm): video screen stays black, but sound is ok
https://bugbase.adobe.com/index.cfm?event=bug&id=3597462


このため Flash Player 11.8 以降がインストールされている環境では、セカンドライフビュアーの内蔵 Web ブラウザで、Flash コンテンツの表示が出来なくなってしまいました。

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


2 年前に、この Qt の Flash の問題を修正したという記事はあるのですが、


Qt Support Weekly #26 – Flash Support on Mac |  Qt Blog

Qt 4.8.x でも、なぜかこの内容は反映されていないようです。

[#QTBUG-32931] Latest Flash Player for OS X not working with Qt 4.8.n applications. - Qt Bug Tracker
https://bugreports.qt-project.org/browse/QTBUG-32931

セカンドライフビュアーで使用されている現在の Qt Webkit バージョンは、4.7.1 です。(Second Life 3.7.22 (297128) 時点)

このため、セカンドライフビュアーの WebKit では、Flash のコンテンツの描画が出来ない状況が依然として続いています。


Qt は現在、バージョン 5 に移行しています。

Qt5 では、この問題は解決しています。


(この写真は、Qt5/QtWebKit で私が作成したテストプログラムのものです。YouTube の Flash の動画を再生しているところです。)

また、HTML5 ビデオにも対応していますので、最近の Flash ビデオを使わない動画の配信でも、問題ありません。


じゃあ、Qt5 にしたら解決するんじゃない?というのが当然浮かぶと思うのですが…、、、

リンデンラボは現在、これまでの WebKit から Chrome ベースの「Chromium Embedded Framework」(CEF)へ、内蔵 Web ブラウザのレンダリングエンジンを変更するという方針転換を行っています。


chromiumembedded - A simple framework for embedding Chromium-based browsers in other applications. - Google Project Hosting

これ自体は悪いことではないと思うのですが、


[#OPEN-218] Change web implementation to Chrome Embedded Framework - Second Life Bug Tracker

という風に、完成にはまだまだほど遠い…という感じです@@

Qt5、CEF、どちらに進んでも Flash の問題は解決するはずなのですが、残念ながら現状は、時間が掛かる方が選択されてしまっている状態で、Mac ユーザの悩みはまだまだ続きそうです…><
このエントリーをはてなブックマークに追加