2010/03/22

Almost Native Graphics Layer Engine(ANGLE)

既にご存知の方も多いと思いますが、先日Googleが「Almost Native Graphics Layer Engine(ANGLE)」というオープンソースプロジェクトを発表しました。これは「WebGL」をWindowsで使用する為の技術だそうです。いつもの如く素人の知識ですが、簡単に説明すると「WebGL」で使用されている3Dグラフィックス技術は「OpenGL ES 2.0」なので、Windowsがデフォルトで使用している3Dグラフィックス技術「Direct3D(DirectX)」では使用できません。

その為にWindowsではWebGLはハードウェア支援を受ける事ができずに満足出来る性能を得ることが出来ません。あんまりありがたくない訳ですね。そこでGoogleが中心となって、OpenGL ES 2.0をDirectX 9.0cのAPIコールに変換する中間層を作って互換性を取ろうという話が出て来たようです。

ここまで書くと、なんかあのプロジェクトに似ていますよね。そうです。Linuxでお馴染みの「WINE」です。WINEは逆にDirectXが無いLinuxのようなOSに対して、OpenGLを使った中間層を作って互換性を取っています。まぁWINEの場合はDirect3Dどころか、その上のDirectX、更に上のWindows APIとの互換性を取ろうとするプロジェクトなので、単純に比較は出来ませんけど。

まぁそんな感じでWINEと似ているなぁなんて思っていたら、公式サイト等でおもしろい記述を発見しました。何とGoogleやChromiumのメンバーの他に、「TransGaming」社のメンバーが関わっているらしいのです。TransGamingといってもあまり馴染みがありませんが、少し調べてみると、LinuxやMacでWindowsゲームをプレイ出来るようにする「Cedega」や「Cider」を開発している会社みたいですね。この技術のベースになっているのが「WINE」な訳です。やはり発想自体はWINEに近いみたいですね。技術的にも再利用できる部分が多いのかもしれません。

本来なら、ValveのSource Engineのように根本的な部分からOpenGLネイティブなモノに出来れば良いのでしょうが、Windowsで圧倒的優位に立っているDirect3Dを捨て去せる影響力は流石にGoogleにも無い訳ですし。あまりに強権的な態度に出れば、Microsoft自身がDirect3Dを使用したWebGL対抗技術を用意して、そちらをゴリ押ししてくる可能性もありますからね。というか、WebGLなんてWindowsから見たら特にメリットも無い訳で……。それこそWebDXみたいな技術の方が簡単でしょうし。

ただ、DirectX対OpenGLの時と違い、今回のWebGLについてはWindowsが圧倒的優位にいる訳ではないですからね。OpenGL ESという点からみても、主戦場はやはりモバイル。今のところは携帯電話でしょう。そうなると、圧倒的に強いのはAppleのiPhone。ちょっと(だいぶ?)離されて、GoogleのAndroidでしょうか?

更に言えばNokiaのMaemoやPalmのWebOS等もでしょうかね。このラインナップを見てもわかるように、全てのOSがOpenGL ESを使用している訳です。おまけにMicrosoftのモバイル部門は正直あまりパッとしていません。少なくとも主導権を握れる立場には無いですし。

遅まきながら、Microsoftも「Windows Phone 7」で、先代までの互換性を捨てて、XNA(Direct3D)を使用した環境を用意してきたようですけども。これによって、Windows、Xbox360、Windows Phone 7という「デスクトップ」、「ゲーム機(据え置き)」、「携帯機器(電話やゲーム機)」の3つの環境をXNAで統一出来るという理想的なシステムが完成する訳ですね。ただ、携帯機器に関しては少し遅かったかもしれません。

逆に言うと、GoogleやAppleにとってはいかに上手くOpenGL (ES)をオープンスタンダードからデファクトスタンダードへと成長させることが出来るかによって、これからの命運が分かれるのかもしれません。今のところかなり有利だと思いますけど。何故かというと、既に圧倒的シェアを握っている事と、肝心のWindows Phone 7のXNAがOpenGL ESと比べると弱いらしいので……。あくまで噂でですが。一番最後にリンクしている記事からの引用。

