人生にゲームをプラスするメディア

【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説

ゲームビジネス その他

【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説
  • 【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説
  • 【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説
  • 【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説
  • 【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説
  • 【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説
  • 【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説
  • 【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説
  • 【CEDEC 2008】PixelJunk Edenにおける植物制御に関する技術解説
CEDEC初日19:40からキュー・ゲームスのスタッフによる「PixelJunk Edenにおける植物制御に関する技術解説」と題したセッションが行われました。

キュー・ゲームスは今年で設立7年になるゲームディベロッパーで、代表作にはGBA『デジドライブ』、DS『スターフォックスコマンド』などがあり、そのほかにもPLAYSTATION3のXMBやミュージックビジュアライザーなども手掛けています。



また現在では、『PixelJunk』シリーズの第一作目である『PixelJunk Racers』が2007年9月にPlaystation Storeで配信が開始され、その後『PixelJunk Monsters』そして今回のセッションのタイトルにもある『PixelJunk Eden』を配信しています。



今回のセッションでは、まず会社概要がシリーズコンセプトキュー・ゲームス スタジオディレクター 吉田謙太郎氏より説明されたほか、PixelJunkシリーズのコンセプトなどが語られました。

 具体的には
・ゲーム本来の楽しさを追求
・続編にとらわれないラインナップ」
・短い時間で何度も楽しめるリプレイ性
・ゲームを触ってみたくなるようなアイディア
・次世代機の技術を生かしたビジュアル&ゲームデザイン

といったものが挙げられました。

シリーズの狙いでは
・ゲームソフトパブリッシュのチャレンジ
・シリーズ化することでの知名度のアップ
・次々とリリースすることでインパクトを与える
・価格以上のクオリティーを保つことでのブランド構築
・ワールドワイド同時リリースによる宣伝効果のアップ
・自社IPを持つことで企業価値を高める

オンライン配信タイトル開発のメリットとしては
・開発コストの削減
・クオリティコントロール
・開発者のモチベーション維持
・マスターアップからリリースまで1か月
・開発者、開発チームのスキルアップ

などが挙げられていました。

これらは早い段階でユーザーからのフィードバックなどがあり、開発者のモチベーション維持にもつながるといった内容のほか、PS3のダウンロード販売は配信するデータ量にコストがかかるので、ファイルサイズには気を使うといった内容も語られていました。

そのためPixelJunkでは、データ内にムービーなどの巨大なファイルを内包することは極力避けており、代わりにオートプレイなどによるチュートリアルを実装しているそうです。

またオンラインという特性上、パッチによるアップデートやアイテム配信なども実装しやすいとのことです。

そのほかにもPixelJunkは、ゲーム内のデータをスクリプト化しているため、追加のマップパックなどのリリースもスクリプトの追加などで行えるようになっているそうです。これはゲーム実行ファイルのようなコアな部分を変更するよりもかなり簡単にできるとのことです。

配信部分でのワールドワイドの配信では、キュー・ゲームス社内には外国人スタッフが多いため、まず英語と日本語での開発を社内で行っているとのことです。

また、テキスト量が膨大にならないよう、開発の早い段階でテキストをフィックスし、意識して減らし、ローカライズしているといった内容が語られていました。

そのほかにもPixelJunkシリーズは、Youtubeへのアップロードやトロフィー機能など、意外と開発スケジュールに影響を与えず導入することができたといった利点があったそうです。

なお、PixelJunkシリーズの各タイトルの開発期間は最大半年、スタッフ数はプランナー、アーティスト、プログラマーなど最小限に絞り、現在は2ライン順並行で開発を行っているとのことです。

売上的な部分ではこれまでシリーズ3タイトルで累計一億円を超えており、オンライン配信タイトルでも、それなりの収益を見込めることが可能だということが語られていました。


続いて登壇者はキュー・ゲームス プログラマ 木下直紀氏に代わり、セッションタイトルのPixel Junk Edenにおける技術解説が行われました。

