説明

プログラム、情報記憶媒体、端末

【課題】プレーヤが、オブジェクトの配置可能な位置を容易に把握しながら、ストレスなくゲームプレイを行うことができるプログラム、情報記憶媒体、端末を提供する。
【解決手段】プレーヤからの入力情報に基づいて、サイズ情報が対応付けられた複数のオブジェクトの中から、所与のオブジェクトの選択を受け付け、オブジェクトのサイズ情報に基づいて、オブジェクトが配置されていないマスであって、既にオブジェクトが配置されているマスに隣接するマスを、配置可能マスとして決定し、オブジェクトが選択された際に、配置可能マスを識別表示する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体、端末に関する。
【背景技術】
【0002】
従来から、ゲーム空間内において、プレーヤからの入力情報に基づいて、ゲーム空間の所与のマスに、オブジェクトを配置させるゲームが知られている。例えば、ルールに応じて決められた配置可能なマスにオブジェクトを配置して、勝敗を決定するゲームある(特許文献1)。
【特許文献1】特開2006−187343号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
近年では、携帯電話を用いたゲームのように、気軽に楽しめるゲームが求められているが、従来のゲームは、プレーヤはオブジェクトを配置させることができるマスを容易に把握することができず、プレーヤにストレスを与えてしまうという問題があった。
【0004】
本発明は、従来の課題に鑑みたものであり、その目的は、プレーヤがオブジェクトの配置可能な位置を容易に把握しながら、ストレスなくゲームプレイを行うことができるプログラム、情報記憶媒体、端末を提供することにある。
【課題を解決するための手段】
【0005】
(1)本発明は、
ゲーム空間において、複数のマス内の配置可能マスに、オブジェクトを配置させて、所定条件下でマスを消去するゲームのためのプログラムであって、前記複数のマスを表示する処理を行う表示制御部と、プレーヤからの入力情報に基づいて、サイズ情報が対応付けられた複数のオブジェクトの中から、所与のオブジェクトの選択を受け付ける処理を行う受け付け部と、オブジェクトが配置されていないマスであって、既にオブジェクトが配置されているマスに隣接するマスを、配置可能マスとして決定する処理を行う決定部と、プレーヤからの入力情報に基づいて、選択されたオブジェクトを、配置可能マスに配置する処理を行う配置部と、選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトが配置されているマスとを、前記所定条件に基づいて消去する消去部として、コンピュータを機能させ、前記決定部が、オブジェクトのサイズ情報に基づいて、配置可能マスを決定する処理を行い、前記表示制御部が、オブジェクトが選択された際に、配置可能マスを識別表示するプログラムに関する。
【0006】
本発明は、上記プログラムを記憶した情報記憶媒体、上記各部として構成する端末に関係する。
【0007】
本発明によれば、プレーヤは、サイズ情報が対応付けられたオブジェクトの配置可能マスを容易に認識することができ、ストレスなくゲームプレイを行うことができる。
【0008】
(2)また、本発明のプログラム、情報記憶媒体、端末は、
前記受け付け部が、サイズ情報が異なる複数のオブジェクトの中から、所与のオブジェクトの選択を受け付ける処理を行い、前記決定部が、選択されたオブジェクトのサイズを有するエリアであって、当該エリアの少なくとも1マスが既にオブジェクトが配置されている少なくとも1マスに隣接する場合に、当該エリアを配置可能マスとして決定する処理を行うようにしてもよい。
【0009】
(3)また、本発明のプログラム、情報記憶媒体、端末は、
前記オブジェクトは、数値に対応付けられており、前記消去部が、選択されたオブジェクトの数値と、選択されたオブジェクトが配置されたマスに隣接する1又は複数のオブジェクトの各数値との合計値が所定値以上である場合に、選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトとが配置されているマスとを、消去するようにしてもよい。
【0010】
(4)また、本発明のプログラム、情報記憶媒体、端末は、
前記オブジェクトは、複数の色のうちいずれか1つの色に対応付けられており、前記消去部が、選択されたオブジェクトの色と、選択されたオブジェクトが配置されたマスに隣接する1又は複数のオブジェクトの各色とが同色である場合に、選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトとが配置されているマスとを、消去するようにしてもよい。
【発明を実施するための最良の形態】
【0011】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0012】
1.構成
図1に本実施形態の端末(コンピュータ、携帯端末、携帯電話、ゲーム機、画像生成装置)の機能ブロック図の例を示す。なお本実施形態の端末は図1の構成要素(各部)の一部を省略した構成としてもよい。
【0013】
操作部160は、プレーヤが操作情報(入力情報の一例)を入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、などにより実現できる。
【0014】
図2は、本実施形態の端末の一例である携帯電話を示す。本実施形態の操作部160は、上方向キーA1、右方向キーA2、下方向キーA3、左方向キーA4、そして、決定ボタンBを含む複数のキーによって実現されている。
【0015】
なお、操作部160は、液晶ディスプレイとプレーヤの接触位置を検出するためのタッチパネルとが蓄層されたタッチパネル型ディスプレイを含む。つまり、タッチパネル型ディスプレイは、タッチペンやプレーヤの指等によって接触された入力情報(接触操作情報)を入力できるものであってもよい。また、操作部160は、加速度センサ、角速度を検出するジャイロセンサを備えていてもよい。
【0016】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。
【0017】
情報記憶媒体180(端末により読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。情報記憶媒体180には、本実施形態の各部として端末を機能させるためのプログラム(各部の処理を端末に実行させるためのプログラム)を記憶することができる。
【0018】
表示部190(表示画面)は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。
【0019】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【0020】
通信部196は外部(例えば他の端末)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0021】
なお、サーバが有する情報記憶媒体や記憶部に記憶されている本実施形態の各部として端末を機能させるためのプログラムやデータを、ネットワークを介して受信し、受信したプログラムやデータを情報記憶媒体180や記憶部170に記憶してもよい。このようにプログラムやデータを受信して端末を機能させる場合も本発明の範囲内に含む。
【0022】
処理部100(プロセッサ)は、操作部160からの入力情報やプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。
【0023】
この処理部100は記憶部170内の主記憶部172をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0024】
処理部100は、ゲーム演算部110、受け付け部113、表示制御部116、描画部120、音生成部130を含む。なおこれらの一部を省略する構成としてもよい。
【0025】
本実施形態のゲーム演算部110は、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【0026】
本実施形態のゲーム演算部110は、ゲーム空間において、複数のマス内の配置可能マスに、オブジェクトを配置させて、所定条件下でマスを消去させる処理を行っている。
【0027】
ここで、マスとは、例えば後述するブロック10であり、オブジェクトとは、例えば後述する数字パネル22(22´)であり、オブジェクトの大きさ(サイズ)は、1又は複数のマスの大きさからなる。なお、オブジェクトは、多角形、円形や駒等であってもよい。
【0028】
本実施形態のゲーム演算部110は、決定部110aと、配置部110bと、消去部110cと、クリア条件判定部110dとを含む。
【0029】
決定部110aは、オブジェクトが配置されていないマスであって、既にオブジェクトが配置されているマスに隣接するマスを、配置可能マスとして決定する処理を行う。また、決定部110aは、オブジェクトのサイズ情報に基づいて、配置可能マスを決定する処理を行う。例えば、サイズ情報とは1マス×1マスの大きさ、2×2マスの大きさ等である。
【0030】
また、決定部110aは、選択されたオブジェクトのサイズを有するエリアであって、当該エリアの少なくとも1マスが既にオブジェクトが配置されている少なくとも1マスに隣接する場合に、当該エリアを配置可能マスとして決定する処理を行う。
【0031】
配置部110bは、プレーヤからの入力情報に基づいて、選択されたオブジェクトを、配置可能マスに配置する処理を行う。
【0032】
消去部110cは、選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトが配置されているマスとを、所定条件に基づいて消去する処理を行う。ここで、消去する処理では、ゲーム画像において消去対象のマスを背景に変更する処理を行ったり、ゲーム画像において消去対象のマスを、消去印(×印等)に変更する処理を行う。なお、消去されたマスのエリアは、オブジェクトを配置させることが不能なエリアとなる。
【0033】
また、消去部110cは、オブジェクトが数値に対応付けられている場合には、選択されたオブジェクトの数値と、選択されたオブジェクトが配置されたマスに隣接する1又は複数のオブジェクトの各数値との合計値が所定値以上である場合に、選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトとが配置されているマスとを、消去する。
【0034】
また、消去部110は、オブジェクトが複数の色のうちいずれか1つの色に対応付けられている場合には、選択されたオブジェクトの色と、選択されたオブジェクトが配置されたマスに隣接する1又は複数のオブジェクトの各色とが同色である場合に、選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトとが配置されているマスとを、消去する。
【0035】
クリア条件判定部110dは、ゲームステージ毎に応じたクリア条件を満たすか否かを判定する処理を行う。例えば、制限時間内にゲーム空間に存在するマスを全て消去することをクリア条件とする。
【0036】
受け付け部113は、プレーヤからの入力情報に基づいて、サイズ情報が対応付けられた複数のオブジェクトの中から、所与のオブジェクトの選択を受け付ける処理を行う。
【0037】
また、受け付け部113は、サイズ情報が異なる複数のオブジェクトの中から、所与のオブジェクトの選択を受け付ける処理を行う。
【0038】
表示制御部116は、複数のマスを表示する処理を行う。また、表示制御部116は、オブジェクトが選択された際に、配置可能マスを識別表示する。
【0039】
なお、処理部100は、カーソル移動制御部を含んでもよい。カーソル移動制御部は、プレーヤからの入力情報に基づいて、カーソルを移動させる処理を行う。また、カーソル移動制御部は、オブジェクトが選択されたことを契機に、直前にオブジェクトが配置されたマスに最も近い配置可能マスを検索し、プレーヤからの入力情報によらずに、選択エリアから検索された配置可能マスにカーソルを移動させる処理を行う。
【0040】
なお、処理部100は、オブジェクト空間設定部、移動・動作処理部、仮想カメラ制御部を含むものであってもよい。
【0041】
オブジェクト空間設定部は、マス(ブロック)、オブジェクト(数字パネル)、キャラクタなどの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。例えば、ワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義であり、例えば、ワールド座標系でのX、Y、Z軸の各軸の正方向からみて時計回りに回る場合における回転角度)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。
【0042】
移動・動作処理部は、マス(ブロック)、オブジェクト(数字パネル)、キャラクタなどの表示物を表す各種オブジェクトの移動・動作演算(移動・動作シミュレーション)を行う。すなわち操作部160によりプレーヤが入力した入力情報や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)、物理法則などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させたりする処理を行う。具体的には、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(オブジェクトを構成する各パーツ(マス)の位置、或いは回転角度)を、1フレーム(例えば、1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。
【0043】
仮想カメラ制御部は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、ワールド座標系における仮想カメラの位置(X、Y、Z)又は回転角度(例えば、X、Y、Z軸の各軸の正方向からみて時計回りに回る場合における回転角度)を制御する処理を行う。要するに、視点位置、視線方向、画角を制御する処理を行う。
【0044】
例えば仮想カメラによりマス(ブロック)、オブジェクト(数字パネル)、キャラクタなどの表示物を表す各種オブジェクトを後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動・動作処理部で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【0045】
描画部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。
【0046】
描画部120が生成する画像は、いわゆる2次元画像であってもよいし、いわゆる3次元画像であってもよい。
【0047】
ここで2次元画像を生成する場合には、描画部120は、まずマス(ブロック)、オブジェクト(数字パネル)、キャラクタなどの表示物を表す各種オブジェクトの2次元の位置座標に基づいて、オブジェクトを描画する処理を行う。かかる場合には、予めオブジェクトに設定された優先度が低いオブジェクトから順に描画して、オブジェクト同士が重なる場合には、優先度の高いオブジェクトを上書きして描画するようにしてもよい。
【0048】
また、3次元画像を生成する場合には、次のように処理を行う。マス(ブロック)、オブジェクト(数字パネル)、キャラクタなどの表示物を表す各種オブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むオブジェクトデータ(モデルデータ)が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。
【0049】
頂点処理では、頂点処理プログラム(頂点シェーダプログラム、第1のシェーダプログラム)に従って、頂点の移動処理や、座標変換、例えばワールド座標変換、視野変換(カメラ座標変換)、クリッピング処理、透視変換(投影変換)、ビューポート変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。
【0050】
そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(ピクセルシェーダによるシェーディング、フラグメント処理)が行われる。ピクセル処理では、ピクセル処理プログラム(ピクセルシェーダプログラム、第2のシェーダプログラム)に従って、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ174(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。なお、仮想カメラ(視点)が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として1画面に表示できるように画像を生成することができる。
【0051】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【0052】
そして描画部120は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【0053】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)のオブジェクトデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ(輝度データ)、法線ベクトル、或いはα値等)は、オブジェクトデータ記憶部に保存される。
【0054】
テクスチャマッピングは、記憶部170のテクスチャ記憶部に記憶されるテクスチャ(テクセル値)をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定(付与)されるテクスチャ座標等を用いて記憶部170のテクスチャ記憶部からテクスチャ(色(RGB)、α値などの表面プロパティ)を読み出す。そして、2次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【0055】
隠面消去処理としては、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファのZ値を新たなZ値に更新する。
【0056】
αブレンディング(α合成)は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)のことである。
【0057】
なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
【0058】
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
【0059】
なお、本実施形態の端末は、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末を用いて分散処理により生成してもよい。
【0060】
2.本実施形態の手法
(1)本実施形態の概要
図3は、本実施形態の表示画面の一例である。
【0061】
本実施形態は、ゲーム空間に複数のブロック(マス)10が格子状に配置されており、これら複数のブロックを消去するゲームである。本実施形態では、所定時間内に複数のブロックを全て消去できた場合に、ゲームクリアしたと判定する。なお、ブロックは1マス×1マスの大きさからなる。
【0062】
具体的に本実施形態の処理について説明すると、本実施形態では、プレーヤからの入力情報に基づいて、数字選択エリア20から、1〜9の数字のいずれかの数字を示す数字パネル22(オブジェクトの一例)の選択を受け付ける。
【0063】
そして、本実施形態では、プレーヤの入力情報に基づいて指示されたブロックに、選択された数字パネルを配置できるか否かを判断する。そして、指示されたブロックに、選択された数字パネルを配置できると判断されると、数字パネルを、指示されたブロックに配置する処理を行う。
【0064】
本実施形態では、数字パネルにR(赤)、G(緑)、B(青)のうち、いずれか1つの色を施しており、数字ブロック(数字パネルが配置されたブロックのこという。以下、同様)が複数隣接し、複数隣接する数字ブロック群の色が同色である場合であって、数字ブロック群の数字の合計値が所定値(例えば10)以上か否かを判断し、所定値以上である場合に、これらの隣接する同色の複数の数字ブロック群を消去する処理を行う。
【0065】
例えば、図3の例では、格子P12に緑色の「2」の数字パネルが配置され、格子P13に緑色の「1」の数字パネルが配置されている場合に、数字選択エリアから、緑色の「9」の数字パネルの選択を受け付けたとする。そして、プレーヤからの入力情報に基づいて格子P8のブロックが指示されると、選択された数字パネルを配置するか否かを配置可能条件に基づき判断し、配置可能と判断されると、格子P8に「9」の数字パネルを配置する処理を行う。
【0066】
そして、数字パネルがブロックに配置されると、当該数字パネルが配置されたブロック(数字ブロック)に隣接するブロック群を消去するか否かを、消去条件に基づき判断する。
【0067】
例えば、数字パネルが配置された格子P8の数字ブロック「9」(緑色)は複数の数字ブロックと隣接する。つまり、格子P8の数字ブロックは、格子P12の数字ブロック「2」(緑色)と、格子P13の数字ブロック「1」(緑色)と隣接する。また、格子P8、P12、P13の各数字ブロックの色は同色(緑色)である。さらにP8の数字ブロックの数字「9」と、格子P12の数字ブロックの数字「2」、格子P13の数字ブロックの数字「1」の合計値12が所定値以上(10以上)であるので、格子P8、P12、P13のブロックを消去する処理を行う。
【0068】
以上のように、本実施形態は、プレーヤが数字パネルの数字や色、数字パネルの配置を考慮しながら、ブロックを消去するゲームを行うためのプログラムを提供するものである。
【0069】
また、本実施形態の数字パネルは、1マス×1マスの大きさだけでなく、図4に示すように、2マス×2マスの大きさを有する場合もある。本実施形態では、2マス×2マスの大きさを有する数字パネル22´が選択された場合には、プレーヤの入力情報に基づいて2マス×2マスの4ブロック(例えば格子P7、P8、P12、P13の4ブロック)が指示される。そして、指示された4ブロックに、選択された数字パネルを配置するか否かを判断し、配置された場合には消去するか否かを判断する。
【0070】
なお、図3、4に示すように、本実施形態では、数字選択エリア20に、数字パネル22、22´を簡略して表示させている。
【0071】
(2)配置可能条件
本実施形態では、プレーヤからの入力情報に基づいて指示されたブロックに、選択された数字パネルを配置させることができるか否かを配置可能条件に基づいて判断する。
【0072】
本実施形態では、数字パネルがゲーム空間のいずれのブロックに配置されていない第1の状態と、既に数字パネルがゲーム空間の少なくとも1つのブロックに配置されている第2の状態とにおいて処理が異なるので、それぞれ分けて説明する。
【0073】
まず、第1の状態の場合について説明する。第1の状態では、ゲーム空間の複数のブロックのうち、選択された数字パネルの大きさを有するブロックを、配置可能なブロックとして判断している。
【0074】
例えば、プレーヤが選択した数字パネルの大きさが、1マス×1マスの大きさである場合には、いずれのブロックも1マス×1マスの単位であるので、全てのブロックが配置可能と判断される。
【0075】
また、プレーヤが選択した数字パネルの大きさが、2マス×2マスの大きさである場合には、ゲーム空間のブロックのうち、2マス×2マス分のスペースがある4ブロックを、配置可能なブロックとして判断している。
【0076】
なお、第1の状態は、例えばゲーム開始時の初期状態や、一部のブロックが消去された状態がある。
【0077】
次に、第2の状態の場合について説明する。第2の状態では、ゲーム空間の複数のブロックのうち、選択された数字パネルの大きさを有し、かつ、既に数字パネルが配置されているブロックに隣接するブロックを、配置可能なブロックとして判断している。
【0078】
具体的に、図5(A)(B)を用いて、格子P1〜P25にブロックが存在し、選択された数字パネルの大きさが1マス×1マスの大きさである例について説明する。
【0079】
本実施形態では、図5(A)に示すように、格子P7のブロックに、大きさが1マス×1マスの数字パネル「1」が配置されている場合には、格子P7のブロックに隣接する、格子P2、P6、P8、P12のブロックを、配置可能なブロックとして判断する。例えば、プレーヤからの入力情報に基づき指示されたブロックが、格子P6のブロックである場合には、選択した数字パネル「9」を配置し、指示されたブロックが格子P11のブロックである場合には、選択した数字パネル「9」を配置しない処理を行う。
【0080】
また、本実施形態では、図5(B)に示すように、既に、大きさが2マス×2マスの数字パネルが、格子P7、P8、P12、P13のブロック上に配置されている場合には、格子P7、P8、P12、P13のブロックに隣接する格子P2、P3、P6、P9、P11、P14、P17、P18のブロックを、配置可能なブロックとして判断する。
【0081】
例えば、プレーヤからの入力情報に基づき指示されたブロックが、格子P11のブロックである場合には、選択した数字パネル「9」を配置し、格子P16のブロックである場合には、選択した数字パネル「9」を配置しない処理を行う。
【0082】
次に、図6(A)(B)を用いて、格子P1〜P25にブロックが存在し、選択した数字パネルの大きさが2マス×2マスの大きさである例について説明する。
【0083】
本実施形態では、選択した数字パネルの大きさが2マス×2マスの大きさである場合に、ゲーム空間の複数のブロックのうち、選択された数字パネルの大きさである2マス×2マスのエリアを有し、かつ、そのエリア(2マス×2マスのエリア)の少なくとも1マスが、既に数字パネルが配置されているブロックの少なくとも1マスに隣接するブロックを配置可能ブロックとして、判断している。
【0084】
本実施形態では、図6(A)に示すように、格子P7のブロックに、大きさが1マス×1マスの数字パネル「1」が配置されている場合には、格子P7のブロックに隣接し、2マス×2マスの領域を有するブロックを配置可能なブロックとして判断する。
【0085】
つまり、(格子P3、P4、P8、P9の4ブロック)、(格子P8、P9、P13、P14の4ブロック)、(格子P11、P12、P16、P17の4ブロック)、(格子P12、P13、P17、P18の4ブロック)は、格子P7と隣接し、かつ、2マス×2マスの領域を有する。
【0086】
したがって、これらの格子P3、P4、P8、P9、P11、P12、P13、P14、P16、P17、P18のブロックを配置可能なブロックとして判断する。
【0087】
また、本実施形態では、図6(B)に示すように、既に、大きさが2マス×2マスの数字パネルが、格子P7、P8、P12、P13に配置されている場合には、格子P7、P8、P12、P13のブロックに隣接し、2マス×2マスの領域を有するブロックを配置可能なブロックとして判断する。
【0088】
つまり、(格子P4、P5、P9、P10の4ブロック)、(格子P9、P10、P14、P15の4ブロック)、(格子P14、P15、P19、P20の4ブロック)、(格子P16、P17、P21、P22の4ブロック)、(格子P17、P18、P22、P23の4ブロック)、(格子P18、P19、P23、P24の4ブロック)は、既に数字パネルが配置されたP7、P8、P12、P13の4ブロックに隣接し、かつ、2マス×2マスの領域を有する。したがって、格子P4、P5、P9、P10、P14〜P24のブロックを配置可能なブロックとして判断する。
【0089】
要するに、本実施形態では、第2の状態において、選択された数字パネルの大きさと同じ大きさを有する空きブロック(数字パネルが配置されていないブロック)であって、数字ブロック(既に数字パネルが配置されているブロック)に隣接するブロックを、配置可能ブロックとして判断し、他のブロックを配置不能ブロックと判断する。
【0090】
なお、本実施形態では、ゲーム空間においてブロックでない領域は、数字パネルを配置不能と判断する。例えば、ブロックが存在しない格子や、ブロックが消去された格子は、数字パネルを配置不能と判断する。また、既に数字パネルが配置されているブロックは、数字パネルを配置不能と判断する。
【0091】
そして、本実施形態では、プレーヤからの数字パネルを指示したブロックに配置決定するための入力情報を受け付けると、選択された数字パネルを、カーソルが指示するブロック(数字パネルの大きさが2マス×2マスの場合には、2マス×2マス分のブロック)に配置するか否かを判断する。すなわち、カーソルが指示するブロックが、上述した配置可能なブロックである場合には、選択した数字パネルを配置する処理を行い、カーソルが指示するブロックが、上述した配置不能なブロックである場合には、選択した数字パネルを配置しない処理を行う。
【0092】
(3)配置可能条件を満たすブロックの識別表示
本実施形態では、いずれのブロックに、選択された数字パネルを配置させることが可能なのかを、プレーヤが配置決定入力を行う前に瞬時に理解できるように、配置可能条件を満たすブロックを、他のブロックと識別して表示させる処理を行っている。
【0093】
すなわち、本実施形態では、数字ブロックを数字パネルと対応付けてRGBのいずれかの色で表示を行い、数字ブロック以外のブロックを黒色で表示する。そして、数字選択エリアから数字パネルが選択されると、配置可能条件を満たすブロックの色の明度を上げる処理を行う。つまり、数字ブロック以外のブロックであって配置可能条件を満たさないブロックの色は黒色のまま表示させ、数字ブロック以外のブロックであって配置可能条件を満たすブロックは明度を上げて灰色に(黒色が明度が上がることによって白色に近づく色)、もしくは白色になるように表示させる。
【0094】
このようにすれば、プレーヤは、瞬時に配置可能なブロックを認識することができ、円滑にゲームを進行させることができる。
【0095】
なお、本実施形態では、背景色(ブロックが消去された格子の色も含む)、数字ブロックの色、数字ブロック以外のブロックとを、互いに異なる色相にしている、例えば、背景色はオレンジ色、数字ブロック色はRGBの3色のいずれかの色、数字ブロック以外のブロックの色は黒色としている。
【0096】
また、本実施形態では、数字パネルが配置できるか否かを判断し、数字パネルが配置した後は、色の明度を上げたブロックを元の色に戻す処理を行う。つまり、本実施形態では、プレーヤが数字選択エリアから数字パネルを選択してから配置されるまでの間、配置可能ブロックを識別表示させる処理を行っている。
【0097】
なお、本実施形態では、数字選択エリアから数字パネルが選択された場合に、数字ブロック以外のブロックのうち配置可能なブロックの色を、変更せずにそのままの色で表示させ、数字ブロック以外のブロックのうち配置不能なブロック(配置条件を満たさないブロック)の色を変更して表示させる処理を行うようにしてもよい。
【0098】
例えば、上述したように、数字ブロック以外のブロックを黒色で表示させる場合には、数字選択エリアから数字パネルが選択された際に、配置可能ブロックを黒色のまま表示させ、数字ブロック以外のブロックであって配置不能なブロックを、黒色から背景色(或いは、黒色と背景色をブレンドした色)に変更して表示させる。そして、選択された数字パネルが配置可能なブロックに配置された後は、配置不能ブロックの色を元の色(黒色)に戻す処理を行う。このように、配置不能なブロックの色が変更されることによって、プレーヤは、配置可能なブロックを瞬時に把握することができる。
【0099】
(4)消去条件
本実施形態では、数字パネルが配置可能ブロックに配置されると、続けて消去条件を満たすか否かを判断し、消去条件を満たす複数のブロックを消去する処理を行う。
【0100】
ここで、本実施形態の消去する処理では、消去条件を満たすブロックを、表示上消去したことを意味する画像に変更する処理や、ゲームに影響を与えないようにする処理を行う。
【0101】
消去条件を満たすブロックを、表示上消去したことを意味する画像に変更するでは、例えば、消去条件を満たすブロックを背景色の画像に変更する処理、消去条件を満たすブロックを黒く塗りつぶした画像に変更する処理、或いは、消去条件を満たすブロックを消去印(例えば×印等)に変更する処理等を行う。
【0102】
また、消去条件を満たすブロックをゲームに影響を与えないようにする処理では、例えば、消去条件を満たすブロックを、数字パネルの配置対象から除外する処理を行ったり、消去条件を満たすブロックを、隣接する他のブロックに対してゲーム演算対象から除外させる処理等を行う。
【0103】
本実施形態では、数字パネルが配置されたブロックと、数字パネルが配置されたブロックに隣接する1又は複数の数字ブロックとからなる数字ブロック群の色が同色であって、これらの数字ブロック群の数字の合計値が所定値(例えば10)以上であることを消去条件としている。ここで、数字パネルが配置されたブロックに隣接する複数の数字ブロックとからなる数字ブロック群とは、数字パネルが配置されたブロック(例えば図3に数字パネルが配置された場合には格子P8のブロック)が、既に隣接関係にある数字ブロック群(例えば図3の格子P12、P13の数字ブロック群)のうち、少なくとも1つの数字ブロックと隣接関係にあればよい。
【0104】
例えば、図3に数字パネルが格子P8のブロックに配置された場合には、格子P8の数字ブロックが、隣接関係にある格子P12、P13の数字ブロック群のうち格子P13の数字ブロックと隣接関係にあるので、格子P8、P12、P13の数字ブロック群の色が同色であって、これらの数字ブロック群の数字の合計値が所定値(例えば10)以上である場合に消去される。
【0105】
(5)配置有無の効果音
なお、本実施形態では、配置可能なブロックに、選択された数字パネルが配置決定入力を受け付けた場合の効果音(第1の効果音)と、配置可能なブロックに、選択された数字パネルが配置決定入力を受け付けた場合の効果音(第2の効果音)とを異ならせて出力させている。このようにすれば、プレーヤは聴覚によって、配置有無の結果を知ることができる。
【0106】
3.本実施形態の処理の流れ
本実施形態の、配置可能ブロックを識別表示させる処理の流れについて、図7、8を用いて説明する。
【0107】
(1)数字パネルがブロックに配置されていない第1の状態において、配置可能ブロックを識別表示させる処理について、図7を用いて説明する。
【0108】
まず、数字選択エリアから数字パネルの選択を受け付ける(ステップS10)。次に、選択された数字パネルの大きさが、縦横1×1マスの大きさであるか否かを判断する(ステップS11)。選択された数字パネルの大きさが、縦横1×1マスの大きさであると判断されると(ステップS11のYes)、全てのブロックを明るく表示させる(ステップS12)。
【0109】
一方、選択された数字パネルの大きさが、縦横1×1マスの大きさでないと判断されると(ステップS11のNo)、選択された数字パネルの大きさは縦横2×2マスであるので、縦横2×2マスのスペースがあるブロックを明るく表示させる(ステップS13)。
【0110】
そして、配置可能条件に基づいて選択された数字パネルが配置されると(ステップS14)、明るく表示させたブロックを元に戻す処理を行う(ステップS15)。以上で処理が終了する。
【0111】
(2)既に数字パネルが少なくとも1つのブロックに配置されている第2の状態において、配置可能ブロックを識別表示させる処理について、図8を用いて説明する。
【0112】
まず、数字選択エリアから数字パネルの選択を受け付ける(ステップS20)。次に、選択された数字パネルの大きさが、縦横1×1マスの大きさであるか否かを判断する(ステップS21)。選択された数字パネルの大きさが、縦横1×1マスの大きさであると判断されると(ステップS21のYes)、既に数字パネルが配置されているブロックに隣接するブロックを明るく表示させる(ステップS22)。
【0113】
一方、選択された数字パネルの大きさが、縦横1×1マスの大きさでないと判断されると(ステップS21のNo)、選択された数字パネルの大きさは縦横2×2マスであるので、縦横2×2マスのスペースがあり、かつ、既に数字パネルが配置されているブロックに隣接するブロックを明るく表示させる(ステップS23)。
【0114】
そして、配置可能条件に基づいて選択された数字パネルが配置されると(ステップS24)、明るく表示させたブロックを元に戻す処理を行う(ステップS25)。以上で処理が終了する。
【0115】
4.応用例
(1)本実施形態の数字パネルは、3マス×3マスの大きさ、(縦)1マス×(横)2マスの大きさ、(横)1マス×(縦)2マスの大きさ等であってもよい。
【0116】
(2)本実施形態では、消去条件を満たすブロックを識別できるように表示制御を行ってもよい。このようにすれば、プレーヤに予め消去させるブロックを明示させることができるので、練習用のゲームに活用することができる。
【0117】
(3)本実施形態では、配置可能ブロックを、色の鮮度、色相、α値等によって、他のブロックと識別できるように表示してもよい。
【図面の簡単な説明】
【0118】
【図1】本実施形態の端末の機能ブロック図。
【図2】本実施形態の端末(携帯電話)の一例。
【図3】本実施形態の表示画面の一例。
【図4】本実施形態の表示画面の一例。
【図5】図5(A)(B)は、本実施形態の配置可能ブロックを識別させる表示例。
【図6】図6(A)(B)は、本実施形態の配置可能ブロックを識別させる表示例。
【図7】本実施形態のフローチャート図。
【図8】本実施形態のフローチャート図。
【符号の説明】
【0119】
A1 上方向キー、A2 右方向キー、A3 下方向キー、A4 左方向キー、
B 決定ボタン、P1〜P25 格子、20 数字選択エリア、
22 数字パネル、10 ブロック、
100 処理部、110 ゲーム演算部、
110a 決定部、100b 配置部、
110c 消去部、110d クリア条件判定部、
113 受け付け部、116 表示制御部、
120 描画部、130 音生成部、
160 操作部、170 記憶部、
172 主記憶部、174 描画バッファ、
180 情報記憶媒体、190 表示部、
192 音出力部、196 通信部

