(57)【要約】【課題】路面状況などを反映したリアルな画像を生成できる画像生成装置及び情報記憶媒体を提供すること。【解決手段】仮想カメラ２２を移動体２０に追従するように移動させると共に仮想カメラ２２を所与の周期、振幅、波形で振動させ、仮想カメラ２２から見える３人称視点での画像を生成する。移動体２０の一部又は全部を、仮想カメラ２２の振動とは周期や振幅や波形が異なるように振動させる。移動体２０が飛んだ場合や転倒した場合に仮想カメラ２２の振動を停止する。移動体２０の速度が高くなるにつれて仮想カメラ２２の振動の周期を短くすると共に振幅を大きくする。移動体２０が移動するエリアに応じて、仮想カメラ２２の振動の周期等を変化させる。コース４０を構成するポリゴンに振動の周期等を特定するための属性データを持たせ、移動体２０が位置するポリゴンが有する属性データに基づいて仮想カメラ２２を振動させる。【選択図】図３
2008033964.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクト空間内の所与の視点での画像を生成する画像生成装置であって、
オブジェクト空間内で移動体を移動させる演算を行う手段と、
仮想カメラを前記移動体に追従するように移動させると共に、前記仮想カメラを所与の周期、所与の振幅、所与の波形で振動させる手段と、
前記仮想カメラから見える画像であって、前記移動体の画像を含む３人称視点での画像を生成する手段とを含むことを特徴とする画像生成装置。
【請求項２】
請求項１において、
前記移動体の一部又は全部を、前記仮想カメラの振動とは周期、振幅及び波形の少なくとも１つが異なるように振動させることを特徴とする画像生成装置。
【請求項３】
請求項１又は２において、
所与の条件が成立した場合に、前記仮想カメラの振動を停止することを特徴とする画像生成装置。
【請求項４】
請求項３において、
移動体が飛んでいる場合及び転倒している場合の少なくとも一方の場合に仮想カメラの振動を停止することを特徴とする画像生成装置。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記移動体の速度が高くなるにつれて、前記仮想カメラの振動の周期を短くすることを特徴とする画像生成装置。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記移動体の速度が高くなるにつれて、前記仮想カメラの振動の振幅を大きくすることを特徴とする画像生成装置。
【請求項７】
請求項１乃至６のいずれかにおいて、
前記移動体が移動するエリアに応じて、前記仮想カメラの振動の周期、振幅及び波形の少なくとも１つを変化させることを特徴とする画像生成装置。
【請求項８】
請求項７において、
移動体が移動するマップを構成する各プリミティブ面に、前記仮想カメラの振動の周期、振幅及び波形の少なくとも１つを特定するための属性データを持たせ、
移動体が位置するプリミティブ面が有する属性データに基づいて、前記仮想カメラを振動させることを特徴とする画像生成装置。
【請求項９】
オブジェクト空間内の所与の視点での画像を生成するための情報記憶媒体であって、
オブジェクト空間内で移動体を移動させる演算を行うための情報と、
仮想カメラを前記移動体に追従するように移動させると共に、前記仮想カメラを所与の周期、所与の振幅、所与の波形で振動させるための情報と、
前記仮想カメラから見える画像であって、前記移動体の画像を含む３人称視点での画像を生成するための情報とを含むことを特徴とする情報記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オブジェクト空間内の所与の視点での画像を生成する画像生成装置及び情報記憶媒体に関する。
【背景技術】
【０００２】
従来より、仮想的な３次元空間であるオブジェクト空間内に複数のオブジェクトを配置し、オブジェクト空間内の所与の視点から見える画像を生成する画像生成装置が開発、実用化されており、いわゆる仮想現実を体験できるものとして人気が高い。レーシングカーゲームを楽しむことができる画像生成装置を例にとれば、プレーヤは、自身が操作する車などの移動体をオブジェクト空間内で走行させて３次元ゲームを楽しむ。
【０００３】
さて、このような画像生成装置では、プレーヤの仮想現実感を向上させるという課題があり、このためには、路面状況などを反映したリアルな画像を生成することが望まれる。
【０００４】
しかしながら、これまでの画像生成装置では、移動体が画面上に表示される３人称視点での画像を生成する場合に、路面のガタガタ感や路面の変化をプレーヤに今一つ体感させることができないという問題があった。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、路面状況などを反映したリアルな画像を生成できる画像生成装置及び情報記憶媒体を提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明は、オブジェクト空間内の所与の視点での画像を生成する画像生成装置であって、オブジェクト空間内で移動体を移動させる演算を行う手段と、仮想カメラを前記移動体に追従するように移動させると共に、前記仮想カメラを所与の周期、所与の振幅、所与の波形で振動させる手段と、前記仮想カメラから見える画像であって、前記移動体の画像を含む３人称視点での画像を生成する手段とを含むことを特徴とする。
【０００７】
本発明によれば、移動体に追従するように移動する仮想カメラからの、３人称視点での画像が生成される。そして、この仮想カメラは、例えば移動体の振動とは独立して、所与の周期、振幅、波形で振動する。このようにすることで、移動体のみならず、コースなどの背景についても振動して見えるような画像を生成することが可能となる。これにより、路面状況などを反映したリアルな画像を提供でき、仮想現実感の向上を図れる。
【０００８】
また本発明は、前記移動体の一部又は全部を、前記仮想カメラの振動とは周期、振幅及び波形の少なくとも１つが異なるように振動させることを特徴とする。このようにすることで、仮想カメラと移動体とが異なる周期等で各々独立に振動するようになる。これにより、移動体が振動して見えるような画像を確実に生成することが可能になる。
【０００９】
また本発明は、所与の条件が成立した場合に、前記仮想カメラの振動を停止することを特徴とする。このようにすることで、不自然な画像が表示される事態を防止できる。
【００１０】
なおこの場合、移動体が飛んでいる場合及び転倒している場合の少なくとも一方の場合に仮想カメラの振動を停止することが望ましい。
【００１１】
また本発明は、前記移動体の速度が高くなるにつれて、前記仮想カメラの振動の周期を短くすることを特徴とする。このようにすることで、移動体の速度が高くなるにつれて、上下の揺れ等の時間間隔が短くなるという感覚をプレーヤに与えることが可能になる。
【００１２】
また本発明は、前記移動体の速度が高くなるにつれて、前記仮想カメラの振動の振幅を大きくすることを特徴とする。このようにすることで、移動体の速度が高くなるにつれて、上下の揺れ等の大きさが大きくなるという感覚をプレーヤに与えることが可能になる。
【００１３】
また本発明は、前記移動体が移動するエリアに応じて、前記仮想カメラの振動の周期、振幅及び波形の少なくとも１つを変化させることを特徴とする。このようにすることで、プレーヤに与える走行感覚のバラエティー度を増すことが可能となり、プレーヤの仮想現実感を向上できる。
【００１４】
また本発明は、移動体が移動するマップを構成する各プリミティブ面に、前記仮想カメラの振動の周期、振幅及び波形の少なくとも１つを特定するための属性データを持たせ、移動体が位置するプリミティブ面が有する属性データに基づいて、前記仮想カメラを振動させることを特徴とする。このようにすることで、路面状況の変化を、より精細に制御することが可能になる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の好適な実施形態について図面を用いて説明する。なお以下では、本発明を自転車ゲームに適用した場合を例にとり説明するが、本発明が適用されるものはこれに限られるものではない。
【００１６】
図１に本実施形態の画像生成装置を業務用のゲーム装置に適用した場合の外観図の一例を示す。
【００１７】
ここで、ライディング筐体１６は、実際の自転車を模して作られたものであり、図示しないプレーヤはこのライディング筐体１６のサドル１７に座る。そしてディスプレイ１８には、仮想的な自転車である移動体２０や移動体２０が走るコースや周囲の風景が表示される。プレーヤは、この画像を見ながら、ハンドル３２を左右に操作することで、ディスプレイ１８に映し出される移動体２０の進む方向を決める。またペダル３０をＡ１に示すように漕ぐことで、コース進行方向に移動体２０を進める。
【００１８】
図２に、本実施形態の画像生成装置の機能ブロック図の一例を示す。
【００１９】
ここで操作部１０は、プレーヤが、図１のハンドル３２を操作したりペダル３０を漕ぐことで操作データを入力するためのものであり、操作部１０にて得られた操作データは処理部１００に入力される。
【００２０】
処理部１００は、上記操作データと所与のプログラムなどに基づいて、オブジェクト空間に表示物を配置する処理や、このオブジェクト空間の所与の視点での画像を生成する処理を行うものである。この処理部１００の機能は、ＣＰＵ（ＣＩＳＣ型、ＲＩＳＣ型）、ＤＳＰ、ゲートアレイＩＣなどのハードウェアにより実現できる。
【００２１】
情報記憶媒体１９０は、プログラムやデータを記憶するものである。この情報記憶媒体１９０の機能は、ＣＤ−ＲＯＭ、ゲームカセット、ＩＣカード、ＭＯ、ＦＤ、ＤＶＤ、ハードディスク、メモリなどのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１９０からのプログラム、データに基づいて種々の処理を行うことになる。
【００２２】
処理部１００は、ゲーム演算部１１０と画像生成部１５０を含む。
【００２３】
ここでゲーム演算部１１０は、ゲームモードの設定処理、ゲームの進行処理、移動体（自転車や自転車に乗るキャラクタ）の位置や方向を決める処理、視点位置や視線方向を決める処理、オブジェクト空間へオブジェクトを配置する処理等を行う。
【００２４】
また画像生成部１５０は、ゲーム演算部１１０により設定されたオブジェクト空間での所与の視点での画像を生成する処理を行う。画像生成部１５０により生成された画像は表示部１２において表示される。
【００２５】
ゲーム演算部１１０は移動体演算部１１２と仮想カメラ制御部１１４を含む。
【００２６】
ここで移動体演算部１１２は、操作部１０から入力される操作データや所与のプログラムに基づき、プレーヤが操作する移動体や所与の制御プログラム（コンピュータ）により動きが制御される移動体を、オブジェクト空間内のコース上で移動させる演算を行う。より具体的には、移動体の位置や方向を例えば１フレーム（１／６０秒）毎に求める演算を行う。
【００２７】
例えば（ｋ−１）フレームでの移動体の位置をＰＭk-1、速度をＶＭk -1、加速度をＡＭk-1、１フレームの時間を△ｔとする。するとｋフレームでの移動体の位置ＰＭk、速度ＶＭkは例えば下式（１）、（２）のように求められる。
ＰＭk＝ＰＭk-1＋ＶＭk-1×△ｔ              （１）
ＶＭk＝ＶＭk-1＋ＡＭk-1×△ｔ              （２）
仮想カメラ制御部１１４は、移動体演算部１１２で得られた移動体の位置や方向のデータに基づいて、仮想カメラの視点位置や視線方向を制御する演算を行う。より具体的には、プレーヤの操作する移動体に例えば慣性を持ちながら追従するように仮想カメラの視点位置や視線方向を制御する。画像生成部１５０は、この仮想カメラ制御部１１４により制御される仮想カメラから見える画像を生成することになる。
【００２８】
そして本実施形態の第１の特徴は以下の点にある。即ち図３に示すように、仮想カメラ２２を移動体２０に追従するように移動させると共に、仮想カメラ２２を所与の周期、所与の振幅、所与の波形で振動させる。そして、仮想カメラ２２の視点位置２４、視線方向２６において見える画像であって、移動体２０やコース４０の画像を含む３人称視点での画像を生成して、プレーヤに表示する。この場合、仮想カメラ２２を振動させる処理は、図２の仮想カメラ制御部１１４が行うことになる。
【００２９】
図４に本実施形態により生成される画像の一例を示す。本実施形態によれば、仮想カメラ２２を振動させることで、図４に示すように、移動体２０のみならず、コース４０などの背景についても振動させることができるようになる。これにより、３人称視点であっても、コース４０の路面状況をよりリアルに反映した画像を生成することができ、プレーヤに与える仮想現実感を格段に向上できる。
【００３０】
画面上に移動体２０が表示されない１人称視点で画像を生成する場合には、移動体２０の位置と仮想カメラ２２の位置はほぼ一致する。したがって、移動体２０が振動すれば画面も振動することになり、それほど工夫を要せずに路面状況をプレーヤに伝えることができる。
【００３１】
しかしながら、画面上に移動体２０が表示される３人称視点で画像を生成する場合には、移動体２０の位置と仮想カメラ２２の位置（視点位置）は一致しない。したがって、移動体２０が振動した場合に、仮想カメラ２２をどのように制御するかが１つの技術的課題になる。
【００３２】
この場合、図５（Ａ）に示すように、仮想カメラ２２と移動体２０との間の位置関係を完全に固定する手法を採用すると、コース４０などの背景は振動しているように見えるが、移動体２０については振動しているようには見えなくなる。したがって、この手法によっては、移動体２０が凹凸のある路面を走行しているという感覚を、プレーヤに的確に伝えることができない。
【００３３】
一方、図５（Ｂ）に示すように、仮想カメラ２２と移動体２０との間の位置関係を完全には固定せず、例えば仮想カメラ２２の高さ（地面からの）を固定にする手法を採用すると、移動体２０は振動しているように見えるが、コース４０などの背景については振動しているようには見えなくなる。そして画面全体の面積に対する移動体２０の占める面積は小さいため、移動体２０のみが振動していても、凹凸のある路面を走行しているという感覚を今一つプレーヤは感じ取ることができない。
【００３４】
このように図５（Ａ）、（Ｂ）に示した手法によっては、結局、路面状況が変化している様子をプレーヤに十分に伝えることはできない。
【００３５】
これに対して本実施形態では、図３に示すように、移動体２０に仮想カメラ２２を追従させると共に、移動体２０の振動とは無関係に、仮想カメラ２２を所与の周期、振幅で振動させている。このため、図４に示すように、移動体２０のみならず、コース４０などの背景も振動して見えるようになる。したがって、路面状況が変化している様子をプレーヤに十分且つ的確に伝えることができ、プレーヤの感じる仮想現実感を格段に向上できる。
【００３６】
また本実施形態の第２の特徴は、移動体２０の一部又は全部を、仮想カメラ２２の振動とは周期や振幅や波形が異なるように振動させる点にある。即ち、例えば図６に示すように、仮想カメラ２２を周期Ｔ１、振幅ＡＰ１で振動させる一方で、移動体２０を周期Ｔ２、振幅ＡＰ２で振動させる。このようにすることで、移動体２０が画面に対して振動しているように見せることができると共に、移動体２０が仮想カメラ２２に対して振動しているように見せることができるようになる。これにより、路面状況が変化している様子を、更に十分且つ的確にプレーヤに伝えることが可能となる。
【００３７】
なお移動体２０の全体を振動させるのではなく、移動体２０の一部、例えばタイヤ等のみを振動させるようにしてもよい。また振動の周期や振幅を異ならせるのではなく、波形の種類を異ならせるようにしてもよい。
【００３８】
また本実施形態の第３の特徴は、所与の条件が成立した場合に、仮想カメラの振動を停止する点にある。例えば図７に示すように、移動体２０がジャンプ台４２から飛んだ場合（移動体２０が地面から離れた場合）に仮想カメラ２２の振動を停止する。あるいは、移動体２０が転倒した場合等にも仮想カメラ２２の振動を停止する。
【００３９】
即ち本実施形態では、移動体２０の振動とは独立して仮想カメラ２２を振動させている。したがって、移動体２０が飛んだり転倒し、移動体２０自体の振動が停止すべき状況になった場合に、何も処置を施さないと、仮想カメラ２２のみが振動してしまい、不自然な画像がプレーヤに表示されてしまう。本実施形態では、このような場合に、仮想カメラ２２の振動が停止するため、プレーヤが不自然さを感じるのを有効に防止できるようになる。
【００４０】
なお仮想カメラ２２の振動を停止させる所与の条件としては、移動体２０のジャンプや転倒に限らず、種々の条件を考えることができる。
【００４１】
また本実施形態の第３の特徴は、移動体の速度が高くなるにつれて、仮想カメラの振動の周期を短くしたり振幅を大きくする点にある。
【００４２】
即ち本実施形態では、図８（Ａ）に示すように、移動体２０の速度が高くなるにつれて仮想カメラ２２の振動の周期が短くなる。このようにすることで、移動体２０の速度が高くなるにつれて路面の上下の揺れの時間間隔が短くなるという感覚を、プレーヤに与えることができる。また本実施形態では、図８（Ｂ）に示すように、移動体２０の速度が高くなるにつれて仮想カメラ２２の振幅が大きくなる。このようにすることで、移動体２０の速度が高くなるにつれて路面の上下の揺れの大きさが大きくなるという感覚を、プレーヤに与えることができる。以上のような本実施形態の第３の特徴により、路面状況の変化を、よりリアルにシミュレートすることが可能となり、プレーヤの仮想現実感を更に一層高めることが可能になる。
【００４３】
また本実施形態の第４の特徴は、移動体が移動するエリアに応じて、仮想カメラの振動の周期や振幅や波形を変化させる点にある。
【００４４】
即ち図９に示すように、コース４０には、路面状況の違う複数のエリアが設けられる。そして、移動体２０が例えばアスファルトエリア５０を走行している場合には、仮想カメラの振動の振幅はほとんど零になる。また移動体２０が、岩エリア５１を走行している場合には振幅の大きい振動になる。また草エリア５２を走行している場合には長い周期で小さな振幅の振動になる。また砂利エリア５３を走行している場合には短い周期で小さいな振幅の振動になり、土エリア５４を走行している場合には更に短い周期で更に小さな振動になる。
【００４５】
このように、仮想カメラの振動の周期や振幅や波形をエリア毎に異ならせることで、路面状況の変化の更にリアルなシミュレートが可能となり、プレーヤの仮想現実感を更に向上できるようになる。
【００４６】
なお前述の図４は移動体２０が岩エリアを走行している場合の画像の例である。一方、図１０に、移動体２０が土エリアを走行している場合の画像の例を示す。このように本実施形態では、移動体２０が岩エリアや土エリアを走行している場合に、まず、各エリアの路面状況を表す画像を表示することで、岩エリアや土エリアを走行しているという仮想現実感をプレーヤに与えている。そして、更に、各々のエリアの路面の凹凸に対応した波形で移動体２０や背景を振動させることで、プレーヤの感じる仮想現実感を更に一層向上させている。
【００４７】
さて本実施形態では図１１に示すように、コース４０を、複数のポリゴンなどのプリミティブ面の組み合わせにより構成している。移動体２０は、これらのポリゴンにより構成されたコース４０上を走行する。
【００４８】
そして本実施形態の第５の特徴は以下の点にある。即ち、コースなどのマップを構成する各ポリゴンに、仮想カメラの振動の周期や振幅や波形を特定するための属性データを持たせる。そして、移動体が位置するポリゴンが有する属性データに基づいて、仮想カメラを振動させる。
【００４９】
例えば図１２では、コース４０はポリゴン５６-1〜５６-9により構成される。そしてポリゴン５６-1〜５６-3にはアスファルト路面の振動を特定するための属性データが設定されている。同様にポリゴン５６-4〜５６-6には岩路面の振動を特定するための属性データが、ポリゴン５６-7〜５６-9には草路面の振動を特定するための属性データが設定されている。そして、図１２では、移動体２０はポリゴン５６-5の場所に位置している。したがって、この場合には、岩路面の振動を特定するための属性データが読み出され、仮想カメラは、この属性データに基づいて振動する。
【００５０】
このように各ポリゴンに設定された属性データに基づいて仮想カメラを振動させることで、路面状況の変化の、より精細な制御が可能となる。即ち、図９の砂利エリア５３、土エリア５４のように、コース４０の左側と右側で路面状況を変えることが可能となる。また左側、中央、右側で路面状況を変えることも可能である。
【００５１】
なお以上では、コースを、プリミティブ面の１つであるポリゴンで構成した場合を例にとり説明したが、曲面などの他の形態のプリミティブ面によりコースを構成してもよい。
【００５２】
次に本実施形態の詳細な処理例について、図１３のフローチャートを用いて説明する。
【００５３】
まず図２の移動体演算部１１２が移動体の位置、方向を算出する（ステップＳ１）。この算出はフレーム毎に行われる。
【００５４】
次に図２の仮想カメラ制御部１１４が、移動体の位置、方向に基づき仮想カメラの視点位置、視線方向を算出する（ステップＳ２）。仮想カメラの視点位置は、例えば、移動体の位置からワールド（Ｘ、Ｙ、Ｚ）座標系で一定の座標値（△Ｘ、△Ｙ、△Ｚ）だけ離れた位置に設定される。また移動体の速度等が急激に変化した場合にも、滑らかに追従できるように、仮想カメラは慣性を持ちながら移動体に追従するようになっている。
【００５５】
次に移動体が飛んでいる（地面から離れている）か否かを判断する（ステップＳ３）。そして図７に示すように移動体が飛んでいる場合には、ステップＳ５以下の仮想カメラを振動させる処理を省略する。
【００５６】
次に移動体が転倒しているか否かを判断する（ステップＳ４）。そして移動体が転倒している場合には、ステップＳ５以下の仮想カメラを振動させる処理を省略する。
【００５７】
次に移動体が位置する（接触している）ポリゴンを検索し、そのポリゴンの属性データ（仮想カメラの振動を特定するためのデータ）を読み出す（ステップＳ５）。
【００５８】
ここで本実施形態では、移動体が位置するポリゴンを以下のようにして検索している。即ち図１４（Ａ）に示すように本実施形態では、コース４０を複数のコースブロックＣ0〜Ｃ1000に分割している。コース４０は、道のり距離で例えば１ｍ間隔毎にコースブロックに分割される。そして図１４（Ｂ）において、移動体２０がコースブロックＣｊ内に位置するか否かを、ライン６０、６２の配置データにより判定する。このように移動体２０が位置するコースブロックを特定することで、移動体２０の順位や時間延長の可否等を決めることができる。また図１４（Ｃ）に示すように、各コースブロックは複数のポリゴン、例えば三角形のポリゴンに分割されている。本実施形態では、移動体２０の位置をコースブロックに設定されるｒ、ｓ座標系に変換する。そして、このｒ、ｓ座標系での移動体２０の位置に基づいて、移動体２０が、どの三角形のポリゴンに位置するかを判別する。以上のようにして、移動体２０が位置するポリゴンが検索される。
【００５９】
図１３の説明に戻る。属性データを読み出した後、波形メモリデータの読み出しアドレスＲＡを下式（３）にしたがって決める。
ＲＡ＝ＭＯＤ（ＲＡ＋Ｋ１×ＶＭ，ＷＤＬ）        （３）
ここでＭＯＤ（Ａ／Ｂ）は、ＡをＢで割った時の剰余を表すものである。またＫ１は定数であり、ＶＭは移動体の速度であり、ＷＤＬは波形データ長である。また読み出しアドレスＲＡは初期状態では零に設定されている。
【００６０】
図１５（Ａ）、（Ｂ）、（Ｃ）に、波形データメモリに記憶される種々の波形データの例を示す。図１５（Ａ）はアスファルト路面の振動を表す波形データ、図１５（Ｂ）は岩路面の振動を表す波形データ、図１５（Ｃ）は草路面の振動を表す波形データである。すべての波形データのＷＤＬは２５６で同一になっている。
【００６１】
上式（３）から明らかなように、移動体の速度ＶＭが速いほど波形データの再生速度が速くなり、波形の振動の周期が実質的に短くなる。即ち図８（Ａ）に示すように、移動体の速度が高くなればなるほど周期が短くなるように、仮想カメラの振動を制御できるようになる。また上式（３）でＲＡ＋Ｋ１×ＶＭをＷＤＬで割りその剰余をＲＡにしているのは、図１５（Ａ）、（Ｂ）、（Ｃ）に示すように波形データメモリには有限の波形データ長の波形データしか記憶されていないからである。
【００６２】
次に、ステップＳ５で読み出された属性データと、ステップＳ６で得られた読み出しアドレスＲＡとに基づいて、振幅ＡＰが波形データメモリから読み出される（ステップＳ７）。即ち、どの波形データを参照するかは、図１２で説明したように、ステップＳ５で得られた属性データに基づき選択される。例えば属性データがアスファルト路面を指定するものであれば図１５（Ａ）の波形データが、岩路面を指定するものであれば図１５（Ｂ）の波形データが、草路面を指定するものであれば図１５（Ｃ）の波形データが参照される。またステップＳ６で得られた読み出しアドレスＲＡを指定することで、振幅ＡＰを得ることができる。例えば図１５（Ｂ）でＲＡ＝２００が指定されると、ＡＰ＝２０００が得られる。
【００６３】
次に、下式（４）に示すようにして振幅ＡＰを補正する（ステップＳ８）。
ＡＰ＝Ｋ２×ＡＰ×ＶＭ                          （４）
ここでＫ２は定数である。上式（４）のような補正をすることで、図８（Ｂ）に示すように、移動体の速度ＶＭが大きくなるほど振幅ＡＰが大きくなるように、仮想カメラの振動を制御することが可能になる。
【００６４】
次に、下式（５）に示すようにして、ステップＳ２で得られた仮想カメラの高さ（視点位置の高さ）ＨＣを補正する（ステップＳ９）。
ＨＣ＝ＨＣ＋ＡＰ                                （５）
以上のようにすることで、各種波形データに応じた振幅、周期、波形で仮想カメラを振動させることが可能になる。
【００６５】
次に、本実施形態を実現できるハードウェアの構成の一例について図１６を用いて説明する。同図に示す装置では、ＣＰＵ１０００、ＲＯＭ１００２、ＲＡＭ１００４、情報記憶媒体１００６、音生成ＩＣ１００８、画像生成ＩＣ１０１０、Ｉ／Ｏポート１０１２、１０１４が、システムバス１０１６により相互にデータ送受信可能に接続されている。そして前記画像生成ＩＣ１０１０にはディスプレイ１０１８が接続され、音生成ＩＣ１００８にはスピーカ１０２０が接続され、Ｉ／Ｏポート１０１２にはコントロール装置１０２２が接続され、Ｉ／Ｏポート１０１４には通信装置１０２４が接続されている。
【００６６】
情報記憶媒体１００６は、プログラム、表示物を表現するための画像データ、音データ等が主に格納されるものである。例えば家庭用ゲーム装置ではゲームプログラム等を格納する情報記憶媒体としてＣＤ−ＲＯＭ、ゲームカセット、ＤＶＤ等が用いられる。また業務用ゲーム装置ではＲＯＭ等のメモリが用いられ、この場合には情報記憶媒体１００６はＲＯＭ１００２になる。
【００６７】
コントロール装置１０２２はゲームコントローラ、操作パネル等に相当するものであり、プレーヤがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【００６８】
情報記憶媒体１００６に格納されるプログラム、ＲＯＭ１００２に格納されるシステムプログラム（装置本体の初期化情報等）、コントロール装置１０２２によって入力される信号等に従って、ＣＰＵ１０００は装置全体の制御や各種データ処理を行う。ＲＡＭ１００４はこのＣＰＵ１０００の作業領域等として用いられる記憶手段であり、情報記憶媒体１００６やＲＯＭ１００２の所与の内容、あるいはＣＰＵ１０００の演算結果等が格納される。また本実施形態を実現するための論理的な構成を持つデータ構造（例えば図１５（Ａ）、（Ｂ）、（Ｃ）の波形データ）は、このＲＡＭ又は情報記憶媒体上に構築されることになる。
【００６９】
更に、この種の装置には音生成ＩＣ１００８と画像生成ＩＣ１０１０とが設けられていてゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成ＩＣ１００８は情報記憶媒体１００６やＲＯＭ１００２に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音はスピーカ１０２０によって出力される。また、画像生成ＩＣ１０１０は、ＲＡＭ１００４、ＲＯＭ１００２、情報記憶媒体１００６等から送られる画像情報に基づいてディスプレイ１０１８に出力するための画素情報を生成する集積回路である。なおディスプレイ１０１８として、いわゆるヘッドマウントディスプレイ（ＨＭＤ）と呼ばれるものを使用することもできる。
【００７０】
また、通信装置１０２４はゲーム装置内部で利用される各種の情報を外部とやりとりするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受したり、通信回線を介してゲームプログラム等の情報を送受することなどに利用される。
【００７１】
そして図１〜図１２、図１４（Ａ）〜図１５（Ｃ）で説明した種々の処理は、図１３のフローチャートに示した処理等を行うプログラムを格納した情報記憶媒体１００６と、該プログラムに従って動作するＣＰＵ１０００、画像生成ＩＣ１０１０、音生成ＩＣ１００８等によって実現される。なお画像生成ＩＣ１０１０、音生成ＩＣ１００８等で行われる処理は、ＣＰＵ１０００あるいは汎用のＤＳＰ等によりソフトウェア的に行ってもよい。
【００７２】
さて前述した図１は、本実施形態を業務用ゲーム装置に適用した場合の例を示すものである。この場合、装置に内蔵されるシステム基板１１０６には、ＣＰＵ、画像生成ＩＣ、音生成ＩＣ等が実装されている。そして、オブジェクト空間内で移動体を移動させる演算を行うための情報、仮想カメラを移動体に追従するように移動させると共に、仮想カメラを所与の周期、所与の振幅、所与の波形で振動させるための情報、仮想カメラから見える画像であって、移動体の画像を含む３人称視点での画像を生成するための情報、移動体の一部又は全部を、仮想カメラの振動とは周期、振幅及び波形の少なくとも１つが異なるように振動させるための情報等は、システム基板１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、これらの情報を格納情報と呼ぶ。これらの格納情報は、上記の種々の処理を行うためのプログラムコード、画像情報、音情報、表示物の形状情報、テーブルデータ、リストデータ、プレーヤ情報等の少なくとも１つを含むものである。
【００７３】
図１７（Ａ）に、本実施形態を家庭用のゲーム装置に適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納情報は、本体装置に着脱自在な情報記憶媒体であるＣＤ−ＲＯＭ１２０６、ＩＣカード１２０８、１２０９等に格納されている。
【００７４】
図１７（Ｂ）に、ホスト装置１３００と、このホスト装置１３００と通信回線１３０２を介して接続される端末１３０４-1〜１３０４-nとを含むゲーム装置に本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４-1〜１３０４-nが、ＣＰＵ、画像生成ＩＣ、音生成ＩＣを有し、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４-1〜１３０４-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４-1〜１３０４-nに伝送し端末において出力することになる。
【００７５】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【００７６】
例えば仮想カメラを振動させる手法は、図１３〜図１５（Ｃ）等を用いて説明した手法が特に望ましいが、これ以外にも種々の変形実施が可能である。
【００７７】
また移動体が移動するエリアに応じて、仮想カメラの振動の周期や振幅や波形を変化させる手法は、図９〜図１２で説明した手法が特に望ましいが、これ以外にも種々の変形実施が可能である。例えば図１４（Ａ）で説明したコースブロックの各々に、振動の周期等を特定するための属性データを設定し、この属性データに基づいて振動の周期等を切り替えてもよい。
【００７８】
例えば本実施形態では自転車の競争ゲームに本発明を適用した場合について説明したが、本発明はこれに限らず種々のゲーム（他の競争ゲーム、スポーツゲーム、対戦ゲーム等）に適用できる。
【００７９】
また本発明は、家庭用、業務用のゲーム装置のみならず、シミュレータ、多数のプレーヤが参加する大型アトラクション装置、パーソナルコンピュータ、マルチメディア端末、ゲーム画像を生成するシステム基板等の種々の画像生成装置にも適用できる。
【図面の簡単な説明】
【００８０】
【図１】本実施形態の画像生成装置の外観図の一例である。
【図２】本実施形態の画像生成装置の機能ブロック図の一例である。
【図３】本実施形態の原理について説明するための図である。
【図４】本実施形態により生成される画像の例を示す図である。
【図５】図５（Ａ）、（Ｂ）は仮想カメラの制御に関する種々の手法について説明するための図である。
【図６】仮想カメラの振動の周期等と移動体の振動の周期等を異ならせる手法について説明するための図である。
【図７】移動体が飛んだ場合に仮想カメラの振動を停止する手法について説明するための図である。
【図８】図８（Ａ）、（Ｂ）は、移動体の速度に応じて仮想カメラの振動の周期や振幅を変化させる手法について説明するための図である。
【図９】エリア毎に仮想カメラの振動の周期等を異ならせる手法について説明するための図である。
【図１０】本実施形態により生成される画像の例を示す図である。
【図１１】複数のポリゴンにより構成されるコースの例を示す図である。
【図１２】各ポリゴンへの属性データの設定について説明するための図である。
【図１３】本実施形態の詳細な処理例を説明するためのフローチャートである。
【図１４】図１４（Ａ）、（Ｂ）、（Ｃ）は、コースブロックについて説明するための図である。
【図１５】図１５（Ａ）、（Ｂ）、（Ｃ）は各種の波形データの例について説明するための図である。
【図１６】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図１７】図１７（Ａ）、（Ｂ）は、本実施形態が適用される種々の形態の装置の例を示す図である。
【符号の説明】
【００８１】
１０  操作部
１２  表示部
１６  ライディング筐体
１７  サドル
１８  ディスプレイ
２０  移動体（自転車）
２２  仮想カメラ
２４  視点位置
２６  視線方向
３０  ペダル
３２  ハンドル
４０  コース
１００  処理部
１１０  ゲーム演算部
１１２  移動体演算部
１１４  仮想カメラ制御部
１５０  画像生成部
１９０  情報記憶媒体
【図１】
2008033964.tif 000003
【図２】
2008033964.tif 000004
【図３】
2008033964.tif 000005
【図４】
2008033964.tif 000006
【図５】
2008033964.tif 000007
【図６】
2008033964.tif 000008
【図７】
2008033964.tif 000009
【図８】
2008033964.tif 000010
【図９】
2008033964.tif 000011
【図１０】
2008033964.tif 000012
【図１１】
2008033964.tif 000013
【図１２】
2008033964.tif 000014
【図１３】
2008033964.tif 000015
【図１４】
2008033964.tif 000016
【図１５】
2008033964.tif 000017
【図１６】
2008033964.tif 000018
【図１７】
2008033964.tif 000019
【手続補正書】
【提出日】平成19年11月5日(2007.11.5)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
オブジェクト空間内の所与の視点での画像を生成する画像生成装置であって、
オブジェクト空間内で移動体を移動させる演算を行う移動体演算手段と、
仮想カメラを前記移動体に追従するように移動させると共に、前記仮想カメラを振動させる仮想カメラ制御手段と、
前記仮想カメラから見える画像であって、前記移動体の画像を含む３人称視点での画像を生成する画像生成手段とを含み、
前記仮想カメラ制御手段が、
所与の条件が成立したことに基づいて、前記仮想カメラの振動を停止させることを特徴とする画像生成装置。
【請求項２】
請求項１において、
前記移動体演算手段が、
前記移動体の一部又は全部を、前記仮想カメラの振動とは周期、振幅及び波形の少なくとも１つが異なるように振動させることを特徴とする画像生成装置。
【請求項３】
請求項１又は２において、
前記仮想カメラ制御手段が、
前記移動体が飛んでいる場合及び転倒している場合の少なくとも一方の場合に前記仮想カメラの振動を停止させることを特徴とする画像生成装置。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記仮想カメラ制御手段が、
前記移動体の速度が高くなるにつれて、前記仮想カメラの振動の周期を短くすることを特徴とする画像生成装置。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記仮想カメラ制御手段が、
前記移動体の速度が高くなるにつれて、前記仮想カメラの振動の振幅を大きくすることを特徴とする画像生成装置。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記仮想カメラ制御手段が、
前記移動体が移動するエリアに応じて、前記仮想カメラの振動の周期、振幅及び波形の少なくとも１つを変化させることを特徴とする画像生成装置。
【請求項７】
請求項６において、
前記移動体が移動するマップを構成する各プリミティブ面に、前記仮想カメラの振動の周期、振幅及び波形の少なくとも１つを特定するための属性データを持たせ、
前記仮想カメラ制御手段が、
移動体が位置するプリミティブ面が有する属性データに基づいて、前記仮想カメラを振動させることを特徴とする画像生成装置。
【請求項８】
オブジェクト空間内の所与の視点での画像を生成するための、コンピュータ読み取り可能な情報記憶媒体であって、
オブジェクト空間内で移動体を移動させる演算を行う移動体演算手段と、
仮想カメラを前記移動体に追従するように移動させると共に、前記仮想カメラを振動させる仮想カメラ制御手段と、
前記仮想カメラから見える画像であって、前記移動体の画像を含む３人称視点での画像を生成する画像生成手段してコンピュータを機能させ、
前記仮想カメラ制御手段に、所与の条件が成立したことに基づいて、前記仮想カメラの振動を停止させるプログラムを記憶することを特徴とする情報記憶媒体。