(57)【要約】【課題】  移動体のサイズに比べて上面の幅が狭く、全体としてライン状を成した移動面上において、移動体の移動を適度にサポートして、当該移動面上での移動を比較的長期間可能にすること。【解決手段】  プレーヤキャラクタ２が、レール床ヒット判定モデル２６の縁部を移動している場合、プレーヤキャラクタ２の進行方向をレール８の幅中央に向けて補正する補正力Ｆを作用させて、プレーヤキャラクタ２を移動制御する。【選択図】図４
2010086432.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、仮想的な重力が設定された三次元仮想空間中を移動する移動体の画像を生成して所定のゲームを実行させるためのプログラムであって、
ライン状の移動面を三次元仮想空間に設定する移動面設定手段、
重力成分を含む所定の擬似物理法則及びプレーヤの方向指示操作に従って前記移動体の前記移動面上の移動制御を行う移動制御手段、
前記移動体の前記移動面の幅方向における位置を中央寄りに向かわせるための補正力を算出する補正力算出手段、
として前記コンピュータを機能させるとともに、
前記移動制御手段が、前記補正力を用いて前記移動制御を補正するように前記コンピュータを機能させるためのプログラム。
【請求項２】
前記補正力算出手段が、前記移動体の前記移動面の幅方向における位置が中央位置から離れるほど前記補正力を大きく算出するように前記コンピュータを機能させるための請求項１に記載のプログラム。
【請求項３】
前記移動面に、前記移動面より幅広の非表示の床面を設定する非表示床面設定手段、
前記床面を非表示として前記三次元仮想空間の画像を生成する画像生成手段、
として前記コンピュータを機能させ、
前記移動制御手段が、前記移動体と前記床面とのヒット判定を行って前記移動体の移動制御を行うように前記コンピュータを機能させる、
ための請求項１又は２に記載のプログラム。
【請求項４】
前記床面の縁部に前記移動体が位置していることを検出する縁部移動中検出手段、
前記縁部移動中検出手段による検出がなされた場合に、前記移動体に、落下の恐れを報知するための挙動として予め定められた落下前兆挙動を行わせる落下前兆挙動実行制御手段、
として前記コンピュータを機能させるための請求項３に記載のプログラム。
【請求項５】
前記床面の縁部に、前記移動面の幅方向への移動力を低減させる低減領域を設定する低減領域設定手段として前記コンピュータを機能させ、
前記移動制御手段が、前記移動体が前記低減領域に位置している場合には、前記移動体の前記幅方向への移動力を低減させて前記移動体の移動制御を行うように前記コンピュータを機能させる、
ための請求項３又は４に記載のプログラム。
【請求項６】
前記低減領域設定手段が、前記幅方向の大きさを可変して前記低減領域を設定するように前記コンピュータを機能させるための請求項５に記載のプログラム。
【請求項７】
前記移動制御手段が、前記移動体が前記低減領域に位置している場合に、前記移動体の前記幅方向への移動力の低減量又は低減率を、前記床面の端面に近づくほど大きくさせて前記移動体を移動制御するように前記コンピュータを機能させるための請求項５又は６に記載のプログラム。
【請求項８】
前記非表示床面設定手段が、前記床面の縁部を傾斜させて設定し、
前記移動制御手段が、前記移動体が位置する前記床面の傾斜を考慮して前記移動体を移動制御する、
ように前記コンピュータを機能させるための請求項３〜７の何れか一項に記載のプログラム。
【請求項９】
前記非表示床面設定手段が、前記移動体の移動速度に基づいて前記床面の傾斜角度を可変に設定するように前記コンピュータを機能させるための請求項８に記載のプログラム。
【請求項１０】
ゲームの難易度を設定する難易度設定手段として前記コンピュータを機能させ、
前記非表示床面設定手段が、前記難易度に基づいて前記床面の傾斜角度を可変に設定するように前記コンピュータを機能させるための請求項８又は９に記載のプログラム。
【請求項１１】
請求項１〜１０の何れか一項に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項１２】
仮想的な重力が設定された三次元仮想空間中を移動する移動体の画像を生成して所定のゲームを実行するゲーム装置であって、
ライン状の移動面を三次元仮想空間に設定する移動面設定手段と、
重力成分を含む所定の擬似物理法則及びプレーヤの方向指示操作に従って前記移動体の前記移動面上の移動制御を行う移動制御手段と、
前記移動体の前記移動面の幅方向における位置を中央寄りに向かわせるための補正力を算出する補正力算出手段と、
を備え、
前記移動制御手段が、前記補正力を用いて前記移動制御を補正するゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータに仮想的な重力が設定された三次元仮想空間中を移動する移動体の画像を生成して所定のゲームを実行させるためのプログラム等に関する。
【背景技術】
【０００２】
近年のビデオゲームの多くは、三次元仮想空間中に背景のオブジェクトを配置してゲーム空間を形成し、そこにプレーヤキャラクタやＮＰＣ（ノンプレイアブルキャラクタ）のオブジェクトを配置する。そして、それらキャラクタのオブジェクトをプレーヤによる操作入力や所定の思考ルーチンに基づくＡＩ制御によって移動・動作制御する。その様子を仮想カメラで撮影した画像をレンダリングしたゲーム空間画像が、ゲーム画面の元となる。
【０００３】
キャラクタの移動制御については、飛行タイプのキャラクタを除けば、地面や甲板、屋根などの移動面に沿って移動するように制御される。このとき、キャラクタと移動面との間でヒット判定が行われ、移動面とヒットしたと判定されるとそのキャラクタは移動面より先には移動できなくなる。これによって、キャラクタが地面に潜り込むように配置されないようにしている。こうしたキャラクタと移動面とのヒット判定は、「床ヒット判定」と呼ばれる。
【０００４】
また、キャラクタの移動制御では、キャラクタが建造物の壁面や崖などの立面に衝突してそれ以上先に進めないように制御されるが、これは「壁ヒット判定」と呼ばれる。
壁ヒット判定を容易にするために、移動面を、高さ方向をＹ軸とするゲーム空間座標系のＺＸ平面に見立て、Ｚ，Ｘの座標値で壁ヒット判定される境界を定義した「ヒットチェックマップ」とよばれるものを利用する手法が知られている。ヒットチェックマップを用いた壁ヒット判定では、プレーヤキャラクタ等のＺ，Ｘ座標値とヒットチェックマップに定義されている境界との衝突判定が行われる。見方を変えると、Ｚ，Ｘの座標値で移動面上の位置が定義されたＹ軸方向に無限の高さを有するヒット判定用の板状のモデルが配置されているとも言える。
【０００５】
この場合、Ｙ軸方向成分は衝突判定外となるので、プレーヤキャラクタがジャンプしたり、魔法やアイテムの作用で地面から浮かんでいる状態であっても、壁ヒット判定を行い所定の境界線より先には移動できないようにできる。
【０００６】
公知の技術では、このヒットチェックマップをテクスチャとして貼り付けたオブジェクトを配置して、ゲーム空間内におけるプレーヤキャラクタの相対位置を把握するための所謂「レーダー画面」として見せる技術も知られているところである（例えば、特許文献１を参照）。
【特許文献１】特許第３２１５３０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
さてここで、重力成分を含む所定の擬似物理法則に従い、三次元仮想空間中に配置された移動面に沿って移動するプレーヤキャラクタの移動や移動面からの落下を制御することを前提として、ブロック塀のように標準移動面（地面）よりも高い位置にあってキャラクタのサイズに比べて幅の狭いライン状で長尺な移動面を設定し、プレーヤキャラクタがその上をバランスをとりながら移動するシチュエーションの有るゲームを考える。例えば、プレーヤキャラクタをスノーボーダとしたスノーボードゲームで、レールやファンボックスの上面を移動面としてトリックプレイ可能にするゲームである。このようなゲームの場合、移動面の幅が狭いために、移動面の上でプレーヤキャラクタを上手く移動させることが難しい。
【０００８】
本発明は、上述した事情を鑑みてなされたものであり、その目的とするところは、移動体のサイズに比べて上面の幅が狭く、全体としてライン状を成した移動面上において、移動体の移動を適度にサポートして、当該移動面上での移動を比較的長期間可能にすることである。
【課題を解決するための手段】
【０００９】
上記の課題を解決する第１の発明は、コンピュータに、仮想的な重力が設定された三次元仮想空間中を移動する移動体（例えば、図２のプレーヤキャラクタ２）の画像を生成して所定のゲームを実行させるためのプログラムであって、
ライン状の移動面（例えば、図２のレール８の上面）を三次元仮想空間に設定する移動面設定手段（例えば、図６の処理部２００、ゲーム演算部２１０、図８のステップＳ４）、
重力成分を含む所定の擬似物理法則及びプレーヤの方向指示操作に従って前記移動体の前記移動面上の移動制御を行う移動制御手段（例えば、図６の処理部２００、ゲーム演算部２１０、ＰＣ動作制御部２１２、図８のステップＳ１２〜Ｓ１６）、
前記移動体の前記移動面の幅方向における位置を中央寄りに向かわせるための補正力を算出する補正力算出手段（例えば、図６の処理部２００、ゲーム演算部２１０、操作入力補正部２１４、図１０のステップＳ９０〜Ｓ９６）、
として前記コンピュータを機能させるとともに、前記移動制御手段が、前記補正力を用いて前記移動制御を補正するように前記コンピュータを機能させるためのプログラムである。
【００１０】
また、別形態として、仮想的な重力が設定された三次元仮想空間中を移動する移動体の画像を生成して所定のゲームを実行するゲーム装置であって、
ライン状の移動面を三次元仮想空間に設定する移動面設定手段（例えば、図１の制御ユニット１２１０、図６の処理部２００、ゲーム演算部２１０、図８のステップＳ４）と、
重力成分を含む所定の擬似物理法則及びプレーヤの方向指示操作に従って前記移動体の前記移動面の移動制御を行う移動制御手段（例えば、図１の制御ユニット１２１０、図６の処理部２００、ゲーム演算部２１０、ＰＣ動作制御部２１２、図８のステップＳ１２〜Ｓ１６）と、
前記移動体の前記移動面の幅方向における位置を中央寄りに向かわせるための補正力を算出する補正力算出手段（例えば、図１の制御ユニット１２１０、図６の処理部２００、ゲーム演算部２１０、操作入力補正部２１４、図１０のステップＳ９０〜Ｓ９６）と、
を備え、
前記移動制御手段が、前記補正力を用いて前記移動制御を補正するゲーム装置（例えば、図１の家庭用ゲーム装置１２００）として、実現しても良い。
【００１１】
第１の発明等によれば、ライン状の移動面を三次元仮想空間に設定し、重力成分を含む仮想の物理法則及びプレーヤの方向指示操作に従って移動体を移動面上を移動させることができる。一方、移動体の移動面の幅方向における位置を中央寄りに向かわせるための補正力を算出し、移動体の移動を制御することができる。よって、移動体が移動面の端から落ちるのを自動的に抑制し、移動体が移動面をより簡単に移動できるようにサポートすることができる。
【００１２】
第２の発明は、第１の発明のプログラムであって、前記補正力算出手段が、前記移動体の前記移動面の幅方向における位置が中央位置から離れるほど前記補正力を大きく算出するように前記コンピュータを機能させるためのプログラムである。
【００１３】
第２の発明によれば、第１の発明のプログラムと同様の効果を奏するとともに、移動体が移動面の端に寄るほど大きな補正力を作用させることができるので、中央位置からあまり離れていないときはプレーヤの操作のままに近い移動制御とし、端から落ちそうになると強力にサポートをすることで、より目立たずそれでいて効果的なサポートを実現することができる。
【００１４】
第３の発明は、第１又は第２の発明のプログラムであって、前記移動面に、前記移動面より幅広の非表示の床面（例えば、図３のレール床ヒット判定モデル２６）を設定する非表示床面設定手段（例えば、図６の処理部２００、ゲーム演算部２１０、図８のステップＳ４）、
前記床面を非表示として前記三次元仮想空間の画像を生成する画像生成手段（例えば、図６の処理部２００、画像生成部２６０、図８のステップＳ３２）、として前記コンピュータを機能させ、
前記移動制御手段が、前記移動体と前記床面とのヒット判定を行って前記移動体の移動制御を行うように前記コンピュータを機能させるためのプログラムである。
【００１５】
第３の発明によれば、第１又は第２の発明と同様の効果を奏するとともに、画面上に見えている移動面よりも幅広で非表示の床面を設定し、この床面とのヒット判定に基づいて移動体の移動制御をすることができる。よって、見えない床面で移動面の実質的な幅を大きくすることで、見かけより移動体がより移動面を移動しやすいようにできる。
【００１６】
第４の発明は、第３の発明のプログラムであって、前記床面の縁部に前記移動体が位置していることを検出する縁部移動中検出手段（例えば、図６の処理部２００、ゲーム演算部２１０、図９のステップＳ６８）、
前記縁部移動中検出手段による検出がなされた場合に、前記移動体に、落下の恐れを報知するための挙動として予め定められた落下前兆挙動を行わせる落下前兆挙動実行制御手段（例えば、図６の処理部２００、ゲーム演算部２１０、図９のステップＳ７６）、として前記コンピュータを機能させるためのプログラムである。
【００１７】
ここで言う「落下前兆挙動」とは、移動面の端から落ちそうになっていることを示す移動体の通常移動状態とは異なる特徴的な挙動である。例えば、移動体が人間タイプのキャラクタであれば、平均台から落ちそうになった時に手を左右に広げたり、腰の位置を移動させてバランスをとろうとするアクションなどがこれに該当する。或いは、エアカーなどのＳＦマシンであれば、機体姿勢がふらついたり、落ちないように姿勢制御用の噴射装置を作動させたり、といった挙動がこれに該当する。
【００１８】
第４の発明によれば、第３の発明と同様の効果を奏するとともに、プレーヤに移動面から落ちそうであることを明確に通知するとともに、落ちそうな感覚を表現してレール状で細長い移動面を移動するハラハラ感をより豊かに演出することができる。
【００１９】
第５の発明は、第３又は第４の発明のプログラムであって、前記床面の縁部に、前記移動面の幅方向への移動力を低減させる低減領域（例えば、図１１〜図１４の左減衰領域、右減衰領域）を設定する低減領域設定手段（例えば、図６の処理部２００、ゲーム演算部２１０、図１１〜図１４の減衰比設定データ５２６−１〜５２６−４）として前記コンピュータを機能させ、
前記移動制御手段が、前記移動体が前記低減領域に位置している場合には、前記移動体の前記幅方向への移動力を低減させて前記移動体の移動制御を行うように前記コンピュータを機能させるプログラムである。
【００２０】
第５の発明によれば、第３又は第４の発明と同様の効果を奏するとともに、移動体が移動面の縁に移動した場合に、移動面の幅方向への速度成分を低減して、外へ出難く（移動面から落下させ難く）することができる。よって、より効果的に移動体をサポートできる。
【００２１】
第６の発明は、第５の発明のプログラムであって、前記低減領域設定手段が、前記幅方向の大きさを可変して前記低減領域を設定するように前記コンピュータを機能させるためプログラムである。
【００２２】
第６の発明によれば、第５の発明と同様の効果を奏するとともに、低減領域の設定を可変することができるので、サポートの方法に多様性を持たせることができる。
【００２３】
第７の発明は、第５又は第６の発明のプログラムであって、前記移動制御手段が、前記移動体が前記低減領域に位置している場合に、前記移動体の前記幅方向への移動力の低減量又は低減率を、前記床面の端面に近づくほど大きくさせて前記移動体を移動制御するように前記コンピュータを機能させるためのプログラムである。
【００２４】
第７の発明によれば、第５又は第６の発明と同様の効果を奏するとともに、移動体が移動面の横端へ近づくほど幅方向への移動力を低減できるので、ぎりぎりで移動体が移動面から落ちないように踏ん張るといった制御が可能となる。
【００２５】
第８の発明は、第３〜第７の何れかの発明のプログラムであって、前記非表示床面設定手段が、前記床面の縁部を傾斜させて設定し、前記移動制御手段が、前記移動体が位置する前記床面の傾斜を考慮して前記移動体を移動制御する、ように前記コンピュータを機能させるためのプログラムである。
【００２６】
第８の発明によれば、第３〜第７の発明の何れかと同様の効果を奏するとともに、床面の縁部に移動体が乗っているとその傾斜の影響で、自然と移動面の外に向けて移動するように制御することができる。よって、ともすれば幅の狭いところを通過しようとするとき、その端に吸い寄せられる感じで落ちそうになる感覚をゲームで再現することができる。
【００２７】
第９の発明は、第８の発明のプログラムであって、前記非表示床面設定手段が、前記移動体の移動速度に基づいて前記床面の傾斜角度を可変に設定するように前記コンピュータを機能させるためのプログラムである。
【００２８】
第９の発明によれば、第８の発明と同様の効果を奏するとともに、移動体の速度に応じて床面の縁の傾斜角度を変えることで、さらにその効果を高めることができる。
【００２９】
第１０の発明は、第８又は第９の発明のプログラムであって、ゲームの難易度を設定する難易度設定手段（例えば、図６の処理部２００、ゲーム演算部２１０、記憶部５００、難易度設定５４２、図８のステップＳ２）として前記コンピュータを機能させ、
前記非表示床面設定手段が、前記難易度に基づいて前記床面の傾斜角度を可変に設定するように前記コンピュータを機能させるためのプログラムである。
【００３０】
第１０の発明によれば、第８又は第９の発明と同様の効果を奏するとともに、ゲーム難易度に応じて床面の縁の傾斜角度を変えることができるので、より一層その効果を高めることができる。
【００３１】
第１１発明は、第１〜第１０の発明の何れかのプログラムを記憶したコンピュータ読取可能な情報記憶媒体である。ここで言う「情報記憶媒体」とは、例えば磁気ディスクや光学ディスク、ＩＣメモリなどを含む。第１１の発明によれば、第１〜第１０の発明の何れかのプログラムをコンピュータに読み取らせて実行させることによって、コンピュータに第１〜第１０の発明の何れかと同様の効果を発揮させることができる。
【発明を実施するための最良の形態】
【００３２】
〔第１実施形態〕
次に、第１実施形態として、本発明を適用したゲーム装置として家庭用ゲーム装置を挙げ、スノーボードゲームを実行する例を説明する。
【００３３】
［ゲーム装置の構成］
図１は、本実施形態における家庭用ゲーム装置の構成例を説明するシステム構成図である。同図に示すように、家庭用ゲーム装置１２００は、ゲーム装置本体１２０１と、ゲームコントローラ１２３０と、ビデオモニタ１２２０とを備える。
【００３４】
ゲーム装置本体１２０１は、例えばＣＰＵや画像処理用ＬＳＩ、ＩＣメモリ等が実装された制御ユニット１２１０と、光学ディスク１２０２やメモリカード１２０４といった情報記憶媒体の読み取り装置１２０６，１２０８とを備える。そして、家庭用ゲーム装置１２００は、光学ディスク１２０２やメモリカード１２０４からゲームプログラム及び各種設定データを読み出し、ゲームコントローラ１２３０に為される操作入力に基づいて制御ユニット１２１０が各種のゲーム演算を実行してビデオゲームを実行する。
【００３５】
制御ユニット１２１０は、ＣＰＵ（Central Processing Unit）やＧＰＵ（Graphics Processing Unit）及びＤＳＰ（Digital Signal Processor）などの各種マイクロプロセッサ、ＡＳＩＣ(Application Specific Integrated Circuit)、ＩＣメモリなどの電気電子機器を備え家庭用ゲーム装置１２００の各部を制御する。また、制御ユニット１２１０は、インターネットやＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）と言った通信回線１と接続して外部装置との間でデータ通信を実現する通信装置１２１２を備える。
【００３６】
ゲームコントローラ１２３０は、選択の決定やキャンセル、タイミングの入力などに用いられるコントローラ上面に設けられたプッシュボタン１２３２と、左右の前側面に設けられたプッシュボタン１２３３Ｒ，１２３３Ｌと、図で言うところの上下左右の各方向を単独入力するための方向入力キー１２３４と、右アナログレバー１２３６Ｒと、左アナログレバー１２３６Ｌとを備える。
【００３７】
右アナログレバー１２３６Ｒ及び左アナログレバー１２３６Ｌは、図で言うところの上下方向と左右方向の２軸方向を同時入力可能な方向入力デバイスである。通常はゲームコントローラ１２３０を左右の手で把持し、レバーにそれぞれ親指を添えて操作する。レバーを倒すことによって２軸成分を含む任意の方向入力と、レバーの傾倒量に応じた任意操作量を入力することができる。また、何れのアナログレバーも、操作入力していない中立状態からレバーの軸方向に押し込むことでプッシュスイッチとして使用することもできる。
【００３８】
本実施形態では、プッシュボタン１２３２でプレーヤキャラクタであるスノーボーダの加速や減速操作を入力し、方向入力キー１２３４或いは左アナログレバー１２３６Ｌの左右入力で左右のターン操作を入力する。
【００３９】
ゲーム装置本体１２０１の制御ユニット１２１０は、ゲームコントローラ１２３０から受信した検出信号や操作入力信号に基づいてゲーム画像やゲーム音を生成してビデオゲームを実行する。生成されたゲーム画像やゲーム音は、信号ケーブル１２０９で接続されたビデオモニタ１２２０（ディスプレイモニタ）に出力される。ビデオモニタ１２２０には、画像を表示するフラットパネルディスプレイ１２２２と音声を放音するスピーカ１２２４とが備えられており、プレーヤはフラットパネルディスプレイ１２２２に映し出されるゲーム画像を見ながら、スピーカ１２２４から放音されるゲーム音を聞きつつゲームをプレイする。
【００４０】
尚、本実施形態では、必要なプログラムや各種設定データを光学ディスク１２０２やメモリカード１２０４から読み出す構成としているが、制御ユニット１２１０の通信装置１２１２でインターネットやＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）などの有線／無線の通信回線１に接続して外部の装置からダウンロードする構成としても良い。
【００４１】
［ゲームの概要の説明］
次に、図２は本実施形態におけるスノーボードゲームの概要を説明するための図である。本実施形態におけるスノーボードゲームでは、３次元仮想空間内にゲーム空間として仮想のスキー場やスノーボードパークが形成されており、プレーヤはその中でスノーホーダのプレーヤキャラクタ２を操作して、雪面６やレール８を滑ってバーチャルスノーボードを楽しむことができる。雪面６の所々には、スペシャルアイテム９も設定される。プレーヤキャラクタ２をスペシャルアイテム９に当てると、そのアイテムを取得することができる。本実施形態では、スペシャルアイテム９を取得するとレール８に乗りやすくなる効果が得られる。
【００４２】
レール８は、雪面６よりも局所的に高い人工的な滑走面を形成する構造体であり、雪面６の随所に局所的に設けられている。レール８の外形は、その名が示す通り斜面下り方向に長いが幅が狭く、上面が平坦なブロック塀に類似する。レール８の上面位置は、斜面の上流側では雪面６に殆ど等しく、斜面下流側では雪面６よりプレーヤキャラクタ２の身長程高い位置にある。スノーボード用語では「ハンドレール」や「ファンボックス」などと呼ばれる構造物に相当する。尚、本実施形態ではレール８を上面視矩形或いは帯状の長尺構造体としているが、上面視正方形や円などの対象形であっても良いのは勿論である。更には、移動面を設けるオブジェクトは、レール８のような固定構造体という設定に限らず、牛や馬、人、トラックの荷台など可動或いは可動する可能性のあるものに設定することもできる。
【００４３】
プレーヤキャラクタ２をレール８の上を滑らせるには、図中のルート１０のように、雪面６をレール８のライン上に滑り降りてレール８の上面にプレーヤキャラクタ２を乗せるか、ルート１２の様に、レール８の側方よりアプローチしてタイミング良くプレーヤキャラクタ２をジャンプさせて乗せるかする。そして、レール８の上をバランスをとりながら滑走するプレイを楽しむ。
【００４４】
［レールに係るヒット判定］
図３は、本実施形態におけるレール８に係るモデルの構成と配置の例を示す概略斜視図である。同図に示すように、Ｙ軸を高さ方向とするＸＹＺの直交３軸を有するゲーム空間座標には、雪面６の斜面を形成する表示用モデルである雪面モデル２０がＺＸ平面方向に設けられ、その上面には、プレーヤキャラクタ２が雪面６の上を滑走する際の位置を決定するための不可視（非表示）の通常床ヒット判定モデル２２が設定されている。プレーヤキャラクタ２は、通常床ヒット判定モデル２２に当たる事で、それ以上下方には移動されず、見かけ上は雪面６にもぐりこまないようになっている。尚、図中では、見やすくするために両者の間に意図的に間隙を設けて図示しているが、実際には雪面モデル２０の上面と通常床ヒット判定モデル２２は同じ位置に設定されているものとする。
【００４５】
雪面モデル２０の上面には、レール８の表示用モデルであるレールモデル２４が配置されており、その上面にはプレーヤキャラクタ２がレール８の上を滑走する際の位置を決定するための不可視（非表示）のレール床ヒット判定モデル２６が設定されている。レール床ヒット判定モデル２６は、レールモデル２４の上面と同サイズの平板ポリゴン２６ａの全周に、斜め下向きの斜面ポリゴン２６ｂが連結されて成り、縁の有る皿を逆さまにした状態とも言える。尚、図中では、レール床ヒット判定モデル２６も、図の見やすさの観点からレールモデル２４の上面からやや浮いた位置に図示しているが、実際には同上面と同じ高さに設けられているものとする。
【００４６】
さて、レール８は、実際のそれと同じように雪面６の傾斜方向に沿って長尺で、雪面６と同様に傾斜した構造体である。その上面の幅方向の長さは、プレーヤキャラクタ２が履くスノーボードの全長よりも短い。その為、レール８から落ちないようにバランスをとりながら滑走させないと、レール８の最後まで辿り着けない。
そこで本実施形態では、レール８の上に乗っているプレーヤキャラクタ２がレール８の上から落ちにくくするようにその移動方向を補正する。
【００４７】
図４は、本実施形態におけるプレーヤキャラクタ２の移動方向の補正の原理を説明するための図である。レール８は図面に向かって右方向に傾斜しており、プレーヤキャラクタ２は図の左から右へレール８の傾斜方向Ｖｓに向かって傾斜ポリゴン２６ｂ上を滑っている。
【００４８】
プレーヤキャラクタ２は、傾斜ポリゴン２６ｂ上を滑走することで自重によってレール８の中心から外れる方向に向く力を受け、移動ベクトルＶ（その大きさで速度又は加速度を、向きで移動方向を規定するベクトル）がレール８の外向きを成している。プレーヤがなにも操作入力をしなければ、やがてプレーヤキャラクタ２はレール８から外れて雪面６に落ちることになる。つまり、レール８の端では徐々にレール８から落ちそうになる感じが斜面ポリゴン２６ｂによってリアルに再現されている。
【００４９】
さて、同図に示す状態では、プレーヤは当然プレーヤキャラクタ２をレール８の内側方向へ向けたいが、勢い余って反対側の端から落ちないように細かなターン操作（方向操作）をする必要がある。しかし、幅の狭いレール８を滑走するシチュエーション特有の緊張から、操作に不慣れなプレーヤがそう易々と細かなターン操作ができるものではなく、多くの場合プレーヤキャラクタ２は折角乗ったレール８から落ちてしまうことになる。そこで本実施形態では、プレーヤキャラクタ２をレール８から落ちにくくするように自動的にプレーヤキャラクタ２の移動方向の補正を行い、プレーヤキャラクタ２のレール８上の移動をサポートし、比較的長期間のレール８上の移動を可能ならしめる。
【００５０】
具体的には、プレーヤキャラクタ２の代表点ＧのＺＸ座標値からレール床ヒット判定モデル２６の相対位置を求め、プレーヤキャラクタ２が乗っているレール床ヒット判定モデル２６の位置に応じて補正力Ｆを算出する。そして、プレーヤキャラクタ２にこの補正力Ｆを作用させる。結果、プレーヤキャラクタ２は補正後移動ベクトルＶｒで移動し、レール８の内側方向へ向かう。
【００５１】
補正力Ｆは、基本値Ｆｒｎ（ｎは設定領域を示す添字）と、プレーヤキャラクタ２の状態に応じて決定される係数ｋ３と係数ｋ４とが乗算されて算出される。
基本値Ｆｒｎは、レール床ヒット判定モデル２６に設けられた領域毎に予め設定されている。本実施形態では、レール８の長手方向（基準方向）でもある傾斜方向に向かって中央及びその左右に帯状の領域を設定する。図４の例では、平板ポリゴン２６ａと傾斜ポリゴン２６ｂとで領域が分けられており、傾斜方向（図の右方向）に向かって左側の傾斜ポリゴン２６ｂの領域には傾斜方向に向かって右向きの基本値Ｆｒ１、右側の傾斜ポリゴン２６ｂの領域には傾斜方向に向かって左向きの基本値Ｆｒ２がそれぞれ設定されている。そして、中央の平板ポリゴン２６ａの領域の基本値Ｆｒ０には「０」が設定されている。
【００５２】
係数ｋ３は、プレーヤキャラクタ２の動作状態に応じて選択される。同図の例では、プレーヤキャラクタ２はスノーボードの技であるトリックアクションが行われていれば「１」以上の値（例えば、１．２）が選択され、行われていなければ「１」が選択される。
勿論、トリックアクションの種類に応じて異なる値が選択される構成としても良い。
【００５３】
係数ｋ４は、プレーヤキャラクタ２のアイテムの所持状況に応じて選択される。図４の例では、スペシャルアイテム９を所持していない場合には「１」、所持している場合には「１」以上の値（例えば、１．５）が選択される。
【００５４】
つまり、補正力Ｆの基本的な補正方向及びその強度は、プレーヤキャラクタ２がレール床ヒット判定モデル２６のどこを滑っているかに応じて決定されるが、プレーヤキャラクタ２の動作状態やアイテムの所持状態に応じて補正強度が可変される。
【００５５】
図５は、本実施形態におけるレール床ヒット判定モデル２６の各領域設定に対する補正力の基本値Ｆｒｎの設定例を示す図である。本実施形態では、ゲーム開始前にプレーヤが設定するゲーム難易度に応じて選択される複数種類（低難易度と高難易度）の設定が用意される。
【００５６】
先ず、基本的な領域の分布であるが、レール８の長手方向に沿って中央か左右へ５分割されている（図５では、網掛けの種類で区分して示している）。中央領域は平板ポリゴン２６ａに該当する部分である。左右の領域は、左右それぞれの傾斜ポリゴン２６ｂを左右中央から更に２分割した領域に分けられている。
【００５７】
そして、低難易度向けの設定では、図５（ａ）に示すように、中央から離れた領域ほど基本値Ｆｒｎ（Ｆｒ１０＜Ｆｒ１１，Ｆｒ１２＜Ｆｒ１３、矢印の長さが大きさを表す）が大きく設定されている。中央の領域には基本値Ｆｒ０として「０」が設定されている（図中では黒丸表示）。
高難易度向けの設定では、図５（ｂ）に示すように、左右両端の領域にのみ基本値Ｆｒ１５，Ｆｒ１７が設定されており、その大きさも低難易度設定の同位置の領域の基本値Ｆｒ１１，Ｆｒ１３よりも小さく設定されている。
【００５８】
尚、基本値Ｆｒｎの設定領域は、図４や図５の例に限らず、分割形状や分割数などは適宜設定することができる。
【００５９】
［機能ブロックの説明］
次に、上述のようなゲームを実現するための具体的な構成について説明する。
図６は、本実施形態における家庭用ゲーム装置１２００の機能構成の一例を示す機能ブロック図である。同図に示すように本実施形態では、操作入力部１００と、処理部２００と、音出力部３５０と、画像表示部３６０と、通信部３７０と、記憶部５００とを備える。
【００６０】
操作入力部１００は、プッシュボタンや、レバー、タッチパッド、ダイヤル、キーボード、マウス、各種ポインタ、加速度センサ、傾斜センサなどの入力デバイスやセンサ類によって実現され、プレーヤによって為された各種の操作入力に応じて操作入力信号を処理部２００に出力する。図１のゲームコントローラ１２３０が操作入力部１００に該当する。
【００６１】
処理部２００は、例えばマイクロプロセッサやＡＳＩＣ（特定用途向け集積回路）、ＩＣメモリなどの電子部品によって実現され、各機能部との間でデータの入出力を行うとともに所定のプログラムやデータ及び操作入力部１００からの操作入力信号に基づいて各種の演算処理を実行して、家庭用ゲーム装置１２００の動作を制御する。図１では、ゲーム装置本体１２０１に内蔵された制御ユニット１２１０が処理部２００に該当する。
【００６２】
そして、本実施形態における処理部２００は、ゲーム演算部２１０と、音生成部２５０と、画像生成部２６０と、通信制御部２７０とを備える。
【００６３】
ゲーム演算部２１０は、ゲームの進行に係る処理を実行する。例えば、ゲーム開始前のゲームの難易度設定をプレーヤに選択させる処理、雪面６やレール８、スペシャルアイテム９などのオブジェクトを配置したりレール床ヒット判定モデル２６などの不可視（非表示）のヒット判定モデルを配置するなどして３次元仮想空間中にゲーム空間を形成する処理、ゲーム空間中に配置されたオブジェクトの動作制御処理、ヒット判定処理、物理演算処理、ゲーム結果の判定処理などが実行対象に含まれる。
【００６４】
より具体的には、本実施形態のゲーム演算部２１０は、ＰＣ（プレーヤキャラクタ）動作制御部２１２と、操作入力補正部２１４とを含んでいる。
【００６５】
ＰＣ動作制御部２１２は、操作入力部１００に為された操作入力に基づいてプレーヤキャラクタ２の加速・減速・ターン・ジャンプ・トリックアクションといった動作制御を行う。本実施形態は、プレーヤキャラクタ２はスノーボードを履くので、トリックアクションとしては、インディ、トゥウィーク、ワンエイティなどがこれに当たる。
【００６６】
操作入力補正部２１４は、プレーヤキャラクタ２がレール８の上を滑走している間、プレーヤキャラクタ２がレール８の上面から外れて落下するのを抑制するように、その移動方向がレール８の内側方向へ向くように補正する。具体的には、補正力Ｆを算出し、プレーヤキャラクタ２の移動ベクトルに作用させることでプレーヤキャラクタ２の移動動作を補正する。なお、補正力Ｆをプレーヤキャラクタ２の移動ベクトルに作用させるのではなく、補正力Ｆに相当する操作入力（例えば移動方向の操作入力）がなされたものとみなして、プレーヤキャラクタ２の移動動作を補正することとしてもよい。何れにせよ、補正力Ｆをプレーヤキャラクタ２に作用させることになる。
【００６７】
補正力Ｆの算出方法は次の通りである。すなわち、プレーヤキャラクタ２の代表点ＧのＺＸ平面座標が、レール床ヒット判定モデル２６のどの領域に該当するかを判定する。そして、判定した領域に予め設定されている補正の基本値Ｆｒｎに、プレーヤキャラクタ２の動作状況に応じて選択される係数ｋ３と、アイテムの所持状態に応じて選択される係数ｋ４とを乗算して、補正力Ｆを算出する。そして、補正力Ｆでプレーヤキャラクタ２の動作を自動補正する。
【００６８】
音生成部２５０は、例えばデジタルシグナルプロセッサ（ＤＳＰ）などのプロセッサやその制御プログラムなどの公知技術によって実現され、ゲーム演算部２１０による処理結果に基づいてゲームに係る効果音やＢＧＭ、各種操作音の音信号を生成し、音出力部３５０に出力する。
【００６９】
音出力部３５０は、音生成部２５０から入力される音信号に基づいて効果音やＢＧＭ等を音出力する装置によって実現される。図１ではビデオモニタ１２２０のスピーカ１２２４がこれに該当する。
【００７０】
画像生成部２６０は、例えば、デジタルシグナルプロセッサ（ＤＳＰ）などのプロセッサ、その制御プログラム、フレームバッファ等の描画フレーム用ＩＣメモリ等の公知技術によって実現される。例えば画像生成部２６０は、ゲーム演算部２１０による処理結果に基づいて１フレーム時間（１／６０秒）で１枚のゲーム画像を生成し、生成したゲーム画像の画像信号を画像表示部３６０に出力する。
【００７１】
画像表示部３６０は、画像生成部２６０から入力される画像信号に基づいて各種ゲーム画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管（ＣＲＴ）、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。図１ではビデオモニタ１２２０のフラットパネルディスプレイ１２２２が該当する。
【００７２】
通信制御部２７０は、データ通信に係るデータ処理を実行し、通信部３７０を介して外部装置とのデータのやりとりを実現する。
【００７３】
通信部３７０は、通信回線１と接続して通信を実現する。例えば、無線通信機、モデム、ＴＡ（ターミナルアダプタ）、有線用の通信ケーブルのジャックや制御回路等によって実現され、図１では通信装置１２１２がこれに該当する。
【００７４】
記憶部５００は、予め定義されたプログラムやデータを記憶するとともに、処理部２００の作業領域として用いられて処理部２００が各種プログラムに従って実行した演算結果や操作入力部１００から入力される入力データ等を一時的に記憶する。この機能は、例えばＲＡＭやＲＯＭなどのＩＣメモリ、ハードディスク等の磁気ディスク、ＣＤ−ＲＯＭやＤＶＤなどの光学ディスクなどによって実現される。
【００７５】
本実施形態における記憶部５００は、処理部２００にゲーム装置１２００を統合的に制御させるための諸機能を実現するためのシステムプログラム５０２や、ゲームを実行させるために必要なゲームプログラム５０４、並びに各種データ等を記憶する。処理部２００がゲームプログラム５０４を読み出して実行することによって、処理部２００にゲーム演算部２１０としての機能を実現させることができる。
【００７６】
また記憶部５００には、予め用意されるデータとしてゲーム空間設定データ５１０と、キャラクタ初期設定データ５５０とを記憶する。更にゲームの進行に伴って生成され、随時書き換えられるデータとして、キャラクタステータスデータ５３０と、ゲームの難易度設定５４２とが記憶される。また、ゲームの進行に係る処理を実行するに当たり必要となる情報として、例えば仮想カメラを制御するための画角・視線方向・姿勢情報などのデータ、各種制限時間のカウントデータなどが適宜記憶される。
【００７７】
ゲーム空間設定データ５１０には、３次元仮想空間にゲーム空間を形成するための背景となるオブジェクトや各種アイテムのオブジェクトを配置・表示させるための各種データが格納されている。オブジェクトのモデリングデータや、テクスチャデータ、モーションデータ、初期配置位置データ、初期移動ベクトルなどがそれに当たる。
【００７８】
例えば、雪面６に係る各種データを格納する雪面モデルデータ５１２と、スペシャルアイテム９に係る各種データを格納するアイテムモデルデータ５１４と、レールモデルデータ５１６と、レール床ヒット判定モデルデータ５１８と、基準となるレール８での滑走方向を示す傾斜方向ベクトル５２０と、低難易度向け補正基本値設定５２２と、高難易度向け補正基本値設定５２４とを格納している。
【００７９】
低難易度向け補正基本値設定５２２は、例えば図７に示すように、レール床ヒット判定モデル２６に領域を設定する領域定義情報５２２ａと、当該領域の入力補正基本値５２２ｂとを対応付けて格納している。領域定義情報５２２ａは、各領域の頂点座標値が格納される。尚、高難易度向け補正基本値設定５２４も同様の構成を有する。
【００８０】
キャラクタ初期設定データ５５０には、プレーヤキャラクタ２の初期設定データが格納されている。具体的には、表示用モデル、テクスチャ、初期配置位置座標、最高速度や最高加速度、最大操舵角、ブレーキ性能などの能力パラメータ値の初期値が格納されている。プレーヤキャラクタ２のトリックアクションのモーションデータもここに含まれている。モーションデータとしては、通常の加速・減速・ターンのモーションを定義する標準滑走モーションデータ５５２と、トリックモーションデータ５５４と、ジャンプモーションデータ５５６と、レール８の縁にプレーヤキャラクタ２が乗っている場合に、両手を広げてバランスをとるようなアクション（落下前兆挙動）をするバランスモーションデータ５５８とを含む。
【００８１】
キャラクタステータスデータ５３０は、プレーヤキャラクタ２の現在の状態を表す情報が格納されている。例えばキャラクタＩＤ５３２と、現在位置５３４と、移動ベクトル５３６と、トリックアクションの動作制御に係るトリックの識別情報や実行中のモーションフレーム情報などを含むトリック制御データ５３８と、所持アイテムリスト５４０とが格納される。
【００８２】
［処理の流れの説明］
次に、本実施形態における処理の流れについて説明する。ここで説明される処理は、処理部２００がシステムプログラム５０２及びゲームプログラム５０４を実行することによって実現される。尚、ゲーム音に関する制御は公知のビデオゲームと同様に実現することができるので、ここでは説明を省略する。
【００８３】
図８は、本実施形態における主たる処理の流れについて説明するためのフローチャートである。先ず処理部２００は、所定の選択画面を表示させるなどの方法で公知のビデオゲームと同様にしてプレーヤにゲーム難易度の選択をさせる（ステップＳ２）。選択された難易度情報は、記憶部５００の難易度設定５４２として記憶される。
【００８４】
次に、処理部２００はゲーム空間設定データ５１０を参照して、３次元仮想空間内に雪面６やレール８といった背景オブジェクトを配置してゲーム空間を形成する（ステップＳ４：図２参照）。雪面６及びレール８に関しては、付属する不可視のヒット判定モデルも同時に設定される（図３参照）。
【００８５】
次いで、プレーヤキャラクタ初期設定データ５５０を参照し、プレーヤキャラクタ２のオブジェクトを所定のスタート位置に配置し、プレーヤキャラクタ２を撮影する仮想カメラを初期位置に配置し（ステップＳ６）、スペシャルアイテム９などプレーヤキャラクタ２が取得可能なアイテムのオブジェクトをゲーム空間に配置する（ステップＳ８）。尚、仮想カメラについては、公知のビデオゲームと同様の手法によって、プレーヤキャラクタ２の様子を撮影するように自動追尾制御されるものとし、説明は省略する。
【００８６】
ゲームがスタートされたならば（ステップＳ１０のＹＥＳ）、処理部２００はステップＳ１２〜Ｓ３６を画像表示部３６０のリフレッシュレート以下の制御サイクルで、ゲーム終了条件を満たすまで繰り返し実行する。
【００８７】
具体的には、処理部２００は先ず所定の疑似物理法則に従ってプレーヤキャラクタ２の移動ベクトルＶを算出する（ステップＳ１２）。つまり、雪面６やレール８の上面に乗ったプレーヤキャラクタ２が斜面を自重で徐々に加速して滑る移動ベクトルＶを仮想の重力環境下を想定してシミュレーションする。
【００８８】
次に、処理部２００は、操作入力部１００から加速・減速・ターン・ジャンプ・トリックアクション等の操作入力が有れば（ステップＳ１４のＹＥＳ）、その操作入力に応じて移動ベクトルＶを修正する（ステップＳ１６）。そして、モーション制御処理を実行する（ステップＳ２０）。
【００８９】
モーション制御処理では、例えば図９に示すように、トリックアクションの操作入力が有った場合（ステップＳ６０のＹＥＳ）、及び既に実行中のトリックアクションがある場合には（ステップＳ６２のＹＥＳ）、処理部２００はキャラクタ初期設定データ５５０のトリックモーションデータ５５４に従って、プレーヤキャラクタ２を今回の制御サイクル分だけ動作させる（ステップＳ７２）。
【００９０】
ジャンプの操作入力が有った場合（ステップＳ６４のＹＥＳ）、及び既に実行中のジャンプモーションがあれば（ステップＳ６６のＹＥＳ）、処理部２００はジャンプモーションデータ５５６に従って、プレーヤキャラクタ２に今回の制御サイクル分だけジャンプ動作をさせる（ステップＳ７４）。
【００９１】
また、プレーヤキャラクタがレール床ヒット判定モデル２６の傾斜ポリゴン２６ｂの部分を移動している場合には（ステップＳ６８のＹＥＳ）、バランスモーションデータ５５８に従って、プレーヤキャラクタ２に今回の制御サイクル分だけ、レール８から落ちそうになるのをバランスをとってリカバーしようとする動作をさせる（ステップＳ７６）。
そして、それら以外の場合には、プレーヤキャラクタ２が雪面６の上で加速・減速・ターン・停止といった標準的な滑走動作をするように今回の制御サイクル分だけ、対応する滑走動作の動作制御をさせる（ステップＳ７０）。
【００９２】
モーション制御処理を実行したならば、処理部２００は次に、プレーヤキャラクタ２が雪面６に配置されたアイテムのオブジェクトに接触したか否かを判定する（ステップＳ２４）。接触した場合（ステップＳ２４のＹＥＳ）、プレーヤキャラクタ２がアイテムの取得に成功したと判定して、アイテム取得処理を実行する（ステップＳ２６）。例えば、アイテムを拾い上げる動作をプレーヤキャラクタ２にさせたり、アイテム取得を知らせるアイコンのオブジェクトをゲーム空間内に所定時間配置するなどである。この時取得したアイテムの識別情報は、所持アイテムリスト５４０に格納される。
【００９３】
次いで、処理部２００はプレーヤキャラクタ２がレール８の上に乗っているかを判定する（ステップＳ２８）。プレーヤキャラクタ２の代表点ＧのＺＸ座標値が、レール床ヒット判定モデル２６のＺＸ座標範囲内に有れば、レール８の上に乗っていると判定して、処理部２００はレール移動補助処理を実行する（ステップＳ３０）。
【００９４】
レール移動補助処理では、例えば図１０に示すように、プレーヤキャラクタ２のレール床ヒット判定モデル２６の位置する領域を判定する（ステップＳ９０）。具体的には、現在の難易度設定５４２の設定に対応する低難易度向け補正基本値設定５２２又は高難易度向け補正基本値設定５２４を参照し、領域定義情報で定義されている各領域とプレーヤキャラクタ２のＺＸ座標を比較して領域を判定する。そして、該当する領域に設定されている入力補正の基本値Ｆｒｎを読み出す（ステップＳ９２：図４、図５参照）。
【００９５】
次いで、処理部２００は係数ｋ３及び係数ｋ４を選択し（ステップＳ９４）、補正力Ｆを算出する（ステップＳ９６）。そして、算出した補正力Ｆをプレーヤキャラクタ２の移動制御に適用して移動ベクトルＶを補正して（ステップＳ９８）、レール移動補助処理を終了する。
【００９６】
レール移動補助処理を終了したならば図８のフローチャートに戻って、次に、処理部２００は仮想カメラでゲーム空間中のプレーヤキャラクタ２の様子を撮影したゲーム空間画像をレンダリングして生成し、必要に応じてゲーム開始からの経過時間等の情報表示を合成してゲーム画面を生成する。そして、画像表示部３６０に表示させる（ステップＳ３２）。この時、レール床ヒット判定モデル２６は不可視設定（非表示）なので、ゲーム画面上には表示されない。
【００９７】
そして、ゲーム結果の算出を行う（ステップＳ３４）。ゲーム結果の算出では、プレーヤキャラクタ２が所定のゴール位置に到達した否かの判定や、上面を滑走できたレール８の数のカウント、プレイ可能時間の残時間の算出などを行う。
【００９８】
ゲーム結果が所定のゲーム終了条件を満たしていなければ（ステップＳ３６のＮＯ）、ステップＳ１０に戻る。一方、ゲーム結果がゲーム終了条件を満たしていれば（ステップＳ３６のＹＥＳ）、処理部２００は所定のゲーム終了の演出処理などを実行して（ステップＳ３８）、一連の処理を終了する。
【００９９】
以上、本実施形態によれば、標準の移動面（雪面６）の上方に設けられたライン状で長尺で狭幅の副移動面（レール８）の上を、移動体（プレーヤキャラクタ２）が落ちにくくなるようにその移動を補正することができ、副移動面上で比較的長期間の間移動し続けられるように移動体をサポートすることができる。従って、本実施形態のようにスノーボーダがレールの上をすべることのできるゲームでは、現実世界では難易度が高く、そうそう実現できないアクションを容易に実現させ、気軽にプロ並の腕を持ったスノーボーダの気分を楽しむことができる。
【０１００】
また、レール床ヒット判定モデル２６を、レールモデル２４の上面に当たる平板ポリゴン２６ａとその外周に設けられた傾斜ポリゴン２６ｂとで構成することで、プレーヤキャラクタ２がレール８の左右端に寄った場合にレール８から自然と外れやすく（落ちやすく）なるかのような作用効果を生む。例えば、狭幅のところをまっすぐに進もうとしても、左右端に位置がずれると、まるで吸い寄せられたかのように外へ外へと向かってしまうかのような感じをプレーヤキャラクタ２に感じさせることができる。それでいて、左右の端に寄っても自動的にプレーヤキャラクタ２がレール８の内側方向へ向くように補正されるので、細かなターン操作ができないプレーヤでも容易にスノーボードでレールやファンボックス上を滑るゲームプレイを楽しむことができる。
【０１０１】
尚、本実施形態ではプレーヤキャラクタ２の移動方向を補正する手法として、現在の移動ベクトルＶに補正力を合成して補正後の移動ベクトルＶｒを求める構成として説明したが、補正力を補正操作入力とし、補正力に相当する操作入力がなされることとしても良い。或いは、補正力を、移動ベクトルＶの方向を変更する回転力（回転角度）として求め、移動ベクトルＶを代表点Ｇ周りに回転補正する構成としても実質的には同じである。
【０１０２】
〔第２実施形態〕
次に、本発明を適用した第２実施形態について説明する。
本実施形態は、基本的には第１実施形態と同様に実現されるが、プレーヤキャラクタ２がレール８の左右方向へ移動する成分を減衰させることで、レール８から落下するまでの時間を稼いで、プレーヤが修正操作をする時間を作り出す機能を有する点が異なる。尚、ここでは第１実施形態との差異についてのみ述べることとし、第１実施形態と同様の構成要素については同じ符合を付与して説明は省略する。
【０１０３】
本実施形態では、記憶部５００に減衰比率設定データ５２６が予め複数記憶されている。一つの減衰比率設定データ５２６（５２６−１〜５２６−４）は、例えば、図１１〜図１４に示すように、適用ゲーム難易度５２６ａと、適用速度条件５２６ｂと、減衰領域定義情報５２６ｃに対応づけられた移動ベクトルＶのレール８の幅方向成分の低減量又は低減率に相当する減衰比５２６ｄが格納されている。
【０１０４】
適用ゲーム難易度５２６ａの設定は、ゲームスタート前にプレーヤが選択可能なレベルの数と同じだけ、本実施形態では「高」「低」の２種類設定される。
また、適用速度条件５２６ｂは、プレーヤキャラクタ２の移動ベクトルＶの速さ｜Ｖ｜の条件を示し、例えば所定の高速基準値Ｖｈに満たない「低速域」と同基準値以上の「高速域」との２種類が用意されている。
【０１０５】
本実施形態では、ゲーム難易度設定が「低」の減衰比設定データ５２６では、減衰比が設定されている領域のレール８の幅方向の大きさが、ゲーム難易度設定が「高」の減衰比設定データ５２６のそれよりも大きく設定されている。
【０１０６】
減衰領域定義情報５２６ｃは、レール床ヒット判定モデル２６の上面に減衰領域を定義する頂点情報を格納する。本実施形態では、大きく分けて主に平板ポリゴン２６ａ部分を中心に設定される中央減衰領域と、主に傾斜方向に向かって左側の傾斜ポリゴン２６ｂに設定される左減衰領域と、右側の傾斜ポリゴン２６ｂに設定される右減衰領域の３つを設ける。左減衰領域及び右減衰領域は、ゲーム難易度及び適用速度条件に応じて異なる大きさの領域が設定されている。
【０１０７】
図１５は、本実施形態におけるレール移動補助処理（レール移動補助処理Ｂ）の流れを説明するためのフローチャートである。
同処理は、基本的には第１実施形態のレール移動補助処理と同じ流れを有するが、以下の点で異なる。すなわち、ステップＳ９０の前段階で、現在のゲーム難易度と移動ベクトルＶの大きさ（速さ｜Ｖ｜）に対応する減衰比設定データ５２６を選択し（ステップＳ８２）、その減衰領域定義情報５２６ｃとプレーヤキャラクタ２のＺＸ座標とを比較して、プレーヤキャラクタ２の乗っている減衰領域を判定する（ステップＳ８４）。そして、判定した減衰領域に対応づけられている減衰比５２６ｄを、現在の移動ベクトルＶのうちの、レール８の傾斜方向を基準方向とした左右方向（幅方向）の成分に乗算することで当該成分を補正して予備補正移動ベクトルＶ’を求める（ステップＳ８６）。
【０１０８】
また、第１実施形態のステップＳ９８に代えて、ステップＳ８６で求められた予備補正移動ベクトルＶ’にステップＳ９６で算出した補正力Ｆを適用して最終的な移動ベクトルＶｒを算出するステップとする（ステップＳ９７）。
【０１０９】
以上、本実施形態によれば、第１実施形態と同様の効果を奏するとともに、更にプレーヤキャラクタ２がレール８の左右の端に寄ると、左右方向に向かう速度成分を自動的に減衰させて、レール８の左右の端から落ちにくくできるので、レール８上でより長期間の間移動し続けられるように、効果的で自然なプレーヤ補助を実現することができる。
【０１１０】
尚、減衰領域の設定数は、３つに限らず適宜設定することができる。またその形状もレール床ヒット判定モデル２６の範囲内であれば、適宜変更できる。
また、減衰領域をゲーム難易度やプレーヤキャラクタ２の速度に応じて可変するようにしたが、可変に係るパラメータはこれらに限らない。例えば、過去のゲーム履歴から求められるプレーヤの習熟度レベル（場合によってはそれによって決定されるプレーヤキャラクタ２のレベル）や、ゲーム空間内での天候、プレーヤキャラクタ２が使用するスノーボードのターン性能レベル、特定アイテムの所持状態などを適用することもできる。
【０１１１】
〔変形例〕
以上、本発明を適用した２つの実施形態について説明したが、本発明の適用形態がこれに限定されるものではない。
【０１１２】
例えば、家庭用ゲーム装置１２００でビデオゲームを実行する構成を例に挙げたが、業務用のゲーム装置やパソコン、携帯型ゲーム装置などでゲームを実行することもできる。また、ゲームはスタンドアローンのゲーム装置で実行される場合に限らず、ネットワークゲーム（オンラインゲーム）であっても良い。
【０１１３】
また、ゲーム内容は、スノーボードを題材としたゲームに限らず、標準の移動面の上方に設けられた狭幅の副移動面の上を、移動体が落ちないように操作してクリアするシチュエーションが登場するゲームであれば、スキーゲームや、レースゲーム、ＲＰＧ、アクションゲームなどにも同様に適用できる。
【０１１４】
また、上記実施形態では、レール床ヒット判定モデル２６は単独のモデルとしているが、例えば図１６に示すように、縦断面視すると、傾斜ポリゴン２６ｂが上向きの特別レール床ヒット判定モデル２７を用意し、下向きのレール床ヒット判定モデル２６と合わせて使い分ける構成としても良い。
【０１１５】
具体的には、ゲーム難易度の設定が高い場合にはレール床ヒット判定モデル２６を使用し、難易度の設定が低い場合には特別レール床ヒット判定モデル２７を使用するとしても良い。この場合、特別レール床ヒット判定モデル２７では、プレーヤキャラクタ２の位置がレール８の上面から外れると、疑似物理演算の結果として自動的にプレーヤキャラクタ２をレール８の内側方向へ向ける力が作用するので、よりプレーヤキャラクタ２をレール８から落ちにくくすることができる。
【０１１６】
或いは、プレーヤキャラクタ２の移動ベクトルＶの大きさが所定の高速基準値に満たなければレール床ヒット判定モデル２６を使用し、高速基準値に達した場合には特別レール床ヒット判定モデル２７を使用するように、ゲーム進行中に判定モデルを切り換える構成としても良い。
【０１１７】
尚、特別レール床ヒット判定モデル２７とレールヒット判定モデル２６とでは、縁部の長さが異なるとしても良い。前者を長くすると実質的なレール８の上面幅を見かけより大きくできるのでよりプレーヤキャラクタ２がレール８から落ちにくくでき、好適である。また、縁部の角度を任意に変更可能としてもよい。その場合には、あるときは下向きとしてレールヒット判定モデル２６と同等とし、あるときは上向きとして特別レールヒット判定モデル２７と同等とし、またあるときは角度を無くしてレール面をフラットにして左右方向に幅広にした判定モデルにする、といった制御が可能となる。
【０１１８】
また、係数ｋ３や係数ｋ４を決定するのに利用したプレーヤキャラクタの状態を示すパラメータとしては、キャラクタのレベル（成長段階を示すレベルや、特定技能の習得レベル、ゲーム結果から決定されるプレーヤの習熟度から求められるレベルなど）、キャラクタの種類（性別、年齢、種族）、キャラクタの心理状態（例えば、標準／興奮など）を適宜利用することができる。
【０１１９】
例えば、ゲーム進行状態を示すパラメータの一つとして、キャラクタのレベルを適用する場合には、ステップＳ３８（図８参照）にて公知のビデオゲームと同様にして、今回のゲームプレイの結果を基にプレーヤキャラクタのレベルを決定し、ゲームプレイ履歴データとして記憶部５００に記憶保存する構成とする。加えて、ステップＳ３０の前にこのプレイ履歴データを参照するステップを設ける。そして、レール移動補助処理（図１０参照）を実行する際、ステップＳ９４にて参照したプレーヤキャラクタのレベルに応じて係数ｋ３を決定し、ステップＳ９６で補正ベクトル初期設定値Ｆｒｎに乗算する。係数ｋ３は、例えば所定の上級判定レベルに達していなければｋ３＝０．９、上級判定レベルに達していればｋ３＝０．６とする。よって、ゲームに習熟し上級レベルのプレーヤがプレイする場合には、補正力を意図的に弱めることで、相対的にゲームの難易度を高めて、プレーヤの技量に応じた「やりごたえ」を設定することができる。
【０１２０】
勿論、係数ｋ３や係数ｋ４を決定するのに利用したパラメータはプレーヤキャラクタの状態に限らない。例えば、特定操作入力の有無で係数値を変える構成としたり、プレーヤに操作課題を提示して課題をクリアできたか否かで係数値を変える構成とすることもできる。
具体的には、前者の場合では、ステップＳ９６（図１０参照）の前に、所定のプッシュスイッチ１２３２の連打入力や、右アナログレバー１２３６Ｒや左アナログレバー１２３６Ｌのすりこぎ運動入力といった特定操作入力の有無を判定するステップと、特定操作入力が有った場合に係数ｋ３を「１．２」とし、無い場合には係数ｋ３を「１．０」と決定するステップとを挿入すれば良い。また、後者の場合には、ステップＳ２８とステップＳ３０の間に（図８参照）、所定の課題（例えば、「５秒以内に１０回連打入力せよ！」）をゲーム画面に提示するステップと、課題提示後に課題のクリア可否判定するステップとを設ける。そして、課題クリアできたならば係数ｋ３を「１．２」とし、クリアできなかった場合には「１．０」と決定するステップをステップＳ９６の前に挿入すれば良い。
【０１２１】
また、設定する傾斜方向Ｖｓの方向は、一つに限らず複数設定することもできる。その場合には、ステップＳ９６の前に、複数設定されている傾斜方向Ｖｓの中から速度ベクトルＶと方向が近いベクトルを選択するステップを設け、ステップＳ９６ではこの選択されたベクトルを用いることとすればよい。
【図面の簡単な説明】
【０１２２】
【図１】家庭用ゲーム装置の構成例を示すシステム構成図。
【図２】スノーボードゲームの概要を説明するための図。
【図３】レールに係るモデルの構成と配置の例を示す概略斜視図。
【図４】プレーヤキャラクタの移動方向の補正の原理を説明するための図。
【図５】レール床ヒット判定モデルの領域設定と補正力の基本値の設定例を示す図。
【図６】家庭用ゲーム装置の機能構成の一例を示す機能ブロック図。
【図７】低難易度向け補正基本値設定のデータ構成例を示す図。
【図８】主たる処理の流れを説明するためのフローチャート。
【図９】モーション制御処理の流れを説明するためのフローチャート。
【図１０】レール移動補助処理の流れを説明するためのフローチャート。
【図１１】減衰比設定データのデータ構成例を示す図。
【図１２】減衰比設定データのデータ構成例を示す図。
【図１３】減衰比設定データのデータ構成例を示す図。
【図１４】減衰比設定データのデータ構成例を示す図。
【図１５】第２実施形態におけるレール移動補助処理の流れを説明するためのフローチャート。
【図１６】レール床ヒット判定モデルの変形例を示す図。
【符号の説明】
【０１２３】
２    プレーヤキャラクタ（ＰＣ）
６    雪面
２４    レールモデル
２６    レール床ヒット判定モデル
２６ａ    平板ポリゴン
２６ｂ    傾斜ポリゴン
１００    操作入力部
２００    処理部
２１０    ゲーム演算部
２１２    ＰＣ（プレーヤキャラクタ）動作制御部
２１４    操作入力補正部
２６０    画像生成部
３６０    画像表示部
５００    記憶部
５０４    ゲームプログラム
５１０    ゲーム空間設定データ
５１６    レールモデルデータ
５２２    低難易度向け補正基本値設定
５２４    高難易度向け補正基本値設定
５３０    キャラクタステータスデータ
５３６    移動ベクトル
５４０    所持アイテムリスト
５５０    キャラクタ初期設定データ
５５８    バランスモーションデータ 
【図１】
2010086432.tif 000003
【図２】
2010086432.tif 000004
【図３】
2010086432.tif 000005
【図４】
2010086432.tif 000006
【図５】
2010086432.tif 000007
【図６】
2010086432.tif 000008
【図７】
2010086432.tif 000009
【図８】
2010086432.tif 000010
【図９】
2010086432.tif 000011
【図１０】
2010086432.tif 000012
【図１１】
2010086432.tif 000013
【図１２】
2010086432.tif 000014
【図１３】
2010086432.tif 000015
【図１４】
2010086432.tif 000016
【図１５】
2010086432.tif 000017
【図１６】
2010086432.tif 000018