(57)【要約】【課題】表示画面上の２次元座標を入力するデバイスからの入力に基づいて仮想３次元空間に対する座標を求める入力処理プログラムおよび入力処理装置を提供する。【解決手段】プレイヤがアイテムＩをＢ方向にドラッグするタッチパネル１３のタッチ操作を行い、Ｃ点でタッチパネル１３からスタイラス１６等を離す。この場合、タッチ操作を終了する直前のタッチパネル１３からの２次元座標情報に基づいて、アイテムＩが仮想投影面からゲーム空間内に投げ入れられる。２次元座標情報（ベクトルＢ）に基づいて、仮想３次元ゲーム空間に設定された３次元座標情報（移動ベクトルＤ）が算出され、当該移動ベクトルＤに基づいてアイテムＩが仮想投影面を離れてゲーム空間内を移動する。【選択図】図４
2008257746.tif 000002
【特許請求の範囲】
【請求項１】
表示画面と、当該表示画面上に対応する２次元座標を入力するポインティングデバイスとを備える入力処理装置のコンピュータに実行されるプログラムであって、
前記コンピュータに、
前記表示画面に仮想３次元空間を表示する表示制御ステップ、
前記ポインティングデバイスから入力された２次元座標を検出する２次元座標検出ステップ、
所定の算出開始条件に応じて、前記２次元座標検出ステップによって検出された２次元座標の単位時間における変化量を算出する２次元座標変化量算出ステップ、および
前記２次元座標変化量算出ステップによって算出された変化量を、前記仮想３次元空間内における３次元座標変化量に変換する３次元座標変化量変換ステップを実行させる、入力処理プログラム。
【請求項２】
前記ポインティングデバイスからの入力の状態を判別する入力状態判別ステップを、さらに前記コンピュータに実行させ、
前記２次元座標変化量算出ステップは、前記入力状態判別ステップが前記ポインティングデバイスからの入力が継続的に行われている状態から無入力の状態へ変化したことを判別したことを前記算出開始条件として、当該無入力の状態の直前に前記２次元座標検出ステップが検出した単位時間における２次元座標の変化量を算出することを特徴とする、請求項１に記載の入力処理プログラム。
【請求項３】
前記表示制御ステップは、
前記仮想３次元空間内に所定の仮想投影面を設定し、前記入力状態判別ステップが前記ポインティングデバイスからの入力が継続的に行われている状態であると判別しているとき、前記２次元座標検出ステップが検出した２次元座標を当該仮想投影面上に投影した位置に所定のオブジェクトを表示し、
前記３次元座標変化量変換ステップが前記３次元座標変化量に変換したとき、当該３次元座標変化量に基づいて前記オブジェクトを前記仮想投影面から離して前記仮想３次元空間内を移動させて表示することを特徴とする、請求項２に記載の入力処理プログラム。
【請求項４】
前記表示制御ステップは、前記入力状態判別ステップが前記ポインティングデバイスからの入力が継続的に行われている状態であると判別しているとき、前記２次元座標検出ステップが検出した２次元座標に基づいて、当該仮想投影面に投影するオブジェクトの表示角度を制御することを特徴とする、請求項３に記載の入力処理プログラム。
【請求項５】
前記３次元座標変化量変換ステップが変換した３次元座標変化量を前記仮想３次元空間におけるオブジェクトの初期的な移動ベクトルに設定して、当該仮想３次元空間における単位時間毎の移動軌跡を算出する移動軌跡算出ステップを、さらに前記コンピュータに実行させ、
前記表示制御ステップは、前記移動軌跡算出ステップが算出する移動軌跡に基づいて、前記オブジェクトを前記仮想投影面から離して前記仮想３次元空間内を移動させて表示することを特徴とする、請求項３に記載の入力処理プログラム。
【請求項６】
前記表示制御ステップは、前記入力状態判別ステップが前記ポインティングデバイスからの入力が継続的に行われている状態であると判別しているとき、前記２次元座標検出ステップが検出した２次元座標に基づいて、当該仮想投影面に投影するオブジェクトの表示角度を制御し、
前記移動軌跡算出ステップは、前記表示角度に応じてオブジェクトの初期的な法線ベクトルを設定して、当該仮想３次元空間における単位時間毎の移動軌跡を前記移動ベクトル
および当該法線ベクトルに基づいて算出することを特徴とする、請求項５に記載の入力処理プログラム。
【請求項７】
前記３次元座標変化量変換ステップは、前記２次元座標変化量算出ステップによって算出された第１軸および第２軸に対する変化量に基づいて、当該第１軸および第２軸に垂直な第３軸に対する変化量を算出して、前記３次元座標変化量に変換することを特徴とする、請求項１に記載の入力処理プログラム。
【請求項８】
前記３次元座標変化量変換ステップは、前記２次元座標変化量算出ステップによって算出された第１軸に対する変化量をｖｘおよび第２軸に対する変化量をｖｙとし、所定の定数をａ、ｂ、ｃ、ｄ、ｅ、およびｆとしたとき、前記３次元座標変化量として示される当該第１軸に対する変化量Ｖｘ、当該第２軸に対する変化量Ｖｙ、および前記第３軸に対する変化量Ｖｚを、
【数１】
2008257746.tif 000007
を用いて演算することを特徴とする、請求項７に記載の入力処理プログラム。
【請求項９】
前記定数ａ、ｂ、ｃ、ｄ、ｅ、およびｆは、それぞれ前記オブジェクトの種類に応じてそれぞれ異なることを特徴とする、請求項８に記載の入力処理プログラム。
【請求項１０】
表示画面と、当該表示画面上に対応する２次元座標を入力するポインティングデバイスとを備え、当該表示画面に仮想３次元空間を表示する入力処理装置のコンピュータに実行されるプログラムであって、
前記コンピュータに、
前記仮想３次元空間内に仮想投影面を設定する投影面設定ステップ、
前記ポインティングデバイスから入力された２次元座標を検出する２次元座標検出ステップ、
前記２次元座標検出ステップが検出した２次元座標を前記仮想投影面上に投影することによって、当該２次元座標に応じた当該仮想投影面上の位置に所定のオブジェクトを移動させる投影面上移動ステップ、
所定の入力条件に応じて、前記オブジェクトを前記仮想投影面から離れた前記仮想３次元空間内を移動させる３次元空間内移動ステップ、および
前記投影面上移動ステップまたは前記３次元空間内移動ステップによって移動する前記オブジェクトを前記仮想３次元空間内で表現して前記表示画面に表示する表示制御ステップを実行させる、入力処理プログラム。
【請求項１１】
表示画面と、
前記表示画面上に対応する２次元座標を入力するポインティングデバイスと、
前記表示画面に仮想３次元空間を表示する表示制御手段と、
前記ポインティングデバイスから入力された２次元座標を検出する２次元座標検出手段と、
所定の算出開始条件に応じて、前記２次元座標検出手段によって検出された２次元座標の単位時間における変化量を算出する２次元座標変化量算出手段と、
前記２次元座標変化量算出手段によって算出された変化量を、前記仮想３次元空間内における３次元座標変化量に変換する３次元座標変化量変換手段とを備える、入力処理装置。
【請求項１２】
仮想３次元空間を表示する表示画面と、
前記表示画面上に対応する２次元座標を入力するポインティングデバイスと、
前記仮想３次元空間内に仮想投影面を設定する投影面設定手段と、
前記ポインティングデバイスから入力された２次元座標を検出する２次元座標検出手段と、
前記２次元座標検出手段が検出した２次元座標を前記仮想投影面上に投影することによって、当該２次元座標に応じた当該仮想投影面上の位置に所定のオブジェクトを移動させる投影面上移動手段と、
所定の入力条件に応じて、前記オブジェクトを前記仮想投影面から離れた前記仮想３次元空間内を移動させる３次元空間内移動手段と、
前記投影面上移動手段または前記３次元空間内移動手段によって移動する前記オブジェクトを前記仮想３次元空間内で表現して前記表示画面に表示する表示制御手段とを備える、入力処理装置。
【請求項１３】
前記ポインティングデバイスは、前記表示画面を覆うタッチパネルであることを特徴とする、請求項１１および１２のいずれかに記載の入力処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力処理プログラムおよび入力処理装置に関し、より特定的には、仮想３次元空間に対して表示画面上の２次元座標を入力するデバイスを用いて操作する入力処理プログラムおよび入力処理装置に関する。
【背景技術】
【０００２】
従来、表示画面に表示される仮想３次元空間に対して、当該表示画面上の２次元座標を入力するタッチパネルを用いて操作する技術が開示されている（例えば、特許文献１および２参照）。これらの技術は、いずれも表示画面上に仮想３次元空間を表示し、当該表示画面に関連してタッチパネル等を設ける。そして、ユーザのタッチパネルの押下位置に基づいて３次元空間内のＸおよびＹ座標を決定し、ユーザがタッチパネルを押圧する大きさに基づいて３次元空間内のＺ座標（奥行方向）を決定する。
【特許文献１】特開平１１−７３７２号公報
【特許文献２】特開２００４−７０９２０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、上述した従来技術では、タッチパネル等の押圧する大きさを検出するために、感圧素子等の押圧検出機能を新たに設ける必要があり、装置自体が複雑となりコスト増加の原因となる。また、ユーザが仮想３次元空間内の奥行方向に対して大きな入力をするとき、タッチパネルを強く押下しなければならないので、タッチパネルに多大な負荷がかかることになる。そのため、タッチパネルが故障しやすくなったり、寿命が短くなったりするといった問題があった。
【０００４】
それ故に、本発明の目的は、表示画面上の２次元座標を入力するデバイスからの入力に基づいて仮想３次元空間に対する座標を求める入力処理プログラムおよび入力処理装置を提供することである。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号やステップ番号等は、本発明の理解を助けるために、後述する図面との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。
【０００６】
第１の発明は、入力処理装置（１）のコンピュータ（２１）に実行されるプログラムである。入力処理装置は、表示画面（１２）と、その表示画面上に対応する２次元座標を入力するポインティングデバイス（１３）とを備えている。プログラムは、表示制御ステップ（Ｓ５７）、２次元座標検出ステップ（Ｓ５４）、２次元座標変化量算出ステップ（Ｓ７２）、および３次元座標変化量変換ステップ（Ｓ７３）をコンピュータに実行させる。表示制御ステップは、表示画面に仮想３次元空間を表示する（図３、図４）。２次元座標検出ステップは、ポインティングデバイスから入力された２次元座標を検出する。２次元座標変化量算出ステップは、所定の算出開始条件（Ｓ５１でＹｅｓ、Ｓ５２でＮｏ）に応じて、２次元座標検出ステップによって検出された２次元座標の単位時間における変化量（ベクトルｖ）を算出する。３次元座標変化量変換ステップは、２次元座標変化量算出ステップによって算出された変化量を、仮想３次元空間内における３次元座標変化量（ベクトルＶ）に変換する。なお、ポインティングデバイスは、表示画面上での２次元座標を指定する入力装置であり、例えば、タッチパネル、マウス、トラックパッド、トラックボールなどで実現される。そして、それぞれの入力装置で用いられる座標系は、タッチパネル
座標系や画面座標系である。
【０００７】
第２の発明は、上記第１の発明において、入力状態判別ステップ（Ｓ５２）を、さらにコンピュータに実行させる。入力状態判別ステップは、ポインティングデバイスからの入力の状態を判別する。２次元座標変化量算出ステップは、入力状態判別ステップがポインティングデバイスからの入力が継続的に行われている状態（Ｓ５２でＹｅｓ）から無入力の状態（Ｓ５２でＮｏ）へ変化したことを判別したことを算出開始条件として、その無入力の状態の直前に２次元座標検出ステップが検出した単位時間における２次元座標の変化量を算出する。
【０００８】
第３の発明は、上記第２の発明において、表示制御ステップは、仮想３次元空間内に所定の仮想投影面（図５のＳ３）を設定し（Ｓ５３）、入力状態判別ステップがポインティングデバイスからの入力が継続的に行われている状態であると判別しているとき、２次元座標検出ステップが検出した２次元座標をその仮想投影面上に投影した位置に所定のオブジェクト（Ｉ）を表示する（図３）。表示制御ステップは、３次元座標変化量変換ステップが３次元座標変化量に変換したとき、その３次元座標変化量に基づいてオブジェクトを仮想投影面から離して仮想３次元空間内を移動させて表示する（図４（ｂ））。
【０００９】
第４の発明は、上記第３の発明において、表示制御ステップは、入力状態判別ステップがポインティングデバイスからの入力が継続的に行われている状態であると判別しているとき、２次元座標検出ステップが検出した２次元座標に基づいて、その仮想投影面に投影するオブジェクトの表示角度（θ）を制御する（Ｓ５５、図８）。
【００１０】
第５の発明は、上記第３の発明において、移動軌跡算出ステップ（Ｓ５９）を、さらにコンピュータに実行させる。移動軌跡算出ステップは、３次元座標変化量変換ステップが変換した３次元座標変化量を仮想３次元空間におけるオブジェクトの初期的な移動ベクトル（Ｖ）に設定して、その仮想３次元空間における単位時間毎の移動軌跡を算出する。表示制御ステップは、移動軌跡算出ステップが算出する移動軌跡に基づいて、オブジェクトを仮想投影面から離して仮想３次元空間内を移動させて表示する。
【００１１】
第６の発明は、上記第５の発明において、表示制御ステップは、入力状態判別ステップがポインティングデバイスからの入力が継続的に行われている状態であると判別しているとき、２次元座標検出ステップが検出した２次元座標に基づいて、その仮想投影面に投影するオブジェクトの表示角度を制御する。移動軌跡算出ステップは、表示角度に応じてオブジェクトの初期的な法線ベクトル（ｎ）を設定して、その仮想３次元空間における単位時間毎の移動軌跡を移動ベクトルおよび法線ベクトルに基づいて算出する。
【００１２】
第７の発明は、上記第１の発明において、３次元座標変化量変換ステップは、２次元座標変化量算出ステップによって算出された第１軸および第２軸に対する変化量（ｖｘ、ｖｙ）に基づいて、その第１軸および第２軸に垂直な第３軸に対する変化量（Ｖｚ）を算出して、３次元座標変化量に変換する。
【００１３】
第８の発明は、上記第７の発明において、３次元座標変化量変換ステップは、２次元座標変化量算出ステップによって算出された第１軸に対する変化量をｖｘおよび第２軸に対する変化量をｖｙとし、所定の定数をａ、ｂ、ｃ、ｄ、ｅ、およびｆとしたとき、３次元座標変化量として示されるその第１軸に対する変化量Ｖｘ、その第２軸に対する変化量Ｖｙ、および第３軸に対する変化量Ｖｚを、
【００１４】
【数２】
2008257746.tif 000003
を用いて演算する。
【００１５】
第９の発明は、上記第８の発明において、定数ａ、ｂ、ｃ、ｄ、ｅ、およびｆは、それぞれオブジェクトの種類に応じてそれぞれ異なる（図７）。
【００１６】
第１０の発明は、入力処理装置のコンピュータに実行されるプログラムである。入力処理装置は、表示画面と、その表示画面上に対応する２次元座標を入力するポインティングデバイスとを備え、その表示画面に仮想３次元空間を表示する。プログラムは、投影面設定ステップ（Ｓ５３）、２次元座標検出ステップ（Ｓ５４）、投影面上移動ステップ（Ｓ５４）、３次元空間内移動ステップ（Ｓ５９）、および表示制御ステップ（Ｓ５７）をコンピュータに実行させる。投影面設定ステップは、仮想３次元空間内に仮想投影面を設定する。２次元座標検出ステップは、ポインティングデバイスから入力された２次元座標を検出する。投影面上移動ステップは、２次元座標検出ステップが検出した２次元座標を仮想投影面上に投影することによって、その２次元座標に応じたその仮想投影面上の位置に所定のオブジェクトを移動させる。３次元空間内移動ステップは、所定の入力条件に応じて、オブジェクトを仮想投影面から離れた仮想３次元空間内を移動させる。表示制御ステップは、投影面上移動ステップまたは３次元空間内移動ステップによって移動するオブジェクトを仮想３次元空間内で表現して表示画面に表示する。
【００１７】
第１１の発明は、表示画面、ポインティングデバイス、表示制御手段、２次元座標検出手段、２次元座標変化量算出手段、および３次元座標変化量変換手段を備える入力処理装置である。ポインティングデバイスは、表示画面上に対応する２次元座標を入力する。表示制御手段は、表示画面に仮想３次元空間を表示する。２次元座標検出手段は、ポインティングデバイスから入力された２次元座標を検出する。２次元座標変化量算出手段は、所定の算出開始条件に応じて、２次元座標検出手段によって検出された２次元座標の単位時間における変化量を算出する。３次元座標変化量変換手段は、２次元座標変化量算出手段によって算出された変化量を、仮想３次元空間内における３次元座標変化量に変換する。
【００１８】
第１２の発明は、表示画面、ポインティングデバイス、投影面設定手段、２次元座標検出手段、投影面上移動手段、３次元空間内移動手段、および表示制御手段を備える入力処理装置である。表示画面は、仮想３次元空間を表示する。ポインティングデバイスは、表示画面上に対応する２次元座標を入力する。投影面設定手段は、仮想３次元空間内に仮想投影面を設定する。２次元座標検出手段は、ポインティングデバイスから入力された２次元座標を検出する。投影面上移動手段は、２次元座標検出手段が検出した２次元座標を仮想投影面上に投影することによって、その２次元座標に応じたその仮想投影面上の位置に所定のオブジェクトを移動させる。３次元空間内移動手段は、所定の入力条件に応じて、オブジェクトを仮想投影面から離れた仮想３次元空間内を移動させる。表示制御手段は、投影面上移動手段または３次元空間内移動手段によって移動するオブジェクトを仮想３次元空間内で表現して表示画面に表示する。
【００１９】
第１３の発明は、上記第１１および第１２の発明のいずれかにおいて、ポインティングデバイスは、表示画面を覆うタッチパネルである。
【発明の効果】
【００２０】
上記第１の発明によれば、所定の算出開始条件に応じて、２次元座標における変化量を
３次元座標の変化量に変換するので、第３軸の変化量を得るための押圧検出機能等の特別な入力装置を設けることなく簡単な構成で２次元座標を３次元座標へ変換することができる。また、背景技術のようにユーザからの押圧を検出しないので、タッチパネル等のポインティングデバイスに多大な負担がかかることがなく、故障が多くなったり寿命が短くなったりするといったデバイス信頼性の低下を回避することができる。
【００２１】
上記第２の発明によれば、ポインティングデバイスへの入力が継続的に行われている状態から無入力状態への変化を条件として、無入力の状態の直前に検出された２次元座標に基づいて３次元座標に変換する。したがって、簡単な操作で２次元座標に基づいた入力制御から仮想３次元空間における３次元座標に基づいた入力に適宜切り替えて制御することができる。
【００２２】
上記第３の発明によれば、表示画面上の２次元座標を入力するポインティングデバイスからの２次元入力座標に応じて仮想投影面上をオブジェクトが移動し、ポインティングデバイスからの入力が無入力になると仮想投影面を離れて仮想３次元空間に当該オブジェクトが移動するような入力処理を実現することができる。例えば、ポインティングデバイスからの入力が継続している間は３次元ゲーム空間に設定された仮想投影面上をアイテムが移動し、ポインティングデバイスからの入力が無入力になるとアイテムが仮想投影面からゲーム空間に投げ入れられるようなゲーム処理を実現できる。
【００２３】
上記第４の発明によれば、ポインティングデバイスから入力される２次元座標に基づいて、オブジェクトの表示角度を制御することができる。
【００２４】
上記第５の発明によれば、変換された３次元座標変化量に基づいてオブジェクトの移動軌跡を変化させるので、バリエーションに富んだ移動軌跡を表示することができる。
【００２５】
上記第６の発明によれば、さらに２次元座標に応じて変化するオブジェクトの表示角度から得られる法線ベクトルに基づいてオブジェクトの移動軌跡を変化させるので、ポインティングデバイスにおける指示位置に応じてバリエーションに富んだ移動軌跡を表示することができる。
【００２６】
上記第７の発明によれば、２次元座標の変化量に基づいて、２次元座標軸を構成する２軸に垂直な第３軸成分を算出するため、２次元座標の変化量から３次元座標の変化量を容易に求めることができる。
【００２７】
上記第８の発明によれば、２次元座標の変化量から３次元座標の変化量を求める際、行列式を用いてそれぞれの軸に対する変化量を容易に求めることができる。
【００２８】
上記第９の発明によれば、オブジェクトの種類に応じて３次元座標の変化量が求められるため、オブジェクトの仮想３次元空間内での移動制御のバリエーションを増やすことができる。
【００２９】
上記第１０の発明によれば、表示画面上の２次元座標を入力するポインティングデバイスからの入力座標に応じて仮想投影面上をオブジェクトが移動し、所定の入力条件に応じて仮想投影面から仮想３次元空間内に当該オブジェクトが移動するような入力制御を実現できる。
【００３０】
また、本発明の入力制御装置によれば、上述した入力制御プログラムと同様の効果を得ることができる。
【発明を実施するための最良の形態】
【００３１】
図面を参照して、本発明の一実施形態に係るゲームプログラムを実行するゲーム装置について説明する。なお、図１は、本発明のゲームプログラムを実行するゲーム装置１の外観図である。ここでは、ゲーム装置１の一例として、携帯ゲーム装置を示す。また、以下の説明で用いるゲームプログラムが本発明の入力処理プログラムの一例であり、ゲーム装置１が本発明の入力処理装置の一例である。
【００３２】
図１において、本実施形態のゲーム装置１は、２つの液晶表示器（ＬＣＤ）１１および１２を所定の配置位置となるように、ハウジング１８に収納して構成される。具体的には、第１液晶表示器（以下、「ＬＣＤ」という）１１および第２ＬＣＤ１２を互いに上下に配置して収納する場合は、ハウジング１８が下部ハウジング１８ａおよび上部ハウジング１８ｂから構成され、上部ハウジング１８ｂが下部ハウジング１８ａの上辺の一部で回動自在に支持される。上部ハウジング１８ｂは、第１ＬＣＤ１１の平面形状よりも少し大きな平面形状を有し、一方主面から第１ＬＣＤ１１の表示画面を露出するように開口部が形成される。下部ハウジング１８ａは、その平面形状が上部ハウジング１８ｂよりも横長に選ばれ、横方向の略中央部に第２ＬＣＤ１２の表示画面を露出する開口部が形成され、第２ＬＣＤ１２を挟む何れか一方にスピーカ１５の音抜き孔が形成されるとともに、第２ＬＣＤ１２を挟む左右に操作スイッチ部１４が装着される。
【００３３】
操作スイッチ部１４は、第２ＬＣＤ１２の右横における下部ハウジング１８ａの一方主面に装着される動作スイッチ（Ａボタン）１４ａおよび動作スイッチ（Ｂボタン）１４ｂと、第２ＬＣＤ１２の左横における下部ハウジング１８ａの一方主面に装着される方向指示スイッチ（十字キー）１４ｃと、スタートスイッチ１４ｄと、セレクトスイッチ１４ｅと、側面スイッチ１４ｆおよび１４ｇとを含む。動作スイッチ１４ａおよび１４ｂは、例えばサッカーゲーム等のスポーツゲームにおいてはパスやシュートを行う等の指示、アクションゲームにおいてはジャンプ、パンチ、武器を動かす等の指示、ロールプレイングゲーム（ＲＰＧ）やシミュレーションＲＰＧにおいてはアイテムの取得、武器またはコマンドの選択決定等の指示入力に使用される。方向指示スイッチ１４ｃは、プレイヤによって操作スイッチ部１４を用いて操作可能なプレイヤオブジェクト（またはプレイヤキャラクタ）の移動方向を指示したり、カーソルの移動方向を指示したりする等のゲーム画面における方向指示に用いられる。側面スイッチ（Ｌボタン）１４ｆおよび側面スイッチ（Ｒボタン）１４ｇは、下部ハウジング１８ａにおける上部面（上部側面）の左右に設けられる。また、必要に応じて、動作スイッチをさらに追加してもかまわない。
【００３４】
また、第２ＬＣＤ１２の上面には、本発明の入力装置の一例としてタッチパネル１３（図１における破線領域）が装着される。タッチパネル１３は、例えば、抵抗膜方式、光学式（赤外線方式）、静電容量結合式の何れの種類でもよく、その上面をスタイラス１６（または指でも可）で押圧操作、移動操作、または撫でる操作をしたとき、スタイラス１６の座標位置を検出して座標データを出力する２次元ポインティングデバイスである。
【００３５】
上部ハウジング１８ｂの側面近傍には、必要に応じてタッチパネル１３を操作するスタイラス１６を収納するための収納孔（図１における二点破線領域）が形成される。この収納孔には、スタイラス１６が収納される。下部ハウジング１８ａの側面の一部には、ゲームプログラムを記憶したメモリ（例えば、ＲＯＭ）を内蔵したゲームカートリッジ１７（以下、単にカートリッジ１７と記載する）を着脱自在に装着するためのカートリッジ挿入部（図１における一点破線領域）が形成される。カートリッジ１７は、ゲームプログラムを記憶する情報記憶媒体であり、例えば、ＲＯＭまたはフラッシュメモリのような不揮発性半導体メモリが用いられる。カートリッジ挿入部の内部には、カートリッジ１７と電気的に接続するためのコネクタ（図２参照）が内蔵される。さらに、下部ハウジング１８ａ（または上部ハウジング１８ｂでも可）には、ＣＰＵ等の各種電子部品を実装した電子回
路基板が収納される。なお、ゲームプログラムを記憶する情報記憶媒体としては、上記不揮発性半導体メモリに限らず、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはそれらに類する光学式ディスク状記憶媒体でもよい。
【００３６】
図２は、ゲーム装置１のブロック図である。図２において、ハウジング１８に収納される電子回路基板２０には、ＣＰＵコア２１が実装される。ＣＰＵコア２１には、所定のバスを介して、コネクタ２８が接続されるとともに、入出力インターフェース（Ｉ／Ｆ）回路２７、第１グラフィック処理ユニット（第１ＧＰＵ）２４、第２グラフィック処理ユニット（第２ＧＰＵ）２６、ＷＲＡＭ２２、およびＬＣＤコントローラ２９が接続される。コネクタ２８には、カートリッジ１７が着脱自在に接続される。カートリッジ１７は、ゲームプログラムを格納するための記憶媒体であり、具体的には、ゲームプログラムを記憶するＲＯＭ１７１とバックアップデータを書き換え可能に記憶するＲＡＭ１７２とを搭載する。カートリッジ１７のＲＯＭ１７１に記憶されたゲームプログラムは、ＷＲＡＭ２２にロードされ、当該ＷＲＡＭ２２にロードされたゲームプログラムがＣＰＵコア２１によって実行される。ＣＰＵコア２１は、ゲームプログラムを実行して得られる一時的なデータや画像を生成するためのデータをＷＲＡＭ２２に記憶する。Ｉ／Ｆ回路２７には、操作スイッチ部１４およびタッチパネル１３が接続されるとともに、スピーカ１５が接続される。
【００３７】
第１ＧＰＵ２４には、第１ビデオＲＡＭ（第１ＶＲＡＭ）２３が接続され、第２ＧＰＵ２６には、第２ビデオＲＡＭ（第２ＶＲＡＭ）２５が接続される。第１ＧＰＵ２４は、ＣＰＵコア２１からの指示に応じて、ＷＲＡＭ２２に記憶されている、画像を生成するためのデータに基づいて第１のゲーム画像を生成し、第１ＶＲＡＭ２３に描画（格納）する。第２ＧＰＵ２６は、ＣＰＵコア２１からの指示に応じて、ＷＲＡＭ２２に記憶されている、画像を生成するためのデータに基づいて第２のゲーム画像を生成し、第２ＶＲＡＭ２５に描画（格納）する。第１ＶＲＡＭ２３および第２ＶＲＡＭ２５はＬＣＤコントローラ２９に接続される。
【００３８】
ＬＣＤコントローラ２９は、レジスタ２９１を含む。レジスタ２９１は、ＣＰＵコア２１からの指示に応じて０または１の値を記憶する。ＬＣＤコントローラ２９は、レジスタ２９１の値が０の場合は、第１ＶＲＡＭ２３に描画されたゲーム画像を第１ＬＣＤ１１に出力し、第２ＶＲＡＭ２５に描画されたゲーム画像を第２ＬＣＤ１２に出力する。また、レジスタ２９１の値が１の場合は、第１ＶＲＡＭ２３に描画されたゲーム画像を第２ＬＣＤ１２に出力し、第２ＶＲＡＭ２５に描画されたゲーム画像を第１ＬＣＤ１１に出力する。
【００３９】
Ｉ／Ｆ回路２７は、操作スイッチ部１４、タッチパネル１３、およびスピーカ１５などの外部入出力装置とＣＰＵコア２１との間のデータの受け渡しを行う回路である。タッチパネル１３（タッチパネル用のデバイスドライバを含む）は、第２ＶＲＡＭ２５の座標系に対応する座標系を有し、スタイラス１６によって入力（指示）された位置に対応する位置座標のデータを出力するものである。なお、本実施例では、第２ＬＣＤ１２の表示画面の解像度は２５６ｄｏｔ×１９２ｄｏｔであり、タッチパネル１３の検出精度も第２ＬＣＤ１２の表示画面に対応した２５６ｄｏｔ×１９２ｄｏｔとして説明するが、タッチパネル１３の検出精度は第２ＬＣＤ１２の表示画面の解像度よりも低いものであってもよいし、高いものであってもよい。
【００４０】
以下、図３および図４を参照して、上記ゲーム装置１によって実行されるゲームプログラムによるゲーム処理の流れを、具体的な表示画面例を参照しながら説明する。なお、本実施例では、ゲーム装置１によって実行されるゲームがゲーム空間にアイテムを投げ入れるゲームの場合について説明するが、本発明はこのようなゲームに限定されるものではな
い。なお、図３は、ゲーム空間に投入するためのアイテムＩの初期位置を決定する様子を示す第２ＬＣＤ１２の表示画面例である。図４（ａ）は、アイテムＩをゲーム空間に投げ入れる操作の様子を示す第２ＬＣＤ１２の表示画面例である。図４（ｂ）は、投げ入れられたアイテムＩのゲーム空間内における移動動作の様子を示す第２ＬＣＤ１２の表示画面例である。
【００４１】
図３において、第２ＬＣＤ１２には仮想３次元ゲーム空間の様子が表示され、当該ゲーム空間に投入されるアイテムＩ（図３ではフライングディスクが示されている）が表示される。後述により明らかとなるが、第２ＬＣＤ１２には所定のカメラ視点に基づいた視体積に応じたゲーム空間が表示され、アイテムＩは、当該視体積内に設定された仮想投影面に投影されている。プレイヤは、タッチパネル１３を用いて第２ＬＣＤ１２に表示されたアイテムＩの位置をタッチ操作して、ゲーム空間内においてアイテムＩを移動させることができる。具体的には、プレイヤは、タッチパネル１３を用いて第２ＬＣＤ１２に表示されたアイテムＩをドラッグするタッチ操作（第２ＬＣＤ１２上でアイテムＩと重なったタッチパネル１３をタッチ操作し、そのままの状態でタッチ操作位置を移動させる）を行うと、タッチパネル１３からの入力座標に応じた仮想投影面の位置にアイテムＩが移動する。例えば、図３では、プレイヤがアイテムＩを図示Ａ方向に移動させた一例を示している。つまり、プレイヤは、アイテムＩに対してドラッグするタッチ操作を行うことによって、アイテムＩを仮想投影面上で移動させることができる。
【００４２】
プレイヤがアイテムＩをドラッグするタッチ操作を行った後、タッチパネル１３に対するタッチ操作を終了（つまり、タッチ操作しているスタイラス１６等をタッチパネル１３から離す）した場合、アイテムＩが上記仮想投影面からゲーム空間内に投げ入れられる。図４（ａ）に示すように、プレイヤがアイテムＩを図示Ｂ方向にドラッグするタッチ操作を行い、図示Ｃ点で当該タッチ操作を終了してスタイラス１６等をタッチパネル１３から離したとする。この場合、タッチ操作を終了する直前のタッチパネル１３からの２次元座標情報に基づいて、アイテムＩが上記仮想投影面からゲーム空間内に投げ入れられる。図４（ｂ）に示すように、図示Ｃ点でタッチ操作を終了する直前のタッチパネル１３による２次元座標情報（ベクトルＢ）に基づいて、仮想３次元ゲーム空間に設定された３次元座標情報（移動ベクトルＤ）が算出され、当該移動ベクトルＤに基づいてアイテムＩが仮想投影面を離れてゲーム空間内を移動する。
【００４３】
次に、図５を参照して、第２ＬＣＤ１２に表示される仮想３次元ゲーム空間および仮想投影面について説明する。なお、図５は、仮想３次元ゲーム空間および仮想投影面を説明するための概念図である。
【００４４】
図５において、カメラ視点Ｐを基準として手前側クリップ面Ｓ１および奥側クリップ面Ｓ２が設定される。そして、第２ＬＣＤ１２には、仮想３次元ゲーム空間のうち、手前側クリップ面Ｓ１および奥側クリップ面Ｓ２で挟まれた視体積に設定される空間が表示される。仮想投影面Ｓ３は、上記視体積内に設定され、例えば手前側クリップ面Ｓ１に対して平行に配置される。そして、手前側クリップ面Ｓ１においてタッチパネル１３のタッチパネル座標系が設定され、タッチパネル１３からの入力座標が仮想投影面Ｓ３に投影される。なお、説明を簡単にするためにタッチパネル座標系が設定される手前側クリップ面Ｓ１と仮想投影面Ｓ３とが互いに平行の平面とするが、手前側クリップ面Ｓ１と仮想投影面Ｓ３とが平行でなくても入力座標の投影を同様に行うことができることは言うまでもない。また、仮想投影面Ｓ３が平面でなく球面等であっても入力座標の投影を同様に行うことができることは言うまでもない。
【００４５】
次に、図６および図７を参照して、２次元座標で示されるタッチパネル座標系から３次元座標で示されるゲーム空間座標系への座標変換について説明する。図６（ａ）は、タッ
チパネル１３に設定されたタッチパネル座標系に設定されるベクトルｖ（ｖｘ、ｖｙ）を示す概念図である。図６（ｂ）は、仮想３次元ゲーム空間に設定された３次元座標に設定されるベクトルＶ（Ｖｘ、Ｖｙ、Ｖｚ）を示す概念図である。図７は、座標変換の際に用いられる定数ａ〜ｆの設定例である。
【００４６】
図６（ａ）において、タッチパネル１３に対してタッチパネル座標系における点ｑ１（ｘ１、ｙ１）から点ｑ２（ｘ２、ｙ２）までタッチ操作されたとき、点ｑ１からｑ２まで結ぶベクトルｖ（ｖｘ、ｖｙ）が得られる。ここで、
ｖｘ＝ｘ２−ｘ１
ｖｙ＝ｙ２−ｙ１
である。
【００４７】
そして、本実施例では、プレイヤがタッチパネル１３に対して所定条件と一致する操作を行った際、当該操作を行う直前に設定された上記２次元ベクトルｖ（ｖｘ、ｖｙ）を座標変換して図６（ｂ）に示すような３次元ベクトルＶ（Ｖｘ、Ｖｙ、Ｖｚ）を算出する。ここで、２次元ベクトルｖ（ｖｘ、ｖｙ）から３次元ベクトルＶ（Ｖｘ、Ｖｙ、Ｖｚ）への座標変換は、
【００４８】
【数３】
2008257746.tif 000004
によって行われる。上記式に用いられている定数ａ〜ｆは、図７に示すようにゲーム空間に投入するアイテム毎に設定されている。例えば、アイテムＩがフライングディスクの場合、定数ａ＝１．０、ｂ＝０、ｃ＝０、ｄ＝０．５、ｅ＝０、ｆ＝２．０に設定されており、座標変換後ベクトルＶ（Ｖｘ、Ｖｙ、Ｖｚ）は、Ｖｘ＝ｖｘ、Ｖｙ＝０．５ｖｙ、Ｖｚ＝２ｖｙによって算出される。このように、本実施例の座標変換では、２次元座標系で設定される２点間の移動量（ベクトルｖ）として示される２軸それぞれに対する数値を用いて、３次元座標系で設定される移動量（ベクトルＶ）の３軸それぞれに対する数値が算出される。また、ゲーム空間に投入するアイテム毎に座標変換する定数が異なるため、座標変換においてアイテム毎の特性を表すことができる。
【００４９】
次に、図８および図９を用いて、アイテムＩが仮想投影面を離れて仮想ゲーム空間内を移動する際の移動軌跡の算出について説明する。なお、図８は、アイテムＩに初期設定される傾斜角度に応じたアイテムＩの画面表示例である。図９は、アイテムＩが仮想投影面を離れて仮想ゲーム空間内を移動する際に設定される移動ベクトルおよび法線ベクトルの概念図である。
【００５０】
図８において、上述したようにプレイヤがタッチパネル１３を用いて第２ＬＣＤ１２に表示されたアイテムＩをドラッグするタッチ操作を行うと、タッチパネル１３からの入力座標に応じた仮想投影面の位置にアイテムＩが移動する。そして、タッチパネル１３に対する図示ｘｍ方向（図８における横方向）の位置に応じて、アイテムＩに初期設定される傾斜角度θが設定される。具体的には、タッチパネル１３の中央をｘｍ＝０として、右方向を＋ｘｍ、左方向を−ｘｍとする。そして、傾斜角度θが
θ＝ｊｘｍ＋ｋ（ｊ、ｋは定数）
で求められる。なお、タッチパネル１３に対して縦方向となる図８における上方向を傾斜角度θ＝０°とする。そして、第２ＬＣＤ１２には、傾斜角度θにアイテムＩの法線方向を合わせて表示される。すなわち、アイテムＩは、タッチパネル１３に対する横方向の位置に応じてその法線方向を傾斜させて表示される。そして、初期設定されたアイテムＩの
傾斜角度θに基づいて、法線ベクトルｎ＝（ｓｉｎθ、ｃｏｓθ、０）が初期設定される。
【００５１】
上述したように、アイテムＩが仮想投影面を離れて３次元ゲーム空間内に投げ入れる操作をされた後、当該アイテムＩは、ゲーム空間を移動ベクトルおよび法線ベクトルに基づいて移動する。図９において、アイテムＩに設定される移動ベクトルおよび法線ベクトルは、ゲーム処理を行う１フレーム毎に算出される。具体的には、新たなフレーム（ｉ＋１）における法線ベクトルｎ（ｉ＋１）は、直前のフレーム（ｉ）で設定された法線ベクトルｎ（ｉ）、移動ベクトルＶ（ｉ）、および定数αを用いて、
【００５２】
【数４】
2008257746.tif 000005
で算出される。また、新たなフレーム（ｉ＋１）における移動ベクトルＶ（ｉ＋１）は、直前のフレーム（ｉ）で設定された法線ベクトルｎ（ｉ）、移動ベクトルＶ（ｉ）、重力ベクトルｇ、および定数βを用いて、
【００５３】
【数５】
2008257746.tif 000006
で算出される。
【００５４】
次に、図１０および図１１を参照して、本発明のゲームプログラムによってゲーム装置１で実行されるタッチパネル１３から入力される情報に基づいた処理について説明する。なお、図１０および図１１は、当該ゲームプログラムを実行することによってゲーム装置１が処理する動作を示すフローチャートである。なお、これらの処理を実行するためのプログラムは、ＲＯＭ１７１に格納されたゲームプログラムに含まれており、ゲーム装置１の電源がオンになったときに、ＲＯＭ１７１からＷＲＡＭ２２に読み出されて、ＣＰＵコア２１によって実行される。
【００５５】
まず、ゲーム装置１の電源（図示せず）がＯＮされると、ＣＰＵコア２１によってブートプログラム（図示せず）が実行され、これによりカートリッジ１７に格納されているゲームプログラムがＷＲＡＭ２２にロードされる。当該ロードされたゲームプログラムがＣＰＵコア２１に実行されることによって、図１０および図１１に示すステップ（図１０および図１１では「Ｓ」と略称する）が実行される。なお、上記ゲームプログラムを実行することによって、当該ゲームプログラムに応じたゲーム画像などが第１ＬＣＤ１１および第２ＬＣＤ１２に描画されるが、ゲーム内容についての詳細な説明を省略し、ここではタッチパネル１３から入力される情報に基づいてアイテムが移動する処理について詳述する。
【００５６】
図１０において、ＣＰＵコア２１がゲーム処理を開始すると各種の初期設定をした後、ゲームを開始する。そして、ＣＰＵコア２１は、アイテム指示フラグがオンしているか否かを判断する（ステップ５１）。そして、ＣＰＵコア２１は、アイテム指示フラグがオンであれば処理を次のステップ５２に進め、アイテム指示フラグがオフであれば処理を次のステップ５８に進める。ここで、アイテム指示フラグは、プレイヤがタッチパネル１３を
用いてアイテムＩ（図３参照）をタッチしているか否かを区別するフラグであり、プレイヤがアイテムＩをタッチしているときにオンに設定される。
【００５７】
ステップ５２において、ＣＰＵコア２１は、タッチパネル１３から入力があるか否かを判断する。そして、ＣＰＵコア２１は、タッチパネル１３から入力がある場合に処理を次のステップ５３に進め、タッチパネル１３からの入力がない場合に処理を次のステップ７１に進める。
【００５８】
ステップ５３において、ＣＰＵコア２１は、仮想３次元ゲーム空間内に仮想投影面Ｓ３（図９参照）を設定し、処理を次のステップに進める。なお、仮想投影面Ｓ３については、上述したとおりであるので、ここでは詳細な説明を省略する。
【００５９】
次に、ＣＰＵコア２１は、タッチパネル１３からの入力座標を検出し、検出した座標に対応する仮想投影面Ｓ３上の２次元座標位置に、アイテムＩの表示位置を合わせる（ステップ５４；図３）。そして、ＣＰＵコア２１は、入力座標のｘ座標値（タッチパネル１３の横方向の座標；図８に示すｘｍ方向）に基づいて、アイテムＩの傾き角度θを算出する（ステップ５５；図８）。そして、ＣＰＵコア２１は、上記ステップ５５で算出された傾き角度θに基づいて、アイテムＩの初期設定における法線ベクトルｎを算出する（ステップ５６）。ここで、ＣＰＵコア２１は、アイテムＩの法線ベクトルｎをｎ＝（ｓｉｎθ、ｃｏｓθ、０）で算出する。そして、ＣＰＵコア２１は、ステップ５５で算出された傾き角度θに応じてアイテムＩを傾斜させて、第２ＬＣＤ１２に対するアイテム表示制御処理を行い（ステップ５７；図８）、ゲームを継続する場合（ステップ６３でＮｏ）に上記ステップ５１に戻って処理を繰り返す。これらステップ５１〜５７をＣＰＵコア２１が繰り返すことによって、プレイヤのタッチパネル１３のタッチ操作に応じてアイテムＩが仮想投影面Ｓ３上を移動する。
【００６０】
一方、図１１を参照して、アイテム指示フラグがオン（ステップ５１でＹｅｓ）でタッチパネル１３からの入力がない（ステップ５２でＮｏ）の場合の処理について説明する。ステップ５２でタッチパネル１３からの入力がないと判断した場合、ＣＰＵコア２１は、直前の２フレームにおいてタッチパネル１３からの入力があったか否かを判断する（ステップ７１）。そして、直前の２フレームにおいてタッチパネル１３からの入力があった場合、ＣＰＵコア２１は、処理を次のステップ７２に進める。一方、直前の２フレームの何れかにおいてタッチパネル１３からの入力がなかった場合、ＣＰＵコア２１は、処理を次のステップ６３に進める。
【００６１】
ステップ７２において、ＣＰＵコア２１は、直前の２フレームにおいてタッチパネル１３からの入力されたそれぞれの入力座標を用いて、２フレーム間の座標変化量を算出する。具体的には、直前の２フレームにおける入力座標が点ｑ１（ｘ１、ｙ１）および点ｑ２（ｘ２、ｙ２）の場合、座標変化量として点ｑ１からｑ２まで結ぶベクトルｖ（ｖｘ、ｖｙ）を算出する。ここで、
ｖｘ＝ｘ２−ｘ１
ｖｙ＝ｙ２−ｙ１
である。そして、ＣＰＵコア２１は、処理を次のステップに進める。
【００６２】
次に、ＣＰＵコア２１は、上記ステップ７２で求めた座標変化量（ベクトルｖ）に基づいて、アイテムＩに対する仮想３次元ゲーム空間内の移動速度（移動ベクトルＶ）を算出し（ステップ７３）、処理を次のステップに進める。ステップ７３においては、上述した２次元座標系で設定される２点間の移動量（ベクトルｖ）として示される２軸それぞれに対する数値を用いて、３次元座標系で設定される移動量（ベクトルＶ）の３軸それぞれに対する数値を算出する座標変換が用いられる。ここで、座標変換に用いられる定数ａ〜ｆ
は、上述したようにアイテムＩの種類に応じて設定される。
【００６３】
次に、ＣＰＵコア２１は、アイテム指示フラグをオフにして（ステップ７４）、処理をステップ５７に進める。これらステップ７１〜７４をＣＰＵコア２１が実行することによって、２次元座標系で設定される２点間の移動量が３次元座標系で設定される移動量（ベクトルＶ）に座標変換される。
【００６４】
一方、図１０に戻って、アイテム指示フラグがオフ（ステップ５１でＮｏ）の場合の処理について説明する。ステップ５１でアイテム指示フラグがオフと判断した場合、ＣＰＵコア２１は、アイテムＩが仮想投影面を離れて３次元ゲーム空間内を移動中か否かを判断する（ステップ５８）。ここで、ＣＰＵコア２１は、例えばアイテムＩに移動ベクトルＶが設定されている場合にアイテムＩが３次元ゲーム空間内を移動中であると判断する。そして、ＣＰＵコア２１は、アイテムＩがゲーム空間内を移動中である場合、処理を次のステップ５９に進める。一方、ＣＰＵコア２１は、アイテムＩがゲーム空間内を移動していない場合（例えば、プレイヤがタッチパネル１３に最初にタッチしたときや、全くタッチパネル１３に触れていないとき等）、処理を次のステップ６０に進める。
【００６５】
ステップ５９において、ＣＰＵコア２１は、３次元ゲーム空間内のアイテムＩの移動軌跡を算出する。ＣＰＵコア２１は、アイテムＩの移動軌跡の算出にあたって、上述したように直前のフレームにおいて算出された法線ベクトルｎおよび移動ベクトルＶを用いて、新たなフレームの法線ベクトルｎおよび移動ベクトルＶを算出する（図９参照）。そして、ＣＰＵコア２１は、ステップ５９で算出された法線ベクトルｎおよび移動ベクトルＶに応じてアイテムＩを移動させて、第２ＬＣＤ１２に対するアイテム表示制御処理を行い（ステップ５７；図４（ｂ））、ゲームを継続する場合（ステップ６３でＮｏ）に上記ステップ５１に戻って処理を繰り返す。これらステップ５１、５８、５９、および５７をＣＰＵコア２１が繰り返すことによって、仮想投影面を離れて仮想ゲーム空間内を移動するアイテムＩが表現される。
【００６６】
一方、ステップ６０において、ＣＰＵコア２１は、タッチパネル１３から入力があるか否かを判断する。そして、ＣＰＵコア２１は、タッチパネル１３から入力がある場合に処理を次のステップ６１に進め、タッチパネル１３からの入力がない場合に処理を次のステップ６３に進める。
【００６７】
ステップ６１において、ＣＰＵコア２１は、プレイヤが第２ＬＣＤ１２上でアイテムＩと重なったタッチパネル１３をタッチ操作したか否かを判断する。そして、ＣＰＵコア２１は、プレイヤがアイテムＩをタッチ操作している場合、アイテム指示フラグをオンして（ステップ６２）、処理をステップ６３に進める。一方、ＣＰＵコア２１は、プレイヤがアイテムＩをタッチ操作していない場合、そのまま処理をステップ６３に進める。
【００６８】
ステップ６３では、ＣＰＵコア２１は、ゲームを継続するか否かを判断する。そして、ＣＰＵコア２１は、ゲームを継続する場合に上記ステップ５１に戻って処理を繰り返し、ゲームを終了する場合に当該サブルーチンによる処理を終了する。なお、上記ステップ５１〜６３の処理がゲーム処理を行う単位時間（例えば、１フレーム）毎に繰り返される。
【００６９】
なお、上述した説明では、仮想３次元ゲーム空間に対する移動ベクトルＶの算出を、プレイヤがタッチパネル１３からスタイラス１６等を離す（ステップ５２でＮｏ）ことを条件として行ったが、他の条件に応じて算出を行ってもかまわない。例えば、プレイヤが操作スイッチ部１４（例えば動作スイッチ（Ａボタン）１４ａ）を押下することを条件として、移動ベクトルＶの算出を行ってもかまわない。
【００７０】
また、上述した説明では、仮想投影面Ｓ３を手前側クリップ面Ｓ１に対して平行に配置した平面として説明したが、仮想投影面Ｓ３と手前側クリップ面Ｓ１とは平行でなくてもかまわない。仮想投影面Ｓ３が手前側クリップ面Ｓ１に対して斜めの平面であっても、入力座標の投影を同様に行って仮想投影面Ｓ３上の２次元座標（Ｘ軸、Ｙ軸）を設定することができる。この場合、仮想投影面Ｓ３に垂直な方向を第３軸（Ｚ軸）として、仮想３次元ゲーム空間に対する移動ベクトルＶを上述した座標変換を用いて同様に算出することができる。
【００７１】
このように、本発明のゲーム装置によれば、表示画面上の２次元座標を入力するタッチパネルからの入力座標に応じて仮想投影面上をアイテムが移動し、所定の条件（タッチパネルから離す操作）に基づいて仮想投影面から仮想３次元ゲーム空間に当該アイテムが投げ入れられるゲームを実現できる。また、仮想投影面上に設定されている２次元座標の変化量（ベクトルｖ）に基づいて、当該仮想投影面に垂直な成分を算出するため、２次元座標の変化量から３次元座標の変化量（ベクトルＶ）を容易に求めることができる。したがって。従来技術のように押圧検出機能を設けることなく簡単な構成で２次元座標から３次元座標への変換を行うことができる。また、押圧を検出しないので、タッチパネル等の入力手段に多大な負担がかかることがなく、故障が多くなったり寿命が短くなったりするといったデバイス信頼性の低下を回避することができる。
【００７２】
なお、上記実施例では、表示画面上の２次元座標を入力する入力装置としてタッチパネルを用いたが、他のポインティングデバイスを用いてもかまわない。ここで、ポインティングデバイスは、表示画面上での入力位置や座標を指定する入力装置であり、例えば、マウス、トラックパッド、トラックボールなどを入力装置として使用し、入力装置から出力される出力値から計算された画面座標系の情報を用いれば、本発明を同様に実現することができる。なお、マウス等のポインティングデバイスの場合、タッチ状態と非タッチ状態とをクリックボタンのオンオフに対応させ、マウス等から出力される出力値から座標を計算する処理をゲーム装置等で行えばよい。
【００７３】
また、上記実施例では、ゲーム装置１にタッチパネル１３が一体的に設けられているが、ゲーム装置とタッチパネルとを別体にして構成しても、本発明を実現できることは言うまでもない。また、上記実施例では表示器を２つ設けたが、表示器は１つであってもかまわない。すなわち、上記実施例において、第１ＬＣＤ１１を設けず単に第２ＬＣＤ１２のみを設けるようにしてもよい。また、上記実施例において、第２ＬＣＤ１２を設けず第１ＬＣＤ１１の上面にタッチパネル１３を設けても良い。
【００７４】
また、上記実施例では、ゲーム装置１にタッチパネル１３が一体的に設けられているが、タッチパネルを入力装置の１つとする一般的なパーソナルコンピュータなどの情報処理装置でもかまわない。この場合、この情報処理装置のコンピュータが実行するプログラムは、典型的にゲームに用いられるゲームプログラムに限らず、上述した方式で得られた２次元座標値が上記情報処理装置に対する操作処理に用いられる汎用的な入力処理プログラムである。
【産業上の利用可能性】
【００７５】
本発明の入力処理プログラムおよび入力処理装置は、簡単な構成で２次元座標から３次元座標への変換を行うことができ、表示画面上の２次元座標を入力するポインティングデバイスを用いて操作するゲームや入力処理等に適用できる。
【図面の簡単な説明】
【００７６】
【図１】本発明の一実施形態に係るゲームプログラムを実行するゲーム装置１の外観図
【図２】図１のゲーム装置１のブロック図
【図３】ゲーム空間に投入するためのアイテムＩの初期位置を決定する様子を示す第２ＬＣＤ１２の表示画面例
【図４】アイテムＩをゲーム空間に投げ入れる操作の様子および投げ入れられたアイテムＩのゲーム空間内における移動動作の様子を示す第２ＬＣＤ１２の表示画面例
【図５】仮想３次元ゲーム空間および仮想投影面を説明するための概念図
【図６】ベクトルｖ（ｖｘ、ｖｙ）およびベクトルＶ（Ｖｘ、Ｖｙ、Ｖｚ）を示す概念図
【図７】座標変換の際に用いられる定数ａ〜ｆの設定例
【図８】アイテムＩに初期設定される傾斜角度に応じたアイテムＩの画面表示例
【図９】アイテムＩが仮想投影面を離れて仮想ゲーム空間内を移動する際に設定される移動ベクトルおよび法線ベクトルの概念図
【図１０】本発明のゲームプログラムを実行することによってゲーム装置１が処理する動作を示すフローチャート
【図１１】本発明のゲームプログラムを実行することによってゲーム装置１が処理する動作を示すフローチャート
【符号の説明】
【００７７】
１…ゲーム装置
１１…第１ＬＣＤ
１２…第２ＬＣＤ
１３…タッチパネル
１４…操作スイッチ部
１５…スピーカ
１６…スタイラス
１７…カートリッジ
１７１…ＲＯＭ
１７２…ＲＡＭ
１８…ハウジング
２０…電子回路基板
２１…ＣＰＵコア
２２…ＷＲＡＭ
２３…第１ＶＲＡＭ
２４…第１ＧＰＵ
２５…第２ＶＲＡＭ
２６…第２ＧＰＵ
２７…Ｉ／Ｆ回路
２８…コネクタ
２９…ＬＣＤコントローラ
２９１…レジスタ
【図１】
2008257746.tif 000008
【図２】
2008257746.tif 000009
【図３】
2008257746.tif 000010
【図４】
2008257746.tif 000011
【図５】
2008257746.tif 000012
【図６】
2008257746.tif 000013
【図７】
2008257746.tif 000014
【図８】
2008257746.tif 000015
【図９】
2008257746.tif 000016
【図１０】
2008257746.tif 000017
【図１１】
2008257746.tif 000018
【手続補正書】
【提出日】平成20年7月1日(2008.7.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
表示画面と、当該表示画面に対する座標を入力するポインティングデバイスとを備える入力処理装置のコンピュータに実行されるプログラムであって、
前記コンピュータに、
前記表示画面に仮想３次元空間を表示する表示制御ステップ、
前記ポインティングデバイスからの入力座標を検出する入力座標検出ステップ、
前記ポインティングデバイスからの入力が継続的に行われているとき、前記入力座標検出ステップによって検出された入力座標に基づいて、オブジェクトを所定の仮想平面上で移動させる仮想平面上移動ステップ、および
前記ポインティングデバイスからの入力が継続的に行われている状態から非入力の状態へ変化したとき、前記オブジェクトを前記仮想平面から離れて前記仮想３次元空間内を移動させる３次元空間内移動ステップを実行させる、入力処理プログラム。
【請求項２】
前記ポインティングデバイスからの入力が継続的に行われている状態から非入力の状態へ変化したとき、当該非入力の状態の直前に前記入力座標検出ステップが検出した入力座標の変化値を算出する直前入力変化値算出ステップを、さらに前記コンピュータに実行させ、
前記３次元空間内移動ステップは、前記直前入力変化値に基づいて前記オブジェクトを前記仮想３次元空間内で移動させる、請求項１に記載の入力処理プログラム。
【請求項３】
前記３次元空間内移動ステップは、前記直前入力変化値に基づいて前記オブジェクトの前記仮想３次元空間における移動方向を決定する、請求項２に記載の入力処理プログラム。
【請求項４】
前記３次元空間内移動ステップは、前記直前入力変化値に基づいて前記オブジェクトの前記仮想３次元空間における移動速度を決定する、請求項２に記載の入力処理プログラム。
【請求項５】
前記３次元空間内移動ステップは、前記直前入力変化値算出ステップによって算出された前記仮想平面上の第１方向および第２方向についての変化値に基づいて、当該仮想平面に垂直な第３方向に対する変化値を算出し、各変化量に基づいて前記オブジェクトを前記仮想３次元空間内で移動させる、請求項２に記載の入力処理プログラム。
【請求項６】
前記３次元空間内移動ステップは、前記入力座標に基づいて前記オブジェクトの前記仮想３次元空間における移動方向を決定する、請求項２に記載の入力処理プログラム。
【請求項７】
表示画面と、
前記表示画面に対する座標を入力するポインティングデバイスと、
前記表示画面に仮想３次元空間を表示する表示制御手段と、
前記ポインティングデバイスからの入力座標を検出する入力座標検出手段と、
前記ポインティングデバイスからの入力が継続的に行われているとき、前記入力座標検出手段によって検出された入力座標に基づいて、オブジェクトを所定の仮想平面上で移動させる仮想平面上移動手段と、
前記ポインティングデバイスからの入力が継続的に行われている状態から非入力の状態へ変化したとき、前記オブジェクトを前記仮想平面から離れて前記仮想３次元空間内を移動させる３次元空間内移動手段とを備える、入力処理装置。