GDC 2010は、例年に増して、携帯電話を筆頭とした携帯ゲームプラットフォームに関しての話題が多かったわけだが、Epic Gamesも例に漏れず、この分野への進出を表明している。

会期中、iPhone版の「UE3」が公開されたことは、大きなセンセーションを呼んだが、真相としては、「UE3がiPhoneに移植された」のではなく、「UE3のグラフィックスエンジンがOpenGL/ES2.0への対応を果たした」ということのようだ。

開発を担当したJosh Adams氏によれば、「開発は自分も含めてわずか2人で行なった。開発がスタートしたのは2009年10月から。『UE3』で開発したプロジェクトであれば、システムのメモリ容量が十分で、OpenGL/ES2.0ベースの携帯機器向けGPUが搭載されていれば、このモバイル版『UE3』上で動かすことができる」とのこと。

今回のGDCでは、iPhone版「UE3」とは別にNVIDIAの組み込み向けGPUのTEGRA2版の「UE3」も同時に公開されたが、これは両者同じOpenGL/ES2.0ベースのGPUを搭載しており、根本的には同じモノだ。ただ、それぞれのGPUがサポートしているシェーダー機能の限界が異なるため、ターゲットGPUに合わせた最適化(というよりもスペックダウン?)を行なっている。iPhoneとTEGRA2でいえば、 TEGRA2の方がGPU世代が新しいため、表現力はTEGRA2版の方が上になる。

さて、携帯ゲームプラットフォームと言えば、今回のGDCでは、露出度が高かったWindows Phone 7についても気になるわけだが、Windows Phone 7版の「UE3」の登場もあり得るのだろうか。

「『UE3』は美しい先進グラフィックスがウリであり、プログラマブルシェーダーが動かないプラットフォームへの移植は難しい。 Windows Phone 7で利用できるグラフィックスフィーチャーは非常に限定的であるため、『UE3』のプラットフォームとしては適さないと言わざるを得ない」(Adams 氏)。

Windows Phone 7で提供されるグラフィックス機能はプログラマブルシェーダーは非サポートであり、ポリゴンに適用できるテクスチャも2枚までという大きな制約がある。 iPhoneと比較するとGPU世代のギャップが大きく、「UE3」を動作させるのが無理というのもやむなしといったところか。
長くなったので終了しますが、携帯機器だけでなくデスクトップやゲーム機(据え置き)の分野でもOpenGLのようなオープンスタンダードがデファクトスタンダードになってくれれば、私のような捻くれ者には楽しいのですけどね。その為にも、ValveのSteamのLinux移行計画(妄想)や、UbuntuのようなLinuxデスクトップが更に普及してくれるとおもしろいのですけどね。

#追記
Unreal Engine3がPalmのWebOSで動作しているビデオがあったので貼り付けておきます。iPhone以外にも移植されているのですね。ただ肝心のPalm自体が最近ヤバいらしい……。WebOSの評判を聞くと、かなりいい出来らしいので勿体無いですよね。残念。

#YouTube
Unreal Engine 3 también llegará a webOS - YouTube
http://youtu.be/78PnvJ8jPHs



#外部リンク
angleproject - Project Hosting on Google Code
http://code.google.com/p/angleproject/

米Google、Webブラウザに向けてOpenGL互換環境を提供する3Dグラフィックエンジンを発表 - SourceForge.JP Magazine : オープンソースの話題満載
http://sourceforge.jp/magazine/10/03/19/034216

WebGL - Wikipedia
http://ja.wikipedia.org/wiki/WebGL

WineD3D builds for win32
http://www.nongnu.org/wined3d/

TransGaming Inc.
http://transgaming.com/

CedegaとLinux: Windows用ゲームをLinuxでプレイする - SourceForge.JP Magazine : オープンソースの話題満載
http://sourceforge.jp/magazine/06/08/01/0611215

4Gamer.net — ゲームをテレビで楽しもう。TransGaming,Intelと共同でゲームのオンデマンド配信へ
http://61.215.215.33/games/000/G000000/20090929030/

