(57)【要約】【課題】  この発明は、操作対象の動作指令装置に関し、単一の操作入力を２つの操作指示に反映させ、かつ、それら２つの操作指示を同時に発生させることを目的とする。【解決手段】  コントローラ１４のスティック１８に対する操作量sを検知する。機能ボタン２２の操作量を０≦b≦１を満たすアナログ値bとして検出する。スティック１８が所定方向にsだけ操作された際に、機能ボタン２２がbだけ押されていたら、その操作の方向に、操作量（１−b）・sで移動が要求され、かつ、操作量b・sで回転が要求されたと判断する。この際、操作対象には、操作量（１−b）・sに対応する移動と、操作量b・sに対応する回転とをブレンドした動作を与える。【選択図】      図１
2005211260.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによる入力操作に対応する動作を操作対象に与えるための動作指令装置であって、
操作入力Aを検知する操作入力A検知手段と、
最小値と最大値の他にそれらの中間値を取り得る操作入力Bを検知する操作入力B検知手段と、
前記操作入力Aの発生時に、前記操作入力Bに対応する比率で第１動作指令値と第２動作指令値とを生成する動作指令値生成手段と、
前記第１動作指令値を前記操作対象の第１動作に反映させる第１反映手段と、
前記第２動作指令値を前記操作対象の第２動作に反映させる第２反映手段と、
を備えることを特徴とする操作対象の動作指令装置。
【請求項２】
前記操作入力Aは、動作の方向に関する情報を含み、
前記第１動作指令値および前記第２動作指令値は、それぞれ前記操作入力Aに含まれる動作方向の情報に対応する方向の情報を含んでおり、
前記第１反映手段は、前記第１動作指令値に含まれる情報の方向に前記第１動作を生じさせ、
前記第２反映手段は、前記第２動作指令値に含まれる情報の方向に前記第２動作を生じさせることを特徴とする請求項１記載の操作対象の動作指令装置。
【請求項３】
前記第１動作は、前記操作対象の位置を変化させる動作であり、
前記第２動作は、前記操作対象の姿勢または向きを変化させる動作であることを特徴とする請求項２記載の操作対象の動作指令装置。
【請求項４】
前記操作入力Aは、操作量に関する情報を含み、
前記第１動作指令値および前記第２動作指令値は、それぞれ前記操作入力Aに含まれる情報の操作量に対応するスカラー情報を含んでおり、
前記第１反映手段は、前記第１動作指令値に含まれるスカラー情報に応じた速度で前記第１動作を生じさせ、
前記第２反映手段は、前記第２動作指令値に含まれるスカラー情報に応じた速度で前記第２動作を生じさせることを特徴とする請求項１乃至３の何れか１項記載の操作対象の動作指令装置。
【請求項５】
前記操作対象は、３次元グラフィック画像を生成する際の視点となる仮想カメラ、或いは、３次元グラフィック画像中に表示されるオブジェクトであることを特徴とする請求項１乃至４の何れか１項記載の操作対象の動作指令装置。
【請求項６】
コンピュータを、ユーザによる入力操作に対応する動作を操作対象に与えるための動作指令装置として機能させるためのプログラムであって、コンピュータを、
操作入力Aを検知する操作入力A検知手段、
最小値と最大値の他にそれらの中間値を取り得る操作入力Bを検知する操作入力B検知手段、
前記操作入力Aの発生時に、前記操作入力Bに対応する比率で第１動作指令値と第２動作指令値とを生成する動作指令値生成手段、
前記第１動作指令値を前記操作対象の第１動作に反映させる第１反映手段、および
前記第２動作指令値を前記操作対象の第２動作に反映させる第２反映手段、
として機能させるためのプログラムを含むことを特徴とする操作対象の動作指令用プログラム。
【請求項７】
前記操作入力Aは、動作の方向に関する情報を含み、
前記第１動作指令値および前記第２動作指令値は、それぞれ前記操作入力Aに含まれる動作方向の情報に対応する方向の情報を含んでおり、
前記第１反映手段は、前記第１動作指令値に含まれる情報の方向に前記第１動作を生じさせ、
前記第２反映手段は、前記第２動作指令値に含まれる情報の方向に前記第２動作を生じさせることを特徴とする請求項６記載の操作対象の動作指令用プログラム。
【請求項８】
前記第１動作は、前記操作対象の位置を変化させる動作であり、
前記第２動作は、前記操作対象の姿勢または向きを変化させる動作であることを特徴とする請求項７記載の操作対象の動作指令用プログラム。
【請求項９】
前記操作入力Aは、操作量に関する情報を含み、
前記第１動作指令値および前記第２動作指令値は、それぞれ前記操作入力Aに含まれる情報の操作量に対応するスカラー情報を含んでおり、
前記第１反映手段は、前記第１動作指令値に含まれるスカラー情報に応じた速度で前記第１動作を生じさせ、
前記第２反映手段は、前記第２動作指令値に含まれるスカラー情報に応じた速度で前記第２動作を生じさせることを特徴とする請求項６乃至８の何れか１項記載の操作対象の動作指令用プログラム。
【請求項１０】
前記操作対象は、３次元グラフィック画像を生成する際の視点となる仮想カメラ、或いは、３次元グラフィック画像中に表示されるオブジェクトであることを特徴とする請求項６乃至９の何れか１項記載の操作対象の動作指令用プログラム。
【請求項１１】
請求項６乃至１０の何れか１項記載の動作指令用プログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、操作対象の動作指令装置、操作対象の動作指令用プログラム、およびそのプログラムを記録した記録媒体に係り、特に、操作対象に異なる２つの動作を同時に指示するための装置等として好適な、動作指令装置、動作指令用プログラム、およびそのプログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
従来より、ゲームに登場するキャラクタの位置やそのキャラクタによる攻撃方向など、２つの方向をユーザが操作するタイプのビデオゲーム装置が開示されている。キャラクタの位置や攻撃の方向は、例えば、ゲームコントローラに設けられているスティックや十字状の方向キー（以下、これらを「スティック等」とする）を操作することにより、それぞれ指示することが可能である。しかしながら、２つの方向を操作するにあたって２組のスティック等を用いることとすると、コントローラの主要な入力インターフェースがそれらの操作により消費されるという不都合や、キャラクタの操作が煩雑で複雑なものとなるといった不都合が生ずる。
【０００３】
このような不都合を回避する手法は、例えば特許第３４５７３０５号公報に開示されている。すなわち、この公報に開示されるゲーム装置によれば、スティック等によりなされる方向指示は、攻撃ボタンが押されているか否かに応じて、キャラクタの位置に対する指示および攻撃方向に対する指示の何れか一方として認識される。換言すると、この従来のゲーム装置においては、キャラクタの位置と攻撃方向とを指示するためのインターフェースとして、スティック等が１組だけ割り当てられており、攻撃ボタンが押されているか否かに応じて、そのスティック等による入力が、選択的に、キャラクタの位置に対する入力、或いは攻撃方向に対する入力として取り扱われる。
【０００４】
このような手法によれば、単一のスティック等の操作によって、異なる２種類の動作を指示することができる。このため、上記従来のゲーム装置によれば、主要なインターフェースの消費に関する不都合、および複雑で煩雑な操作入力に関する不都合を何れも解消することができる。
【０００５】
【特許文献１】特許第３４５７３０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来のゲーム装置で用いられる手法では、２つの動作の指示を同時に発生させることができない。つまり、この装置では、スティック等による入力が、攻撃ボタンが押されているか否かに応じて、２つの動作の一つに対する指示として取り扱われるため、それら２つの動作を同時に発生させることはできない。この点、上記従来の装置は、ユーザに対して操作の制約を課するものであった。
【０００７】
この発明は、上述のような課題を解決するためになされたもので、単一の操作入力を２つの操作指示に反映させることができ、かつ、それら２つの操作指示を同時に発生させることのできる操作対象の動作指令装置を提供することを第１の目的とする。
また、上記の機能をコンピュータ上で実現するための操作対象の動作指令用プログラムを提供することを第２の目的とする。
更に、その動作指令用プログラムを記録した記録媒体を提供することを第３の目的とする。
【課題を解決するための手段】
【０００８】
第１の発明は、上記の目的を達成するため、ユーザによる入力操作に対応する動作を操作対象に与えるための動作指令装置であって、
操作入力Aを検知する操作入力A検知手段と、
最小値と最大値の他にそれらの中間値を取り得る操作入力Bを検知する操作入力B検知手段と、
前記操作入力Aの発生時に、前記操作入力Bに対応する比率で第１動作指令値と第２動作指令値とを生成する動作指令値生成手段と、
前記第１動作指令値を前記操作対象の第１動作に反映させる第１反映手段と、
前記第２動作指令値を前記操作対象の第２動作に反映させる第２反映手段と、
を備えることを特徴とする。
【０００９】
また、第２の発明は、第１の発明において、
前記操作入力Aは、動作の方向に関する情報を含み、
前記第１動作指令値および前記第２動作指令値は、それぞれ前記操作入力Aに含まれる動作方向の情報に対応する方向の情報を含んでおり、
前記第１反映手段は、前記第１動作指令値に含まれる情報の方向に前記第１動作を生じさせ、
前記第２反映手段は、前記第２動作指令値に含まれる情報の方向に前記第２動作を生じさせることを特徴とする。
【００１０】
また、第３の発明は、第２の発明において、
前記第１動作は、前記操作対象の位置を変化させる動作であり、
前記第２動作は、前記操作対象の姿勢または向きを変化させる動作であることを特徴とする。
【００１１】
また、第４の発明は、第１乃至第３の発明の何れかにおいて、
前記操作入力Aは、操作量に関する情報を含み、
前記第１動作指令値および前記第２動作指令値は、それぞれ前記操作入力Aに含まれる情報の操作量に対応するスカラー情報を含んでおり、
前記第１反映手段は、前記第１動作指令値に含まれるスカラー情報に応じた速度で前記第１動作を生じさせ、
前記第２反映手段は、前記第２動作指令値に含まれるスカラー情報に応じた速度で前記第２動作を生じさせることを特徴とする。
【００１２】
また、第５の発明は、第１乃至第４の発明の何れかにおいて、
前記操作対象は、３次元グラフィック画像を生成する際の視点となる仮想カメラ、或いは、３次元グラフィック画像中に表示されるオブジェクトであることを特徴とする。
【００１３】
また、第６の発明は、コンピュータを、ユーザによる入力操作に対応する動作を操作対象に与えるための動作指令装置として機能させるためのプログラムであって、コンピュータを、
操作入力Aを検知する操作入力A検知手段、
最小値と最大値の他にそれらの中間値を取り得る操作入力Bを検知する操作入力B検知手段、
前記操作入力Aの発生時に、前記操作入力Bに対応する比率で第１動作指令値と第２動作指令値とを生成する動作指令値生成手段、
前記第１動作指令値を前記操作対象の第１動作に反映させる第１反映手段、および
前記第２動作指令値を前記操作対象の第２動作に反映させる第２反映手段、
として機能させるためのプログラムを含むことを特徴とする。
【００１４】
また、第７の発明は、第６の発明において、
前記操作入力Aは、動作の方向に関する情報を含み、
前記第１動作指令値および前記第２動作指令値は、それぞれ前記操作入力Aに含まれる動作方向の情報に対応する方向の情報を含んでおり、
前記第１反映手段は、前記第１動作指令値に含まれる情報の方向に前記第１動作を生じさせ、
前記第２反映手段は、前記第２動作指令値に含まれる情報の方向に前記第２動作を生じさせることを特徴とする。
【００１５】
また、第８の発明は、第７の発明において、
前記第１動作は、前記操作対象の位置を変化させる動作であり、
前記第２動作は、前記操作対象の姿勢または向きを変化させる動作であることを特徴とする。
【００１６】
また、第９の発明は、第６乃至第８の発明の何れかにおいて、前記操作入力Aは、操作量に関する情報を含み、
前記第１動作指令値および前記第２動作指令値は、それぞれ前記操作入力Aに含まれる情報の操作量に対応するスカラー情報を含んでおり、
前記第１反映手段は、前記第１動作指令値に含まれるスカラー情報に応じた速度で前記第１動作を生じさせ、
前記第２反映手段は、前記第２動作指令値に含まれるスカラー情報に応じた速度で前記第２動作を生じさせることを特徴とする。
【００１７】
また、第１０の発明は、第６乃至第９の発明の何れかにおいて、
前記操作対象は、３次元グラフィック画像を生成する際の視点となる仮想カメラ、或いは、３次元グラフィック画像中に表示されるオブジェクトであることを特徴とする。
【００１８】
また、第１１の発明は、コンピュータ読み取り可能な記録媒体であって、第６乃至第１０の発明の何れかに係る動作指令用プログラムを記録したことを特徴とする。
【発明の効果】
【００１９】
第１の発明によれば、操作入力Aが検知された場合に、操作入力Bに対応する比率で第１動作指令値と第２動作指令値とを生成することができる。操作入力Bは、最大値と最小値の他に中間値を取ることができ、少なくともその中間値によれば、第１動作指令値と第２動作指令値とを同時に発生させることができる。このように、本発明によれば、操作入力Aを２つの操作指令値に反映させることができ、かつ、それら２つの操作指令値を同時に発生させることができる。
【００２０】
第２の発明によれば、操作入力Aにより動作の方向を指示することができる。そして、その入力により、それぞれ動作方向の情報を含む第１動作指令値と第２動作指令値とを生成することができる。このため、本発明によれば、操作入力Aにより、第１動作の方向および第２動作の方向、つまり、２つの動作方向を指令することが可能である。
【００２１】
第３の発明によれば、操作入力Aにより、操作対象の位置と、その操作対象の姿勢または向きとを変化させることができる。
【００２２】
第４の発明によれば、操作入力Aに、操作量に関する情報を持たせることができる。そして、この発明によれば、その操作量を、第１動作の速度、および第２動作の速度に反映させることができる。このように、本発明によれば、操作入力Aを与えることにより、２つの動作の速度をも指令することができる。
【００２３】
第５の発明によれば、操作入力Aにより、３次元グラフィック画像を生成する際の視点となる仮想カメラ、或いは、３次元グラフィック画像中に表示されるオブジェクトに対して、２つの動作を指令することができる。
【００２４】
第６の発明によれば、操作入力Aを２つの操作指令値に反映させることができ、かつ、それら２つの操作指令値を同時に発生させる機能を、コンピュータのハードウェア資源を利用して実現することができる。
【００２５】
第７の発明によれば、操作入力Aにより、第１動作の方向および第２動作の方向、つまり、２つの動作方向を指令する機能を、コンピュータのハードウェア資源を利用して実現することができる。
【００２６】
第８の発明によれば、操作入力Aにより、操作対象の位置と、その操作対象の姿勢または向きとを変化させる機能を、コンピュータのハードウェア資源を利用して実現することができる。
【００２７】
第９の発明によれば、操作入力Aを与えることにより、２つの動作の速度をも指令する機能を、コンピュータのハードウェア資源を利用して実現することができる。
【００２８】
第１０の発明によれば、操作入力Aにより、３次元グラフィック画像を生成する際の視点となる仮想カメラ、或いは、３次元グラフィック画像中に表示されるオブジェクトに対して、２つの動作を指令する機能を、コンピュータのハードウェア資源を利用して実現することができる。
【００２９】
第１１の発明によれば、第６乃至第１０の発明に係るプログラムを記録した記録媒体を提供することができる。
【発明を実施するための最良の形態】
【００３０】
実施の形態１．
［ゲーム装置の構成］
以下、図面を参照して、本発明の実施の形態１のゲーム装置について説明する。図１は、本実施形態のゲーム装置の構成を表す概念図である。本実施形態のゲーム装置は、ゲーム装置本体１０を有している。ゲーム装置本体１０には、信号ケーブルを介してテレビ受像器１２が接続されている。テレビ受像器１２には、画像を表示するための表示部と、音声を出力するためのスピーカとが内蔵されている。
【００３１】
ゲーム装置本体１０には、また、信号ケーブルを介してコントローラ１４が接続された状態を示す。コントローラ１４には、上下左右の４方向のそれぞれに対応する４つのボタンを含む方向キー１６、任意の径方向に傾斜させることができる２つのスティック１８，２０、およびそれぞれ独立に操作することのできる４つの機能ボタン２２〜２８などが備わっている。方向キー１６やスティック１８，２０によれば、操作対象に求める動作方向に関する指令値を生成することができる。また、機能ボタン２２〜２８によれば、それぞれ独立した指令値を生成することができる。
【００３２】
コントローラ１４には、更に、アナログ切り替えボタン３０が設けられている。アナログ切り替えボタン３０によれば、コントローラ１４の出力を、ディジタル出力とアナログ出力の間で切り替えることができる。ディジタル出力が選択されている場合は、方向キー１６、スティック１８，２０、および機能ボタン２２〜２８のそれぞれにつき、それらが操作されているか否かに応じた２値信号が発せられる。一方、アナログ出力が選択されている場合は、方向キー１６、スティック１８，２０、および機能ボタン２２〜２８のそれぞれにつき、それらの操作量に対応したアナログ出力が発せられる。
【００３３】
尚、本実施形態における「アナログ出力」とは、厳密には、複数段階（例えば２５６段階）の値を取りうるディジタル出力である。ここでは、便宜上、２値の何れかしか表すことのできない出力を「ディジタル出力」と称し、一方、３以上の多段階の値を表し得る出力を「アナログ出力」と称することとする。
【００３４】
図２は、ゲーム装置本体１０の内部構造を表すブロック図である。尚、図２において、ゲーム装置本体１０に接続されるテレビ受像器１２（ディスプレイおよびスピーカ）、およびコントローラ１４は、何れも破線のブロックで示すこととする。
【００３５】
図２に示すように、ゲーム装置本体１０は、CPU４０を備えている。CPU４０には、バスライン４２を介してROM４４およびRAM４６が接続されている。ROM４４には、ゲーム装置の初期化などの処理に必要なデータが格納されている。また、RAM４６には、CPU４０が情報処理を進めるに当たって必要なデータ等が格納される。
【００３６】
バスライン４２には、画像処理部４８が接続されている。画像処理部４８は、ゲームの進行に伴ってディスプレイ上に表示すべき画像を生成するためのブロックである。画像処理部４８により生成された画像は、バスライン４２を介してビデオRAM（VRAM）５０に供給される。VRAM５０には、ディスプレイに表示する一画面分のデータを格納するに足る容量が確保されている。VRAM５０に格納されたデータは、画像制御部５２によって画像データに変換された後、テレビ受像器１２のディスプレイに供給される。
【００３７】
バスライン４２には、また、音声合成部５４が接続されている。音声合成部５４は、ゲームの進行に合わせて、発生すべき音声を合成するブロックである。音声合成部５４によって合成された音声データは、テレビ受像器１２に供給され、スピーカにより外部に出力される。
【００３８】
ゲーム装置本体１０は、また、バスライン４２に接続された入出力制御部５６を備えている。入出力制御部５６には、CD-ROMやDVD-ROM等のコンピュータ読み取り可能な記録媒体５８が装着される。記録媒体５８には、ゲームの進行に必要なプログラムやデータが記憶されている。ゲーム装置本体１０は、それらのプログラムやデータがバスライン４２を介してロードされることにより、ゲームを進行させ得る状態となる。
【００３９】
ゲーム装置本体１０は、更に、バスライン４２に接続された入力制御部６０を備えている。入力制御部６０には、上述したコントローラ１４が接続されている。ゲーム装置本体１０は、入力制御部６０を介してコントローラ１４の出力を読み取ることで、ユーザによる指令を検知することができる。
【００４０】
［ゲーム装置の基本動作］
次に、本実施形態におけるゲーム装置において実現される基本動作を説明する。本実施形態では、ゲーム装置において、仮想空間内の仮想視点から見た３次元グラフィック画像がディスプレイ上に表示されるタイプのビデオゲームが実行されるものとする。そして、ここでは、その仮想視点に置かれた仮想カメラの位置および姿勢が、ユーザにより操作可能であるものとする。
【００４１】
図３は、本実施形態におけるゲームにおいて、ユーザの操作対象となる仮想カメラ７０の動作を説明するためのイメージ図である。尚、図３（Ａ）および図３（Ｂ）に示す座標系は、カメラ座標、つまり、仮想カメラ７０に固定された座標系である。この座標系は、いわゆる右手系の３次元座標であり、水平右向きがＸ軸＋方向、垂直上向きがＹ軸＋方向、手前方向（図示略）がＺ軸＋方向である。
【００４２】
本実施形態において、仮想カメラは、図３（Ａ）に示すように、カメラ座標におけるＸＹ平面内でその位置を変えることができ、また、図３（Ｂ）に示すように、カメラ座標においてＸ軸回りおよびＹ軸回りに回転することができる。つまり、ゲーム装置のユーザは、ＸＹ平面内で仮想カメラ７０を平行移動させることができ、かつ、Ｘ軸およびＹ軸回りに仮想カメラ７０を回転させることができる。
【００４３】
図３（Ａ）に示すような仮想カメラ７０の平行移動は、例えば、方向キー１６またはスティック１８，２０の何れかを用いることで指令することができる。そして、コントローラ１４をアナログモードとすれば、スティック等の操作方向と操作量sにより、平行移動の方向と速度を同時に指令することが可能である。以下、本実施形態では、アナログモードが用いられるものとして説明を進める。そして、ここでは、スティック等の操作方向および操作量sに対して、仮想カメラ７０は、以下のような移動動作を示すものとする。尚、以下の対応表において、「T(s)」は、操作量sに対応して発生させるべき移動速度である。
【００４４】
（仮想カメラの平行移動）
スティック等の操作方向／仮想カメラの平行移動方向；速度
右          ／      右（Ｘ＋方向）；T(s)
左          ／      左（Ｘ−方向）；T(s)
上          ／      上（Ｙ＋方向）；T(s)
下          ／      下（Ｙ−方向）；T(s)
【００４５】
同様に、図３（Ｂ）に示すような回転の移動も、方向キー１６またはスティック１８，２０の何れかを用いることで指令することができる。そして、この場合も、コントローラ１４がアナログモードであれば、スティック等の操作方向と操作量sにより、回転の方向と速度を同時に指令することが可能である。そして、本実施形態では、スティック等の操作方向および操作量sに対して、仮想カメラ７０は、以下のような回転動作を示すものとする。尚、以下の対応表において、「R(s)」は、操作量sに対応して発生させるべき回転速度である。
【００４６】
（仮想カメラの回転移動）
スティック等の操作方向／仮想カメラの回転方向；速度
右          ／左（Ｙ軸回り＋方向）；R(s)
左          ／右（Ｙ軸回り−方向）；R(s)
上          ／下（Ｘ軸回り−方向）；R(s)
下          ／上（Ｘ軸回り＋方向）；R(s)
【００４７】
仮想カメラ７０は、例えば、平行移動を要求する操作のみが行われた場合は、その姿勢を変化させることなく、上記の規則に従ってＸＹ平面上を操作方向に対応する方向に、操作量sに対応する速度T(s)で平行に移動する。また、回転動作を要求する操作のみが行われた場合は、仮想カメラ７０は、その位置を変えることなく、操作方向に対応する方向に、操作量sに対応する速度R(s)で回転する。そして、平行移動を要求する操作と、回転を要求する操作とが同時に行われると、仮想カメラ７０は、移動と回転とを組み合わせた動作を示す。
【００４８】
図４は、移動と回転とが組み合わされることで生ずる動作の一例を示す。より具体的には、平行移動を要求するスティック等と、回転を要求するスティック等が、共に右方向に操作量sだけ操作された場合に仮想カメラ７０に生ずる動作の例を示したものである。この場合、仮想カメラ７０は、左方向に回転しながら右方向へ移動しようとする。本実施形態において、仮想カメラ７０の位置および姿勢（角度）は、仮想カメラ７０に固定されたカメラ座標上で行われるから、左回転と右への移動が組み合わされると、仮想カメラ７０は、図４に示すように被写体からの距離を保って被写体の右側へ回り込むような動作を示す。
【００４９】
このように、仮想カメラ７０に対して２つの動作（移動と回転）を同時に要求することができると、それらが単独で要求される場合に比して複雑な動きを生じさせることができる。そして、本実施形態においてそのような動作が実現できると、仮想カメラ７０の平行移動や回転がそれぞれ単独で生ずる場合に比して、表示される３次元グラフィック画面にダイナミックな変化を与えることが可能となる。
【００５０】
仮想カメラ７０の平行移動と回転動作は、具体的には、ゲーム装置本体１０の内部で、次式に示すような座標変換を行うことで実現することができる。
Pc＝M・Pw                      ・・・（１）
但し、上記（１）式において、Pwは、いわゆるワールド座標系における任意の点Pの座標値であり、また、Pcはカメラ座標系でのその点Pの座標値である。そして、Mは、PwをPcに変換するためのマトリクスである。
【００５１】
仮想カメラ７０が移動・回転すると、マトリクスMも変化する。この変化は、あるフレームにおけるマトリクスをM0、その次のフレームのマトリクスをM1とすると、次式のように表すことができる。
M1＝Mr・Mt・M0                  ・・・（２）
【００５２】
但し、Mtは、仮想カメラ７０の平行移動に対応する座標変換を実現するための移動対応マトリクスである。また、Mrは、仮想カメラ７０の回転に対応する座標変換を実現するための回転対応マトリクスである。スティック等が右方向に操作量sだけ操作されている場合を例に取ると、移動対応マトリクスMtおよび回転対応マトリクスMrは、それぞれ以下のように表される。
【００５３】
【数１】
2005211260.tif 000003
【００５４】
但し、上記（３）式におけるt、および上記（４）式におけるθは、それぞれ、仮想カメラ７０の平行移動の早さ、および回転の早さを決める定数である。
【００５５】
尚、本実施形態では、あるフレームにおけるマトリクスM0と、次のフレームのマトリクスM1とが、上記（２）式の関係を満たすものとして最新の座標変化マトリクスMを更新することとしているが、その更新の手法はこれに限定されるものではない。具体的には、マトリクスMの更新は、上記（２）式の関係に代えて、M1＝Mt・Mr・M0の関係が成立することを前提として行うこととしてもよい。
【００５６】
仮想カメラ７０の平行移動に対応する座標変換は、その移動の方向が左、上或いは下であっても、上記（３）式に示すマトリクスと同様に、所定のマトリクス値を「st」の関数で置き換えた移動対応マトリクスにより実行することができる。同様に、仮想カメラ７０の回転に対応する座標変換は、その回転の方向が右、上或いは下であっても、上記（４）式に示すマトリクスと同様に、所定のマトリクス値を「sθ」の関数で置き換えた回転対応マトリクスにより実行することができる。
【００５７】
そして、回転と移動の組み合わされた動作に対応する座標変換は、上記（２）式に示すように、要求される回転に対応するマトリクスMrと、要求される移動に対応するマトリクスMtとの積Mr・Mtを用いることで実現することができる。本実施形態のゲーム装置本体１０は、グラフィック画像のフレームを作成する毎に画像処理部４８においてこのような座標変換を行うことにより、ワールド座標系での座標値をカメラ座標系での座標値に変換している。
【００５８】
［ゲーム装置の特徴］
以上説明した通り、ユーザは、コントローラ１４に対して平行移動を要求する操作を施すことで仮想カメラ７０の位置を仮想的に移動させることができ、また、コントローラ１４に対して回転を要求する操作を施すことにより、仮想カメラ１４の姿勢を仮想的に回転させることができる。そして、本実施形態のゲーム装置によれば、回転の指令と移動の指令を同時に発生させれることで、それら２つの動きを組み合わせて仮想カメラ７０に生じさせることができる。
【００５９】
ところで、回転の指令と移動の指令とを同時に発生させる手法としては、回転の指令を与えるためのスティック等と、移動の指令を与えるためのスティック等を別個独立に準備することが考えられる。しかしながら、このような手法によれば、従来技術の欄に記載したような不都合が生ずる。そこで、本実施形態では、機能ボタン２２〜２８の一つを比率指定用のボタンとして用い、そのボタンの操作量b（０≦b≦１の範囲で変動し得るアナログ値）に対応する比率で、単一のスティック等により生成される指令値を、回転を要求する指令と、移動を要求する指令とに分配することとした。
【００６０】
以下、説明の便宜上、回転および移動の指令を生成するために用いられるスティック等がスティック１８であるものとし、また、比率指定用のボタンが機能ボタン２２であるものとする。以下、この前提の下で、本実施形態のゲーム装置本体１０が回転指令と移動指令を発生する手法を、より具体的に説明する。
【００６１】
すなわち、本実施形態におけるゲーム装置本体１０は、例えば、スティック１８が右方向に操作量sだけ操作されている場合、仮想カメラ７０に対して右方向の移動、若しくは左回転、或いはそれらの両方が要求されていると判断する。そして、機能ボタン２２の操作量bに基づいて、操作量sを、移動を要求する操作量（１−b）・sと、回転を要求する操作量b・sとに分配する。
【００６２】
つまり、この場合（スティック１８が右方向にsだけ操作されている場合）、ゲーム装置本体１０は、上記（３）式における「st」を「（１−b）・st」に置き換えたマトリクスを移動対応マトリクスMtとし、また、上記（４）式における「sθ」を「b・sθ」に置き換えたマトリクスを回転対応マトリクスMrとして座標値Pcの座標変換を行う。これらのマトリクスは、具体的には以下のように表すことができる。
【００６３】
【数２】
2005211260.tif 000004
【００６４】
以上説明した手法によれば、例えば、機能ボタン２２が押されていない場合、つまり、操作量bが最小値「０」である場合は、移動を要求する操作量が「s」とされ、回転を要求する操作量が「０」とされる。この場合、仮想カメラ７０には、スティック１８の操作方向への平行移動のみが指令される。これに対して、機能ボタン２２が一杯に押されていた場合、つまり、操作量bが最大値「１」を示す場合は、移動を要求する操作量が「０」とされ、回転を要求する操作量が「s」とされる。この場合、仮想カメラ７０には、スティック１８で指定された方向への回転のみが指令される。そして、操作量bが０と１の中間値をとる場合は、そのbの比率で回転と移動が組み合わされたブレンド動作が指令される。
【００６５】
［ゲーム装置本体で行われる具体的処理］
図５は、上記の機能を実現するためにゲーム装置本体１０において実行されるルーチンのフローチャートである。尚、このルーチンは、１インター毎に表示画像のフレーム作成を開始すべきタイミングにおいて繰り返し起動されるルーチンである。
【００６６】
図５に示すルーチンでは、先ず、スティック１８による操作入力sと、機能ボタン２２による操作入力bとが読み取られる（ステップ１００）。次に、スティック１８による操作入力sより、X方向への操作成分sxと、Y方向への操作成分syとが認識される（ステップ１０２）。
【００６７】
次いで、X方向への操作成分sxおよびY方向への操作成分sy、並びに機能ボタン２２の操作量bに基づいて、X方向およびY方向のそれぞれにつき、移動の要求量に相当するスカラー量（１−b）・sx・tまたは（１−b）・sy・t、および、回転の要求量に相当するスカラー量b・sx・θまたはb・sy・θが算出される（ステップ１０４）。
【００６８】
ゲーム装置本体１０は、上記（５）式および（６）式に示したような移動対応マトリクスMtおよび回転対応マトリクスMrを算出するためのマトリクス算出情報を記憶している。移動および回転の要求量が上記ステップ１０４において算出されると、それらの算出値が、そのマトリクス算出情報に当てはめられて、今回の処理サイクルで用いるべき移動対応マトリクスMtと回転対応マトリクスMrが算出される（ステップ１０６）。
【００６９】
尚、上記（５）式および（６）式は、スティック１８が右方向（X方向）にのみ操作された場合に得られるマトリクスMt、Mrである。つまり、これらの式は、X方向への操作成分sxがスティック１８の操作量sと一致し、Y方向への操作成分syがゼロである場合に成立する関係式である。スティック１８の操作にY方向成分syが含まれている場合は、上記のマトリクス算出情報に基づいて、所定の行列位置に（１−b）・sy・tおよびb・sy・θに対応する値を有するマトリクスMt、Mrが算出されることとなるが、その算出の手法は、本発明の主要部分ではなく、また、当業者にとって明らかな事項であるため、ここでは、その詳細な説明は省略する。
【００７０】
次に、前回の処理サイクル時に算出された座標変換マトリクスM0に、上記の移動対応マトリクスMtおよび回転対応マトリクスMrを掛け合わせることにより、今回の処理サイクルにおいて用いるべき変換マトリクスM1＝Mt・Mr・M0が算出される（ステップ１０８）。そして、上記（１）式の関係、つまり、Pc＝M1・Pwの関係に従って、ワールド座標からカメラ座標への座標変換が行われる（ステップ１１０）。
【００７１】
上記ステップ１０８の処理によれば、スティック１８および機能ボタン２２の操作に対応する仮想カメラ７０の仮想的な動き（移動および回転）を、座標変換に反映させるための座標変換マトリクスM1を定めることができる。そして、上記ステップ１１０の処理によれば、その座標変換マトリクスM1を用いて、仮想的に動作した後の仮想カメラ７０を原点とする３次元空間への座標変換を行うことができる。その後、次回の処理サイクルに備えて、M1をM0とする書き換え処理が行われる（ステップ１１２）。
【００７２】
以上の処理が終わると、次に、仮想カメラ７０を視点とする仮想３次元空間での透視投影変換が行われ（ステップ１１４）、更に、その変換の結果を用いて表示画像が生成される（ステップ１１６）。そして、生成された画像は、VRAM５０に蓄えられた後、画像制御部５２によりディスプレイ１２に表示される（ステップ１１８）。
【００７３】
以上説明した処理によれば、スティック１８に与えられた操作量sを、機能ボタン２２に与えられた操作量bの比率で移動と回転とに分配することができる。このため、本実施形態のゲーム装置によれば、仮想カメラ７０の移動方向と回転方向の両方を、単一のスティック等で操作することができる。つまり、本実施形態のゲーム装置によれば、スティック等を１組だけ用いる構成を取りながら、仮想カメラ７０の移動および回転をそれぞれ独立に発生させる機能と、それら２つの動作を任意の比率で同時に発生させる機能とを実現することができる。このため、本実施形態の装置によれば、２つの動作を操作するタイプのゲームを進めるにあたって、コントローラ１４上の主要な入力インターフェースがそれらの操作に消費されてしまうのを避けることができ、また、２つの動作の操作を簡単化することができる。
【００７４】
［実施の形態１の変形例］
ところで、上述した実施の形態１においては、操作対象たる仮想カメラ７０をＸＹ平面内で移動させ、かつ、Ｘ軸およびＹ軸回りに回転させることとしているが、本発明はこれに限定されるものではない。すなわち、操作対象の移動は単方向（１次元）の移動であってもよく、また、その回転は１つの軸回りにおいてのみ発生させ得るものであってもよい。
【００７５】
また、上述した実施の形態１においては、ユーザによる操作対象が、３次元グラフィック画像の仮想視点を定める仮想カメラ７０に限定されているが、その対象はこれに限定されるものではない。すなわち、ユーザによる操作対象は、ビデオゲームに登場するオブジェクト（例えば、飛行機や自動車）であってもよい。
【００７６】
また、上述した実施の形態１では、操作対象に与えるべき動作が、移動と回転に限定されているが、その動作はこれらに限定されるものではない。例えば、ゲームにおける攻撃方向やキャラクタの姿勢を変化させるための動作を、操作すべき動作に含めることとしてもよい。
【００７７】
また、上述した実施の形態１では、仮想カメラ７０の移動方向および回転方向を、カメラ座標系で捕らえることとしているが、本発明はこれに限定されるものではなく、操作対象の移動や回転は、ワールド座標系で捕らえることとしてもよい。つまり、移動と回転が同時に要求された場合の操作対象の動きは、図４に示すような動きに限られるものではなく、図６に示すように、ワールド座標系によるものであってもよい。
【００７８】
また、上述した実施の形態１では、操作対象の移動または回転方向を指令するためのスティック等が、アナログ出力を発するものとして限定されているが、本発明はこれに限定されるものではない。すなわち、スティック等は、操作の有無に応じて０／１の出力を発するものであってもよい（スティック等についてはディジタルモードであってもよい）。
【００７９】
また、上述した実施の形態１では、スティック等が、上下左右の何れかに対応する出力を発する４方向タイプであるか、或いは、斜めの方向の操作に対しては上下方向の出力と左右方向の出力とを同時に発することのできるタイプであるかが特に明示されていないが、そのタイプは何れのタイプであってもよい。
【００８０】
また、上述した実施の形態１では、比率指定用のボタン（機能ボタン２２）が、アナログ出力（２５６段階のディジタル値）を発するものとされているが、本発明はこれに限定されるものではない。すなわち、比率指定用の入力インターフェースは、最小値と最大値の他に、その中間値を少なくとも１つ発生できるもの、つまり、少なくとも３段階の出力が発生できるものであればよい。
【００８１】
また、上述した実施の形態１では、ユーザによる操作が行われない限りは、操作対象は停止しているものとされているが、本発明はこれに限定されるものではない。すなわち、ビデオゲームにおける飛行機や自動車などが操作対象である場合は、ユーザによる操作入力がない状況下で、それらの操作対象に一定速度での移動を与えることとしてもよい。
【００８２】
更に、上述した実施の形態１では、コンピュータを用いたビデオゲーム装置を用いることと、操作対象が、そのビデオゲームの仮想空間内に存在していることとが前提とされているが、本発明はこれに限定されるものではない。すなわち、本発明が適用できる操作対象は、実空間に存在する玩具や装置であってもよい。また、操作対象に対する指令を発生する装置は、ハードウェアのみで構成された装置、或いは書き換え不可のソフトウェアを利用する装置であってもよい。
【００８３】
尚、上述した実施の形態１においては、スティック等による操作入力が前記第１または第６の発明における「操作入力A」に、比率指定用ボタンによる操作入力が前記第１の発明における「操作入力B」に、それぞれ相当していると共に、ゲーム装置本体１０が上記ステップ１００の処理を実行することにより前記第１または第６の発明における「操作入力A検知手段」および「操作入力B検知手段」が実現されている。また、ここでは、スティック等による操作量sに対する（１−b）・sおよびb・sが、それぞれ前記第１または第６の発明における「第１動作指令値」および「第２動作指令値」に相当していると共に、ゲーム装置本体１０が上記ステップ１０４の処理を実行することにより前記第１または第６の発明における「動作指令値生成手段」が実現されている。更に、ここでは、仮想カメラ７０の移動および回転が、それぞれ前記第１または第６の発明における「第１動作」および「第２動作」に相当していると共に、ゲーム装置本体１０が上記ステップ１０６〜１１０の処理を実行することにより前記第１または第６の発明における「第１反映手段」および「第２反映手段」がそれぞれ実現されている。
【図面の簡単な説明】
【００８４】
【図１】本発明の実施の形態１のゲーム装置のシステム構成を説明するための図である。
【図２】本発明の実施の形態１におけるゲーム装置本体の構成を説明するためのブロック図である。
【図３】本発明の実施の形態１においてユーザの操作対象となる仮想カメラの動作を説明するためのイメージ図である。
【図４】本発明の実施の形態１において移動と回転とが組み合わされることで生ずる仮想カメラの動作例を示す図である。
【図５】本発明の実施の形態１において実行されるルーチンのフローチャートである。
【図６】本発明により発生させることのできる操作対象の動きの他の例を説明するための図である。
【符号の説明】
【００８５】
１０  ゲーム装置本体
１２  テレビ受像器
１４  コントローラ
１６  方向キー
１８、２０  スティック
２２，２４，２６，２８  機能ボタン
７０  仮想カメラ
【図１】
2005211260.tif 000005
【図２】
2005211260.tif 000006
【図３】
2005211260.tif 000007
【図４】
2005211260.tif 000008
【図５】
2005211260.tif 000009
【図６】
2005211260.tif 000010