(57)【特許請求の範囲】
【請求項１】
仮想空間平面上に配置したオブジェクトを表示制御するゲーム・プログラムであって、
ユーザ入力によって仮想空間内を移動可能な仮想カメラからの視界領域を決定する視界領域決定部と、
前記視界領域と関連付けて定められる透過処理領域内に配置され、ユーザ作用が可能に設定されたオブジェクトの内の少なくとも１つを透過処理対象オブジェクトとして決定するオブジェクト決定部と、
前記決定された透過処理対象オブジェクトに対し、前記仮想カメラとの配置関係で決定される透過率に応じて透過処理を実施すると共に、前記ユーザ作用を不可能に設定するオブジェクト制御部と、
表示部に出力するために、前記透過処理対象オブジェクトの透過画像を用いて前記視界領域に基づくゲーム画像を生成する画像生成部と
としてコンピュータを機能させ、
前記透過処理領域が、前記視界領域内において、前記オブジェクトについて関連付けられるブラインド領域に基づいて決定され、
１のオブジェクトに関連付けられた前記ブラインド領域内に、他のオブジェクトの少なくとも一部が存在する場合に、前記１のオブジェクトが、前記透過処理対象オブジェクトとして前記透過処理が実施されると共に前記ユーザ作用が不可能に設定されることを特徴とする、ゲーム・プログラム。
【請求項２】
前記透過処理領域が、前記視界領域内において前記仮想カメラから所定の距離を有する直線境界または曲線境界に基づいて決定される、請求項１記載のゲーム・プログラム。
【請求項３】
請求項１または２記載のゲーム・プログラムであって、
前記透過率が、前記仮想カメラと前記透過処理対象オブジェクトとの距離、または前記仮想カメラと前記透過処理対象オブジェクトが整列された列との距離に基づいて動的に決定される、ゲーム・プログラム。
【請求項４】
前記透過処理対象オブジェクトが、前記オブジェクトのそれぞれに予め設定された透過処理対象フラグに基づいて決定される、請求項１から３のいずれか一項記載のゲーム・プログラム。
【請求項５】
前記ユーザ作用が、タッチ・ディスプレイを通じた、ユーザによる前記オブジェクトへのタッチによる選択を含む、請求項１から４のいずれか一項記載のゲーム・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間平面上に配置した各種オブジェクトに対してユーザ作用を容易にするために、視覚上の処理に基づくオブジェクトの表示制御を行うゲーム・プログラムに関するものである。
【背景技術】
【０００２】
従来のゲーム・プログラムでは、ゲームの進行上、３次元の仮想空間平面上に複数のオブジェクトを配置し、仮想カメラから映した視界画像を生成して画面に出力するものがある。一例として、図１では、ユーザ操作により、何の建造物も無い土地（平面）にオブジェクトを配置して街づくりを行うようなゲーム・プログラムの従来技術の画面例である。このようなゲームでは、ユーザは、自身の好みに応じて道路や建造物等のオブジェクトを平面上の所与の土地に配置することができる。
【０００３】
更にユーザは、仮想空間平面上に配置したオブジェクトの選択を通じて、移動や変更等を含む所定のユーザ作用を行うことが可能である。ここで当該ユーザ作用について、スマートフォンやタブレット端末といったタッチ・ディスプレイを採用した端末を用いるゲームの場合を考慮する。上記のようなゲームでは、タッチ・ディスプレイに表示されるゲーム画像に対し、オブジェクト画像が配置された位置に対応するタッチ・ディスプレイ上の一領域をユーザがタッチすることにより、ユーザによるオブジェクト選択を可能にして、インタラクティブにゲームを進行させるのが一般的である。例えば、ユーザは、タッチ・ディスプレイにおいて、図１のように表示される特定のオブジェクト（例えば、建物オブジェクトａ）が表示された部分上をタッチすることにより、当該オブジェクトを選択できる。
【０００４】
しかしながら、オブジェクトの後ろに隣接配置された別のオブジェクト（例えば、建物オブジェクトａに隣接する建物オブジェクトｂ）を選択したい場合、ユーザは、前方に隣接するオブジェクト（建物オブジェクトａ）が表示された部分を避けるようにして、タッチ・ディスプレイをタッチしなければならない。前後の建物オブジェクトの重複領域においては、前方の建物オブジェクトが表示されることになるために、後方の建物オブジェクトは隠れ、視界上出現することはないからである。場合によっては、後方の建物オブジェクトが前方の建物オブジェクトに完全に隠れてしまい、タッチ・ディスプレイのタッチによる選択が不可能となることもあり得る。
【０００５】
図１の画面例では、３次元仮想空間の比較的高い位置に配置された仮想カメラから撮影した視界領域を表示するのに対して、図２の画面例では、仮想カメラの位置を比較的低い位置に下げ、地面に近い高さから撮影した視界領域を表示する。例えば、ユーザ指示により仮想カメラの位置を連続的に操作可能なゲーム、即ち仮想カメラ視線のユーザが３次元仮想空間内を自由に動き回ることができるようなゲームの場合は特に、図１の視界領域と比較して、図２の視界領域の方がユーザにより臨場感を与えることができるものと理解されよう。
【０００６】
他方、図２のように仮想カメラ位置を地面近くまで下げた場合、図１の視界領域と比較して、３次元仮想空間の奥行き方向において視界領域の前後でオブジェクトが重複する相対割合が大きくなることが想定される。即ち、図２の場合は、タッチ・ディスプレイにおいて後方に配置されたオブジェクトが表示される部分のみ上をユーザに的確にタッチさせるのは困難となる場合がある。これは、ユーザに操作上の煩わしさによる不快感を与えることになる。なお、上記ではタッチ・ディスプレイの例について説明したが、通常のディスプレイにおけるマウス・クリック等においても同様のことが言える。
【０００７】
したがって、タッチ操作等のユーザ作用を容易にするために、オブジェクトに対して視覚状の表示制御を行うゲーム・プログラムを提供することは有利である。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、３次元仮想空間において仮想カメラをユーザ指示により連続的に移動操作可能なゲームにおいて、ユーザに対し、操作上の煩わしさを与えることなく、各種オブジェクトへのユーザ作用（例えば、タッチ・ディスプレイにおけるオブジェクト選択等）を容易かつ円滑に実現できるゲーム・プログラムを提供することである。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、仮想空間平面上に配置したオブジェクトを表示制御するゲーム・プログラムを提供する。本発明のゲーム・プログラムは、ユーザ入力によって仮想空間内を移動可能な仮想カメラからの視界領域を決定する視界領域決定部、視界領域と関連付けて定められる透過処理領域内に配置され、ユーザ作用が可能に設定されたオブジェクトの内の少なくとも１つを透過処理対象オブジェクトとして決定するオブジェクト決定部、該決定された透過処理対象オブジェクトに対し、仮想カメラとの配置関係で決定される透過率に応じて透過処理を実施すると共に、ユーザ作用を不可能に設定するオブジェクト制御部、表示部に出力するために、透過処理対象オブジェクトの透過画像を用いて視界領域に基づくゲーム画像を生成する画像生成部、としてコンピュータを機能させる。
【００１０】
また、本発明のゲーム・プログラムでは、上記透過処理領域は、視界領域内において仮想カメラから所定の距離を有する直線境界または曲線境界に基づいて決定されることを特徴とする。更に、上記透過率は、仮想カメラと透過処理対象オブジェクトとの間の距離、または仮想カメラと透過処理対象オブジェクトが整列された列との間の距離に基づいて動的に決定されることを特徴とする。
【図面の簡単な説明】
【００１１】
【図１】図１は、従来技術によるゲーム・プログラムにより生成される画面例を示す。
【図２】図２は、本発明の実施形態によるゲーム・プログラムにより生成される画面例を示す。
【図３】図３は、本発明の実施形態によるゲーム・プログラムを実行するためのゲーム・システムの概略図である。
【図４】図４は、本発明の実施形態によるゲーム・プログラムを実行するためのゲーム・サーバの概略機能ブロック図である。
【図５】図５は、本発明の実施形態によるゲーム・プログラムを実行するのに用いるオブジェクト・データを格納する例示のオブジェクト・テーブルを示す。
【図６】図６は、本発明の実施形態によるゲーム・プログラムを用いて実装されるオブジェクト透過処理の基本態様について示す一例の概略図である。
【図７】図７は、本発明の実施形態によるゲーム・プログラムを用いて実装されるオブジェクト透過処理の別の基本態様について示す例の概略図である。
【図８】図８は、本発明の実施形態によるゲーム・プログラムの実行に関し、ユーザ端末１０とゲーム・サーバ５０の間の例示の処理シーケンス図である。
【図９】図９は、図２に示した画面例の３次元仮想空間視野に対応する概略平面図である。
【図１０】図１０は、図２に示した画面例に対し、仮想カメラの位置を奥行き方向に連続的に移動させた場合の画面例を示す。
【図１１】図１１は、本発明の実施形態によるゲーム・プログラムによって実装される３次元仮想空間の一例についての概略側面図である。
【発明を実施するための形態】
【００１２】
以下、図２〜図１１を参照して、本発明の実施形態によるゲーム・プログラムについて説明する。図中、同一の構成要素には同一の符号を付している。
まず図３および図４を参照して、本発明の実施形態によるゲーム・プログラムを実行させるためのゲーム・システムの基本構成について説明する。図３および図４は、ゲーム・システムの主要な構成要素のみを示した概略ブロック図である。
【００１３】
図３に示すように、ゲーム・システム１００は、ユーザ端末１０−１〜１０−４（以後、「クライアント端末１０」と総称する。）、およびゲーム・サーバ５０を備え、これら要素間はネットワーク３０を介して通信を行う。
【００１４】
ユーザ端末１０は、ゲーム・サーバ５０で生成されるゲーム画像をブラウザ等のアプリケーションにより表示できる装置であればよく、例えば、スマートフォン、タブレット端末、ゲーム用コンソール、ノートＰＣ等を含むが、これらに限定されない。
【００１５】
図示のように、ユーザ端末１０は、端末表示部１１、端末入力部１２、端末処理部１３、端末通信部１４および端末記憶部１５等を備え、これらはバスを介して電気的に相互に接続される。
【００１６】
端末表示部１１は、ゲーム・サーバ５０から端末通信部１４で受信したゲーム画像を端末記憶部１５に一時的に格納し、ブラウザを通じて表示する。端末表示部１１は、例えば液晶ディスプレイ（ＬＣＤ）等によって実現することができるが、実施形態においては、特にタッチ・ディスプレイとして構成するのがよい。端末入力部１２は、３次元仮想空間に配置される仮想カメラの操作制御をするための命令や、３次元仮想空間に配置された各種オブジェクトに対するユーザ作用（オブジェクトの「選択」、「移動」、「削除」等）をするための命令を入力する。入力手段としては、キーボードや仮想キーボードによる文字入力、マウスによるオブジェクトのクリック、オブジェクト位置に対応するタッチ・ディスプレイ上の位置での指によるタッチ入力やスタイラスによる入力、およびその組み合わせとすることができるが、これらに限定されない。
【００１７】
端末入力部１２で受けた入力命令に基づいて、端末処理部１３がユーザ命令を作成し、端末通信部１４およびネットワーク３０を通じてゲーム・サーバ５０と通信を行う。そして、ゲーム・サーバ５０内において関連のゲーム・プログラムが実行される。端末記憶部１５は、ユーザ端末に関連付けられる各種データ、および画像データの表示に必要なブラウザ等のアプリケーションを格納すると共に、ゲーム・サーバ５０から受信する画像データ等の各種データも一時的に格納する。
【００１８】
一方、ゲーム・サーバ５０は、処理部５１、メインメモリ５２、外部メモリ５３、ユーザ・インタフェース５４、通信部５５、およびディスク・ドライブ５６等を備え、これらはバスを介して電気的に相互に接続される。処理部５１は、外部メモリ５３に格納されたプログラム・モジュール、およびディスク・ドライブ５６に格納された各種データ等をメインメモリ５２にロードして、順次プログラムを実行することによりゲームの進行を制御する。特に、処理部５１は、ユーザ端末１０での表示用ゲーム画像を生成して、通信部５５を介してユーザ端末１０に戻すように構成される。ユーザ・インタフェース５４は、ゲーム・サーバ５０の管理者によってサーバにアクセスされ、各種サーバ機能設定やネットワーク設定を実施する。
【００１９】
なお、上記ゲーム・サーバ５０に関する情報処理装置としての様々な機能の全部または一部は、ユーザ端末１０が担うように構成してもよい。この場合には、ユーザ端末１０単体で情報処理装置を構成するか、またはユーザ端末１０およびゲーム・サーバ５０全体で情報処理装置が構成される。
【００２０】
更に、図４を参照して、ゲーム・サーバ５０内に実装される各機能について説明する。図４は、図３に示したゲーム・サーバ５０に格納される各種プログラム・モジュールおよび各種データに関する例示の機能ブロック図である。仮想カメラ視界領域決定部５０ａでは、ユーザ命令にしたがって３次元仮想空間内の仮想カメラの位置を移動させ、仮想カメラの位置からの視界領域を決定する。透過処理オブジェクト決定部５０ｂでは、上記視界領域に含まれる１つ以上のオブジェクトを特定する。また、その内から透過処理を実施するための透過処理対象オブジェクトを決定する。オブジェクト制御部５０ｃでは、透過処理対象オブジェクトに対し、後述する所定のルールに基づく透過処理を実施する。最後に、ゲーム画像生成部５０ｄでは、視界領域の画像および透過処理を実施したオブジェクトの半透明画像を合成して、ユーザ端末１０で実際に画面表示されるゲーム画像を生成する。
【００２１】
仮想空間データ５０１は、仮想カメラ視界領域決定部５０ａで主に用いられ、３次元仮想空間を定義する３次元座標（ｘｙｚ）データ、およびオブジェクトを配置するための平面上の座標系（ｘｙ）を定義するデータを含む。仮想カメラ・データ５０２は、仮想カメラ視界領域決定部５０ａで主に用いられ、仮想カメラの３次元位置、方位、視野角度、移動速度、その他仮想カメラに関連付けて定義される任意のデータを含む。視界データ５０３は、仮想空間データ５０１および仮想カメラ・データ５０２に基づいて計算される仮想カメラの視界領域を表すデータを含む。オブジェクト・データ５０４および透過処理関連データ５０５は、透過処理オブジェクト決定部５０ｂおよびオブジェクト制御部５０ｃで主に用いられる。オブジェクト・データ５０４は、オブジェクトの平面座標位置や形状等のデータやオブジェクトに対して設定される各種フラグを含む（図５として後述）。透過処理関連データ５０５は、透過処理領域に関係するデータ、透過処理対象オブジェクトの識別情報リスト、および透過処理時の透過率のような動的に計算される透過処理関連情報を含む。最後に、ゲーム画像データ５０６は、ゲーム画像生成部５０ｄで主に用いられ、上記の各データを用いて生成されるゲーム画像データを含む。
【００２２】
各種データ５０１〜５０６は、それぞれテーブル形式でディスク・ドライブ５６に格納するのがよい。例えば、図５は、オブジェクト・データ５０４を収容する例示のオブジェクト・テーブルである。図示のように、オブジェクト・テーブルには、これに限定されないが、ユーザが仮想空間平面に配置したオブジェクト毎に、オブジェクトＩＤ、アイコン種別、形状（Ｌ，Ｗ，Ｈ）、仮想空間平面上の配置位置（ｘ，ｙ）、ユーザ作用フラグ、および透過処理対象フラグを含むオブジェクト・データ５０４が収容される。オブジェクトＩＤはオブジェクトを一意に識別する識別子である。アイコン種別は、仮想空間平面に配置するオブジェクトのアイコンの種別を示し、例えば、ＡＡＢＢは「銀行」オブジェクトを、ＹＹＹＹは「コンビニ」オブジェクトを示すといった具合である。形状は、オブジェクトの３次元仮想空間内における奥行き（Ｗ）、幅（Ｗ）、高さ（Ｈ）データである。仮想空間平面上の配置位置は、（ｘ，ｙ）座標系での位置データである。仮想空間平面を格子状して、格子の上に各オブジェクトを配置するようにしてもよく、この場合は、格子番号のようなデータとしてもよい。ユーザ作用フラグは、オブジェクトに対し、ユーザによるタッチ・ディスプレイのタッチ選択といったユーザ作用を可能とするかを初期設定するフラグであり、例えば「１」はユーザ作用「可」を、「０」はユーザ作用「不可」を示すデータである。透過処理対象フラグは、オブジェクトに対し、透過処理の対象とするかを初期設定するフラグであり、例えば「１」は透過処理「可」を、「０」は透過処理「不可」を示すデータである。なお、上記の各種プログラム・モジュールおよび各種データやテーブルは、例示のために用いたに過ぎず、当業者にとって、これらに限定されないことが理解されて然るべきである。
【００２３】
次に図６を参照して、本発明の実施形態によるゲーム・プログラムを用いて実行されるオブジェクト透過処理の基本態様についての一例を示す。図６は、仮想空間平面（ｘｙ平面）上において、仮想カメラ１が点線で示す方向に距離Ｌだけ直線移動する場合（図６（ａ）から図６（ｂ）に移動する場合）を想定する。そして、仮想カメラ１の視界領域（点線領域）６０ａ，６０ｂ内に配置されたユーザ作用可能な２つの固定オブジェクトＡ，Ｂに対し、視覚上の処理として透過処理を実施することを示す。
【００２４】
図示のとおり、オブジェクトＡの後方にオブジェクトＢが平面上に配置され、その結果、オブジェクトＢは、その一部または全部がオブジェクトＡのブラインド領域（斜線領域）７０ａ，７０ｂに配置されることになる。３次元仮想空間の表示画像（例えば図２を参照。）において、奥行き方向の前後のオブジェクト同士で表示上重複が生じるのは、このようにｘｙ平面上の前方オブジェクト（オブジェクトＡ）に関連付けられるブラインド領域内に後方オブジェクト（オブジェクトＢ）が配置される場合である。また、図６（ｂ）のように仮想カメラ１がオブジェクトＡに近づくほどブラインド領域が広範となる。
【００２５】
本明細書において、ブラインド領域とは、画面表示上、１のオブジェクトの存在により、他のオブジェクトの少なくとも一部が重複により表示されなくなるような状況に関し、１のオブジェクトに関連付けて定められる領域のことを言う。ブラインド領域は、視界領域内のものであり、視界領域に関連付けられる。つまり、画面表示において上記１のオブジェクトの両端となる部分に対して、図６のように仮想カメラ１から直線を延ばすことで、視界領域内に形成される閉領域となる。なお、図６の斜線部において、オブジェクトＡの後方の部分のみを特にブラインド領域として規定するのがいい。
【００２６】
特に、図６（ｂ）の場合には、オブジェクトＢは、その全体がブラインド領域７０ｂに含まれる。この点、先に説明したように、タッチ・ディスプレイを操作するユーザにとって、後方のオブジェクトＢについて画面表示された部分に対し、タッチ・ディスプレイ上の該当領域のみを的確にタッチするのは困難である。
【００２７】
そこで、仮想空間平面上の前方オブジェクト（オブジェクトＡ）に関連付けられるブラインド領域７０ａ，７０ｂ内に後方オブジェクト（オブジェクトＢ）が配置される場合には、当該ブラインド領域７０ａ，７０ｂを透過処理領域として規定する。そして、前方オブジェクト（オブジェクトＡ）に対して透過処理を実施し、更に前方オブジェクト（オブジェクトＡ）に対するユーザ作用を不可能に設定する。結果として、背後の後方オブジェクト（オブジェクトＢ）の全体を表示させ、およびユーザ作用可能とすることができる。即ち、オブジェクトＡの全体の画面表示に対応するタッチ・ディスプレイ上の領域をユーザがタッチしてもオブジェクトＡは選択不可能である一方、オブジェクトＢの全体の画面表示に対応するタッチ・ディスプレイ上の領域をユーザがタッチすることでオブジェクトＢが選択可能となる。
【００２８】
この際、仮想カメラ１と前方オブジェクト（オブジェククトＡ）の間の相対的な配置関係に応じて、前方オブジェクト（オブジェクトＡ）の透過率を動的に決定することができる。例えば、図６（ａ）では、カメラに対しオブジェクトＡが比較的離れて配置されているため、「オブジェクトＡの透過率＝３０％」に、図６（ｂ）の例では、オブジェクトＡが比較的近くに配置されているため「オブジェクトＡの透過率＝８０％」に設定するといった具合である。なお、仮想カメラ位置とオブジェクト位置が一致し、距離が０となった場合には、透過率を１００％に設定してオブジェクトＡを画面から消去するのがよい。
【００２９】
図６では、２つのオブジェクトＡ，Ｂの配置関係、およびこれに関連して決定されるブラインド領域に基づいて透過対象オブジェクト（オブジェクトＡ）を決定したが、本発明の実施形態によるゲーム・プログラムの実装においてはこれに限定されない。以下に図７を参照して別の例を示す。
【００３０】
図７に示すように、透過処理領域８０ａ，８０ｂ（縦線領域）が視界領域６０ｃ，６０ｄ内に関連付けて規定される。図７（ａ）の例では、透過処理領域８０ａは、仮想空間平面上の視界領域６０ｃ内において、仮想カメラ１から所定の距離に設けられた直線境界を用いた閉領域として規定される。ここでは、仮想カメラ１と直線境界の直線とは距離ｄ１を有する。また、透過処理領域８０ｂは、仮想空間平面上の視界領域６０内において仮想カメラ１から所定の距離ｄ２の曲線（即ち円弧）境界を用いた閉領域として規定される。図７（ａ）の例のように透過処理領域８０ａ内にオブジェクトが存在する（即ち、Ｄ１＜ｄ１）場合や、図７（ｂ）の例のように透過処理領域８０ｂ内にオブジェクトが存在する（即ち、Ｄ２＜ｄ２）場合には、（他のオブジェクトとの関係を考慮することなく）当該オブジェクト単体で透過対象オブジェクトとして決定される。そして、距離Ｄ１やＤ２に応じた透過処理が実施される。
【００３１】
上記以外にも、例えば、図５で説明したオブジェクト・データ５０４の透過処理対象フラグに応じてオブジェクトの透過処理を制御してもよい。即ち、視界領域に含まれるオブジェクトの内、当透過処理対象フラグが予め「１」（即ち、透過処理「可」）と設定されているオブジェクトについては、透過処理対象オブジェクトとして決定し、透過処理を実施するように構成してもよい。
【００３２】
透過処理対象オブジェクトを決定する方法については、上記に説明した手法のそれぞれを単独または組み合わせて実装することができる点に留意すべきである。また、上記透過処理は、例えば、当業者にとって通常用いられるアルファ・ブレンドによる透過処理を採用することができ、この場合、アルファ値を適切に選択することにより透過率を決定される点に留意すべきである。
【００３３】
次に図８を参照して、本発明の実施形態によるゲーム・プログラムを実行する際のユーザ端末１０とゲーム・サーバ５０の間の処理シーケンスの詳細の例について説明する。
まず、ステップＳ１１では、端末入力部１２を通じたユーザ入力指示により、３次元仮想空間に配置された仮想カメラを連続的に移動（徘徊）させる（例えば、水平方向の移動）。ステップＳ１１で決定される仮想カメラ位置に応じて、ゲーム・サーバ５０では、ステップＳ５１を実施する。即ち、仮想カメラ視界領域決定部５０ａにより、仮想空間データ５０１および仮想カメラ・データ５０２に基づき、当該仮想カメラの位置からの視界データ５０３を計算して視界領域を決定する。
【００３４】
次いで、ステップＳ５２では、透過処理オブジェクト決定部５０ｂにおいて、視界データ５０３に加えオブジェクト・データ５０４を用いて、ステップＳ５１で決定した視界領域内に含まれる１つ以上のオブジェクトを特定する。特に、そのオブジェクト・データが有するユーザ作用フラグが「１」（ユーザ作用「可」）である１つ以上のオブジェクトを候補オブジェクトとして特定する。
【００３５】
引き続き、ステップＳ５３では、同じく透過処理オブジェクト決定部５０ｂにおいて、ユーザ作用フラグが「１」（ユーザ作用「可」）である１つ以上の候補オブジェクトの内から、実際に透過処理を実施する透過処理対象オブジェクトを決定し、透過処理関連データ５０５として生成する。透過処理対象オブジェクトの決定については、図６，図７等に関連して先に説明したとおりである。
【００３６】
そして、ステップＳ５４では、ステップＳ５３で決定した透過処理対象オブジェクトに対し、オブジェクト制御部５０ｃにおいて、仮想カメラと透過処理対象オブジェクトとの配置関係で決定される透過率に応じて透過処理を実施する。ステップＳ５４に併せてステップＳ５５では、オブジェクト制御部５０ｃにおいて、透過処理対象オブジェクトに関連付けられるユーザ作用フラグを「０」（ユーザ作用「不可」）に設定する。これにより、透過処理対象オブジェクトの表示位置上でタッチ・ディスプレイをタッチしてもオブジェクト選択ができなくなる。
【００３７】
ステップＳ５６では、透過処理を実施した透過処理対象オブジェクトの透過画像（半透明画像）を視界データ５０３による画像と合成して、端末表示部１１に表示するためのゲーム画像を生成する。そして、ステップＳ５７で、このように生成したゲーム画像を、通信部５５およびネットワーク３０を通じてユーザ端末１０に送信する。
【００３８】
ゲーム画像を受信したユーザ端末１０の端末処理部１３は、端末記憶部１５に受信データを一時的に格納し、ステップＳ１２でブラウザ等のアプリケーションを用いて端末表示部１１にゲーム画像を表示する。
【００３９】
上記ステップＳ１１、Ｓ５１〜Ｓ５７、Ｓ１２は、仮想カメラを連続的に移動させている間は繰り返される。
このようにしてタッチ・ディスプレイ（端末表示部１１）に表示されたゲーム画像について、ステップ１３では、ユーザは、透過処理が実施されていないオブジェクトの内、特にユーザ作用フラグが「１」（ユーザ作用「可」）である１つのオブジェクトに対してユーザ作用を行うことができる。即ち、ユーザはタッチ・ディスプレイ（端末表示部１１）および端末入力部１２を通じたタッチ操作によって、当該オブジェクトの選択命令をサーバ５０に通信することができる。そして、ステップ５８では、ゲーム・サーバ５０の処理部５１によってオブジェクト選択動作用のプログラムが実施される。
【００４０】
これより、図９の概略平面図、および図１０の画面例を参照して、具体的なゲームの進行の一例について説明する。これに先立ち、図２を再度参照する。図２の画面例は、本発明の実施形態のゲーム・プログラムを実行することにより生成される画面イメージである。画面イメージの視界領域において、３次元仮想空間内の平面上に、様々な建物、車両、木等のオブジェクトが配置される。なお、これらのオブジェクトには、図５に関連して説明したオブジェクト・テーブルに格納される各種データが関連付けられる。ユーザは、タッチ・ディスプレイ上で例えばスワイプ動作を行うことにより、所定の速度でｘ，ｙ水平方向に仮想カメラを連続移動させることができる。
【００４１】
図９は、図２に示した３次元仮想空間の視野に対応する概略平面図である。図示のように、仮想カメラ１はｙ軸方向を向いており、スワイプ動作によるユーザ入力指示によりｙ軸に沿って（点線矢印方向に）移動する。また、仮想空間平面上に配置される各種オブジェクトは、ｘ軸に沿って設けられた第１列〜第５列上に整列される。即ち、第１列にはオブジェクト１ａ〜１ｄ（木）、第２列にはオブジェクト２ａ（車両）、第３列にはオブジェクト３ａ（コンビニ）および３ｂ（カジノ）、第４列にはオブジェクト４ａ（コンビニ）、４ｂ（ホテル）および４ｃ（美術館）、並びに第５列にはオブジェクト５ａ（旅館）および５ｂ（ホテル）が整列される。
【００４２】
なお、第１列上の「木」オブジェクト１ａ〜１ｄ、および第２列上の「車両」オブジェクト２ａにそれぞれ関連付けられるユーザ作用フラグは、「０」（即ち、ユーザ作用「不可」）に初期設定されている。このため、ユーザはこれらオブジェクトに対し、タッチ・ディスプレイ上でのタッチのようなユーザ作用を行うことはできず、また以降の透過処理対象オブジェクトにもならない。
【００４３】
仮想カメラ１が点線の矢印に沿って水平方向に連続的に移動する間、図８に関連して説明した処理シーケンスが随時実施される。特に透過処理に関する処理として、ここでは図７（ｂ）に示した態様の透過処理が随時実施される。即ち、仮想カメラ１から第１列〜第５列までの各距離（Ｄ２）が所定の距離（ｄ２）未満となった場合に、該当する列上に配置されたユーザ作用可能な各オブジェクトに対し、順次透過処理が実施される。
【００４４】
図１０（ａ）〜（ｄ）は、図２の画面例から仮想カメラ１が連続的に奥行き方向（図９のｙ方向）移動するのに伴い、列上に整列したオブジェクトに対して順次透過処理が実施される様子を表した画面例である。具体的には、図１０（ａ）では、仮想カメラと第３列の距離が所定の距離ｄ２未満であるため、第３列上に整列したオブジェクト３ａ，３ｂに対して、透過率３０％程度の透過処理が実施される。引き続き、図１０（ｂ）では、仮想カメラが更に進行して第３列に更に接近したため、同じくオブジェクト３ａ，３ｂに対して、透過率を増やして８０％程度として透過処理が実施される。
【００４５】
次いで、図１０（ｃ）では、仮想カメラが第３列上まで進行し、仮想カメラと第３列の距離が０になったため、オブジェクト３ａ，３ｂに対して、透過率１００％程度の透過処理が実施される。即ち、オブジェクト３ａ，３ｂを画面上から消去して非表示にする。
【００４６】
そして、図１０（ｄ）では、仮想カメラは第３列を越えて第４列に接近し、第４列との距離が所定の距離ｄ２未満となったため、第４列上に整列したオブジェクト４ｂ，４ｃに対して、透過率３０％程度の透過処理が実施される。（なお、第４列上に整列したオブジェクト４ａは既に仮想カメラの視界の外にあるため表示されていない。）なお、第５列は、最終列であり、透過処理を実施する必要がないことから、第５列のオブジェクトに対しては、透過処理対象フラグを「０」（透過処理「不可」）と初期設定し、仮想カメラがどんなに近づいても透過処理を実施しない。
【００４７】
先に述べたように、図９の例では、第１列上の「木」オブジェクト１ａ〜１ｄおよび第２列上の「車両」オブジェクト２ａに対し、ユーザ作用フラグを「０」（ユーザ作用不可）と初期設定していた。しかしながら、仮にユーザ作用フラグが「１」（ユーザ作用可）に設定されていた場合であっても、次の図１１に関する説明のようにして透過処理対象から除外することもできる。
【００４８】
図１１は、本発明の実施形態のゲーム・プログラムにより実装される一例の３次元仮想空間についての概略側面図である。図示のように、仮想カメラ１と「ホテル」オブジェクトの間には、「人」オブジェクトＸ、「木」オブジェクトＹ、および「車両」オブジェクトＺが配置される。オブジェクトＸ，Ｙ，Ｚに関連付けられる各オブジェクト・データ（図５を参照のこと。）における高さデータは、仮想カメラ１の垂直方向の高さＨの値と比較して低い。このため、仮に背後にオブジェクトが隣接して配置されていても、これら隣接オブジェクトは十分に画面表示可能であるものと考えられる。この点、仮想カメラ１の高さＨの値よりも小さい高さデータを有するオブジェクトについては、透過処理対象オブジェクトから除外するよう決定し、高さＨの値よりも大きい高さデータを有するオブジェクトについてのみ透過処理対象オブジェクトとして決定することができる。または、これらオブジェクトＸ，Ｙ，Ｚの高さデータが所定の高さデータ（絶対値）よりも小さい場合には、透過処理対象オブジェクトから除外するよう決定することができる。
【００４９】
以上、本発明の実施形態による、仮想空間平面上に配置したオブジェクトを表示制御するゲーム・プログラムについて説明した。上述した実施形態は、本発明の理解を容易にするための例示に過ぎず、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良することができると共に、本発明にはその均等物が含まれることは言うまでもない。
【要約】
【課題】ユーザに対し、端末操作上の煩わしさを与えることなく、仮想空間内の各種オブジェクトへのユーザ作用を容易かつ円滑に実現できるゲーム・プログラムを提供すること。
【解決手段】仮想空間平面上に配置したオブジェクトを表示制御するゲーム・プログラムを提供する。ゲーム・プログラムは、ユーザ入力によって仮想空間内を移動可能な仮想カメラからの視界領域を決定する視界領域決定部、視界領域と関連付けて定められる透過処理領域内に配置され、ユーザ作用が可能に設定されたオブジェクトの内の少なくとも１つを透過処理対象オブジェクトとして決定するオブジェクト決定部、該決定された透過処理対象オブジェクトに対し、仮想カメラとの配置関係で決定される透過率に応じて透過処理を実施すると共に、ユーザ作用を不可能に設定するオブジェクト制御部、表示部に出力するために、透過処理対象オブジェクトの透過画像を用いて視界領域に基づくゲーム画像を生成する画像生成部、としてコンピュータを機能させる。
【選択図】図４【図３】
0005767371.tif 000002
【図１】
0005767371.tif 000003
【図２】
0005767371.tif 000004
【図４】
0005767371.tif 000005
【図５】
0005767371.tif 000006
【図６】
0005767371.tif 000007
【図７】
0005767371.tif 000008
【図８】
0005767371.tif 000009
【図９】
0005767371.tif 000010
【図１０】
0005767371.tif 000011
【図１１】
0005767371.tif 000012