noteがTypeScript×WebGL活用の高速コミックビューア開発、「キャプテン翼」サイトが採用

文章や写真、イラスト、音楽、映像などを手軽に投稿できるプラットフォームであるnoteを開発・運用しているピースオブケイクは7月28日、高速なページ送りと表示を実現したコミックビューアを発表した。第1弾として8月31日までの期間限定で「キャプテン翼公式サイト」で「小学生編」の全話無料公開に採用されている。同社によると、今後一定の実証期間を経て2019年中にnote上で公開予定とのこと。また、出版社・ユーザーが利用できるように広く提供することも考えているという。

今回発表されたコミックビューアは、同社CXOを務める深津貴之氏が今年の5月上旬に原型となるビューアを作ったのがキッカケ。深津氏は、既存のコミックビューアのUXに不満を感じていたことから、TypeScriptを使った高速なビューアの開発に至ったそうだ。

その後、この原型ビューアをnoteのエンジニアである板橋毅彦氏が改良を施したうえでの一般公開となった。レンダリングにWebGLを採用したことでさらに高速化できたという。WebGLとは、JavaScript APIの一種で、2D/3Dグラフィックスをレンダリングするためのライブラリ。TypeScriptは、JavaScript互換の静的プログラミング言語だ。

人気トップのゲームエンジンUnityがWebGL + Mozilla asm.jsでWebへポート

UnityMozillaが今日(米国時間3/18)、 WebGLとMozillaのasm.jsを使ってUnityのゲームエンジンをWebに持ち込む、と発表した

200万名あまりのユーザのいるUnityは、今もっとも人気の高いゲームエンジンの一つだ。

今日サンフランシスコで行われるGame Developer’s Conferenceで両者は、人気の3DシューティングゲームDead Trigger 2のWebポートをFirefox上でデモする。今のところ、asm.jsをサポートしているブラウザはFirefoxだけなのだ。今年の終り頃リリースされるUnity 5.0で、WebGLのサポートが、Unityのアーリーアクセスベータのアドオンとして可利用になる。

これまでは、Unityをブラウザ内で使うにはプラグインが必要だった。そのプラグインはきわめて有能でとても人気があるが、今後はますます、ブラウザ内でネイティブに動く(プラグイン不要の)アプリケーションが主流になる。asm.jsはJavaScriptのサブセットだし、WebGLは現代的なブラウザのすべてがサポートしているから、asm.js向けに最適化されているゲームでも、そのほかのブラウザで動かせる。やや遅くはなるが。

Mozillaの技術部長でWebGLの作者でもあるVlad Vukicevicが今週初めにぼくに語ったところによると、UnityとMozillaはUnityをWebに持ち込むために密接に協力してきた。これまでの2年間、MozillaとUnityのチームが週末や勤務時間外に頻繁に会って、UnityのWeb化に努めてきた。Mozillaでゲームプラットホームを担当しているMartin Bestによると、両者が一つの目標の実現に向けて協力してきた。

彼によると、これまで多くのデベロッパがUnityのWebGLポートを求めてきたし、いつごろ実現するのかと何度も何度も聞かれた。ただし今回の発表ぶんはあくまでも最初の第一歩であり、WebGLに関してもasm.jsに関しても、今後まだまだやるべきことは多い、と。

Unity TechnologiesのシニアデベロッパRalph Hauwertも同様のことを述べ、でも最初のバージョンが出たら、その後の開発はUnityとMozillaだけでなく、デベロッパのコミュニティが参加して進められるだろう、と言う。

どこかで聞いたような話だなぁ、と思われた読者もおられると思うが、実は先週Mozillaは、EpicのUnreal Engine 4がWebGLとasm.jsをサポートする、と発表したばかりだ。たしかに、JavaScriptをネイティブに近いまでに高速化するソリューションであるasm.jsに対しては業界全体としての支持もあり、またゲームデベロッパたちも、自分たちのゲームがプラグイン不要でWeb上で動くことには、並々ならぬ関心がある。

