Aizawa

ZunePhoneの夢

IMG_1060

今回は読み物です。
賛否両論の激しい新WindowsMobileについて少々


WindowsPhone 7、どう変わる

まだ正式な発表がされているというわけでは無いのですが、以下のような変更があるとか無いとか

  • CompactFramework製アプリとの互換性なし
  • XNA及びSilverlightをサポート

他にもマルチタスク非対応になったとかありますが、どうでもいいので省略です。

 

XNA?Silverlight?

なじみのない人には全く分からない話だと思います。
簡単に適当な説明をしますと、

XNAは、XBox360・Zune及びWindowsで動作するゲーム制作環境です。
DirectX関連のライブラリをさらに使いやすくラッピングした感じですね。デバイスを意識することなく、ハードウェアアクセラレーションを利用できます。
標準ではC#を使用して記述します。簡単とはいえ、ゲーム制作に関してある程度ノウハウがないと難しいものだとは思いますが・・・
3Dデスクトップなど、ゲーム以外を作ってる人もいます。

Silverlightは、一言で言えばMicrosoftのFlashで、ブラウザ上で動作するアプリケーションです。
エンタープライズな用途に強く、.NET FrameworkやほかのMS製品に対し強い協調性を持ちます。
C#・VisualBasicで記述します。
現行はバージョン3ですが、次期バージョンではマルチタッチをサポートします。

 

あまり使われてる気がしないCompactFramework

WindowsMobile6.5までに使われている実行環境で、Windows版の.NET Frameworkの縮小版です。
そもそもの.NETに対するイメージが芳しくないことと、実際起動が遅いという評価のおかげで軌道に乗りきれていない印象が強いです。
GUIが質素(シンプル)で、WM6.5の基本GUIと完全なミスマッチを起こしました。この溝を埋めるために開発リソースの大半を割くことになるのではないでしょうか。

 

比較対象は本家Windowsから他モバイルOSへ

単純なプラットフォームとして言えば、WindowsMobileの敵はあらゆる他のプラットフォームでした。PC版Windowsもその例外ではありません。
スマートフォンが従来より一般的になり、電話機の代替として考えられるようになって来てからは、競合対象が明確になってきました。いわゆるガラパゴスケータイや、iPhone、Android、Palm WebOS・・・
単純な携帯通信端末で言えば、UMPCの普及によって本家Windowsと食い争うことになりますし(パフォーマンスは別として)、マーケティングの焦点をスマートフォンとしての機能に絞るのも、止むを得ない状況と私は考えています。

 

ZuneHDの高すぎるポテンシャル

ZuneHDとは、Microsoftの発売したポータブルメディアプレイヤーです。MS版iPod Touchと言えばわかりやすいかも。
HDが付く前のZuneもTouchが付かないiPodですね。Suffleはありませんでしたが。

個人的に魅力に感じていたのが、当時注目していたXNAアプリケーションが動く、という点でした。XNA自体は3Dをサポートしますが、Zuneではハードウェア面での不都合があるため、2Dのみサポートしていました。
ZuneHDでは、MarketPlaceで公開されているゲームに関しては3D描画を行っています。XNAについてはマルチタッチと加速度センサのサポート追加のみで、3Dは利用できませんが、おそらく時間の問題でしょう。

ZuneHDが強力なアクセラレーションを利用できる背景には、NVIDIA渾身のTegraプロセッサの搭載によるものが大きいです。TegraプロセッサはARMアーキテクチャを採用しており、WindowsCEのカスタムバージョンであるZuneHD OSと3D描画を行うアプリケーションを難なく動作させています。

InternetExplorerベースのWebブラウザも搭載しており、無線LANが接続できる環境であればブラウジング可能です。
Twitterクライアントも用意されています。国内では技適マーク無しの無線機器は通信不可のため、試してはいませんが。
ネットワークを利用した楽曲購入も可能です。

欠点は単体でWWANが使えないことくらいです。仮に技適マークを取得しつつ日本に上陸したら、PocketWiFiなりEggなりで擬似WWANとして使う人が出てくるとは思いますが。

 

ZuneHDとWindowsMobileの競合

ZuneHD単体でWWANを実装し、キャリア付きで発売されるとします。ZunePhoneと呼んだとして、この場合競合するプラットフォームはiPhone・Androidはもちろん、WindowsMobileも含まれます。同じWindowsと言えど、アプリケーションの互換性がなく、インターフェースの方向性も違いますので、Microsoftフリークの中でも当たり前にシェア分割が行われるかと思います。
方向性が違うとは書きましたが、WM6.5を見る限り、ZuneHDに近づけたいという意思は多少感じられます。本当にそういう意図があるかは分かりませんが・・・
今WindowsPhone 7と呼ばれるものは、この例におけるZunePhoneに限りなく近いものと言えます。

 

Silverlight実装の意図

