イベント
[CEDEC 2010]ゲームの垣根をなくす鍵は“職人芸的なそぎ落とし”にあり。スクエニ流「3Dブラウザゲームのボトルネック対処法」
当然,この講演は技術的な内容がほとんどで,それをひとつひとつレポートしてもあまり有益な記事にはならないのだが,筆者としては非常に興味深い事例の紹介があったので,その部分をとくに強調する形でお届けしてみたい。
講演の中心となるのは,「ブラウザゲーム」で「3D表示」をすると,どうしても遅く・重くなりがちなのを,どう克服するかというテーマだった。
3Dグラフィックスのブラウザゲームなんて滅多にないだろうと思うかもしれないが,最近この手のゲームは増加傾向にあり,ソーシャルゲームでポリゴンのキャラクターを操作できることも珍しくない。FPSがまるごとブラウザの上で動くケースもある(「Quake Live」など)。
だが,ポリゴンを使ったブラウザゲームは,とにかく重いという問題がある。プレイ時におけるキャラクターの挙動そのものはともかく,ローディングが長いゲームが多いのだ。このことは講演でも指摘されていて,要するにそれは2Dのゲームよりも読み込むべきデータが圧倒的に多いのが最大の理由となる。簡単な理屈だ。
というのも,この「高速化」は,基本的には「100ms(ミリ秒)かかる処理を,90msに短縮するために知恵を絞る」ことの繰り返しなのだ。ときにはコードの書き方によって高速化を図り,ときには処理の工夫によって高速化を図る――これは「このゲームを遊びたかったらもっと強力なPCを買ってください」あるいは「重くて無理だから2Dで我慢しましょう」という姿勢とは正反対の考え方だ。
かつてPCが「マイコン」だった時代(だいたい25〜30年くらい前),ゲームを作ることは,1バイト・1サイクル(CPUの動作の最小単位)をめぐって鎬を削ることだった。なにしろコンピュータのメインメモリは32KBだの64KBだのしかなく,またCPUのクロックは2Mhzや4Mhzで,1バイト・1サイクルの差が甚大な結果の差へとつながるのが当然だったのだ。
この明らかな「無理ゲー」状況下で,かつてのクリエイター達はゲームを作り続けた。PCのスペックはゆっくりと向上していったが,それでも1バイト・1サイクルを争う時代からはなかなか抜け出せなかった。Cのような高級言語が普及しはじめてなお,「本格的なプログラムを書くならアセンブラが必須」とされる時代が,長く続いた。そしてそういう「無理ゲー」環境下で,いくつもの傑作が生み出され,不可能は可能にされていったのだ。
やがてゲーム開発は,プログラムが一人では作れない「プロジェクト」になり,チームでの開発が当然となった。そして,この段階で職人芸的なプログラムよりも,可読性の高いプログラムが重宝されるようになった。また,ソフト上の技術革新より,ハードのパワー向上で問題を解決するほうが効率的になっていったことにより,「芸術的なプログラム」は純粋な害悪へと成り下がっていった。個人的にも,情報処理の講義で「if」なんて冗長なものを廃し論理式を使ってコンパクトに書いたら,烈火のごとく全面否定されたことを懐かしく思い出す(こんな死んだ技術,何言ってんのか分かんなくて全然オッケーですはい)。
そして時代は大規模開発の時代となり,「可読性」「共有性」の高さはもはや不可欠となった。一方ではミドルウェアが発展し,「ゲームを作るツールで作ったゲーム」がヒットするようにもなっていく。もはやここにかつての職人芸を活かせる余地はなく,もしあったとしても非常に限られた分野,それが時代の流れなのであると,誰もが思っていたのではないだろうか。
ところが,ブラウザ上で動く3Dゲームにおいては,ミリ秒を削るために「同じ動作をする,違う命令を書く」といった類の努力が復活している。これは驚くべきことであると同時に,時代の徒花,一過性の技術で終わることもないのではないか,という予想が成り立つ。
というのも,スマートフォンなどのように,性能にある程度限界のある環境が,今後のネットゲーム環境としてクローズアップされていくことがほぼ疑いないからだ。スマートフォンの性能も確実に上昇はするだろうが,発熱や電源のことを考えると,PCほど急激に成長するとは考えにくい(電池の性能はムーアの法則に従っていない)。そしてブラウザでの3D表示は,「標準的なPCでも,普通にやったら今なお重い」のだ。
個人的な感覚だが,こういった場面で要求される「職人芸的なそぎ落とし」は,日本の開発者が得意な分野であるように思う。少なくとも,かつてはそうだった。
限定された環境で,その制限を活かしながら新旧のアイデアをよりあわせ,誰も見たことがない大傑作を作るというのは,巨大な成功例があるためにそれこそが唯一の真実に見えてしまうこともあるが,そんなことができた(できる)のは一握りの天才だけだ。10msを削り続けて不可能を可能とする努力を,軽視してはならない。
講演者の久道 羊宇太氏(スクウェア・エニックス)は,講演のなかで「ブラウザでの3D表示を円滑にすることで,Webとゲームの垣根がなくなる」という指摘をしている。この壮大な夢は素晴らしいが,同様に「15年前,コンシューマーが3D化していった時代に,高い技術への挑戦と工夫を通して不可能を可能とした,その魂を継承する」という見解も評価されるべきだろう――その挑戦と工夫は,15年前だけでなく,25年前にも(そしておそらくはもっと前から)成されていた,「コンピューターゲームを作る」情熱のひとつの側面だったのだ。
- 関連タイトル:
スクエニ メンバーズ
- この記事のURL:
Copyright(C)2008 SQUARE ENIX.CO., LTD. All Rights Reserved.