しかしなぜか、ハイエンドのゲームをブラウザに持ち込む方法としてNative Clientに賭けているGoogleからは、最近音沙汰がない。

Unity 5.0とそれが提供する機能の詳細は、本誌の別記事に書かれている。

[原文へ]
(翻訳:iwatani(a.k.a. hiwa))


Googleマップがアップデート―デスクトップ版にストリートビュー表示のペグマンが復帰、Wazeの道路情報も

今日(米国時間11/6)、GoogleはGoogleマップのアップデートをリリースした。今回、デスクトップ版に初めてソーシャルマップのWazeの交通情報が追加された(モバイル・アプリには追加ずみ)。今年に入って買収したソーシャル・マップのWazeとの統合により、Googleマップに交通事故、工事、一時閉鎖などの道路情報が表示されるようになった。

このアップデートではストリートビューの画像を表示させるのが簡単になった。最近のGoogleマップではストリートビュー機能はデフォールトでは隠されており、ユーザーはストリートビューを見るためには地図上の道路をクリックする必要があった。新バージョンではペグマンが復活した。以前のGoogleマップと同様、ユーザーはペグマンを地図にドラグ&ドロップしてストリートビューを表示させることができる。以前のペグマンは画面左上隅にあったが、新バージョンでは左下隅に表示される。

Googleマップでズームインすると、店舗や施設の屋内写真やユーザーがアップロードした写真を見ることができる。

ストリートビューにも改良があった。経路案内では曲がり角ごとにストリートビュー写真を添付し、あらかじめ参考にすることができる。

またモバイル版のツアーガイド機能”がEarth Toursと改名された。自動生成される3D画像によるバーチャル・ツアーを体験することができる。従来Tour Guideという名称をEarth Toursに変更した理由はよくわからない。デスクトップ版にもこの機能はあるが、WebGLをサポートしているブラウザでのみ作動する。

〔日本版〕11/7朝の時点では訳者の日本版Googleマップはアップデートされていない。

[原文へ]