木下氏の講演では、PixelJunkではいくつかの技術によって構成されており、その中にはDistance Field、植物制御に関するシミュレーション、SPUを用いた高速のパーティクルシステムなどが挙げられていました。

Distance fieldは、入力画像に含まれるオブジェクトから各画像の距離を測定し、出力画像の画素として、白い領域のオブジェクトをDistance fieldに変換するといった技法です。

Distance fieldの手法


講演では、サンプルにある画像を例に解説されており、画像の白い部分を感知し、黒い部分は元のフィールドよりも遠いという設定の元、アンチエイリアシングをかけています。

また、オブジェクトの境界線を符号付きの値を画素値として使用したうえで、その画素のオブジェクトの画像のエッジ抽出などを用いてアンチエイリアシングへの応用なども可能だとのことです。

さらにDistance fieldを用いた画像では、画像を拡大したときの境界線を滑らかに改善することができ、本来であれば128×128の画像を拡大したときにジャギーが目立ってしまいますが、Distance fieldを用いた画像であれば、滑らかなエッジで表現できるということのようです。

これはDistance fieldを用いることで、アンチエイリアシングをかけることができ、画素値の0が近い状態を抽出することで、エッジとして抽出された領域を曲線で滑らかに明度の変換を行うと、全体のサイズに対して細いアンチエイリアシングをかけることができる、オブジェクトをズームレベルに対して適切な幅でアンチエイリアシングをかけることができるそうです。

この技法は、そのほかにも応用が可能とのことで、衝突判定を行ったときに、岩のような形状の変化しないオブジェクトと小さなキャラクターが衝突したというケースの場合、衝突した場所における岩の画像のディスタンスフィールドと衝突地点における岩の構成を調べることが可能となっているそうです。

また、衝突することで反発する方向などの計算にも使えるとのことです。

PixelJunkでは、これらのデータのビルドシステムにはGNU Makeを用いているとのことで、たとえば画像素材であれば、デザイナーがTGAで用意をして、オリジナルの変換ツールでTGAの形に出力。その後PCビルドで使用するためにDDSのアルファチャネルのみ形式に変換、PS3ビルドではさらにそれをGTFという形式に変換するといった手法が公開されていました。

またGTF形式であればPS3上では読み込み速度が速くなるといった利点があるそうです。同様に音声はWAV系で作成し、PS3ビルドではAT3に変換するといった手法を取っているそうです。

PCとPS3を使った開発


また、PixelJunkの開発はPCとPS3の両方で行っているとのことで、これはビルドが高速であるというメリットがあり、ステージデータのようなものはプログラムを走らせながら作業をする必要があるものはPCビルドを利用して作成されたそうです。

反面のデメリットとしては、PCではSPUが使用できないため、これに伴う回避策が必要であったり、PCとPS3の両ビルドでは違う実装をしなければならない場合は保守が煩雑になるといったことがあったとのことでした。

プロジェクトごとのバージョン管理には、サブバージョンを使用しているとのことです。通常の場合はランタイムデータを管理するのであれば、サブバージョンで管理するとよいとのことですが、最初からデータが肥大化すると作業工程などにも遅れが出てしまうため、開発終盤まではチェックインするまではサーバーでファイルを管理してRSyncを使ってデータの同期を取っているといった内容が語られていました。

また、両ビルドで異なる点としては、PS3ではSPUを用いて、PCではGPUを用いたアルゴリズムなどで代用しているといった点が挙げられていました。

植物の表現


PixelJunk Edenに登場する植物の表現では、植物の枝を木構造上に組み合わせた形で表現しており、植物の動きの表現のためにブランチをセグメント単位で分割し、幾何学的なパラメータを持たせて制御するといった技法を使っているそうです。

実際に植物をレンダリング際には、セグメントよりも細かい単位で植物のなめらかな曲線を補完しながらポリゴンを張るといった処理も行われています。