【特許請求の範囲】
【請求項1】
ゲーム空間において、複数のマス内の配置可能マスに、オブジェクトを配置させて、所定条件下でマスを消去するゲームのためのプログラムであって、
前記複数のマスを表示する処理を行う表示制御部と、
プレーヤからの入力情報に基づいて、サイズ情報が対応付けられた複数のオブジェクトの中から、所与のオブジェクトの選択を受け付ける処理を行う受け付け部と、
オブジェクトが配置されていないマスであって、既にオブジェクトが配置されているマスに隣接するマスを、配置可能マスとして決定する処理を行う決定部と、
プレーヤからの入力情報に基づいて、選択されたオブジェクトを、配置可能マスに配置する処理を行う配置部と、
選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトが配置されているマスとを、前記所定条件に基づいて消去する消去部として、コンピュータを機能させ、
前記決定部が、
オブジェクトのサイズ情報に基づいて、配置可能マスを決定する処理を行い、
前記表示制御部が、
オブジェクトが選択された際に、配置可能マスを識別表示することを特徴とするプログラム。
【請求項2】
請求項1において、
前記受け付け部が、
サイズ情報が異なる複数のオブジェクトの中から、所与のオブジェクトの選択を受け付ける処理を行い、
前記決定部が、
選択されたオブジェクトのサイズを有するエリアであって、当該エリアの少なくとも1マスが既にオブジェクトが配置されている少なくとも1マスに隣接する場合に、当該エリアを配置可能マスとして決定する処理を行うことを特徴とするプログラム。
【請求項3】
請求項1又は2において、
前記オブジェクトは、数値に対応付けられており、
前記消去部が、
選択されたオブジェクトの数値と、選択されたオブジェクトが配置されたマスに隣接する1又は複数のオブジェクトの各数値との合計値が所定値以上である場合に、選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトとが配置されているマスとを、消去することを特徴とするプログラム。
【請求項4】
請求項1〜3のいずれかにおいて、
前記オブジェクトは、複数の色のうちいずれか1つの色に対応付けられており、
前記消去部が、
選択されたオブジェクトの色と、選択されたオブジェクトが配置されたマスに隣接する1又は複数のオブジェクトの各色とが同色である場合に、選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトとが配置されているマスとを、消去することを特徴とするプログラム。
【請求項5】
コンピュータにより読み取り可能な情報記憶媒体であって、請求項1〜4のいずれかに記載のプログラムを記憶していることを特徴とする情報記憶媒体。
【請求項6】
ゲーム空間において、複数のマス内の配置可能マスに、オブジェクトを配置させて、所定条件下でマスを消去するゲームを行う端末であって、
前記複数のマスを表示する処理を行う表示制御部と、
プレーヤからの入力情報に基づいて、サイズ情報が対応付けられた複数のオブジェクトの中から、所与のオブジェクトの選択を受け付ける処理を行う受け付け部と、
オブジェクトが配置されていないマスであって、既にオブジェクトが配置されているマスに隣接するマスを、配置可能マスとして決定する処理を行う決定部と、
プレーヤからの入力情報に基づいて、選択されたオブジェクトを、配置可能マスに配置する処理を行う配置部と、
選択されたオブジェクトが配置されたマスと、当該マスに隣接する1又は複数のオブジェクトが配置されているマスとを、前記所定条件に基づいて消去する消去部とを含み、
前記決定部が、
オブジェクトのサイズ情報に基づいて、配置可能マスを決定する処理を行い、
前記表示制御部が、
オブジェクトが選択された際に、配置可能マスを識別表示することを特徴とする端末。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate