(57)【特許請求の範囲】
【請求項１】
３次元のゲーム空間を所定の視点から撮影した画像を表示手段に表示するゲームシステムであって、
プレイヤによって把持されるハウジング、
前記ハウジングに設けられる傾きセンサ、
前記視点の基本座標を決定する視点基本座標決定手段、
前記傾きセンサの出力値に応じて、前記傾きセンサが前記ハウジングの左右方向の傾きを検出したときに、視点座標系のＺ軸をワールド座標系のＸＺ平面に投影した軸、視点座標系のＺ軸をプレイヤオブジェクトのローカル座標系のＸＺ平面に投影した軸、プレイヤオブジェクトのローカル座標系のＺ軸、または、視点座標系のＺ軸を地面オブジェクトに投影した軸のいずれかを中心として、前記基本座標を、前記傾きセンサによって検出される傾き方向とは逆方向に回転移動させ、移動後の座標を視点の座標とする視点座標決定手段、および
前記視点座標決定手段によって回転移動された視点の座標に応じて、ゲーム画像を生成するゲーム画像生成手段を備えるゲームシステム。
【請求項２】
前記回転移動の中心となる軸は、前記傾きセンサによって検出される傾き方向に応じて決定される、請求項１に記載のゲームシステム。
【請求項３】
３次元のゲーム空間を所定の視点から撮影した画像を表示手段に表示するゲームシステムであって、
プレイヤによって把持されるハウジング、
前記ハウジングに設けられる傾きセンサ、
前記視点の基本座標を決定する視点基本座標決定手段、
前記傾きセンサの出力値に応じて、前記傾きセンサが前記ハウジングの前後方向の傾きを検出したときに、視点座標系のＺ軸をワールド座標系のＸＺ平面に投影した軸に直交し、ワールド座標系のＸＺ平面上に存在し、かつ、注視点を通る軸を中心として、前記基本座標を、前記傾きセンサによって検出される傾き方向とは逆方向に回転移動させ、移動後の座標を視点の座標とする視点座標決定手段、および
前記視点座標決定手段によって回転移動された視点の座標に応じて、ゲーム画像を生成するゲーム画像生成手段を備えるゲームシステム。
【請求項４】
前記視点座標決定手段は、前記回転移動の中心となる軸を中心として、前記傾きセンサによって検出される傾きの角度と同じ角度だけ前記視点の基本座標を逆方向に回転移動させ、回転移動後の座標を前記視点の座標とすることを特徴とする、請求項１ないし３に記載のゲームシステム。
【請求項５】
前記視点基本座標決定手段は、前記視点の基本座標を、所定のオブジェクトに対して固定的な方向および／または距離に決定することを特徴とする、請求項１に記載のゲームシステム。
【請求項６】
前記ハウジングの基本ポジションを決定する基本ポジション決定手段をさらに備え、当該基本ポジション決定手段は、当該基本ポジションにおける前記傾きセンサの出力値を保持し、
前視点座標決定手段は、前記傾きセンサの出力値が前記基本ポジション決定手段により保持された出力値と等しいときに視点を前記基本座標に設定し、かつ、前記傾きセンサの出力値を前記基本ポジション決定手段により保持された出力値で補正した値に応じて、視点の前記基本座標からの回転移動量を決定する、請求項１に記載のゲームシステム。
【請求項７】
プレイヤによって把持されるハウジング、および該ハウジングに設けられる傾きセンサを備え、３次元のゲーム空間を所定の視点から撮影した画像を表示手段に表示するゲームシステムで実行されるゲームプログラムであって、
前記ゲームシステムのコンピュータに、
前記視点の基本座標を決定する視点基本座標ステップ、
前記傾きセンサの出力値に応じて、前記傾きセンサが前記ハウジングの左右方向の傾きを検出したときに、視点座標系のＺ軸をワールド座標系のＸＺ平面に投影した軸、視点座標系のＺ軸をプレイヤオブジェクトのローカル座標系のＸＺ平面に投影した軸、プレイヤオブジェクトのローカル座標系のＺ軸、または、視点座標系のＺ軸を地面オブジェクトに投影した軸のいずれかを中心として、前記基本座標を、前記傾きセンサによって検出される傾き方向とは逆方向に回転移動させ、移動後の座標を視点の座標とする視点座標決定ステップ、および
前記視点座標回転移動ステップによって回転移動された視点の座標に応じて、ゲーム画像を生成するゲーム画像生成ステップを実行させるゲームプログラム。
【請求項８】
前記回転移動の中心となる軸は、前記傾きセンサによって検出される傾き方向に応じて決定される、請求項７に記載のゲームプログラム。
【請求項９】
プレイヤによって把持されるハウジング、および該ハウジングに設けられる傾きセンサを備え、３次元のゲーム空間を所定の視点から撮影した画像を表示手段に表示するゲームシステムで実行されるゲームプログラムであって、
前記ゲームシステムのコンピュータに、
前記視点の基本座標を決定する視点基本座標ステップ、
前記傾きセンサの出力値に応じて、前記傾きセンサが前記ハウジングの前後方向の傾きを検出したときに、視点座標系のＺ軸をワールド座標系のＸＺ平面に投影した軸に直交し、ワールド座標系のＸＺ平面上に存在し、かつ、注視点を通る軸を中心として、前記基本座標を、前記傾きセンサによって検出される傾き方向とは逆方向に回転移動させ、移動後の座標を視点の座標とする視点座標決定ステップ、および
前記視点座標決定ステップによって回転移動された視点の座標に応じて、ゲーム画像を生成するゲーム画像生成ステップを実行させるゲームプログラム。
【請求項１０】
前記視点座標決定ステップは、前記回転移動の中心となる軸を中心として、前記傾きセンサによって検出される前記傾きの角度と同じ角度だけ前記視点の基本座標を逆方向に回転移動させ、回転移動後の座標を前記視点の座標とすることを特徴とする、請求項７ないし９に記載のゲームプログラム。
【請求項１１】
前記視点基本座標決定ステップは、前記視点の基本座標を、所定のオブジェクトに対して固定的な方向および／または距離に決定することを特徴とする、請求項７に記載のゲームプログラム。
【請求項１２】
前記ゲームシステムのコンピュータに、前記ハウジングの基本ポジションを決定する基本ポジション決定ステップをさらに実行させ、当該基本ポジション決定ステップは、当該基本ポジションにおける前記傾きセンサの出力値を保持し、
前記視点座標決定ステップは、前記傾きセンサの出力値が前記基本ポジション決定ステップにより保持された出力値と等しいときに視点を前記基本座標に設定し、かつ、前記傾きセンサの出力値を前記基本ポジション決定ステップにより保持された出力値で補正した値に応じて、視点の前記基本座標からの回転移動量を決定する、請求項７に記載のゲームプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、傾きセンサを利用するゲームシステムおよびゲームプログラムに関し、特に、該傾きセンサの出力に応じて３次元のゲーム画像を変化させるゲームシステムおよびゲームプログラムに関する。
【０００２】
【従来の技術】
傾きセンサを利用するゲームシステムが、特開２００１−１７０３５８に開示されている（以下、「従来技術」と呼ぶ）。この従来技術は、携帯ゲーム装置またはゲームコントローラ（以下「携帯ゲーム装置またはゲームコントローラ」のことを「ゲーム装置等」と呼ぶことがある）を傾けたときに、プレイヤキャラクタ等のオブジェクトが傾けた方向に移動（転がる）するようなゲーム画像を生成するものである。このようなゲーム画像を生成することによって、ゲーム装置等の傾きに連動してゲーム空間が傾けられるかのような感覚をプレイヤに与えることができる。
【０００３】
【発明が解決しようとする課題】
しかしながら、上述の従来技術は、２次元のゲーム画像を制御するものであり、近年ゲーム画像として主流となっている３次元のゲーム画像の制御に適用することができなかった。
【０００４】
それゆえ、本発明は、３次元がゲーム空間が、ゲーム装置等の傾きに連動して傾けられるかのような感覚を、処理の負担が少なく、プレイヤに与えることができるゲームシステムおよびゲームプログラムを提供することを目的とする。
【０００５】
【課題を解決するための手段】
この発明は、上記の目的を達成するために、次のように構成される。すなわち、請求項１に記載の発明は、３次元のゲーム空間を所定の視点から撮影した画像を表示手段に表示するゲームシステム（ゲームシステム３０）である。このゲームシステムは、プレイヤによって把持されるハウジング（ハウジング１１、または、ハウジング９１）と、ハウジングに設けられる傾きセンサ（加速度センサ１５４、または、加速度センサ９３）と、視点の基本座標（視点基本座標１０５）を決定する視点基本座標決定手段（Ｓ１０４１を実行するＣＰＵ４０１）と、傾きセンサの出力値に応じて、基本座標を、傾きセンサによって検出される傾き方向とは逆方向に回転移動させ、移動後の座標を視点の座標（視点座標１０６）とする視点座標決定手段（Ｓ１０４を実行するＣＰＵ４０１）と、視点座標決定手段によって回転移動された視点の座標に応じて、ゲーム画像を生成するゲーム画像生成手段（Ｓ１０８を実行するＣＰＵ４０１）とを備える。視点座標決定手段が傾きセンサの出力値によって視点の座標を変えることにより、ハウジングの傾きに応じて、ゲーム画像が変化する。視点座標決定手段は、傾きセンサによって検出される傾き方向と逆の方向に視点を移動させる。請求項１に記載の発明は、ハウジングの左右方向（図５のＸ軸方向）の傾き（言い換えると、図５のＺ軸を中心として回転するような場合の傾き）を検出したときの処理に特徴があるものである。なお、この発明において、左右方向とは、プレイヤがハウジングを把持したときに、左右方向となる方向のことであり、後述する図５におけるＸ軸方向が該当する。視点座標決定手段は、傾きセンサがこのような傾きを検出したときに、「視点座標系のＺ軸（軸１２０）をワールド座標系のＸＹ平面に投影した軸（軸１１０）」「視点座標系のＺ軸をプレイヤオブジェクトのローカル座標系のＸＺ平面に投影した軸」「プレイヤオブジェクトのローカル座標系のＺ軸」「視点座標系のＺ軸を地面オブジェクトに投影した軸」のいずれかを中心として、該傾きの方向とは逆方向に視点の基本座標（視点基本座標１０５）を回転移動させ、回転移動後の座標（視点座標１０６）を視点の座標とする（Ｓ１０４３）。
また、請求項３に記載の発明は、ハウジングの前後方向（図５のＺ軸の方向）の傾き（言い換えると、図５のＸ軸を中心として回転するような場合の傾き）を検出したときの処理に特徴があるものである。なお、この発明において、前後方向とは、プレイヤがハウジングを把持したときに、前後方向（すなわち奥行き方向）となる方向のことであり、後述する図５におけるＺ軸の方向が該当する。視点座標回転移動手段は、傾きセンサがこのような方向の傾きを検出したときに、下記の３つの条件をすべて満たす軸（軸１０８）を中心として、該傾きの方向とは逆方向に視点基本の座標（視点基本座標１０５）を回転移動させ、回転移動後の座標（視点座標１０６）を視点の座標とする（Ｓ１０４５）。
（１）視点座標系のＺ軸をワールド座標系のＸＺ平面に投影した軸に直交する
（２）ワールド座標系のＸＺ平面上に存在する
（３）注視点を通る
【０００６】
視点基本座標決定手段は、例えば、プレイヤオブジェクトから所定方向（プレイヤオブジェクトのオブジェクト座標系のＺ軸マイナス方向であり、斜め上４５度の方向）に所定距離（Ｄ１）だけ離れた位置に視点を決定する。なお、視点の基本座標は、所定オブジェクト（プレイヤオブジェクト）に対して固定的な位置（上述の通り、プレイヤオブジェクトのオブジェクト座標系のＺ軸マイナス方向であり、斜め上４５度の方向に所定距離（Ｄ１）だけ離れた位置）に決定されてもよいが、固定的な位置に決定される必要はなく、状況に応じて位置が変更されてもよい。例えば、プレイヤオブジェクトと視点との間に障害物が存在する場合に、視点が回り込むように移動する場合等がある。そして、傾きセンサは、ハウジングの所定方向（図５のＸ軸方向またはＺ軸方向）の傾きを検出するものである。
請求項２に記載の発明において、視点座標決定手段は、傾きセンサによって検出される傾き方向に応じて回転移動の中心となる軸（軸１０８または軸１１０）を決定し、該軸を中心として、視点基本座標決定手段によって決定される視点の基本座標（視点基本座標１０５）を該傾き方向とは逆方向に回転移動させ、回転移動後の座標（視点座標１０６）を視点の座標とする（Ｓ１０４３およびＳ１０４５）。
【０００７】
請求項４に記載の発明は、請求項２に記載のゲームシステムであって、ハウジングの左右方向（図５のＸ軸方向）の傾き（言い換えると、図５のＺ軸を中心として回転するような場合の傾き）を検出したときの処理に特徴があるものである。なお、この発明において、左右方向とは、プレイヤがハウジングを把持したときに、左右方向となる方向のことであり、後述する図５におけるＸ軸方向が該当する。視点座標決定手段は、傾きセンサがこのような傾きを検出したときに、「視点座標系のＺ軸（軸１２０）をワールド座標系のＸＹ平面に投影した軸（軸１１０）」「視点座標系のＺ軸をプレイヤオブジェクトのローカル座標系のＸＺ平面に投影した軸」「プレイヤオブジェクトのローカル座標系のＺ軸」「視点座標系のＺ軸」「視点座標系のＺ軸を地面オブジェクトに投影した軸」のいずれかを中心として、該傾きの方向とは逆方向に視点の基本座標（視点基本座標１０５）を回転移動させ、回転移動後のた座標（視点座標１０６）を視点の座標とする（Ｓ１０４３）。
【０００８】
請求項５に記載の発明は、請求項２に記載のゲームシステムであって、ハウジングの前後方向（図５のＺ軸の方向）の傾き（言い換えると、図５のＸ軸を中心として回転するような場合の傾き）を検出したときの処理に特徴があるものである。なお、この発明において、前後方向とは、プレイヤがハウジングを把持したときに、前後方向（すなわち奥行き方向）となる方向のことであり、後述する図５におけるＺ軸の方向が該当する。視点座標変位手段は、傾きセンサがこのような方向の傾きを検出したときに、下記の３つの条件をすべて満たす軸（軸１０８）を中心として、該傾きの方向とは逆方向に視点基本の座標（視点基本座標１０５）を回転移動させ、回転移動後の座標（視点座標１０６）を視点の座標とする（Ｓ１０４５）。
（１）視点座標系のＺ軸をワールド座標系のＸＺ平面に投影した軸に直交する
（２）ワールド座標系のＸＺ平面上に存在する
（３）注視点を通る
【０００９】
請求項４に記載の発明は、請求項１ないし３に記載のゲームシステムであって、視点座標決定手段は、前記所定軸を中心として、前記傾きセンサによって検出される前記傾きの角度（水平面からの傾き角度又は基本ポジションからの傾き角度）と同じ角度だけ視点の基本座標（視点基本座標１０５）を逆方向に回転移動させ、回転移動後の座標（視点座標１０６）を視点の座標とする（Ｓ１０４３またはＳ１０４５）。
【００１０】
請求項５に記載の発明は、請求項１に記載のゲームシステムであって、視点基本座標決定手段は、視点の基本座標を、所定のオブジェクト（プレイヤオブジェクト）に対して固定的な方向および／または距離に決定する（Ｓ１０４１）。例えば、プレイヤオブジェクトのローカル座標系のＺ軸マイナス方向であり、ＸＺ平面と４５度（Ｙ軸プラス方向）を成す方向（軸１１１の方向）に所定距離（Ｄ1）だけ離れた位置に決定する。
【００１１】
請求項６に記載の発明は、請求項１に記載のゲームシステムであって、前記ハウジングの基本ポジションを決定する基本ポジション決定手段（Ｓ２を実行するＣＰＵ４０１）をさらに備える。基本ポジション決定手段は、当該基本ポジションにおける前記傾きセンサの出力値を保持する。また、視点座標決定手段は、傾きセンサの出力値が基本ポジション決定手段により保持された出力値と等しいときに視点を基本座標に設定し、かつ、傾きセンサの出力値を基本ポジション決定手段により保持された出力値で補正した値に応じて、視点の基本座標からの回転移動量を決定する、（Ｓ１０４２，Ｓ１０４４）。プレイヤが基本ポジションでハウジングを把持したときは、視点は基本座標（視点基本座標１０５）に決定される。また、プレイヤが、基本ポジションから所定方向に傾けた状態でハウジングを把持したときは、基本座標をその傾きの方向とは逆方向に回転移動をさせた座標に視点座標（視点座標１０６）が決定される。ここで、基本ポジションとは、ハウジングの傾きが０度であると扱われるポジションであり、ゲームシステムで予め固定的に決定される場合と、プレイヤによって任意に決定される場合の両方を含む。前者の場合には、例えば水平ポジションが基本ポジションとして決定され、後者の場合には、プレイヤの好みによって、ハウジングを把持しやすく、かつ、携帯ゲーム装置の場合にはゲーム画面が見やすいポジションがプレイヤによって任意に決定される。
【００１９】
【発明の効果】
請求項１、３、７、または９に記載の発明によれば、３次元のゲーム空間が、ゲーム装置等の傾きに連動して傾けられるかのような感覚をプレイヤに与えることができる。
【００２３】
【発明の実施の形態】
図１は、本発明の実施形態に係るゲームシステム３０の外観図である。このゲームシステムは、ゲーム装置４０，ＤＶＤ−ＲＯＭ５０，メモリカード６０，ゲームシステム１４によって構成される。なお、メモリカード６０は選択的に採用される。
【００２４】
ＤＶＤ−ＲＯＭ５０およびメモリカード６０は、ゲーム装置４０に対して着脱可能に構成されている。ゲームシステム１４とゲーム装置４０は通信ケーブル７０ａで接続され、ゲーム装置４０に接続される通信ケーブル７０ｂはテレビ８０に接続される。ゲーム装置４０は、ゲームシステム１４または図示しないコントローラを接続するための複数のコネクタを有しており、ゲームシステム１４は、これらのコネクタのいずれかに接続される。なお、ゲームシステム１４とゲーム装置４０との間の通信を、通信ケーブルを用いずに、無線を用いて行ってもよい。
【００２５】
ＤＶＤ−ＲＯＭ５０は、ゲームプログラムや画像データなど、ゲームを行うために必要なデータを固定的に記憶している。プレイヤがゲームを行うときには、ＤＶＤ−ＲＯＭ５０はゲーム機装置４０に装着される。メモリカード６０は、書き換え可能な記憶媒体によって構成されて、ゲーム途中の状態を保存するために使用される。なお、ゲームプログラムなどを記憶するために、ＤＶＤ−ＲＯＭ５０に代えて、他の記憶媒体（メモリカートリッジ，ＣＤ−ＲＯＭ等）を使用してもよい。
【００２６】
ゲーム装置４０は、ＤＶＤ−ＲＯＭ５０に記録されたゲームプログラムを読み出し、ゲーム処理を実行する。ゲームシステム１４は、本実施例では単なる操作入力装置として使用される。なお、ゲームシステム１４を構成するゲーム装置１０（図２を参照して後述する）は、単独でゲーム処理を実行可能であり、ＬＣＤ１２にゲーム画面を表示しつつ、ゲーム装置１０と連動してゲーム処理を進めるようにしても良い。ただし、本実施例では、このような連動ゲーム処理については説明を省略し、ゲームシステム１４は、単に操作入力装置としてのみ使用するものとする（すなわち、ゲームシステム１４は操作データ等を単にゲーム装置に送信する処理のみをおこなう）。図２を参照して後述するように、ゲームシステム１４を構成する携帯ゲーム装置１０は種々の操作スイッチ１３を有し、プレイヤによるスイッチの押下などに応じて、操作入力をゲーム装置４０に出力する。テレビ８０は、ゲーム装置４０から出力された映像信号を画面に表示する。また、テレビ８０は、スピーカを内蔵し、ゲーム装置４０から出力された音声信号が出力される。
【００２７】
図２はゲームシステム３０を構成するゲームシステム１４の外観図である。ゲームシステム１４は、携帯ゲーム装置１０およびゲームカートリッジ１５によって構成される。携帯ゲーム装置１０は、矩形形状をしたハウジング１１を含む。ハウジング１１の一方主面（表面）には、液晶ディスプレイ（以下「ＬＣＤ」という）１２が設けられるとともに、ＬＣＤ１２を挟んで操作スイッチ１３が装着される。操作スイッチ１３は、プレイヤがゲーム操作のための操作信号を入力するためのスイッチであって、方向指示スイッチ１３１，スタートスイッチ１３２，セレクトスイッチ１３３がＬＣＤ１２の左側に配置され、動作指示スイッチ（Ａボタン，Ｂボタン）１３ａ，１３ｂがＬＣＤ１２右側に配置され、必要に応じて他の動作スイッチ１３Ｒ，１３Ｌがハウジング１１の上部側面の左右に配置される。方向指示スイッチ１３１は、ゲームキャラクタの移動方向の指示に主に用いられる。動作指示スイッチ１３ａ，１３ｂは、ゲームキャラクタの動作指示（ジャンプ，蹴る，投げる等）に主に用いられる。また、スタートスイッチ１３２はゲームスタートの指示に用いられ、セレクトスイッチ１３３は画面に表示されたメニューの選択等に用いられる。
【００２８】
さらに、携帯ゲーム装置１０の背面上部には、ゲームカートリッジ（以下「カートリッジ」という）１５を着脱自在に装着するためのカートリッジ挿入孔（図示せず）が形成され、カートリッジ挿入孔の近傍にコネクタ（図４の２７参照）が設けられる。カートリッジ１５は、半導体メモリ（図４に示すＲＯＭ１５２，ＲＡＭ１５３，加速度センサ１５４）をハウジング１５１に内蔵している。
【００２９】
図３は、ゲームシステム３０のハードウェア構成を示すブロック図である。図３において、ゲーム装置４０は、演算部（ＣＰＵ４０１，グラフィックスプロセッシングユニット（ＧＰＵ）４０２およびＤＳＰ４０６）と、記憶部（メインメモリ４０５，カラーバッファ４０３，Ｚバッファ４０４，およびサブメモリ４０７）と、各種のインターフェイス（Ｉ／Ｆ）部（４０９〜４１２および４１４）と、メモリコントローラ４０８と、ＤＶＤドライブ４１３とを備えている。メモリコントローラ４０８は、図３に示すように演算部と記憶部とインターフェイス部とを相互に接続し、これら各構成要素間のデータ転送を制御する。
【００３０】
ＤＶＤドライブ４１３は、ゲーム機本体１に装着されたＤＶＤ−ＲＯＭ５０を駆動する。ＤＶＤ−ＲＯＭ５０には、ゲームプログラムや各種ゲームデータが記録されている。ＤＶＤ−ＲＯＭ５０に記録されたゲームプログラムは、ＤＶＤディスクＩ／Ｆ４１４とメモリコントローラ４０８とを経由して、メインメモリ４０５にロードされる。ＣＰＵ４０１は、メインメモリ４０５にロードされたゲームプログラムを実行する。ゲーム中、プレイヤは、携帯ゲーム装置１０の操作スイッチ１３を操作する。携帯ゲーム装置１０は、これらプレイヤの操作に応じた操作入力を、通信ケーブル７０ａを介してゲーム装置４０に出力する。携帯ゲーム装置１０から出力された操作入力は、コントローラＩ／Ｆ４０９とメモリコントローラ４０８とを経由してＣＰＵ４０１に入力される。ＣＰＵ４０１は、携帯ゲーム装置１０から入力された操作入力に応じて、所定のゲーム処理を実行する。また、携帯ゲーム装置１０に装着されるカートリッジ１５に含まれる加速度センサ１５４からの出力も同様に、通信ケーブル７０ａを介してゲーム装置４０に出力され、ＣＰＵ４０１に入力される。
【００３１】
グラフィックスプロセッシングユニット（ＧＰＵ）４０２は、ＣＰＵ４０１からの制御に従い、主に画像データの生成処理を行う。ＧＰＵ４０２は、ジオメトリユニット４０２ａおよびレンダリングユニット４０２ｂを含み、画像処理専用のメモリ（カラーバッファ４０３およびＺバッファ４０４）に接続されている。なお、これら画像処理専用のメモリを設けず、メインメモリ４０５の一部に画像処理用の領域を確保するようにしても良い。ジオメトリユニット４０２ａおよびレンダリングユニット４０２ｂは、３次元コンピュータグラフィックスの処理をするための回路である。ジオメトリユニット４０２ａは、仮想３次元空間内におけるオブジェクトの位置（ゲーム空間内の位置であり３次元座標）を決定するための処理をおこなう回路であり、レンダリングユニット４０２ｂは、ジオメトリユニット４０２ａによって計算された３次元座標に基づいて、テレビ８０に表示すべき２次元画像を生成する処理をおこなう回路である。カラーバッファ４０３は、レンダリングユニット４０２ａによって生成された２次元画像を記憶するものであり、Ｚバッファ４０４は、３次元コンピュータグラフィックスにおける奥行き方向の情報を記憶する。ＧＰＵ４０２は、これらの構成によりテレビ８０に表示すべき画像データを生成し、適宜メモリコントローラ４０８およびビデオＩ／Ｆ４１０を介してテレビ８０に出力する。
【００３２】
デジタルシグナルプロセッサ（ＤＳＰ）４０６は、ＣＰＵ４０１からの制御に従い、主に音声データの生成処理を行う。サブメモリ４０７は、ＤＳＰ４０６の作業用メモリである。ＤＳＰ４０６によって生成された音声データは、メモリコントローラ４０８とオーディオＩ／Ｆ４１２とを経由して、テレビ８０のスピーカ８０ｂに出力される。なお、ゲーム機装置４０から出力される音声信号を、テレビ８０とは別のスピーカに出力してもよい。
【００３３】
図４はゲームシステム１４のブロック図である。携帯ゲーム装置１０には、制御回路（例えば、ＣＰＵチップ）２０が内蔵される。制御回路２０には、ＣＰＵコア２１が含まれる。ＣＰＵコア２１には、バス（アドレスバス及びデータバス）２２を介してＬＣＤコントローラ２３，ワークＲＡＭ２４，ビデオＲＡＭ２５及びインターフェイス回路２６が接続される。制御回路２０には、操作スイッチ１３，コネクタ２７及びサウンド回路２８が接続される。サウンド回路２８には、スピーカ２９が接続される。コネクタ２７には、ゲームの開始に先立って、所望のカートリッジ１５が装着される。そして、プレイヤ（使用者）は、カートリッジ１５を交換することによって、所望のゲームソフトをプレイすることができる。
【００３４】
制御回路２０のＣＰＵコア２１は、コネクタ２７に接続されたカートリッジ１５からゲームプログラムを読み出し、操作スイッチ１３によって入力される操作信号と当該プログラムとに基いてゲーム処理を実行し、処理途中のデータをワークＲＡＭ２４に記憶させるとともに、画像データをビデオＲＡＭ２５に一時記憶させる。ＣＰＵコア２１は、ビデオＲＡＭ２５に一時記憶されている表示データを表示タイミングに合わせてＬＣＤコントローラ２３に与える。ＬＣＤコントローラ２３は、ＣＰＵコア２１から供給された画像データをＬＣＤ１２に表示させるための表示制御を行う。また、ＣＰＵコア２１は、ゲームプログラムに基いてゲームの進行に応じたゲーム音楽又は効果音の音声データを発生し、サウンド回路２８に与える。サウンド回路２８は、Ｄ−Ａ変換回路及び増幅回路を含み、音声データを音声信号（アナログ信号）に変換しかつ適宜増幅してスピーカ２９から音声出力させる。
【００３５】
一方、ゲームカートリッジ１５は、ＲＯＭ１５２，ＲＡＭ１５３及び加速度センサ１５４を含む。前述の通り、本実施例では、ゲームシステム１４は単なる操作入力装置として使用する（すなわち、携帯ゲーム装置１０は操作データを単にゲーム装置４０に送信する処理をおこなうのみである）ので、ＲＯＭ１５２には、操作データゲーム装置４０に送信するためのプログラムが記憶される。ＲＡＭ１５３は、本実施例では特に使用しない。
【００３６】
加速度センサ１５４は、２軸の加速度センサであって、重力を検出することによって、２つの方向の傾きの大きさを出力するセンサである。加速度センサ１５４は、カートリッジ１５の図２における紙面上の左右方向および上下方向の傾きを検出可能なように、カートリッジ１５内に配置される。そして、カートリッジ１５は、携帯ゲーム装置１０に装着されるので、加速度センサ１５４は、携帯ゲーム装置１０の図２における紙面上の左右方向および上下方向の傾きを検出する。図５を参照して説明すると、携帯ゲーム装置１０を水平に把持したときに、携帯ゲーム装置１０のＸ軸，Ｙ軸，Ｚ軸は次のように定義される。すなわち、Ｘ軸は、水平かつ左右方向の軸であり、Ｚ軸は水平かつ奥行き方向の軸であり、Ｚ軸は垂直方向の軸である。加速度センサ１５４は、携帯ゲーム装置１０の図５におけるＸ軸方向の傾き（言い換えると、Ｚ軸を中心として回転させるようにしたときの傾き）およびＺ軸方向の傾き（言い換えると、Ｘ軸を中心として回転させるようにしたときの傾き）を検出する。なお、各軸方向の傾きのプラスマイナス方向は、図５に示す通り、各軸をプラス方向から見て左周りとなる傾きをプラス方向とし、右回りとなる傾きをマイナス方向と定義している。なお、以下の説明において、図５に示すＸ軸を単に「Ｘ軸」と呼び、図３に示すＺ軸を単に「Ｚ軸」と呼ぶことがある。
【００３７】
図６はＤＶＤ−ＲＯＭ５０に記憶されるデータを示す図である。ＤＶＤ−ＲＯＭ５０には、ゲームプログラムを記憶したプログラム記憶領域５０ａ，プレイヤオブジェクト画像データ（ポリゴンデータおよびテクスチャデータを含む）記憶領域５０ｂ，ノンプレイヤオブジェクト画像データ記憶領域５０ｃ，およびその他のデータ（地形オブジェクト画像データやゲームプログラムに利用される各種データ）を記憶した領域５０ｄが記憶される。プログラム記憶領域５０ａには、図１４〜図１６を参照して後述するフローチャートに対応するプログラムが記憶されている。プレイヤオブジェクト画像データ記憶領域５０ｂには、プレイヤオブジェクトを示す画像データ（ポリゴンデータおよびテクスチャデータを含む）が記憶される。ノンプレイヤオブジェクト画像データ記憶領域５０ｃには、ノンプレイヤオブジェクトを示す画像データ（ポリゴンデータおよびテクスチャデータを含む）が、各ノンプレイヤオブジェクトのそれぞれについて記憶される。その他のデータ記憶領域１５２ｆには、ゲームプログラムに利用されるその他の各種データ（例えば、地形オブジェクトデータ，音声データ等）が記憶される。
【００３８】
図７は、メインメモリ４０５に記憶されるデータを示す図である。メインメモリ４０５には、ゲーム処理において生成される一時的なデータが記憶される。加速度センサ出力値記憶領域４０５ａには、携帯ゲーム装置１０からゲーム装置４０に転送される、加速度センサ１５４からの出力値が記憶される。プレイヤオブジェクト位置データ記憶領域４０５ｂには、プレイヤオブジェクトの仮想ゲーム空間内におけるワールド座標系の位置データ（Ｘ、Ｙ，Ｚ）が記憶される。ノンプレイヤオブジェクト位置データ記憶領域４０５ｃには、ノンプレイヤオブジェクトのワールド座標系の位置データ（Ｘ、Ｙ，Ｚ）が記憶される。視点データ記憶領域４０５ｄには、３次元画像処理で用いられる視点座標（Ｃｘ，Ｃｙ，Ｃｚ）が記憶される。光源データ記憶領域４０５ｅには、３次元画像処理で用いられる光源座標（Ｌｘ，Ｌｙ，Ｌｚ）が記憶される。基本ポジションデータ記憶領域４０５ｆには、ゲームの開始に先立って決定される基本ポジション（携帯ゲーム装置１０の傾きが０°であると扱われるポジション）に対応する加速度センサ１５４の出力値が、Ｘ軸方向出力値およびＺ軸方向出力値のそれぞれについて記憶される。その他ゲーム変数データ記憶領域４０５ｇには、その他のゲーム変数データ（例えば、プレイヤオブジェクトの生命力データや所持アイテム等のデータ）が記憶される。プログラム記憶領域４０５ｈには、ＤＶＤ−ＲＯＭ５０から読み出されたプログラムデータが転送されて記憶される。
【００３９】
図８〜図１３は、携帯ゲーム装置１０の傾きに応じた視点座標の回転移動を説明するための図である。図８は、プレイヤオブジェクト１０３を中心とする一定範囲の仮想ゲーム空間を示した図である。カメラの注視点１０７は、プレイヤオブジェクトの足元に決定される（カメラの注視点の位置はこの例に限定されるものではない）。視点基本座標１０５は、注視点１０７を基準として、プレイヤオブジェクトについてのローカル座標系（プレイヤオブジェクトの前方をＺ軸，上方をＹ軸，右方をＸ軸とする座標系）におけるＺ軸マイナス方向であり、ＸＺ平面と４５°（Ｙ軸プラス方向）を成す方向（軸１１１の方向）に所定距離（Ｄ1）だけ離れた位置に決定する。
【００４０】
軸１２０（点線で示す）は、視点座標系のＺ軸（視点と注視点を結ぶ軸）である。軸１１０は、カメラの注視点を通る視点座標系のＺ軸（軸１２０）をワールド座標系のＸＺ平面（水平面）に投影した軸である。軸１０８は、ワールド座標系のＸＺ平面上の軸であり、かつ、軸１１０に注視点で直交する軸である。また、軸１０９は、軸１０８および軸１１０に直交する軸である。
【００４１】
なお、今、視点座標はプレイヤオブジェクトについてのローカル座標系のＺ軸上にあるので（すなわち、視点がプレイヤオブジェクトの真後ろ方向にあるので）、軸１０８はプレイヤオブジェクトについてのローカル座標系のＸ軸に一致し、軸１０９は同ローカル座標系のＹ軸に一致し、軸１１０は同ローカル座標系のＺ軸に一致している。
【００４２】
図９は、携帯ゲーム装置１０を基本ポジションで把持した場合（図９（ａ）の状態。なお、本実施例では、水平状態を基本ポジションにしている。）の視点座標の位置を説明するための図である。この場合には、視点座標１０６は、視点基本座標１０５と同じ位置に決定される（図９（ｂ））。このようにして決定された視点によってテレビ８０には図９（ｃ）のような画像（プレイヤオブジェクトおよび地面）が表示される。
【００４３】
図１０は、携帯ゲーム装置１０を基本ポジションからＺ軸方向のプラス方向にα１°傾けた場合（図１０（ａ）の状態）の視点座標の回転移動を説明するための図である。この場合には、視点基本座標１０５を、軸１０８を中心として傾きの方向とは逆方向に、α１°だけ回転移動した座標が、視点座標１０６に決定される（図１０（ｂ））。このようにして決定された視点によって、テレビ８０には図１０（ｃ）のような画像が表示される。
【００４４】
携帯ゲーム装置１０をＺ軸方向のプラス方向に傾けた場合には、視点座標を逆方向に回転移動することにより、携帯ゲーム装置１０内に存在する仮想的なゲーム空間が、携帯ゲーム装置１０と同様にＺ軸方向のプラス方向に傾くかのような表示がされる。図１０の例で説明すると、携帯ゲーム装置１０を水平状態から手前に傾けることにより、仮想的なゲーム空間があたかも手前に傾いて、プレイヤオブジェクトや地面を上方から見下ろしているかのような画像が表示される。なお、ゲーム空間自体を傾けることによって、ゲーム空間が傾いた表示をすることも可能であるが、この場合には、ゲーム空間のデータ自体を、傾いたデータに変換することが必要であり、処理の負担が非常に大きい。これに対して、本発明では、視点座標を回転移動するのみで、ゲーム空間の傾きを表現できるのである。
【００４５】
図１１は、携帯ゲーム装置１０を基本ポジションからＺ軸方向のマイナス方向にα２°傾けた場合（図１１（ａ）の状態）の視点座標の回転移動を説明するための図である。この場合には、視点基本座標１０５を、軸１０８を中心として傾きの方向とは逆方向に、α２°だけ回転移動した座標が、視点座標１０６に決定される（図１１（ｂ））。このようにして決定された視点によって、テレビ８０には図１１（ｃ）のような画像が表示される。携帯ゲーム装置１０を水平状態から奥行き側に傾けることにより、仮想的なゲーム空間があたかも奥行き側に傾いて、プレイヤオブジェクトや地面を下方から見ているかのような画像が表示される。
【００４６】
図１２は、携帯ゲーム装置１０を基本ポジションからＸ軸方向のプラス方向にβ１°傾けた場合（図１２（ａ）の状態）の視点座標の回転移動を説明するための図である。この場合には、視点基本座標１０５を、軸１１０を中心として傾きの方向とは逆方向に、β１°だけ回転移動した座標が、視点座標１０６に決定される（図１２（ｂ））。このようにして決定された視点によって、テレビ８０には図１２（ｃ）のような画像が表示される。携帯ゲーム装置１０を水平状態から左側に傾けることにより、仮想的なゲーム空間があたかも左側に傾いて、プレイヤオブジェクトや地面を左側から見ているかのような画像が表示される。
【００４７】
図１３は、携帯ゲーム装置１０を基本ポジションからＸ軸方向のマイナス方向にβ２°傾けた場合（図１３（ａ）の状態）の視点座標の回転移動を説明するための図である。この場合には、視点基本座標１０５を、軸１１０を中心として傾きの方向とは逆方向に、β２°だけ回転移動した座標が、視点座標１０６に決定される（図１３（ｂ））。このようにして決定された視点によって、テレビ８０には図１３（ｃ）のような画像が表示される。携帯ゲーム装置１０を水平状態から右側に傾けることにより、仮想的なゲーム空間があたかも右側に傾いて、プレイヤオブジェクトや地面を右側から見ているかのような画像が表示される。
【００４８】
図１４〜図１６は、ＤＶＤ−ＲＯＭ５０のプログラム記憶領域５０ａに記憶され、ＣＰＵ４０１によって実行されるプログラムのフローチャートを示す図である。
【００４９】
図１４は、メインフローを示す図である。まず、Ｓ１において、種々のゲーム変数の初期化処理がおこなわれる。次にＳ２において、基本ポジション決定処理がおこなわれる。具体的には，プレイヤが好みのポジションで携帯ゲーム装置１０を把持したのち、決定ボタン（例えば、操作スイッチ１３ａ）を操作する。そして、操作スイッチ１３ａを操作したときの加速度センサ１５４の出力値（Ｘ軸方向出力値およびＺ軸方向出力値）が前述の図５の基本ポジションデータ記憶領域２４４に記憶される。Ｓ２の後、Ｓ３において、ゲーム処理がおこなわれる。ゲーム処理については、図１５を参照して詳述する。
【００５０】
図１５は、ゲーム処理のフローを示す図である。まず、Ｓ１００において、操作スイッチ１３の入力検出処理がおこなわれる。なお、操作スイッチ１３はプレイヤオブジェクトの移動指示等のためにプレイヤが操作する。Ｓ１００の後、Ｓ１０１において、加速度センサ入力検出処理がおこなわれる。具体的には，加速度センサ１５４から出力され、携帯ゲーム装置１０から通信ケーブル７０ａを介してゲーム装置４０に送信されるＸ軸方向出力値およびＺ軸方向出力値が、前述の図７における加速度センサ出力値記憶領域４０５ａに記憶される。
【００５１】
Ｓ１０１の後、Ｓ１０２において、プレイヤオブジェクト配置処理がおこわれる。具体的には，操作スイッチ入力検出処理（Ｓ１００）において検出された操作スイッチの操作情報に基づいて、プレイヤオブジェクトを移動する処理がされ、プレイヤオブジェクトの移動後のゲーム空間中の位置が決定され、前述の図７のプレイヤオブジェクト位置データ記憶領域４０５ｂに記憶される。
【００５２】
Ｓ１０２の後、Ｓ１０３において、ノンプレイヤオブジェクト配置処理がおこなわれる。具体的には、ゲームプログラムに含まれるノンプレイヤオブジェクト移動プログラムに基づいて、ノンプレイヤオブジェクトの移動処理がおこなわれ、ノンプレイヤオブジェクトの移動後のゲーム空間中の位置が決定され、前述の図７のノンプレイヤオブジェクト位置データ記憶領域４０５ｃに記憶される。
【００５３】
Ｓ１０３の後、Ｓ１０４において、視点座標決定処理がおこなわれる。この処理については、図１６を参照して後述する。Ｓ１０４の後、Ｓ１０７において、その他のゲーム処理がおこなわれる。具体的には、プレイヤオブジェクトとノンプレイヤオブジェクトの戦闘処理等が行われる。
【００５４】
Ｓ１０７の後、Ｓ１０８において、表示処理がおこなわれる。具体的には、前述の図７のプレイヤオブジェクト位置データ記憶領域４０５ｂおよびノンプレイヤオブジェクト位置データ記憶領域４０５ｃのデータや、Ｓ１０４で決定された視点座標、さらには、Ｓ１０６で処理された結果等に基づいて、ゲーム画像がカラーバッファ４０３に書き込まれる。この処理はＣＰＵ４０１およびＧＰＵ４０２が協同して処理をすることによりおこなわれる。
【００５５】
図１６は、前述の図１５のＳ１０４における視点座標決定処理の詳細を示すフローチャートである。まず、Ｓ１０４１において、視点基本座標Ｃ０を決定する処理をおこなう。すなわち、注視点１０７を基準として、軸１１１の方向に所定距離（Ｄ１）だけ離れた位置を視点基本座標Ｃ０とする。
【００５６】
Ｓ１０４１の後、Ｓ１０４２において、加速度センサのＸ軸方向出力値ＯｕｔＸからＸ軸方向基本ポジションＳＸを減算し、基本ポジションに対する、携帯ゲーム装置１０のＸ軸方向の傾き角度を算出する。
【００５７】
Ｓ１０４２の後、Ｓ１０４３において、Ｓ１０４２で算出されたＸ軸方向の傾き角度に基づいて、視点基本座標Ｃ０を、軸１１０を中心として回転移動する処理がされる（回転移動後の座標をＣ１とする）。具体的には、Ｓ１０４２で算出された傾きの方向とは逆方向に、Ｓ１０４２で算出された傾きの角度と同じ角度だけ、回転移動させる。
【００５８】
Ｓ１０４３の後、Ｓ１０４４において、加速度センサのＺ軸方向出力値ＯｕｔＺからＺ軸方向基本ポジションＳＺを減算し、基本ポジションに対する、携帯ゲーム装置１０のＺ軸方向の傾き角度を算出する。
【００５９】
Ｓ１０４４の後、Ｓ１０４５において、Ｓ１０４４で算出されたＺ軸方向の傾き角度に基づいて、Ｓ１０４３で算出されたＣ１を、軸１０８を中心として回転移動する処理がされる（回転移動後の座標をＣ２とする）。具体的には、Ｓ１０４４で算出された傾きの方向とは逆方向に、Ｓ１０４４で算出された傾きの角度と同じ角度だけ、回転移動させる。
【００６０】
Ｓ１０４５の後、Ｓ１０４６において、Ｓ１０４５で算出されたＣ２を視点座標として決定する処理がされる。具体的には、前述の図１６の視点データ記憶領域４０５ｄに視点座標を記憶する処理がされる。Ｓ１０４６の後、視点座標決定処理を終了する。
【００６１】
なお、上述の実施例において、視点の回転移動の中心とな軸（請求項２または請求項９に記載の発明における「所定軸」）の決定方法は以下のように、様々なバリエーションが考えられる。
（１）傾きセンサがハウジングの左右方向の傾きを検出したときには、プレイヤオブジェクトのローカル座標系のＺ軸を所定軸とし、この軸を中心として視点を回転移動させる。また、傾きセンサがハウジングの前後方向の傾きを検出したときは、プレイヤオブジェクトのローカル座標系のＸ軸を中心として回転移動させる。
（２）前述の実施例では、視点座標系のＺ軸（軸１２０）をワールド座標系のＸＺ平面に投影した軸（軸１１０）を所定軸としたが、この代わりに、視点座標系のＺ軸そのものを所定軸とする。
（３）前述の実施例では、視点座標系のＺ軸（軸１２０）をワールド座標系のＸＺ平面に投影した軸（軸１１０）を所定軸としたが、この代わりに、視点座標系のＺ軸をオブジェクト（例えばプレイヤオブジェクト）のローカル座標系のＸＺ平面に投影した軸を所定軸とする。また、視点座標系のＺ軸を地形オブジェクト（プレイヤオブジェクトが位置する地面オブジェクト）に投影した軸を所定軸とする。
【００６２】
図１７は、本発明の変形例を示す図である。この変形例では、前述の実施例と比べて、プレイヤによって操作される操作装置が、ゲームシステム１４ではなく、コントローラ９０となっている。コントローラ９０は、ハウジング９１，操作スイッチ９２ａ〜ｄを備える。また、ハウジングの内部に加速度センサ９３を含んでおり、プレイヤがコントローラ９０を把持して傾けることによって、傾きに応じた値をゲーム装置４０に出力する。変形例の処理の内容については、上述の実施例と同様であるので説明を省略する。
【図面の簡単な説明】
【図１】本発明の実施例のゲームシステム３０の外観図である。
【図２】ゲームシステム１４の外観図である。
【図３】ゲームシステム３０のブロック図である。
【図４】ゲームシステム１４のブロック図である。
【図５】携帯ゲーム装置１０のＸ軸，Ｙ軸，Ｚ軸を定義する図である。
【図６】ＤＶＤ−ＲＯＭ５０に記憶されるデータを示す図である。
【図７】メインメモリ４０５に記憶されるデータを示す図である。
【図８】プレイヤオブジェクト１０３を中心とする一定範囲の仮想ゲーム空間を示した図である。
【図９】携帯ゲーム装置１０を基本ポジションで把持した場合の視点座標の位置を説明するための図である。
【図１０】携帯ゲーム装置１０を基本ポジションからＺ軸方向のプラス方向にα１°傾けた場合の視点座標の回転移動を説明するための図である。
【図１１】携帯ゲーム装置１０を基本ポジションからＺ軸方向のマイナス方向にα２°傾けた場合の視点座標の回転移動を説明するための図である。
【図１２】携帯ゲーム装置１０を基本ポジションからＸ軸方向のプラス方向にβ１°傾けた場合の視点座標の回転移動を説明するための図である。
【図１３】携帯ゲーム装置１０を基本ポジションからＸ軸方向のマイナス方向にβ２°傾けた場合の視点座標の回転移動を説明するための図である。
【図１４】メインフローを示すフローチャートである。
【図１５】ゲーム処理のフローを示す図である。
【図１６】視点座標決定処理の詳細を示すフローチャートである。
【図１７】本発明の変形例を示す図である。
【符号の説明】
１０…携帯ゲーム装置
１４…ゲームシステム
１５…カートリッジ
１５４…加速度センサ
３０…ゲームシステム
４０…ゲーム装置
５０…ＤＶＤ−ＲＯＭ
１０３…プレイヤオブジェクト
１０５…視点基本座標
１０６…視点座標
【図１】
0003902508.tif 000002
【図２】
0003902508.tif 000003
【図３】
0003902508.tif 000004
【図４】
0003902508.tif 000005
【図５】
0003902508.tif 000006
【図６】
0003902508.tif 000007
【図７】
0003902508.tif 000008
【図８】
0003902508.tif 000009
【図９】
0003902508.tif 000010
【図１０】
0003902508.tif 000011
【図１１】
0003902508.tif 000012
【図１２】
0003902508.tif 000013
【図１３】
0003902508.tif 000014
【図１４】
0003902508.tif 000015
【図１５】
0003902508.tif 000016
【図１６】
0003902508.tif 000017
【図１７】
0003902508.tif 000018