(57)【要約】【課題】プレイヤの直感的な操作でキャラクタの位置及び方向並びに仮想カメラの位置及び方向を制御しつつ、表示される画像に一定の変化を加える。【解決手段】カード配置パネル１３に載置されたキャラクタカード２０ａの位置を変えずに方向を変化させた場合、一定速度未満で方向変化させたのであればキャラクタ２００ａの方向もキャラクタカード２０ａの方向変化に応じて変化し、キャラクタ２００ａの方向変化に応じて、視軸を常にキャラクタ２００ａに向ける仮想カメラの視点３０３が周回移動する。一方、キャラクタカード２０ａを一定速度以上で方向変化させた場合、視点３０３だけが周回移動し、キャラクタ２００ａの方向は変化しない。カード配置パネル１３上でキャラクタカード２０ａの位置を移動させた場合、キャラクタカード２０ａの方向に関わらずにキャラクタ２００ａは進行方向を向いて、キャラクタカード２０ａが移動した位置に応じて移動する。【選択図】図４
2008212209.tif 000002
【特許請求の範囲】
【請求項１】
プレイヤからの指示に応じて動作するキャラクタが存在する仮想３次元空間を仮想カメラから仮想スクリーン上に透視変換することにより得られたゲーム画面を表示装置に表示させるゲーム装置であって、
前記仮想３次元空間の高さ方向に垂直な仮想２次元平面に対応する平面上に、プレイヤの操作により位置および／または方向が変化させられるカードを配置するカード配置手段と、
前記カード配置手段に配置されたカードの位置及び方向を検出するカード検出手段と、
前記カード検出手段により検出されたカードの位置及び方向に応じて、前記キャラクタの位置及び方向を制御するキャラクタ制御手段と、
前記カード検出手段により検出されたカードの位置及び方向に応じて、前記キャラクタの位置を参照点としつつ前記仮想カメラの視点の位置及び視軸の方向を制御する仮想カメラ制御手段と、
前記仮想カメラ制御手段の制御により視点の位置及び視軸の方向が定められた前記仮想カメラから前記仮想スクリーン上に前記仮想３次元空間を透視変換し、前記表示装置に表示させるための２次元画像を生成する透視変換手段と、
前記透視変換手段により生成された２次元画像を前記表示装置に画面表示させる表示制御手段とを備え、
前記キャラクタ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、前記キャラクタの方向を変化させず、
前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、該カードの方向の変化に応じて前記視軸の方向が変化させられるように前記視点の位置を前記キャラクタを中心に周回移動させる
ことを特徴とするゲーム装置。
【請求項２】
前記キャラクタ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、該カードの方向が一定速度の範囲内で変化している場合には前記キャラクタの方向を変化させず、該カードの方向が前記一定速度の範囲外で変化している場合には該カードの方向の変化に応じて該キャラクタの方向を変化させる
ことを特徴とする請求項１に記載のゲーム装置。
【請求項３】
前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、該カードの方向が前記一定速度の範囲外であって所定速度の範囲内で変化している場合には前記視点の位置を周回移動させず、該カードの方向が前記一定速度の範囲外であって前記所定速度の範囲外で変化している場合には該カードの方向の変化に応じて該視点の位置を周回移動させる
ことを特徴とする請求項２に記載のゲーム装置。
【請求項４】
前記キャラクタ制御手段は、前記カード検出手段により検出されたカードの位置が移動しているときに、該検出されたカードの方向に関わらずに該カードの位置が移動する方向へ向けて前記キャラクタの位置を移動させるとともに、該キャラクタの位置が移動している際に該キャラクタの向いている方向を該キャラクタの位置が移動する方向に制御する
ことを特徴とする請求項１乃至３のいずれか１項に記載のゲーム装置。
【請求項５】
前記キャラクタ制御手段は、前記カードの位置の移動に応じた前記キャラクタの位置の移動が終了した後に、前記キャラクタの方向を該カードの位置の移動が終了した時点での該カードの方向に応じた方向に変化させる
ことを特徴とする請求項４に記載のゲーム装置。
【請求項６】
前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が移動しているときに、該検出されたカードの方向に関わらずに前記視軸の方向を一定の方向に維持しつつ該カードの位置が移動する方向へ向けて前記視点の位置を移動させる
ことを特徴とする請求項４または５に記載のゲーム装置。
【請求項７】
前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が移動しているときに、前記視軸の方向が該検出されたカードの方向に関わらずに前記キャラクタの向いている方向に応じた方向となるように前記視点の位置を移動させる
ことを特徴とする請求項４または５に記載のゲーム装置。
【請求項８】
前記仮想カメラ制御手段は、前記カードの位置の移動に応じた前記キャラクタの位置の移動が終了した後に、前記視軸の方向が該カードの位置の移動が終了した時点での該カードの方向に応じた方向となるように前記視点の位置を移動させる
ことを特徴とする請求項６または７に記載のゲーム装置。
【請求項９】
前記カード配置手段は、複数のカードをそれぞれ任意の位置及び方向で配置し、
前記カード検出手段は、前記複数のカードのうちでプレイヤにより最後に操作されたカードを判別する操作カード判別手段を含み、
前記カード制御手段は、前記操作カード判別手段により最後に操作されと判別されたカードであるか否かに関わらず、前記複数のカードの位置及び方向に応じて、各々のカードに対応するキャラクタの位置及び方向を制御し、
前記仮想カメラ制御手段は、前記操作カード判別手段により最後に操作されたと判別されたカードの位置及び方向に応じて、該最後に操作されたカードに対応するキャラクタの位置を参照点としつつ前記仮想カメラの視点の位置及び視軸の方向を制御する
ことを特徴とする請求項１乃至８のいずれか１項に記載のゲーム装置。
【請求項１０】
前記カード配置手段は、前記キャラクタを識別可能な情報を記録した物理的なカードを載置するカード載置台から構成され、
前記ゲーム装置は、前記カード載置台に載置されたカードに記録された情報を読み取るカード情報読取手段をさらに備え、
前記カード検出手段は、前記カード情報読取手段により読み取られた情報に従って、前記カードの位置及び方向を検出する
ことを特徴とする請求項１乃至９のいずれか１項に記載のゲーム装置。
【請求項１１】
前記カード配置手段は、前記カードとして前記キャラクタに対応して用意された仮想カードを、タッチパネルが前面に配置された前記表示装置とは異なる第２表示装置上に表示させる仮想カード表示手段から構成され、
前記ゲーム装置は、プレイヤによる前記タッチパネルの操作に応じて前記第２表示装置に表示されている仮想カードの位置及び方向を変化させる仮想カード制御手段をさらに備え、
前記カード検出手段は、前記第２表示装置に表示されている仮想カードの位置及び方向を検出する
ことを特徴とする請求項１乃至９のいずれか１項に記載のゲーム装置。
【請求項１２】
プレイヤからの指示に応じて動作するキャラクタが存在する仮想３次元空間を仮想カメラから仮想スクリーン上に透視変換することにより得られたゲーム画面を表示装置に表示させるゲームにおけるキャラクタ及び仮想カメラの制御方法であって、
前記仮想３次元空間の高さ方向に垂直な仮想２次元平面に対応する平面上に、プレイヤの操作により任意の位置及び方向で配置されたカードの位置及び方向を検出し、該検出したカードの位置及び方向を記憶装置に記憶し、
少なくとも前記カードの位置が実質的に変化することなく該カードの方向が変化しているときには前記キャラクタの方向を変化させないように、前記記憶装置に記憶されたカードの位置及び方向に応じて前記キャラクタの位置及び方向を制御し、
少なくとも前記カードの位置が実質的に変化することなく該カードの方向が変化しているときには該カードの方向の変化に応じて前記視点の位置を前記キャラクタを中心に周回移動させつつ前記視軸の方向が変化させられるように、前記記憶装置に記憶されたカードの位置及び方向に応じて前記キャラクタの位置を参照点としつつ前記仮想カメラの視点の位置及び視軸の方向を制御し、
前記視点の位置及び視軸の方向が定められた前記仮想カメラから前記仮想スクリーン上に前記仮想３次元空間を透視変換し、前記表示装置に表示させるための２次元画像を生成し、
前記生成された２次元画像を表示装置に画面表示させる
ことを特徴とするキャラクタ及び仮想カメラの制御方法。
【請求項１３】
プレイヤからの指示に応じて動作するキャラクタが存在する仮想３次元空間を仮想カメラから仮想スクリーン上に透視変換することにより得られたゲーム画面を表示装置に表示させるゲームをコンピュータ装置に実行させるためのプログラムであって、
前記仮想３次元空間の高さ方向に垂直な仮想２次元平面に対応する平面上に、プレイヤの操作により位置および／または方向が変化させられるカードを配置するカード配置手段と、
前記カード配置手段に配置されたカードの位置及び方向を検出するカード検出手段と、
前記カード検出手段により検出されたカードの位置及び方向に応じて、前記キャラクタの位置及び方向を制御するキャラクタ制御手段と、
前記カード検出手段により検出されたカードの位置及び方向に応じて、前記キャラクタの位置を参照点としつつ前記仮想カメラの視点の位置及び視軸の方向を制御する仮想カメラ制御手段と、
前記仮想カメラ制御手段の制御により視点の位置及び視軸の方向が定められた前記仮想カメラから前記仮想スクリーン上に前記仮想３次元空間を透視変換し、前記表示装置に表示させるための２次元画像を生成する透視変換手段と、
前記透視変換手段により生成された２次元画像を前記表示装置に画面表示させる表示制御手段として前記コンピュータ装置を機能させ、
前記キャラクタ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、前記キャラクタの方向を変化させず、
前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、該カードの方向の変化に応じて前記視軸の方向が変化させられるように前記視点の位置を前記キャラクタを中心に周回移動させる
ことを特徴とするプログラム。
【請求項１４】
請求項１３に記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、キャラクタが存在する仮想３次元空間を仮想カメラにより透視変換することで得られた画面を表示するゲームにおいて、プレイヤが操作するカードの位置及び方向に応じてキャラクタ及び仮想カメラを制御するための技術に関する。
ゲーム装置に関する。
【背景技術】
【０００２】
３次元ビデオゲームは、仮想３次元空間に存在するオブジェクトを仮想カメラにより仮想スクリーン上に透視変換し、該透視変換により生成された２次元画像を表示装置に表示する。このような３次元ビデオゲームは、一般に、プレイヤの操作によりプレイヤキャラクタを仮想３次元空間において移動させることで進められる。プレイヤキャラクタは、必要に応じてプレイヤの操作により方向転換させられる。つまり、プレイヤキャラクタの位置及び方向を変えるためのプレイヤの操作が、ゲームにとって不可欠な要素となっている。
【０００３】
また、３次元ビデオゲームの中には、ゲームを進めるに当たってカードを利用するカードゲームがある。このような３次元ビデオゲームとして、キャラクタに関する情報がカード面に記録されたカードをフラットリーダ上に載置し、カード面に記録された情報をゲーム機において読み取って、ゲームを進行させるものがあった。このビデオゲームでは、載置されたカードに対応するプレイヤキャラクタが、カードの操作というプレイヤの直感的な操作に応じて動かされるものとなっている（例えば、特許文献１参照）。
【０００４】
【特許文献１】特開２００２−３０１２６４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、上記のような３次元ビデオゲームにおけるゲームの臨場感を高めるためには、単にプレイヤキャラクタをどのような位置や方向に制御するかだけではなく、とりわけプレイヤキャラクタの様子を画面上に映し出すための仮想カメラの視点の制御が重要になってくる。従来の３次元ビデオゲームでは、この仮想カメラの制御は、プレイヤキャラクタの動作に完全に追随させたり、あるいは、プレイヤキャラクタの位置に応じて複数ポイントの何れかのポイントに切り替えるなど、自動的に行われるものとしていた。
【０００６】
もっとも、プレイヤキャラクタの位置および／または方向を変化させるための操作とは別の操作で、仮想カメラの視点の位置や視軸の方向を制御できるようにした３次元ビデオゲームもある。しかしながら、仮想カメラの視点の位置や視軸の方向の制御は、ゲームパッドに配置されたジョイスティックやボタンなどの操作によって指示するものとしており、直感的な操作で仮想カメラの制御を指示することは難しかった。
【０００７】
本発明は、プレイヤの直感的な操作でキャラクタの位置及び方向並びに仮想カメラの位置及び方向を制御しつつ、表示される画像に一定の変化を加えることのできるゲーム装置等を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の第１の観点にかかるゲーム装置は、プレイヤからの指示に応じて動作するキャラクタが存在する仮想３次元空間を仮想カメラから仮想スクリーン上に透視変換することにより得られたゲーム画面を表示装置に表示させるゲーム装置であって、前記仮想３次元空間の高さ方向に垂直な仮想２次元平面に対応する平面上に、プレイヤの操作により位置および／または方向が変化させられるカードを配置するカード配置手段と、前記カード配置手段に配置されたカードの位置及び方向を検出するカード検出手段と、前記カード検出手段により検出されたカードの位置及び方向に応じて、前記キャラクタの位置及び方向を制御するキャラクタ制御手段と、前記カード検出手段により検出されたカードの位置及び方向に応じて、前記キャラクタの位置を参照点としつつ前記仮想カメラの視点の位置及び視軸の方向を制御する仮想カメラ制御手段と、前記仮想カメラ制御手段の制御により視点の位置及び視軸の方向が定められた前記仮想カメラから前記仮想スクリーン上に前記仮想３次元空間を透視変換し、前記表示装置に表示させるための２次元画像を生成する透視変換手段と、前記透視変換手段により生成された２次元画像を前記表示装置に画面表示させる表示制御手段とを備え、前記キャラクタ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、前記キャラクタの方向を変化させず、前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、該カードの方向の変化に応じて前記視軸の方向が変化させられるように前記視点の位置を前記キャラクタを中心に周回移動させることを特徴とする。
【０００９】
上記第１の観点にかかるゲーム装置において、キャラクタの位置及び方向と、視点の位置及び視軸の方向とは、カードの位置及び方向を変化させるというプレイヤの直感的な操作に従って制御される。もっとも、プレイヤの操作によってカードの方向だけが変化させられたときに、キャラクタの方向は変わらない。これに対して、視点の位置は、カードの方向の変化に応じて視軸の方向が変化されるように、該キャラクタを中心に周回するものとなる。このように、プレイヤは、カードの位置を変化させずにその場で方向だけを変化させることよって、視点の位置及び視軸の方向だけを変え、所望の角度からキャラクタを撮影したゲーム画面に表示させることができる。
【００１０】
上記ゲーム装置において、前記キャラクタ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、該カードの方向が一定速度の範囲内で変化している場合には前記キャラクタの方向を変化させず、該カードの方向が前記一定速度の範囲外で変化している場合には該カードの方向の変化に応じて該キャラクタの方向を変化させるものとすることができる。
【００１１】
この場合、プレイヤの操作によってカードの方向が一定速度の範囲外で変化させられたときには、キャラクタの方向もカードの方向の変化に応じて変化するものとなる。一方、プレイヤの操作によって、カードの方向が一定速度の範囲内で変化させられたときには、キャラクタの方向が変化しないものとなる。プレイヤは、カードの方向を変えるという１つの操作の速度を使い分けることで、視点の位置及び視軸の方向を変えるのと同時にキャラクタの方向を変える及び変えないという２つの指示を入力することができ、操作性が向上するものとなる。
【００１２】
ここで、前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、該カードの方向が前記一定速度の範囲外であって所定速度の範囲内で変化している場合には前記視点の位置を周回移動させず、該カードの方向が前記一定速度の範囲外であって前記所定速度の範囲外で変化している場合には該カードの方向の変化に応じて該視点の位置を周回移動させるものとすることもできる。
【００１３】
この場合、プレイヤの操作によってカードの方向が一定速度の範囲外であって所定速度の範囲外で変化させられたときには、視点の位置はカードの方向の変化に応じて周回移動するものとなる。一方、プレイヤの操作によってカードの方向が一定速度の範囲外であって所定速度の範囲内で変化させられたときには、視点の位置も周回移動しないものとなる。プレイヤは、カードの方向を変えるという１つの操作の速度を使い分けることで、キャラクタの方向を変えるのとともに視点の位置を周回移動させる、キャラクタの方向を変えるが視点の位置を周回移動させない、キャラクタの方向を変えずに視点の位置を周回移動させるという３つの指示を入力することができ、操作性が向上するものとなる。
【００１４】
上記ゲーム装置において、前記キャラクタ制御手段は、前記カード検出手段により検出されたカードの位置が移動しているときに、該検出されたカードの方向に関わらずに該カードの位置が移動する方向へ向けて前記キャラクタの位置を移動させるとともに、該キャラクタの位置が移動している際に該キャラクタの向いている方向を該キャラクタの位置が移動する方向に制御するものとすることができる。
【００１５】
この場合、キャラクタの位置及び方向と、視点の位置及び視軸の方向とは、本来、カードの位置及び方向に応じて制御されることとなるが、プレイヤの操作によって、カードの位置が移動させられた場合、キャラクタの位置は、該カードの位置が移動する方向に向けて移動する。この際に、キャラクタの方向は、カードの方向に応じた方向ではなく、進行方向（すなわち、カードの位置が移動する方向）を向くものとなる。このように、移動途中のキャラクタの方向を、カードの方向に関わらずに進行方向に向けることで、ゲーム画面におけるキャラクタの表示が不自然なものとならない。
【００１６】
また、前記キャラクタ制御手段は、前記カードの位置の移動に応じた前記キャラクタの位置の移動が終了した後に、前記キャラクタの方向を該カードの位置の移動が終了した時点での該カードの方向に応じた方向に変化させるものとすることもできる。
【００１７】
この場合、プレイヤの操作によって、カードの位置の移動に応じたキャラクタの位置の移動が終了した後に、キャラクタの方向は、移動の終了したカードの方向に応じた方向に変化するものとなる。従って、キャラクタの方向は、移動途中ではカードの方向とは無関係な方向とされるものの、最終的にはカードの方向に応じた方向に制御されるので、プレイヤのカード操作（ここでは、方向の変更操作）を尊重することができる。
【００１８】
この場合において、前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が移動しているときに、該検出されたカードの方向に関わらずに前記視軸の方向を一定の方向に維持しつつ該カードの位置が移動する方向へ向けて前記視点の位置を移動させるものとすることもできる。
【００１９】
この場合、プレイヤの操作によってカードの位置が移動させられると、視点の位置は、視軸の方向を維持しつつカードの位置が移動する方向へ向けて移動するものとなる。従って、キャラクタの移動途中において視点の位置は、カードの位置に応じた制御とすることができる。また、キャラクタの位置も視点の位置もカードの位置の移動に応じて移動する（つまり、平行移動する）ので、視軸を一定の方向に制御すれば、視点の位置及び視軸の方向をキャラクタの位置及び方向に対して特定の位置に定めなくても、不自然なものとはならない。
【００２０】
また、この場合において、前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が移動しているときに、前記視軸の方向が該検出されたカードの方向に関わらずに前記キャラクタの向いている方向に応じた方向となるように前記視点の位置を移動させるものとすることもできる。
【００２１】
この場合、プレイヤの操作によってカードの位置が移動させられると、視軸の方向がキャラクタの向いている方向に応じた方向となるように視点の位置が移動することとなる。従って、キャラクタの移動途中において、視点の位置及び視軸の方向は、キャラクタの位置及び方向に応じて制御されるので、キャラクタを一定の方向から見た画像を表示させることができる。
【００２２】
さらに、前記仮想カメラ制御手段は、前記カードの位置の移動に応じた前記キャラクタの位置の移動が終了した後に、前記視軸の方向が該カードの位置の移動が終了した時点での該カードの方向に応じた方向となるように前記視点の位置を移動させるものとすることもできる。
【００２３】
この場合、視軸の方向は、カードの位置の移動が終了した後に、カードの方向に応じた方向を向くこととなる。従って、視軸の方向は、キャラクタの移動途中ではカードの方向とは無関係な方向とされるものの、最終的にはカードの方向に応じた方向に制御されるので、プレイヤのカード操作（ここでは、方向の変更操作）を尊重することができる。
【００２４】
上記ゲーム装置において、前記カード配置手段は、複数のカードをそれぞれ任意の位置及び方向で配置し、前記カード検出手段は、前記複数のカードのうちでプレイヤにより最後に操作されたカードを判別する操作カード判別手段を含み、前記カード制御手段は、前記操作カード判別手段により最後に操作されと判別されたカードであるか否かに関わらず、前記複数のカードの位置及び方向に応じて、各々のカードに対応するキャラクタの位置及び方向を制御し、前記仮想カメラ制御手段は、前記操作カード判別手段により最後に操作されたと判別されたカードの位置及び方向に応じて、該最後に操作されたカードに対応するキャラクタの位置を参照点としつつ前記仮想カメラの視点の位置及び視軸の方向を制御するものとすることができる。
【００２５】
この場合、プレイヤにより最後に操作されたカードは、プレイヤが現時点で最も操作したいキャラクタに対応するカードと考えることができる。また、最後に操作されたカードでなくとも、操作したカードについて、プレイヤが対応するキャラクタを動作させたいと考えることができる。従って、視点の位置及び視軸の方向は、最後に操作されたカードの位置及び方向に応じて制御するものの、キャラクタの位置及び方向は、対応するカードが最後に操作されたか否かに関わらずに操作されたカードの位置及び方向に応じて制御することで、できる限りプレイヤの所望するゲーム画面を表示装置に表示させることができるものとなる。
【００２６】
上記ゲーム装置において、前記カード配置手段は、前記キャラクタを識別可能な情報を記録した物理的なカードを載置するカード載置台から構成され、前記ゲーム装置は、前記カード載置台に載置されたカードに記録された情報を読み取るカード情報読取手段をさらに備えていてもよい。この場合、前記カード検出手段は、前記カード情報読取手段により読み取られた情報に従って、前記カードの位置及び方向を検出するものとすることができる。
【００２７】
この場合、プレイヤは、複雑な操作をすることなく、キャラクタに対応するカードを所望の位置に配置し、所望の方向に向けることができる。また、プレイヤが所持しているカードの種類が多いほど、使用可能なキャラクタの選択肢が増えることとなる。これにより、単にゲームをプレイするという楽しみだけではなく、ゲームに用いるカードを収集するという楽しみも生じるようになる。
【００２８】
上記ゲーム装置において、記カード配置手段は、前記カードとして前記キャラクタに対応して用意された仮想カードを、タッチパネルが前面に配置された前記表示装置とは異なる第２表示装置上に表示させる仮想カード表示手段から構成され、前記ゲーム装置は、プレイヤによる前記タッチパネルの操作に応じて前記第２表示装置に表示されている仮想カードの位置及び方向を変化させる仮想カード制御手段をさらに備えていてもよい。この場合、前記カード検出手段は、前記第２表示装置に表示されている仮想カードの位置及び方向を検出するものとすることができる。
【００２９】
この場合、プレイヤは、キャラクタに対応するカードを別に用意することなく、ゲームを楽しめるものとなる。
【００３０】
上記目的を達成するため、本発明の第２の観点にかかるキャラクタ及び仮想カメラの制御方法は、プレイヤからの指示に応じて動作するキャラクタが存在する仮想３次元空間を仮想カメラから仮想スクリーン上に透視変換することにより得られたゲーム画面を表示装置に表示させるゲームにおけるキャラクタ及び仮想カメラの制御方法であって、前記仮想３次元空間の高さ方向に垂直な仮想２次元平面に対応する平面上に、プレイヤの操作により任意の位置及び方向で配置されたカードの位置及び方向を検出し、該検出したカードの位置及び方向を記憶装置に記憶し、少なくとも前記カードの位置が実質的に変化することなく該カードの方向が変化しているときには前記キャラクタの方向を変化させないように、前記記憶装置に記憶されたカードの位置及び方向に応じて前記キャラクタの位置及び方向を制御し、少なくとも前記カードの位置が実質的に変化することなく該カードの方向が変化しているときには該カードの方向の変化に応じて前記視点の位置を前記キャラクタを中心に周回移動させつつ前記視軸の方向が変化させられるように、前記記憶装置に記憶されたカードの位置及び方向に応じて前記キャラクタの位置を参照点としつつ前記仮想カメラの視点の位置及び視軸の方向を制御し、前記視点の位置及び視軸の方向が定められた前記仮想カメラから前記仮想スクリーン上に前記仮想３次元空間を透視変換し、前記表示装置に表示させるための２次元画像を生成し、前記生成された２次元画像を表示装置に画面表示させることを特徴とする。
【００３１】
上記目的を達成するため、本発明の第３の観点にかかるプログラムは、プレイヤからの指示に応じて動作するキャラクタが存在する仮想３次元空間を仮想カメラから仮想スクリーン上に透視変換することにより得られたゲーム画面を表示装置に表示させるゲームをコンピュータ装置に実行させるためのプログラムであって、前記仮想３次元空間の高さ方向に垂直な仮想２次元平面に対応する平面上に、プレイヤの操作により位置および／または方向が変化させられるカードを配置するカード配置手段と、前記カード配置手段に配置されたカードの位置及び方向を検出するカード検出手段と、前記カード検出手段により検出されたカードの位置及び方向に応じて、前記キャラクタの位置及び方向を制御するキャラクタ制御手段と、前記カード検出手段により検出されたカードの位置及び方向に応じて、前記キャラクタの位置を参照点としつつ前記仮想カメラの視点の位置及び視軸の方向を制御する仮想カメラ制御手段と、前記仮想カメラ制御手段の制御により視点の位置及び視軸の方向が定められた前記仮想カメラから前記仮想スクリーン上に前記仮想３次元空間を透視変換し、前記表示装置に表示させるための２次元画像を生成する透視変換手段と、
前記透視変換手段により生成された２次元画像を前記表示装置に画面表示させる表示制御手段として前記コンピュータ装置を機能させ、前記キャラクタ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、前記キャラクタの方向を変化させず、前記仮想カメラ制御手段は、前記カード検出手段により検出されたカードの位置が実質的に変化することなく、該カードの方向が変化しているときに、該カードの方向の変化に応じて前記視軸の方向が変化させられるように前記視点の位置を前記キャラクタを中心に周回移動させることを特徴とする。
【００３２】
上記第３の観点にかかるプログラムは、コンピュータ読み取り可能な記録媒体に記録して提供することができる。このコンピュータ読み取り可能な記録媒体は、上記コンピュータ装置に着脱可能に構成され、上記コンピュータ装置とは別個に提供される記録媒体としてもよい。このコンピュータ読み取り可能な記録媒体は、上記コンピュータ装置内に設けられ、上記コンピュータ装置と共に提供される固定ディスク装置などの記録媒体としてもよい。上記第３の観点にかかるプログラムは、ネットワーク上に存在するサーバ装置から、そのデータ信号を搬送波に重畳して、ネットワークを通じて上記コンピュータ装置に配信することもできる。
【発明を実施するための最良の形態】
【００３３】
以下、添付図面を参照して、本発明の実施の形態について説明する。
【００３４】
この実施の形態に適用されるゲームは、カード（キャラクタカード及びＩＣカード）を用いて行われるカードゲームであり、このゲームに参加するプレイヤは、カードを有している必要がある。カードを有していないプレイヤは、１枚以上のキャラクタカード（トレーディングカード）と、１枚のＩＣカード（メモリカード）とが中に入っているスターターセットを購入し、カードを取得することができる。キャラクタカードは、キャラクタをゲームに参加させるためにプレイヤが使用するものである。ＩＣカードは、当該プレイヤが行ったゲームの履歴を記録する記憶媒体である。
【００３５】
図１は、この実施の形態に適用されるアーケード型のカードゲーム装置の概略構成を示す外観図である。ここでは、カードゲーム装置１の一例として、アーケード型のゲーム装置を示す。図１において、カードゲーム装置１の正面部には、液晶表示器（以下、ＬＣＤという）１１と、スピーカ１２Ｌ、１２Ｒの音抜き孔とが、形成される。カードゲーム装置１の正面部中央に装着されるＬＣＤ１１は、ゲームの進行に応じた画像を表示する。ＬＣＤ１１を挟む左右に装着されるスピーカ１２Ｌ、１２Ｒは、ゲームの進行に応じた音を出力する。
【００３６】
カードゲーム装置１の台部（台部上面）には、カード配置パネル１３と、操作スイッチ部１４と、ＩＣカード挿入部１５とが、形成される。カードゲーム装置１の台部中央に装着されるカード配置パネル１３上には、プレイヤによってゲームに参加させるキャラクタに対応するキャラクタカード２０が載置される。カード配置パネル１３は、仮想３次元空間（後述）の高さ方向に垂直な仮想２次元平面に対応する平面である。キャラクタカード２０の表面には、キャラクタのイラストが印刷され、裏面には、表面に印刷された各キャラクタを識別するためのデータパターン（識別コード）が記録されている。キャラクタカード２０には、表面に印刷されているイラストに応じて上下左右方向が定められており、裏面には、当該キャラクタカード２０の方向を識別するためのデータも記録されている。
【００３７】
カード配置パネル１３の上面には、薄いプレイフィールド用シートを装着した透明なガラス板が、取り付けられている。キャラクタカード２０は、プレイフィールド用シートの上面に載置されることとなるが、以下では説明を簡単にするために、カード配置パネル１３上に載置されると表現する。カード配置パネル１３の上面には、感圧式のタッチパネル１６（図１における破線領域）が装着される。
【００３８】
カードゲーム装置１のカード配置パネル１３の内部（台部内）には、カード配置パネル１３上に載置されたキャラクタカード２０の裏面に赤外線（不可視光）を照射する光源と、カード配置パネル１３上に載置されたキャラクタカード２０の裏面に記憶されたカードデータのパターンを撮像するイメージセンサ１０８（後述、図２）と、カード配置パネル１３上に載置されたキャラクタカード２０で反射した反射光をイメージセンサに導く反射板と、反射板で反射した反射光に含まれる外乱光（可視光）を除去するフィルタとが、取り付けられている。光源は、赤外線或いは紫外線のような肉眼では見えない不可視光を発光する発光ダイオード（ＬＥＤ）からなる。なお、光源から可視光が発光される場合には、該可視光を除去するフィルタも、カードゲーム装置１のカード配置パネル１３の内部（台部内）に取り付けられるものとなる。
【００３９】
カード配置パネル１３を挟む左右に装着される操作スイッチ部１４は、動作スイッチ（以下、「Ａボタン」という）１４ａ及び動作スイッチ（以下、「Ｂボタン」という）１４ｂと、ジョイスティック１４ｃと、スタートスイッチ１４ｄとを、含む。カード配置パネル１３の右横における手前側に装着されるＡボタン１４ａ及びＢボタン１４ｂは、例えば、プレイヤによって操作スイッチ部１４を用いて操作可能なプレイヤキャラクタの行動に対する指示等、所定の指示の入力に使用される。カード配置パネル１３の左横における手前側に装着されるジョイスティック１４ｃは、カーソルの移動方向を指示したりする等のゲーム画面における方向の入力に使用される。カード配置パネル１３の右横における奥側に装着されるスタートスイッチ１４ｄは、ゲームの開始を指示する入力に使用される。
【００４０】
カード配置パネル１３の左横における奥側に装着されるＩＣカード挿入部１５は、プレイヤがここからＩＣカード２１を挿入するものである。ＩＣカード挿入部１５の内部には、ＩＣカード２１と電気的に接続するＩＣカードリードライタが内蔵される。プレイヤは、ゲームを開始する前に、ＩＣカード２１をＩＣカード挿入部１５に挿入し、ＩＣカード挿入部１５の内部に設けられたＩＣカードリードライタ１０７（後述、図２参照）にＩＣカード２１に記憶されている各データを読み込ませる。ＩＣカード２１には、少なくとも当該プレイヤが所有するキャラクタカード２０の種類及びカードデータに対応するキャラクタのスキル及び過去のゲーム結果が記憶されている。
【００４１】
カードゲーム装置１の側面部（台上部側面）には、コイン投入口（図示せず）と、カード払出口（図示せず）とが、形成される。コイン投入口は、プレイヤがここから貨幣を投入するものである。カード払出口は、ゲームの終了後にキャラクタカード２０が払い出されるものである。プレイヤは、ＩＣカード挿入部１５にＩＣカード２１を挿入し、コイン投入口にゲームを行うための貨幣を投入し、スタートスイッチ１４ｄを操作することによって、ゲームを開始することができる。
【００４２】
図２は、図１のカードゲーム装置１の構成を示すブロック図である。図示するように、カードゲーム装置１は、装置本体１０１を中心として構築される。この装置本体１０１は、その内部バスに接続されたＣＰＵ（Central Processing Unit）１０２、メモリ１０３、入出力インターフェイス１０４、サウンド回路１０５、及びグラフィック表示回路１０６を含む。
【００４３】
ＣＰＵ１０２は、メモリ１０３に格納されたプログラムを実行し、装置本体１０１の制御を行うものである。ＣＰＵ１０２は、内部タイマを備えている。メモリ１０３は、プログラムやデータを保存するための記憶領域（ＲＡＭ、ＲＯＭ、ＨＤＤ等）である。メモリ０３には、ＬＣＤ１１に表示される各種画像データ、及びプログラムが格納されている。
【００４４】
入出力インターフェイス１０４には、ＩＣカードリードライタ１０７、イメージセンサ１０８、タッチパネル１６、及び操作スイッチ部１４等（カード払出口及びコイン投入口を含む）１１０が接続されている。ＩＣカードリードライタ１０７は、ＩＣカード挿入部１５の内部に装着され、ＩＣカード挿入部１５に挿入されたＩＣカード２０と接続し、データの読み込み及び書き込みを行うものである。
【００４５】
イメージセンサ１０８は、キャラクタカード２０の裏面に記憶されたカードデータを読み取るものである。イメージセンサ１０８は、ＣＰＵ１０２からの指示に基づいて、６０分の１秒毎に、カード配置パネル１３上の画像を読み取って、画像データをメモリ１０３に出力する。
【００４６】
６０分の１秒毎にイメージセンサ１０８から出力される画像データは、メモリ１０３に一時保存され、ＣＰＵ１０２は、当該画像データを解析する。キャラクタカード２０の裏面に記憶されたカードデータは、従来の発明と同じ条件を利用するものとする。ＣＰＵ１０２は、画像データを解析することで、カード配置パネル１３上に載置された各キャラクタカード２０の裏面のデータパターンを読み取り、当該キャラクタカード２０のカード配置パネル１３上における位置及び向きを判定する。そして、ＣＰＵ１０３は、判定結果に応じて、各キャラクタカード２０に対応するプレイヤキャラクタの仮想３次元空間のフィールド上における位置、及び体の向きを決定する。
【００４７】
タッチパネル１６（タッチパネル用のデバイスドライバを含む）は、カード配置パネル１３上において押圧された位置をメモリ１０３に設けられる所定のレジスタに出力するものである。ＣＰＵ１０２は、タッチパネル１６からの出力により、プレイヤが押さえているキャラクタカード２０を判別し、当該キャラクタカード２０に対応するプレイヤキャラクタを選択キャラクタ（後述）として設定する。
【００４８】
操作スイッチ部１４等は、プレイヤの指示を入力するものである。入出力インターフェイス１０４は、イメージセンサ１０８、操作スイッチ部１４、タッチパネル１６等からの入力データをメモリ１０３に出力し、ＣＰＵ１０２がそれを解釈して演算処理を実施する。入出力インターフェイス１０４は、また、ＣＰＵ１０２からの指示に基づいて、メモリ１０３に記憶されているゲームの進行状況（ゲームの対戦結果等）を示すデータをＩＣカード２１に保存させ、ＩＣカード２１に保存されている中断時のゲームのデータを読み出して、メモリ１０３に転送する。
【００４９】
サウンド回路１０５は、スピーカ１２に接続されている。サウンド回路１０５は、ＣＰＵ１０２により実行されているプログラムがサウンド出力を行うよう指示している場合に、その指示を解釈してサウンド信号を出力し、実行中のゲームに応じて再生される音声を、上述した音抜き孔の内部位置に配置されるスピーカ１２Ｌ、１２Ｒに出力させる。
【００５０】
グラフィック表示回路１０６は、ＬＣＤ１１に接続されている。グラフィック表示回路１０６は、ＣＰＵ１０２から出力される描画命令に従って、フレームメモリ（図示せず。グラフィック表示回路１０６を構成するチップに含まれるＲＡＭ内に設けられる）に画像を展開し、ＬＣＤ１１上に画像を表示するビデオ信号を出力する。グラフィック表示回路１０６から出力されるビデオ信号に含まれる画像の１フレーム時間は、例えば６０分の１秒である。
【００５１】
カードゲーム装置１でゲームを行うためのデータは、最初例えばＩＣカード２１に記憶されている。ＩＣカード２１に記憶されたデータは、実行時にＩＣカードリードライタ１０７により読み出されて、メモリ１０３にロードされる。ＣＰＵ１０２は、メモリ１０３にロードされたデータ、及び格納されているプログラムを処理し、描画命令をグラフィック表示回路１０６に出力し、サウンド出力の指示をサウンド回路１０５に出力する。ＣＰＵ１０２が処理を行っている間の中間的なデータは、メモリ１０３に記憶される。
【００５２】
以下、この実施の形態において、図１、図２に示したカードゲーム装置１で実行されるゲームについて説明する。この実施の形態にかかるゲームは、カードを用いて行うトレーディングカードゲームであり、プレイヤキャラクタの移動空間としての仮想３次元空間（ゲーム空間）にフィールドが形成されており、プレイヤは、キャラクタカード２０に対応するプレイヤキャラクタをゲームに参加させ、操作スイッチ部１４やタッチパネル１６等からの入力により、プレイヤキャラクタをフィールド上で動作（敵キャラクタへの攻撃など）させながらゲームを進行させていく。
【００５３】
プレイヤは、カード配置パネル１３上にキャラクタカード２０を載置することによって、イメージセンサ１０８に読み取らせた画像データに応じたキャラクタを、ゲームに参加させることができる。このカードゲームシステムで適用されるゲームにおいて、各プレイヤは、３体のプレイヤキャラクタをゲームに参加させることができる。プレイヤは、同時に複数のプレイヤキャラクタをゲームに参加させ、同時に複数のプレイヤキャラクタを動作させることができる。
【００５４】
プレイヤが参加させた全てのプレイヤキャラクタによって、プレイヤチームが結成されることとなる。プレイヤは、カード配置パネル１３上にキャラクタカード２０を載置することによって、イメージセンサ１０８に読み取らせた画像データに含まれるカードデータに応じたキャラクタの耐久度を、ＩＣカード２０から読み出させ、プレイヤチームの耐久度として加算させることができる。プレイヤがゲームに参加させた全てのキャラクタの耐久度の合計が、プレイヤチームの耐久度となる。
【００５５】
仮想３次元空間には、敵キャラクタも存在する。敵キャラクタは、ＣＰＵ１０２の制御によるものであっても、他のプレイヤがゲームに参加させたプレイヤキャラクタ（但し、カードゲーム装置１が通信装置を備える場合）であってもよい。敵キャラクタも、プレイヤキャラクタ同様に、複数（１以上。例えば、３体）のキャラクタによってチームを結成している。
【００５６】
この実施の形態にかかるゲームは、複数のステージからなり、各ステージにはクリア条件が設定されている。また、各ステージには、それぞれ制限時間（例えば、１６０秒）が設けられており、プレイヤキャラクタを各ステージでゲームに参加させてから制限時間を経過するまでの間に、当該ステージに設けられたクリア条件を達成できなければ、プレイヤチームの敗北となる。クリア条件には、例えば、プレイヤキャラクタと敵キャラクタとを対戦させ、敵チームの耐久度をゼロとすること等がある。
【００５７】
プレイヤチームの耐久度がゼロになった場合、クリア条件が達成された場合、或いは制限時間の経過時においてクリア条件が満たされなかった場合には、ゲームが終了する。ゲームの終了時には、カード払出口から１枚のキャラクタカード２０が払い出されることとなる。
【００５８】
プレイヤが、プレイヤキャラクタをゲームに参加させた直後、該プレイヤキャラクタは、対応するキャラクタカード２０の位置に応じた仮想３次元空間のフィールド上の位置に配置され、対応するキャラクタカード２０の方向に応じた方向を向くものとなる。キャラクタカード２０が、プレイヤによってカード配置パネル１３上を移動させられた場合、該キャラクタカード２０に対応するプレイヤキャラクタは、該キャラクタカード２０のカード配置パネル１３上における移動の軌跡に沿って、ＣＰＵ１０２によって決定されるフィールド上の位置まで、一定速度でフィールド上を移動することとなる。
【００５９】
キャラクタカード２０が、プレイヤによってカード配置パネル１３上において向きを変えられた場合、該キャラクタカード２０に対応するプレイヤキャラクタは、該キャラクタカード２０のカード配置パネル１３上における方向変更の軌跡に沿って、ＣＰＵ１０２によって決定されるフィールド上の方向まで、方向を変えることとなる。
【００６０】
但し、キャラクタカード２０が、プレイヤによってカード配置パネル１３上において向きを変えられた場合において例外的に、該キャラクタカード２０に対応するプレイヤキャラクタは、向きを変えない場合があったり、キャラクタカード２０の方向軌跡とは別の方向を向くこともある。プレイヤキャラクタの移動及び方向転換の詳細については、後述する。
【００６１】
このフィールドが形成された仮想３次元空間における位置は、ワールド座標系（Ｘ，Ｙ，Ｚ）の座標によって一意に特定される。プレイヤキャラクタは、そのほぼ中心の点を基準点として設定しており、仮想３次元空間における位置は、基準点のワールド座標系における座標で示される。また、プレイヤキャラクタの向きは、ローカル座標系の各軸がワールド座標系の各軸に対してなす角で表される。
【００６２】
プレイヤキャラクタを含む仮想３次元空間内のキャラクタが、該空間を移動していく様子は、仮想カメラの視点の位置から視軸の方向に向けて設定される上に透視変換されて、その画像がＬＣＤ１１上に表示されるものとなる。図３は、仮想３次元空間を透視変換する様子を模式的に示す図である。
【００６３】
図３に示すように、仮想３次元空間内に仮想カメラ３０１が置かれる。この仮想カメラ３０１の位置が視点３０３、仮想カメラ３０１の向きが視軸３０４、視点３０３と仮想スクリーン３０２の頂点の四隅を結んだ４本の直線が作る領域が視界３０５となる。視点３０３から視軸３０４の方向に向かって一定の近距離にある位置に、仮想スクリーン３０２が置かれる。
【００６４】
視界３０５の範囲で、視点３０３から視軸３０４の方向に向かって一定の近距離に前方グリップ面３０６が設定され、一定の遠距離に後方グリップ面３０７が設定される。視界３０５の範囲内において前方グリップ面３０６から後方グリップ面３０７までの範囲が、透視変換により画像が描画される範囲である視野空間３０８として定められる。
【００６５】
このように、仮想スクリーン３０２上に画像を投影するために用いられる座標系が視点座標系（Ｘ’，Ｙ’，Ｚ’）であり、視軸３０４の方向が視点座標系のＺ’軸となる。ワールド座標系の座標（ローカル座標系の座標から変換された座標を含む）は、視点座標系の座標に変換されて、隠面消去の処理を含む透視変換の処理が行われる。グラフィック表示回路１０６は、透視変換により仮想スクリーン３０２上に投影した画像を、フレームメモリに描画する。
【００６６】
透視変換を行う前提として、仮想カメラ３０１の視点３０３の位置、視軸３０４の方向、視界３０５の大きさ（視点３０３から仮想スクリーン３０２までの距離）、及び視野空間３０８の大きさ（視点３０３から前方クリップ面３０６及び後方グリップ面までの距離）が決まっている必要がある（仮想スクリーン３０２の位置は、これらが決まると必然的に決まる）。視界３０５の大きさ及び視野空間３０８は、基本的には同じ大きさに設定されているものとする。
【００６７】
視点３０３の位置は、後述する選択キャラクタとして指定されているプレイヤキャラクタ２００に対応するキャラクタカード２０の基準位置を参照点として、キャラクタカード２０の背面側方向に設定される。視軸３０４の方向は、後述する選択キャラクタとして指定されているプレイヤキャラクタ２００の基準点２０１を必ず向くように設定される。
【００６８】
プレイヤによって最後にカード配置パネル１３上に載置された（すなわち、押圧された或いは押圧されている）キャラクタカード２０に対応するプレイヤキャラクタ２００が、選択キャラクタとして指定される。プレイヤは、カード配置パネル１３上に載置された任意のキャラクタカード２０をタッチ（すなわち、押圧された或いは押圧されている）し、当該キャラクタカード２０に対応するプレイヤキャラクタを、選択キャラクタとして指定することができる。新たな選択キャラクタが指定されると、これまでの選択キャラクタの指定は解除される。
【００６９】
図３では、プレイヤキャラクタ２００が選択キャラクタに指定されている。選択キャラクタとして指定されているプレイヤキャラクタ２００が、当該プレイヤキャラクタ２００に対応するキャラクタカード２０の位置に応じた位置に配置され、該キャラクタカード２０の方向に応じた方向を向いている場合、選択キャラクタとして指定されているプレイヤキャラクタ２００の基準点２０１が参照点として設定され、当該プレイヤキャラクタ２００の向き（背面から前面方向）に視軸３０４の方向が設定される（但し例外あり）。参照点と、視軸３０４の方向とが設定されれば、参照点から視軸３０４上の一定距離（以下、視点距離）に視点３０３が設定されることとなる。
【００７０】
プレイヤによって選択キャラクタとして指定されているプレイヤキャラクタ２００に対応するキャラクタカード２０以外のキャラクタカード２０が、カード配置パネル１３上においてタッチされ、選択キャラクタが変更された場合、当該新たに選択キャラクタとして指定されたプレイヤキャラクタ２００の基準点２０１が参照点として設定され、当該プレイヤキャラクタ２００の向き（背面から前面方向）に視軸３０４の方向が設定される。
【００７１】
次に、キャラクタカード２０の位置の移動および／または方向の変更と、当該キャラクタカード２０に対応するプレイヤキャラクタ２００の位置の移動および／または方向の変更と、視点３０３の位置及び視軸３０４の方向との関係について、図４を用いて説明する。
【００７２】
図４（ａ−１）〜（ａ−３）は、カード配置パネル１３上に載置されたキャラクタカード２０の配置の具体例を示す図である。図４（ｂ−１）〜図４（ｂ−３）は、仮想３次元空間のフィールド上を上方向から見下ろした場合における、プレイヤキャラクタ２００と視点３０３との位置関係及び移動経路を、模式的に示す図である。
【００７３】
図４（ａ−１）では、３枚のキャラクタカード２０ａ〜２０ｃが、カード配置パネル１３上に載置されている。各キャラクタカード２０に表示されている矢印は、当該キャラクタカード２０の向きを示すものである。選択キャラクタとして指定されているプレイヤキャラクタ２００に対応するキャラクタカード２０を、分かりやすく示すために、黒色で示すものとする。
【００７４】
図４（ａ−１）では、キャラクタカード２０ａが最後にタッチされており（すなわち、最後に押圧された或いは押圧されている）、キャラクタカード２０ａに対応するプレイヤキャラクタ２００ａが選択キャラクタとして指定されている。図４（ａ−１）の状態における仮想３次元空間のフィールド上でのプレイヤキャラクタ２００ａの位置を黒丸Ａ１で、仮想カメラ３０１の視点３０３の位置を点Ｂ１で、図４（ｂ−１）に示す。仮想３次元空間において、プレイヤキャラクタ２００ａの体の向きを分かりやすく示すために。黒丸Ａ１の中に、プレイヤキャラクタ２００ａの体の向きを示す矢印を、付すものとする。
【００７５】
図４（ａ−１）では、仮想３次元空間においてプレイヤキャラクタ２００ａは、キャラクタカード２０ａの位置に応じた位置に配置され、キャラクタカード２０ａの方向に応じた方向を向いている。この場合、プレイヤキャラクタ２００ａの基準点２０１が参照点として設定され、プレイヤキャラクタ２００ａの向き（背面から前面方向）に視軸３０４の方向が設定され、視点３０３の位置が参照点から視軸３０４上の視点距離に位置である点（点Ｂ１）に設定される。
【００７６】
図４（ａ−１）の状態において、プレイヤによってタッチされているキャラクタカード２０ａが、カード配置パネル１３上においてその位置で左回りに一定速度未満で回転され、図４（ａ−２）の状態になったものとする。プレイヤによってキャラクタカード２０ａが一定速度未満で回転されることで、図４（ａ−１）から図４（ａ−２）にキャラクタカード２０ａの配置が変わった場合における、プレイヤキャラクタ２００ａの位置及び向きと、視点３０３の移動とを、図４（ｂ−２）に示す。
【００７７】
この場合には、プレイヤキャラクタ２００ａは、黒丸Ａ１の位置で、キャラクタカード２０ａが方向を変更された（左向きに回転）軌跡に沿って、体の向きを、所定の速度で変える。プレイヤキャラクタ２００ａの方向の変更に追随して、視点３０３の位置は、キャラクタカード２０ａの基準位置を参照点として、キャラクタカード２０ａの背面側方向に設定される。従って、プレイヤキャラクタ２００ａの方向の変更に追随して、視点３０３の位置は、プレイヤキャラクタ２００ａの基準点２０１を中心として、視点距離を半径とする円上を、点Ｂ１から点Ｂ２、点Ｂ２から点Ｂ３へと移動することとなる。視点３０３の位置の移動に応じて、視軸３０４の方向は常に基準点２０１を参照点とするように変更される。
【００７８】
もっとも、プレイヤによってキャラクタカード２０ａが一定速度以上で左回りに回転されることで、図４（ａ−１）から図４（ａ−２）にキャラクタカード２０ａの配置が変わった場合、プレイヤキャラクタ２００ａは方向を変えない。しかし、視点３０３の位置は、仮に一定速度未満でキャラクタカード２０ａが回転させられていたならばプレイヤキャラクタ２００ａが向くこととなる方向に従って移動するものとなる。つまり、プレイヤキャラクタ２００ａの方向は変わらないものの、視点３０３の位置は、図４（ｂ−２）に示した場合と同様に、参照点であるプレイヤキャラクタ２００ａの基準点２０１を中心として、視点距離を半径とする円上を、点Ｂ１から点Ｂ２、点Ｂ２から点Ｂ３へと移動することとなる。視点３０３の位置の移動に応じて、視軸３０４の方向は常に基準点２０１を参照点とするように変更される。
【００７９】
プレイヤキャラクタ２００ａが、図４（ａ−２）に示すキャラクタカード２０ａの位置に応じた位置（黒丸Ａ１）に配置され、キャラクタカード２０ａの方向に応じた方向（左）を向いている状態において、プレイヤによってタッチされているキャラクタカード２０ａが、カード配置パネル１３上においてカードの向きを変えずに上方向に移動され、図４（ａ−３）の状態になったものとする。図４（ａ−２）から図４（ａ−３）にキャラクタカード２０ａの配置が変わった場合における、プレイヤキャラクタ２００ａの位置及び向きと、視点３０３の移動とを、図４（ｂ−３）に示す。
【００８０】
この場合には、プレイヤキャラクタ２００ａは、まず、黒丸Ａ１の位置で、キャラクタカード２０ａが移動された方向（すなわち、進行方向）に向けて、体の向きを所定の速度で変えるものとなる。黒丸Ａ１においてプレイヤキャラクタ２００ａが進行方向に方向転換している間、視点３０３の位置（点Ｂ４）及び視軸３０４の方向は、変わらないものとなる。
【００８１】
そして、進行方向を向いたプレイヤキャラクタ２００ａは、キャラクタカード２０ａが位置を移動された軌跡に沿って、一定速度で、黒丸Ａ１から黒丸Ａ２、黒丸Ａ２から黒丸Ａ３、黒丸Ａ３から黒丸Ａ４、黒丸Ａ４から黒丸Ａ５へと移動するものとなる。プレイヤキャラクタ２００ａの移動に追随して、視点３０３の位置は、プレイヤキャラクタ２００ａがキャラクタカード２０ａの方向軌跡に応じた方向に向いていたと仮定した場合におけるプレイヤキャラクタ２００ａの背面側の視点距離の位置に設定され、点Ｂ４から点Ｂ５、点Ｂ５から点Ｂ６、点Ｂ６から点Ｂ７、点Ｂ７から点Ｂ８へと、移動することとなる。プレイヤキャラクタ２００ａの移動中において、視点３０３の位置は、プレイヤキャラクタ２００ａと平行に移動し、常にプレイヤキャラクタ２００ａの基準点２０１を参照点としているため、視軸３０４の方向は一定方向に保たれる。
【００８２】
移動後のキャラクタカード２０ａがカード配置パネル１３上において載置されている位置に対応するフィールド上の位置（黒丸Ａ５）に到着したプレイヤキャラクタ２００ａの向きが、キャラクタカード２０ａの向きと異なるので、プレイヤキャラクタ２００ａは、黒丸Ａ５の位置で、キャラクタカード２０ａの向きに応じて、体の向きを所定の速度で変えるものとなる。黒丸Ａ５においてプレイヤキャラクタ２００ａが方向転換しても、視点３０３の位置（点Ｂ８）及び視軸３０４の方向は、変わらないものとなる。ここで、視点３０３の位置は、プレイヤキャラクタ２００ａの背面側の視点距離の位置に設定されることとなる。
【００８３】
次に、カードゲーム装置１でカードゲームを行うためにメモリ１０３において管理されるデータについて、説明する。図５は、カードゲーム装置１内のメモリ１０３に設けられたキャラクタテーブル５００を示す図である。図示するように、キャラクタテーブル５００には、キャラクタＩＤ５０１と、位置５０２と、向き５０３と、履歴５０４と、選択中フラグ５０５と、方向変更フラグ５０６とが、プレイヤキャラクタ２００毎に登録される。
【００８４】
この実施の形態にかかるカードゲームにおいて、一人のプレイヤは同時に３体のプレイヤキャラクタ２００をゲームに参加させることが可能であるので、メモリ１０３には３つのプレイヤキャラクタ２００を登録することのできるスペースが設けられている。キャラクタテーブル５００には、上から順に１〜３の番号が付けられており、プレイヤがカード配置パネル１３上に載置したキャラクタカード２０の順に上から、データが登録されていくものとなる。キャラクタＩＤ５０１は、各プレイヤキャラクタ２００を一意に識別する識別情報である。
【００８５】
位置５０２は、ゲーム空間におけるプレイヤキャラクタ２００の位置を、ゲーム空間に設定された座標で示すものである。向き５０３は、プレイヤキャラクタ２００が向いている方向を、例えば、ゲーム空間における所定の方向を基準方向（０度の方向）として０〜３５９度の範囲で示すものである。履歴５０４は、プレイヤキャラクタ２００に対応するキャラクタカード２０の位置及び方向を、１フレーム毎に記憶するものであり、複数のスペースからなる。履歴５０４の各スペースには、１フレーム期間毎にタッチパネル１６上からタッチ入力されたキャラクタカード２０の位置及び方向が保存されるものとなる。
【００８６】
履歴５０４において、先のスペースに登録されているデータ（位置及び方向）ほど、先のタイミングで入力されたデータとなる。移動中（履歴５０４の最初のスペース以外の他のスペースにも位置及び方向が登録されている）のプレイヤキャラクタ２００について、履歴５０４は、当該履歴５０４に登録された位置に、当該プレイヤキャラクタ２００が位置したことによって削除される。
【００８７】
選択中フラグ５０５は、選択キャラクタとして選択されているプレイヤキャラクタ２００に対してセットされるフラグである。キャラクタテーブル５００において複数の選択中フラグ５０５がセットされることはない。いずれかのプレイヤキャラクタ２００について、選択中フラグ５０５がセットされた場合には、他のプレイヤキャラクタ２００についてセットされている選択中フラグ５０５は、リセットされることとなる。
【００８８】
方向変更フラグ５０６は、プレイヤキャラクタ方向変更モードに設定されているプレイヤキャラクタ２００についてセットされるフラグである。プレイヤキャラクタ２００は、対応するキャラクタカード２０の位置によって決定された位置（履歴５０４の位置）に到着したときに、当該キャラクタカード２０の方向によって決定された方向を向いていない場合、プレイヤキャラクタ方向変更モードに設定される。プレイヤキャラクタ方向変更モードに設定されたプレイヤキャラクタ２００の向き５０３は、当該キャラクタカード２０の方向によって決定された方向に向けて、所定速度で変更されることとなる。プレイヤキャラクタ方向変更モードに設定されたプレイヤキャラクタ２００の向き５０３が、当該キャラクタカード２０の方向によって決定された方向と一致した場合には、方向変更フラグ５０６はリセットされ、プレイヤキャラクタ方向変更モードが解除される。
【００８９】
以下、カードゲーム装置１において、この実施の形態にかかるカードゲームを行うための処理について説明する。なお、この実施の形態に特有の処理以外の処理については、説明を省略している場合がある。また、ＣＰＵ１０２の処理途中の情報は、メモリ１０３のワークエリアに一時格納される。
【００９０】
図６は、カードゲーム装置１において実行されるメイン処理を示すフローチャートである。カードゲーム装置１の装置本体１０１の電源を投入すると、ＳＴＡＲＴ情報がＣＰＵ１０２に入力され、メイン処理が開始されるものとなる。
【００９１】
ＣＰＵ１０２は、ＩＣカード挿入部１５にＩＣカード２１が挿入されたかどうかを判定する（ステップＳ１００）。ＩＣカード２１が挿入されていなければ、ＣＰＵ１０２は、ステップＳ１００の処理を繰り返し、ＩＣカード２１が挿入されるのを待機する。ＩＣカード２１が挿入されれば、ＣＰＵ１０２は、ＩＣカード２１からＩＣカードリードライタ１０７が読み取ったデータをチェックし、該ＩＣカード２１が当該カードゲーム装置１で行われるゲームに適当なものかどうかを判定する（ステップＳ１０１）。ＩＣカード２１が当該ゲームに適当でない場合には、ＣＰＵ１０２は、当該ＩＣカード２１をＩＣカード挿入部１５から排出する（ステップＳ１０２）。そして、ステップＳ１００の処理に戻る。
【００９２】
ＩＣカード２１が当該ゲームに適当な場合には、ＣＰＵ１０２は、コイン投入口からゲームの対価となる金額の貨幣の投入があったかどうかを判定する（ステップＳ１０３）。貨幣の投入がなければ、ＣＰＵ１０２は、ステップＳ１０３の処理を繰り返し、貨幣が投入されるのを待機する。貨幣が投入されれば、ＣＰＵ１０２は、ＩＣカード２１からＩＣカードリードライタ１０７が読み取ったがデータに応じて、今回行うステージを決定する（ステップＳ１０４）。そして、ＣＰＵ１０２は、グラフィック表示回路１０６に描画命令を出し、ステージのクリア条件や敵チームの情報などを、ＬＣＤ１１に表示する（ステップＳ１０５）。
【００９３】
ＣＰＵ１０２は、入出力インターフェイス１０４に命令を出し、イメージセンサ１０８を起動する。そして、ＣＰＵ１０２は、イメージセンサ１０８に命令を出し、カード配置パネル１３上の画像データをメモリ１０３に出力させる（ステップＳ１０６）。ＣＰＵ１０２は、グラフィック表示回路１０６に描画命令を出し、３枚のキャラクタカード２０を載置するように指示する画面を、ＬＣＤ１１に表示する（ステップＳ１０７）。ＣＰＵ１０２は、キャラクタ番号に初期値の１を代入する（ステップＳ１０８）。
【００９４】
ＣＰＵ１０２は、メモリ１０３に出力された画像データを解析し、キャラクタカード２０のデータが含まれるかどうかによって、キャラクタカード２０がカード配置パネル１３上に載置されたかどうかを判定する（ステップＳ１０９）。イメージセンサ１０８が読み取った画像データに、キャラクタカード２０のデータが含まれない場合、ステップＳ１０９の処理に戻り、カード配置パネル１３上に新たなキャラクタカード２０が載置されるまで待機する。
【００９５】
カード配置パネル１３上に新たなキャラクタカード２０が載置されれば、ＣＰＵ１０２は、当該キャラクタカード２０の情報（キャラクタＩＤ）と、各キャラクタカード２０の載置されている位置及び向きとを、判定し、当該キャラクタカード２０に対応するプレイヤキャラクタ２００のフィールド上における位置及び向きを、現時点のキャラクタ番号に対応するキャラクタテーブル５００の位置５０２、向き５０３に保存する。現時点のキャラクタ番号が３である場合には、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、選択中フラグ５０５をセットする（ステップＳ１１０）。
【００９６】
ＣＰＵ１０２は、キャラクタ番号に１を加算した値を、キャラクタ番号に代入する（ステップＳ１１１）。そして、ＣＰＵ１０２は、キャラクタ番号が４となったかどうかにより、３枚のキャラクタカード２０がカード配置パネル１３上に載置されたかどうかを判定する（ステップＳ１１２）。キャラクタ番号が４でなければ、ステップＳ１０９の処理に戻る。キャラクタ番号が４であれば、３枚のキャラクタカード２０が配置されたこととなるので、ＣＰＵ１０２は、グラフィック表示回路１０６に描画命令を出し、ステップＳ１０４の処理で決定したステージに対応するゲームを開始する旨を、ＬＣＤ１１に表示する（ステップＳ１１３）。
【００９７】
ＣＰＵ１０２は、６０分の１秒の１フレーム期間かどうかを判定する（ステップＳ１１４）。１フレーム期間でなければ、ステップＳ１１４の処理に戻り、１フレーム期間となるまで待機する。１フレーム期間であれば、ＣＰＵ１０２は、その内部タイマを用いて、ゲームタイマの計時を開始する（ステップＳ１１５）。
【００９８】
そして、ＣＰＵ１０２は、当該ステージに応じたゲーム処理を行う（ステップＳ１１６）。ゲーム処理は、１フレーム期間の経過が判定される度に実行され、特にＬＣＤ１１上に画像を表示するために行われる処理である。なお、ゲーム処理の詳細については、後述する。そして、ゲーム処理の終了後、ＣＰＵ１０２は、メモリ１０３に終了フラグがセットされているかどうかによって、ゲームが終了したかどうかを判定する（ステップＳ１１７）。ゲームが終了していなければ、ステップＳ１１４の処理に戻る。ゲームが終了していれば、ＣＰＵ１０２は、入出力インターフェイス１０４に命令を出し、イメージセンサ１０８をシャットダウンする（ステップＳ１１８）。
【００９９】
ＣＰＵ１０２は、メモリ１０３にセットされている終了フラグをリセットし、いずれのチームが勝利したかを決定する勝敗判定を行う。ここで、プレイヤチームの耐久度がゼロになった場合、制限時間の経過時においてクリア条件が満たされなかった場合には、プレイヤチームの敗北となり、敵チームの耐久度がゼロになった場合、制限時間以内にクリア条件が達成された場合には、プレイヤチームの勝利となる。ＣＰＵ１０２は、対戦結果から、ゲームに参加した各プレイヤキャラクタ２００及びチームのパラメータを計算し、該算出したパラメータをＩＣカード２１に記憶させる。ＣＰＵ１０２は、キャラクタテーブル５００に登録されているデータを削除する（ステップＳ１１９）。
【０１００】
ＣＰＵ１０２は、グラフィック表示回路１０６に描画命令を出し、当該ゲームが終了した旨を、ＬＣＤ１１に表示する。そして、ＣＰＵ１０２は、ゲームタイマの計時を終了する（ステップＳ１２０）。ＣＰＵ１０２は、カード払出口からキャラクタカード２０を１枚払い出す（ステップＳ１２１）。そして、Ａボタン１４ａが操作されたかどうかにより、プレイヤによってゲームを続ける指示が入力されたかどうかを判定する（ステップＳ１２２）。続ける指示が入力されていれば、ステップＳ１０３の処理に戻る。続ける指示が入力されていなければ、ステップＳ１０２の処理に戻り、ＩＣカード２１をＩＣカード挿入部１５から排出する。
【０１０１】
図７は、図６のステップＳ１１６で実行されるゲーム処理を詳細に示すフローチャートである。ゲーム処理は、少なくとも６０分の１秒内には終了する処理である。ゲーム処理では、ＣＰＵ１０２は、その内部タイマが計時しているゲームタイマが１２０秒を計時したかどうかを判定する（ステップＳ２００）。１２０秒を計時していれば、ステップＳ２０２の処理に進む。１２０秒を計時していなければ、ＣＰＵ１０２は、いずれかのチームの合計耐久度がゼロとなったかどうかを判定する（ステップＳ２０１）。
【０１０２】
いずれかのチームの合計耐久度がゼロとなった場合には、ステップＳ２０２の処理に進む。ステップＳ２０２では、ＣＰＵ１０２は、メモリ１０３に終了フラグをセットする。そして、ゲーム処理を終了して、図６のフローチャートの処理に復帰する。いずれのチームの合計耐久度もゼロになっていなければ、ＣＰＵ１０２は、タッチパネル１６からタッチ入力が行われ、その位置が何れかのキャラクタカード２０が載置されている位置であったかどうかを判定する（ステップＳ２０３）。
【０１０３】
キャラクタカード２０が載置されている位置でタッチ入力が行われていなければ、ＣＰＵ１０２は、操作スイッチ部１４やタッチパネル１６からその他の入力が行われたかどうかを判定する（ステップＳ２０４）。その他の入力が行われていなければ、ステップＳ２０９の処理に進む。その他の入力が行われていれば、ＣＰＵ１０２は、当該入力に応じた処理（例えば、選択キャラクタに敵キャラクタに対して攻撃を行わせるなど）を行う（ステップＳ２０５）。そして、ステップＳ２０９の処理に進む。
【０１０４】
キャラクタカード２０が載置されている位置でタッチ入力が行われていれば、ＣＰＵ１０２は、タッチ入力によって入力された位置が、選択キャラクタ（選択中フラグ５０５のセットされているプレイヤキャラクタ２００）に対応するキャラクタカード２０以外のキャラクタカード２０であるかどうかによって、選択キャラクタの変更が行われたかどうかを判定する（ステップＳ２０６）。選択キャラクタに対応するキャラクタカード２０以外のキャラクタカード２０がタッチされていれば、選択キャラクタの変更が行われた場合であり、ＣＰＵ１０２は、当該タッチされたキャラクタカード２０に対応するプレイヤキャラクタ２００について選択中フラグ５０５をセットし、他のプレイヤキャラクタ２００についてセットされている選択中フラグ５０５をリセットする（ステップＳ２０７）。そして、ステップＳ２０８の処理に進む。
【０１０５】
選択キャラクタに対応するキャラクタカード２０以外のキャラクタカード２０がタッチされていなければ、ＣＰＵ１０２は、タッチ入力によって入力された位置が、選択キャラクタに対応するキャラクタカード２０であったということになる。この場合には、選択キャラクタの変更は行われずに、そのままステップＳ２０８の処理に進む。
【０１０６】
ステップＳ２０８では、ＣＰＵ１０２は、タッチ入力されたキャラクタカード２０の位置及び方向を、選択中フラグ５０５のセットされているプレイヤキャラクタ２００について、履歴５０４の保存されているスペースの次のスペースに保存する（保存されている履歴５０４がない場合には、履歴５０４の最初のスペース）。そして、ステップＳ２０９の処理に進む。
【０１０７】
ステップＳ２０９では、ＣＰＵ１０２は、キャラクタ番号に初期値の１を代入する。そして、ＣＰＵ１０２は、キャラクタテーブル５００について、現在のキャラクタ番号に対応するプレイヤキャラクタ２００について、キャラクタテーブル５００に方向変更フラグ５０６がセットされているかどうかによって、当該プレイヤキャラクタ２００がプレイヤキャラクタ方向変更モードに設定されているかどうかを判定する（ステップＳ２１０）。
【０１０８】
方向変更フラグ５０６がセットされている場合は、当該プレイヤキャラクタ２００がプレイヤキャラクタ方向変更モードに設定されている場合であり、ＣＰＵ１０２は、当該プレイヤキャラクタ２００の向き５０３が、履歴５０４の最初のスペースに登録されている方向によって決定される方向と一致するかどうかを判定する（ステップＳ２１１）。一致すれば、ＣＰＵ１０２は、当該履歴５０４の最初のスペースに登録されている位置及び方向を削除する。そして、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、キャラクタテーブル５００にセットされている方向変更フラグをリセットし、プレイヤキャラクタ方向変更モードを解除する（ステップＳ２１２）。そして、ステップＳ２３３の処理に進む。
【０１０９】
プレイヤキャラクタ２００の向き５０３が、履歴５０４の最初のスペースに登録されている方向によって決定される方向と一致しなければ、ＣＰＵ１０２は、当該プレイヤキャラクタ２００の向き５０３を、履歴５０４の最初のスペースに登録されている方向によって決定される方向に向け、所定量変更する（ステップＳ２１３）。そして、ステップＳ２３３の処理に進む。
【０１１０】
方向変更フラグ５０６がセットされていない場合は、当該プレイヤキャラクタ２００がプレイヤキャラクタ方向変更モードに設定されていない場合であり、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、キャラクタテーブル５００に履歴５０４が登録されているかどうかを判定する（ステップＳ２１４）。履歴５０４が登録されていなければ、ステップＳ２３３の処理に進む。履歴５０４が登録されていれば、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、キャラクタテーブル５００に登録されている位置５０２と、履歴５０４の最初のスペースに登録されている位置によって決定される位置とが一致するかどうかによって、当該プレイヤキャラクタ２００をフィールド上で移動させるかどうかを判定する（ステップＳ２１５）。
【０１１１】
キャラクタテーブル５００に登録されている位置５０２と、履歴５０４の最初のスペースに登録されている位置によって決定される位置とが一致しない場合は、当該プレイヤキャラクタ２００をフィールド上で移動させる場合であり、ＣＰＵ１０２は、プレイヤキャラクタ２００の位置５０２から履歴５０４の最初のスペースに登録されている位置への方向（進行方向）と、当該プレイヤキャラクタ２００についてキャラクタテーブル５００に登録されている向き５０３とが、一致するかどうかを判定する（ステップＳ２１６）。
【０１１２】
進行方向とプレイヤキャラクタ２００の向きが一致しなければ、ＣＰＵ１０２は、進行方向に向け、所定量プレイヤキャラクタ２００の向き５０３を変更する（ステップＳ２１７）。そして、ステップＳ２３３の処理に進む。進行方向とプレイヤキャラクタ２００の向きが一致すれば、ＣＰＵ１０２は、当該プレイヤキャラクタ２００の位置５０２を、該履歴５０４の最初のスペースに登録されている位置によって決定される位置に向けて、所定量移動する（ステップＳ２１８）。
【０１１３】
ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、キャラクタテーブル５００に選択中フラグ５０５がセットされているかどうかを判定する（ステップＳ２１９）。選択フラグ５０５がセットされていなければ、当該プレイヤキャラクタ２００は選択キャラクタとして指定されていないので、ステップＳ２２１の処理に進む。選択中フラグ５０５がセットされていれば、当該プレイヤキャラクタ２００が選択キャラクタとして指定されているので、ＣＰＵ１０２は、視点３０３の位置を、履歴５０４の最初のスペースに登録されている位置及び方向によって決定される位置（すなわち、キャラクタカード２０の基準位置を参照点として、キャラクタカード２０の方向の背面側）に、所定量移動する。そして、視点３０３の位置から、選択キャラクタの基準点２０１に、視軸３０４の方向を向ける（ステップＳ２２０）。そして、ステップＳ２２１の処理に進む。
【０１１４】
ステップＳ２２１では、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、キャラクタテーブル５００に登録された位置５０２と、履歴５０４の最初のスペースに登録されている位置によって決定される位置とが一致するかどうかにより、履歴５０４の最初のスペースに登録されている位置に対応する位置に、プレイヤキャラクタ２００が到着したかどうかを判定する。
【０１１５】
プレイヤキャラクタ２００が、履歴５０４の最初のスペースに登録されている位置に対応する位置に到着していない場合には、ステップＳ２３３の処理に進む。プレイヤキャラクタ２００が、履歴５０４の最初のスペースに登録されている位置に対応する位置に到着した場合には、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、履歴５０４の最初のスペース以外のスペースに位置及び方向が登録されているかどうかを判定する（ステップＳ２２２）。履歴５０４の最初のスペース以外のスペースに位置及び方向が登録されている場合は、当該プレイヤキャラクタ２００は移動を継続する場合であり、ＣＰＵ１０２は、履歴５０４の最初のスペースに登録されている位置及び方向を削除する（ステップＳ２２３）。そして、ステップＳ２３３の処理に進む。
【０１１６】
履歴５０４の最初のスペース以外のスペースに位置及び方向が登録されていない場合は、当該プレイヤキャラクタ２００は対応するキャラクタカード２０の位置に応じた位置に到着した場合であり、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、キャラクタテーブル５００に方向変更フラグ５０６をセットし、プレイヤキャラクタ方向変更モードに設定する（ステップＳ２２４）。そして、ステップＳ２３３の処理に進む。
【０１１７】
ステップＳ２１５の処理で、キャラクタテーブル５００に登録されている位置５０２と、履歴５０４の最初のスペースに登録されている位置によって決定される位置とが一致する場合は、当該プレイヤキャラクタ２００をフィールド上で移動させない場合であり、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、キャラクタテーブル５００に登録されている向き５０３と、履歴５０４の最初のスペースに登録されている方向によって決定される向きとが一致するかどうかによって、当該プレイヤキャラクタ２００の向きおよび／または視軸３０４の方向をフィールド上で変更させるかどうかを判定する（ステップＳ２２５）。
【０１１８】
キャラクタテーブル５００に登録されている向き５０３と、履歴５０４の最初のスペースに登録されている方向によって決定される向きとが一致する場合は、当該プレイヤキャラクタ２００の向き及び視軸３０４の方向をフィールド上で変更させない場合であり、ＣＰＵ１０２は、履歴５０４の最初のスペースに登録されている位置及び方向を、削除する（ステップＳ２２６）。そして、ステップＳ２３３の処理に進む。
【０１１９】
キャラクタテーブル５００に登録されている向き５０３と、履歴５０４の最初のスペースに登録されている方向によって決定される向きとが一致しない場合は、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、キャラクタテーブル５００に選択中フラグ５０５がセットされているかどうかを判定する（ステップＳ２２７）。選択フラグ５０５がセットされていなければ、当該プレイヤキャラクタ２００は選択キャラクタとして指定されていないので、ステップＳ２３０の処理に進む。
【０１２０】
選択中フラグ５０５がセットされていれば、当該プレイヤキャラクタ２００が選択キャラクタとして指定されているので、ＣＰＵ１０２は、視点３０３の位置を、履歴５０４の最初のスペースに登録されている位置及び方向によって決定される位置（すなわち、キャラクタカード２０の方向に応じてプレイヤキャラクタ２００の方向が定められたならば、当該方向でのプレイヤキャラクタ２００の背面側の方向）に、所定量移動する。そして、視点３０３の位置から、選択キャラクタの基準点２０１に、視軸３０４の方向を向ける（ステップＳ２２８）。
【０１２１】
ＣＰＵ１０２は、視軸３０４の向きから、履歴５０４の最初のスペースに登録されている方向によって決定される向きへの回転角が所定角度以上であるかどうかによって、プレイヤによってキャラクタカード２０の向きの変更が一定速度以上で行われたかどうかを判定する（ステップＳ２２９）。キャラクタカード２０の向きの変更が一定速度以上で行われていれば、プレイヤキャラクタ２００の方向が変更されない場合であり、そのままステップＳ２３１の処理に進む。
【０１２２】
キャラクタカード２０の向きの変更が一定速度以上で行われていなければ、選択キャラクタであるプレイヤキャラクタ２００の方向もキャラクタカード２０の向きに応じて変更させるため、ステップＳ２３０の処理に進む。ステップＳ２３１では、ＣＰＵ１０２は、当該プレイヤキャラクタ２００の向き５０３を、該履歴５０４の最初のスペースに登録されている方向によって決定される向きに向けて、所定量変更する。そして、ステップＳ２３１の処理に進む。
【０１２３】
ステップＳ２３１では、ＣＰＵ１０２は、当該プレイヤキャラクタ２００について、キャラクタテーブル５００に登録された向き５０３と、履歴５０４の最初のスペースに登録されている方向によって決定される向きとが一致するかどうかにより、履歴５０４の最初のスペースに登録されている方向に対応する向きに、プレイヤキャラクタ２００が向いたかどうかを判定する。
【０１２４】
プレイヤキャラクタ２００が、履歴５０４の最初のスペースに登録されている方向に対応する向きを、向いてない場合には、ステップＳ２３３の処理に進む。プレイヤキャラクタ２００が、履歴５０４の最初のスペースに登録されている方向に対応する向きを、向いた場合には、ＣＰＵ１０２は、履歴５０４の最初のスペースに登録されている位置及び方向を削除する（ステップＳ２３２）。そして、ステップＳ２３３の処理に進む。
【０１２５】
ステップＳ２３３では、ＣＰＵ１０２は、キャラクタ番号に１を加算した値を、新たなキャラクタ番号として代入する。そして、ＣＰＵ１０２は、キャラクタ番号が４であるかどうかを判定する（ステップＳ２３４）。キャラクタ番号が４でなければ、キャラクタテーブル５００に登録されている全てのプレイヤキャラクタ２００について、ステップＳ２１０〜ステップＳ２３１の処理が行われていない場合であり、ステップＳ２１０の処理に戻る。キャラクタ番号が４であれば、キャラクタテーブル５００に登録されている全てのプレイヤキャラクタ２００について、ステップＳ２１０〜ステップＳ２３２の処理が行われた場合であり、ゲーム処理を終了して、図６のフローチャートの処理に復帰する。
【０１２６】
以上説明したように、この実施の形態にかかるカードゲームでは、仮想３次元空間において、対応するキャラクタカード２０の位置に応じた位置に配置され、該キャラクタカード２０の方向に応じた方向を向いているプレイヤキャラクタ２００が選択キャラクタとして指定されれば、該選択キャラクタの基準点２０１が参照点として設定され、当該選択キャラクタの向き（背面から前面方向）に視軸３０４の方向が設定され、参照点から視軸３０４上の視点距離に視点３０３が設定されることとなる。つまり、キャラクタカード２０の位置及び方向を変化させるというプレイヤの直感的な操作によって、プレイヤキャラクタ２００の位置及び方向、並びに仮想カメラの視点３０３の位置及び視軸３０４の方向を制御することができる。
【０１２７】
ここで、プレイヤによって該選択キャラクタに対応するキャラクタカード２０が、カード配置パネル１３上において位置を移動させずに方向を変更された場合、該方向の変更の行われた速度が一定速度以上であれば、該選択キャラクタは向き５０３を変えない。これに対して、視点３０３の位置は、該キャラクタカード２０が方向を変更された軌跡（履歴５０４の方向）に沿って方向を変化させたと仮定したプレイヤキャラクタ２００に応じて移動し、視点３０３の位置の移動に応じてプレイヤキャラクタ２００の基準点２０１を常に参照点とするように視軸３０４の方向が変更される。ここで、視点３０３の位置は、キャラクタカード２０の方向の変化に応じて、該キャラクタカード２０に対応するプレイヤキャラクタ２００の基準点２０１を参照点として周回移動するものとなる。
【０１２８】
このように、プレイヤは、キャラクタカード２０の位置を変えずに、所定速度以上で方向を変えるという操作を行うことによって、プレイヤキャラクタ２００の方向を変えることなく視点３０３の位置と視軸３０４の方向だけを変え、所望の角度からプレイヤキャラクタ２００を撮影した画像をＬＣＤ１１に表示させることができる。
【０１２９】
一方、方向の変更の行われた速度が一定速度未満であれば、該キャラクタカード２０が方向を変更された軌跡（履歴５０４の方向）に沿って選択キャラクタとして指定されたプレイヤキャラクタ２００も向き５０３を変え、選択キャラクタの向き５０３の変更に追随して、視点３０３の位置及び視軸３０４の方向も変化することとなる。これにより、プレイヤは、キャラクタカード２０の方向を変えるという１つの操作の速度を使い分けることで、ＬＣＤ１１に表示されるプレイヤキャラクタ２００の向き５０３を変える及び変えないという２つの指示を入力することができ、操作性が向上するものとなる。
【０１３０】
また、プレイヤの操作によって、キャラクタカード２０がカード配置パネル１３上において位置を移動させられた場合、プレイヤキャラクタ２００は、該キャラクタカード２０が位置を変更された軌跡（履歴５０４の位置）に沿ってその位置を移動させることとなる。ここで、選択キャラクタの向き５０３と、進行方向（履歴５０４の最初のスペースに登録されている位置に向かう方向）とが異なる場合、まずプレイヤキャラクタ２００は、進行方向に向き５０３を変えてから、位置５０２を移動することとなる。
【０１３１】
プレイヤキャラクタ２００の位置５０２及び向き５０３と、視点３０３の位置及び視軸３０４の方向とは、本来、対応するキャラクタカード２０の位置及び方向に応じて制御されることとなるが、プレイヤの操作によってキャラクタカード２０の位置が移動させられた場合、プレイヤキャラクタ２００の向き５０３は、該キャラクタカード２０の方向に関わらずに、プレイヤキャラクタ２００の進行方向を向くものとなる。このように、移動途中のプレイヤキャラクタ２００の向き５０３を、キャラクタカード２０の方向に関わらずに進行方向に向けることで、ゲーム画面におけるプレイヤキャラクタ２００の表示が不自然なものとならない。
【０１３２】
また、プレイヤは、カード配置パネル１３上に複数のキャラクタカード２０を載置し、それぞれに対応する複数のプレイヤキャラクタ２００をゲームに参加させることができる。ここで、最後にカード配置パネル１３上に載置された（すなわち、押圧された或いは押圧されている）キャラクタカード２０に対応するプレイヤキャラクタ２００が選択キャラクタとして指定され、該選択キャラクタとして指定したプレイヤキャラクタ２００の基準点２０１が仮想カメラにより透視変換を行う際の参照点となる。
【０１３３】
最後に押圧されたカードは、プレイヤが現時点で最も操作したいプレイヤキャラクタ２００に対応するキャラクタカード２０と考えることができる。また、最後に押圧されたキャラクタカード２０でなくとも、押圧したキャラクタカード２０について、プレイヤが対応するプレイヤキャラクタ２００を動作させたいと考えることができる。従って、視点３０３の位置及び視軸３０４の方向は、最後に押圧されたキャラクタカード２０に応じて制御するものの、各プレイヤキャラクタ２００の位置及び方向は、対応するキャラクタカード２０が最後に操作されたか否かに関わらずにキャラクタカード２０の位置及び方向の変化に応じて制御するので、できる限りプレイヤの所望するゲーム画面をＬＣＤ１１に表示させることができるものとなる。
【０１３４】
また、プレイヤは、プレイヤキャラクタ２００の位置５０２及び向き５０３の変更を、カード配置パネル１３上に載置された対応するキャラクタカード２０において行うことができ、プレイヤは、複雑な操作をすることなく、プレイヤキャラクタ２００に対応するキャラクタカード２０を所望の位置に配置し、所望の方向に向けることができる。また、プレイヤが所持しているキャラクタカード２０の種類が多いほど、使用可能なプレイヤキャラクタ２００の選択肢が増えることとなる。これにより、単にゲームをプレイするという楽しみだけではなく、ゲームに用いるキャラクタカード２０を収集するという楽しみも生じるようになる。
【０１３５】
本発明は、上記の実施の形態に限られず、種々の変形、応用が可能である。以下、本発明に適用可能な上記の実施の形態の変形形態について説明する。
【０１３６】
上記の実施の形態では、キャラクタカード２０の位置が移動せず、方向だけが変化したとき、その方向変化の速度に応じて視点３０３の位置及び視軸３０４の方向のみを制御するか、あるいは視点３０３の位置及び視軸３０４の方向とともに選択キャラクタとされているプレイヤキャラクタ２００の方向を制御するものとしていた。この場合においてキャラクタカード２０の位置が移動しないとは、厳密なものではなく、キャラクタカード２０の操作の開始から終了までにおけるキャラクタカード２０の中心位置の移動が所定距離（例えば、短辺の２分の１）以下に収まっていれば、キャラクタカード２０の位置が移動しないものとすることができる。
【０１３７】
上記の実施の形態では、キャラクタカード２０の位置を変えずに方向だけを変えた場合、その方向変化の速度が一定速度未満であれば選択キャラクタとなっているプレイヤキャラクタ２００の方向をカードの方向変化に応じて変化させるとともに視点３０３の位置を周回移動させるものとしていたが、キャラクタカード２０の方向変化の速度が一定速度以上であればプレイヤキャラクタ２００の方向を変化させずに視点３０３の位置の周回移動だけを行うものとしていた。
【０１３８】
もっとも、キャラクタカード２０の方向が一定速度よりもさらに遅い所定速度未満で変化させられたのであれば、プレイヤキャラクタ２００の方向は変化させるが、視点３０３の位置及び視軸３０４の方向は変化させないものとしてもよい。キャラクタカード２０の方向が所定速度以上一定速度未満で変化させられたときに、プレイヤキャラクタ２００の方向が変化させられるとともに、プレイヤキャラクタ２００の基準点２０１を参照点としつつ視点３０３が周回移動させられることとなる。
【０１３９】
この場合、プレイヤは、キャラクタカード２０の方向を変えるという１つの操作の速度を使い分けることで、プレイヤキャラクタ２００の方向を変えるのとともに視点３０３の位置を周回移動させる、プレイヤキャラクタ２００の方向を変えるが視点３０３の位置を周回移動させない、プレイヤキャラクタ２００の方向を変えずに視点３０３の位置を周回移動させるという３つの指示を入力することができ、操作性が向上するものとなる。なお、これら３通りの指示を分けるキャラクタカード２０の方向変化の速度の区分は、上記したものに限るのではなく、任意の範囲で区分することができる。
【０１４０】
上記の実施の形態では、キャラクタカード２０の方向を変えずに位置を移動させた場合に、プレイヤキャラクタ２００がキャラクタカード２０に対応した方向ではなく進行方向を向くものとしていたが、キャラクタカード２０の位置を移動させる際にその方向も変わっていたとしても、プレイヤキャラクタ２００を進行方向に向けるものとすることができる。この場合、視点３０３の位置及び視軸３０４の方向は、当初のプレイヤキャラクタ２００の方向に応じて制御するものとしても、キャラクタカード２０の位置及び方向の変化通りに制御されたと仮定されたプレイヤキャラクタ２００の位置及び方向に応じて制御するものとしてもよい。
【０１４１】
上記の実施の形態では、キャラクタカード２０の位置の変化に応じてプレイヤキャラクタ２００が位置を移動させているときに、プレイヤキャラクタ２００は進行方向を向くものとしていたが、視点３０３の位置及び視軸３０４の方向は、プレイヤキャラクタ２００がキャラクタカード２０の方向に対応した方向を向いていると仮定した上で、該仮定したプレイヤキャラクタ２００の位置及び方向を基準として決められるものとしていた。これに対して、移動中のプレイヤキャラクタ２０そのものの位置及び方向を基準として、視点３０３の位置及び視軸３０４の方向を定めるものとしてもよい。
【０１４２】
この場合、キャラクタカード２０が移動させられると、その移動の軌跡に従ってプレイヤキャラクタ２００が進行方向を向いて移動し、この移動中のプレイヤキャラクタ２００そのものの方向に応じて視点３０３の位置及び視軸３０４の方向が定められるものとなる。このため、選択キャラクタとされているプレイヤキャラクタ２００を常に所定方向から見た画像をＬＣＤ１１に表示させることができ、プレイヤは、キャラクタカード２０を位置を変えずに方向転換した場合を除いて、常に同じ方向からプレイヤキャラクタ２００を見ることができる。
【０１４３】
この場合において、キャラクタカード２０の移動が終了した位置に対応した位置まで、進行方向を向いて移動していたプレイヤキャラクタ２００が到達した後に、プレイヤキャラクタ２００の方向は、キャラクタカード２０の移動が終了したときの方向に対応した方向まで変化させられることとなる。このプレイヤキャラクタ２００の方向の変化に合わせて、視点３０３の位置をプレイヤキャラクタ２００を中心に仲介移動させるものとしてもよい。
【０１４４】
これにより、プレイヤキャラクタ２０の位置及び方向だけではなく、視点３０３の位置及び視軸３０４の方向も、最終的にキャラクタカード２０の位置及び方向に対応したものとすることができるので、プレイヤがキャラクタカード２０に対して行った操作を可能な限り尊重して、プレイヤキャラクタ２０の位置及び方向、視点３０３の位置及び視軸３０４の方向を定めることができる。
【０１４５】
上記の実施の形態では、方向変更モードに設定されているプレイヤキャラクタ２００は、方向変更を優先して行われるものとしていた。これに対して、方向変更モードに設定され、該モードが解除されるまで（キャラクタカード２０に対応する方向を向く前）の間に、履歴が登録されれば、当該方向変更モードが解除されるものとしてもよい。
【０１４６】
上記の実施の形態では、プレイヤキャラクタ２００は、仮想３次元空間を一定速度で移動するものとしていた。これに対して、プレイヤキャラクタ２００は、当該プレイヤキャラクタ２００に対応するキャラクタカード２０がカード配置パネル１３上において移動及び／または方向変換された速度に応じた速度で、移動するものであってもよい。この場合、プレイヤキャラクタ２００の移動速度に閾値を設けることが好ましい。
【０１４７】
上記の実施の形態では、視点距離は、全てのプレイヤキャラクタ２００に対して、一定であった。これに対して、視点距離は、各プレイヤキャラクタ２００によって異なるものであってもよい。視点距離は、各プレイヤキャラクタ２００について固定されているものであっても、所定の条件に応じて変更されるものであってもよい。例えば、大型のプレイヤキャラクタ２００の視点距離は長く、小型のプレイヤキャラクタ２００の視点距離は短くすることができる。また、選択キャラクタの近くに他のキャラクタが位置することによって、該他のキャラクタを含むように視点距離が変更されるものであってもよい。
【０１４８】
上記の実施の形態では、カード配置パネル１３は、タッチパネル１６を備えており、タッチパネル１６がタッチされた位置にキャラクタカード２０があれば、該キャラクタカード２０に対応したプレイヤキャラクタ２００が新たな選択キャラクタとなるものとしていた。これに対して、例えば、イメージセンサ１０８により読み取ったキャラクタカード２０の画像に僅かにでも変化が生じたかどうかを判別し、読み取った画像に変化が生じたキャラクタカード２０がプレイヤにより押圧されたと判断するものとしてもよい。
【０１４９】
上記の実施の形態では、キャラクタカード２０を使用したカードゲーム機１において本発明を適用した場合を例として説明した。もっとも、キャラクタカード２０を使用せずに、プレイヤの操作に従って動作するプレイヤキャラクタ２００をプレイヤが選択することとなるゲーム全般に、本発明を適用することができる。プレイヤキャラクタ２００の数は、３体に限るものではなく、１体以上の任意の数とすることができる。
【０１５０】
また、本発明を具現化したゲームを行うプラットフォームとなるコンピュータ装置は、上記したようなカードゲーム装置１に限られるものではなく、据え置き型の家庭用ゲーム機、携帯型のゲーム機、パーソナルコンピュータや、さらにはアプリケーションの実行機能を備える携帯電話機などを適用することもできる。これらをプラットフォームとして適用した場合は、インターネットなどのネットワークを介して、或いは赤外線無線通信等により互いの装置を接続して、２人での対戦プレイを行うものとすることもできる。
【０１５１】
ここで、本発明を具現化したゲームを行うプラットフォームとなるコンピュータ装置が、ＬＣＤ１１に対応する表示装置の他に、タッチパネルを上面に配した第２の表示装置を備える場合には、第２の表示装置に複数の仮想カードを表示し、各仮想カードをタッチパネルのタッチ操作により選択できるようにしてもよい。ここでは、タッチ操作のされた位置に表示されている仮想カードに対応したキャラクタが選択キャラクタということになる。また、各仮想カードの位置および／または方向は、タッチパネルのタッチ操作により変更できるようにしてもよい。この場合には、物理的なカードを用意しなくても、上記の実施の形態のゲームと同じゲーム性を実現できる。
【０１５２】
上記の実施の形態では、本発明が適用されるゲームを実行するためのプログラム及びデータは、カードゲーム装置１のメモリ１０３に予め格納されていた。もっとも、本発明を実現するプラットフォームとして、据え置き型または携帯型のゲーム機、或いはパーソナルコンピュータなどが適用される場合には、これらのプログラム及びデータは、プラットフォームとなるコンピュータ装置の形態に応じて、半導体メモリカードや光and/or磁気ディスク（フレキシブルディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭなど）などを適用することもできる。固定ディスク装置を備えるコンピュータ装置をプラットフォームとする場合には、これらのプログラム及びデータは、固定ディスク装置に予め格納して配布してもよい。
【０１５３】
さらに、ネットワークを介して他のコンピュータ装置と通信可能なコンピュータ装置をプラットフォームとして適用する場合（上記の実施の形態にかかるカードゲーム装置１を含む）には、これらのプログラム及びデータは、ネットワーク上に存在するサーバ装置が有する固定ディスク装置に格納しておき、ネットワークを介して配信するものとしてもよい。上記の実施の形態にかかるカードゲーム装置１の場合は、メモリ１０３としてフラッシュメモリなどを適用すればよい。
【図面の簡単な説明】
【０１５４】
【図１】本発明の実施の形態にかかるカードゲーム装置の外観構成を示す図である。
【図２】本発明の実施の形態にかかるカードゲーム装置の回路構成を示すブロック図である。
【図３】本発明の実施の形態にかかるカードゲームにおいて、プレイヤキャラクタを含む仮想３次元空間を透視変換して表示するための処理を模式的に示す図である。
【図４】（ａ−１）〜（ａ−３）は、カード配置パネル上に載置されたキャラクタカードの配置の具体例を示す図である。（ｂ−１）〜（ｂ−３）は、仮想３次元空間のフィールド上を上方向から見下ろした場合における、プレイヤキャラクタと視点との位置関係及び移動経路を、模式的に示す図である。
【図５】本発明の実施の形態にかかるカードゲーム装置でカードゲームを行うためにメモリにおいて管理されるキャラクタテーブルを説明する図である。
【図６】本発明の実施の形態にかかるカードゲーム装置において実行されるメイン処理を示すフローチャートである。
【図７】図６のゲーム処理を詳細に示すフローチャートである。
【符号の説明】
【０１５５】
１  カードゲーム装置
１１  ＬＣＤ
１２Ｌ、Ｒ  スピーカ
１３  カード配置パネル
１４  操作スイッチ部
１５  ＩＣカード挿入部
１６  タッチパネル
１０１  カードゲーム装置本体
１０２  ＣＰＵ
１０３  メモリ
１０４  入出力インターフェイス
１０５  サウンド回路
１０６  グラフィック表示回路
１０７  ＩＣカードリードライタ
１０８  イメージセンサ
２０  キャラクタカード
２１  ＩＣカード
２００  プレイヤキャラクタ
２０１  基準点
３０１  仮想カメラ
３０３  視点
３０４  視軸
５００  キャラクタテーブル
５０２  位置
５０３  向き
５０４  履歴
５０５  選択中フラグ
５０６  方向変更フラグ
【図１】
2008212209.tif 000003
【図２】
2008212209.tif 000004
【図３】
2008212209.tif 000005
【図４】
2008212209.tif 000006
【図５】
2008212209.tif 000007
【図６】
2008212209.tif 000008
【図７】
2008212209.tif 000009