説明

画像生成システム、プログラム及び情報記憶媒体

【課題】まだ結合されたことのない第2のオブジェクトを判別することができるようにした画像生成システム、プログラム及び情報記憶媒体を提供すること
【解決手段】画像生成システムは、第2のオブジェクトの種類毎に第1のオブジェクトに結合されたことがあるか否かを識別する結合履歴情報を記憶する結合履歴記憶部、第1のオブジェクトと第2のオブジェクトが結合された場合に、結合された第2のオブジェクトの種類に基づいて、結合履歴情報を更新する更新部、結合履歴情報に基づいて、前記第2のオブジェクトを、結合されたことがある種類か否かに応じた描画処理で描画する描画部を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像生成システム、プログラム及び情報記憶媒体に関する。
【背景技術】
【0002】
従来より、三次元仮想空間内を移動する第1のオブジェクトと当該仮想空間内に配置された第2のオブジェクトを結合させて、第1のオブジェクトを雪だるま式に大きくしていくゲームが知られている(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2003−251076号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記従来技術では、多くの種類の第2のオブジェクトを結合することがゲームの目的の一つとなっている。しかし、上記従来技術では、プレーヤは、仮想空間に配置された第2のオブジェクトが、結合されたことがある種類のものか否かを判別することができなかった。
【0005】
また、上記従来技術では、第1のオブジェクトと第2のオブジェクトが接触した場合に所定の結合可能条件を満たすと両者が結合される。しかし、上記従来技術では、プレーヤは、仮想空間に配置された第2のオブジェクトが第1のオブジェクトと接触した場合に所定の結合可能条件を満たすことになるのか否かを判別することができなかった。
【0006】
本発明は、上記事情に鑑みてなされたものであり、その目的は、プレーヤがまだ結合されたことのない第2のオブジェクトを判別することができるようにした画像生成システム、プログラム及び情報記憶媒体を提供することである。
【0007】
また、本発明の他の目的は、プレーヤが結合可能な第2のオブジェクトを判別することができるようにした画像生成システム、プログラム及び情報記憶媒体を提供することである。
【課題を解決するための手段】
【0008】
(1)上記課題を解決するため、本発明は、仮想空間内を移動する第1のオブジェクトに前記仮想空間内に配置された複数種類の第2のオブジェクトを結合させるゲームを実行させ、前記仮想空間内に配置された仮想カメラから前記仮想空間を見た画像を描画する画像生成システムであって、前記第1のオブジェクト及び複数種類の前記第2のオブジェクトが配置された仮想空間を設定する仮想空間設定部、前記仮想空間内で前記第1のオブジェクトを移動させる移動処理部、前記第1のオブジェクトと前記第2のオブジェクトが接触したか否かを判定する接触判定部、前記接触判定部により接触したと判定された場合に、接触した前記第1のオブジェクトと前記第2のオブジェクトが所定の結合可能条件を満たすか否かを判定する結合判定部、前記結合判定部により結合可能条件を満たすと判定された場合に、接触した前記第1のオブジェクトと前記第2のオブジェクトとを結合させる結合部、前記第2のオブジェクトの種類毎に前記第1のオブジェクトに結合されたことがあるか否かを識別する結合履歴情報を記憶する結合履歴記憶部、前記第1のオブジェクトと前記第2のオブジェクトが結合された場合に、結合された前記第2のオブジェクトの種類に基づいて、前記結合履歴情報を更新する更新部、前記結合履歴情報に基づいて、前記第2のオブジェクトを、結合されたことがある種類か否かに応じた描画処理で描画する描画部を有することを特徴とする画像生成システムに関係する。また、本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また、本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
【0009】
本発明によれば、プレーヤは結合されたことのある種類の第2のオブジェクトと結合されたことのない種類の第2のオブジェクトを区別することが可能となる。これにより、結合されたことのない種類の第2のオブジェクトを選択して結合させて、より多くの種類の第2のオブジェクトを結合されたことのある状態にするというプレイができる。
【0010】
(2)また、本発明にかかる画像生成システム、プログラム、および情報記憶媒体において、前記描画部は、結合されたことのある種類の前記第2のオブジェクトを第1の描画処理で描画し、結合されたことのない種類の前記第2のオブジェクトを第2の描画処理で描画するようにしてもよい。
【0011】
このようにすれば、第1の描画処理及び第2の描画処理によって、結合されたことのある種類の第2のオブジェクトと結合されたことのない種類の第2のオブジェクトが区別して描画される。
【0012】
(3)また、本発明にかかる画像生成システム、プログラム、および情報記憶媒体において、前記描画部は、結合されたことのある種類であり、かつ前記第1のオブジェクトまたは前記仮想カメラからの距離が所定以内の位置に配置された前記第2のオブジェクトを第1の描画処理で描画し、他の前記第2のオブジェクトを第2の描画処理で描画するようにしてもよい。
【0013】
このようにすれば、プレーヤは結合されたことのある種類の第2のオブジェクトのうち、所定範囲に位置するものを特に区別することが可能になる。
【0014】
(4)また、本発明にかかる画像生成システム、プログラム、および情報記憶媒体は、前記ゲームの進行を制御し、前記ゲームの進行状況が所定の条件を満たしたか否かを判定するゲーム処理部を有し、前記仮想空間設定部は、前記ゲームの進行状況が所定の条件を満たしたと判定された場合、新たに前記第2のオブジェクトを配置し、前記更新部は、前記進行状況が所定の条件を満たす前に更新された前記結合履歴情報を維持しつつ、前記進行状況が所定の条件を満たした後に結合された前記第2のオブジェクトの種類に基づいて、前記結合履歴情報を更新し、前記描画部は、前記結合履歴情報に基づいて、前記進行状況が所定の条件を満たした後に新たに配置された前記第2のオブジェクトを描画するよういしてもよい。
【0015】
このようにすれば、プレーヤは、進行状況が所定の条件を満たした後のゲームにおいて、仮想空間に配置された第2のオブジェクトが、進行状況が所定の条件を満たす前後を通じて結合されたことのある種類か否かを区別することができる。
【0016】
(5)また、本発明は、仮想空間内を移動する第1のオブジェクトに前記仮想空間内に配置された複数の第2のオブジェクトを結合させるゲームを実行し、前記仮想空間内に配置された仮想カメラから前記仮想空間を見た画像を描画する画像生成システムであって、前記第1のオブジェクト及び設定された基準値が互いに異なる複数の第2のオブジェクトを前記仮想空間内に配置する仮想空間設定部、前記仮想空間内で前記第1のオブジェクトを移動させる移動処理部、前記第1のオブジェクトと前記第2のオブジェクトとが接触したか否かを判定する接触判定部、前記接触判定手段により接触したと判定された場合に、接触した前記第1のオブジェクトと前記第2のオブジェクトが所定の結合可能条件を満たすか否かを前記基準値に基づいて判定する結合判定部、前記結合判定手段により結合可能条件を満たすと判定された場合、接触した前記第1のオブジェクトと前記第2のオブジェクトとを結合させる結合部、前記第2のオブジェクトを、前記接触判定手段により接触したと判定された場合に前記結合可能条件を満たすことになる前記基準値が設定されているか否かに応じた描画処理で描画する描画部、を有することを特徴とする画像生成システムに関係する。また、本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また、本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶(記録)した情報記憶媒体に関係する。
【0017】
本発明によれば、プレーヤは複数の第2のオブジェクトのうちのどれが結合可能かどうかを判断することができる。
【0018】
(6)また、本発明にかかる画像生成システム、プログラム、および情報記憶媒体は、 前記仮想空間設定部は、複数種類の前記第2のオブジェクトを前記仮想空間内に配置し、前記第2のオブジェクトの種類毎に、前記接触判定手段により接触したと判定された場合に前記結合可能条件を満たすことになる前記基準値が設定されているか否かを識別する結合可能情報を記憶する結合可能情報記憶部、所与のタイミングで、前記結合可能情報を更新する更新部を有し、前記描画部は、前記第2のオブジェクトを、前記結合可能情報に応じた描画処理で描画するようにしてもよい。
【0019】
このようにすれば、所与のタイミングで更新される結合可能情報に応じた描画処理で、第2のオブジェクトを描画することができる。
【0020】
(7)また、本発明にかかる画像生成システム、プログラム、および情報記憶媒体は、前記ゲームの進行を制御し、前記ゲームの進行状況が所定の条件を満たしたか否かを判定するゲーム処理部、前記ゲームの進行状況が所定の条件を満たしたと判定された場合に更新される進行履歴情報を記憶する進行履歴記憶部を有し、前記仮想空間設定部は、前記仮想空間内に前記第1のオブジェクトに結合不可能な背景オブジェクトを配置し、前記描画部は、前記進行履歴情報に基づいて、前記背景オブジェクトを描画するようにしてもよい。
【0021】
このようにすれば、プレーヤは背景オブジェクトの描画処理によって、ゲームの進行状況が所定の条件を満たしているか否かを判断することができる。
【0022】
(8)また、本発明にかかる画像生成システム、プログラム、および情報記憶媒体において、前記結合判定部は、接触した前記第1のオブジェクトと前記第2のオブジェクトの大きさの関係が所定の条件を満たす場合に、前記結合可能条件を満たすと判定することを特徴とする。
【0023】
このようにすれば、第2のオブジェクトが結合可能な大きさなのかどうかを、プレーヤが判断する助けとなる。
【図面の簡単な説明】
【0024】
【図1】本実施形態の機能ブロック図。
【図2】本実施形態のゲーム画面の一例を示す図。
【図3】本実施形態のキャラクタについて説明する図。
【図4】本実施形態のゲーム画面の一例を示す図。
【図5】本実施形態の結合履歴情報を示す図。
【図6】本実施形態のゲーム画面の一例を示す図。
【図7】本実施形態のゲーム画面の一例を示す図。
【図8】本実施形態のゲーム画面の一例を示す図。
【図9】本実施形態の進行履歴情報を示す図。
【図10】本実施形態のゲーム画面の一例を示す図。
【図11】本実施形態の処理の流れを示すフローチャート。
【図12】本実施形態の処理の流れを示すフローチャート。
【図13】本実施形態の処理の流れを示すフローチャート。
【発明を実施するための形態】
【0025】
以下、本発明の実施形態について説明する。なお、以下に説明する本発明の実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本発明の実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0026】
1.構成
図1に本実施形態の画像生成システム(ゲームシステム)の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図1の構成要素(各部)の一部を省略した構成としてもよい。
【0027】
操作部10は、プレーヤがキャラクタ(プレーヤが操作するプレーヤキャラクタなど)の操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。
【0028】
記憶部20は、処理部100や通信部70などのワーク領域となるもので、その機能はRAM、VRAMなどにより実現できる。記憶部20は、オブジェクトデータ記憶部21、フレームバッファ22、デプスバッファ23、テクスチャ記憶部24、結合履歴記憶部25、進行履歴記憶部26を含む。
【0029】
オブジェクトデータ記憶部21には、プレーヤキャラクタ(第1のオブジェクトの一例)、車、建物、樹木、柱、壁等のキャラクタに結合可能なオブジェクト(第2のオブジェクトの一例)、マップ(背景オブジェクトの一例)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)や、光が進行する方向や強さや色を示す光源等のオブジェクトデータが記憶される。本実施形態では、第1のオブジェクト、第2のオブジェクトには大きさ(基準値の一例)が設定されている。また、第2のオブジェクトには種類が設定されている。
【0030】
フレームバッファ22には、仮想空間を仮想カメラから見た画像が描画される。フレームバッファに描画された画像は表示部50に表示される。
【0031】
デプスバッファ23には、フレームバッファの各ピクセルに対応させて、仮想カメラからオブジェクトまでの距離を表すデプス値(Z値)がピクセル毎に記憶される。
【0032】
テクスチャ記憶部24には、テクスチャデータが記憶される。テクスチャデータは、色(RGB)、α値などのオブジェクトの表面に与えられるプロパティデータである。
【0033】
結合履歴記憶部25には、第2のオブジェクトの種類毎に第1のオブジェクトに結合されたことがあるか否かを識別する結合履歴情報が記憶される。
【0034】
進行履歴記憶部26には、ゲームの進行状況が所定の条件を満たしたと判定された場合に更新される進行履歴情報が記憶される。
【0035】
情報記憶媒体30(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体30に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体30には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
【0036】
携帯型情報記憶装置40は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、メモリカードや携帯型ゲーム装置などにより実現できる。
【0037】
表示部50は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。
【0038】
音出力部60は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【0039】
通信部70は外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0040】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部70を介して情報記憶媒体30(あるいは記憶部20)に配信してもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【0041】
処理部100(プロセッサ、ゲーム処理部)は、操作部10からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理(描画処理)、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、イベント発生条件が満たされた場合にイベントを発生させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、ゲームの進行状況が所定の条件(例えばステージ等の所定のゲーム単位がクリアされたこと)を満たしたか否かを判定する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100は、記憶部20をワーク領域として各種処理を行う。処理部100の機能は、各種プロセッサ(CPU(メインプロセッサ)、GPU(描画プロセッサ)、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0042】
そして処理部100は、仮想空間設定部110、移動処理部112、接触判定部114、結合判定部116、結合部118、更新部120、仮想カメラ制御部124、描画部126、音生成部128を含む。なおこれらの一部を省略する構成としてもよい。
【0043】
仮想空間設定部110は、オブジェクトデータ記憶部21に記憶されているオブジェクトデータに基づいて、オブジェクトを仮想空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、決定された位置(X、Y、Z)に決定された回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトや光源を配置する。
【0044】
移動処理部112は、オブジェクト(キャラクタ、車、又は飛行機等)の移動・動作演算(移動・動作シミュレーション)を行う。すなわち操作部10によりプレーヤが入力した操作データや、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させる処理を行う。具体的には、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(オブジェクトを構成する各パーツの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。
【0045】
接触判定部114は、仮想空間に配置された各種オブジェクトの位置、回転角度、形状、大きさに基づいて、オブジェクト同士が接触したか否かの判定(ヒットチェック、コリジョン判定)を行う。オブジェクトの接触判定は、オブジェクトの表示モデルを近似したバウンディングボリュームを用いて行われる。尚、接触判定部114が、オブジェクト同士が見た目上は接触していなくても接触したと判定するようにしてもよい。例えば、接触判定用のバウンディングボリュームとして、オブジェクトよりも一回り大きいものを用いることによって、見た目上は接触していないオブジェクトを接触したと判定するようにしてもよい。
【0046】
結合判定部116は、第1のオブジェクトと第2のオブジェクトが接触したと判定された場合に、第1のオブジェクトと第2のオブジェクトの大きさに基づいて、両者が結合可能条件を満たすか否かを判定する。例えば、第1のオブジェクトに設定された大きさが第2のオブジェクトに設定された大きさよりも大きい場合に結合可能条件を満たすと判定する。また、結合判定部116は、第1のオブジェクトが第2のオブジェクトに対して所定以上の大きさの場合に結合可能条件を満たすと判定してもよい。例えば、第1のオブジェクトに設定された大きさが第2のオブジェクトに設定された大きさの3倍以上である場合に、結合可能条件を満たすと判定してもよい。
【0047】
結合部118は、結合判定部116により結合可能条件を満たすと判定された場合に、接触した第1のオブジェクトと第2のオブジェクトを結合させる。具体的には、結合部118は、記憶部20に記憶された結合リストに、結合した第2のオブジェクトを追加する。この結合リストは、結合した順番に第2のオブジェクトが登録されるスタック型のデータである。結合部118は、接触点、または接触点の近傍の点で第1のオブジェクトと第2のオブジェクトを結合し、結合された第1のオブジェクトと第2のオブジェクトを一体化して新たな第1のオブジェクトとする。新たな第1のオブジェクトの大きさは、元の第1のオブジェクトと結合された第2のオブジェクトの大きさを合わせたものとなる。また、結合部118は、結合された第2のオブジェクトの大きさに基づいて、第1のオブジェクトに設定された接触判定用のバウンディングボリュームを更新する。
【0048】
更新部120は、第1のオブジェクトと第2のオブジェクトが結合された場合に、結合された第2のオブジェクトの種類に基づいて、結合履歴記憶部25に記憶された結合履歴情報を更新する。また、更新部120は、処理部100がゲームの進行状況が所定の条件を満たしたと判定した場合に、進行履歴記憶部26に記憶された進行履歴情報を更新する。
【0049】
仮想カメラ制御部124は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、視線方向あるいは画角を制御する処理)を行う。
【0050】
例えば仮想カメラによりオブジェクト(例えばキャラクタ、車)を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動処理部112で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させたりする制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【0051】
描画部126は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部50に出力する。いわゆる3次元ゲーム画像を生成する場合には、まずオブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むオブジェクトデータ(モデルデータ)がオブジェクトデータ記憶部21から入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。頂点処理では、頂点処理プログラム(頂点シェーダプログラム、第1のシェーダプログラム)に従って、頂点の移動処理や、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、あるいは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセル(画素)とが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(ピクセルシェーダによるシェーディング、フラグメント処理)が行われる。ピクセル処理では、ピクセル処理プログラム(ピクセルシェーダプログラム、第2のシェーダプログラム)に従って、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの描画色を決定し、透視変換されたオブジェクトの描画色をレンダリングターゲット(ピクセル単位で画像情報を記憶できるバッファ。フレームバッファ22等)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色(色値、輝度値)、法線、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるように画像を生成することができる。
【0052】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【0053】
そして描画部126は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【0054】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)のオブジェクトデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、オブジェクトデータ記憶部21に保存される。
【0055】
光源計算としては、光源に設定される各種パラメータ(光源の強さ、色、位置、光源ベクトルなど)、オブジェクト(プリミティブ)や頂点に設定される各種パラメータ(反射属性、法線などのベクトルなど)、仮想カメラに設定される各種パラメータ(視線ベクトル、視点の位置など)に基づいて光の反射をシミュレートし、頂点毎に基本色(ディフューズ)と鏡面反射成分(スペキュラ)とを求める。
【0056】
テクスチャマッピングは、テクスチャ記憶部24に記憶されるテクスチャ(テクセル値、UV座標値)をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定(付与)されるテクスチャ座標等を用いてテクスチャ記憶部24からテクスチャ(色(RGB)、α値などの表面プロパティ)を読み出す。そして、2次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間、トライリニア補間などを行う。
【0057】
隠面消去処理としては、描画ピクセルの奥行き値(Z値)が格納されるデプスバッファ23(奥行きバッファ)を用いた奥行き比較法(デプステスト、Zテスト)による隠面消去処理を行う。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、デプスバッファ23に格納される奥行き値をピクセルごとに参照する。そして参照されたデプスバッファ23の奥行き値と、プリミティブの描画ピクセルでの奥行き値とを比較し、描画ピクセルでの奥行き値が、仮想カメラから見て手前側となる奥行き値(例えば小さな奥行き値)である場合には、その描画ピクセルの描画処理を行うとともにデプスバッファ23の奥行き値を新たな奥行き値に更新する。
【0058】
αブレンディングとしては、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)を行う。例えば通常αブレンディングの場合には下式(1)〜(3)の処理を行う。
【0059】
=(1−α)×R+α×R (1)
=(1−α)×G+α×G (2)
=(1−α)×B+α×B (3)
【0060】
また、加算αブレンディングの場合には下式(4)〜(6)の処理を行う。なお単純加算の場合はα=1として下式(4)〜(6)の処理を行う。
【0061】
=R+α×R (4)
=G+α×G (5)
=B+α×B (6)
【0062】
また、減算αブレンディングの場合には下式(7)〜(9)の処理を行う。なお単純減算の場合はα=1として下式(7)〜(9)の処理を行う。
【0063】
=R−α×R (7)
=G−α×G (8)
=B−α×B (9)
【0064】
ここで、R、G、Bは、フレームバッファ22に既に描画されている画像(原画像)のRGB成分(色値)であり、R、G、Bは、フレームバッファ22に描画すべき画像のRGB成分である。また、R、G、Bは、αブレンディングにより得られる画像のRGB成分である。なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
【0065】
尚、本実施形態では、描画部126は、第2のオブジェクトを描画する際に、結合履歴記憶部25に記憶された結合履歴情報に基づいて、描画する第2のオブジェクトが第1のオブジェクトに結合されたことのある種類か否かに応じた描画処理で描画を行う。例えば、描画する第2のオブジェクトが第1のオブジェクトに結合されたことのある種類か否かに応じて、頂点処理プログラムやピクセル処理プログラムを切り替えて描画を行う。
【0066】
また、描画部126は、描画する第2のオブジェクトが、第1のオブジェクトと接触した場合に結合可能条件を満たすことになる基準値が設定されているか否かに応じた描画処理で、第2のオブジェクトを描画する。
【0067】
また、描画部126は、背景オブジェクトを描画する際に、進行履歴記憶部26に記憶された進行履歴情報を参照し、進行履歴情報に基づいた描画処理で描画を行う。例えば、既に一度クリアされたステージとまだ一度もクリアされたことのないステージの背景を異なる描画処理で描画する。
【0068】
音生成部128は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部60に出力する。
【0069】
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
【0070】
2.ゲーム概要
図2、図3を用いて本実施形態のゲームの概要を説明する。
【0071】
図2は、本実施形態のゲーム画面の一例を示す図である。プレーヤは操作入力により球体のキャラクタ130(第1のオブジェクト)を仮想空間内で移動させることができる。仮想空間には、コイン132、飴玉134、缶136、パイプ138、人140、ビル142等の大きさの異なる複数種類のオブジェクト(第2のオブジェクト)が各種類について複数個配置されている。また、仮想空間には、背景オブジェクトとして雲144、山146、太陽148、空150、地面152が配置されている。
【0072】
プレーヤがキャラクタ130を移動させ、キャラクタ130と第2のオブジェクトが接触した際に、キャラクタ130の大きさ(直径)が接触した第2のオブジェクトの大きさより大きい場合、キャラクタ130と接触した第2のオブジェクトが結合される。そして、結合したキャラクタ130と第2のオブジェクトが新たなキャラクタ130となる。新たなキャラクタ130の大きさは、元のキャラクタ130と比べて、結合した第2のオブジェクトの分大きくなる。また、新たなキャラクタ130の接触判定用のバウンディングボリュームも、結合した第2のオブジェクトの分大きくなる。本実施形態のゲームの目的は、第2のオブジェクトをキャラクタ130に結合させて、キャラクタ130を雪だるま式に大きくしていくことである。
【0073】
図3は、キャラクタ130が雪だるま式に大きくなる様子を説明する図である。ゲーム開始直後は、キャラクタ130は、図3(A)に示す大きさである。この大きさのキャラクタ130には、キャラクタ130よりも小さいコイン132、飴玉134、缶136は結合させることができるが、キャラクタ130よりも大きいパイプ138、人140、ビル142は結合することができない。プレーヤは、結合可能な第2のオブジェクトを結合させて、キャラクタ130を大きくしていく。図3(B)は、図3(A)に示す状態から結合によって拡大したキャラクタ130を示している。尚、キャラクタ130に結合した第2のオブジェクトの大きさの合計が一定以上になると、キャラクタ130の中心の球体(表示モデル)が拡大するため、球体の内側に結合されている第2のオブジェクトは見えなくなる。この時点で、結合リストから球体の内側の第2のオブジェクトは削除される。図3(B)に示す大きさのキャラクタ130には、さらにパイプ138を結合させることができるようになる。さらに、キャラクタ130に第2のオブジェクトを結合させると、キャラクタ130は図3(C)に示す大きさに拡大する。この大きさのキャラクタ130には、さらに人140を結合することができる。このように、本実施形態のゲームでは、多くの第2のオブジェクトを結合させてキャラクタ130の大きさを拡大させるほど、多くの種類の第2のオブジェクトを結合させることができるようになる。
【0074】
図2に戻り、本実施形態のゲームのステージ移行について説明する。図2のゲーム画面の左上には、大きさ情報153が表示されている。大きさ情報153には、ステージクリアのための目標となるキャラクタ130の大きさと、現在のキャラクタ130の大きさが表示されている。第2のオブジェクトを結合させて、キャラクタ130の大きさが5mに達すると、図2に示すステージはクリアとなり、次のステージをプレイすることができるようになる。
【0075】
図4は、本実施形態のゲーム画面の一例を示す図である。具体的には、図4は、図2に示すステージをクリアした後にプレイ可能となる次のステージの画面の一例である。図4に示すステージには、図2に示すステージには無かったリンゴ154、枝156、木158等の新たな種類の第2のオブジェクトが配置されている。また、図2に示すステージと共通のオブジェクトである缶136も配置されている。このように、本実施形態では、特定のステージのみに配置されるステージ固有の第2のオブジェクトと、複数のステージに配置される汎用の第2のオブジェクトが存在する。図4に示すステージは、背景オブジェクトも図2に示すステージとは異なっている。図4に示すステージには、背景オブジェクトとして、月160、空162、地面164が配置されている。また、図4に示すステージは、クリア条件も図2に示すステージとは異なっている。図4の大きさ表示166に示すように、図4に示すステージではキャラクタ130の大きさを10mにすることがクリア条件となっている。また、図4に示すステージは、ステージ開始時のキャラクタ130の大きさも図2に示すステージとは異なっている。図4に示すステージでは、ステージの開始時のキャラクタ130の大きさは5mとなっている。
【0076】
このように、本実施形態のゲームでは、複数のステージが用意され、一つのステージに設定されたクリア条件を満たすことによって、他のステージをプレイすることが可能となる。複数のステージは、上述のように、配置される第2のオブジェクト、背景オブジェクト、クリア条件、ステージ開始時のキャラクタ130の大きさがそれぞれ異なっている。ステージのクリア条件は、キャラクタ130の大きさ以外にも、特定の第2のオブジェクトを結合させることや、ステージのプレイ時間が所定に達することなどとすることができる。
【0077】
3.本実施形態に特有の手法
3−1.結合履歴情報
図5は、本実施形態の結合履歴情報を示す図である。図5に示すように、結合履歴情報は、第2のオブジェクトの種類毎に、キャラクタ130に結合されたことがあるか否かを識別する情報である。ここで、結合済みフラグに1が設定されている種類の第2のオブジェクトは、キャラクタ130に結合されたことがあるものであり、結合済みフラグに0が設定されている種類の第2オブジェクトは、キャラクタ130に結合されたことがないものである。図5(A)は、第2のオブジェクトのうち、飴玉134及び缶136が結合されたことがある場合の結合履歴情報を示している。
【0078】
ゲーム中に、結合済みフラグに0が設定されている種類の第2のオブジェクトが結合されると、結合済みフラグが0から1に更新される。図5(B)は、図5(A)の状態でさらにリンゴ154が結合された場合に、更新された結合履歴情報を示している。
【0079】
図2に示すように、本実施形態の仮想空間には同じ種類の第2のオブジェクトが複数配置されているが、同じ種類の第2のオブジェクトのうち1つでも結合すれば、その種類の結合済みフラグが1に更新される。
【0080】
この結合履歴情報は、プレーヤがより多くの種類の第2のオブジェクトを結合済みの状態にする意欲を高めるために用いられる。即ち、この結合履歴情報をプレーヤに表示すれば、プレーヤは結合済みフラグを見て、自分がまだ結合したことがない第2のオブジェクトの種類を知ることができ、多くの種類の第2のオブジェクトを結合済みの状態にする意欲が高まる。または、結合履歴情報そのものを表示するのではなく、第2のオブジェクトの一覧を表示し、結合済みフラグに基づいて一覧中の第2のオブジェクトの表示態様を変化させてもよい。あるいは、結合済みである第2のオブジェクトのみを一覧表示するようにしてもよい。
【0081】
さらに、本実施形態では、この結合履歴情報に基づいて、第2のオブジェクトを、結合されたことがある種類か否かに応じた描画処理で描画することによって、プレーヤがゲーム中に結合したことのある種類の第2のオブジェクトと結合したことのない種類の第2のオブジェクトを判別することができるようにしている。
【0082】
3−2.描画処理
図6は、本実施形態のゲーム画面の一例を示す図である。図6に示す画像では、第2のオブジェクトのうち、飴玉134及び缶136は全体がカラーで描画されているが、その他の第2のオブジェクトは輪郭線のみが所定の色で描画され輪郭の内部は白色一色で描画されている。また、背景オブジェクトも輪郭線のみが所定の色で描画され輪郭の内部は白色一色で描画されている。
【0083】
図6は、図5(A)に示す結合履歴情報に基づいて、描画された画像である。図6に示すように、キャラクタ130には飴玉134及び缶136のみが結合されている。従って、図5(A)に示す結合履歴情報では、飴玉134及び缶136の結合済みフラグは1であり、他の種類の結合済みフラグは0になっている。この結合履歴情報に基づいて、第2のオブジェクトを、結合されたことがある種類か否かに応じた描画処理で描画することによって、図6に示すような画像が生成される。
【0084】
即ち、描画しようとする第2のオブジェクトが結合したことのある種類の飴玉134又は缶136である場合は、オブジェクトの頂点又はテクスチャデータに設定されたカラー値(RGB値)に基づいて通常のレンダリング処理(第1の描画処理の一例)で描画が行われる。一方、描画しようとする第2のオブジェクトが結合したことのない種類のものである場合は、オブジェクトの輪郭を抽出し、抽出された輪郭を所定の色で、その他の部分についてはオブジェクトの頂点又はテクスチャデータに設定されたカラー値に関わらず白色で描画する処理(第2の描画処理)が行われる。尚、輪郭の抽出は、描画しようとするオブジェクトより一回り大きい単色モデルを用いる方法、フレームバッファ上で隣接するピクセルとの色の差分に基づいて輪郭となるピクセルを特定する方法、オブジェクトに設定された法線の角度に基づいて輪郭を抽出する方法等がある。
【0085】
3−3.ステージ移行と結合履歴情報
図5〜図7を用いて、ステージ移行と結合履歴情報の更新について説明する。尚、ここでは、図6に示すステージをクリアすると図7に示すステージがプレイできるようになるものとして説明する。
【0086】
本実施形態では、図6に示すステージ及び図7に示すステージにおいて結合された前記第2のオブジェクトの種類に基づいて、図5に示す結合履歴情報が更新される。そして、更新された結合履歴情報に基づいて、図6に示すステージ及び図7に示すステージが描画される。
【0087】
即ち、上述の通り、図6に示すステージにおいて結合があると、図5に示す結合履歴情報が更新される。そして、更新された結合履歴情報に基づいて、図6に示すステージに配置された第2のオブジェクトが、結合されたことがある種類か否かに応じた描画処理で描画される。
【0088】
そして、キャラクタ130の大きさが5mに達すると、図6に示すステージクリアとなり、図7に示すステージが開始される。ここで、図7に示すステージにおいて結合があった場合も、図6に示すステージの場合と同様に、図5に示す結合履歴情報が更新される。図5(B)は、図7に示すステージにおいて、リンゴ154のみがキャラクタ130に結合された場合の結合履歴情報を示している。図5(B)に示すように、図7に示すステージにおいて結合された種類であるリンゴ154の結合済みフラグが1に更新されている。また、図6に示すステージで結合された種類である飴玉134及び缶136の結合済みフラグは1のまま維持されている。
【0089】
図7に示すステージに配置された第2のオブジェクトは、図5(B)に示す結合履歴情報に基づいて、図6に示すステージ又は図7に示すステージにおいて結合されたことがある種類か否かに応じた描画処理で描画される。これにより、図7に示すゲーム画面では、図6に示すステージで結合された缶136、及び、図7に示すステージで結合されたリンゴ154がカラーで描画され、その他の第2のオブジェクトは輪郭線のみが所定の色で描画され輪郭の内部は白色一色で描画されている。
【0090】
このように、本実施形態では、クリア条件を満たしてステージが移行する前後で、結合履歴情報を持ち越すことによって、第2のオブジェクトを、複数のステージのいずれかで結合されたことがあるか否かに応じた描画処理で描画することができる。
【0091】
3−4.第2のオブジェクトの位置に応じた描画処理
図8は、本実施形態のゲーム画面の一例を示す図である。図8に示すゲーム画面では、キャラクタ130の地面152との接触点を中心とする円形の領域168の内側に配置された飴玉134bと、缶136bがカラーで描画され、その他の第2のオブジェクトは輪郭線のみが所定の色で描画され輪郭の内部は白色一色で描画されている。
【0092】
図8に示すゲーム画面の描画には、図6に示すゲーム画面の描画と同様に、図5(A)に示す結合履歴情報が用いられている。さらに、図8に示すゲーム画面の描画では、第2のオブジェクトがキャラクタ130からの距離が所定以内の位置に配置されているか否かに応じた描画処理で、第2のオブジェクトが描画されている。
【0093】
即ち、ここでは、描画しようとする第2のオブジェクトが結合したことのある種類のものであり、かつ領域168内に位置するものである場合は、第2のオブジェクトの頂点又はテクスチャデータに設定されたカラー値(RGB値)に基づいて通常のレンダリング処理で描画が行われる。一方、描画しようとする第2のオブジェクトが結合したことのない種類のものである場合、又は結合したことがある種類のものであり、かつ領域168外に位置するものである場合は、第2のオブジェクトの輪郭を抽出し、抽出された輪郭を所定の色で、その他の部分については第2のオブジェクトの頂点又はテクスチャデータに設定されたカラー値に関わらず白色で描画する処理が行われる。
【0094】
これにより、結合したことのある種類の第2のオブジェクトにキャラクタ130が近づくと、それまで白色だった第2のオブジェクトがカラーになるという演出効果が得られる。
【0095】
3−5.背景オブジェクト
図9、図10を用いて、ステージクリア状況に基づく背景情報オブジェクトの描画処理について説明する。
【0096】
図9は、複数のステージのクリア済み状況を示す情報(進行履歴情報の一例)である。上述の通り、本実施形態のゲームでは複数のステージが用意され、あるステージのクリア条件を満たすと新たなステージがプレイできるようになっている。そして、本実施形態では、図9に示すように、各ステージに対応付けて、ステージがクリア済みか否かを示すクリア済みフラグが設定される。図9において、クリア済みフラグに1が設定されているステージ1〜3は、そのステージについて既にクリア条件が満たされたことを表している。一方、クリア済みフラグに0が設定されているステージ4〜5は、そのステージについて未だクリア条件が満たされていないことを表している。クリア済みフラグに0が設定されているステージのクリア条件が満たされると、クリア済みフラグが1に更新される。
【0097】
図10は、本実施形態のゲーム画面の一例を示す図である。具体的には、図10はクリア済みフラグに1が設定されたステージのゲーム画面を示している。図10に示すゲーム画面では、背景オブジェクト(雲144、山146、太陽148、空150、地面152)がカラーで描画されている。一方、上述した図2、図4〜図8に示すゲーム画面は、クリア済みフラグに0が設定されたステージの画面であり、これらのゲーム画面では背景オブジェクトは輪郭線のみが所定の色で描画され輪郭の内部は白色一色で描画されている。このように、本実実施形態では、クリア済みステージの背景とクリア済みでないステージを異なる描画処理で描画することによって、プレーヤが現在プレイしているステージがクリア済みか否かを判別できるようにしている。
【0098】
また、図10に示すゲーム画面では、図5に示す結合履歴情報に基づいて、結合されたことのある種類の第2のオブジェクトはカラーで、結合されたことのない種類の第2のオブジェクトは輪郭線のみが所定の色で描画され輪郭の内部は白色一色で描画されている。このように、結合されたことのある種類の第2のオブジェクトと背景オブジェクトを同じ描画処理で描画することによって、仮想空間に配置されたオブジェクトのうち、結合されたことのない種類の第2のオブジェクトのみが、その他のオブジェクトと異なる描画処理で描画される。これにより、プレーヤはクリア済みのステージのプレイ時に、まだ結合したことのない第2のオブジェクトをより判別しやすくなる。
【0099】
4.フローチャート
図11〜図13は、本実施形態の処理の流れを示すフローチャートである。
【0100】
図11は、本実施形態の結合処理の流れを示すフローチャートである。画像生成システムはまず、操作入力に基づいて仮想空間内でキャラクタ130を移動させる(ステップS10)。そして、画像生成システムは、キャラクタ130と第2のオブジェクトが接触したか否かを判定する(ステップS12)。キャラクタ130と第2のオブジェクトが接触したと判定された場合(ステップ12:Y)、画像生成システムは次に、キャラクタ130の大きさが接触した第2のオブジェクトより大きいか否かを判定する(ステップS14)。キャラクタ130の大きさが接触した第2のオブジェクトより大きいと判定された場合(ステップS14:Y)、画像生成システムは、接触した第2のオブジェクトを結合リストに追加する(ステップS16)。そして、画像生成システムは、結合リストに追加された第2のオブジェクトの大きさに基づいて、キャラクタ130の大きさを更新する(ステップS18)。さらに、画像生成システムは、結合リストに追加された第2のオブジェクトの大きさに基づいて、キャラクタ130に設定された接触判定用のバウンディングボリュームを更新する。(ステップS20)。そして、画像生成システムは、結合履歴情報のうち、結合した第2のオブジェクトの種類の結合済みフラグを1に更新する(ステップS22)。
【0101】
図12は、本実施形態の第2のオブジェクトの描画処理の流れを示すフローチャートである。第2のオブジェクトの描画処理において、画像生成システムはまず、結合履歴情報を参照し(ステップS30、描画しようとする第2のオブジェクトの種類の結合済みフラグが1か否かを判定する(ステップS32)。描画しようとする第2のオブジェクトの結合済みフラグが0だった場合(ステップS32:N)、画像生成システムは第2のオブジェクトを第2の描画処理で描画する(ステップS38)。一方、描画しようとする第2のオブジェクトの結合済みフラグが1だった場合(ステップS32:Y)、画像生成システムは次に、描画しようとする第2のオブジェクトの配置位置がキャラクタ130から所定範囲内か否かを判定する(ステップS34)。描画しようとする第2のオブジェクトの配置位置がキャラクタ130から所定範囲外だった場合(ステップS34:N)、画像生成システムは第2のオブジェクトを第2の描画処理で描画する(ステップS38)。一方、描画しようとする第2のオブジェクトの配置位置がキャラクタ130から所定範囲内だった場合(ステップS34:Y)、画像生成システムは第2のオブジェクトを第1の描画処理で描画する(ステップS36)。
【0102】
図13は、本実施形態の背景オブジェクトの描画処理の流れを示すフローチャートである。背景オブジェクトの描画処理において、画像生成システムはまず、進行履歴情報を参照し(ステップS40)、描画しようとする背景オブジェクトが配置されたステージのクリア済みフラグが1か否かを判定する(ステップS42)。クリア済みフラグが1だった場合(ステップS40:Y)、画像生成システムは、背景オブジェクトを第1の描画処理で描画する(ステップS44)。一方、クリア済みフラグが0だった場合(ステップS42:N)、画像生成システムは、背景オブジェクトを第2の描画処理で描画する(ステップS46)。
【0103】
5.変形例
尚、本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【0104】
5−1.結合可能条件に応じた描画処理
上記実施形態では、第2のオブジェクトを、結合されたことのある種類か否かに応じた描画処理で描画する例を説明したが、これに替えて、第1のオブジェクトと接触した場合に結合可能条件を満たすことになる基準値が設定されているか否かに応じた描画処理で描画するようにしてもよい。
【0105】
この場合、第2のオブジェクトが描画される際に、当該第2のオブジェクトの大きさとキャラクタ130の大きさが比較され、接触した場合に結合可能条件を満たすことになる場合にはカラーで、結合可能条件を満すことにならない場合は輪郭線のみが所定の色で描画され輪郭線の内部は白色一色で、第2のオブジェクトが描画されるようにしてもよい。
【0106】
あるいは、図5に示す結合履歴情報に加えて、もしくは図5に示す結合履歴情報に替えて、第2のオブジェクトの種類毎に各第2のオブジェクトがキャラクタ130と結合可能か否かを示す結合可否フラグ(結合可能情報の一例)を設定し、この結合可否フラグに基づいて第2のオブジェクトが描画されるようにしてもよい。この場合、所定のタイミング(第2のオブジェクトが結合されたとき、所定時間(例えば1フレーム)毎等)に、第2のオブジェクトの種類毎に設定された大きさとキャラクタ130の大きさの現在値が比較され、比較結果に基づいて結合可能フラグが更新される。
【0107】
このようにすれば、プレーヤは複数の第2のオブジェクトのうちのどれが結合可能かどうかを判断することができる。
【0108】
5−2.描画処理
上記実施形態では、第1の描画処理としてオブジェクトをカラーで描画する処理が行われ、第2の描画処理としてオブジェクトの輪郭線のみを所定の色で描画し輪郭の内部は白色一色で描画する処理が行われる例を説明したが、描画処理はこれに限られない。
【0109】
例えば、第1の描画処理としてオブジェクトをカラーで描画する処理が行われ、第2の描画処理としてオブジェクトをグレースケールで描画する処理が行われるようにしてもよい。この場合、第1の描画処理が行われる際は、オブジェクトの頂点やテクスチャデータに設定されたカラー値に基づいて通常のレンダリング方法でオブジェクトが描画され、第2の描画処理が行われる際は、第1の描画処理で求められたオブジェクトのピクセルのカラー値に対して所定のフィルタ処理を行って、カラー画像をグレースケール画像に変換するようにしてもよい。
【0110】
また、第1の描画処理としてオブジェクトを不透明で描画する処理が行われ、第2の描画処理としてオブジェクトを半透明で描画する処理が行われるようにしてもよい。
【0111】
また、第1の描画処理としてオブジェクトを通常のレンダリング方法で描画する処理が行われ第2の描画処理としてオブジェクトを歪ませて描画する処理が行われるようにしてもよい。この場合、第2の描画処理が行われる際に、オブジェクトの頂点の位置が頂点処理プログラム(頂点シェーダプログラム)によって変化させられるようにしてもよい。
【0112】
また、上記実施形態では、オブジェクトが第1の描画処理又は第2の描画処理で描画される例を説明したが、描画処理は2種類に限られず、3種類以上の描画処理のいずれかでオブジェクトが描画されるようにしてもよい。例えば、結合されたことのある種類の第2のオブジェクトが、さらに別の条件によって、複数の描画処理のいずれかで描画されるようにしてもよい。具体的には、結合履歴記憶情報として、結合済みフラグに加えて、第2のオブジェクトの種類毎にこれまでに結合された数が設定され、結合された数が所定数以上の種類の第2のオブジェクトは第3の描画処理で描画されるようにしてもよい。第3の描画処理としては、例えばオブジェクトの表面が輝くようなフィルタ処理や、所定数以上結合されたことを示すマークが入ったテクスチャをマッピングする処理が行われてもよい。
【0113】
また、描画処理に加えて音を変化させるようにしてもよい。例えば、キャラクタ130と第2のオブジェクトが衝突した際、又はキャラクタ130と第2のオブジェクトが結合した際に、第2のオブジェクトが結合されたことのある種類か否かや、結合可能条件を満たすことになるか否かに応じた音を発生させるようにしてもよい。
【0114】
また、描画処理に加えて操作部10の振動処理を行うようにしてもよい。例えば、キャラクタ130と第2のオブジェクトが衝突した際、又はキャラクタ130と第2のオブジェクトが結合した際に、第2のオブジェクトが結合されたことのある種類か否かや、結合可能条件を満たすことになるか否かに応じて操作部10を振動させるようにしてもよい。
【0115】
5−3.第2のオブジェクトの位置に応じた描画処理
上記実施形態では、図8に示すように、キャラクタ130が地面と接する点から所定範囲内に配置されているか否かに応じた描画処理で、第2のオブジェクトが描画される例について説明したが、第2のオブジェクトの位置に応じた描画処理の態様はこれに限られない。
【0116】
例えば、仮想カメラが配置された位置から所定範囲内に配置されているか否かに応じた描画処理で、第2のオブジェクトが描画されるようにしてもよい。また、仮想カメラの視界範囲内に配置されているか否かに応じた描画処理で、第2のオブジェクトが描画されるようにしてもよい。
【符号の説明】
【0117】
10 操作部、20 記憶部、21 オブジェクトデータ記憶部、22 フレームバッファ、23 デプスバッファ、24 テクスチャ記憶部、25 結合履歴記憶部、26 進行履歴記憶部、30 情報記憶媒体、40 携帯型情報記憶装置、50 表示部、60 音出力部、70通信部、100 処理部、110 仮想空間設定部、112 移動処理部、114 接触判定部、116 結合判定部、118 結合部、120 更新部、124 仮想カメラ制御部、126 描画部、128 音生成部、
130 キャラクタ、132 コイン、134 飴玉、136 缶、138 パイプ、140 人、142 ビル、144 雲、146 山、148 太陽、150 空、152 地面、153 大きさ情報、154 リンゴ、156 枝、158 木、160 月、162 空、164 地面、166 大きさ情報

【特許請求の範囲】
【請求項1】
コンピュータに、仮想空間内を移動する第1のオブジェクトに前記仮想空間内に配置された複数種類の第2のオブジェクトを結合させるゲームを実行させ、前記仮想空間内に配置された仮想カメラから前記仮想空間を見た画像を描画させるためのプログラムであって、
前記第1のオブジェクト及び複数種類の前記第2のオブジェクトが配置された仮想空間を設定する仮想空間設定部、
前記仮想空間内で前記第1のオブジェクトを移動させる移動処理部、
前記第1のオブジェクトと前記第2のオブジェクトが接触したか否かを判定する接触判定部、
前記接触判定部により接触したと判定された場合に、接触した前記第1のオブジェクトと前記第2のオブジェクトが所定の結合可能条件を満たすか否かを判定する結合判定部、
前記結合判定部により結合可能条件を満たすと判定された場合に、接触した前記第1のオブジェクトと前記第2のオブジェクトとを結合させる結合部、
前記第2のオブジェクトの種類毎に前記第1のオブジェクトに結合されたことがあるか否かを識別する結合履歴情報を記憶する結合履歴記憶部、
前記第1のオブジェクトと前記第2のオブジェクトが結合された場合に、結合された前記第2のオブジェクトの種類に基づいて、前記結合履歴情報を更新する更新部、
前記結合履歴情報に基づいて、前記第2のオブジェクトを、結合されたことがある種類か否かに応じた描画処理で描画する描画部、
としてコンピュータを機能させることを特徴とするプログラム。
【請求項2】
前記描画部は、結合されたことのある種類の前記第2のオブジェクトを第1の描画処理で描画し、結合されたことのない種類の前記第2のオブジェクトを第2の描画処理で描画することを特徴とする請求項1に記載のプログラム。
【請求項3】
前記描画部は、結合されたことのある種類であり、かつ前記第1のオブジェクトまたは前記仮想カメラからの距離が所定以内の位置に配置された前記第2のオブジェクトを第1の描画処理で描画し、他の前記第2のオブジェクトを第2の描画処理で描画することを特徴とする請求項1に記載のプログラム。
【請求項4】
前記ゲームの進行を制御し、前記ゲームの進行状況が所定の条件を満たしたか否かを判定するゲーム処理部としてコンピュータを機能させ、
前記仮想空間設定部は、前記ゲームの進行状況が所定の条件を満たしたと判定された場合、新たに前記第2のオブジェクトを配置し、
前記更新部は、前記進行状況が所定の条件を満たす前に更新された前記結合履歴情報を維持しつつ、前記進行状況が所定の条件を満たした後に結合された前記第2のオブジェクトの種類に基づいて、前記結合履歴情報を更新し、
前記描画部は、前記結合履歴情報に基づいて、前記進行状況が所定の条件を満たした後に新たに配置された前記第2のオブジェクトを描画することを特徴とする請求項1〜3に記載のプログラム。
【請求項5】
コンピュータに、仮想空間内を移動する第1のオブジェクトに前記仮想空間内に配置された複数の第2のオブジェクトを結合させるゲームを実行させ、前記仮想空間内に配置された仮想カメラから前記仮想空間を見た画像を描画させるためのプログラムであって、
前記第1のオブジェクト及び設定された基準値が互いに異なる複数の第2のオブジェクトを前記仮想空間内に配置する仮想空間設定部、
前記仮想空間内で前記第1のオブジェクトを移動させる移動処理部、
前記第1のオブジェクトと前記第2のオブジェクトとが接触したか否かを判定する接触判定部、
前記接触判定手段により接触したと判定された場合に、接触した前記第1のオブジェクトと前記第2のオブジェクトが所定の結合可能条件を満たすか否かを前記基準値に基づいて判定する結合判定部、
前記結合判定手段により結合可能条件を満たすと判定された場合、接触した前記第1のオブジェクトと前記第2のオブジェクトとを結合させる結合部、
前記第2のオブジェクトを、前記接触判定手段により接触したと判定された場合に前記結合可能条件を満たすことになる前記基準値が設定されているか否かに応じた描画処理で描画する描画部、
としてコンピュータを機能させることを特徴とするプログラム。
【請求項6】
前記仮想空間設定部は、複数種類の前記第2のオブジェクトを前記仮想空間内に配置し、
前記第2のオブジェクトの種類毎に、前記接触判定手段により接触したと判定された場合に前記結合可能条件を満たすことになる前記基準値が設定されているか否かを識別する結合可能情報を記憶する結合可能情報記憶部、
所与のタイミングで、前記結合可能情報を更新する更新部、
としてコンピュータを機能させ、
前記描画部は、前記第2のオブジェクトを、前記結合可能情報に応じた描画処理で描画することを特徴とする請求項5に記載のプログラム。
【請求項7】
前記ゲームの進行を制御し、前記ゲームの進行状況が所定の条件を満たしたか否かを判定するゲーム処理部、
前記ゲームの進行状況が所定の条件を満たしたと判定された場合に更新される進行履歴情報を記憶する進行履歴記憶部、
としてコンピュータを機能させ、
前記仮想空間設定部は、前記仮想空間内に前記第1のオブジェクトに結合不可能な背景オブジェクトを配置し、
前記描画部は、前記進行履歴情報に基づいて、前記背景オブジェクトを描画することを特徴とする請求項1〜6に記載のプログラム。
【請求項8】
前記結合判定部は、接触した前記第1のオブジェクトと前記第2のオブジェクトの大きさの関係が所定の条件を満たす場合に、前記結合可能条件を満たすと判定することを特徴とする請求項1〜7に記載のプログラム。
【請求項9】
コンピュータにより読み取り可能な情報記憶媒体であって、請求項1〜8のいずれかに記載されたプログラムを記憶することを特徴とする情報記憶媒体。
【請求項10】
仮想空間内を移動する第1のオブジェクトに前記仮想空間内に配置された複数種類の第2のオブジェクトを結合させるゲームを実行し、前記仮想空間内に配置された仮想カメラから前記仮想空間を見た画像を描画する画像生成システムであって、
前記第1のオブジェクト及び複数種類の前記第2のオブジェクトが配置された仮想空間を設定する仮想空間設定部、
前記仮想空間内で前記第1のオブジェクトを移動させる移動処理部、
前記第1のオブジェクトと前記第2のオブジェクトが接触したか否かを判定する接触判定部、
前記接触判定部により接触したと判定された場合に、接触した前記第1のオブジェクトと前記第2のオブジェクトが所定の結合可能条件を満たすか否かを判定する結合判定部、
前記結合判定部により結合可能条件を満たすと判定された場合に、接触した前記第1のオブジェクトと前記第2のオブジェクトとを結合させる結合部、
前記第2のオブジェクトの種類毎に前記第1のオブジェクトに結合されたことがあるか否かを識別する結合履歴情報を記憶する結合履歴記憶部、
前記第1のオブジェクトと前記第2のオブジェクトが結合された場合に、結合された前記第2のオブジェクトの種類に基づいて、前記結合履歴情報を更新する更新部、
前記結合履歴情報に基づいて、前記第2のオブジェクトを、結合されたことがある種類か否かに応じた描画処理で描画する描画部、
を有することを特徴とする画像生成システム。
【請求項11】
仮想空間内を移動する第1のオブジェクトに前記仮想空間内に配置された複数の第2のオブジェクトを結合させるゲームを実行し、前記仮想空間内に配置された仮想カメラから前記仮想空間を見た画像を描画する画像生成システムであって、
前記第1のオブジェクト及び設定された基準値が互いに異なる複数の第2のオブジェクトを前記仮想空間内に配置する仮想空間設定部、
前記仮想空間内で前記第1のオブジェクトを移動させる移動処理部、
前記第1のオブジェクトと前記第2のオブジェクトとが接触したか否かを判定する接触判定部、
前記接触判定手段により接触したと判定された場合に、接触した前記第1のオブジェクトと前記第2のオブジェクトが所定の結合可能条件を満たすか否かを前記基準値に基づいて判定する結合判定部、
前記結合判定手段により結合可能条件を満たすと判定された場合、接触した前記第1のオブジェクトと前記第2のオブジェクトとを結合させる結合部、
前記第2のオブジェクトを、前記接触判定手段により接触したと判定された場合に前記結合可能条件を満たすことになる前記基準値が設定されているか否かに応じた描画処理で描画する描画部、
を有することを特徴とする画像生成システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図9】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図10】
image rotate


【公開番号】特開2010−231364(P2010−231364A)
【公開日】平成22年10月14日(2010.10.14)
【国際特許分類】
【出願番号】特願2009−76578(P2009−76578)
【出願日】平成21年3月26日(2009.3.26)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】