(翻訳:滑川海彦 Facebook Google+


WebRTCとWeb AudioとWebGLのパワーを見せつけるためにオープンソースのPongクローンをGoogleがローンチ

Googleが今日(米国時間6/12)、PongゲームのクローンCube Slamを、オープンソース立ち上げた。ブラウザの上で、友だちやコンピュータと対戦できる。そのこと自体はあまりエキサイティングでもないが、しかしGoogleはこのゲームを、WebRTCとWeb AudioとWebGLのデモとして作ったのだ。

多くの人、とくにデベロッパにとって、WebRTCは、ブラウザ上でできるプラグイン不要のビデオ会議を意味しているが、しかしCube Slamはこの通信技術を使って、プレイ中にライブのビデオとオーディオのストリームを友だちの仮想スクリーンに映し出す。

とりわけ重要なのは、このゲームがWebRTCのRTCPeerConnectionRTCDataChannelを使って、オーディオとビデオと“ゲームの同期を維持するためのあらゆるデータ”を、二つのマシン間で送受していることだ。WebRTCのこの二つの部位は、これまで知らなかったデベロッパが多いと思う。

Googleの主張によるとCube Slamは、“ RTCDataChannelを使った初めての大規模なアプリケーションであり、そのAPIはWebSocketに似ているが、しかしデータをRTCPeerConnectionのピアツーピアリンクで送る”。

明らかにここでGoogleが見せたいのは、WebRTCのパワーだ。すでにWebSocketに関しては同様のことを実験作Racer Chromeでやっている。そしてまた同時に、WebGLとWeb Audioで何ができるかも、見せつけたいのだ。

このゲームのインフラストラクチャはGoogleのCompute Engineがホストし、そのコードはここで入手できる。

今Cube Slamを動かせるのはデスクトップのChromeとChrome OSだ。今年後半にはAndroidのChromeでも遊べるようになる。ただし今でも、chrome://flagsのメニューで”WebRTC Android”を有効にすると、Android上で試用できる。

[原文へ]
(翻訳:iwatani(a.k.a. hiwa))


MozillaとEpic GamesがUnreal Engine 3をWeb化, Web 3DゲームのFlash不要化へ

2011年にEpicは、好評なUnreal Engine 3の技術をFlashにポートして、ブラウザでもかなり高度な3Dゲームができることを示した。しかし2013年の今では、Flashはもう人気のプラットホームではない。そこで、現代的なブラウザではプラグイン不要でどれだけのことができるかをゲームデベロッパたちに示すために、MozillaとEpicが協力してUnreal Engine 3をWebにポートした。Flashプラグイン全盛の2011年には、考えられなかったことだ。

Mozillaの技術部長でWebGLの発明者でもあるVladimir Vukicevicが今週の初めに語ったところによると、MozillaはWebを現代的なゲームにとって十分有効なプラットホームにしたいと考えている。約半年前にMozillaは、そのemscriptenコンパイラを使ってCやC++のコードをJavaScriptのサブセットであるasm.jsにポートすることができるようになった。それによってJavaScriptのコードはネイティブコードの約2倍近い速さになり、この方法による最適化はFirefox Nightlyの最新バージョンがサポートしている。現代のゲームとゲームエンジンは複雑だから、ネイティブに近い速度をWeb上でも実現できることは、たとえばEpicの有名なデモCitadelやUnreal Tournamentを動かすことに欠かせない。今日行われたGame Developers ConferenceでMozillaは、Unreal Tournamentをブラウザ内でネイティブに動かして見せた。

Unreal 3 Engineの全体をWebに移植するのにEpicは4日を要し、その後小さな調整作業も行った、とVukicevicは述べている。Epicが同社のゲームエンジンをWebに持ち込むのはこれが初めてではないが、それにしても上々の結果だった。デモは数週間後にお目見えする。それまでは、最新のFirefox Nightlyの上でMozilla作のBananaBreadデモを見て我慢しよう。Web用のUnreal Engine 3をEpicが商用製品として提供するのか否かについては、まだ不明だ。

Mozillaのゲームプラットホーム担当Martin Bestによると、今回の作業の結果はすべて、MozillaのAndroid用モバイルブラウザと、そしてもちろんFirefox OSに実装される。モバイルでもゲームはネイティブの2倍近い速さで動くとMozillaは予想しており、それを示す社内的なデモもすでにある。一般公開は、まだ先のようだが。

これらの技術を使った商用製品を作っていくことに関してBestは、MozillaはすでにDisneyやElectronic Arts、ZeptLabなどと共同で作業を進めている、と言った。ZeptLabはすでに、Microsoftとの協働によりCut The RopeのHTML5バージョンを作ってWeb上に持ち込んでいる。Bestによると、このような協働案件を打診すると最初はどの企業も疑心暗鬼であるが、“一週間もするととても熱心なパートナーになってしまう”そうだ。

Googleも、ブラウザをネイティブの速さに近づけることに、Native Clientを通じて努力している。これは、デベロッパが作ったWebアプリケーションがコンパイルされたネイティブコードをブラウザ内で実行できる、という技術だ。GoogleのChrome Web Storeには、そのようなゲームがすでにかなりある。しかしMozillaのCTOでJavaScriptの作者でもあるBrendan Eichの言では、Firefoxがそのような技術をサポートすることは短期的にはない。むしろ彼の考えではJavaScriptの今後の進化でネイティブに近いパフォーマンスが達成されるだろう、という。Eichの見方では、Native Clientは“Webとは別のもの”だ。APIも、WebのAPIとは言えない。だからそれは、Mozillaが志向しているものとは違う。Mozillaは、Webそのものを前進させることにのみ、関心がある。

Asm.jsのコードの良いところは、それがあくまでもJavaScriptであることだ。だからどのブラウザでもそれは動く。しかしAsm.js向けに最適化されたブラウザなら、相当に速い。Eichによると、いずれはどのベンダも〔Googleも?〕、遅かれ早かれ、その最適化を実装するだろう、とのことだ。

[原文へ]
(翻訳:iwatani(a.k.a. hiwa))