マイクロソフト、Windows Phone 7で3D XNAゲームをデモ -- Engadget Japanese
http://japanese.engadget.com/2010/03/09/windows-phone-7-3d-xna/

マイクロソフト、「XNA Game Studio 4.0」で「Windows Phone 7」をサポートへ - ZDNetニュース:ITpro
http://itpro.nikkeibp.co.jp/article/MAG/20100311/345671/

西川善司の3Dゲームファンのための定点観測「Unreal Engine3」講座 -GAME Watch
http://game.watch.impress.co.jp/docs/series/3dcg/20100315_354865.html

2010/03/18

東方鉄巨人ってなんぞ

前回の「【ガンプラ】お空作るよ\(^o^)/【東方】」っていう動画のオススメで「東方鉄巨人」っていう動画とタグがあったので見てみたのですが。なんぞこれ。こういった自由な広がりがあるのが東方のというか、二次創作の良さですね。素晴らしい。

ちなみに私は永野護信者なので、カッコいいメカ=MHという認識しかありません。まぁガンダム系とかでもいいのはありますけど。他にも設定含めての格好良さみたいのは認めます。例えば、ナデシコのブラックサレナとか。ただ、設定抜きで単純に見た目の格好良さだけなら断トツでモーターヘッド系が一番ですね。勿論、私の中だけでですけど。

脱線しました。東方鉄巨人のメカなんですが、元の系統が結構バラけているのですが、それぞれ味みたいなのがあって見ていて楽しかったです。何故かツボったのが、姫様の機体。やたらバランス悪いのも受けたんですが、無意味に可変構造だったりして爆笑しました。何故変形したし。他にも母艦ヤゴコロとか、マクロスっぽい聖輦船とかもいいですね。というか全部いい。続きがみたいです。

余段ですけど、ミラージュ騎士団って正式名称「東方第一等幻像軍団」って言うんですよね。ただそれだけですけど。

#ニコニコ動画
【東方】東方鉄巨人画像集【メカ】 ‐ ニコニコ動画(原宿)
http://www.nicovideo.jp/watch/sm9743168



#外部リンク
ブラックサレナ - Wikipedia
ブラックサレナ - Wikipedia

ミラージュ騎士団 - Wikipedia
ミラージュ騎士団 - Wikipedia

こういうの大好き

今日も今日とてニコニコ動画。しかも東方厨……。しかたないね。しかし、こういったプラモ見ると子供の頃の楽しさみたいなのが蘇りますね。だいぶ前に友人と話した事があるのだけど、最近のプラモって完成度が高すぎて自分の妄想の付け入る先が無いって感じがして……。

それだけ原型が高精度になったって事なんだろうけど、自分なりの楽しさみたいなのは追求出来なくなってきているのかも。それこそ、先日のユニコーンガンダム(ビーストモード)じゃないけど(笑)。

私たちが子供の頃のガンプラは結構大雑把な作りだったので、プラモ好きな子供なんかは自分なりの改造みたいなのをしたりして楽しんでいたのだけど、今のは子供レベルの細工だと工作精度に差がありすぎてそこまでやろうって気がしないのかもしれませんね。

SDガンダムくらいなら何とかなるかもしれませんけど。って、全然最近のガンプラ事情を知らないで書いてますけど。まぁメチャクチャレベル高い子供っていうのもいますからね。逆に私なんて、大人になっても色塗りとか破滅的だし。

実は大人になってから、またプラモデルがむしょうに作りたくなって、一度ハマった時期があったのです。その時は、プラモ作りの教科書とか買って、自分でもだいぶ上手く素組みとサーフェイサーを吹きつけるところまでは行っていたのですが、肝心の色塗りで失敗してしまって……。

何でかブチ切れて単色塗りして終了しました。しかも筆塗り……。センスがないのが致命的でしたね。あの時エアーブラシ一式買えるお金と度胸があればなぁ。

#ニコニコ動画
【ガンプラ】お空作るよ\(^o^)/【東方】 ‐ ニコニコ動画(原宿)
http://www.nicovideo.jp/watch/sm9984263

