(57)【要約】【課題】シルエットを表示するゲームプログラム２００を提供する。【解決手段】  記憶部１１及び表示部１６を備えるゲーム装置により実行されるゲームプログラム２００である。シーン描画手段１００は、三次元空間内の複数のオブジェクトを、仮想カメラからみたシーンに変換し、深度テストをしながら描画バッファ１１３へ描画する。識別バッファ作成手段１０１は、描画バッファ１１３の座標値に対応して、描画されている複数のオブジェクトを識別するための識別値を含む識別バッファ１１４を作成する。再描画手段１０２は、複数のオブジェクトに含まれる特定オブジェクトを再描画するか否かを、識別バッファ１１４の識別値に対応して判断し、再描画すると判断した場合は特定オブジェクトを描画バッファ１１３に特定のブレンド率で描画し、再描画しないと判断した場合は描画しない。【選択図】図２
2020189064.tif 000002
【特許請求の範囲】
【請求項１】
記憶部及び表示部を備えるゲーム装置により実行されるゲームプログラムであって、前記ゲーム装置を、
描画バッファの座標値に対応して、描画されている複数のオブジェクトを識別するための識別値を含む識別バッファを作成する識別バッファ作成手段と、
前記識別バッファ作成手段により作成された前記識別バッファの前記識別値に対応して、特定オブジェクトを再描画する再描画手段として機能させる
ゲームプログラム。
【請求項２】
前記ゲーム装置を、更に、
三次元空間内の前記複数のオブジェクトを、仮想カメラからみたシーンに変換し、深度テストをしながら前記描画バッファへ描画するシーン描画手段として機能させ、
前記再描画手段は、
前記複数のオブジェクトに含まれる前記特定オブジェクトを再描画するか否かを、前記識別バッファ作成手段により作成された前記識別バッファの前記識別値に対応して判断し、再描画すると判断した場合は前記特定オブジェクトを、特定のブレンド率で前記描画バッファに描画し、再描画しないと判断した場合は描画しない
請求項１に記載のゲームプログラム。
【請求項３】
前記再描画手段は、
前記特定オブジェクトの輪郭付近では、前記ブレンド率を低くする
請求項２に記載のゲームプログラム。
【請求項４】
前記再描画手段は、
前記特定オブジェクトと他のオブジェクトとの距離が近い場合には、前記ブレンド率を高くする
請求項２又は３に記載のゲームプログラム。
【請求項５】
前記再描画手段は、
前記ブレンド率を、前記描画バッファのピクセル深度、ピクセル法線、前記仮想カメラの方向、前記シーンの深度からなる群の一種又は任意の組み合わせから計算を行う
請求項２乃至４のいずれか１項に記載のゲームプログラム。
【請求項６】
請求項１乃至５のいずれか１項に記載のゲームプログラムを記憶した記憶部と、
前記ゲームプログラムを実行するコンピュータとを備える
ゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲームプログラム及びゲーム装置に関する。
【背景技術】
【０００２】
従来、３Ｄ（三次元）空間のアクションゲーム等では、仮想カメラを用いて、プレイヤキャラクタや敵キャラクタ等を含むオブジェクトが三次元空間に描画される。
このような三次元空間に描画されるゲームでは、建物、壁、地形等のオブジェクト（以下、単に「地形」という。）に、プレイヤキャラクタが隠されてしまうと、見づらくなることがある。
【０００３】
これについて、特許文献１には、地形のオブジェクト上に、単色の目印の画像を別途描画して、プレイヤキャラクタの位置をユーザに知らせる技術が記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２９０５５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術では、地形以外の敵キャラクタ等のオブジェクトの奧にプレイヤキャラクタ等が隠蔽された場合、この位置が分かるように描画することはできなかった。
【０００６】
本発明は、このような状況に鑑みてなされたものであって、上述の問題点を解消するゲームプログラムを提供することを課題とする。
【課題を解決するための手段】
【０００７】
本発明のゲームプログラムは、記憶部及び表示部を備えるゲーム装置により実行されるゲームプログラムであって、前記ゲーム装置を、描画バッファの座標値に対応して、描画されている複数のオブジェクトを識別するための識別値を含む識別バッファを作成する識別バッファ作成手段と、前記識別バッファ作成手段により作成された前記識別バッファの前記識別値に対応して、特定オブジェクトを再描画する再描画手段として機能させるゲームプログラムであることを特徴とする。
本発明のゲームプログラムは、前記ゲーム装置を、更に、三次元空間内の前記複数のオブジェクトを、仮想カメラからみたシーンに変換し、深度テストをしながら前記描画バッファへ描画するシーン描画手段として機能させ、前記再描画手段は、前記複数のオブジェクトに含まれる前記特定オブジェクトを再描画するか否かを、前記識別バッファ作成手段により作成された前記識別バッファの前記識別値に対応して判断し、再描画すると判断した場合は前記特定オブジェクトを、特定のブレンド率で前記描画バッファに描画し、再描画しないと判断した場合は描画しないことを特徴とする。
本発明のゲームプログラムは、前記再描画手段は、前記特定オブジェクトの輪郭付近では、前記ブレンド率を低くすることを特徴とする。
本発明のゲームプログラムは、前記再描画手段は、前記特定オブジェクトと他のオブジェクトとの距離が近い場合には、前記ブレンド率を高くすることを特徴とする。
本発明のゲームプログラムは、前記再描画手段は、前記ブレンド率を、前記描画バッファのピクセル深度、ピクセル法線、前記仮想カメラの方向、前記シーンの深度からなる群の一種又は任意の組み合わせから計算を行うことを特徴とする。
本発明のゲーム装置は、前記ゲームプログラムを記憶した記憶部と、前記ゲームプログラムを実行するコンピュータとを備えるゲーム装置であることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、描画バッファの座標値に対応してオブジェクトを識別するための識別値を含む識別バッファを作成し、識別バッファの識別値に対応して再描画することで、敵キャラクタ等のオブジェクト単位でプレイヤキャラクタ等の位置が分かるように描画することが可能なゲームプログラムを提供することができる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施の形態に係るゲームシステムのハードウェア構成を示すブロック図である。
【図２】図１に示すゲームシステムの機能的構成を示すブロック図である。
【図３】本発明の実施の形態に係る識別描画処理のフローチャートである。
【図４】図３に示す識別描画処理におけるシーン及び各バッファの概念図である。
【図５】図３に示す識別描画処理の画面例である。
【図６】図３に示す識別描画処理の画面例である。
【発明を実施するための形態】
【００１０】
［実施形態］
本発明の実施形態に係るゲーム装置１について説明する。
ゲーム装置１は、例えば、ＰＣ（Personal Computer）、ゲーム専用機、スマートフォン等である。ゲーム装置１は、アプリケーションソフトウェア（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｏｆｔｗａｒｅ、ネイティブ（Ｎａｔｉｖｅ）アプリ、以下、単に「アプリ」という。）をインストールし、実行することでユーザにゲームを実行（プレイ）させることが可能である。
【００１１】
本実施形態で説明されるゲームの概要について、簡単に説明する。本実施形態のゲームは、仮想カメラに対応して描画される仮想空間上でプレイされる、アクションゲームの要素を含んだロールプレイングゲームである。このゲームにおいては、ユーザの分身となるプレイヤキャラクタの外観等を特定範囲で設定し、更に、多数の装備品を装備させることで、個性的に表示させることが可能である。この上で、戦闘シーンにおいて、これらの装備品を装備したプレイヤキャラクタと、モンスター（敵キャラクタ）とが戦闘する。この敵キャラクタは、巨大であったり、複数であったり、個々の動きが速かったりすることがある。
【００１２】
＜ハードウェア構成について＞
本実施形態のゲームシステムのハードウェア構成について説明する。
【００１３】
・ゲーム装置１のハードウェア構成
ゲーム装置１には、制御部１０、記憶部１１、接続部１２、画像処理部１３、音声処理部１４、操作部１５、表示部１６、及び音声入出力部１７を含む。
記憶部１１、接続部１２、画像処理部１３、及び音声処理部１４は、専用のバス及びインターフェイス等を介して、制御部１０に接続される。
ゲーム装置１は、インストールされたゲームプログラム２００及びゲームデータ２１０（図２）に基づいてゲームを進行させる。
【００１４】
制御部１０は、ゲーム装置１の動作を制御する。
【００１５】
記憶部１１は、主にＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、及びＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）で構成される。
記憶部１１は、制御部１０用の記録媒体と、画像処理部１３用の記録媒体とを含んでいいてもよい。これらは、同一種類のＲＡＭがＵＭＡ（Ｕｎｉｆｏｒｍ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）でアクセスされても、画像処理部１３専用の広帯域のＲＡＭを含んで構成されてもよい。さらに、各記録媒体は、統一されたアドレス空間で、制御部１０及び画像処理部１３からアクセス可能であってもよい。
【００１６】
接続部１２は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネット等のネットワークＮに接続される。
【００１７】
画像処理部１３は、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）
制御部１０の指示に従って、仮想空間及び各オブジェクト等を含む二次元又は三次元のゲーム画像であるシーンを、例えば、フレーム単位で描画（レンダリング、レイトレース等）する。
画像処理部１３にて描画されたシーンは、表示部１６に表示される。
【００１８】
音声処理部１４は、制御部１０の指示に対応して、音声データを再生及び合成し、Ｄ／Ａ（Ｄｉｇｉｔａｌ  ｔｏ  Ａｎａｌｏｇ）変換してゲーム音声として出力する。ゲーム音声は、音声処理部１４に接続された音声入出力部１７のスピーカやイヤホン出力端子等から音声出力される。音声処理部１４は、音声入出力部１７のマイクロフォンから入力した音声信号をＡ／Ｄ（Ａｎａｌｏｇ  ｔｏ  Ｄｉｇｉｔａｌ）変換して、入力することも可能である。
【００１９】
操作部１５は、キーボード、マウス等のポンティングデバイス、専用又は汎用のゲーム用コントローラ、タッチパネル、加速度センサ等である。操作部１５は、操作入力に関するデータを送受信することが可能である。ユーザは、操作部１５により、ゲーム装置１への操作指示を行う。
【００２０】
表示部１６は、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）や有機ＥＬディスプレイ等のドットマトリクスティスプレイである。
【００２１】
音声入出力部１７は、スピーカ、イヤホン出力端子、マイクロフォン等である。
【００２２】
上述のゲーム装置１の各部は、本実施形態のゲームプログラム２００（図２）を実行するハードウェア資源となる。
【００２３】
・ゲーム装置１の制御の流れについて
次に、ゲーム装置１における、ゲーム実行時の制御の流れについて説明する。
【００２４】
まず、ゲーム装置１は、ユーザの操作に基づいて、ゲームアプリであるゲームプログラム２００を、光学記録媒体、フラッシュメモリ媒体、アプリがダウンロード可能なサーバー（図示せず）等からダウンロードし、インストールする。
【００２５】
その後、ゲーム装置１は、ゲームプログラム２００及びゲームデータ２１０に基づいて、ゲーム進行を行う。
ゲーム装置１は、操作部１５によりユーザの指示を取得してゲームを実行する。この際に、ゲーム装置１は、ゲーム進行に伴うゲーム演出として、ゲーム画像及びゲーム音声を、表示部１６及び音声入出力部１７等に出力する。
【００２６】
このようにして、ゲーム装置１は、ゲームを進行させる。
【００２７】
＜ゲームシステムＸの機能的構成について＞
次に、ゲームシステムＸを実現するゲーム装置１の制御部１０及び画像処理部１３の機能的構成、及びデータの詳細構成について説明する。
【００２８】
・ゲーム装置１の制御部１０の機能的構成
ゲーム装置１の制御部１０及び画像処理部１３は、記憶部１１に格納されたゲームプログラム２００を実行することにより、シーン描画手段１００、識別バッファ作成手段１０１、及び再描画手段１０２として機能する。
【００２９】
シーン描画手段１００は、オブジェクトデータ１１１を読み込み、三次元空間内の複数のオブジェクトを、仮想カメラからみたシーンに変換する。そして、シーン描画手段１００は、深度バッファ１１２を作成し、これを用いて深度テストをしながらオブジェクトのポリゴンをピクセル毎に描画バッファ１１３へ描画する。この描画は、通常のレンダリングでもレイトレーシングでもよく、各種プログラマブルシェーダーも適用可能である。
さらに、シーン描画手段１００は、操作部１５からユーザの指示を取得して、このユーザの指示によりゲームの他の処理も実行する。この際、シーン描画手段１００は、ゲームデータ２１０を基に、ゲームを進行させる。
【００３０】
識別バッファ作成手段１０１は、識別バッファ１１４を作成する。本実施形態では、識別バッファ作成手段１０１は、シーン描画手段１００による描画バッファ１１３の描画の際に、描画バッファ１１３のピクセル毎に、どのオブジェクトが描画されているかを判断する。そして、識別バッファ作成手段１０１は、判断したオブジェクトのＩＤ（Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ、識別値）を、当該ピクセル単位で識別バッファ１１４に設定する。
【００３１】
再描画手段１０２は、識別バッファ１１４の識別値に対応して、特定オブジェクトを再描画する。本実施形態では、特定オブジェクトとしては、オブジェクトデータ１１１に含まれるプレイヤキャラクタのオブジェクトを用いる例について説明する。具体的には、再描画手段１０２は、特定オブジェクトの各ピクセルについて識別バッファ１１４の識別値を参照し、再描画するか否かを判断する。再描画手段１０２は、特定オブジェクトの各ピクセルについて再描画すると判断した場合は、特定のブレンド率で描画バッファ１１３に描画し、再描画しないと判断した場合は描画しないで破棄する。
この特定のブレンド率として、再描画手段１０２は、特定オブジェクトの輪郭付近では、ブレンド率を低くすることが可能である。さらに、再描画手段１０２は、特定オブジェクトと他のオブジェクトとの距離が近い場合には、ブレンド率を高くすることも可能である。より具体的には、再描画手段１０２は、ブレンド率を、描画バッファ１１３のピクセル深度、ピクセル法線、仮想カメラの方向、シーンの深度からなる群の一種又は任意の組み合わせから計算を行うことも可能である。
【００３２】
・ゲーム装置１の記憶部１１に格納されたデータの説明
ゲーム装置１は、記憶部１１に、オブジェクトデータ１１１、深度バッファ１１２、描画バッファ１１３、識別バッファ１１４、ゲームプログラム２００、及びゲームデータ２１０を格納する。
【００３３】
オブジェクトデータ１１１は、複数のオブジェクトのデータである。この複数のオブジェクトは、プレイヤキャラクタ、敵キャラクタ、地形、背景等のシーンを構成するオブジェクト（以下、「シーンオブジェクト」と呼ぶ。）を含む。オブジェクトデータ１１１は、例えば、オブジェクト毎に三次元の仮想空間上の多角形（ポリゴン、メッシュ）の種類及び座標、変形用のボーン（ｂｏｎｅ）、テクスチャの画像データ、素材やライティングの設定、その他の描画に必要な情報を含んでいる。加えて、オブジェクトデータ１１１は、物理エンジン用やエフェクト用のデータ、その他のモデリングデータ等も含んでいる。さらに、各オブジェクトデータ１１１は、シーンオブジェクト毎の識別値に対応する値が設定されている。
【００３４】
深度バッファ１１２は、描画バッファ１１３の各ピクセルにおける深度を示すバッファである。深度バッファ１１２は、例えば、仮想カメラから見た各ポリゴンについて、手前側から奥側への距離（Ｚ値、奥行き）を示す深度値を含むＺバッファ又はデプス（ｄｅｐｔｈ）バッファ形式のバッファを用いてもよい。この深度値のビット数は、例えば、各ピクセルについて、整数値で１６〜３２ビット、１６〜３２ビット浮動小数点等の値を設定可能である。
【００３５】
描画バッファ１１３は、表示部１６に表示されるゲーム画像に対応した画像データのバッファ（カラーバッファ）等である。描画バッファ１１３は、例えば、表示部１６の性能や設定された画質に対応した解像度や色深度に設定される。加えて、描画バッファ１１３は、複数回描画されたり、高解像度で描画されたりしてから、アンチエイリアス処理等が行われてもよい。加えて、描画バッファ１１３は、表示部１６が複数の視差に対応した立体視描画が可能である場合、これらの視差の数に対応して、設定することも可能である。または、描画バッファ１１３は、中間的な状態の画像データのバッファであってもよい。この中間的な状態としては、例えば、各種ステータス値やメニュー等が記載されていない、シーンのみの描画された状態であってもよい。
【００３６】
識別バッファ１１４は、描画バッファ１１３の各ピクセルの座標値に対応して、描画されているオブジェクトを識別するための識別値を含むバッファである。この識別値は、オブジェクトを識別（区別）することを可能とする値である。具体的には、識別値は、例えば、シーンオブジェクトの番号を示す値として構成されてもよい。この際、識別値として、必ずしも一つのオブジェクトについて一つの番号を割り振るのではなく、特定のモンスター等の種別、グループ等を示す値を用いることも可能である。すなわち、識別値は、オブジェクト毎にユニークに設定されていても、種別やグループ単位で識別可能な範囲にまとめられてもよい。識別値は、例えば、識別バッファ１１４のビット数と対応して、４〜３２ビット等の単位で設定されてもよい。
【００３７】
ゲームプログラム２００は、ゲーム装置１を上述の機能的手段として動作させ、本実施形態のゲームを実現するためのゲームのアプリケーションソフトウェア及びミドルウェア等を含むプログラムである。ゲームプログラム２００は、ゲーム自体を進行させるプログラムに加え、主に画像処理部１３でシーンの描画における画像処理、陰影処理（シェーディング）を行うためのプログラマブルシェーダーのプログラムも含んでいる。このプログラマブルシェーダーは、例えば、頂点シェーダー、ピクセルシェーダー、及びレイトレーシング用のシェーダー等を含んでいる。
【００３８】
ゲームデータ２１０は、ゲームのプレイ上に必要なデータである。このゲームデータ２１０は、ゲーム進行状況に関するデータを含む。ゲームデータ２１０により、ゲームプログラム２００に含まれる各種データが選択されて、ユーザのアカウント情報に対応したゲームのプレイが実現可能となる。これに加え、ゲームデータ２１０は、アカウント毎のアカウント設定を含んでいてもよい。アカウント設定は、ユーザのアカウント毎のアカウントのゲーム進行状況に関する情報を含む。
【００３９】
本実施形態においては、ゲームデータ２１０は、再描画設定２１１を含む。
再描画設定２１１は、プレイヤキャラクタ等、隠れた場合に識別可能なように再描画する特定オブジェクトの識別値を含む。さらに、再描画設定２１１は、この特定オブジェクトを再描画する際に隠蔽が判断される他のオブジェクトの識別値である再描画用識別値を含む。すなわち、再描画用識別値は、隠蔽された際に特定オブジェクトを再描画するかどうかの判断に用いられる他のオブジェクトの識別値である。
【００４０】
加えて、ゲームデータ２１０は、例えば、各オブジェクトに対応する識別値、経験値、名称、攻撃や防御のパラメータ、ドロップアイテム、その他のゲームの進行に必要な値等も含んでいる。さらに、ゲームデータ２１０は、例えば、サムネイル等の画像データ、メニューやホーム画面のデータ、文字データ、音声データ等、ゲームをプレイするために必要な各種データを含んでいる。
【００４１】
ゲーム装置１の制御部１０及び画像処理部１３は、記憶部１１に格納されたゲームプログラム２００を実行することにより、シーン描画手段１００、識別バッファ作成手段１０１、及び再描画手段１０２として機能する。
【００４２】
これら以外にも、記憶部１１には、例えば、他のゲーム装置１に送信するアカウント情報、フレンドに関する情報、及び他ゲーム装置１から受信した他のアカウント情報等が含まれていてもよい。
【００４３】
＜識別描画処理について＞
次に、図３〜図６により、本実施形態のゲーム装置１の制御部１０及び画像処理部１３により実行される識別描画処理について説明する。
本実施形態の識別描画処理では、ゲームデータ２１０の再描画設定２１１に、特定オブジェクトとしてプレイヤキャラクタのオブジェクトが設定され、他のオブジェクトとして巨大なモンスター等の敵キャラクタが設定された例について説明する。この上で、シーンの描画が行われた際に、識別バッファ１１４も作成される。この際、プレイヤキャラクタのオブジェクトが、設定された敵キャラクタ等のオブジェクトに隠蔽されているか判断し、隠蔽されていた場合には、再描画して、ユーザに位置を知らせる。つまり、プレイヤキャラクタが敵キャラクタに隠蔽された場合には、特定のブレンド率で描画される。
【００４４】
本実施形態の識別描画処理では、ゲーム装置１の制御部１０及び画像処理部１３が、ＲＯＭやＨＤＤに格納されたゲームプログラム２００をＲＡＭに展開し、ハードウェア資源を用いて実行する。
以下で、図３のフローチャートを参照して、ゲーム装置１による識別描画処理の詳細を、ステップ毎に説明する。
【００４５】
（ステップＳ１００）
まず、ゲーム装置１のシーン描画手段１００が、シーン描画処理を行う。
シーン描画手段１００は、ゲームの進行に従い、三次元空間内の複数のオブジェクトを、仮想カメラからみたシーンに変換し、深度テストをしながら描画バッファ１１３へ描画する、いわゆるレンダリングパイプラインを実行する。
この際、シーン描画手段１００は、全てのシーンオブジェクトについて深度テストを行って描画する。
【００４６】
図４により具体例について説明する。
図４（ａ）は、本実施形態のシーンＳを示す概念図である。このシーンＳでは、シーンオブジェクトとして、敵キャラクタのオブジェクトＭ、プレイヤキャラクタであり特定オブジェクトでもあるオブジェクトＰ、地形のオブジェクトであるオブジェクトＧが、仮想カメラＣの向きで描画される。
【００４７】
具体的には、例えば、シーン描画手段１００は、オブジェクトデータ１１１からシーンオブジェクトのデータを読み込む。そして、シーン描画手段１００は、例えば、ユーザに設定された仮想カメラの位置で、オブジェクトの各ポリゴンについて頂点シェーダーの適用、ボーンによる変形、回転、物理エンジンの適用、アフィン変換等を行って描画するポリゴンの座標を算出する。そして、各ポリゴンの各ピクセルを描画する際に、深度バッファ１１２作成に対して深度テストを行う。この深度テストは、ピクセル毎に、深度バッファ１１２上の深度値を参照し、この深度値より手前（一番手前）であるか否かを判断する処理である。シーン描画手段１００は、一番手前であった場合にのみ、ピクセルシェーダーを適用し、このピクセルを描画バッファ１１３に書き込む。この際、シーン描画手段１００は、新たな深度を深度バッファ１１２へ書き込む。なお、シーン描画手段１００は、この描画の際、レイトレーシングを行うことも可能である。
【００４８】
図４（ｂ）の例では、描画されたシーンオブジェクトについて、手前側の深度が小さい値になるよう深度バッファ１１２が描画される。この深度バッファ１１２は、描画バッファ１１３の座標に対応する深度バッファ１１２の一部を示している。この例の状態では、描画バッファ１１３−１において、例えば、敵キャラクタの奧にいるプレイヤキャラクタが、当該敵キャラクタに一部、隠れて描画される。すなわち、プレイヤキャラクタのオブジェクトについても、手前にオブジェクトがなく、隠れていない箇所のピクセルについては描画される。
【００４９】
（ステップＳ１０１）
次に、識別バッファ作成手段１０１が、識別バッファ作成処理を行う。
識別バッファ作成手段１０１は、描画バッファ１１３の座標値に対応して、シーンオブジェクトを識別する識別値を設定した識別バッファ１１４を作成する。すなわち、識別バッファ作成手段１０１は、描画バッファ１１３の各ピクセルについて、どのオブジェクトの種類やグループ等が描画されているかを識別可能な識別値を、識別バッファ１１４に書き込む。つまり、識別値は、描画バッファ１１３の各ピクセルに描画された一番手前のオブジェクトに対応する値となる。このため、識別バッファ作成手段１０１は、深度テストの進行に連動して、識別バッファ１１４を更新することが可能である。
【００５０】
図４（ｂ）の例では、識別バッファ作成手段１０１は、プレイヤキャラクタ、敵キャラクタ、地形等のオブジェクトである、それぞれ「Ｐ」「Ｍ」「Ｇ」等に対応した識別値を識別バッファ１１４に書き込む。
【００５１】
（ステップＳ１０２）
次に、再描画手段１０２は、特定オブジェクトの各ピクセルについて、再描画するか否かを判断する。
本実施形態の例では、再描画手段１０２は、再描画設定２１１の特定オブジェクト識別値に設定されたプレイヤキャラクタのオブジェクトを、上述のシーン描画処理と同様に、アフィン変換等し、各ポリゴンをピクセル単位で描画バッファ１１３上の座標に変換する。再描画手段１０２は、これらの各ピクセルについて、当該座標に対応する識別バッファ１１４の識別値を参照する。そして、再描画手段１０２は、この参照した識別値が、再描画設定２１１の再描画用識別値に設定された他のオブジェクトの識別値であるかどうか判断する。すなわち、再描画手段１０２は、プレイヤキャラクタと敵キャラクタとの重なり判断等を行う。
【００５２】
再描画手段１０２は、参照した識別値が、他のオブジェクトの識別値であった場合、Ｙｅｓと判断する。すなわち、再描画手段１０２は、例えば、プレイヤキャラクタの手前に敵キャラクタ等が描画されているピクセル（以下、「重なるピクセル」という。）であった場合、Ｙｅｓと判断する。
再描画手段１０２は、それ以外の、参照した識別値が、再描画用識別値に設定された他のオブジェクトの識別値に含まれない場合、Ｎｏと判断する。すなわち、再描画手段１０２は、プレイヤキャラクタ自体が描画されていたり、地形や敵キャラクタ以外のオブジェクト等が描画されていたりするピクセル（以下、「重ならないピクセル」という。）であった場合、Ｎｏと判断する。
【００５３】
Ｙｅｓの場合、再描画手段１０２は、処理をステップＳ１０３に進める。
Ｎｏの場合、再描画手段１０２は、処理をステップＳ１０５に進める。この場合、再描画手段１０２は、重ならないピクセルには、特定オブジェクトの再描画をしない。すなわち、再描画手段１０２は、例えば、地形等のオブジェクト、既に描画されたプレイヤキャラクタの箇所のピクセル等については、再描画を行わない。このため、描画バッファ１１３は、シーン描画時の状態で保たれる。
【００５４】
（ステップＳ１０３）
再描画する場合、再描画手段１０２が、ブレンド率算出処理を行う。
再描画手段１０２は、上述の重なるピクセルについて、描画バッファ１１３に再描画する際の特定のブレンド率を算出する。
再描画手段１０２は、例えば、特定オブジェクトの輪郭等のエッジ付近で低くなるように、ブレンド率を算出してもよい。
加えて、再描画手段１０２は、特定オブジェクトと、他のオブジェクトとの距離が近い場合には低くなるように、ブレンド率を算出してもよい。すなわち、例えば、プレイヤキャラクタと敵キャラクタとの距離が近い場合も、ブレンド率を低くすることが可能である。
【００５５】
さらに、再描画手段１０２は、ブレンド率を、ピクセル深度、ピクセル法線、仮想カメラの方向、シーンの深度等に対応して算出してもよい。
より具体的には、再描画手段１０２は、例えば、ピクセルの深度が大きい場合、ブレンド率を高めにすることで、特定オブジェクトを濃く描画する。これにより、プレイヤキャラクタ等を識別しやすくすることができる。
再描画手段１０２は、例えば、ピクセル法線が大きい、すなわち、重なるピクセルの座標における他オブジェクトのポリゴンの向きが、仮想カメラの向きに対して水平に近い場合、ブレンド率を高めにする。これにより、プレイヤキャラクタの装備や輪郭等を際立たせることが可能となる。
再描画手段１０２は、例えば、仮想カメラの方向が特定オブジェクトの正面から離れている場合に、ブレンド率を高めにする。これにより、特定オブジェクトの凹凸を識別しやすくすることも可能となる。
再描画手段１０２は、例えば、シーンの深度が奥側の場合、ブレンド率を高めにすることで、より特定オブジェクトを識別しやすくすることも可能である。
【００５６】
（ステップＳ１０４）
次に、再描画手段１０２は、再描画処理を行う。
本実施形態において、再描画手段１０２は、再度、特定オブジェクトを、深度テストなしで、算出されたブレンド率で描画バッファ１１３へブレンド描画する。
本実施形態においては、再描画手段１０２は、例えば、プレイヤキャラクタのオブジェクトの重なるピクセルのそれぞれについて、シーン描画時に使用されるテクスチャの色とは異なる単色等でブレンド描画してもよい。
【００５７】
図４（ｂ）の描画バッファ１１３−２は、特定オブジェクトがこのように再描画された状態を示す。このように、プレイヤキャラクタのオブジェクトＰが、敵キャラクタのオブジェクトＭに隠蔽されている箇所のみ、再描画がされ、識別しやすくなる。
【００５８】
（ステップＳ１０５）
次に、再描画手段１０２が、特定オブジェクトの描画が終了したか否かを判断する。
再描画手段１０２は、特定オブジェクトの全てのピクセルについての上述の処理を終了した場合に、Ｙｅｓと判断する。再描画手段１０２は、それ以外の場合には、Ｎｏと判断する。
Ｙｅｓの場合、再描画手段１０２は、識別描画処理を終了する。
Ｎｏの場合、再描画手段１０２は、処理をステップＳ１０２に戻して、特定オブジェクトの再描画の判断を続ける。
【００５９】
図５（ａ）（ｂ）に、ゲーム画面として実際に描画された状態の画面例５００、５０１をそれぞれ示す。画面例５００では、オブジェクトＭにオブジェクトＰが完全に隠蔽されている状態である。画面例５０１は、一部のみ隠蔽されている状態である。
このように、プレイヤキャラクタのような特定オブジェクトが、巨大なモンスター等の敵キャラクタに隠蔽されて見えなくなっている場合でも、ユーザが容易に識別可能となるよう表示することができる。
【００６０】
図６の画面例５０２は、敵キャラクタに近接しているプレイヤキャラクタであるオブジェクトＰの身体の左腕等の一部が手前で、脚部等が敵キャラクタのオブジェクトＭにより隠蔽されている状態の拡大図を示す。このように、隠蔽された箇所が、単なるシルエット（影）表示ではなく、濃淡のついた状態で再描画される。このため、プレイヤキャラクタが奥側にあることを、ユーザが識別しやすくなる。
【００６１】
その後、シーン描画手段１００は、取得したゲームデータ２１０に基づいて、描画バッファ１１３に、プレイヤキャラクタのステータス値やメニュー等を描画して、ゲーム進行を行う。
以上により、本発明の実施の形態に係る識別描画処理を終了する。
【００６２】
［発明の効果］
以上のように構成することで、以下のような効果を得ることができる。
近年、仮想カメラを用いた三次元空間で、巨大なモンスター等をハンティングするようなアクションゲームが存在する。このように、仮想カメラを用いた方式では、周囲の敵キャラクタ等のオブジェクトの位置関係を把握しやすくなり、ゲーム性を高めることができる。
このようなゲームでは、通常、地形によりプレイヤキャラクタが隠蔽されないよう、プレイヤが仮想カメラを自ら操作してプレイヤキャラクタのオブジェクトの見える位置を操作する。しかしながら、モンスター等の敵キャラクタは激しく動くため、プレイヤキャラクタが敵キャラクタの奥に隠蔽されると、操作しづらいという問題があった。
【００６３】
しかしながら、特許文献１の技術では、深度バッファ１１２を参照して隠蔽されているかどうかを判断するため、地形や敵キャラクタの区別なく単色のシルエット画像を表示することしかできなかった。このため、動きの激しいアクションゲームに適用しようとしても、地形、敵キャラクタ、背景オブジェクト、プレイヤキャラクタ等の位置関係が、かえって分かりにくくなっていた。
よって、敵キャラクタ等のオブジェクト単位でプレイヤキャラクタ等の位置が分かるように描画し、ユーザに知らせるような技術が求められていた。
【００６４】
これに対して、本実施形態のゲームプログラム２００は、記憶部１１及び表示部１６を備えるゲーム装置１により実行されるゲームプログラムであって、ゲーム装置１を、描画バッファ１１３の座標値に対応して、描画されている複数のオブジェクトを識別するための識別値を含む識別バッファ１１４を作成する識別バッファ作成手段１０１と、識別バッファ作成手段１０１により作成された識別バッファ１１４の識別値に対応して、特定オブジェクトを再描画する再描画手段１０２として機能させることを特徴とする。
【００６５】
このように構成することで、敵キャラクタ等のオブジェクト単位でプレイヤキャラクタ等の位置が分かるように描画することができる。すなわち、プレイヤキャラクタ等の特定オブジェクトが敵キャラクタ等の他のオブジェクトの奥にいる時に、この敵キャラクタ等のオブジェクトの識別値を指定して、特定オブジェクトを再描画させることができる。
これにより、プレイヤキャラクタが巨大なモンスター等と戦う際に、このモンスターの奧にいる場合はプレイヤキャラクタを識別可能にブレンドして再描画するものの、他の地形や背景オブジェクトの奧にいる場合には再描画しないといった処理が可能となる。結果として、ゲームの操作性やゲーム性等を高めることができる。
【００６６】
本実施形態のゲームプログラム２００は、ゲーム装置１を、更に、三次元空間内の複数のオブジェクトを、仮想カメラからみたシーンに変換し、深度テストをしながら描画バッファ１１３へ描画するシーン描画手段１００として機能させ、再描画手段１０２は、複数のオブジェクトに含まれる特定オブジェクトを再描画するか否かを、識別バッファ作成手段１０１により作成された識別バッファ１１４の識別値に対応して判断し、再描画すると判断した場合は特定オブジェクトを特定のブレンド率で描画バッファ１１３に描画し、再描画しないと判断した場合は描画しないことを特徴とする。
このように構成することで、三次元空間に描画されるゲームのシーンにて、オブジェクト単位で、特定オブジェクトであるプレイヤキャラクタ等の位置をユーザに知らせるか否か変更することが可能となる。つまり、三次元空間のアクションゲーム等で、地形、敵キャラクタ、背景オブジェクト、プレイヤキャラクタ等の手前と奥の位置関係が分かりやすくなり、激しいアクションゲーム等においても、ユーザを混乱させにくくすることができる。
【００６７】
従来、特許文献１のように単色のシルエットやエッジのみ描画すると、特に、アクションゲームのように敵キャラクタとプレイヤキャラクタの位置関係が動的に変化しやすいゲームでは、立体的な位置関係が非常に分かりにくくなっていた。
本実施形態のゲームプログラム２００は、再描画手段１０２は、特定オブジェクトの輪郭付近では、ブレンド率を低くすることを特徴とする。
このように構成し、特定オブジェクトの輪郭で薄く、内部で濃く描画されることで、特定オブジェクトが奥側に隠蔽されている状態であることが感覚的に分かりやすくなる。よって、プレイヤキャラクタの立体的な位置関係を分かりやすくすることができる。
【００６８】
本実施形態のゲームプログラム２００は、再描画手段１０２は、特定オブジェクトと他のオブジェクトとの距離が近い場合には、ブレンド率を高くすることを特徴とする。
このように構成することで、特定オブジェクトと他のオブジェクトとの位置関係が分かりやすくなる。すなわち、例えば、ユーザに、プレイヤキャラクタが、どの程度、敵キャラクタの近くにいるのかを推測する手がかりを与えることができる。これにより、プレイヤキャラクタ及び敵キャラクタの三次元空間での位置関係を分かりやすく提示することができ、ユーザによるアクションの選択をしやすくさせて操作性を高めることができる。
【００６９】
従来、特許文献１のように単色のシルエットやエッジのみ描画したり、単純にブレント描画したりすると、プレイヤキャラクタの装備品やその動作状態等がよく分からなくなり、特にアクションゲームでは操作性が低下していた。
本実施形態のゲームプログラム２００は、再描画手段１０２は、ブレンド率を、描画バッファ１１３のピクセル深度、ピクセル法線、仮想カメラの方向、シーンの深度からなる群の一種又は任意の組み合わせから計算を行うことを特徴とする。
このように構成することで、プレイヤキャラクタの装備品やその動作状態が再描画でブレンド表示されるため、ユーザに分かりやすく提示することができる。これにより、操作性を高めることができる。
【００７０】
本実施形態のゲーム装置１は、上述のゲームプログラム２００を記憶した記憶部１１と、ゲームプログラム２００を実行するコンピュータである制御部１０並びに画像処理部１３とを備えることを特徴とする。
このように構成することで、本実施形態のゲームプログラム２００を適用可能となる。
【００７１】
［他の実施形態］
図２〜図６において説明した制御手段及び処理手順は一例であり、本発明の実施形態はこれらには限られない。処理手順等は、本発明の要旨を変更しない範囲で適宜設計変更が可能である。
【００７２】
上述の実施形態では、特定オブジェクトとしてプレイヤキャラクタのオブジェクトを、その他のオブジェクトとして敵キャラクタのオブジェクトを設定する例について説明した。
しかしながら、特定オブジェクトとして、コンパニオン（仲間）のキャラクタ、プレイヤキャラクタの武器、射出した魔法や矢等のエフェクト、目標を示す標識等のオブジェクトを設定することも可能である。または、他のユーザと協力又は対戦を行うオンラインゲームである場合は、特定オブジェクトは、他のユーザが操作するキャラクタであってもよい。
加えて、全ての敵キャラクタを、再描画を判断する際の、その他のオブジェクトとして設定するのではなく、例えば、ボス敵等の特定の敵キャラクタのみを、その他のオブジェクトとして設定してもよい。さらに、その他のオブジェクトとして、背景のオブジェクト等を設定することも可能である。これらについて、複数の種類のオブジェクトを、それぞれ、特定オブジェクトやその他のオブジェクトとして設定することも可能である。
このように構成することで、ゲームで使用される様々なオブジェクトについて、必要に応じて、ユーザに識別させやすく、見やすく表示することが可能となる。
【００７３】
上述の実施の形態では、再描画の際に、特定オブジェクトの輪郭付近では、ブレンド率を低くするように記載した。
しかしながら、輪郭付近では、ブレンド率を高くすることも可能である。
このように構成することで、輪郭を際立たせ、特定オブジェクトを分かりやすく表示することも可能となる。
【００７４】
上述の実施の形態では、特定オブジェクトを単色で再描画する例について記載した。
しかしながら、特定オブジェクトを実際のテクスチャの色を色変換や明度変換等して再描画するように構成することも可能である。
さらに、再描画の際にも、単にブレンド描画するのではなく、白抜きや反転等の各種画像処理を行って描画するように構成してもよい。
このように構成することで、ゲームのシーンの色調や明度等に対応して、特定オブジェクトの適切な再描画が可能となる。
【００７５】
上述の実施の形態では、深度バッファ１１２を用いた深度テストを行う例について記載した。
しかしながら、深度バッファ１１２を用いずに、ポリゴン単位で深度テストを行うＺソートのような深度テストを行うような構成についても適用可能である。さらに、レイトレーシングを行う場合でも、最前（手前）でレイが交差したポリゴン、ＮＵＲＢＳ、メタボール等の属するオブジェクトを設定した識別バッファ１１４を作成し、上述のように描画バッファ１１３に再描画するように構成してもよい。
このように構成することで、様々な構成に対応可能となる。
【００７６】
上述の実施の形態では、識別バッファ１１４を描画バッファ１１３のピクセルに一対一で対応した解像度の二次元のバッファとして作成するように記載した。
しかしながら、識別バッファ１１４は、描画バッファ１１３と同じ解像度のバッファでなくてもよい。たとえば、識別バッファ１１４の解像度は、描画バッファ１１３の解像度よりも低く設定し、数〜数十ピクセル単位で識別値を格納するようにしてもよい。
または、例えば、描画バッファ１１３に特定オブジェクトが描画される座標に対応した矩形領域のみを識別バッファ１１４として設定してもよい。上述のレイトレーシングを行う場合でも、このように構成することも可能である。さらに、識別バッファ１１４は、変更箇所の差分を格納するようなデータ構造であったり、ツリー構造であったり、コリジョンを検出するバッファを基に作成されたりしてもよい。
このように構成することで、識別バッファ１１４に必要な記憶部１１の記憶容量を削減することができる。また、様々な構成に適用可能となる。
【００７７】
上述の実施の形態では、三次元空間の描画について、再描画を行う例について記載した。
しかしながら、描画の優先順位が設定されているスプライト等の二次元でのオブジェクトの描画においても、上述の構成で再描画することが可能である。
このように構成すると、複数のスプライト同士が重なるような環境であっても、特定オブジェクトをユーザに見やすく提示することが可能になる。
【００７８】
上述の実施形態では、三次元のアクションゲームの要素のあるロールプレイングゲームを例にして記載されているが、本発明の実施形態はこれに限られない。例えば、格闘アクションゲーム、シューティングゲーム、シミュレーションゲーム、ボードゲーム、及びパズルゲーム等、様々な種類のゲームに適用することができる。
【００７９】
・ハードウェア構成のバリエーション
なお、制御部１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置）、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｐｒｏｃｅｓｓｏｒ、特定用途向けプロセッサー）等を含む情報処理部を含んでいてもよい。
【００８０】
記憶部１１は、一時的でない記録媒体であり、主記憶部１１のＲＡＭとしては、ＤＲＡＭやＳＲＡＭ等を用いてもよい。ＲＯＭは、補助記憶部１１として、ＥＥＰＲＯＭ、フラッシュメモリ、３Ｄ  Ｘポイント等の各種不揮発性で書き換え可能な半導体メモリを用いてもよい。加えて、補助記憶部１１として、ＲＡＭやＨＤＤの代わりに、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）やｅＭＭＣ（ｅｍｂｅｄｄｅｄ  Ｍｕｌｔｉ  Ｍｅｄｉａ  Ｃａｒｄ）を用いることも可能である。
【００８１】
接続部１２は、ＬＡＮ、無線ＬＡＮ、ＷＡＮ、携帯電話網等のネットワークＮに接続するためのＬＡＮボードや無線送受信機等を含むネットワーク接続部１２である。
【００８２】
画像処理部１３は、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）等の情報処理部を含んでいてもよい。
【００８３】
操作部１５は、無線又は有線で接続されてもよい。この無線又は有線の接続は、ＵＳＢ、Ｂｌｕｅｔｏｏｔｈ（登録商標）等であってもよい。
【００８４】
なお、ゲーム装置１において、制御部１０及び画像処理部１３は、ＧＰＵ内蔵ＣＰＵ等やチップ・オン・モジュールパッケージのように、一体的に形成されていてもよい。
また、制御部１０及び画像処理部１３は、ＲＡＭやＲＯＭやフラッシュメモリ等を内蔵していてもよい。
【００８５】
・システム構成のバリエーション
ゲーム装置１の制御部１０及び画像処理部１３の動作は、上述の実施形態に記載された例に限られない。
上述の実施形態のゲーム装置１は単体で動作するように記載したものの、ゲーム装置１と他のゲーム装置とサーバー等とを備えたゲームシステムとして構成することも可能である。この場合、上述の識別描画処理を含む画像処理をサーバー上で行って、ゲーム装置１へストリーミング配信するような構成も可能である。
【００８６】
上述の実施形態では、本実施形態のゲームプログラム２００がネイティブアプリである例について記載されたものの、ウェブアプリとして構成されていてもよい。すなわち、ゲームプログラム２００は、ウェブブラウザー等で実行可能なアプリであってもよい。この場合は、記憶部１１に格納されるゲームプログラム２００及びゲームデータ２１０は、毎回、ＲＡＭ等に一時的に格納されてもよい。
【００８７】
上述の実施形態には、ゲーム装置１としてＰＣ等を用いた例が記載されているが、本発明の実施形態はこれには限られない。たとえば、ゲームセンター等に提供されるアーケードゲーム筐体を用いて本発明を実現することもできる。
【００８８】
これらの他の実施形態を採用した場合においても、本発明の作用効果は発揮される。また、本実施形態と他の実施形態、及び他の実施形態同士を適宜組み合わせることも可能である。
【００８９】
また、上記実施の形態の構成及び動作は例であって、本発明の趣旨を逸脱しない範囲で適宜変更して実行することができることは言うまでもない。
【符号の説明】
【００９０】
１  ゲーム装置
１０  制御部
１１  記憶部
１２  接続部
１３  画像処理部
１４  音声処理部
１５  操作部
１６  表示部
１７  音声入出力部
１００  シーン描画手段
１０１  識別バッファ作成手段
１０２  再描画手段
１１１  オブジェクトデータ
１１２  深度バッファ
１１３、１１３−１、１１３−２  描画バッファ
１１４  識別バッファ
２００  ゲームプログラム
２１０  ゲームデータ
２１１  再描画設定
５００、５０１、５０２  画面例
Ｃ  仮想カメラ
Ｇ、Ｐ、Ｍ  オブジェクト
Ｎ  ネットワーク
Ｓ  シーン
【図１】
2020189064.tif 000003
【図２】
2020189064.tif 000004
【図３】
2020189064.tif 000005
【図４】
2020189064.tif 000006
【図５】
2020189064.tif 000007
【図６】
2020189064.tif 000008