(57)【要約】【課題】  簡単な処理によってバラエティに富んだ問題画像を生成する。【解決手段】  表示部には画像パターン（ＭＰ１、ＭＰ２）が表示され、画像パターンＭＰ２は種々のサイズで複数表示されている。一方画像パターンＭＰ１は１個だけ表示されている。画像パターンＭＰ２は、種々のサイズに変形され、かつ回転して表示される。  このように、種々のサイズ、回転方向の第２の画像パターンの中に第１の画像パターンが混在する状況において、全体の表示領域を予め定められた複数の分割領域に区分することで、偏り具合を調整することを可能とし、自動生成され、毎回、バラエティに富んだゲームを提供することができる。また、複数の異なる分割パターンを予め用意し、分割領域の形状及び面積に変化を持たせることによって自動生成される問題画像の難易度を調整して問題画像を提供することができる。【選択図】  図１
2008067943.tif 000002
【特許請求の範囲】
【請求項１】
複数の画像パターンを表示手段に表示するためのゲームプログラムであって、
前記画像パターンを設定する画像パターン設定ステップと、
前記表示手段を複数の表示領域に分割する表示領域分割ステップと、
前記画像パターンを前記各表示領域に配置する際に順次配置される領域を割り振る表示領域選択ステップと、
前記画像パターンを前記選択された領域内に配置する画像パターン配置ステップと、
を備えたゲームプログラム。
【請求項２】
前記表示領域分割ステップは、予め設定された所定の領域分割によってなることを備えたゲームプログラム。
【請求項３】
前記画像パターン配置に、重なりを判定するための半径を設定する重なり判定半径設定ステップをさらに備え、
前記画像パターン配置ステップは、前記新たな画像パターンと他の画像パターンとの距離が、前記両画像パターンの重なり判定半径の和より小さいときに、重なりが生じていると判断する、請求項１乃至２のいずれかに記載のゲームプログラム。
【請求項４】
画像パターンを表示する表示手段と、
遊戯者が前記画像パターンを選択するための操作入力手段と、
前記画像パターンを設定する画像パターン設定手段と、
前記表示手段を複数の表示領域に分割する表示領域分割手段と、
前記画像パターンを前記各表示領域に配置する際に順次配置される領域を割り振る表示領域選択手段と、
前記画像パターンを前記選択された領域内に配置する画像パターン配置手段と、
を備えたゲーム装置。
【請求項５】
請求項１乃至３に記載のゲームプログラムをコンピュータに実行させるプログラムコードを含む、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画面に種々の画像パターンよりなる画像を表示する、まちがい探しゲーム等のゲームプログラムおよびゲーム装置に関する。
【背景技術】
【０００２】
近年、まちがい探しゲームが、ぼけ防止等を目的とした、頭脳トレーニングとして注目されている。
【０００３】
そして、まちがい探しゲームに関して、（従来技術１）複数の問題画像を予め準備しておくもの、（従来技術２）正しい画像パターンと類似の画像パターンとをランダムに配列して問題画像を生成するもの、（従来技術３）正しい画像パターンと類似の画像パターンとを所定の規則に従って、拡大、縮小しつつ、ランダムに配列して問題画像を生成するものが存在した。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来技術１は、問題数に等しい問題画像を生成する必要があり、ゲーム開発の負荷が多大であった。
【０００５】
従来技術２は、問題画像生成のために、正しい画像パターンと類似の画像パターンとを自由配列する必要があり、両パターンのサイズは近似したものとなり、問題画像の変化に乏しくなる。このためバラエティあふれる出題ができないという問題があった。
【０００６】
従来技術３は、拡大率・縮小率の変化を大にすると、問題画像における生成する画像パターンの分布に偏りが生じ、拡大率・縮小率の変化を小にすると、生成する問題画像が単調になるという問題があった。
【０００７】
本発明はこのような従来の問題点を解消すべく創案されたもので、簡単な処理によって表示画面の分布の偏りを調整しつつ、バラエティに富んだ問題画像を制御手段によって自動で生成させることを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、複数の画像パターンを表示手段に表示するためのゲームプログラムであって、前記画像パターンを設定する画像パターン設定ステップと、前記表示手段を複数の表示領域に分割する表示領域分割ステップと、前記画像パターンを前記各表示領域に配置する際に順次配置される領域を割り振る表示領域選択ステップと、前記画像パターンを前記選択された領域内に配置する画像パターン配置ステップとを備える。
【０００９】
これによって、簡単な処理によって表示画面の分布の偏りを調整しつつ、バラエティに富んだ問題画像を制御手段によって自動で生成させ得る。
【００１０】
本発明に係るゲームプログラムにおいて、前記表示領域分割ステップは、予め設定された所定の領域分割によってなる。
【００１１】
これによって、好ましい領域分割方法を適宜選択的に適用でき、表示画面の分布の均一性を保証し得る。
【００１２】
本発明に係るゲームプログラムは、前記画像パターン配置に、重なりを判定する為の半径を設定する重なり判定半径設定ステップをさらに備え、前記画像パターン配置ステップは、前記新たな画像パターンと他の画像パターンとの距離が、前記両画像パターンの重なり判定半径の和より小さいときに、重なりが生じていると判断する。
【００１３】
これによって重なりを容易な演算処理によって検出でき、その解消も容易である。
【００１４】
本発明に係るゲーム装置は、画像パターンを表示する表示手段と、遊戯者が前記画像パターンを選択するための操作入力手段と、前記画像パターンを設定する画像パターン設定手段と、前記表示手段を複数の表示領域に分割する表示領域分割手段と、前記画像パターンを前記各表示領域に配置する際に順次配置される領域を割り振る表示領域選択手段と、前記画像パターンを前記選択された領域内に配置する画像パターン配置手段とを備える。
【００１５】
これによって、簡単な処理によって表示画面の分布の偏りを回避しつつ、バラエティに富んだ問題画像を生成し得る。
【発明の効果】
【００１６】
本発明によれば、簡単な処理によって、表示領域全体への表示画像の分布の偏りを調整しつつ、バラエティに富んだ問題画像を制御手段によって自動で生成し得る。
【発明を実施するための最良の形態】
【００１７】
次に本発明に係るゲームプログラムおよびゲーム装置の実施例を図面に基づいて説明する。
【実施例】
【００１８】
［ゲーム装置］
図１は、本発明に係る画像処理装置をゲーム装置に適用した実施例を示す正面図、図２は、図１のゲーム装置を示すブロック図、図３は、図１のゲーム装置における表示部の領域分けを示す正面図、図６は、ゲーム装置で使用される画像パターンの例を示す図、図７は、他の画像パターンを示す図、図１０は選択的に使用される複数の領域分割パターンを示す図である。
【００１９】
図１において、ゲーム装置２０００はいわゆる携帯型のゲーム装置であり、ゲーム装置２０００には、操作ボタン等の操作入力部１１４０および液晶ディスプレイ等の表示部１０３２が設けられている。
【００２０】
表示部１０３２には第１の画像パターンＭＰ１および第２の画像パターンＭＰ２が表示され、画像パターンＭＰ２は種々のサイズでランダムな角度に偏ることなく複数表示されている。一方画像パターンＭＰ１はいずれかのサイズでランダムな角度に１個だけ表示されている。
【００２１】
画像パターンＭＰ１、ＭＰ２は蝶を模した形状を有し、例えば図６の画像パターン６Ａ、６Ｂ、６Ｃ、６Ｄ、６Ｅから選択されている。すなわち、画像パターンＭＰ１として画像パターン６Ｃが選択され、画像パターンＭＰ２として画像パターン６Ｅが選択されている。また画像パターン６Ｃは、種々のサイズに変形され（例えば、３２×３２ピクセル、４０×４０ピクセル、４８×４８ピクセル、５６×５６ピクセル、６４×６４ピクセルの５段階の大小サイズ）、かつ回転して（例えば、基準方向となる角度を基準として２２．５度刻みで１６段階の回転方向）表示される。このように、種々のサイズ、回転方向の第２の画像パターン６Ｃの中に第１の画像パターン６Ｅが混在する状況において、画像パターン６Ｅを捜索することがゲームの目的とされ、きわめて有効な頭脳トレーニングとして評価されている。
【００２２】
なお、画像パターン６Ａ〜６Ｅの選択、変形サイズ、回転方向はゲーム開始時に自動生成され、また、図７に示すように他の種々の画像パターン７Ａ〜７Ｇ（例えば電球を模した画像パターン）も容易されており、毎回、バラエティに富んだゲームを楽しむことができる。
【００２３】
図２において、ゲーム装置（画像処理装置）２０００は、全体を制御するＣＰＵ１０００と、ゲーム装置２０００を起動させるためのプログラムを格納するブートロム１０１０と、ＣＰＵ３０１によって実行されるプログラムやデータを格納するシステムメモリ１０２０と、ＣＰＵ１０００の動作時間を管理するタイマ１０２２とを有する。
【００２４】
ゲーム装置２０００には、表示すべき画像を生成、制御するビデオプロセッサ１０３０と、生成される画像の元となる画像や生成された画像を記憶するグラフィックメモリ１０４０が設けられ、ビデオプロセッサ１０３０は、生成した画像を表示部１０３２に表示する。
【００２５】
ゲーム装置２０００には、音声を生成するオーディオプロセッサ１０７０と、生成される音声のデータを記憶するオーディオメモリ１０８０が設けられ、オーディオプロセッサ１０７０はオーディオメモリ１０８０に記憶されたデータに基づいて音声のデジタル信号を生成し、スピーカ１０７２やヘッドフォン（図示省略）によって音声を出力する。
【００２６】
ゲーム装置２０００には、プログラムデータ等の外部記憶メディアドライブとしてＣＤ−ＲＯＭドライブ１０９０等が設けられ、ドライブ１０９０において記憶メディアに格納されたゲームプログラムやデータをシステムメモリ１０２０、グラフィックメモリ１０４０、オーディオメモリ１０８０に読み込む。
【００２７】
ゲーム装置２０００にはメモリインターフェース１１３０が設けられ、遊戯者が保有するメモリカードＡ、Ｂに対する読み書きが可能である。これによって、各ユーザのゲーム成績、中途で終了したゲームの状態等を登録し得る。
【００２８】
ゲーム装置２０００には、通信インターフェース１１６０を介してモデム１１５０が接続され、ネットワークを介して複数のゲーム装置２０００によるネットワークゲームを実行でき、また、サーバ（図示省略）から、ゲーム成績の統計、各遊戯者順位、種々のイベント等、ゲームに関する種々の情報を取得し得る。
【００２９】
図３に示すように、表示部１０３２は、例えば、４個の表示領域ａ１、ａ２、ａ３、ａ４に分割され、画像パターンＭＰ２の配置決定に際して、ＣＰＵ１０００は、事前に分割された各表示領域（ここではａ１〜ａ４の４つの領域）を循環するように、順次選択しつつ、各表示領域（ａ１〜ａ４）内でランダムに画像パターンＭＰ２の位置を決定する。これによって、画像パターンＭＰ２の分布が均一化され、分布の偏りを防止しうる。
【００３０】
すなわち、領域分けと、各領域への均等割り当てという、比較的簡単な処理によって、各段階のサイズごとの画像パターンが１カ所に偏ることなく、また散らばり具合の調整を行いつつ、バラエティに富んだ問題画像を生成し得る。なお、表示領域の分割個数、分割形状は種々選択可能であるが、一般に、表示領域ａ１〜ａ４自体を均等な面積、形状、配置とするほど、画像パターンＭＰ２の分布を均一化し得る。また、分割される領域の数を多くするほど画像パターンＭＰ２の分布を均一化し得る。
【００３１】
図１０に示すように、複数の領域分割パターンＰ１、Ｐ２、Ｐ３、Ｐ４を予め設定しておき、ゲーム装置２０００において何れの領域分割パターンを用いるか適宜選択してもよい。例えば、領域分割パターンＰ１は、図３と同様の、上下左右均等４分割の表示領域ＤＡ１、ＤＡ２、ＤＡ３、ＤＡ４よりなり、表示領域全体の長方形の四方全体にまんべんなく散らばる一般的なパターンである。領域分割パターンＰ２は、水平３等分割の表示領域ＤＡ１、ＤＡ２、ＤＡ３よりなり、Ｐ１と比較すると若干だが上下方向のどちらかに偏りの出る可能性が高い。領域分割パターンＰ３は、水平３等分割、上下２等分割の表示領域ＤＡ１、ＤＡ２、ＤＡ３、ＤＡ４、ＤＡ５、ＤＡ６よりなり、分割数が多い分、Ｐ１やＰ２よりも更に全体にまんべんなく配置される。領域分割パターンＰ４は、領域分割パターンＰ１の上下左右等分割（ＤＡ１、ＤＡ２、ＤＡ３、ＤＡ４）に加え、中央に４５度傾斜の正方形領域（ＤＡ５）を備える。
【００３２】
この場合、例えば領域分割パターンＰ２と領域分割パターンＰ３を比較すると、Ｐ２を上下方向に更に分割したＰ３のほうが表示領域全体に対する分布の偏差は少なくなるというメリットがある。しかし表示すべき画像パターンの個数が極端に少ない場合、例として５個以下の場合には、領域の番号の若い順から配置を行うとＤＡ６には何も表示されないという不具合が生ずる欠点もある。そのため、表示する画像パターンの個数によっては各領域への配置サイクルの順番をランダムに決定するというような工夫が望ましい。また、図１１のように、例えば表示画面が非常に大きい場合などで、そのままでは画面全体を見回すことが遊戯者にとっては難しく、結果として難易度が高い場合などに調整を行いたい場合には、あえて中心部だけを狭い面積（分割パターンＰ４）にすると、表示領域周辺部分はまばらに、表示領域中心部には密集して画像パターンが表示される。この方式では、分解された各領域ごとの画像パターンの分布密度は領域の面積の大きさに反比例するので、これによって難易度の調整を図ったり、またあえて表示領域の外周側の領域を一様に狭くすることによって周辺部に画像パターンの分布を偏らせるような調整（分割パターンＰ５）を行うことも可能となり、バラエティあふれる画像の表示による出題が可能となる。
【００３３】
さらに、図６の画像パターン６Ｅについて示すように、各画像パターン６Ａ〜６Ｅには、重なり判定判断を行うコリジョン領域ＣＣ（６Ｅ）を決定するコリジョン半径ｒｃ（６Ｅ）が設定され、各画像パターン６Ａ〜６Ｅにのコリジョン領域ＣＣ（６Ａ）〜ＣＣ（６Ｅ）が相互に重ならないように、画像パターンＭＰ１、ＭＰ２の配置が設定される。ここでいうコリジョンとは、各画像パターン同士の重なりを判定するための判定要素という意味である。
【００３４】
これによって、各画像パターンＭＰ１、ＭＰ２の全部または一部が、他の画像パターンＭＰ１、ＭＰ２によって隠蔽されることが防止され、円滑なゲーム進行が保証されている。
【００３５】
第１の画像パターンＭＰ１とされる画像パターン６Ｅには、操作入力部１１４０によって画像パターンＭＰ１を選択するためのピック領域ＰＡ（６Ｅ）が設定され、遊戯者は、画像パターンＭＰ１を発見したときに、画像パターンＭＰ１を指示し得る。ピック領域は画像パターンＭＰ１以外の画像パターンＭＰ２には設けられず、誤った選択に対しては無反応である。これによって無用な検出動作が省略され、ゲームの円滑な進行が図られる。ここでいうピックとは、遊技者が正解と思しき画像をピックアップする際の操作入力が行われた際の判断処理のための要素という意味である。
【００３６】
図７においては、電球の画像パターン７Ｆについて、これを包囲するコリジョン領域ＣＣ（７Ｆ）、コリジョン半径ｒｃ（７Ｆ）、ピック領域ＰＡ（７Ｆ）が設定可能であり、電球および発光を模した画像パターン７Ｂについて、これを包囲するコリジョン領域ＣＣ（７Ｂ）、コリジョン半径ｒｃ（７Ｂ）、ピック領域ＰＡ（７Ｂ）が設定可能である。
［ゲームプログラム］
【００３７】
次に、ゲーム装置２０００で実行されるゲームプログラムについて説明する。
【００３８】
［実施例１］
図４は、本発明に係るゲームプログラムの実施例１を示すフローチャート、図５は、図４におけるコリジョン処理を示すフローチャートである。
【００３９】
図４において、ゲームプログラムは以下の各ステップによって実行される。
【００４０】
ステップＳ４０１：まず、予め定められた表示領域分割パターンのいずれかのパターン（例えばＰ１）に基づいて、各分割領域（例えばａ１〜ａ４）を設定するとともに、画像パターンＭＰ１、ＭＰ２として表示すべき画像パターンを選択し、ステップＳ４０２に進む。
【００４１】
ステップＳ４０２：表示すべき画像パターンＭＰ１、ＭＰ２の連続番号ｉ（０〜Ｎ）、各画像パターンＭＰ１、ＭＰ２を表示すべき表示領域の番号ａ（０〜３）、画像パターン配置処理時間ｔを０に初期化し、ステップＳ４０３に進む。なお画像パターンＭＰ２は、大きなサイズから所定個数ｎ（ｓ）ずつ順次配置される。
【００４２】
ステップＳ４０３：各表示領域における画像パターンＭＰ１またはＭＰ２の位置（例えばコリジョン領域ＣＣの中心）の座標（ｘ、ｙ）、画像パターンＭＰ１またはＭＰ２の回転角ｒｔ、ｉ〜Ｎのいずれの画像パターンを第１の画像パターンＭＰ１とするかを設定する番号ｃｈを乱数ＲＮＤによって設定する。
【００４３】
各表示領域ａ１〜ａ４の幅ｗ、高さｈとするとき、例えばｘ＝ｗ×ＲＮＤ、ｙ＝ｈ×ＲＮＤで算出でき、ｒｔ＝（π／１６）×ＩＮＴ（１５×ＲＮＤ）、ｃｈ＝ＩＮＴ（Ｎ×ＲＮＤ）となる。
【００４４】
ステップＳ４０４：ステップＳ４０３に続いて、各表示領域の座標（ｘ、ｙ）を表示部１０３２全体の座標（ｔｘ、ｔｙ）に変換しておく。各表示領域ａ１〜ａ４の始点（例えば左上の点）の座標を（ｓｘ（ａ）、ｓｙ（ａ））とすると、ｔｘ（ｉ）＝ｓｘ（ａ）＋ｘ、ｔｙ（ｉ）＝ｓｙ（ａ）＋ｙとなる。
【００４５】
ステップＳ４０５：ステップＳ４０４に続いて、図５に基づいて後述するコリジョン処理を実行し、ステップＳ４０６に進む。
【００４６】
ステップＳ４０６：ステップＳ４０５に続いて、コリジョン処理の結果、画像パターン配置処理時間ｔが所定値ｔｍを超えたか否かを判断する。ｔ＞ｔｍのときには、フラグｅｒｒが１に書き換えられる。ｅｒｒ＝１のときにはステップＳ４１３に進み、ｅｒｒ＝０のときにはステップＳ４０７に進む。これによって、画像パターン配置処理が異常に長時間にわたることを防止し、ゲームの円滑な進行を保証する。
【００４７】
ステップＳ４０７：表示領域番号ａが最大値３となったか否か判断する。ａ＝３でないときはステップＳ４０８に進み、ａ＝３のときはステップＳ４０９に進む。
【００４８】
ステップＳ４０８：表示領域番号ａを１進めて、ステップＳ４１０に進む。
【００４９】
ステップＳ４０９：表示領域番号ａを０に戻し、ステップＳ４１０に進む。
【００５０】
ステップＳ４１０：サイズｓで表示すべき画像パターンＭＰ２の個数が所定値ｎ（ｓ）に達したか否かを判断する。画像パターンＭＰ２の個数が所定値ｎ（ｓ）に達したときはステップＳ４１１に進み、画像パターンＭＰ２の個数が所定値ｎ（ｓ）に達していないときはステップＳ４１３にジャンプする。
【００５１】
ステップＳ４１１：サイズｓが最小番号０に達したか否かを判断する。ｓ＝０のときはステップＳ４１３にジャンプし、ｓ＝０でないときはステップＳ４１２に進む。
【００５２】
ステップＳ４１２：サイズｓを１段階小さい番号とし、ステップＳ４１３に進む。
【００５３】
ステップＳ４１３：画像パターン番号ｉを１進めて、ステップＳ４１４に進む。
【００５４】
ステップＳ４１４：画像パターン番号ｉが最大値Ｎに達したか否か判断する。ｉ＝ＮのときはステップＳ４１５に進み、ｉ＝ＮでないときはステップＳ４０３に戻る。
【００５５】
ステップＳ４１５：画像パターン番号ｉを０に戻し、ステップＳ４１６に進む。
【００５６】
ステップＳ４１６：画像パターン番号ｉが第１の画像パターンＭＰ１とすべき番号ｃｈか否か判断する。ｉ＝ｃｈのときはステップＳ４１７に進み、ｉ＝ｃｈでないときはステップＳ４１８に進む。
【００５７】
ステップＳ４１７：画像パターンＭＰ１として選択した画像パターン（図１では６Ｅ）を選択し、ステップＳ４１９に進む。
【００５８】
ステップＳ４１８：画像パターンＭＰ２として選択した画像パターン（図１では６Ｃ）を選択し、ステップＳ４１９に進む。
【００５９】
ステップＳ４１９：画像パターンＭＰ１またはＭＰ２を表示部の座標（ｔｘ（ｉ）、ｔｙ（ｉ））に表示するように、グラフィックメモリ１０４０に書き込み、ステップＳ４２０に進む。
【００６０】
ステップＳ４２０：画像パターン番号ｉを１進めて、ステップＳ４２１に進む。
【００６１】
ステップＳ４２１：画像パターン番号ｉが最大値Ｎに達したか否か判断する。ｉ＝Ｎのときはそのまま処理を終了し、ｉ＝ＮでないときはステップＳ４１６に戻る。
【００６２】
図５において、図４の画像パターンの重なりを判定するコリジョン処理は以下の各ステップによって実行される。
【００６３】
ステップＳ５０１：まず、すでに配置されている画像パターンＭＰ１またはＭＰ２を評価するための番号ｋ、フラグｅｒｒ、後述するカウンタＣＮＴを０に初期化する。
【００６４】
ステップＳ５０２：新たに配置すべき画像パターン番号ｉの画像パターンＭＰ１またはＭＰ２と、比較対象の画像パターン（番号ｋ）との距離（コリジョン領域中心間距離）と、両者のコリジョン半径の和とを比較する。
【００６５】
コリジョン領域中心間距離は（ｘｋ−ｘｉ）２＋（ｙｋ−ｙｉ）２で代表され、コリジョン半径の和はｒｃｋ２＋ｒｃｉ２で与えられる。ステップＳ５０２では、（ｘｋ−ｘｉ）２＋（ｙｋ−ｙｉ）２＜ｒｃｋ２＋ｒｃｉ２の判断を行い、判断結果が真であったときは、コリジョン（重なり）が生じているとみなす。コリジョンが生じたときにはステップＳ５０３に進み、コリジョンが生じていないときはステップＳ５１２に進む。
【００６６】
ステップＳ５０３：カウンタＣＮＴの値を判断する。ＣＮＴ＝０ならば、画像パターンｉの移動によるコリジョン解消が実行され、ＣＮＴ＝１ならば、画像パターンｉの縮小によるコリジョン解消が実行される。ＣＮＴ＝０のとき、ステップＳ５０４に進み、ＣＮＴ＝１のとき、ステップＳ５０６に進む。  
【００６７】
ステップＳ５０４：コリジョンを解消すべく、画像パターンｉを画像パターンｋから遠ざかるように移動する。移動距離は所定値（Δｘ、Δｙ）であり、例えば、Δｘ２＋Δｙ２＝ｒｃｉに設定される。またその移動方向を画像パターンｋから遠ざかる方向に設定するために、（ｘｉ−ｘｋ）が正のときΔｘを正、（ｙｉ−ｙｋ）が正のときΔｙを正とする。すなわち、ｘｉ＝ｘｉ＋ｓｉｇｎ（ｘｉ−ｘｋ）、ｙｉ＝ｙｉ＋ｓｉｇｎ（ｙｉ−ｙｋ）とする。
【００６８】
次にステップＳ５０５に進む。
【００６９】
ステップＳ５０５：ステップＳ５０４で１回のコリジョンを実行したことにより、カウンタＣＮＴ＝１として、ステップＳ５０９に進む。
【００７０】
ステップＳ５０６：画像パターンのサイズが最小ｓ＝０か否か判断する。ｓ＝０のときはステップＳ５０８にジャンプし、ｓ＝０でないときはステップＳ５０８に進む。
【００７１】
ステップＳ５０７：サイズｓを１段階小さくして、ステップＳ５０８に進む。
【００７２】
ステップＳ５０８：カウンタＣＮＴを０に戻して、画像パターン移動の処理を可能とし、ステップＳ５０９に進む。
【００７３】
ステップＳ５０９：ｔ＞ｔｍか否か判断する。ｔ＞ｔｍのときはステップＳ５１０に進み、ｔ＞ｔｍでないときはステップＳ５０２に戻る。
【００７４】
ステップＳ５１０：画像パターンｉについては（ｘ、ｙ）座標にｎｕｌｌ値を代入して、画像パターンを表示せず。ステップＳ５１１に進む。
【００７５】
ステップＳ５１１：フラグｅｒｒに１を代入し、そのまま処理を終了する。
【００７６】
ステップＳ５１２：比較対象の画像パターン番号ｋを１進め、ステップＳ５１３に進む。
【００７７】
ステップＳ５１３：ｋ＝ｉすなわち、すべての比較対象の画像パターンとの比較が完了したか否かを判断する。ｋ＝ｉのときはそのまま処理を終了し、ｋ＝ｉでないときはステップＳ５０２に戻る。
【００７８】
以上のコリジョン処理により、新たな画像パターンの移動または縮小によるコリジョン解消が可能であり、また異常に長時間の処理を中断し得る。
【００７９】
図４、図５の処理では、画像パターンＭＰ１の番号を乱数によって発生したが、ｉ＝０、Ｎのように、あらかじめ特定の番号に設定しておくことも可能である。
【００８０】
また、グラフィックメモリ１０４０に複数の表示プレーンを設け、画像パターンＭＰ１を常に最上位のプレーンに描画し、他の画像パターンをより下位の表示プレーンに描画すれば画像パターンＭＰ１が画像パターンＭＰ２により隠蔽されることを防止でき、画像パターンＭＰ１を発見できない解答不能ゲームの生成を防止し得る。
【００８１】
さらに、処理時間ｔが所定値ｔｍを超えた際、あるいは処理時間ｔが所定値ｔｍを超えて、処理を中断したことによって画像パターン数が不十分（Ｎに対して所定比率以下等）となった際の処理として、あらかじめ作成しておいた画像パターン配置を呼び出して使用することも可能である。
【００８２】
［実施例２］
図８は、本発明に係るゲームプログラムの実施例２を示すフローチャート、図９は、図８におけるはみだし、コリジョン処理を示すフローチャートである。
【００８３】
図８において、実施例２では、実施例１のコリジョン処理Ｓ４０５に換えて、はみだし、コリジョン処理Ｓ８０５を実行し、またｅｒｒ＝１となったときのステップＳ４０６のジャンプ先をステップＳ４０３としている。
【００８４】
はみだし、コリジョン処理Ｓ８０５は、ステップＳ４０５のはみ出し処理に加え、画像パターンの一部が表示部１０３２からはみ出したときに、そのはみ出しを解消する。
【００８５】
また、ステップＳ４０６のジャンプ先をステップＳ４０３としたことにより、所定数の画像パターンを確実に表示し得る。
【００８６】
図９において、ステップＳ５０１〜Ｓ５１３の処理の前に以下のステップＳ９０１〜９０８が実行される。
【００８７】
ステップＳ９０１：まず表示部１０３２全体のｘ座標ｔｘについて、ｔｘ＜ｒｃｉ、すなわち画像パターンの始点側へのはみ出しが無いか否かを判断する。始点側へのはみ出しがあったときはステップＳ９０２に進み、はみ出しが無かったときはステップＳ９０３にジャンプする。
【００８８】
ステップＳ９０２：ｘ座標ｔｘを、コリジョン半径ｒｃｉだけ増加し、画像パターンを表示部中心方向にずらして、はみ出しを解消する。次に、ステップＳ９０３に進む。
【００８９】
ステップＳ９０３：表示部１０３２全体のｘ座標ｔｘについて、ｔｘ＜２ｗ−ｒｃｉ、すなわち画像パターンの始点側と反対側へのはみ出しが無いか否かを判断する。始点側と反対側へのはみ出しがあったときはステップＳ９０４に進み、はみ出しが無かったときはステップＳ９０５にジャンプする。
【００９０】
ステップＳ９０４：ｘ座標ｔｘを、コリジョン半径ｒｃｉだけ減算し、画像パターンを表示部中心方向にずらして、はみ出しを解消する。次に、ステップＳ９０５に進む。
【００９１】
ステップＳ９０５：表示部１０３２全体のｙ座標ｔｙについて、ｔｙ＜ｒｃｉ、すなわち画像パターンの始点側へのはみ出しが無いか否かを判断する。始点側へのはみ出しがあったときはステップＳ９０６に進み、はみ出しが無かったときはステップＳ９０７にジャンプする。
【００９２】
ステップＳ９０６：ｙ座標ｔｙを、コリジョン半径ｒｃｉだけ増加し、画像パターンを表示部中心方向にずらして、はみ出しを解消する。次に、ステップＳ９０７に進む。
【００９３】
ステップＳ９０７：表示部１０３２全体のｘ座標ｔｘについて、ｔｙ＜２ｈ−ｒｃｉ、すなわち画像パターンの始点側と反対側へのはみ出しが無いか否かを判断する。始点側と反対側へのはみ出しがあったときはステップＳ９０８に進み、はみ出しが無かったときはステップＳ５０１にジャンプする。
【００９４】
ステップＳ９０８：ｙ座標ｔｙを、コリジョン半径ｒｃｉだけ減算し、画像パターンを表示部中心方向にずらして、はみ出しを解消する。次に、ステップＳ５０１に進む。
【００９５】
以上の処理により画像パターンのはみ出しを完全に解消でき、不鮮明な問題や解答不能の問題生成を防止できる。
【００９６】
図２のゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０，ビデオディスプレイプロセッサ１０３０、グラフィックメモリ１０４０、表示部１０３２は、協働して表示手段として機能する。
【００９７】
ゲーム装置２０００において、操作入力部１１４０は、前記第１の画像パターンＭＰ１を選択するための操作入力手段として機能する。
【００９８】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０は協働して、前記第１、第２の画像パターンを設定する画像パターン設定手段として機能する。
【００９９】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０は協働して、前記表示手段を複数の表示領域に分割する表示領域分割手段として機能する。
【０１００】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０は協働して、前記第２の画像パターンを前記各表示領域に順次割り振る表示領域選択手段として機能する。
【０１０１】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０は協働して、前記第２の画像パターンを前記選択された領域内で、ランダムに配置する第２画像パターン配置手段として機能する。
【０１０２】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０は協働して、前記第１の画像パターンを前記いずれかの表示領域内で、ランダムに配置する第１画像パターン配置手段として機能する。
【０１０３】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０は協働して、前記第１または第２画像パターン配置手段によって新たに配置された、前記第１または第２の画像パターンが、他の第１または第２の画像パターンと重なったか否かを判断する重なり判断手段として機能する。
【０１０４】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０は協働して、前記新たに配置された前記第１または第２の画像パターンを、当該他の第１または第２の画像パターンから遠ざかるように移動させる、画像パターン移動手段として機能する。
【０１０５】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０は協働して、前記第１または第２画像パターン配置手段によって新たに配置された、前記第１または第２の画像パターンが、他の第１または第２の画像パターンと重なったか否かを判断する重なり判断手段として機能する。
【０１０６】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０，ビデオディスプレイプロセッサ１０３０、グラフィックメモリ１０４０、表示部１０３２は、協働して、前記新たに配置された前記第１または第２の画像パターンを縮小する画像パターン縮小手段として機能する。
【０１０７】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０，タイマ１０２２は、協働して、前記第１、第２の画像パターンを配置する処理時間を計測する処理時間計測手段として機能する。
【０１０８】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０は協働して、前記第１、第２の画像パターン配置が完了する前に、前記処理時間が所定値を超えたときに、前記第１、第２画像パターンの配置を終了する中途終了手段として機能する。
【０１０９】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０，ビデオディスプレイプロセッサ１０３０、グラフィックメモリ１０４０、表示部１０３２は、協働して、前記第１または第２の画像パターン配置手段によって新たに配置された、前記第１または第２の画像パターンの一部が、前記表示領域または表示手段からはみ出したときに、新たに配置された前記第１または第２の画像パターンを、前記表示領域または表示手段の内側に向かって移動させる画像パターン移動手段として機能する。
【０１１０】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０，ビデオディスプレイプロセッサ１０３０、グラフィックメモリ１０４０、表示部１０３２は、協働して、前記第１の画像パターンに、遊戯者が当該第１の画像パターンを選択するためのピック領域を設定するピック領域設定手段として機能する。
【０１１１】
ゲーム装置２０００において、ＣＰＵ１０００、システムメモリ１０２０，ビデオディスプレイプロセッサ１０３０、グラフィックメモリ１０４０、表示部１０３２は、協働して、前記第１、第２の画像パターンに、重なり半径を設定するコリジョン半径設定手段として機能する。
【０１１２】
以上の実施例は主に携帯型のゲーム装置について説明したが、パーソナルコンピュータや携帯電話上で実行されるゲームプログラムに本発明に係るゲームプログラムを適用でき、またゲームセンタに設置される大型のゲーム機に本発明に係るゲーム装置、ゲームプログラムを適用し得ることはいうまでもない。
【０１１３】
なおパーソナルコンピュータ等に本発明に係るゲームプログラムを導入する際には、コンピュータ読み取り可能な記憶媒体や通信媒体によって、コンピュータがゲームプログラムを実行するためのプログラムコードをシステムメメモリ１０２０に読み込む。
【図面の簡単な説明】
【０１１４】
【図１】本発明に係るゲーム装置の実施例を示す正面図である。
【図２】図１のゲーム装置を示すブロック図である。
【図３】図１のゲーム装置における表示部の領域分けを示す正面図である。
【図４】本発明に係るゲームプログラムの実施例１を示すフローチャートである。
【図５】図４におけるコリジョン処理を示すフローチャートである。
【図６】本発明に係るゲームプログラムの実施例１に使用される画像パターンの例を示す図である。
【図７】本発明に係るゲームプログラムの実施例１に使用される他の画像パターンの例を示す図である。
【図８】本発明に係るゲームプログラムの実施例２を示すフローチャートである。
【図９】図８におけるコリジョン処理を示すフローチャートである。
【図１０】本発明に係る表示部の領域分けパターンの複数の例である。
【図１１】本発明に係る異なる面積比、形状を用いた場合での画像パターンの分布の調整概念図の例である。
【符号の説明】
【０１１５】
１０００  ＣＰＵ
１０２０  システムメモリ
１０３０  ビデオディスプレイプロセッサ
１０４０  グラフィックメモリ
２０００  ゲーム装置
１０３２  表示部
１０７２  操作入力部
【図１】
2008067943.tif 000003
【図２】
2008067943.tif 000004
【図３】
2008067943.tif 000005
【図４】
2008067943.tif 000006
【図５】
2008067943.tif 000007
【図６】
2008067943.tif 000008
【図７】
2008067943.tif 000009
【図８】
2008067943.tif 000010
【図９】
2008067943.tif 000011
【図１０】
2008067943.tif 000012
【図１１】
2008067943.tif 000013