2010/03/14

OnLive

何か「OnLive」というゲームシステムが話題なようですが、これ本当に使い物になるのでしょうかね。もし完璧に動作するならばSteamのクロスプラットフォーム化どころの騒ぎじゃないのですけど……。方向性は正しいと思いますが、実際の環境で使い物になるのか気になるところです。

#外部リンク
Welcome to OnLive
http://www.onlive.com/

4Gamer.net ― [GDC 2009#10]ゲームの未来を変えるかもしれない革命的技術「OnLive」が,GDC会場で作動中!
http://www.4gamer.net/games/027/G002744/20090326065/

Game Developers Conference(GDC) 2010現地レポート - GAME Watch
http://game.watch.impress.co.jp/docs/news/20100311_354080.html

Steam & Source on the Linuxの可能性 #05

続き。このまま行けばXbox360がSteamの代替システムとして機能してしまう可能性が高い……。ハードウェアもOSも更にはゲーム開発のノウハウも考えると、Xbox360の方が大半のユーザーとゲーム開発会社から見ても楽な選択肢になりうるはず。今はそうでもなくとも、Xboxの後継機の世代になればこの傾向は更に顕著になるでしょう。結局、Windowsを支配しているのはマイクロソフトただ一社ですからね。

MacについてもAppleのさじ加減一つという部分はありますが、DirectXのように独占しているゲーム開発技術を使用していない分、まだマシなのかもしれません。まぁこれも単にDirectXがクローズドな技術で他のOSには使えないって事なだけですけどね。

と言うことで、せっかく築いてきたValveのSteamコミュニティですが、このまま行けば近い将来、おそらく各ゲーム機の後継機が出た後はジリ貧どころか、各ゲーム機に吸収されて消滅してしまう可能性もあるかもしれません。少なくとも、今より大きなコミュニティになる事はないと思います。今のままでは……。

じゃあどうすればいい? やっと本題です。ぶっちゃけ、自分達で新しいプラットフォームを作っちゃえばいいのです。どうやって? そこで登場するのがLinuxです。そうです。Linux対応といったって、何もUbuntuに対応しろって言っている訳ではないのです。Google(AndroidやChrome OS)やPalm(WebOS)、あるいは家電メーカー(デジタルテレビやSTB等)、更にはOpenPandoraのように、Linuxを土台としたゲームプラットフォームをValveが作り、その上で、Steam互換のサービスを引き続き展開していけばいいのです。

別に全てのSteamコンテンツを移植する必要はないのです。何故なら、今までのコンテンツはWindows向けSteamでの動作だけを保証すればいいのですから。これからのゲームはSource Engineのようなクロスプラットフォームエンジン製が推奨されるとは思いますけど。

今回のMac対応でSource Engine製のゲームはWindowsとMac両方に対応しました。この方法でLinuxにも対応していけば、少なくともValveのSource Engine使用ゲームについては大きな混乱もなくLinuxベースのSteamにも対応出来るでしょう。他のゲームはそうはいきませんが、元々全プラットフォームに対応する責任はありませんし、これからのゲームはその辺りを考慮したゲームをValve自らが推奨していけば、数年後にはかなり改善すると思いますし。現にいくつかのゲームエンジンはクロスプラットフォームに対応していますしね。

例えばFallout3やOblivionとか。ただ、ライセンスが各プラットフォーム毎にかかるようなので、Source Engineのように全て無料で対応とはいかないでしょうが。Oblivionのゲームエンジン「Gamebryo」はOpenGLに対応しているかわかりませんでした。ただ、かなり柔軟なエンジンらしいので、そんなに大変という訳ではないのかも。いい加減でごめんなさい。

その為の布石としてもMac対応は意義があると思います。Valveとしては脱DirectXが一番の目標だと思いますし。話によるとPS3版のSource Engineも開発中らしいですし。別に今すぐにという訳でもありませんし。数年後にはありうる話だと個人的には思っているのですが……。

何か全然まとまっていませんが、もともと思いつきで書き始めた文章だから仕方ないかな。半分以上ネタですし。ただ、携帯ゲーム機の流れを見ていると、そうおかしな話しでもないのではと思います。次世代DSはARMにTegra、次世代PSPはARMにPowerVR SGXという構成になるようですし。と書いたら、次世代DSはTegraじゃなさそう? まぁいいや。

こういったゲーム専用機とiPhoneをはじめとする携帯電話のSoCがほぼ同じ構成になり、しかも、Pandoraのような超零細企業ですら参入可能な状態を見れば、既に1000万人以上のユーザーがおり、コミュニティもしっかりと構成しているSteamが、自らのハードウェアによるゲームプラットフォーム参入というのは非現実な話しでもないかなと思います。

更に言えば、自らがハードウェアに手を出す必要すらないですし、Googleみたいにハードウェアは各ハードウェアメーカーに任せて、ValveはLinuxベースのゲーム用OS作りに専念しても良い訳ですし。その方が可能性としては大きいかも。出来れば、Chromium OSみたいにOSS化してくれれば、普通のLinuxユーザーにも恩恵がありますしね。

例えばSDLみたいなライブラリーの改良や、ATIやNVIDIAのドライバー開発など。これはOSSドライバーが一番いいですが、クローズドなドライバーでも精度が増してくれるなら大歓迎ですし。中途半端ですが、一応これで終了です。まだ書き足りない部分やまとまっていない部分もありますが、それはまたいつか書き足したり、書き直したりしたいと思います。

#追記
既にXbox LIVE のWindows版ってあったんですね。全然知らなかった。でも全然盛り上がってない気が……。

#外部リンク
Microsoft Games | ホーム
http://www.microsoft.com/japan/games/default.aspx

PCをゲームプラットフォームにする「Games for Windows - LIVE」
http://pc.watch.impress.co.jp/docs/2007/0907/ms.htm

エマージェントジャパン、「Gamebryo 2.5」発表会を開催。海外で大人気の3Dゲーム開発ミドルウェアが正式に日本上陸
http://game.watch.impress.co.jp/docs/20080605/gb.htm

Steam & Source on the Linuxの可能性 #04

続きです。Steamの強みであるオンライン機能も、現行の据え置き機と比べて、だいぶ薄れてきたと思います。特にXbox360は「Xbox LIVE」でかなりの部分で重複している気がします。私はXbox360を持っていないので実際はどうかは知りませんが。

デモ版の配信、特にインディーズ ゲームの販売はSteamにとってかなり脅威になると思います。カジュアル系ならばXbox360でも十分に遊べますからね。しかも、インディーズ系はそういった軽めのゲームが大半でしょうし。大作もWindowsだけでは採算が採れないので、結局クロスプラットフォーム前提の移植になるし、本当に大作なら(HaloやGoW等)、そのゲーム機専用タイトルになってしまって、Windows版すら出ない可能性が高い訳で……。

そういった事情で、クロスプラットフォーム前提のゲームが大半になるならば、わざわざ高いお金を出してPCと強力なビデオカードを買おうなんて好き者は限られてくる訳で……。Xbox360やPS3なら3万円以下で買えますからね。まぁそこそこのPCを持っていて、ビデオカードも増設出来る場合は、2万以下のビデオカードで十分対応出来ますけど。私がそうでしたし。

そんな感じで、このまま行けばSteamというかWindows向けのゲームはジリ貧になると思います。まぁWindowsとXbox360は同じマイクロソフトな訳で、Windows用のゲームも移植される可能性はありますが、Steamのようなサードパーティのシステムではなく、マイクロソフト謹製のマーケットプレイス開設という方が可能性はあると思います。わざわざ他社にやらせる必要も無いですし。

で、Mac対応の話。前回はMacユーザーの新規開拓みたいな事も書いたのですが、正直言って、AppleがどこまでSteamに心を開いているのか少し疑問を感じています。今はMacでゲームというジャンル自体がほぼ皆無なので、Steamの参入はAppleとしても良い刺激になるとは思いますが、今までのAppleのやり方を見ていれば、Macでのゲーム文化が定着すれば、何れは自分達自身の手によるマーケットプレイス開設は間違いないと思います。増してiPhoneやiPadといった新規市場を解放する事はまず無いと思いますし。次回へ続く。

#外部リンク
Xbox 公式サイト - Xbox.com
http://www.xbox.com/ja-JP/

Steam & Source on the Linuxの可能性 #03

前回の続き。何故SteamがMacに対応したのか。webkitの登場やSource Engineの柔軟性の高さといった技術的要因が1つ。iPhoneやiPadといった新規市場への布石。これらの他に、Xbox360の脅威というのがあるのではと個人的には思っています。それは何故か?

前回も説明した通りPC (Windows)とXbox360はDirectXというゲーム用APIをある程度共通して使用出来るという強みがあります。Steamというのは言うまでも無く、PC (Windows)向けのシステムであり、PC (Windows)上で動かすことが絶対条件だった訳です。

ある記事では、PC向けOSのシェアはWindows系が約90%、Mac系が約9%、それ以外のOSがまとめても約1%くらいしかないと書いてありました。これは基本的にはデスクトップ用途なので、サーバー用途等はまた違うと思いますが、それほど間違いがある数字ではないでしょう。

SteamはWindows向けなので、シェアから言えば90%近くのユーザーに使用される可能性がある訳です。実際にはあくまで潜在的な可能性なだけであり、Wikipediaによると「2009年01月18日の時点で、900以上のコンピュータゲームが配信されており、約1500万人のユーザが登録している」また別の記事では「2009年12月で2500万に到達したと発表しました。」と書いてあります。

これは単なるユーザー登録者数の数なので、実際に購入しているユーザー数はもっと低いでしょう。またハードウェアのスペックもまちまちなので、すべてのゲームが遊べるとは限りませんし。

一方、Xbox360の方は「約3700万台以上」(Wikipedia)。これは世界での数字であり、また実際は買い替え需要等で、実際に稼働している数字はだいぶ下がるとは思います。ただ、それでも既にSteamの実数よりは多いと思います。また、ハードウェアのスペックにブレがないのも大きい。つまり、Xbox360用のタイトルは全てのXbox360で動作するという事です。まぁ当たり前ですが(笑)。

Xbox360以前のゲーム機は、ハードウェア的に明らかにPCとは違うレベルのものだったので、カジュアルゲーム以外は競合する事はほぼありませんでした。Wiiなんかは今でもそうですね。また、使われている技術も違うので、完全移植にもかなり時間が掛かる上に、スペック的な違いから一段見劣りするモノになっていました。

Xbox360、PS3以降は、ハードウェア的にもPCと同じレベル(少なくとも解像度)で設計されるようになり、またXbox360に至っては、Windowsと同じゲーム開発技術がかなりの部分流用出来るようになっており、今までWindows向けに開発していたゲームメーカーも移植がし易くなっているようです。

更に言うと、最早据置型ゲーム機の方がPC用ゲームよりもユーザー数が多く、わざわざPC向けに開発するというよりも、据置型がメインになり、そのおこぼれをPC用ゲームとして発売するという状況になってきている訳です。例えば、ゲームコントローラー前提になっていたり。

また、クロスプラットフォームの弊害からか、PCのように無限とも言えるハードウェアスペックに合わせるのではなく、各プラットフォームでも安全に動作する程度のチューニングしかしない、ある意味でヌルイゲームしか開発されなくなってきている訳です。Xbox360のDirectXはPC用の最新版DirectXとは差があるので、最新技術を使ったクロスプラットフォームのゲームというのはまず無理でしょうし。互換性から下位のXbox360ベース、更にはPS3にも対応出来る事が前提のゲーム設計がなされると思いますし。

そうなると、Windows前提であるSteamは苦しくなってくる訳です。何故かというと、いくらPCのハードウェアスペックの方が優れているとはいえ、結局はXbox360前提のゲームしか移植されず、おまけにキーボードとマウスという入力方法よりも、コントローラー前提のゲームスタイルが主流になってくる訳ですから。

まぁ多少グラフィックス面では有利だったり、ユーザーコンフィグでキーボードとマウスに変更は出来るでしょうけど。ただゲーム自体が据置型前提の作りになるので、明確な差異は出なくなるでしょうけど。長くなったので、一旦終了です。

2010/03/11

Steam & Source on the Linuxの可能性 #02

続きです。さて前回でゲームにおけるクロスプラットフォームはDirectXを擁するWindows系環境が有利である事がわかりました。ここからがSteamの話です。SteamというのはPC (Windows)専用のオンラインのゲームプラットフォームです。簡単に言えばPC (Windows)に作られたゲーム専用システムみたいなものです。

SteamもWindows上のアプリケーションなので、当然扱っているゲームタイトルもDirectXで作られたモノが多い訳です。その方が製作者側も楽ですからね。ただ他のゲームコンソールと違いWindowsはOpenGL製のゲームも動作します。しかしながらWindows単一の場合は、ほとんどメリットがありませんので、個人ならともかく商業用では敢えて使用するメーカーは皆無でした。例えばDoomやQuakeで有名な「id Software」等はOpenGLにも対応したゲームを製作しています。

ここまでなら、全くLinuxなんて及びじゃない状況な訳です。ただし、最近になってこのSteamがWindows以外のOS、Mac OS XにSteamクライアントと同社の3DエンジンであるSource Engineを対応させると発表した訳です。しかも、わざわざOpenGLに対応したバージョンで……。ここからは完全に妄想です。何故わざわざMacに対応、しかもOpenGLにまで対応させた本格的な移植をしたのだろうか? 正直言ってわかりません。わかりませんがいくつか考えられる事はあります。

まずは移植のし易さ。先日までのSteamクライアントはIEに完全に依存したアプリケーションであり、他の環境への移植はほぼ無理な状態でした。しかし近年のウェブブラウザー競争によりWebkitがオープンソースとなり、移植の手間が大幅に省けるようになりました。それとSource Engineも始まりはid Softwareの3Dエンジン、「id Tech」であり、それを長い時間を掛けて独自のエンジンとして開発してきた歴史があります。

なので、実は途中まではOpenGLに既に対応していた訳です。更なるWindowsへの最適化の中で、いつのまにかOpenGLへの対応は打ち切られたようですが……。これを復活させるのは、他のエンジンに比べればそう難しくなかったのかもしれません。

次に、Mac OS Xの台頭。これは近年のiPod、更にiPhoneの快進撃を見れば明らかですね。10年前と比べたらMacの人気はうなぎ上りでしょう。しかも、iPhoneなんかはかなりゲームに力を入れてきていますからね。まぁSteamは今のところ、デスクトップ、あるいはノートパソコンがメインターゲットですが、これからの展開によってはiPhoneやiPADなんかの携帯機器向けに最適化されたバージョンが出てくるのかもしれません。

その為の布石と考えるとそれほどおかしな話ではないのかもしれません。新規ユーザーの開拓にもなりますからね。そして最後はXbox360の存在。実はこれが一番大きな脅威&Linuxへの対応に関係しているのではないかと個人的には考えています。それは何故か? 次回へ続く。

Steam & Source on the Linuxの可能性

昨日は勢いで思わせぶりな事を書いた所で終了しましたが、今から書くことも何の根拠もない素人の戯れ言です。しかも自分の頭の中でも上手くまとまった意見ですらありません。いくつかの疑問点や可能性が頭の中で浮かんでいる状態でそれらを纏め上げて1つの結論を出せていません。自分の意見を再構築する意味でもダラダラと妄想を書いてみる事にします。

昨日はMacにSteam&Source Engineが移植された事で、もしかしたらLinuxにもSteam&Source Engineが移植されるかもしれないという所まで書きました。それは何故か? 鍵はクロスプラットフォーム、とりわけ XBOX360 にあるかもしれません。現状、据置型ゲーム機のプラットフォームとしては以下の3つが挙げられると思います。今回は携帯ゲーム機は考慮していません。
Wii
XBOX360
PS3
今回はSteamとクロスプラットフォームの話なのでハードウェア的にWiiは除外します。代わりにゲーム機では無いですがスペック的に適合する(可能性がある)Windows環境をゲーム機として含めます。
XBOX360
PS3
PC (Windows)
と言うことでゲームタイトルでのクロスプラットフォームとしては、この3つが選択肢として挙げられると思います。更に大雑把に3Dグラフィックについてまとめると以下のようになると思います。
PC (Windows) = DIrectX
XBOX360 = DirectX
PS3 = RSX(libgcm),OpenGL ES(PSGL)
私も素人なので、いい加減な知識しかありませんがクロスプラットフォームでゲームを製作する場合、この3Dグラフィックス部分が一番のネックになるらしいです。この重要な部分をXBOX360とWindowsは(ある程度)共有しており製作者側から見るとかなり移植は楽みたいです。

じゃあ対抗馬であるPS3はどうなんだと言うとRSX(libgcm)というハードウェアを直接叩くローレベルなモノとOpenGL ES(PSGL)という、より汎用性のあるモノが用意されているようです。ただOpenGL ES(PSGL)というのも実際にはPS3独自のカスタマイズがされており、互換性という意味ではほぼ役に立たないレベルな上に、性能面からもlibgcmと比べて劣るので、実際にはあまり使用されていないみたいです。

Windows以外のPC用OSは基本的にOpenGLに対応しているので、もしPS3が正式なOpenGL ES(OpenGL ESはOpenGLのサブセット版)に対応し、そこそこの性能が叩き出せるレベルならば、今よりもずっと他OSとの移植環境も整っていたと思います。残念です。ここまでをまとめると、クロスプラットフォームでゲームを作る場合、少なくとも2つのプラットフォームで移植のし易いDirectX系が一番楽という事がわかりました。長くなったので第一部終了。しつこいですが、完全に素人の妄想です。内容はいい加減な可能性が大です。あしからず。

#外部リンク
Microsoft DirectX - Wikipedia
http://ja.wikipedia.org/wiki/Microsoft_DirectX

OpenGL - Wikipedia
http://ja.wikipedia.org/wiki/OpenGL

西川善司の3DゲームファンのためのPS3アーキテクチャ講座
http://game.watch.impress.co.jp/docs/20060329/3dps3.htm

2010/03/09

Steam & Source on the Macについて

予想されていた通りValveのゲームプラットフォーム「Steam」と、ゲームエンジン「Source Engine」のMac OS X対応が正式に発表されましたね。当初のラインナップも予想とほぼ同じ内容でした。まぁ自前のSource Engineを使ったゲームが一番乗りになるのは当然の結果でしょうけど。

しかも、これらのゲームを既にSteamで購入していればMac OS X用に改めて購入する必要が無いそうです。これは驚きました。普通こういった新たなプラットフォームに対応する場合は新たにゲームタイトルを買いなおすか、よくても割引での購入あるいは今あるプラットフォームからの移行という事になり、どちらのプラットフォームでも使えて、なおかつ無料で対応というのはかなり太っ腹な対応だと言えると思います。さすがゲイブ・ニューウェル氏、伊達に太ってません

冗談はさておき今回のSource Engine移植ですが、Wine等によるエミュレーション的な移植ではなくOpenGLによるネイティブな移植だそうです。しかもWin&Macの両プラットフォームの垣根を無くし、同じネットワーク上での対戦等が可能なようです。素晴らしい。これでWindows信者とMac信者入り混じってのFPS代理戦争が勃発しそうです。しかも、開発者自らがそれを楽しみにしてる節がありますし(笑)。是非ともその輪の中に、Linux信者も混ぜて三つ巴の乱戦を繰り広げて欲しいですね。

そのLinux対応ですが私の中では今回の発表によって完全に夢物語でも無いなという微かな希望が見えてきました。その理由は……。次回へと続く。

#外部リンク
ニュース - Valve to Deliver Steam & Source on the Mac
http://store.steampowered.com/news/3569/

4Gamer.net ― [Mac]Valve,「Steam」およびSourceエンジンをMac向けに提供。「Left 4 Dead 2」などのMac版が4月にリリース予定!
http://www.4gamer.net/games/106/G010682/20100309024/