植物のような複雑な形状のオブジェクトに対して、キャラクターの衝突判定を行おうとする良い方法として、ピッチングバッファと呼ばれる低解像度のバッファを用意し、衝突判定を行いたい植物などのオブジェクトをレンダリング、レンダリングしたピッチングバッファの画素を順にスキャンしていくことで、単純にオブジェクトの衝突判定が実現できるといった発表もされました。

このときにピッチングバッファにレンダリングする際に画素値として植物などのオブジェクトに番号などを割り当てることで、何に衝突したかを判定することができるとのことです。

なお、PixelJunkでは、スキニングの処理を行う際にも高度な負荷がかかるため、PS3のSPUを用いて処理を行っているとのことです。

PixelJunkでは、パーティクルシステムのシミュレーションを高速で行うためにSPU1基を用いているとのことで、重力や外力が加わる環境下でのパーティクルの挙動のシミュレーション、キャラクターとパーティクルの衝突判定を前処理のようにあらかじめ荒く判定を行っているそうです。

またステージ中に登場するアイテムのようなものにも衝突判定を行っており、パーティクルの判定の前処理部分では最終的にはPPU側でパーティクルをKd-Treeの形で構成し、あらかじめ衝突判定を行いたい領域をしてしています。大まかな領域に含まれるパーティクルをPPU側でKd-Treeを構成し最終的な衝突判定を行っているそうです。

SPU側で行う作業では、パーティクルの物理計算や大まかな衝突判定を行いたい領域をKd-Treeを構築しフラグを付けておくといった方法で計算されています。

PS3の特性を活かした開発


なお、PixelJunkではSPU1基のみで行っていはいますが、より複雑な処理を行いたいという場合は、SPUひとつでは足りないため、複数のSPUを用いた並列処理が必要となるそうです。

ゲーム中の処理部分では、PPU側で基本的に各処理のタスク管理を行い、SPUでは各タスクやコンテキストを管理・処理しており、これによりPPUに余分な負荷をかけず、余裕のある処理が可能であるといった内容が語られました。

最期に木下氏は「SPUは強力でSPU専用のチューニングをすれば、より早くなるし、手間はできるだけ多くのスクリプトに任せることで、生産性の向上などのメリットが生み出せるでしょう」といったコメントをし、講演は終了しました。
《鬼頭世浪》

編集部おすすめの記事

ゲームビジネス アクセスランキング

  1. 今週発売の新作ゲーム『CLOSED NIGHTMARE』『GROOVE COASTER』『太鼓の達人 Nintendo Switchば~じょん!』他

    今週発売の新作ゲーム『CLOSED NIGHTMARE』『GROOVE COASTER』『太鼓の達人 Nintendo Switchば~じょん!』他

  2. 「狼と香辛料」作者が送るVRアニメ『Project LUX』Steam配信へ【UPDATE】

    「狼と香辛料」作者が送るVRアニメ『Project LUX』Steam配信へ【UPDATE】

  3. 『ミニファミコン 週刊少年ジャンプバージョン』発売2日間で11.1万台販売

    『ミニファミコン 週刊少年ジャンプバージョン』発売2日間で11.1万台販売

  4. IBMによるアルファテスト版『ソードアート・オンライン』のゲーム画面とナーヴギアの写真をお届け

  5. 「創点 弟子入りプロジェクト」で次世代を育てたいーディライトワークス塩川洋介氏インタビュー

  6. 2017年モバイルゲーム総売上、『ドラクエ』が『FF』を上回る―『星ドラ』が好調

  7. 【特集】マリオカートやエヴァ搭乗をVRで楽しめる「VR ZONE SHINJUKU」オープン─利用方法は? 要予約なの? まとめてご紹介

  8. 【CEDEC 2011】Unity、日本法人Unity Technologies Japanを設立

  9. ドン・キホーテでVR動画スターターセットが先行発売! DMMで使える動画ポイント付き

  10. 社内コンテストから始まった『夢王国と眠れる100人の王子様』――開発までの経緯をプロデューサーが語るセミナー開催

アクセスランキングをもっと見る