WindowsPhone 7に関する噂に、Silverlightのサポートがありますが、ブラウザでのSilverlightは非サポートとあります。
これはどういうことかと言うと、SilverlightにはAdobe AIRで動作するFlashのような、オフライン実行機能がありまして、これを利用してるものと推測しています。
個人的に引っかかるのは、この機能はブラウザ上のSilverlightアプリケーションをオフライン実行する機能であって、ブラウザ外動作を想定しているものとは違う気がしました。どちらかと言えば、WPFに近いものと考えています。

ではなぜSilverlightでないといけないのでしょうか?

WindowsPhone 7で一部機能がサポートされると言われるSilverlight4では、ローカル側へのアクセスがより容易になっており、クロスドメインポリシーに関してもかなり緩和されるとのことです。これはWPFとSilverlightの差を埋めるための進化と言えるのではないのでしょうか。WPFもあまり馴染みのないものだと思います。自身これを使ったアプリケーションをいくつか作りましたが、WindowsVista以降のGUIとのマッチングを容易にするもの、という印象が強いです。
ちなみにTwitHeadLinerはWPFを使用しています。フェードインや発言の展開は、「そういうコード」を書いているのではなく、「そういうアニメーション」を組み込んで、コードで実行しているだけです。

WPFもSilverlightもGUI設計にXAMLという言語を使用しています。これにはアニメーションに関する記述も含まれます。
Expression Blendというソフトを使えば、Flashのように簡単にアニメーションを作成することができます。

iPhoneやAndroidに対抗するためには、アプリケーションの充実が必要不可欠です。
そのためには、より簡潔に、見栄えのいい、高機能なアプリケーション開発環境が必要となります。
その点Silverlightはある程度ノウハウが浸透してることもあり、合理的だと言えます。

CompactFrameworkによって開発されたアプリケーションであれば、よほどアンマネージドでない限りは簡単に移植可能です。従来WindowsMobile端末に必須とされてきた機能拡張型アプリケーション(WkTaskなど)は、おそらくWindowsPhone 7では不要となり、WM端末で使ってきた対話型アプリケーション(Twitterクライアントなど)は、ごく簡単に移植可能と予想できますので、下位互換性の放棄についてはそれほど悲観することでもないと思います。

 

XNAの必要性

XNAについては、マルチメディア端末としてのZuneHDを生かすアピールポイントとして考えられます。
iPod Touchはゲーム機だから、カメラは搭載しない。と、スティーブ・ジョブズ氏が語ったそうですが、その上位互換であるiPhoneも、ゲーム機としての特性を持ち合わせてると言えます。
携帯端末の魅力としてゲーム機能も考慮されているという状況を考えると、シェア拡大に必要不可欠と言えます。

余談ではありますが、SilverSpriteというSilverlight用の拡張機能があります。
これはXNAでの2D描画に限って、簡単なコード置き換えでSilverlight上での動作を実現するというものです。
私の運用しているオンラインゲーム用のアップローダのサイトに、そのSilverSpriteを使用したアプリケーションを置いています。
2D描画に限って、と言いましたが、これはZuneでのXNA動作環境と同等で、即ち、SilverSpriteとZuneでは、ほぼ同じコードで同じゲームが動作する、ということを意味しています。WindowsにおけるXNAアプリケーションの実行は、ややこしいランタイムの導入が必須で、敷居が低いものとは言い切れません。SilverSpriteならブラウザ上で動きますし、それはMacOS Xでも動作することを意味します。

不特定多数に対しアプリケーションを公開する開発者としては、それが如何にして浸透・流行するかがモチベーション維持に繋がります。(自己満足というのもありますけど、そこで止まってしまうのは勿体ないことです。)
一つのコードが無意識にクロスプラットフォーム化するという状況は非常に良いことだと考えています。さらにそれが簡潔ゆえに高クオリティであれば、多くのユーザに楽しみを伝えることができますし、その利便性に興味を持つ人が現れれば、開発者が増えることにも繋がります。

 

目的はMicrosoftのユーザを増やすこと

WindowsMobileはWindowsでありながら、携帯端末OSとしてはマニアックな部類に入ってしまいました。携帯電話と高機能化とiPhoneによるものが強いです。
この状況を払拭し、万人向けになるべく進化を求めているのははたして誰なのでしょうか?そもそも求められているわけではなく、単なる新プラットフォームの構想と捉えれば、さほど問題ではないかと思います。
どうにもWindowsMobileのバージョン7と見えてしまっていることから、機能面における「退化」を連想させてしまう面が強いです。俗にいう「誰得」という意見も納得できないわけではありません。
理想は、WindowsMobileと、その派生としてのWindowsPhoneの展開をしばらく続けることではないかと考えています。
iPhoneを使用している層に対してのWindowsPhoneと、Androidとしのぎを削りたいWindowsMobileと言ったところではないでしょうか。
いずれにしても、XNA及びSilverlightの開発者を増やすことが最優先課題ではないかと思います。

コメントをどうぞ

 

 

 

次のタグを使用できます

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>