これはすごい!ブラウザ上でX86バイナリを動かす「Native Client」
FlashやJava、Silverlightをはじめ、ブラウザ上でリッチなインタフェースを提供するフレームワークは増えつつある。Ajaxはクライアント側でインストールする手間がいらない反面、実現できる機能が限定的になってしまう。3Dを表現するのが難しかったり、マシンパワーを過剰に消費する傾向にある。
GoogleのRIAに対する答えがNative Clientか?
各プラットフォームがそれを克服するためのプラグインを提供してきた。そしてGoogleの出してきた答えがNative Clientだ。
Native Clientは修正BSDライセンスの下で公開されるオープンソース・ソフトウェアで、何とX86バイナリをそのままブラウザ上で実行してしまうという代物だ。
Native ClientはFirefox向けのプラグインを提供している(アドオンではないので注意)。Windows、Mac OSX、Linux向けにパッケージが提供されているので、皆で利用できる。プラグイン単体では提供されていないのでNative Client全体をダウンロードしてコンパイルする必要がある。
ライフゲーム。細かく描画されても動作は高速だ
インストールが終わったらサンプルのHTMLファイルを開いてみると良い。ブラウザ上で地球が回転したり、ライフゲームを行ったりフラクタル画像が実現できる。動作はかなり高速だ。さすがにネイティブに実行しているだけのことはある。
他にもパッチを当てる必要があるがQuakeを動作させることもできるようだ。ローカルアプリケーション実行環境も用意されているので、ブラウザ上のみならずローカルコンピュータ上でも同じアプリケーションが実行できるのが魅力だ。
Native Clientを使えばローカルアプリケーションやブラウザの垣根を越えるのはもちろん、Flashなどで感じていた動作の重さも感じられずにリッチなインタフェースを体感できるようになる。ネットワークやRPCなども利用できるので、こったアプリケーションを作るのも簡単だろう。リリース直後とあって、バージョンは0.1だが今後に期待のかかるオープンソース・ソフトウェアだ。
フラクタル。拡大や移動、カラー変更ができる
Firefox向けにプラグインとして動作する
**nativeclient - Google Code