(57)【特許請求の範囲】
【請求項１】
ゲーム画像を表示する表示部と、
前記表示部上に設けられるタッチパネルと、
前記タッチパネルに対するタッチ入力の位置を取得するタッチ位置取得部と、
前記タッチパネルに対して、所定の軌跡に沿った第１方向へタッチ位置を移動させる第１スライド入力が行われたとき、当該タッチ位置が前記所定の軌跡に沿っている度合いを判定する第１判定部と、
前記第１スライド入力に続き、前記第１方向とは反対方向であって、前記所定の軌跡に沿った第２方向へタッチ位置を移動させる第２スライド入力が行われたとき、当該タッチ位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、
少なくとも、前記第１判定部および前記第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、
前記表示部にゲーム空間を表示させる表示制御部を備える、ゲーム装置。
【請求項２】
前記タッチパネルのタッチ領域において、前記軌跡を所定の太さを有する曲線で設定する軌跡設定部をさらに備え、
前記第１判定部および前記第２判定部は、前記タッチ位置が前記軌跡上であるか否かを判定する、請求項１記載のゲーム装置。
【請求項３】
プレイヤによる選択操作に基づいて前記軌跡の太さを変更する軌跡変更部をさらに備え、
前記移動処理部は、細い曲線が選択されたときに、太い曲線が選択されたときに比べて大きい速度で前記オブジェクトを移動させる、請求項２記載のゲーム装置。
【請求項４】
前記第１スライド入力前に、プレイヤの指示に基づいて前記軌跡を変形させる軌跡変形部をさらに備え、
前記移動処理部は、前記軌跡の変形に応じて、前記オブジェクトの移動方向を変化させる、請求項１ないし３のいずれかに記載のゲーム装置。
【請求項５】
前記所定の軌跡は、前記第１方向への前記第１スライド入力を行うための第１軌跡、および前記第２方向への前記第２スライド入力を行うための第２軌跡を含み、
前記軌跡変形部は、前記第２軌跡のみを変形させる、請求項４記載のゲーム装置。
【請求項６】
前記移動処理部は、前記軌跡の変形度合いに応じて、前記オブジェクトの移動方向の変化量を決定する、請求項４記載のゲーム装置。
【請求項７】
前記タッチ位置が前記軌跡の所定位置を通過したかどうかを判定する通過判定部をさらに備え、
前記移動処理部は、前記通過判定部によって前記タッチ位置が前記軌跡の所定位置を通過したと判定されたとき、前記オブジェクトの移動を開始させる、請求項１ないし６のいずれかに記載のゲーム装置。
【請求項８】
前記所定位置であり、前記軌跡と直交する方向に一定の幅の通過判定領域が設けられ、
前記通過判定部は、前記タッチ位置が前記通過判定領域を通過したかどうかをさらに判定し、
前記移動処理部は、前記通過判定部によって前記タッチ位置が前記通過判定領域を通過していないと判定したとき、前記第１判定部および前記第２判定部の判定結果に拘わらず、前記オブジェクトを移動させる、請求項７記載のゲーム装置。
【請求項９】
前記タッチ位置の移動速度を検出する速度検出部をさらに備え、
前記移動処理部は、前記速度検出によって検出された前記タッチ位置の移動速度に基づいて前記オブジェクトの移動速度をさらに制御する、請求項１ないし８のいずれかに記載のゲーム装置。
【請求項１０】
前記速度検出部によって検出された前記タッチ位置の移動速度の変化を検出する移動速度変化検出部をさらに備え、
前記移動処理部は、前記移動速度変化検出部によって前記移動速度の変化が所定量以上であることが判定されたとき、前記第１判定部および前記第２判定部の判定結果に拘わらず、前記オブジェクトを移動させる、請求項９記載のゲーム装置。
【請求項１１】
前記オブジェクトは、ゴルフボールのオブジェクトであって、
前記ゲーム空間内において、ゴルフショットのシミュレーションを行うキャラクタの動作を制御するキャラクタ制御部をさらに備え、
前記キャラクタ制御部は、
前記第１スライド入力が行われている間、前記キャラクタをバックスイング動作のアニメーションで表示させ、
前記第２スライド入力が行われている間、前記キャラクタを少なくともダウンスイング動作のアニメーションで表示される、請求項１ないし１０のいずれかに記載のゲーム装置。
【請求項１２】
ゲーム画像を表示する表示部と、
前記表示部に関連して設けられるポインティングデバイスと、
前記ポインティングデバイスによって指示される前記表示部上の入力位置を取得する入力位置取得部と、
前記入力位置取得部によって取得された入力位置が所定の軌跡に沿った第１方向に移動される第１スライド入力が行われたとき、当該入力位置が前記所定の軌跡に沿っている度合いを判定する第１判定部と、
前記第１スライド入力に続き、前記第１方向とは反対方向であって、前記所定の軌跡に沿った第２方向へ入力位置が移動される第２スライド入力が行われたとき、当該入力位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、
少なくとも、前記第１判定部および前記第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、
前記表示部にゲーム空間を表示させる表示制御部を備える、ゲーム装置。
【請求項１３】
ゲーム画像を表示する表示部と、前記表示部上に設けられるタッチパネルを備えるゲーム装置のゲームプログラムであって、
前記ゲーム装置のコンピュータを、
前記タッチパネルに対するタッチ入力の位置を取得するタッチ位置取得部と、
前記タッチパネルに対して、所定の軌跡に沿った第１方向へタッチ位置を移動させる第１スライド入力が行われたとき、当該タッチ位置が前記所定の軌跡に沿っている度合いを判定する第１判定部と、
前記第１スライド入力に続き、前記第１方向とは反対方向であって、前記所定の軌跡に沿った第２方向へタッチ位置を移動させる第２スライド入力が行われたとき、当該タッチ位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、
少なくとも、前記第１判定部および前記第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、
前記表示部にゲーム空間を表示させる表示制御部として機能させる、ゲームプログラム。
【請求項１４】
前記タッチパネルのタッチ領域において、前記軌跡を所定の太さを有する曲線で設定する軌跡設定部として前記コンピュータをさらに機能させ、
前記第１判定部および前記第２判定部は、前記タッチ位置が前記軌跡上であるか否かを判定する、請求項１３記載のゲームプログラム。
【請求項１５】
プレイヤによる選択操作に基づいて前記軌跡の太さを変更する軌跡変更部として前記コンピュータをさらに機能させ、
前記移動処理部は、細い曲線が選択されたときに、太い曲線が選択されたときに比べて大きい速度で前記オブジェクトを移動させる、請求項１４記載のゲームプログラム。
【請求項１６】
前記第１スライド入力前に、プレイヤの指示に基づいて前記軌跡を変形させる軌跡変形部をさらに備え、
前記移動処理部は、前記軌跡の変形に応じて、前記オブジェクトの移動方向を変化させる、請求項１３ないし１５のいずれかに記載のゲームプログラム。
【請求項１７】
前記所定の軌跡は、前記第１方向への前記第１スライド入力を行うための第１軌跡、および前記第２方向への前記第２スライド入力を行うための第２軌跡を含み、
前記軌跡変形部は、前記第２軌跡のみを変形させる、請求項１６記載のゲームプログラム。
【請求項１８】
前記移動処理部は、前記軌跡の変形度合いに応じて、前記オブジェクトの移動方向の変化量を決定する、請求項１６記載のゲームプログラム。
【請求項１９】
前記タッチ位置が前記軌跡の所定位置を通過したかどうかを判定する通過判定部として前記コンピュータをさらに機能させ、
前記移動処理部は、前記通過判定部によって前記タッチ位置が前記軌跡の所定位置を通過したと判定されたとき、前記オブジェクトの移動を開始させる、請求項１３ないし１８のいずれかに記載のゲームプログラム。
【請求項２０】
前記所定位置であり、前記軌跡と直交する方向に一定の幅の通過判定領域が設けられ、
前記通過判定部は、前記タッチ位置が前記通過判定領域を通過したかどうかをさらに判定し、
前記移動処理部は、前記通過判定部によって前記タッチ位置が前記通過判定領域を通過していないと判定したとき、前記第１判定部および前記第２判定部の判定結果に拘わらず、前記オブジェクトを移動させる、請求項１９記載のゲームプログラム。
【請求項２１】
前記タッチ位置の移動速度を検出する速度検出部として前記コンピュータをさらに機能させ、
前記移動処理部は、前記速度検出によって検出された前記タッチ位置の移動速度に基づいて前記オブジェクトの移動速度をさらに制御する、請求項１３ないし２０のいずれかに記載のゲームプログラム。
【請求項２２】
前記速度検出部によって検出された前記タッチ位置の移動速度の変化を検出する移動速度変化検出部として前記コンピュータをさらに機能させ、
前記移動処理部は、前記移動速度変化検出部によって前記移動速度の変化が所定量以上であることが判定されたとき、前記第１判定部および前記第２判定部の判定結果に拘わらず、前記オブジェクトを移動させる、請求項２１記載のゲームプログラム。
【請求項２３】
前記オブジェクトは、ゴルフボールのオブジェクトであって、
前記ゲーム空間内において、ゴルフショットのシミュレーションを行うキャラクタの動作を制御するキャラクタ制御部として前記コンピュータをさらに機能させ、
前記キャラクタ制御部は、
前記第１スライド入力が行われている間、前記キャラクタをバックスイング動作のアニメーションで表示させ、
前記第２スライド入力が行われている間、前記キャラクタを少なくともダウンスイング動作のアニメーションで表示される、請求項１３ないし２２のいずれかに記載のゲームプログラム。
【請求項２４】
ゲーム画像を表示する表示部と、前記表示部に関連して設けられるポインティングデバイスを備えるゲーム装置のゲームプログラムであって、
前記ゲーム装置のコンピュータを、
前記ポインティングデバイスによって指示される前記表示部上の入力位置を取得する入力位置取得部と、
前記入力位置取得部によって取得された入力位置が所定の軌跡に沿った第１方向に移動される第１スライド入力が行われたとき、当該入力位置が前記所定の軌跡に沿っている度合いを判定する第１判定部と、
前記第１スライド入力に続き、前記第１方向とは反対方向であって、前記所定の軌跡に沿った第２方向へ入力位置が移動される第２スライド入力が行われたとき、当該入力位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、
少なくとも、前記第１判定部および前記第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、
前記表示部にゲーム空間を表示させる表示制御部として機能させる、ゲームプログラム。
【請求項２５】
ゲーム画像を表示する表示部と、
前記表示部上に設けられるタッチパネルと、
前記タッチパネルに対するタッチ入力の位置を取得するタッチ位置取得部と、
前記タッチパネルに対して、所定の軌跡に沿った第１方向へタッチ位置を移動させる第１スライド入力が行われたとき、当該タッチ位置が前記所定の軌跡に沿っている度合いを判定する第１判定部と、
前記第１スライド入力に続き、前記第１方向とは反対方向であって、前記所定の軌跡に沿った第２方向へタッチ位置を移動させる第２スライド入力が行われたとき、当該タッチ位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、
少なくとも、前記第１判定部および前記第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、
前記表示部にゲーム空間を表示させる表示制御部を備える、ゲームシステム。
【請求項２６】
ゲーム画像を表示する表示部と、
前記表示部に関連して設けられるポインティングデバイスと、
前記ポインティングデバイスによって指示される前記表示部上の入力位置を取得する入力位置取得部と、
前記入力位置取得部によって取得された入力位置が所定の軌跡に沿った第１方向に移動される第１スライド入力が行われたとき、当該入力位置が前記所定の軌跡に沿っている度合いを判定する第１判定部と、
前記第１スライド入力に続き、前記第１方向とは反対方向であって、前記所定の軌跡に沿った第２方向へ入力位置が移動される第２スライド入力が行われたとき、当該入力位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、
少なくとも、前記第１判定部および前記第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、
前記表示部にゲーム空間を表示させる表示制御部を備える、ゲームシステム。
【請求項２７】
ゲーム画像を表示する表示部と、前記表示部上に設けられるタッチパネルを備えるゲーム装置のゲーム制御方法であって、
（ａ）前記タッチパネルに対するタッチ入力の位置を取得し、
（ｂ）前記タッチパネルに対して、所定の軌跡に沿った第１方向へタッチ位置を移動させる第１スライド入力が行われたとき、当該タッチ位置が前記所定の軌跡に沿っている度合いを判定し、
（ｃ）前記第１スライド入力に続き、前記第１方向とは反対方向であって、前記所定の軌跡に沿った第２方向へタッチ位置を移動させる第２スライド入力が行われたとき、当該タッチ位置が当該所定の軌跡に沿っている度合いを判定し、
（ｄ）少なくとも、前記ステップ（ｂ）および前記ステップ（ｃ）における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行い、そして
（ｅ）前記表示部にゲーム空間を表示させる、ゲーム制御方法。
【請求項２８】
ゲーム画像を表示する表示部と、前記表示部に関連して設けられるポインティングデバイスを備えるゲーム装置のゲーム制御方法であって、
（ａ）前記ポインティングデバイスによって指示される前記表示部上の入力位置を取得し、
（ｂ）前記入力位置取得部によって取得された入力位置が所定の軌跡に沿った第１方向に移動される第１スライド入力が行われたとき、当該入力位置が前記所定の軌跡に沿っている度合いを判定し、
（ｃ）前記第１スライド入力に続き、前記第１方向とは反対方向であって、前記所定の軌跡に沿った第２方向へ入力位置が移動される第２スライド入力が行われたとき、当該入力位置が当該所定の軌跡に沿っている度合いを判定し、
（ｄ）少なくとも、前記ステップ（ｂ）および前記ステップ（ｃ）における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行い、そして
（ｅ）前記表示部にゲーム空間を表示させる、ゲーム制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はゲーム装置、ゲームプログラム、ゲームシステムおよびゲーム制御方法に関し、特にたとえば、タッチパネルのようなポインティングデバイスを用いた、ゲーム装置、ゲームプログラム、ゲームシステムおよびゲーム制御方法に関する。
【背景技術】
【０００２】
この種のゲーム装置の一例が特許文献１に開示されている。この特許文献１のゲーム装置では、ゴルフゲームのショット動作を行う場合、パワーゲージが表示され、操作ボタンの操作が３回行われる。１回目の操作はショット開始操作であり、２回目の操作はパワー決定操作であり、３回目の操作はインパクト位置決定操作である。具体的には、横長のパワーゲージの内部を移動するカーソルが１回目の操作で左方向に移動を開始する。カーソルが左端に到達する前に、２回目の操作を行うと、ショットするパワーが設定され、その後カーソルは右方向に移動する。そして、３回目の操作でインパクト位置が決定される。
【特許文献１】特許第４２１３０１１号［A63F 13/00］
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、特許文献１に開示されたゲーム装置では、ボタン操作のタイミングによって、飛距離やインパクト位置が決定されるため、実際のゴルフらしいプレイ感覚が得られない。つまり、正確にスイングすることによって良いショットが実現できるというプレイ感覚が得られ難い。
【０００４】
それゆえに、この発明の主たる目的は、新規な、ゲーム装置、ゲームプログラム、ゲームシステムおよびゲーム制御方法を提供することである。
【０００５】
また、この発明の他の目的は、ポインティングデバイスを用いた新規な操作を提供できる、ゲーム装置、ゲームプログラム、ゲームシステムおよびゲーム制御方法を提供することである。
【０００６】
さらに、この発明のその他の目的は、面白味を増大させたゴルフゲームをプレイできる、ゲーム装置、ゲームプログラム、ゲームシステムおよびゲーム制御方法を提供することである。
【課題を解決するための手段】
【０００７】
第１の発明は、表示部と、タッチパネルと、タッチ位置取得部と、第１判定部と、第２判定部と、移動処理部と、表示制御部とを備えるゲーム装置である。表示部は、ゲーム画像を表示する。タッチパネルは、表示部上に設けられる。タッチ位置取得部は、タッチパネルに対するタッチ入力の位置を取得する。第１判定部は、タッチパネルに対して、所定の軌跡に沿った第１方向へタッチ位置を移動させる第１スライド入力が行われたとき、当該タッチ位置が所定の軌跡に沿っている度合いを判定する。第２判定部は、第１スライド入力に続き、第１方向とは反対方向であって、所定の軌跡に沿った第２方向へタッチ位置を移動させる第２スライド入力が行われたとき、当該タッチ位置が当該所定の軌跡に沿っている度合いを判定する。移動処理部は、少なくとも、第１判定部および第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う。そして、表示制御部は、表示部にゲーム空間を表示させる。
【０００８】
第１の発明によれば、所定の軌跡に沿って第１方向へ第１のスライド入力を行った後に、第１方向とは逆の第２方向へ第２のスライド入力を行わせ、各スライド入力が所定の軌跡に沿っている度合いに応じて所定のオブジェクトを移動させるので、タッチパネルを用いた新規な操作を行うゲーム装置を提供することができる。
【０００９】
第２の発明は、第１の発明に従属し、ゲーム装置は、タッチパネルのタッチ領域において、軌跡を所定の太さを有する曲線で設定する軌跡設定部をさらに備える。第１判定部および第２判定部は、タッチ位置が軌跡上であるか否かを判定する。
【００１０】
第２の発明によれば、所定の太さを有する曲線で軌跡を設定するので反復するような動作を指示する場合のタッチ入力がその軌跡に沿っている度合いに応じて所定のオブジェクトを移動させることができる。
【００１１】
第３の発明は、第２の発明に従属し、ゲーム装置は、プレイヤによる選択操作に基づいて軌跡の太さを変更する軌跡変更部をさらに備える。移動処理部は、細い曲線が選択されたときに、太い曲線が選択されたときに比べて大きい速度でオブジェクトを移動させる。つまり、所定の軌跡に沿ってタッチ入力する場合には、太い曲線の場合に比べて、細い曲線の場合の方が、操作が困難であると考えられ、その場合には、オブジェクトを大きい速度で移動させるようにしてある。
【００１２】
第３の発明によれば、所定の軌跡の太さでオブジェクトを移動させる速度を変化させるので、結果的に、タッチ操作の仕方に応じて、オブジェクトを移動させる速度を変化させることができる。
【００１３】
第４の発明は、第１ないし第３の発明に従属し、ゲーム装置は、第１スライド入力前に、プレイヤの指示に基づいて軌跡を変形させる軌跡変形部をさらに備える。移動処理部は、軌跡の変形に応じて、オブジェクトの移動方向を変化させる。
【００１４】
第４の発明によれば、軌跡を変形させることにより、オブジェクトの移動方向を変化させるので、オブジェクトを移動させる場合の経路を考慮したゲームの攻略が可能である。
【００１５】
第５の発明は、第４の発明に従属し、所定の軌跡は、第１方向への第１スライド入力を行うための第１軌跡、および第２方向への第２スライド入力を行うための第２軌跡を含む。軌跡変形部は、第２軌跡のみを変形させる。
【００１６】
第５の発明によれば、所定の軌跡のうちの第２軌跡のみを変形させるので、第２スライド入力の仕方によって、オブジェクトの移動方向に影響を与えることができる。
【００１７】
第６の発明は、第４の発明に従属し、移動処理部は、軌跡の変形度合いに応じて、オブジェクトの移動方向の変化量を決定する。
【００１８】
第６の発明によれば、軌跡の変形度合いに応じてオブジェクトの移動方向の変化量を決定するので、オブジェクトを移動させる経路を自由に設定することができる。
【００１９】
第７の発明は、第１ないし第６の発明に従属し、ゲーム装置は、タッチ位置が軌跡の所定位置を通過したかどうかを判定する通過判定部をさらに備える。移動処理部は、通過判定部によってタッチ位置が軌跡の所定位置を通過したと判定されたとき、オブジェクトの移動を開始させる。
【００２０】
第７の発明によれば、タッチ位置が軌跡の所定位置を通過した場合に、オブジェクトの移動を開始させるので、オブジェクトの移動開始をタッチ操作によって行うことができる。したがって、別途ボタン等を操作する必要がなく、操作がしやすい。
【００２１】
第８の発明は、第７の発明に従属し、所定位置であり、軌跡と直交する方向に一定の幅の通過判定領域が設けられる。通過判定部は、タッチ位置が通過判定領域を通過したかどうかをさらに判定し、移動処理部は、通過判定部によってタッチ位置が通過判定領域を通過していないと判定したとき、第１判定部および第２判定部の判定結果に拘わらず、オブジェクトを移動させる。
【００２２】
第８の発明によれば、タッチ位置が通過判定領域を通過していない場合には、タッチ位置が所定の軌跡に沿っているかどうかに拘わらず、オブジェクトを移動させるので、たとえば、プレイヤの意図しない移動方向や速さでオブジェクトを移動させることができる。
【００２３】
第９の発明は、第１ないし第８の発明に従属し、ゲーム装置は、タッチ位置の移動速度を検出する速度検出部をさらに備える。移動処理部は、速度検出によって検出されたタッチ位置の移動速度に基づいてオブジェクトの移動速度をさらに制御する。
【００２４】
第９の発明によれば、タッチ位置の移動速度に応じてオブジェクトの移動速度を変化させるので、プレイヤのタッチ操作の仕方に応じてオブジェクトの移動速度も制御することができる。
【００２５】
第１０の発明は、第９の発明に従属し、ゲーム装置は、速度検出部によって検出されたタッチ位置の移動速度の変化を検出する移動速度変化検出部をさらに備える。移動処理部は、移動速度変化検出部によって移動速度の変化が所定量以上であることが判定されたとき、第１判定部および第２判定部の判定結果に拘わらず、オブジェクトを移動させる。
【００２６】
第１０の発明によれば、第８の発明と同様に、プレイヤの意図しない移動方向や速さでオブジェクトを移動させることができる。
【００２７】
第１１の発明は、第１ないし第１０の発明に従属し、オブジェクトは、ゴルフボールのオブジェクトであって、ゲーム装置は、ゲーム空間内において、ゴルフショットのシミュレーションを行うキャラクタの動作を制御するキャラクタ制御部をさらに備える。キャラクタ制御部は、第１スライド入力が行われている間、キャラクタをバックスイング動作のアニメーションで表示させる。また、第２スライド入力が行われている間、キャラクタを少なくともダウンスイング動作のアニメーションで表示される。
【００２８】
第１１の発明によれば、ゴルフゲームにおいて、タッチ操作に応じてキャラクタのスイング動作をアニメーションで表示させるとともに、判定結果に応じてゴルフボールに移動が制御されるので、プレイヤの操作がゴルフゲームにおけるキャラクタのスイング動作に反映させることができ、それに応じてゴルフボールが移動される。フリーハンドのタッチ操作で軌跡を正確にトレースすることは難しい入力であるといえるが、ゴルフにおいて正確にスイングをすることもまた同様に難しさを伴うことである。したがって、本実施例の入力では、実際のゴルフをプレイしているような緊張感や操作感を得ることができる。したがって、ゴルフゲームをプレイする面白味を増大させることができる。
【００２９】
第１２の発明は、ゲーム画像を表示する表示部と、表示部に関連して設けられるポインティングデバイスと、ポインティングデバイスによって指示される表示部上の入力位置を取得する入力位置取得部と、入力位置取得部によって取得された入力位置が所定の軌跡に沿った第１方向に移動される第１スライド入力が行われたとき、当該入力位置が所定の軌跡に沿っている度合いを判定する第１判定部と、第１スライド入力に続き、第１方向とは反対方向であって、所定の軌跡に沿った第２方向へ入力位置が移動される第２スライド入力が行われたとき、当該入力位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、少なくとも、第１判定部および第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、表示部にゲーム空間を表示させる表示制御部を備える、ゲーム装置である。
【００３０】
第１２の発明においても、第１の発明にと同様に、ポインティングデバイスを用いた新規な操作を行うゲーム装置を提供することができる。
【００３１】
第１３の発明は、ゲーム画像を表示する表示部と、表示部上に設けられるタッチパネルを備えるゲーム装置のゲームプログラムであって、ゲーム装置のコンピュータを、タッチパネルに対するタッチ入力の位置を取得するタッチ位置取得部と、タッチパネルに対して、所定の軌跡に沿った第１方向へタッチ位置を移動させる第１スライド入力が行われたとき、当該タッチ位置が所定の軌跡に沿っている度合いを判定する第１判定部と、第１スライド入力に続き、第１方向とは反対方向であって、所定の軌跡に沿った第２方向へタッチ位置を移動させる第２スライド入力が行われたとき、当該タッチ位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、少なくとも、第１判定部および第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、表示部にゲーム空間を表示させる表示制御部として機能させる、ゲームプログラムである。
【００３２】
第１３の発明においても、第１の発明と同様に、タッチパネルを用いた新規な操作を行うゲーム装置を提供することができる。
【００３３】
第１４の発明は、ゲーム画像を表示する表示部と、表示部に関連して設けられるポインティングデバイスを備えるゲーム装置のゲームプログラムであって、ゲーム装置のコンピュータを、ポインティングデバイスによって指示される表示部上の入力位置を取得する入力位置取得部と、入力位置取得部によって取得された入力位置が所定の軌跡に沿った第１方向に移動される第１スライド入力が行われたとき、当該入力位置が所定の軌跡に沿っている度合いを判定する第１判定部と、第１スライド入力に続き、第１方向とは反対方向であって、所定の軌跡に沿った第２方向へ入力位置が移動される第２スライド入力が行われたとき、当該入力位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、少なくとも、第１判定部および第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、表示部にゲーム空間を表示させる表示制御部として機能させる、ゲームプログラムである。
【００３４】
第１４の発明においても、第１の発明と同様に、ポインティングデバイスを用いた新規な操作を行うゲーム装置を提供することができる。
【００３５】
第１５の発明は、ゲーム画像を表示する表示部と、表示部上に設けられるタッチパネルと、タッチパネルに対するタッチ入力の位置を取得するタッチ位置取得部と、タッチパネルに対して、所定の軌跡に沿った第１方向へタッチ位置を移動させる第１スライド入力が行われたとき、当該タッチ位置が所定の軌跡に沿っている度合いを判定する第１判定部と、第１スライド入力に続き、第１方向とは反対方向であって、所定の軌跡に沿った第２方向へタッチ位置を移動させる第２スライド入力が行われたとき、当該タッチ位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、少なくとも、第１判定部および第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、表示部にゲーム空間を表示させる表示制御部を備える、ゲームシステムである。
【００３６】
第１５の発明においても、第１の発明と同様に、タッチパネルを用いた新規な操作を行うゲーム装置を提供することができる。
【００３７】
第１６の発明は、ゲーム画像を表示する表示部と、表示部に関連して設けられるポインティングデバイスと、ポインティングデバイスによって指示される表示部上の入力位置を取得する入力位置取得部と、入力位置取得部によって取得された入力位置が所定の軌跡に沿った第１方向に移動される第１スライド入力が行われたとき、当該入力位置が所定の軌跡に沿っている度合いを判定する第１判定部と、第１スライド入力に続き、第１方向とは反対方向であって、所定の軌跡に沿った第２方向へ入力位置が移動される第２スライド入力が行われたとき、当該入力位置が当該所定の軌跡に沿っている度合いを判定する第２判定部と、少なくとも、第１判定部および第２判定部における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行う移動処理部と、表示部にゲーム空間を表示させる表示制御部を備える、ゲームシステムである。
【００３８】
第１６の発明においても、第１の発明と同様に、ポインティングデバイスを用いた新規な操作を行うゲーム装置を提供することができる。
【００３９】
第１７の発明は、ゲーム画像を表示する表示部と、表示部上に設けられるタッチパネルを備えるゲーム装置のゲーム制御方法であって、（ａ）タッチパネルに対するタッチ入力の位置を取得し、（ｂ）タッチパネルに対して、所定の軌跡に沿った第１方向へタッチ位置を移動させる第１スライド入力が行われたとき、当該タッチ位置が所定の軌跡に沿っている度合いを判定し、（ｃ）第１スライド入力に続き、第１方向とは反対方向であって、所定の軌跡に沿った第２方向へタッチ位置を移動させる第２スライド入力が行われたとき、当該タッチ位置が当該所定の軌跡に沿っている度合いを判定し、（ｄ）少なくとも、ステップ（ｂ）およびステップ（ｃ）における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行い、そして（ｅ）表示部にゲーム空間を表示させる、ゲーム制御方法である。
【００４０】
第１７の発明においても、第１の発明と同様に、タッチパネルを用いた新規な操作を行うゲーム装置を提供することができる。
【００４１】
第１８の発明は、ゲーム画像を表示する表示部と、表示部に関連して設けられるポインティングデバイスを備えるゲーム装置のゲーム制御方法であって、（ａ）ポインティングデバイスによって指示される表示部上の入力位置を取得し、（ｂ）入力位置取得部によって取得された入力位置が所定の軌跡に沿った第１方向に移動される第１スライド入力が行われたとき、当該入力位置が所定の軌跡に沿っている度合いを判定し、（ｃ）第１スライド入力に続き、第１方向とは反対方向であって、所定の軌跡に沿った第２方向へ入力位置が移動される第２スライド入力が行われたとき、当該入力位置が当該所定の軌跡に沿っている度合いを判定し、（ｄ）少なくとも、ステップ（ｂ）およびステップ（ｃ）における判定結果に基づいて、ゲーム空間内において所定のオブジェクトを移動させる処理を行い、そして（ｅ）表示部にゲーム空間を表示させる、ゲーム制御方法である。
【００４２】
第１８の発明においても、第１の発明と同様に、ポインティングデバイスを用いた新規な操作を行うゲーム装置を提供することができる。
【発明の効果】
【００４３】
この発明によれば、所定の軌跡に沿って第１方向へ第１のスライド入力を行った後に、第１方向とは逆の第２方向へ第２のスライド入力を行わせ、各スライド入力が所定の軌跡に沿っている度合いに応じて所定のオブジェクトを移動させるので、タッチパネルを用いた新規な操作を行うゲーム装置を提供することができる。
【００４４】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００４５】
【図１】図１はこの発明の一実施例であるゲーム装置の外観図であり、開状態における正面を示す。
【図２】図２はゲーム装置の外観図であり、（Ａ）が閉状態における上面を示し、（Ｂ）が閉状態における左側面を示し、（Ｃ）が閉状態における正面を示し、（Ｄ）が閉状態における右側面を示し、（Ｅ）が閉状態における背面を示し、（Ｆ）が閉状態における下面を示す。
【図３】図３は３Ｄ調整スイッチの動作を説明するための図解図である。
【図４】図４はゲーム装置の電気的構成の一例を示すブロック図である。
【図５】図５は図４の電気的構成の要部（立体ＬＣＤとＳＯｃの一部とで構成される立体ＬＣＤ制御部）を示すブロック図である。
【図６】図６は視差バリア方式による３Ｄ／２Ｄ表示の原理を説明するための図解図であり、（Ａ）が視差バリアＯＮ状態（３Ｄ表示）を示し、（Ｂ）が視差バリアＯＦＦ状態（２Ｄ表示）を示す。
【図７】図７は仮想空間において左右２つの仮想カメラでオブジェクトを撮影する様子を示す図解図である。
【図８】図８は２つの仮想カメラによる撮影画像（カメラ間距離が最大値Ｄ０の場合）を示す図解図であり、（Ａ）がＶＲＡＭの左画像を示し、（Ｂ）がＶＲＡＭの右画像を示し、（Ｃ）が上ＬＣＤの立体視画像（３Ｄ最大）を示す。
【図９】図９はカメラ間距離による立体視画像の変化を説明するための図解図であり、（Ａ）がカメラ間距離の一例（０．５×Ｄ０）を示し、（Ｂ）が当該距離に対応する立体視画像（３Ｄ中）を示す。
【図１０】図１０はカメラ間距離による３Ｄ調整を説明するための図解図であり、（Ａ）がカメラ間距離の他の例（最小値０）を示し、（Ｂ）が当該距離に対応する立体視画像（３Ｄ最小＝２Ｄ）を示す。
【図１１】図１１は打撃操作を行う場合に立体ＬＣＤに表示されるゲーム画面および下ＬＣＤに表示される操作画面の一例を示す図解図である。
【図１２】図１２は操作画面においてバックススイングを指示する場合の例を示す図解図である。
【図１３】図１３は操作画面においてダウンスイングを指示する場合の例を示す図解図である。
【図１４】図１４は操作画面においてフォロースルーを指示する場合の例を示す図解図である。
【図１５】図１５は操作画面においてスイング（スライド操作）を終了した場合の例およびガイド軌跡を変形する場合の操作画面の例を示す図解図である。
【図１６】図１６はガイド軌跡を変形する場合の操作画面の他の例を示す図解図である。
【図１７】図１７はガイド軌跡を変形する場合の操作画面のその他の例を示す図解図である。
【図１８】図１８はバックスイング用のガイド軌跡およびダウンスイングおよびフォロースルー用のガイド軌跡を示す図解図である。
【図１９】図１９はガイド軌跡の変形に伴ってゲーム画面の予想軌道が変化する様子を示す図解図である。
【図２０】図２０は他の種類のガイド軌跡を示す図解図である。
【図２１】図２１はパッティングを指示する場合の操作画面の例を示す図解図である。
【図２２】図２２はスライド操作による描画軌跡とガイド軌跡との差分を示す図解図である。
【図２３】図２３は通常ショットの場合およびインテンショナルショットの場合の重みテーブルを示す図解図である。
【図２４】図２４は図４に示したメインメモリのメモリマップの一例を示す図解図である。
【図２５】図２５は図２４に示したデータ記憶領域の具体的な内容を示す図解図である。
【図２６】図２６は図４に示したＣＰＵの打撃処理の第１の一部を示すフロー図である。
【図２７】図２７は図４に示したＣＰＵの打撃処理の第２の一部であって、図２６に後続するフロー図である。
【図２８】図２８は図４に示したＣＰＵの打撃処理の第３の一部であって、図２７に後続するフロー図である。
【図２９】図２９は図４に示したＣＰＵの打撃処理の第４の一部であって、図２８に後続するフロー図である。
【図３０】図３０は図４に示したＣＰＵの打撃操作の第５の一部であって、図２９に後続するフロー図である。
【図３１】図３１は図４に示したＣＰＵの打撃処理の第６の一部であって、図２７に後続するフロー図である。
【図３２】図３２は図４に示したＣＰＵのガイド軌跡の変形処理を示すフロー図である。
【図３３】図３３は打撃操作を行う場合に立体ＬＣＤに表示されるゲーム画面および下ＬＣＤに表示される操作画面の別の例を示す図解図である。
【発明を実施するための形態】
【００４６】
図１および図２には、本発明の一実施例であるゲーム装置１０の外観が示される。ゲーム装置１０は、折り畳み式のゲーム装置であり、図１は開状態におけるゲーム装置１０の正面を示し、図２（Ａ）〜図２（Ｆ）は閉状態におけるゲーム装置１０の上面，左側面，前面，右側面，背面および下面を示している。
【００４７】
ゲーム装置１０は、図１に示されるように、互いに回動可能に連結された上側ハウジング１０Ａおよび下側ハウジング１０Ｂを備え、上側ハウジング１０Ａの正面には、裸眼３Ｄ表示に対応した立体ＬＣＤ１２、内側カメラ１８ａ、３Ｄ調整スイッチ２０、３Ｄランプ２０Ａ、ならびに左右のスピーカ２２ａおよび２２ｂなどが設けられる。下側ハウジング１０Ｂの正面には、タッチパネル１６付きの下ＬＣＤ１４、Ａ，Ｂ，Ｘ，Ｙボタン２４ａ−２４ｄ、十字キー（ボタン）２４ｇ、ホーム，セレクト，スタートボタン２４ｈ−２４ｊ、電源ボタン２４ｋ、アナログパッド２６、およびマイク３０が設けられる。
【００４８】
また、図２（Ａ）に示されるように、ゲーム装置１０の上面（図１に示した上側ハウジング１０Ａの裏面）には、３Ｄ撮影に対応した左右の外側カメラ１８ｂおよび１８ｃが設けられる。また、図２（Ｃ）に示されるように、ゲーム装置１０の前面には、ヘッドホン端子３６、および電源ランプ４２ａなどが設けられる。また、図２（Ｂ），図２（Ｅ）および図２（Ｄ）に示されるように、ゲーム装置１０の左側面から背面に跨ってＬボタン２４ｅが設けられ、右側面から背面に跨ってＲボタン２４ｆが設けられる。また、ゲーム装置１０の左側面には、音量調整スイッチ３２およびＳＤカードスロット３４などがさらに設けられ、ゲーム装置１０の右側面には、無線スイッチ２８、無線ランプ４２ｂなどがさらに設けられる。上述の３Ｄ調整スイッチ２０は、この右側面から露見している。また、ゲーム装置１０の背面には、赤外線受発光部４０などがさらに設けられる。そして、図２（Ｅ）および図２（Ｆ）に示されるように、ゲーム装置１０の背面から下面に跨ってゲームカードスロット３８が設けられる。
【００４９】
立体ＬＣＤ１２は、視差バリア（パララックスバリア）方式による３Ｄ液晶（図６参照）であり、裸眼で立体視が可能な画像（裸眼立体視画像）を表示する。立体ＬＣＤ１２では、液晶による視差バリアをＯＦＦすることで、平面画像の表示も可能である。なお、視差バリア方式に限らず、凹凸付のシート（レンチキュラレンズ）を利用するレンチキュラ方式や、その他の裸眼３Ｄ方式を採用してもよい。
【００５０】
内側カメラ１８ａは平面画像（２Ｄ画像）を撮影し、外側カメラ１８ｂおよび１８ｃは立体視画像（３Ｄ画像）を撮影する。プレイヤを撮影した２Ｄまたは３Ｄの画像は、ゲームプログラムのようなアプリケーションプログラムへの画像入力として利用可能である。この場合、ゲームプログラムは、画像認識を行うことで、プレイヤの顔や手の動き、視線方向（眼球の向き）などを検出し、検出結果に応じた処理を実行する。内側カメラ１８ａによる２Ｄ画像はまた、下ＬＣＤ１４に表示可能であり、外側カメラ１８ｂおよび１８ｃによる３Ｄ画像はまた、立体ＬＣＤ１２に表示可能である。
【００５１】
３Ｄ調整スイッチ２０は、立体ＬＣＤ１２の表示に関して、３Ｄおよび２Ｄの間の切り替えを手動で行い、さらには、３Ｄでの立体感の手動調整をも行うためのスライドスイッチであり、たとえば図３のように動作する。３Ｄの立体感は、この実施例では、スライダＳｄが上端にあるとき最大（Ｓｄ＝１）であり、スライダＳｄを下げるに従って減少し、下端にあるとき最小（Ｓｄ＝０）となる。そして、スライダＳｄを下端まで下げきると、３Ｄから２Ｄに切り替わる。
【００５２】
なお、詳細は後述するが、このような３Ｄの立体感の変化は、仮想空間内に配置された左右の仮想カメラ（ＩＣＬおよびＩＣＲ：図７参照）の間の距離（カメラ間距離Ｄ）を変化させることによって実現される（図７〜図１０参照）。つまり、３Ｄ調整スイッチ２０の動作に応じて、カメラ間距離Ｄが調整される。そして、カメラ間距離Ｄは、こうして手動調整されるだけでなく、ゲームプログラムによる自動調整（後述）も受ける。
【００５３】
３Ｄランプ２０Ａは、立体ＬＣＤ１２の表示状態を示すランプであり、３Ｄでは点灯し、２Ｄでは消灯する。なお、単に点灯よび消灯するだけでなく、３Ｄの程度（立体感の大小）に応じて輝度や色を変化させてもよい。
【００５４】
タッチパネル１６や、Ａ，Ｂ，Ｘ，Ｙボタン２４ａ−２４ｄ、十字キー（ボタン）２４ｇ、ホーム，セレクト，スタートボタン２４ｈ−２４ｊ、あるいはアナログパッド２６への操作は、ゲームプログラムへのタッチ／ボタン／パッド入力として利用される。電源ボタン２４ｋは、ゲーム装置１０の電源をオン／オフするために用いられる。電源ランプ４２ａは、電源のオン／オフと連動して点灯／消灯する。
【００５５】
マイク３０は、プレイヤの発話音声や環境音などを音声データに変換する。音声データは、ゲームプログラムへの音声入力として利用可能である。この場合、ゲームプログラムは、音声認識を行うことで、プレイヤの発話音声を検出し、検出結果に応じた処理を実行する。マイク３０による音声データはまた、ＮＡＮＤ型フラッシュメモリ４８（図４参照）などに記録可能である。
【００５６】
スピーカ２２ａおよび２２ｂは、ゲーム音声やマイク音声などを出力する。ヘッドホン端子３６には、図示しないヘッドホンが接続される。音量調整スイッチ３２は、スピーカ２２ａおよび２２ｂの音量またはヘッドホン端子３６の出力を調整するためのスライドスイッチである。
【００５７】
ＳＤカードスロット３４には、カメラ画像やマイク音声などを保存するためのＳＤメモリカード（図示せず）が装着され、ゲームカードスロット３８には、ゲームプログラムなどが格納されたゲームカード（図示せず）が装着される。赤外線受発光部４０は、他のゲーム装置との間での赤外線（ＩＲ）通信に利用される。
【００５８】
図４には、ゲーム装置１０の電気的構成が示される。ゲーム装置１０は、ＣＰＵ，ＧＰＵ，ＶＲＡＭおよびＤＳＰなどで構成されたＳｏＣ(System-on-a-Chip)４４を含む。ＳｏＣ４４には、上述した立体ＬＣＤ１２、下ＬＣＤ１４、内側カメラ（Ｉｎカメラ）１８ａ、左右の外側カメラ（ＯＣＡＭ−ＬおよびＯＣＡＭ−Ｒ）１８ｂおよび１８ｃ、Ａ，Ｂ，Ｘ，Ｙ，Ｌ，Ｒボタン２４ａ−２４ｆ、十字ボタン２４ｇ、ＳＤカードスロット３４、ゲームカードスロット３８、および赤外線受発光部（ＩＲ）４０が接続される。ＳｏＣ４４にはまた、マイコン５６を介して、上述した３Ｄ調整スイッチ（３Ｄ Ｖｏｌ）２０、３Ｄランプ２０Ａ、ホーム，セレクト，スタートボタン２４ｈ−２４ｊ、電源ボタン（Ｐｏｗｅｒ）２４ｋ、無線スイッチ（ＷｉＦｉ）２８、音量調整スイッチ（音量Ｖｏｌ）３２，および電源，無線ランプ４２ａ，４２ｂが接続される。ＳｏＣ４４にはさらに、ＩＦ回路５８を介して、上述したタッチパネル１６、左右のスピーカ２２ａおよび２２ｂ、アナログパッド２６、マイク（Ｍｉｃ）３０およびヘッドホン端子３６が接続される。
【００５９】
また、ＳｏＣ４４には、上述した以外の要素として、無線モジュール４６、ＮＡＮＤ型フラッシュメモリ４８およびメインメモリ５０が接続される。無線モジュール４６は、無線ＬＡＮに接続する機能を有する。ＮＡＮＤ型フラッシュメモリ４８は、カメラ画像，マイク音声など保存用のデータを記憶する。メインメモリ５０は、ＳｏＣ４４に作業領域を提供する。すなわち、メインメモリ５０には、ゲームなどのアプリケーションで用いられる各種のデータやプログラムが記憶され、ＳｏＣ４４はメインメモリ５０に記憶されたデータやプログラムを利用して作業を行う。
【００６０】
マイコン５６には、電源管理ＩＣ５２および加速度センサ５４が接続される。電源管理ＩＣ５２はゲーム装置１０の電源管理を行い、加速度センサ５４はゲーム装置１０の３軸方向の加速度を検出する。加速度センサ５４の検出結果は、ゲームプログラムへの動き入力として利用可能である。この場合、ゲームプログラムは、検出結果に基づいてゲーム装置１０自体の動きを計算し、計算結果に応じた処理を実行する。また、マイコン５６は、ＲＴＣ（リアルタイムクロック）５６ａを含み、ＲＴＣ５６ａで時間をカウントしてＳｏＣ４４に供給する。
【００６１】
図５には、立体ＬＣＤ１２とＳｏＣ４４の一部とで構成される立体ＬＣＤ制御部１２Ａが示される。立体ＬＣＤ１２は、ＬＣＤコントローラ１２ａ、バリア液晶１２ｂおよび上ＬＣＤ１２ｃを含む。バリア液晶１２ｂは、図６（Ａ）に示されるように、縦（列）方向に伸びる複数の液晶スリットを含み、バックライトからの光を複数の液晶スリットで交互に遮ることによって、右目および左目に上ＬＣＤ１２ｃの異なる列の画素を通過した光が見えるようにする。上ＬＣＤ１２ｃは、下ＬＣＤ１４と同様、普通の（２Ｄ表示用の）液晶でよい。ＬＣＤコントローラ１２ａは、ＧＰＵ４４ｂひいてはＣＰＵ４４ａの制御下で、上ＬＣＤ１２ｃに描画を行い、かつバリア液晶１２ｂ（への印加電圧）をＯＮ／ＯＦＦする。バリア液晶１２ｂをＯＦＦすると、図６（Ｂ）に示されるように、右目および左目には、上ＬＣＤ１２ｃのどの列の画素を通過した光も見えるようになる。
【００６２】
詳しくは、たとえば図７に示すように、仮想空間内で、オブジェクトＯｂ１およびＯｂ２を、左右に間隔（Ｄ＝Ｄ０）を空けて配置された左仮想カメラＩＣＬおよび右仮想カメラＩＣＲで撮像する場合、ＣＰＵ４４ａの制御下で、ＧＰＵ４４ｂがＶＲＡＭ４４ｃに図８（Ａ）および図８（Ｂ）のような左画像４４Ｌおよび右画像４４Ｒを書き込み、ＬＣＤコントローラ１２ａは、ＶＲＡＭ４４ｃに記憶された左画像４４Ｌおよび右画像４４Ｒを１列ずつ交互に読み出して、上ＬＣＤ１２ｃに順番に描画していく。これによって、上ＬＣＤ１２ｃには、図８（Ｃ）のような立体視画像（立体視を実現するための画像）が表示される。立体視画像へのバックライト光をバリア液晶１２ｂで制限すると、左目には図８（Ａ）のような左画像４４Ｌが見え、右目には図８（Ｂ）のような右画像４４Ｒが見える結果、裸眼による立体視が実現される。
【００６３】
なお、図５には、立体ＬＣＤ１２に対応して、ＬＣＤコントローラ１２ａ、ＧＰＵ４４ｂおよびＶＲＡＭ４４ｃが設けられるように示してあるが、当然に、下ＬＣＤ１４に対応して、ＬＣＤコントローラ、ＧＰＵおよびＶＲＡＭが設けられている。図５を参照して分かるように、下ＬＣＤ１４に対応するＧＰＵもまた、ＣＰＵ４４ａと信号を送受信可能に接続され、下ＬＣＤ１４に対応するＧＰＵとＶＲＡＭとは信号を送受信可能に接続される。そして、ＣＰＵ４４ａ、下ＬＣＤ１４に対応するＧＰＵ、およびＶＲＡＭのそれぞれが、下ＬＣＤ１４に対応するＬＣＤコントローラと信号を送受信可能に接続され、このＬＣＤコントローラに下ＬＣＤ１４が接続されるのである。
【００６４】
ところで、先述したように、図８（Ｃ）の立体視画像は、カメラ間距離Ｄが最大（Ｄ＝Ｄ０：図７参照）のときの画像であり、カメラ間距離Ｄが図９（Ａ）さらには図１０（Ａ）のように短くなるに従って、図９（Ｂ）さらには図１０（Ｂ）のように変化する。カメラ間距離Ｄは、次式（１）で計算される。
【００６５】
Ｄ＝Ｓｄ×Ｐｄ×Ｄ０  …（１）
ここで、Ｓｄは、図３に示した３Ｄ調整スイッチ２０におけるスライダＳｄの値を示す変数であり、スライダＳｄの動作に応じて０から１の範囲で変化する（０≦Ｓｄ≦１）。Ｐｄは、ゲームプログラムによって制御される変数であり、同じく０から１の範囲で変化する（０≦Ｐｄ≦１）。Ｄ０は、人間の２つの瞳の間隔に対応した定数であり、たとえば６５ｍｍに設定される（Ｄ０=６５ｍｍ）。
【００６６】
図７，図９（Ａ）および図１０（Ａ）では、いずれも変数Ｓｄは１であり、スライダＳｄは上端に固定されている（Ｓｄ＝１）。ゲームプログラム７２によって変数Ｐｄが１→０．５→０のように変化する結果、カメラ間距離ＤはＤ０→（０．５×Ｄ０）→０のように変化している。そして、このようなカメラ間距離Ｄの短縮方向への変化に応じて、立体視画像は、図８（Ｃ）→図９（Ｂ）→図１０（Ｂ）のように変化する。つまり、左画像４４Ｌおよび右画像４４Ｒの間の視差が減少していき、ついには平面画像と同等になる。
【００６７】
なお、変数Ｓｄがたとえば０．５に固定されていれば（Ｓｄ＝０．５）、カメラ間距離Ｄは０から（０．５×Ｄ０）の範囲内で変化する。また、変数Ｓｄがたとえば０に固定されていれば（Ｓｄ＝０）、カメラ間距離Ｄは０のままである。
【００６８】
図１０（Ａ）の状態つまり３Ｄ最小ないし２Ｄの場合、カメラ間距離Ｄは０なので、ＶＲＡＭ４４ｃに書き込まれる左画像４４Ｌおよび右画像４４Ｒは同一（つまり視差が０）となる。この場合も、ＬＣＤコントローラ１２ａは、ＶＲＡＭ４４ｃに記憶された左画像４４Ｌおよび右画像４４Ｒを１列ずつ交互に読み出して、上ＬＣＤ１２ｃに順番に描画していく。これによって、上ＬＣＤ１２ｃには、図１０（Ｂ）のような平面画像（つまり視差のない画像）が表示される。立体視画像へのバックライト光を制限するバリア液晶１２ｂをＯＦＦすると、左右どちらの目にも、図１０（Ｂ）のような平面画像が見える結果となる。
【００６９】
なお、このときバリア液晶１２ｂをＯＦＦしなくても、図１０（Ｂ）の平面画像が見える結果に変わりはない。ただし、バリア液晶１２ｂをＯＦＦすると、適視位置が拡大し、平面画像が明るく見えるようになる。また、ＬＣＤコントローラ１２ａは、交互読み出しを行う代わりに、左画像４４Ｌおよび右画像４４Ｒのいずれか一方を読み出して、上ＬＣＤ１２ｃに描画してもよい。この場合も、上ＬＣＤ１２ｃには、図１０（Ｂ）のような平面画像が表示される。
【００７０】
たとえば、電源ボタン２４ｋがオンされ、ゲーム装置１０の主電源がオンされると、ゲーム装置１０が起動され、図示しないメインメニュー画面が下ＬＣＤ１４に表示される。メインメニュー画面では、ゲーム装置１０で実行可能な仮想ゲームなどのアプリケーションの実行を指示することができる。この実施例の仮想ゲーム（ゴルフゲーム）の実行が指示されると、ゴルフゲームが開始され、図示しない初期画面において、プレイヤによって、プレイヤキャラクタが選択されたり、プレイするコースが選択されたりする。
【００７１】
打撃操作を行う場合には、図１１（Ａ）に示すようなゲーム画面１００が立体ＬＣＤ１２に表示されるとともに、図１１（Ｂ）に示すような操作画面２００が下ＬＣＤ１４に表示される。図１１（Ａ）に示すゲーム画面１００には、プレイヤキャラクタ１０２が表示される。図１１（Ａ）から分かるように、プレイヤキャラクタ１０４はゴルフクラブ（以下、単に「クラブ」という）１０４を持っており、ゴルフボール（以下、単に「ボール」という）１０６を打撃する体勢に入った状態（アドレスの状態）で示される。また、ゲーム画面１００には、予想されるボール１０６の軌道（移動軌跡）および着弾点を示す予想軌道１１０が表示される。この予想軌道１１０は、ボール１０６の飛び出し方向（ショット方向）、クラブ１０４の種類（クラブ飛距離Ｌｍａｘ）およびショットの種類（ストレート、フェード、スライス、フック、ドロー）に応じて変化される。
【００７２】
また、ゲーム画面１００には、その左下部に表示領域１２０および表示領域１２２が設けられる。表示領域１２０には、プレイヤキャラクタ１０２が使用するクラブ１０４の種類（ここでは、３番アイアン（３Ｉ））が表示される。また、表示領域１２２には、仮想のゲーム空間内における現在のボール１０６の位置からグリーンないしカップまでの距離（ここでは、２１０ヤード（Ｙ））が表示される。
【００７３】
詳細な説明は省略するが、ゲーム画面１００では、仮想のゲーム空間すなわちゴルフコース（ホール）をプレイヤキャラクタ１０２の後方から見た画像が仮想カメラ（図示せず）で撮影され、その撮影画像が背景画像として表示される。
【００７４】
なお、プレイヤキャラクタはゲーム画面２００にも表示されるので、図３３（Ａ）に示すように、ゲーム画面１００においては、より広範囲にホールの状況を確認できるように、遠距離からの視点や俯瞰的な視点にしてもよい。
【００７５】
なお、図示は省略するが、ゲーム画面１００に、風の有無、風の向きおよび風速を図柄（矢印）および文字で示してもよい。
【００７６】
図１１（Ｂ）に示す操作画面２００には、プレイヤキャラクタ２０２が表示される。また、プレイヤキャラクタ２０２は、クラブ２０４を持っており、打撃操作が実行されるまでは、ゲーム画面１００と同様に、プレイヤキャラクタ２０２はボール２０６（図１２等を参照）を打撃するためのアドレスの状態で示される。詳細な説明は省略するが、ゲーム画面１００に表示されるプレイヤキャラクタ１０２、クラブ１０４、ボール１０６と、操作画面２００に表示されるプレイヤキャラクタ２０２、クラブ２０４、ボール２０６とは同一であり、それぞれ異なる画面に表示されているだけである。図３３（Ｂ）に示すように、操作画面２００にも背景が表示されるようにしてもよい。
【００７７】
また、操作画面２００には、プレイヤに打撃操作（スライド操作）を実行させるための軌跡（ガイド軌跡）２１０が表示される。ガイド軌跡２１０は、円の一部を消去した形状で示される。したがって、ガイド軌跡２１０は、２つの端点２１０ａ、２１０ｂを有している。また、ガイド軌跡２１０の最下端部に、スイングの開始判定およびインパクトの判定を行うための判定画像２１２が表示される。たとえば、判定画像２１２は、縦長の長方形で示される。
【００７８】
この実施例では、判定画像２１２をタッチオンすることにより、スイング動作の指示を開始し、ガイド軌跡２１０をトレースするように、時計回りの方向にスライド操作を実行すると、プレイヤキャラクタ２０２にバックスイングさせることができる。そして、端点２１０ａを超えない範囲で、スライド操作の方向を反転し、反時計回りの方向にスライド操作を実行すると、プレイヤキャラクタ２０２にダウンスイングさせることができる。さらに、インパクト位置すなわち判定画像２１２を超えて、反時計回りの方向にスライド操作を実行すると、プレイヤキャラクタ２０２にフォロースルーさせることができる。ただし、タッチオフした位置でスイング動作は終了されるが、タッチオフしなくても、端点２１０ｂまでスライド操作を実行すると、プレイヤキャラクタのスイング動作は終了される。
【００７９】
さらに、操作画面２００には、スイング（打撃操作）すなわちスライド操作の正確さなどを表示するための教示画像２２０が右上部に表示される。教示画像２２０は円で示され、スイング（打撃操作）に関する３つの要素（パラメータ）を表現するための目盛がその内部に表示される。この実施例では、教示画像２２０は、スイング（打撃操作）の正確さ（コントロール：Ｃ）、速さ（スピード：Ｓｐ）および滑らかさ（スムーズ：Ｓｍ）を示す。この３つのパラメータは、仮想のゲーム空間におけるボール１０６（２０６）の飛距離（移動速度）や移動（飛行）方向に影響を及ぼしたり、ミスショットかどうかの判定に用いられたりする。
【００８０】
なお、この実施例では、教示画像２２０を円で示してあるが、これに限定される必要はない。スイング（打撃操作）の正確さ、速さおよび滑らかさのそれぞれを棒グラフや単なる数値で示してもよい。
【００８１】
また、図１１（Ｂ）に示すような操作画面２００が表示されている状態で、ホームボタン２４ｈを操作すると、図示は省略するが、選択画面が表示され、この設定画面において、使用するクラブ１０４（２０４）を変更（選択）したり、ショットタイプの変更を選択したりすることができる。
【００８２】
さらに、図１１（Ｂ）に示すような操作画面２００が表示されている状態で、十字キー（ボタン）２４ｇの左右のボタンを操作することにより、プレイヤキャラクタ２０２の向きを変更することができ、その向きによって、ボール１０６（２０６）の打ち出し方向（ショット方向）を変更することができる。また、詳細な説明は省略するが、図１１（Ｂ）に示すような操作画面２００が表示されている状態で、十字キー（ボタン）２４ｇの上下ボタンを操作することにより、ボール１０６（２０６）を打つ位置（高さ方向の位置）を変更することもできる。
【００８３】
この実施例では、プレイヤキャラクタ２０２のスイング動作と、プレイヤのスライド操作とは連動する。簡単に説明すると、操作画面２００において、タッチペンや指などによって、ガイド軌跡２１０をトレースするようにスライド操作を実行すると、これに伴って、プレイヤキャラクタ２０２は、バックスイング、ダウンスイング、フォロースルーの動作をするように、そのアニメーションが表示される。
【００８４】
図示は省略するが、たとえば、プレイヤキャラクタ２０２がスイングする場合のアニメーションは、９０コマ（９０アニメーションフレーム）で構成される。たとえば、アニメーションフレームが第０フレームの場合には、プレイヤキャラクタ２０２がトップ位置までクラブ１０４を振り上げた状態である。第１フレームからフレーム数が増加するに従って、ダウンスイングを実行するように、プレイヤキャラクタ２０２の姿勢およびクラブ２０４の角度が変化され、第６０フレームでプレイヤキャラクタ２０２がボール２０６を打撃する状態（インパクトの状態）になる。さらに、フレーム数が増加することにより、フォロースルーを実行するように、プレイヤキャラクタ２０２の姿勢およびクラブ２０４の角度が変化され、第９０フレームでプレイヤキャラクタ２０２がスイングを終了した状態になる。
【００８５】
したがって、操作画面２００が表示された当初では、プレイヤキャラクタ２０２は、アニメーションフレームが第６０フレームで停止された状態で表示される。この状態において、プレイヤが判定画像２１２をタッチすると、アニメーションフレームのフレーム番号が減少するように再生（逆再生）が開始される。したがって、上述したように、プレイヤがガイド軌跡２１０に沿って時計回りの方向にスライド操作を行うと、それに従って、バックスイングしているようにプレイヤキャラクタ２０２が表示される。プレイヤがスライド操作を反転すると、反転された時点から、アニメーションフレームのフレーム番号が増加するように再生（順再生）が開始される。したがって、上述したように、プレイヤがガイド軌跡２１０に沿って反時計回りの方向にスライド操作を行うと、それに従って、ダウンスイングしているようにプレイヤキャラクタ２０２が表示される。
【００８６】
なお、詳細な説明は省略するが、スライド操作の速さに応じてアニメーションフレームの再生速度（アニメーションフレームの更新速度）を変化させることにより、スライド操作とスイング動作（アニメーション）とを同期させることができる。
【００８７】
その後もアニメーションフレームのフレーム番号が増加するように順再生され、スライド操作がインパクト位置（判定画像２１２の表示位置）を通過するとき、アニメーションフレームのフレーム番号が補正される。具体的には、スライド操作がインパクト位置を通過するときに、アニメーションフレームのフレーム番号が「６０」未満である場合には、アニメーションフレームの更新速度を加速させて第６０フレームまで進行させる。したがって、スライド操作による打撃の指示と、プレイヤキャラクタ２０２がボール２０６を打撃する動作が同期される。ただし、インパクトの時点において、アニメーションフレームのフレーム番号が「６０」を超えている場合には、アニメーションフレームは補正されない。スイングの方向が逆向きになってしまうからである。
【００８８】
その後も、アニメーションフレームのフレーム番号が増加するように順再生され、スライド操作に従って、フォロースルーしているようにプレイヤキャラクタ２０２が表示される。そして、プレイヤがタッチオフすると、スイングの指示についてのスライド操作が終了され、このとき、アニメーションフレームの再生が停止される。ただし、タッチオフされない場合であっても、タッチ位置が端点２１０ｂに到達すると、スイングの指示が終了される。
【００８９】
なお、上述の実施例ではアニメーションフレームが少なくて済むが、別の実施例として、アドレス状態からバックスイング、ダウンスイングおよびフォロースルーまでの一連のアニメーションを順に再生するようにしても当然構わない。そのようにすれば、バックスイングとダウンスイングでのプレイヤキャラクタ２０２の姿勢に微妙な違いをつけることができ、より実際に近いアニメーションを表示させることができる。
【００９０】
上述したように、この実施例では、スイング（打撃操作）すなわちスライド操作の正確さ（Ｃ）、速さ（Ｓｐ）および滑らかさ（Ｓｍ）の３つの指標（パラメータ）が、仮想のゲーム空間におけるボール１０６（２０６）の飛距離（移動速度）や移動（飛行）方向に影響を及ぼしたり、ミスショットかどうかの判定に用いられたりする。
【００９１】
図１２（Ａ）に示すように、スライド操作が開始され、プレイヤキャラクタ２０２がスイング動作を実行すると、スライド操作に従って描画軌跡２３０が操作画面２００上に表示される。図１２（Ａ）（図１２（Ｂ）−図１５（Ａ）、図２２も同じ）では、描画軌跡２３０を点線で示してあるが、実際にはガイド軌跡２１０と同様に、実線で表示される。ただし、ガイド軌跡２１０と描画軌跡２３０とを区別するために、線の太さや色を変えたりするようにしてある。
【００９２】
また、分かり易く示すために、図１２（Ａ）に示す操作画面２００（図１２（Ｂ）−図１５（Ａ）も同様）では、タッチ位置を矢印の指示画像２４０で示してあるが、これは表示されなくてもよい。ただし、タッチパネル１６以外のポインティングデバイスを使用する場合には、このような指示画像２４０が表示される必要がある。
【００９３】
また、スライド操作に従って、教示画像２２０が変化する。この実施例では、スライド操作の正確さ、速さおよび滑らかさのそれぞれが所定の条件を満たす場合に、各パラメータの値が増加される。たとえば、各パラメータは、０（最小値）〜１００（最大値）で設定される。したがって、１００（最大値）を超える場合には、（１００）最大値に補正される。また、スライド操作の正確さは、描画軌跡２３０がガイド軌跡２１０を正しくトレースしているかどうか、つまりタッチ位置がガイド軌跡２１０上であるかどうかで、所定の条件を満たすかどうかが判断される。また、スライド操作の速さは、予め決定された所定範囲内である（たとえば、タッチ位置が１ゲームフレームの間に１〜５ドット変化した）かどうかで、所定の条件を満たすかどうかが判断される。さらに、スライド操作の滑らかさは、スライド操作の速度の変化量、すなわち現在のスライド操作の速度とこの１つ手前のゲームフレームのスライド操作の速度との差が所定範囲（２〜３ドット／ゲームフレーム）内であるかどうかで、所定の条件を満たすくかどうかが判断される。ただし、１ゲームフレームは、画面更新単位時間（１／６０秒）である。
【００９４】
したがって、図１２（Ａ）に示す状態からスライド操作が継続されると、図１２（Ｂ）に示すように、スライド操作に伴ってスイング動作が進行し、スライド操作の正確さ、速さ、滑らかさがそれぞれ所定の条件を満たす場合には、各パラメータの値が加算（蓄積）され、指標画像２２０ａが変化される。指標画像２２０ａは、各パラメータの数値を曲線で結ぶことにより円形状で表示される。指標画像２２０ａが真丸に近い程、スライド操作の３つのパラメータのバランスが良いことを意味し、指標画像２２０ａの形状が円から遠ざかるに従って、スライド操作の３つのパラメータのバランスが悪いことを意味する。
【００９５】
図１３（Ａ）に示すように、たとえば、タッチ位置が端点２１０ａに来たときに、プレイヤがスライド操作を折り返す（反転する）と、ダウンスイングの指示に移行する。たとえば、ガイド軌跡２１０の端点２１０ａまでスライド操作を行った場合には、プレイヤキャラクタ２０２が持っているクラブ２０４はトップ位置に来た状態（第１フレーム）となる。また、この実施例では、分かり易く示すために、スライド操作が反転されたときに、描画軌跡２３０（バックスイングについての描画軌跡２３０）が消去（非表示）される。
【００９６】
なお、ここでは、端点２１０ａまでスライド操作を行った場合について示してあるが、プレイヤがガイド軌跡２１０の端点２１０ａに到達する前に、スライド操作を反転させることにより、バックスイング量を調整することができる。したがって、ボール１０６（２０６）の移動距離を変化させることができる。これは、通常のゴルフと同様のゲーム処理を行うためである。
【００９７】
また、この実施例では、スライド操作が反転されたときに、描画軌跡２３０を非表示するようにしてあるが、非表示しなくてもよい。たとえば、描画軌跡２３０の種類（色や太さなど）を変えて、ダウンスイングの指示のためのスライド操作に従う描画軌跡２３０と区別してもよい。
【００９８】
さらに、詳細な説明は省略するが、スライド操作（スイング）中は、スライド操作の正確さ、速さおよび滑らかさは常に判定され、したがって、図１３（Ａ）および図１３（Ｂ）に示すように、次第に指標画像２２０ａが変化（増加）される。
【００９９】
そして、図１４（Ａ）に示すように、スライド操作が、判定画像２１２が表示される位置（インパクト位置）を通過するとき、インパクトの判定が行われる。この実施例では、描画軌跡２３０が判定画像２１２上を通った場合には、基本的に、プレイヤキャラクタ２０２がボール２０６を正しく打ったことが判定される。一方、描画軌跡２３０が判定画像２１２上を通らない場合には、プレイヤキャラクタ２０２が空振りしたり、プレイヤキャラクタ２０２が撃ったボール１０６がチョロになったりしたことが判定される。ここで、「チョロ」とは、ミスショットでボール１０６が少し（数ヤード）しか転がらないことを意味する。ただし、インパクトの判定において、スライド操作（描画軌跡２３０）が判定画像２１２上を通った場合であっても、スライド操作の滑らかさの値が所定値（たとえば、５０）以下である場合には、ミスショット（シャンク、ダフリまたはテンプラ）と判定される。ここで、シャンクとは、ボール１０６（２０６）がクラブフェイスのネック寄りにあたり、急激に右方向（左打者の場合には左方向）に飛ぶことを意味する。また、ダフリとは、ボール１０６（２０６）の下側の地面をクラブ１０４（２０４）のヘッドで叩いてしまうことにより、ボール１０６（２０６）がほとんど飛ばないことを意味する。さらに、テンプラとは、打撃したボール１０６（２０６）が高く上がり過ぎてしまい、超高弾道になることを意味する。
【０１００】
なお、インパクトにおいて、スライド操作（描画軌跡２３０）が判定画像２１２上を通らない場合には、空振りまたはチョロがランダム（任意）に設定される。また、インパクトにおいて、スライド操作（描画軌跡２３０）が判定画像２１２上を通る場合であっても、スライド操作の滑らかさの値が所定値以下である場合には、シャンク、ダフリまたはテンプラがランダムに設定される。
【０１０１】
スライド操作が判定画像２１２の表示位置を超えるとき、ダウンスイングが終了され、上述したように、インパクトの判定がなされ、その結果に応じてボール２０６が移動を開始する。さらに、図１４（Ｂ）に示すように、スライド操作が継続されると、プレイヤキャラクタ２０２がフォロースイングを行うアニメーションが表示される。そして、プレイヤがタッチオフしたり、タッチ位置が端点２１０ｂに到達したりすると、図１５（Ａ）に示すように、スライド操作が終了となり、スイング動作が終了される。
【０１０２】
図１５（Ａ）に示すように、スイング動作（スライド操作）を終了すること、後述するようにボール１０６の軌道が算出されて、ボール１０６が仮想のゲーム空間内を移動する。プレイヤは、図１５（Ａ）に示すように、各指標の値（指標画像２２０ａ）が確定した教示画像２２０を参照することにより、スイングの指示の全体についてのスライド操作の正確さ、速さ、滑らかさを知ることができる。
【０１０３】
なお、図示は省略するが、下ＬＣＤ１４の操作画面２００には、ボール２０６を打った直後までの様子が表示され、その後のボール１０６が移動する様子については、立体ＬＣＤ１２のゲーム画面１００に表示される。
【０１０４】
プレイヤがスライド操作を終了すると、ボール１０６（２０６）の弾道（軌道）が算出される。この実施例では、スライド操作の速さおよび滑らかさがボール１０６の飛距離（移動速度）に影響し、スライド操作の正確さがボール１０６の移動方向（曲がり具合）に影響する。
【０１０５】
具体的には、実際のゴルフと同様に、クラブ１０４の種類によって、基準となる飛距離（クラブ飛距離Ｌｍａｘ）が決定される。この実施例では、飛距離（クラブ飛距離Ｌｍａｘ）が決定されるようにしてあるが、ボール１０６の基準となる移動速度が決定されているともいうことができる。これは、移動速度が速ければ、飛距離は長くなるし、移動速度が遅ければ、飛距離は短くなるからである。また、一般的には、バックスイング量で実際の飛距離Ｌを調整するため、この実施例では、スライド操作が反転された位置で決まるバックスイング量によってクラブ飛距離Ｌｍａｘを調整する。つまり、判定画像２１２が表示された位置から端点２１０ａまでのガイド軌跡２１０の長さに対する、判定画像２１２が表示された位置（スライド操作の開始位置）からスライド操作が判定された位置までの描画軌跡２３０（バックスイングを指示するスライド操作についての描画軌跡２３０）の長さの割合（バックスイング量の割合）Ｐ（０＜Ｐ≦１）によって、クラブ飛距離Ｌｍａｘが調整される。
【０１０６】
また、スライド操作の速さおよびスライド操作の滑らかさも、飛距離Ｌに影響を与える。この実施例では、スライド操作の速さに基づく補正値α（０＜α≦１）およびスライド操作の滑らかさに基づく補正値β（０＜β≦１）によって、さらにクラブ飛距離Ｌｍａｘが調整される。詳細な説明は省略するが、ライの状態（フェアーウェイ、バンカー、ラフ）、風および雨の影響による補正値γ（０＜γ≦１）によって、さらにクラブ飛距離Ｌｍａｘが調整される。ただし、補正値αおよび補正値βは、スライド操作時に加算（蓄積）されるスライド操作の速さおよび滑らかさの値（０〜１００）を１００で割ることにより求められる。また、補正値γは、ゲームプログラムによって自動的に決定される。
【０１０７】
［数１］
Ｌ＝Ｌｍａｘ×Ｐ×α×β×γ
なお、インパクトにおけるクラブヘッドの速さは、飛距離Ｌに多大な影響を与えると考えられるため、判定画像２１２を横切る際のスライド操作の速さが所定値未満である場合には、スライド操作の速さの値に基づいて決定される補正値α（０．３を超えているものとする）に拘わらず、補正値αを０．３に強制的に設定するようにしてもよい。
【０１０８】
また、上述したように、プレイヤは打撃操作の前に、設定画面において、ショットタイプ（ドロー、フック、フェード、スライス）の変更を選択することができる。かかる場合には、プレイヤの操作に従ってガイド軌跡２１０が変形される。具体的には、ショットタイプを変更することが選択されると、図１５（Ｂ）に示すように、たとえば、操作画面２００のガイド軌跡２１０の左端部にポイント画像２５０が表示される。
【０１０９】
このポイント画像２５０をドラッグすると、ガイド軌跡２１０を変形させることができ、これによって、ショットタイプおよび曲がり具合を決定することができる。ただし、図１５（Ｂ）に示すように、下ＬＣＤ１４には２次元の座標系が設定されており、その横方向がＸ軸方向であり、その縦方向がＹ軸方向である。また、下ＬＣＤ１４の左上の頂点が原点であり、右方向がＸ軸のプラス方向であり、下方向がＹ軸のプラス方向である。
【０１１０】
たとえば、図１６（Ａ）および図１６（Ｂ）に示すように、ポイント画像２５０を操作画面２００の左下方向にドラッグすると、ショットタイプとして、フェードまたはスライスを選択することができる。また、図１７（Ａ）および図１７（Ｂ）に示すように、ポイント画像２５０を操作画面の右上方向にドラッグすると、ショットタイプとして、フックまたはドローを選択することができる。
【０１１１】
ショットタイプは、ポイント画像２５０の表示位置のＹ座標に応じて決定される。たとえば、下ＬＣＤ１４の縦の長さ（たとえば１９２ドット）が４等分され、Ｙ座標が１−４８ドットであれば、フックが選択され、Ｙ座標が４９−９６ドットであれば、ドローが選択され、Ｙ座標が９７−１４４であれば、フェードが選択され、Ｙ座標が１４５−１９６であれば、スライスが選択される。
【０１１２】
また、ポイント画像２５０の表示位置のＸ座標に応じて、曲がり量が決定される。この実施例では、ポイント画像２５０の初期位置である場合に、曲がり量は最小に設定され、ポイント画像２５０のＸ座標の値が小さくなるにつれて曲がり量が大きくされる。詳細な説明は省略するが、曲がり量は、ショットタイプ毎に、ポイント画像２５０のＸ座標に応じて予め決定されているものとする。
【０１１３】
なお、ガイド軌跡２１０を変形させる技術としては、一般的なグラフィックソフトで利用されているような既存の技術を用いることができる。この軌跡を変形させる技術自体は、本願発明の本質的な内容ではないため、その詳細な説明は省略することにする。
【０１１４】
また、ポイント画像２５０の位置に応じて、ガイド軌跡２１０のうち、フォロースルーについてのスライド操作を実行する部分も変形される。この実施例では、図１６（Ａ）および図１６（Ｂ）に示すように、ショットタイプがフェードやスライスの場合には、ガイド軌跡２１０の端点２１０ｂが円の外側に開くように変形される。ただし、開く量は、ショットタイプと、ポイント画像２５０のＸ座標に応じて予め決定されている。軌跡の変形は、上述したような既存の技術が採用される。以下、同じ。
【０１１５】
ガイド軌跡２１０の変形操作においては、たとえばタッチ前はガイド軌跡２１０を半透明にし、タッチ後に通常表示する等して、変形モードであることを視覚的にわかりやすくしてもよい。
【０１１６】
また、図１７（Ａ）および図１７（Ｂ）に示すように、ショットタイプがフックやドローである場合には、ガイド軌跡２１０の端点２１０ｂが円の内側に閉じるように変形される。ただし、閉じる量は、ショットタイプと、ポイント画像２５０のＸ座標に応じて予め決定されている。
【０１１７】
なお、タッチオフすると、タッチオフしたときのタッチ位置にポイント画像２５０の位置が決定され、これに従って、ショットタイプおよび曲がり量が決定される。その後、判定画像２１２がタッチオンされ、打撃操作の開始が判定されたときに、ショットタイプおよび曲がり量が確定される。したがって、一旦ポイント画像２５０の位置を決定しても、打撃操作を開始するまでは、ポイント画像２５０の位置を変更することができる。
【０１１８】
このように、インテンショナルショット（フェード、スライス、フック、ドロー）にショットタイプを変更する場合には、ガイド軌跡２１０が変形される。これは、通常のゴルフにおいて、ストレートの打球を打つよりも、インテンショナルショットを打つ方が難しいからであり、この仮想ゲームにおいても、ガイド軌跡２１０を円の形状から変形させ、さらに、曲がり量を大きくする場合には、その変形量を大きくすることにより、単なる円運動でスライド操作するよりも、スライド操作を困難にしてある。
【０１１９】
ただし、通常のゴルフにおいては、インテンショナルショットを打つ場合であっても、バックスイング自体はストレートを打つ場合とほとんど変わらない。このため、この実施例においても、ダウンスイングとフォロースルーを指示するスライド操作を、通常のショットを打つ場合と異なるようにして、インテンショナルショットを打つことができるようにしてある。
【０１２０】
つまり、図１６（Ａ）−図１７（Ｂ）では、分かり易く示すために省略したが、ガイド軌跡２１０は、図１８（Ａ）および図１８（Ｂ）に示すように、バックススイング用のガイド軌跡２１００とダウンスイングおよびフォロースルー用のガイド軌跡２１０２とによって構成される。通常、ガイド軌跡２１００とガイド軌跡２１０２とが重なった状態で示される。したがって、図１６（Ａ）−図１７（Ｂ）に示したように、ガイド軌跡２１０が変形された場合には、ガイド軌跡２１０２が変形されるだけであり、ガイド軌跡２１００はそのままである。したがって、プレイヤは、バックスイングを指示する場合には、通常のショットと同様に、円形のガイド軌跡２１００をトレースするようにスライド操作を実行し、ダウンスイングおよびフォロースルーを指示する場合に、変形したガイド軌跡２１０２をトレースするようにスライド操作を実行するのである。これによって、インテンショナルショットを打つ場合の困難性を表現してある。
【０１２１】
また、図１６（Ａ）−図１７（Ｂ）に示したように、ポイント画像２５０をドラッグした場合には、立体ＬＣＤ１２に表示されるゲーム画面１００において、予想軌道１１０が変化される。たとえば、フェードやスライスが選択された場合には、図１９（Ａ）に示すように、ボール１０６が斜め左方向に飛び出した後に、次第に右方向に曲がる予想軌道１１０が表示される。また、フックやドローが選択された場合には、図１９（Ｂ）に示すように、ボール１０６が斜め右方向に飛び出した後に、次第に左方向に曲がる予想軌道１１０が表示される。
【０１２２】
詳細な説明は省略するが、予想軌跡１１０は、シミュレーションによって求められる。このとき、ボール１０６の飛距離Ｌはクラブ飛距離Ｌｍａｘのみで決定され、ポイント画像２５０の位置（ＸＹ座標）に応じて決定されるショットタイプと曲がり量とに応じて、ボール１０６の飛び出し方向（ショット方向）および曲がり量が決定される。
【０１２３】
また、この実施例では、選択したクラブ１０４（２０４）に応じて、ガイド軌跡２１０の太さが変化される。これは、通常のゴルフにおいても、クラブによってショットの難しさが異なるためである。一般的には、長いクラブの方が短いクラブよりもショットが困難である。したがって、この実施例では、ガイド軌跡２１０の太さを、クラブ１０４（２０４）の種類に応じて、３種類（太い、中、細い）に分類してある。これによって、ガイド軌跡２１０の種類が「中」や「太い」である場合には、ガイド軌跡２１０上をトレースし易くなり、スライド操作の正確さが向上される。つまり、クラブ１０４が短くなるにつれて、正確なショットが打ちやすくなる。
【０１２４】
たとえば、図１１−図１８までに示したガイド軌跡２１０の種類は「細い（１ドット）」であり、図２０（Ａ）には、種類が「中（２ドット）」であるガイド軌跡２１０が示され、そして、図２０（Ｂ）には、種類が「太い（３ドット）」であるガイド軌跡２１０が示される。この実施例では、クラブ１０４が１Ｗ（ウッド）−３Ｗまたは１Ｉ（アイアン）−３Ｉが選択された場合には、ガイド軌跡２１０の種類が「細い」に設定される。また、クラブ１０４が４Ｗ、５Ｗ、４Ｉ−８Ｉが選択された場合には、ガイド軌跡２１０の種類が「中」に設定される。そして、クラブ１０４が９Ｉ、ＳＷ（サンドウェッジ）、ＰＷ（ピッチングウェッジ）、ＰＴ（パター）が選択された場合には、ガイド軌跡２１０の種類が「太い」に設定される。
【０１２５】
なお、このガイド軌跡２１０の太さの分類は、単なる一例であり、どのクラブ１０４が選択された場合にガイド軌跡２１０の太さをどれに設定するかは、この仮想ゲームの開発者ないし設計者が任意に設定する事項である。また、この実施例では、ガイド軌跡２１０の太さを３種類で設定するようにしたが、２種類または４種類以上で設定するようにしてもよい。また、実際にあるクラブ以外にも、特別なショットが打てる特別なクラブを設定するようにしてもよい。そのような特別なクラブの例として、ガイド軌跡２１０が少なくとも一部表示されない等、正確な入力を非常に難しくする一方で、正確に入力ができた場合には飛距離が非常に大きいショットであるとか、必ずグリーンにオンするショットのような特別なショットが打てるようにすると、ゴルフゲームとしての興趣を一層高めることができる。
【０１２６】
詳細な説明は省略するが、図２１に示すように、パッティング動作を指示する場合には、ガイド軌跡２１０の形状が異なる。これは、通常のゴルフの場合においても、パッティングのスイングが他のクラブ１０４のスイングとは異なるからである。図２１に示すように、ガイド軌跡２１０はほぼ直線状に設定される。また、上述したように、ＰＴが選択された場合には、ガイド軌跡２１０の種類は「太い」に設定される。
【０１２７】
この場合にも、判定画像２１２がタッチされると、スイングの開始が判定され、左方向にスライド操作を行うと、それに従って描画軌跡２３０が表示され、スライド操作が反転されたときに、バックスイング量の割合Ｐが決定され、右方向にスライド操作して、判定画像２１２の位置を通過したときに、ボール１０６（２０６）がショットされる。このとき、スライド操作（描画軌跡２３０）が判定画像２１２上を通っていない場合には、空振りとなる。一方、スライド操作（描画軌跡２３０）が判定画像２１２上を通った場合には、バックスイング量の割合Ｐ、スライド操作の速さ（補正値α）、スライド操作の滑らかさ（補正値β）によって、ボール１０６（２０６）の移動距離（ここでは、転がる距離）が決定され、スライド操作の正確さ（ガイド軌跡２１０と描画軌跡２３０の差分）によって、ボール１０６（２０６）の移動方向（ここでは、飛び出し方向すなわち移動開始時の方向のずれ量）が変化される。
【０１２８】
なお、パッティングの場合にも、ライの状態、風および雨による影響（補正値γ）がある。
【０１２９】
また、詳細な説明は省略する、パッティングの場合のアニメーションは、別途用意されており、パッティングの場合には、他のクラブ１０４によるショットの場合とは異なるアニメーションが表示される。その再生方法などは、上述した場合と同様である。
【０１３０】
また、この実施例では、上述したように、スライド操作の正確さによってボール１０６（２０６）の軌道（移動軌跡）が変化される。つまり、ガイド軌跡２１０と描画軌跡２３０との差が検出され、これによってボール１０６（２０６）の移動に影響が及ぼされるのである。この起動の変化は、インテンショナルショットによってボール１０６の軌道が変化されるのとは異なり、プレイヤの意図していない変化である。
【０１３１】
この実施例では、ガイド軌跡２１０と描画軌跡２３０とによって形成される閉領域の面積を、ガイド軌跡２１０の内側と外側とに分けてそれぞれ算出し、その合計値で曲がり量を決定するとともに、外側の面積と内側の面積との大きさに応じて曲がる方向を決定するようにしてある。ただし、上述したように、バックスイングの場合と、ダウンスイングおよびフォロースルーの場合とでは、ガイド軌跡２１０（２１００、２１０２）が異なるため、それぞれの場合について示してある。図２２（Ａ）には、時計回りのスライド操作（バックスイングの指示）を行った場合の描画軌跡２３０とガイド軌跡２１０（２１００）とが示される。また、図２２（Ｂ）には、反時計回りのスライド操作（ダウンスイングおよびフォロースルーの指示）を行った場合の描画軌跡２３０とガイド軌跡２１０（２１０２）とが示される。
【０１３２】
図２２（Ａ）および図２２（Ｂ）では、ガイド軌跡２１０の内側に形成される閉領域に斜線を付すとともに、ガイド領域２１０の外側に形成される閉領域に斑点模様を付してある。ただし、閉領域の面積は、それに含まれるドットの数で表される。
【０１３３】
図２２（Ａ）に示す例では、バックスイングの場合の差分として、ガイド軌跡２１００の外側の面積ＳＢＯとガイド軌跡２１００の内側の面積ＳＢＩとが求められる。また、図２２（Ｂ）に示す例では、ダウンスイングの場合の差分として、ガイド軌跡２１０２の外側の面積ＳＤＯとガイド軌跡２１０２の内側の面積ＳＤＩとが求められるとともに、フォロースルーの場合の差分として、ガイド軌跡２１０２の外側の面積ＳＦＯとガイド軌跡２１０２の内側の面積ＳＦＩ（図２２（Ｂ）の例では、０）とが求められる。
【０１３４】
ただし、ダウンスイングとフォロースイングとは、判定画像２１２の表示位置（インパクト位置）で分離して、それぞれの面積を算出するようにしてある。
【０１３５】
この実施例では、数２に示すように、面積の総和によって、差分による曲がり量Ｒが決定される。この曲がり量Ｒは、ボール１０６（２０６）について算出された軌道を、この軌道を中心として左または右に曲げるためのベクトルのスカラ量である。ただし、曲がり量によってボール１０６（２０６）の軌道に変化が加えられるのは、或る程度（たとえば、２〜３秒）ボール１０６（２０６）が移動した後からである。ただし、Ｋは曲がり量に変換するための係数であり、仮想ゲームの開発者やプログラマによって予め設定された値である。また、ｗ１−ｗ３（ｗ１＋ｗ２＋ｗ３＝１）の各々は、後述するように設定される重み係数である。
【０１３６】
［数２］
Ｒ＝Ｋ｛ｗ１（ＳＢＯ＋ＳＢＩ）＋ｗ２（ＳＤＯ＋ＳＤＩ）＋ｗ３（ＳＦＯ＋ＳＦＩ）｝
また、ボール１０６（２０６）が意図しない方向に曲がるのは、ダウンスイングの仕方に大きな原因があると考えられるため、この実施例では、ダウンスイングを指示する場合の外側の面積ＳＤＯと内側の面積ＳＤＩとの大きさに基づいて、曲がる方向（移動方向）を決定するようにしてある。つまり、曲がり量Ｒと曲がる方向（移動方向）とによって、ボール１０６（２０６）の軌道を変化させるベクトル（変化ベクトル）が決定される。この実施例では、外側の面積ＳＤＯが、内側の面積ＳＤＩよりも大きい場合には、右方向に曲がり量Ｒが加えられ、スライスする（右に曲がる）ように、ボール１０６の軌道に変化が加えられる。逆の場合には、左方向に曲がり量Ｒが加えられ、フックする（左に曲がる）ように、ボール１０６の軌道に変化が加えられる。
【０１３７】
したがって、通常のゴルフと同様に、ストレートボールを打ったにも関わらず、フックやスライスになってしまったり、フェードやドローを打ったにも関わらず、予想軌道１１０が示したよりも曲がらなかったり、予想軌道１１０よりも曲がり過ぎたりするような演出が可能である。
【０１３８】
なお、この実施例では、ダウンスイングを指示した場合の差分に基づいて、移動方向（曲がる方向）を決定するようにしたが、これに限定される必要はない。つまり、バックスイング、ダウンスイングおよびフォロースルーのすべてについての差分に基づいて、移動方向を決定してもよい。また、ダウンスイングとフォロースルーを指示した場合の差分に基づいて、移動方向を決定してもよい。さらには、バックススイングとダウンスイングを指示した場合の差分に基づいて、移動方向を決定してもよい。
【０１３９】
また、図示は省略するが、上述したように、ガイド軌跡２１０（２１０２）を変形した場合には、ダウンスイングおよびフォロースルーを指示した場合の差分については、変形したガイド軌跡２１０２と描画軌跡２３０とから求められる。
【０１４０】
さらに、図２２（Ａ）および図２２（Ｂ）では、ガイド軌跡２１０と描画軌跡２３０とによって閉領域が形成される場合について示してあるが、必ずしもそれらの軌跡が交差するとは限らない。かかる場合には、スライド操作が反転した位置（スライド操作の速度が０になったときの位置）やタッチオフした位置と、ガイド軌跡２１０上の最も距離が短い点とを連結することにより、閉領域を形成して、面積が算出される。
【０１４１】
また、上述したように、スライド操作を実行する場合に、スライド操作の正確さ、速さ、滑らかさを、ボール１０６の移動距離および移動方向に反映させるようにしてある。ただし、バックスイング、ダウンスイングおよびフォロースイングに分けて考えると、ボール１０６の移動距離および移動方向に与える影響は、ダウンスイングが最も大きいと言える。また、インテンションナルショットの場合には、インパクト後のフォロースルーも比較的重要である。したがって、この実施例では、図２３（Ａ）および図２３（Ｂ）に示すように、スライド操作において、バックスイング、ダウンスイングおよびフォロースルーを指示する場合に、ボール１０６に与える影響の重みづけをしてある。
【０１４２】
図２３（Ａ）に示すように、通常のショットの場合には、スライド操作の正確さ、速さおよび滑らかさがボール１０６の移動量および移動方向に与える影響は、いずれも、バックスイングが２０％であり、ダウンスイングが７０％であり、フォロースルーが１０％である。
【０１４３】
また、図２３（Ｂ）に示すように、インテンショナルショットの場合には、スライド操作の正確さ、速さおよび滑らかさがボール１０６の移動量および移動方向に与える影響は、いずれも、バックスイングが２０％であり、ダウンスイングが５０％であり、フォロースルーが３０％である。
【０１４４】
したがって、図１２（Ａ）−図１５（Ａ）に示したように、スライド操作に従って、スライド操作の正確さ、速さおよび滑らかさの各パラメータの値を加算するようにしたが、この実施例では、加算する値がバックスイング、ダウンスイング、フォロースルーのそれぞれで異なる。また、本実施例においては、ゲームフレーム毎に、スライド操作の正確さ、速さおよび滑らかさが所定の条件を満たすかどうか判断される。所定の条件を満たす場合には、所定のポイントが加算されるが、バックススイング、ダウンスイング、フォロースルーの別に応じた重みづけによって、加算されるポイントが異なる。
【０１４５】
たとえば、図２３（Ａ）に示す通常ショットの重み付けの場合には、スライド操作の正確さ、速さおよび滑らかさが所定の条件を満たすと判断されたときに、バックスイング時には、０．２ポイント加算され、ダウンスイング時には０．７ポイント加算され、そして、フォロースルー時には、０．１ポイント加算されるようにし、条件を満たさなかった場合にはポイントが加算されないようにする。加算の有無の判定だけでなく、上述の値を最大値として条件との比較結果に応じた割合でポイントを加算するようにしてもよい。
【０１４６】
また、図２３（Ｂ）に示すように、インテンショナルショットの場合には、スライド操作の正確さ、速さおよび滑らかさが所定の条件を満たすと判断された場合には、バックスイング時には、０．２ポイント加算され、ダウンスイング時には０．５ポイント加算され、そして、フォロースルー時には、０．３ポイント加算される。
【０１４７】
なお、図２３（Ａ）および図２３（Ｂ）に示す重みづけは単なる一例であり、これに限定される必要はない。たとえば、スライド操作の正確さ、速さおよび滑らかさのそれぞれを、バックスイング、ダウンスイングおよびフォロースルーの別で可変的に設定してもよい。
【０１４８】
図２４は図４に示したメインメモリ５０のメモリマップ５００の一例を示す図解図である。図２４に示すように、メインメモリ５０は、プログラム記憶領域５０２およびデータ記憶領域５０４を含む。プログラム記憶領域５０２には、この実施例のゴルフゲームのゲームプログラムが記憶される。このゲームプログラムは、ＳＤカードスロット３４やゲームカードスロット３８に装着されたＳＤカードやゲームカードから読み込まれたり、ＮＡＮＤフラッシュメモリ４８から読み込まれたりして、メインメモリ５０２に展開（ロード）される。後述する各種データやフラグについても同じである。
【０１４９】
ゲームプログラムは、メイン処理プログラム５０２ａ、画像生成プログラム５０２ｂ、画像表示プログラム５０２ｃ、ガイド軌跡太さ決定プログラム５０２ｄ、ガイド軌跡変形プログラム５０２ｅ、描画軌跡生成プログラム５０２ｆ、パラメータ設定プログラム５０２ｇ、インパクト判定プログラム５０２ｈ、差分検出プログラム５０２ｉおよびオブジェクト移動プログラム５０２ｊなどによって構成される。
【０１５０】
メイン処理プログラム５０２ａは、この実施例の仮想ゲーム（ゴルフゲーム）のメインルーチンを処理するためのプログラムである。画像生成プログラム５０２ｂは、後述する画像データ５０４ｂを用いて、ゲーム画面１００および操作画面２００のような画面を表示するための表示画像データを生成するためのプログラムである。画像表示プログラム５０２ｃは、画像生成プログラム５０２ｂに従って生成された表示画像データを立体ＬＣＤ１２または下ＬＣＤ１４に出力するためのプログラムである。
【０１５１】
ガイド軌跡太さ決定プログラム５０２ｄは、操作画面２００に表示されるガイド軌跡２１０の太さ（ドット数）を決定するためのプログラムである。具体的には、ガイド軌跡太さ決定プログラム５０２ｄは、プレイヤが選択したクラブ１０４の種類に応じてガイド軌跡２１０の太さを決定する。ガイド軌跡変形プログラム５０２ｅは、操作画面２００に表示されたガイド軌跡２１０の変形するためのプログラムである。具体的には、ガイド軌跡変形プログラム５０２ｅは、プレイヤがポイント画像２５０をドラッグすると、それに従ってポイント画像２５０の位置を変化させ、その位置に従ってガイド軌跡２１０２を変形させる。
【０１５２】
描画軌跡生成プログラム５０２ｆは、プレイヤのスライド操作に従って描画軌跡２３０を生成するためのプログラムであり、たとえば、時系列に従うゲームフレーム毎のタッチ位置についての座標データの集合である。パラメータ設定プログラム５０２ｇは、ボール１０６の移動に関するパラメータを設定するためのプログラムである。具体的には、パラメータ設定プログラム５０２ｇは、プレイヤが選択したクラブ１０４の種類に応じて、クラブ飛距離Ｌｍａｘを設定したり、ライの状態、風および雨による補正値γを設定したり、プレイヤのスライド操作に従って、バックスイング量の割合Ｐ、スライド操作の正確さによる変化ベクトル、スライド操作の速度による補正値αおよびスライド操作の滑らかさによる補正値βをそれぞれ設定および更新したりする。
【０１５３】
インパクト判定プログラム５０２ｈは、スライド操作（描画軌跡２３０）がインパクトの位置（判定画像２１２の表示位置）を通過したかどうかを判断するとともに、その描画軌跡２３０が判定画像２１２上を通ったかどうかを判定するためのプログラムである。ただし、インパクト判定プログラム５２０ｈは、ダウンスイング時（ダウンスイングフラグ５０４ｗがオン）である場合に、タッチ位置のＸ座標が判定画像２１２の表示位置のＸ座標よりも大きくなった場合に、インパクト位置を通過したと判断する。
【０１５４】
差分検出プログラム５０２ｉは、ガイド軌跡２１０と描画軌跡２３０との差分を検出するためのプログラムである。上述したように、ガイド軌跡２１０と描画軌跡２３０とによって形成される閉領域についての面積が算出される。
【０１５５】
オブジェクト移動プログラム５０２ｊは、インパクト判定プログラム５０２ｈの判定結果およびパラメータ設定プログラム５０２ｇによって設定された各パラメータに従って、仮想空間内において、ボール１０６（ボールオブジェクト）を移動させるためのプログラムである。
【０１５６】
なお、図示は省略するが、プログラム記憶領域５０２には、ゲームプログラムに含まれる音出力プログラムやバックアッププログラムも記憶される。音出力プログラムは、図示しない音データを用いて、プレイヤキャラクタの音声（擬声音）、効果音、ＢＧＭのような、ゲームに必要な音を生成および出力するためのプログラムである。バックアッププログラムは、プレイヤの指示や所定のイベントに従って、メインメモリ５０（データ記憶領域５０４）に記憶されたゲームデータ（途中データ、結果データ）を、ＳＤカードやＮＡＮＤフラッシュメモリ４８、ゲームカード内に設けられた記憶領域等に保存（セーブ）するためのプログラムである。
【０１５７】
読み出されてメインメモリ５０に記憶される前のゲームプログラムやゲームデータは、ゲームカード内、ＮＡＮＤフラッシュメモリ２８内、ＳＤカード内等、いずれの記憶媒体に記憶されていてもよい。さらに、通信によってゴルフのコースデータ等を受信し、記憶媒体に追加データを記憶して利用できるようにしてもよい。
【０１５８】
ただし、図２４に示す例では、ゴルフゲームのゲームプログラム（アプリケーションプログラム）が記憶される場合についてのみ示してあるが、このゲームプログラムに代えて、または、このゲームプログラムとともに、他のアプリケーションプログラムが記憶されることもある。
【０１５９】
図２５は、メインメモリ５０に含まれるデータ記憶領域５０４の具体的な内容を示す。この図２５を参照して、データ記憶領域５０４には、操作データバッファ５０４ａが設けられる。操作データバッファ５０４ａは、タッチパネル１６からの操作データ（座標データ）やＡ、Ｂ、Ｘ、Ｙボタン２４ａ−２４ｄ、Ｌボタン２４ｅ、Ｒボタン２４ｆ、十字キー（ボタン）２４ｇ、ホーム、セレクト、スタートボタン２４ｈ−２４ｊ、アナログパッド２６からの操作データを記憶（一時記憶）する。操作データバッファ５０４ａに一時記憶された操作データは、ＣＰＵ４４ａの処理に使用された後、消去される。
【０１６０】
また、データ記憶領域５０４には、画像データ５０４ｂ、選択クラブデータ５０４ｃ、ショット方向データ５０４ｄ、ガイド軌跡データ５０４ｅ、ボール軌道データ５０４ｆ、重みテーブルデータ５０４ｇ、現座標データ５０４ｈ、前座標データ５０４ｉ、正確さデータ５０４ｊ、速さデータ５０４ｋ、滑らかさデータ５０４ｍ、描画軌跡データ５０４ｎ、バックスイングの割合データ５０４ｐ、インパクト判定データ５０４ｑ、差分データ５０４ｒ、ミスショットデータ５０４ｓ、インテンショナルショットフラグ５０４ｔ、スイング中フラグ５０４ｕ、バックスイングフラグ５０４ｖ、ダウンスイングフラグ５０４ｗ、およびフォロースルーフラグ５０４ｘが記憶される。
【０１６１】
画像データ５０４ｂは、上述した表示画像データを生成するためのポリゴンデータやテクスチャデータであり、プレイヤキャラクタ２０２についてのスイング動作を示すアニメーションのデータも含む。
【０１６２】
選択クラブデータ５０４ｃは、コンピュータ（ＣＰＵ４４ａ）またはプレイヤが選択したクラブ１０４（２０４）の種類を示すデータである。これによって、クラブ飛距離Ｌｍａｘおよびガイド軌跡２１０の太さが決定される。ショット方向データ５０４ｄは、仮想空間におけるボール１０６の飛び出し方向（ショット方向）についてのデータである。ガイド軌跡データ５０４ｅは、選択クラブデータ５０４ｃが示すクラブ１０４（２０４）の種類に応じて決定された太さのガイド軌跡２１０のデータであり、具体的には、ガイド軌跡２１０を構成する複数の点についての座標データである。ただし、ガイド軌跡２１０が変形されると、それに従ってガイド軌跡データ５０４ｅも更新される。また、クラブ１０４の種類が決定されたときに、クラブ１０４の種類に応じて決定された太さで、通常のショットを打つ場合のガイド軌跡２１０についてのガイド軌跡データ５０４ｅが、ゲームプログラムを読み込んだ媒体（ＳＤカード、ゲームカード、ＮＡＮＤフラッシュメモリ４８）から読み込まれる。
【０１６３】
ボール軌道データ５０４ｆは、ボール１０６の軌道についてのデータである。上述したように、軌道は、ボール１０６のショット方向、選択したクラブ１０４（２０４）の種類（クラブ飛距離Ｌｍａｘ）、ショットの種類、各パラメータおよび変化ベクトルに応じてシミュレーションにより算出される。
【０１６４】
重みテーブル５０４ｇは、図２２（Ａ）に示した通常のショットの場合の重みテーブルおよび図２２（Ｂ）に示したインテンショナルショットの場合の重みテーブルのデータである。現座標データ５０４ｈは、現在のゲームフレームのタッチ位置の座標についての座標データである。前座標データ５０４ｉは、現在のゲームフレームの１つ手前のタッチ位置の座標についての座標データである。
【０１６５】
正確さデータ５０４ｊは、スライド操作の正確さの値（０〜１００）についてのデータである。速さデータ５０４ｋは、スライド操作の速さの値（０〜１００）についてのデータである。このスライド操作の速さの値に基づいて補正値αが算出される。滑らかさデータ５０４ｍは、スライド操作の滑らかさの値（０〜１００）についてのデータである。このスライド操作の滑らかさの値に基づいて補正値βが算出される。
【０１６６】
描画軌跡データ５０４ｎは、スライド操作に応じて入力される複数の座標データであって、複数の座標データが時系列に従って並べられる。バックスイングの割合データ５０４ｐは、ガイド軌跡２１０で設定される最大のバックスイング量に対する、バックスイングを指示するスライド操作によるバックスイング量の割合Ｐ（０＜Ｐ≦１）についてのデータである。
【０１６７】
インパクト結果データ５０４ｑは、インパクトの位置をスライド操作（描画軌跡２３０）が通過した場合に、描画軌跡２３０が判定画像２１２上を通ったかどうかを示す判定結果のデータである。差分データ５０４ｒは、ガイド軌跡２１０に対する描画軌跡２３０の差分のデータであって、ガイド軌跡２１０と描画軌跡２３０とによって形成される閉領域の面積についてのデータである。上述したように、ガイド軌跡２１０に対して、外側に形成される閉領域の面積および内側に形成される閉領域の面積が、バックスイング、ダウンスイングおよびフォロースルーのそれぞれについて求められる。
【０１６８】
ミスショットデータ５０４ｓは、インパクトの判定結果やスイング操作の滑らかさに応じて決定されたミスショットの種類を設定するためのデータである。この実施例では、ミスショットとしては、空振り、チョロ、シャンク、ダフリまたはテンプラがあり、設定されたミスショットについての識別情報がミスショットデータ５０４ｓとして記憶（設定）される。したがって、ミスショットでない場合には、たとえば、ミスショットデータ５０４ｓとしてｎｕｌｌデータが記憶される。ただし、ダウンスイングの途中でスイングを止めた場合、つまりダウンスイングを指示するスライド操作の途中でタッチオフした場合にも、空振りまたはチョロが設定される。
【０１６９】
インテンショナルショットフラグ５０４ｔは、インテンショナルショットを打つことが選択されたかどうかを判別するためのフラグであり、１ビットのレジスタで構成される。インテンショナルショットフラグ５０４ｔが成立（オン）されると、レジスタにはデータ値「１」が設定される。一方、インテンショナルショットフラグ５０４ｔが不成立（オフ）されると、レジスタにはデータ値「０」が設定される。ただし、インテンショナルショットを打つかどうかは、プレイヤが設定画面（図示せず）で選択する。
【０１７０】
スイング中フラグ５０４ｕは、スイング中であるかどうか、すなわち、プレイヤが打撃のためのスライド操作を実行中であるかどうかを判定するためのフラグであり、１ビットのレジスタで構成される。スイング中フラグ５０４ｕがオンされると、レジスタにはデータ値「１」が設定される。一方、スイング中フラグ５０４ｕがオフされると、レジスタにはデータ値「０」が設定される。
【０１７１】
バックスイングフラグ５０４ｖは、バックスイングを指示するためのスライド操作であるかどうかを判定するためのフラグであり、１ビットのレジスタによって構成される。バックスイングフラグ５０４ｖがオンされると、レジスタにはデータ値「１」が設定される。一方、バックスイングフラグ５０４ｖがオフされると、レジスタにはデータ値「０」が設定される。
【０１７２】
ダウンスイングフラグ５０４ｗは、ダウンスイングを指示するためのスライド操作であるかどうかを判定するためのフラグであり、１ビットのレジスタによって構成される。ダウンスイングフラグ５０４ｗがオンされると、レジスタにはデータ値「１」が設定される。一方、ダウンスイングフラグ５０４ｗがオフされると、レジスタにはデータ値「０」が設定される。
【０１７３】
フォロースルーフラグ５０４ｘは、フォロースイングを指示するためのスライド操作であるかどうかを判定するためのフラグであり、１ビットのレジスタによって構成される。フォロースイングフラグ５０４ｘがオンされると、レジスタにはデータ値「１」が設定される。一方、フォロースルーフラグ５０４ｘがオフされると、レジスタにはデータ値「０」が設定される。
【０１７４】
当然のことではあるが、バックスイングフラグ５０４ｖ、ダウンスイングフラグ５０４ｗおよびフォロースルーフラグ５０４ｘのいずれか１つがオンされている場合には、他の２つはオフされる。
【０１７５】
なお、図示は省略するが、データ記憶領域５０４には、予測軌道１１０についてのデータや音データのような他のデータが記憶されたり、ゲームプログラムの実行に必要な他のフラグやタイマ（カウンタ）も設定されたりする。
【０１７６】
図２６−図３１は、この実施例のゴルフゲームにおける打撃処理を示すフロー図である。図２６に示すように、ＣＰＵ４４ａは、打撃処理を開始すると、ステップＳ１で、クラブ１０４の選択かどうかを判断する。つまり、ＣＰＵ４４ａは、図示しない設定画面が下ＬＣＤ１４に表示され、クラブ１０４（２０４）の選択が指示されたかどうかを判断する。
【０１７７】
なお、図示は省略するが、打撃処理が開始される当初では、グリーンないしカップまでの距離やライの状態に応じて、コンピュータ（ＣＰＵ４４ａ）によって選択されたクラブ１０４（２０４）が使用するクラブ１０４（２０４）として決定されている。このように、予め決定されたクラブ１０４（２０４）を選択することができる。
【０１７８】
ステップＳ１で“ＮＯ”であれば、つまりクラブ１０４の選択でなければ、そのままステップＳ５に進む。一方、ステップＳ１で“ＹＥＳ”であれば、つまりクラブ１０４の選択であれば、ステップＳ３で、選択されたクラブ１０４を使用するクラブ１０４に決定し、ステップＳ５で、クラブ飛距離Ｌｍａｘを決定する。
【０１７９】
続くステップＳ７では、ガイド軌跡２１０の太さを決定する。ここでは、ＣＰＵ４４ａは、使用するクラブ１０４に応じて決定された太さで、通常のショットを打つ場合のガイド軌跡２１０についてのガイド軌跡データ５０４ｅを読み出して、データ記憶領域５０４に記憶する。次に、ステップＳ９で、図１１（Ａ）に示したようなゲーム画面１００を立体ＬＣＤ１２に表示するとともに、図１１（Ｂ）に示したような操作画面２００を下ＬＣＤ１４に表示する。このとき、操作画面２００では、ガイド軌跡データ５０４ｅに従うガイド軌跡２１０が所定位置に表示される。ただし、プレイヤないしコンピュータ（ＣＰＵ４４ａ）によって選択されたクラブ２０４を持ったアドレス状態のプレイヤキャラクタ２０２がガイド軌跡２１０の内側の所定位置に表示されるとともに、教示画像２２０がガイド軌跡２１０の右上方の所定位置に表示される。
【０１８０】
続くステップＳ１１では、ショット方向の変更かどうかを判断する。ここでは、ＣＰＵ４４ａは、操作データバッファ５０４ａに、十字キー（ボタン）２４ｇのうちの左ボタンまたは右ボタンについての操作データが記憶されているかどうかを判断する。ステップＳ１１で“ＮＯ”であれば、つまりショット方向の変更でなければ、そのままステップＳ１５に進む。一方、ステップＳ１１で“ＹＥＳ”であれば、つまりショット方向の変更であれば、ステップＳ１３で、プレイヤの操作に従って、ショット方向を変更して、ステップＳ１５に進む。
【０１８１】
なお、詳細な説明は省略するが、打撃操作の前に、コンピュータ（ＣＰＵ４４ａ）が、現在のボール１０６の位置からカップの位置を直線で結ぶ方向をショット方向（２次元方向）として決定し、それに対応するショット方向データ５０４ｄが記憶されている。このように、予め設定されたショット方向を変更することができる。
【０１８２】
ステップＳ１５では、インテンショナルショットの指示が有るかどうかを判断する。ここでは、ＣＰＵ４４ａは、図示しない設定画面において、インテンショナルショットが選択されたかどうかを判断する。なお、インテンショナルショットを選択しない場合には、通常のショットが選択される。ステップＳ１５で“ＮＯ”であれば、つまりインテンショナルショットの指示が無ければ、そのまま図２７に示すステップＳ１９に進む。一方、ステップＳ１５で“ＹＥＳ”であれば、つまりインテンショナルショットの指示が有れば、ステップＳ１７で、後述するガイド軌跡変形処理（図３２参照）を設定して、ステップＳ１９に進む。
【０１８３】
図２７に示すステップＳ１９では、ガイド軌跡２１０が変形されたかどうかを判断する。つまり、ＣＰＵ４４ａは、ポイント画像２５０が初期位置以外の位置に移動されたかどうかを判断するのである。ステップＳ１９で“ＮＯ”であれば、つまりガイド軌跡２１０が変形されていなければ、そのままステップＳ２３に進む。一方、ステップＳ１９で“ＹＥＳ”であれば、つまりガイド軌跡２１０が変形されていれば、ステップＳ２１で、インテンショナルショットフラグ５０４ｔをオンして、ステップＳ２３に進む。
【０１８４】
ステップＳ２３では、タッチオンかどうかを判断する。つまり、ＣＰＵ４４ａは、タッチパネル１６からの座標データが操作データバッファ５０４ａに記憶されているかどうかを判断する。ステップＳ２３で“ＮＯ”であれば、つまりタッチオフであれば、図３１に示すステップＳ８１に進む。ステップＳ２３で“ＹＥＳ”であれば、つまりタッチオンであれば、ステップＳ２５で、スイングの開始であるかどうかを判断する。つまり、ＣＰＵ４４ａは、タッチオフの状態からタッチオンの状態に変化し、そのタッチ位置が判定画像２１２上であるかどうかを判断する。
【０１８５】
ステップＳ２５で“ＮＯ”であれば、つまりスイングの開始でなければ、ステップＳ２７で、スイング中フラグ５０４ｕがオンであるかどうかを判断する。つまり、スイングの動作を指示するためのスライド操作を開始しているかどうかを判断する。ステップＳ２７で“ＮＯ”であれば、つまりスイング中フラグ５０４ｕがオフであれば、スイング動作を指示するためのスライド操作が開始されていないと判断して、図２６に示したステップＳ１に戻る。一方、ステップＳ２７で“ＹＥＳ”であれば、つまりスイング中フラグ５０４ｕがオンであれば、スイング動作を指示するためのスライド操作は開始されていると判断して、図２８に示すステップＳ３５に進む。
【０１８６】
一方、ステップＳ２５で“ＹＥＳ”であれば、つまりスイングの開始であれば、ステップＳ２９で、インパクトの状態のフレーム（第６０フレーム）からアニメーションフレームを逆再生する。したがって、バックスイングの動作が開始される。続いて、ステップＳ３１で、スイング中フラグ５０４ｕをオンし、ステップＳ３３で、バックスイングフラグ５０４ｖをオンして、ステップＳ３５に進む。
【０１８７】
図２８に示すように、ステップＳ３５では、現フレームのタッチ位置を記憶する。ここでは、ＣＰＵ４４ａは、現座標データ５０４ｈのコピーを前座標データ５０４ｉとして記憶し、現フレームのタッチ位置についての座標データを操作データバッファ５０４ａから読み出して、現座標データ５０４ｈとして記憶する。次のステップＳ３７では、現フレームのタッチ位置がガイド軌跡上であるかどうかを判断する。つまり、ＣＰＵ４４ａは、現座標データ５０４ｈと同じ座標データがガイド軌跡データ５０４ｅに含まれているかどうかを判断する。
【０１８８】
ステップＳ３７で“ＹＥＳ”であれば、つまり現フレームのタッチ位置がガイド軌跡２１０上であれば、スライド操作が正確であると判断して、ステップＳ３９で、コントロール成分を増加して、ステップＳ４１に進む。つまり、ステップＳ３９では、ＣＰＵ４４ａは、インテンショナルショットフラグ５０４ｔ、バックスイングフラグ５０４ｖ、ダウンスイングフラグ５０４ｗおよびフォロースルーフラグ５０４ｘを参照し、ショットの種類およびスイング動作に応じて、重みテーブルが示す割合のポイントを加算する。つまり、正確さデータ５０４ｊが更新され、したがって、教示画像２２０の正確さの成分（Ｃ）の表示が更新される。後述するステップＳ４９およびＳ５３で、パラメータを更新（ポイントを加算）する場合について同様である。一方、ステップＳ３７で“ＮＯ”であれば、つまり現フレームのタッチ位置がガイド軌跡２１０上でなければ、スライド操作が正確でないと判断して、そのままステップＳ４１に進む。
【０１８９】
ステップＳ４１では、前フレームのタッチ位置と現フレームのタッチ位置とを線で結ぶ。つまり、前座標データ５０４ｉが示す位置と現座標データ５０４ｈが示す位置とを線で結ぶことにより、プレイヤのスライド操作についての軌跡が描画される。つまり、描画軌跡２３０が表示（更新）される。次のステップＳ４３では、現フレームの速度を算出する。具体的には、前座標データ５０４ｉが示す位置と現座標データ５０４ｈが示す位置との間の距離を算出し、算出した距離を１ゲームフレーム（１／６０秒）で割ることにより、現フレームの速度が算出される。つまり、スライド操作の速さが算出される。現フレームの速度を算出すると、ステップＳ４５で、その速度を時系列に従って、データ記憶領域５０４のバッファ領域（図示は省略）に記憶する。
【０１９０】
続いて、ステップＳ４７では、現フレームの速度が所定範囲内である（たとえば、タッチ位置が１フレームの間に１〜５ドット変化した）かどうかを判断する。ステップＳ４７で“ＮＯ”であれば、つまり現フレームの速度が所定範囲外であれば、スライド操作が速すぎたり遅すぎたりすると判断して、そのままステップＳ５１に進む。一方、ステップＳ４７で“ＹＥＳ”であれば、つまり現フレームの速度が所定範囲内であれば、スライド操作の速さが想定の範囲内であると判断して、ステップＳ４９で、スピード成分を増加して、ステップＳ５１に進む。つまり、ステップＳ４９では、速さデータ５０４ｋが更新され、したがって、教示画像２２０の速度の成分（Ｓｐ）の表示が更新される。
【０１９１】
ステップＳ５１では、速度変化が所定値（たとえば、２〜３ドット／フレーム）以内であるかどうかを判断する。ＣＰＵ４４ａは、バッファ領域に記憶した時系列に従う各フレームの速度を参照して、現フレームの速度とその１つ手前のフレームの速度との差（速度変化）が所定値以内であるかどうかを判断するのである。ステップＳ５１で“ＮＯ”であれば、つまり速度変化が所定値を超えている場合には、スライド操作が滑らかでないと判断して、そのまま図２９に示すステップＳ５５に進む。一方、ステップＳ５１で“ＹＥＳ”であれば、つまり速度変化が所定値以内である場合には、スライド操作が滑らかであると判断して、ステップＳ５３で、スムーズ成分を増加して、ステップＳ５５に進む。つまり、ステップＳ５３では、滑らかさデータ５０４ｍが更新され、したがって、教示画像２２０の滑らかさの成分（Ｓｍ）の表示が更新される。
【０１９２】
図２９に示すステップＳ５５では、スライド方向が反転したかどうかを判断する。ここでは、ＣＰＵ４４ａは、スライド操作の速度（現フレームの速度）が０のゲームフレーム（ここでは、「着目するフレーム」という）の１つ手前のゲームフレームで検出されたタッチ位置と、着目するフレームの１つ後のゲームフレームで検出されたタッチ位置とが、着目するフレームで検出されたタッチ位置から見て同じまたは略同じ方向であるかどうかを判断してある。そして、ＣＰＵ４４ａは、同じまたはほぼ同じ方向である場合には、スライド方向が反転したと判断し、方向が９０度を超えて異なる場合には、スライド方向が反転していないと判断する。
【０１９３】
ステップＳ５５で“ＮＯ”であれば、つまりスライド方向が反転していなければ、バックススイングの指示を継続中であると判断して、そのまま図２７に示したステップＳ２３に戻る。一方、ステップＳ５５で“ＹＥＳ”であれば、つまりスライド方向が反転すれば、ステップＳ５７で、アニメーションフレームをそのフレーム番号から順再生する。したがって、ダウンスイングの動作が開始される。ステップＳ５９で、バックスイング量の割合Ｐを決定し、ステップＳ６１で、ダウンスイングフラグ５０４ｗをオンする。図示は省略するが、ダウンスイングフラグ５０４ｗがオンされたとき、バックスイングフラグ５０４ｖおよびフォロースルーフラグ５０４ｘがオフされる。さらに、ステップＳ６３で、表示された描画軌跡２３０を消去する。つまり、バックスイングの指示についての描画軌跡２３０が消去される。
【０１９４】
次のステップＳ６５では、インパクトかどうかを判断する。ここでは、ＣＰＵ４４ａは、ダウンスイングフラグ５０４Ｗがオンであり、かつタッチ位置のＸ座標が判定画像２１２の表示位置のＸ座標よりも大きいかどうかを判断する。ステップＳ６５で“ＮＯ”であれば、つまりインパクトでなければ、ダウンスイングの指示についてのスライド操作を行っていると判断して、ステップＳ２３に戻る。一方、ステップＳ６５で“ＹＥＳ”であれば、つまりインパクトであれば、図３０に示すステップＳ６７で、アニメーションを補正する。ここでは、アニメーションフレームのフレーム番号が「６０」未満である場合に、インパクトについてのアニメーションフレーム（第６０フレーム）まで加速して進められる。ただし、アニメーションフレームが「６０」以上である場合には、補正する必要がないため、ステップＳ６７の処理は実行されずに、ステップＳ６９に進む。
【０１９５】
次のステップＳ６９では、フォロースルーフラグ５０４ｘをオンする。図示は省略するが、フォロースルーフラグ５０４ｘがオンされると、バックスイングフラグ５０４ｖおよびダウンスイングフラグ５０４ｗがオフされる。続くステップＳ７１では、描画軌跡２３０が判定画像２１２上を通ったかどうかを判断する。つまり、ＣＰＵ４４ａは、描画軌跡データ５０４ｎに含まれる座標データが示す位置のうち、判定画像２１２の表示位置の範囲内である位置が存在するかどうかを判断する。ステップＳ７１で“ＮＯ”であれば、つまり描画軌跡２３０が判定画像２１２上を通っていなければ、ステップＳ７３で、空振りまたはチョロをランダムに選択して、打撃処理を終了する。つまり、ステップＳ７３では、空振りまたはチョロを示す識別情報がミスショットデータ５０４ｓとして設定される。したがって、図示しないゴルフゲームのメインルーチンにて、空振りする様子やチョロの様子を示すゲーム画面１００が立体ＬＣＤ１２に表示される。ただし、チョロの場合には、予め設定されている軌道でボール１０６は移動される。このように、スライド操作（描画軌跡２３０）が判定画像２１２を横切らない場合には、スライド操作の正確さ、速さおよび滑らかさに拘わらず、空振りやチョロのようなミスショットが選択される。
【０１９６】
また、ステップＳ７１で“ＹＥＳ”であれば、つまり描画軌跡２３０が判定画像２１２上を通っていれば、ステップＳ７５で、スムーズ成分が所定値（たとえば、５０）以上あるかどうかを判断する。つまり、ＣＰＵ４４ａは、滑らかさデータ５０４ｍが示す値が所定値以上であるかどうかを判断する。ステップＳ７５で“ＮＯ”であれば、つまりスムーズ成分が所定値未満である場合には、ステップＳ７７で、シャンク、ダフリまたはテンプラをランダムに選択して、打撃処理を終了する。つまり、ステップＳ７７では、シャンク、ダフリまたはテンプラを示す識別情報がミスショットデータ５０４ｓとして設定される。したがって、ゴルフゲームのメインルーチンにて、シャンク、ダフリまたはテンプラの様子を示すゲーム画面１００が立体ＬＣＤ１２に表示され、予め設定されている軌道に従ってボール１０６が移動される。このように、スライド操作（描画軌跡２３０）の正確さが極端に悪い場合には、スライド操作の速さおよび滑らかさに拘わらず、シャンク、ダフリまたはテンプラのようなミスショットが選択される。
【０１９７】
また、ステップＳ７５で“ＹＥＳ”であれば、つまりスムーズ成分が所定値以上であれば、ステップＳ７９で、操作画面２００に表示されたボール２０６をショットの方向に移動開始して、つまりプレイヤキャラクタ２０２がボール２０６を打撃した様子の操作画面２００を表示して、ステップＳ２３に戻る。
【０１９８】
なお、この実施例では、インパクト時だけ、スライド操作を速く実行するような不正を排除するために、スライド操作の全体についての滑らかさによって、ミスショットにするかどうかを判断するようにしてある。ただし、これに限定される必要はない。たとえば、スライド操作の一部で大きな速度変化がみられる場合にも、ミスショットにするようにしてもよい。かかる場合には、あとえば、ステップＳ４９とＳ５１の間、またはステップＳ５３とＳ５５との間に、速度の変化量が或る閾値（たとえば、５ドット／ゲームフレーム）以上であるかを判断し、速度の変化量が閾値以上である場合には、ミスショット（たとえば、シャンク、ダフリまたはテンプラ）であると判定し、速度の変化量が閾値未満である場合には、スイング動作を継続するようにしてもよい。
【０１９９】
上述したように、ステップＳ２３で“ＮＯ”であれば、つまりタッチオフであれば、図３１に示すステップＳ８１で、スイング中フラグ５０４ｕがオンであるかどうかを判断する。つまり、ＣＰＵ４４ａは、スイング動作の指示を行っているかどうかを判断する。ステップＳ８１で“ＮＯ”であれば、つまりスイング中フラグ５０４ｕがオフであれば、スイング動作の指示を行っていないと判断して、図２６に示したステップＳ１に戻る。
【０２００】
しかし、ステップＳ８１で“ＹＥＳ”であれば、つまりスイング中フラグ５０４ｕがオンであれば、つまりスイング動作の指示を行っている場合には、その終了が指示されたと判断して、ステップＳ８３で、フォロースルーフラグ５０４ｘがオンであるかどうかを判断する。つまり、ＣＰＵ４４ａは、スイング動作の指示を途中で終了したか、スイング動作の指示をすべて行って終了したかを判断する。
【０２０１】
ステップＳ８３で“ＮＯ”であれば、つまりフォローフラグ５０４ｘがオフであれば、スイング動作の指示を途中で終了したと判断して、ステップＳ８５で、バックスイングフラグ５０４ｖがオンであるかどうかを判断する。ステップＳ８５で“ＮＯ”であれば、つまりバックスイングフラグ５０４ｖがオフであれば、ダウンスイング中であると判断して、図３０に示したステップＳ７３に進む。つまり、ダウンスイングを途中で止めたことにより、ミスショット（空振り、チョロ）が判定される。一方、ステップＳ８５で“ＹＥＳ”であれば、つまりバックスイングフラグ５０４ｖがオンであれば、スイングのやり直しであると判断して、ステップＳ８７で、スイング中フラグ５０４ｕをオフし、ステップＳ８９で、バックスイングフラグ５０４ｖをオフし、ステップＳ９１で、描画軌跡２３０を消去して、図２６に示したステップＳ５に戻る。ただし、ステップＳ９１では、描画軌跡データ５０４ｎがすべて消去される。
【０２０２】
また、ステップＳ８３で“ＹＥＳ”であれば、つまりフォロースルーフラグ５０４ｘがオンであれば、スイング動作の指示をすべて行って終了したと判断して、ステップＳ９３で、飛距離Ｌを数１に従って算出する。このとき、プレイヤまたはコンピュータ（ＣＰＵ４４ａ）によって選択されたクラブ１０４のクラブ飛距離Ｌｍａｘが使用される。また、スライド操作によって決定された、バックスイングの割合データ５０４ｐが示すバックスイングの割合Ｐ、速さデータ５０４ｋが示すポイントに基づく補正値α、および滑らかさデータ５０４ｍが示すポイントに基づく補正値βが用いられる。さらに、仮想空間において決定されるライの状態などによる補正値γが用いられる。
【０２０３】
次のステップＳ９５では、ガイド軌跡２１０と描画軌跡２３０との差分を算出する。上述したように、バックスイング、ダウンスイングおよびフォロースルーのそれぞれについて差分（閉領域の面積）が求められる。そして、ボール１０６の軌道の補正値すなわち変化ベクトル（方向および移動量）が決定される。
【０２０４】
そして、ステップＳ９７で、ボール１０６の軌道をシミュレーションにより算出する。つまり、ステップＳ９７では、ショットの種類、ショット方向、ステップＳ９３で求めた飛距離Ｌ、およびステップＳ９５で求めた変化ベクトルを用いて、ボール１０６の軌道を算出する。したがって、ゴルフゲームのメインルーチンにて、ボール１０６は、算出された軌道に従って移動する。そして、その様子が立体ＬＣＤ１２に示される。ただし、ボール１０６（２０６）を打った瞬間およびその直後（２〜３秒後まで）の画像は下ＬＣＤ１４で表示するようにしてあるため、立体ＬＣＤ１２には、その後の様子が分かるように、ボール１０６が移動する様子が表示される。
【０２０５】
なお、図２６−図３１に示した打撃処理では、タッチオフした場合にスイングの指示を終了するようにしてあるが、上述したように、タッチオンの場合にタッチ位置が端点２１０ｂに到達した場合にも、スイングの指示は終了する。かかる場合には、タッチ位置が必ずしも端点２１０ｂを指示するとは限らないため、フォロースイングフラグ５０４ｘがオンである場合に、タッチ位置のＹ座標が端点２１０ｂのＹ座標以下になった場合に、スイングの指示を終了したと判断するようにしてある。
【０２０６】
図３２は、図２６に示したステップＳ１７のガイド軌跡変形処理を示すフロー図である。図３２に示すように、ＣＰＵ４４ａは、ガイド軌跡変形処理を開始すると、ステップＳ１１１で、下ＬＣＤ１４に、ガイド軌跡変形画面を表示する。つまり、図１５（Ｂ）に示したように、ポイント画像２５０が表示された操作画面２００が下ＬＣＤ１４に表示される。
【０２０７】
続くステップＳ１１３では、ポイント画像２５０がタッチされたかどうかを判断する。ステップＳ１１３で“ＮＯ”であれば、つまりポイント画像２５０がタッチされてにいなければ、そのまま同じステップＳ１１３に戻る。一方、ステップＳ１１３で“ＹＥＳ”であれば、つまりポイント画像２５０がタッチされれば、ステップＳ１１５で、ポイント画像２５０が移動されたかどうかを判断する。ただし、ドラッグ操作に従ってポイント画像２５０は移動されるため、ＣＰＵ４４ａは、タッチ位置が変化したかどうかを判断するようにしてもよい。
【０２０８】
ステップＳ１１５で“ＮＯ”であれば、つまりポイント画像２５０が移動されていなければ、そのままステップＳ１１５に戻る。一方、ステップＳ１１５で“ＹＥＳ”であれば、ポイント画像２５０が移動されれば、ステップＳ１１７で、ポイント画像２５０の位置に応じて、ガイド軌跡２１０（ガイド軌跡２１０２）を変形させる。つまり、ステップＳ１１７では、ガイド軌跡データ５０４ｅに含まれる座標データが更新される。次のステップＳ１１９で、ボール１０６の予想軌道１１０を変更する。つまり、ステップＳ１１９では、ポイント画像２５０の位置（タッチ位置）に応じて決定されるショットの種類と、その位置のＸ座標に応じて決定される曲がり量とを用いて予想軌道１１０が変化される。
【０２０９】
続くステップＳ１２１では、タッチオフかどうかを判断する。ステップＳ１２１で“ＮＯ”であれば、つまりタッチオフでなければ、そのままステップＳ１１５に戻る。一方、ステップＳ１２１で“ＹＥＳ”であれば、つまりタッチオフであれば、打撃処理にリターンする。
【０２１０】
この実施例によれば、ガイド軌跡をゴルフのスイングに合わせてトレースする場合のスライド操作の正確さ、速さおよび滑らかさに応じて、ボールの移動を制御するので、実際にゴルフをプレイしている感覚を味わうことができる。つまり、タッチパネルのようなポインティングデバイスを用いた新規な操作を行うゲーム装置を提供することができる。また、ゴルフゲームの面白味を増大させることができる。
【０２１１】
なお、この実施例では、タッチパネルを備える携帯型のゲーム装置についてのみ説明したが、Ｗｉｉ（登録商標、出願人が製造および販売するゲーム装置）やコンピュータマウス、ペンタブレットまたはタッチパッドのような他のポインティングデバイスを用いたゲーム装置にも適用することができる。この場合には、実施例で示したような指示画像を操作画面に表示して、ポインティングデバイスによる指示位置をプレイヤに示す必要がある。
【０２１２】
また、この実施例では、ガイド軌跡を変形する場合には、ダウンスイングおよびフォロースルーについてのガイド軌跡のみを変形するようにしたが、バックスイングのガイド軌跡も変形するようにしてもよい。
【０２１３】
また、この実施例では、ゴルフゲームにおける打撃操作において、ガイド軌跡をトレースするようにスライド操作を実行させて、その正確さに応じてゴルフボールの移動を制御したが、これに限定される必要はない。たとえば、ボウリングゲームにおける投球動作において、上述の実施例で示したようなガイド軌跡を表示し、これをトレースするようにスライド操作を実行させて、その正確さ、速さ、滑らかさに応じてボウリングの球（ボールオブジェクト）を移動制御するようにしてもよい。
【０２１４】
さらに、この実施例では、ゲーム装置について説明したが、この発明は、裸眼立体視表示可能な表示装置に仮想空間を表示するための情報処理装置（ゲーム機のほか、たとえばＰＣ，ＰＤＡ，携帯電話機，ＴＶ，電子フォトフレーム，音楽／映像プレイヤ，各種情報家電など）に適用できる。
【０２１５】
さらにまた、この実施例では、表示装置（立体ＬＣＤ１２、下ＬＣＤ１４）は、ゲーム装置に一体的に設けたが、ゲーム装置とは別体でもよい。入力装置（たとえばタッチパネル１６，ボタン２４ａ−２４ｋ，アナログパッド２６，マイク３０，カメラ１８ａ−１８ｃなど）もまた、ゲーム装置に一体的に設けられても別体でもよい。
【０２１６】
この発明はまた、ゲーム処理（情報処理）のための各処理が複数のコンピュータ等によって分散処理されるようなゲームシステム（情報処理システム）にも適用可能である。
【符号の説明】
【０２１７】
１０  …ゲーム装置
１２  …立体ＬＣＤ
１２ａ  …ＬＣＤコントローラ
１２ｂ  …バリア液晶
１２ｃ  …上ＬＣＤ
１４  …下ＬＣＤ
１６  …タッチパネル
１８ａ−１８ｃ  …カメラ（内側，外側左，外側右）
２０  …３Ｄ調整スイッチ（３Ｄ Ｖｏｌ）
２０Ａ  …３Ｄランプ
３０  …マイク
２４ａ−２４ｋ  …ボタン（キー）
２６  …アナログパッド
４４  …ＳｏＣ
４４ａ  …ＣＰＵ
４４ｂ  …ＧＰＵ
４４ｃ  …ＶＲＡＭ
５０  …メインメモリ
５４  …加速度センサ
Ｓｄ  …スライダ
ＩＣＬ，ＩＣＲ  …仮想カメラ（左，右）
【図１】
0005639830.tif 000002
【図２】
0005639830.tif 000003
【図３】
0005639830.tif 000004
【図４】
0005639830.tif 000005
【図５】
0005639830.tif 000006
【図６】
0005639830.tif 000007
【図７】
0005639830.tif 000008
【図８】
0005639830.tif 000009
【図９】
0005639830.tif 000010
【図１０】
0005639830.tif 000011
【図１１】
0005639830.tif 000012
【図１２】
0005639830.tif 000013
【図１３】
0005639830.tif 000014
【図１４】
0005639830.tif 000015
【図１５】
0005639830.tif 000016
【図１６】
0005639830.tif 000017
【図１７】
0005639830.tif 000018
【図１８】
0005639830.tif 000019
【図１９】
0005639830.tif 000020
【図２０】
0005639830.tif 000021
【図２１】
0005639830.tif 000022
【図２２】
0005639830.tif 000023
【図２３】
0005639830.tif 000024
【図２４】
0005639830.tif 000025
【図２５】
0005639830.tif 000026
【図２６】
0005639830.tif 000027
【図２７】
0005639830.tif 000028
【図２８】
0005639830.tif 000029
【図２９】
0005639830.tif 000030
【図３０】
0005639830.tif 000031
【図３１】
0005639830.tif 000032
【図３２】
0005639830.tif 000033
【図３３】
0005639830.tif 000034