| 【発明の名称】 |
画像生成システム、プログラム及び情報記憶媒体 |
| 【発明者】 |
【氏名】加来 量一 【住所又は居所】東京都大田区多摩川2丁目8番5号 株式会社ナムコ内
【氏名】西村 典洋 【住所又は居所】東京都大田区多摩川2丁目8番5号 株式会社ナムコ内
|
| 【要約】 |
【課題】コスト高を抑え、精度よくプレーヤの操作状況を検出することができる入力インタフェースを用い、これまでにない多彩な操作による画像表現が可能な画像生成システム、プログラム及び情報記憶媒体を提供する。
【解決手段】第1及び第2のセンサ50、60によって形成され各位置が画面30上の各位置に1対1に対応付けられた第1及び第2のセンサ面52、62を刀型コントローラ40が横切る位置を検出する検出装置からの入力情報に基づき、画面30上での位置、単位時間あたりの位置の変化量、位置の変化量の絶対値、画面30に対する刀型コントローラ40の向きを求める。求めた位置、単位時間あたりの位置の変化量、位置の変化量の絶対値及び画面に対する向きのうちのいずれか1つに基づいて、エフェクト画像、効果音、及びエフェクト画像を変化させるためのパラメータのうち少なくとも1つを変化させて、刀型コントローラ40の操作者に対するエフェクトを変化させる。 |
【特許請求の範囲】
【請求項1】 画像生成を行う画像生成システムであって、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置又は画面上での位置の変化を求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置又は画面上での位置の変化に基づいて変化させる手段と、を含むことを特徴とする画像生成システム。 【請求項2】 画像生成を行う画像生成システムであって、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置及び画面上での位置の単位時間当たりの変化量のうち少なくとも1つを求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置及び画面上での位置の単位時間当たりの変化量のうちの少なくとも1つに基づいて変化させる手段と、を含むことを特徴とする画像生成システム。 【請求項3】 画像生成を行う画像生成システムであって、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置、該画面上での位置の単位時間当たりの変化量及び前記画面上での位置の変化量の絶対値の少なくとも1つを求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置、該画面上で位置の単位時間当たりの変化量及び前記画面上での位置の変化量の絶対値のうちの少なくとも1つに基づいて変化させる手段と、を含むことを特徴とする画像生成システム。 【請求項4】 画像生成を行う画像生成システムであって、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置、該画面上での位置の単位時間当たりの変化量、前記画面上での位置の変化量の絶対値及び前記被検出物の画面方向に対する向きの少なくとも1つを求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置、該画面上での位置の単位時間当たりの変化量、前記画面上での位置の変化量の絶対値及び前記被検出物の画面方向に対する向きのうちの少なくとも1つに基づいて変化させる手段と、を含むことを特徴とする画像生成システム。 【請求項5】 請求項2乃至4のいずれかにおいて、前記画面上での位置の単位時間当たりの変化量が所与の閾値以上のとき、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とする画像生成システム。 【請求項6】 請求項3又は4において、前記画面上での位置の変化量の絶対値が所与の閾値以上のとき、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とする画像生成システム。 【請求項7】 請求項4において、前記検出装置は、所与の間隔を置いて互いに平行な第1及び第2のセンサ面を形成する2組のセンサを含み、前記被検出物が前記第1及び第2のセンサ面を横切る位置を特定し、前記被検出物の画面方向に対する向きは、前記被検出物が前記第1及び第2のセンサ面を横切る第1及び第2の位置に基づいて求められることを特徴とする画像生成システム。 【請求項8】 請求項4又は7において、前記画面上での位置、前記画面上での位置の変化量の絶対値及び前記画面上での位置の変化の向きのうちの所与の組み合わせに対応して、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とする画像生成システム。 【請求項9】 請求項1乃至8のいずれかにおいて、前記画面上での位置が変化する向きに応じて、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とする画像生成システム。 【請求項10】 各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置又は画面上での位置の変化を求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置又は画面上での位置の変化に基づいて変化させる手段としてコンピュータを機能させることを特徴とするプログラム。 【請求項11】 各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置及び画面上での位置の単位時間当たりの変化量のうち少なくとも1つを求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置及び画面上での位置の単位時間当たりの変化量のうちの少なくとも1つに基づいて変化させる手段としてコンピュータを機能させることを特徴とするプログラム。 【請求項12】 各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置、該画面上での位置の単位時間当たりの変化量及び前記画面上での位置の変化量の絶対値の少なくとも1つを求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置、該画面上で位置の単位時間当たりの変化量及び前記画面上での位置の変化量の絶対値のうちの少なくとも1つに基づいて変化させる手段としてコンピュータを機能させることを特徴とするプログラム。 【請求項13】 各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置、該画面上での位置の単位時間当たりの変化量、前記画面上での位置の変化量の絶対値及び前記被検出物の画面方向に対する向きの少なくとも1つを求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置、該画面上での位置の単位時間当たりの変化量、前記画面上での位置の変化量の絶対値及び前記被検出物の画面方向に対する向きのうちの少なくとも1つに基づいて変化させる手段としてコンピュータを機能させることを特徴とするプログラム。 【請求項14】 請求項11乃至13のいずれかにおいて、前記画面上での位置の単位時間当たりの変化量が所与の閾値以上のとき、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とするプログラム。 【請求項15】 請求項12又は13において、前記画面上での位置の変化量の絶対値が所与の閾値以上のとき、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とするプログラム。 【請求項16】 請求項13において、前記検出装置は、所与の間隔を置いて互いに平行な第1及び第2のセンサ面を形成する2組のセンサを含み、前記被検出物が前記第1及び第2のセンサ面を横切る位置を特定し、前記被検出物の画面方向に対する向きは、前記被検出物が前記第1及び第2のセンサ面を横切る第1及び第2の位置に基づいて求められることを特徴とするプログラム。 【請求項17】 請求項13又は16において、前記画面上での位置、前記画面上での位置の変化量の絶対値及び前記画面上での位置の変化の向きのうちの所与の組み合わせに対応して、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とするプログラム。 【請求項18】 請求項10乃至17のいずれかにおいて、前記画面上での位置が変化する向きに応じて、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とするプログラム。 【請求項19】 コンピュータにより読み取り可能な情報記憶媒体であって、請求項10乃至18のいずれかのプログラムを記憶することを特徴とする情報記憶媒体。
|
【発明の詳細な説明】【0001】 【発明の属する技術分野】本発明は、画像生成システム、プログラム及び情報記憶媒体に関する。 【0002】 【背景技術及び発明が解決しようとする課題】従来より、仮想的な3次元空間であるオブジェクト空間内において仮想カメラ(所与の視点)から見える画像を生成する画像生成システム(ゲームシステム)が知られており、いわゆる仮想現実を体験できるものとして人気が高い。ガンゲームを楽しむことができる画像生成システムを例にとれば、プレーヤは、銃などを模して作られたガン型コントローラ(シューティングデバイス)を用いて、画面に映し出される敵キャラクタ(オブジェクト)などの標的オブジェクトをシューティングすることで、敵キャラクタとの間で攻防を繰り返すことができる3次元ゲームを楽しむ。 【0003】また、ガン型コントローラに限らず、プレーヤが刀や剣などの武器を操作入力部として用いて、画面上に現れる敵キャラクタと斬り合うことで3次元ゲームを楽しむことも考えることができる。この場合、プレーヤの仮想現実感を向上させるため、画面上の敵キャラクタを相手にリアルに斬り合う動作を入力するための入力インタフェース(入力装置、検出装置)が必要となる。この入力インタフェースは、プレーヤが操作する刀の位置や向き等を検出する必要がある。 【0004】このような入力インタフェースを実現する手法として、例えば刀型コントローラの各部にセンサを設けて、センサの検出情報からプレーヤの操作状況として刀の位置や向きを判別することが考えられる。 【0005】しかしながら、この手法では入力インタフェースとしてプレーヤが操作するコントローラのコスト高を招き、重量の点でリアルさに欠けてしまう場合もある。また、検出精度も悪いという問題がある。さらには、検出情報をシステム側に供給するための配線が必要となって操作性が劣化してしまい、敵キャラクタとの間で攻防を楽しむ面白みが半減してしまう可能性もある。 【0006】本発明は以上のような課題に鑑みてなされたものであり、その目的とするところは、コスト高を抑え、精度よくプレーヤの操作状況を検出することができる入力インタフェースを用い、これまでにない多彩な操作による画像表現が可能な画像生成システム、プログラム及び情報記憶媒体を提供することにある。 【0007】 【課題を解決するための手段】上記課題を解決するために、画像生成を行う画像生成システムであって、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置又は画面上での位置の変化を求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置又は画面上での位置の変化に基づいて変化させる手段とを含むことを特徴とする。また本発明に係るプログラムは、上記手段としてコンピュータを機能させることを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより読み取り可能な情報記憶媒体であって、上記手段としてコンピュータを機能させるプログラムを記憶することを特徴とする。 【0008】ここで、本発明は検出装置の検出原理には限定されるものではなく、被検出物を検出した検出装置からの入力情報にも限定されるものではない。 【0009】また、所与のパラメータとしては、例えば画面上に表示されるキャラクタに関連付けられたパラメータ(攻撃力、防御力や体力)などの画像若しくは音を変化させるためのパラメータがある。 【0010】本発明においては、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、表示部の画面上での位置又は画面上での位置の変化を求めるようにした。したがって、操作者のこれまでにない多彩な被検出物の操作(移動)による操作入力が可能となる。これにより、操作者の多彩な操作入力に対応して、画像や音、若しくは画像又は音を変化させるパラメータを変化させることで、操作者の多彩な操作入力を反映させたエフェクト効果を与えることができ、例えば従来にない仮想現実感の向上を図ることができる。 【0011】また本発明は、画像生成を行う画像生成システムであって、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置及び画面上での位置の単位時間当たりの変化量のうち少なくとも1つを求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置及び画面上での位置の単位時間当たりの変化量のうちの少なくとも1つに基づいて変化させる手段と、を含むことを特徴とする。また本発明に係るプログラムは、上記手段としてコンピュータを機能させることを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより読み取り可能な情報記憶媒体であって、上記手段としてコンピュータを機能させるプログラムを記憶することを特徴とする。 【0012】本発明においては、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、表示部の画面上での位置及び画面上での位置の単位時間当たりの変化量を求めるようにした。したがって、操作者のこれまでにない多彩な被検出物の操作(移動)による操作入力が可能となり、操作入力の速さに応じて画像や音、若しくは例えば画像又は音を変化させるパラメータを変化させることで、従来にないエフェクト効果を与えることができ、例えばより一層の仮想現実感の向上を図ることができる。 【0013】また本発明は、画像生成を行う画像生成システムであって、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置、該画面上での位置の単位時間当たりの変化量及び前記画面上での位置の変化量の絶対値の少なくとも1つを求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置、該画面上で位置の単位時間当たりの変化量及び前記画面上での位置の変化量の絶対値のうちの少なくとも1つに基づいて変化させる手段とを含むことを特徴とする。また本発明に係るプログラムは、上記手段としてコンピュータを機能させることを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより読み取り可能な情報記憶媒体であって、上記手段としてコンピュータを機能させるプログラムを記憶することを特徴とする。 【0014】本発明においては、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、表示部の画面上での位置、画面上での位置の単位時間当たりの変化量及び画面上での位置の変化量の絶対値を求めるようにした。したがって、操作者のこれまでにない多彩な被検出物の操作(移動)による操作入力が可能となり、操作入力の速さや操作入力により特定された位置の移動距離に応じて画像や音、若しくは例えば画像又は音を変化させるパラメータを変化させることで、従来にないエフェクト効果を与えることができ、例えばより一層の仮想現実感の向上を図ることができる。 【0015】また本発明は、画像生成を行う画像生成システムであって、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、前記画面上での位置、該画面上での位置の単位時間当たりの変化量、前記画面上での位置の変化量の絶対値及び前記被検出物の画面方向に対する向きの少なくとも1つを求める手段と、画像、音及び所与のパラメータのうち少なくとも1つを、求められた画面上での位置、該画面上での位置の単位時間当たりの変化量、前記画面上での位置の変化量の絶対値及び前記被検出物の画面方向に対する向きのうちの少なくとも1つに基づいて変化させる手段とを含むことを特徴とする。また本発明に係るプログラムは、上記手段としてコンピュータを機能させることを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより読み取り可能な情報記憶媒体であって、上記手段としてコンピュータを機能させるプログラムを記憶することを特徴とする。 【0016】本発明においては、各位置が表示部の画面上の位置に対応付けられたセンサ面を横切る被検出物を検出する検出装置からの入力情報に基づいて、表示部の画面上での位置、画面上での位置の単位時間当たりの変化量、画面上での位置の変化量の絶対値及びエリア内の被検出物の画面方向に対する向きを求めるようにした。したがって、操作者のこれまでにない多彩な被検出物の操作(移動)による操作入力が可能となり、操作入力により特定された位置の速さや操作入力により特定された位置の移動距離、操作者が画面に対して被検出物を向ける方向に応じて画像や音、若しくは例えば画像又は音を変化させるパラメータを変化させることで、従来にないエフェクト効果を与えることができ、例えばより一層の仮想現実感の向上を図ることができる。 【0017】また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、前記画面上での位置の単位時間当たりの変化量が所与の閾値以上のとき、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とする。 【0018】本発明によれば、操作者が、操作入力により特定された位置の速さに応じて画像等を変化させようとした場合に、意図しない操作入力を反映させることを防止することができるので、上述した多彩な操作入力により得られた仮想現実感の低下を回避することができる。 【0019】また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、前記画面上での位置の変化量の絶対値が所与の閾値以上のとき、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とする。 【0020】本発明によれば、操作者が、操作入力により特定された位置の移動距離に応じて画像等を変化させようとした場合に、意図しない操作入力を反映させることを防止することができるので、上述した多彩な操作入力により得られた仮想現実感の低下を回避することができる。 【0021】また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、前記検出装置は、所与の間隔を置いて互いに平行な第1及び第2のセンサ面を形成する2組のセンサを含み、前記被検出物が前記第1及び第2のセンサ面を横切る位置を特定し、前記被検出物の画面方向に対する向きは、前記被検出物が前記第1及び第2のセンサ面を横切る第1及び第2の位置に基づいて求められることを特徴とする。 【0022】本発明によれば、操作入力部に、画面上での位置を特定するための検出センサ等を具備させる必要がなくなるので、操作入力部の部品コストを削減することができる上に、操作入力部としてセンサ面を横切らせることができる物体であれば何でもよく、例えばプレーヤの身体の一部(プレーヤの拳、足、頭など)であってもよい。さらに、操作者にとって操作入力部の操作性を向上させることもできる。 【0023】また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、前記画面上での位置、前記画面上での位置の変化量の絶対値及び前記画面上での位置の変化の向きのうちの所与の組み合わせに対応して、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とする。 【0024】本発明によれば、多彩な操作入力の組み合わせに応じて画像等を変化させることができるので、エフェクトを与えるバリエーションを増加させることができる。 【0025】また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、前記画面上での位置が変化する向きに応じて、画像、音及び所与のパラメータのうち少なくとも1つを変化させることを特徴とする。 【0026】本発明によれば、例えば操作者の操作入力により画面上に表示された物体を斬りつける画像を生成する場合、これまでの操作入力では実現できなかった物体の「目」のように物体を斬ることができる向きと物体を斬ることができない向きとを、効果的に画像表現することができる。したがって、多彩な操作入力を反映しさせた効果的なエフェクトを得ることができる。 【0027】 【発明の実施の形態】以下、本発明の好適な実施形態について図面を用いて説明する。 【0028】なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を何ら限定するものではない。また本実施形態で説明される構成の全てが本発明の必須構成要件とは限らない。 【0029】また、以下に説明する実施形態では、プレーヤによって操作される刀型コントローラ(広義には、操作入力部、被検出物)の位置等を検出して、画面上に現れる敵キャラクタと斬り合う刀ゲームに適用した場合を例にとり説明するが、本発明はこれに限定されず、種々の画像生成システムに適用することができる。 【0030】1. 構成図1に、本実施形態の画像生成システムを業務用のゲームシステムに適用した場合の外観斜視図を模式的に示す。 【0031】このゲームシステム10では、本実施形態における画像生成システムにより生成された画像が、筐体20に収められた表示装置(表示部)の画面30に表示される。画面30は、所与のエリア内で操作入力部としての刀型コントローラ40を操作するプレーヤが注視できるように配置されている。以下では、画面30の横方向をx軸、画面30の縦方向をy軸、画面30に対して垂直な画面の奥行き方向をz軸とする。 【0032】ゲームシステム10は、プレーヤが操作する刀型コントローラ40を用いて、画面30に映し出される敵キャラクタ(オブジェクト)と斬り合うゲームを実現する。このゲームシステム10は、仮想現実感を向上させるため、プレーヤが操作する(例えば、振り回す)刀型コントローラ40の操作状況をそのまま反映させて、画面30に映し出される敵キャラクタを斬りつけたり、プレーヤに対して斬りつけようとする敵キャラクタに対して防御を行ったりして、攻防の駆け引きを楽しむことができるようになっている。 【0033】そのため、ゲームシステム10では、所与のエリア内でプレーヤによって操作される刀型コントローラ40の画面30での位置を検出し、その検出された位置に基づいてゲームのエフェクト効果(エフェクト画像(広義には、画像)、効果音(広義には、音)、振動、風、光などの各種エフェクト)を与えたり、プレーヤが操作するキャラクタの攻撃力や防御力などの能力値(広義には、エフェクト効果(画像、音、振動など)を変化させるためのパラメータ)を変化させるといったゲーム応答を変化させる処理を行う。 【0034】そこで、ゲームシステム10は、2つのタブレットセンサ(第1及び第2のセンサ)により形成される互いに平行な2つのセンサ面(広義には、エリア)を用いて、プレーヤが操作する刀型コントローラ40の位置や向き等を検出する検出装置(入力装置)を備えている。 【0035】この検出装置は、第1及び第2のセンサ50、60を含む。第1のセンサ50は、1組のセンサにより第1のセンサ面52を形成する。第1のセンサ面52の各位置は、画面30の各位置に1対1で対応付けられている。第2のセンサ60は、1組のセンサにより第2のセンサ面62を形成する。第2のセンサ面62の各位置は、画面30の各位置に1対1で対応付けられている。第1及び第2のセンサ面62は、所与の間隔dを置いて形成される。 【0036】第1のセンサ50は、プレーヤによって操作される刀型コントローラ(広義には、被検出物)40が第1のセンサ面52を横切る第1の位置を特定することができる。また、第2のセンサ60は、この刀型コントローラ(広義には、被検出物)40が第2のセンサ面62を横切る第2の位置を特定することができる。 【0037】本実施形態における画像生成システムは、第1及び第2のセンサ50、60によって特定された刀型コントローラ40の第1及び第2のセンサ面52、62における第1及び第2の位置(或いは、第1及び第2の位置を特定するための情報。広義には、検出装置からの入力情報)に基づいて、第1及び第2のセンサ面における刀型コントローラの位置に対応する画面30上での位置を特定する。そして、この特定された画面30上での位置に基づき、プレーヤに種々のエフェクト効果を与える処理等を行う。 【0038】こうすることで、本実施形態における画像生成システムでは、プレーヤが刀型コントローラ40を振った位置(画面30上での位置)や、振る速さ(広義には、単位時間当たりの位置の変化量)、振り幅(広義には、位置の変化量の絶対値)、振る向き(広義には、位置が変化する向き)或いは第1及び第2のセンサ面における刀型コントローラ40の画面方向に対する向き等に応じて、刀(剣)を用いたゲームとしてプレーヤが仮想現実感を向上させるようなエフェクト効果を適切に与えることができるようになる。 【0039】このように、第1及び第2のセンサ50、60により第1及び第2のセンサ面52、62を横切る第1及び第2の位置を、画面30上での位置に対応付けることができるため、プレーヤによって操作される刀型コントローラ40の各部にセンサを設ける必要がなくなる。したがって、プレーヤが操作する操作入力部としては、刀型コントローラに限定されるものではなく、センサ面を横切らせることができる物体であれば何でもよく、例えばプレーヤの身体の一部(プレーヤの拳、足、頭など)であってもよい。 【0040】すなわち、このようなセンサを用いることで、操作入力部の低コスト化が可能となるばかりでなく、操作入力部からの検出情報を筐体20に伝送するための配線を不要とすることができる。さらに、センサ面で特定した位置と画面30上での位置を精度よく特定することができる。 【0041】図2に、本実施形態における画像生成システムのブロック図の一例を示す。 【0042】なお図2において、本実施形態は少なくとも処理部100を含めばよく(或いは処理部100と入力情報受付部162と記憶部170、或いは処理部100と入力情報受付部162と記憶部170と情報記憶媒体180を含めばよく)、それ以外のブロック(例えば、操作部160、表示部190、音出力部192、携帯型情報記憶装置194、通信部196)については、任意の構成要素とすることができる。 【0043】ここで処理部100は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、又は音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ(CPU、DSP等)、或いはASIC(ゲートアレイ等)などのハードウェアや、所与のプログラム(ゲームプログラム)により実現できる。 【0044】操作部160は、プレーヤがゲームの設定などを行う操作データを入力するためのものであり、その機能は、レバー、ボタン、筐体などのハードウェアにより実現できる。 【0045】入力情報受付部162は、プレーヤが操作する操作部160とは別の刀型コントローラ等の操作入力部の操作状況を検出するための検出装置からの入力情報を受け付けるものであり、その機能はASICなどのハードウェアや、所与のプログラムにより実現できる。例えば図1に示す検出装置が接続される場合、入力情報として第1及び第2のセンサ50、60によって検出された第1及び第2のセンサ面52、62における第1及び第2の位置の座標(或いは、第1及び第2の位置の座標を特定するための情報)を受け付ける。 【0046】記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。 【0047】情報記憶媒体(コンピュータにより読み取り可能な記憶媒体)180は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納される情報に基づいて本発明(本実施形態)の種々の処理を行う。すなわち、情報記憶媒体180には、本発明(本実施形態)の手段(特に処理部100に含まれるブロック)を実行するための情報(プログラム或いはデータ)が格納される。 【0048】なお、情報記憶媒体180に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部170に転送されることになる。また情報記憶媒体180に記憶される情報は、本実施形態の処理を行うためのプログラムコード、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本実施形態の処理を指示するたえの情報、その指示に従って処理を行うための情報等の少なくとも1つを含むものである。 【0049】表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。 【0050】音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。 【0051】携帯型情報記憶装置194は、プレーヤの個人データやセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。 【0052】通信部196は、外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ASICなどのハードウェアや、プログラムなどにより実現できる。 【0053】なお本発明(本実施形態)の手段を実行するためのプログラム或いはデータは、ホスト装置(サーバ)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180に配信するようにしてもよい。このようなホスト装置(サーバ)の情報記憶媒体の使用も本発明の範囲内に含まれる。 【0054】処理部(プロセッサ)100は、操作部160又は入力情報受付部162からの操作データ又は入力情報やプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この場合、処理部100は、記憶部170内の主記憶部をワーク領域として各種の処理を行う。 【0055】ここで、処理部100が行うゲーム処理としては、コイン(代価)の受け付け処理、各種モードの設定処理、ゲームの進行処理、プレーヤが操作するキャラクタに付与された攻撃力や防御力といった各種パラメータ(広義には、エフェクト画像を変化させるための各種パラメータ)をゲームの進行に応じて更新する処理、選択画面の設定処理、オブジェクト(1又は複数のプリミティブ面)の位置や回転角度(X、Y又はZ軸回りの回転角度)を求める処理、オブジェクトを動作させる処理(モーション処理)、視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果(成果、成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバ処理などを考えることができる。 【0056】処理部100は、位置演算部110、パラメータ設定部130、画像生成部140、音生成部150を含む。なお、処理部100に、これらの全ての機能ブロック110〜150を含ませる必要はなく、一部の機能ブロックを省略する構成にしてもよい。 【0057】ここで位置演算部110は、入力情報受付部162によって受け付けられた検出装置からの入力情報に基づいて、表示部190の画面上での位置等を求める処理を行う。より具体的には、位置演算部110は、検出装置で検出された被検出物(図1では、刀型コントローラ40)の第1及び第2のセンサ面における第1及び第2の位置の座標に基づいて、第1及び第2のセンサ面と対応付けられている表示部190の画面上での位置を求める。さらに、位置演算部110は、求められた画面上での位置の単位時間当たりの変化量(絶対値)、画面上での位置の変化量(絶対値)、画面上での位置の変化する向き、第1及び第2のセンサ面における被検出物の画面方向に対する向きを求める。 【0058】パラメータ設定部130は、位置演算部110によって求められた画面30上での位置等に基づいて行われるゲーム処理の結果を反映して、エフェクト画像を変化させるためのパラメータを更新する処理を行う。より具体的には、パラメータ設定部130は、例えばプレーヤが操作するキャラクタに付与される体力値や攻撃力、防御力といったパラメータを更新し、その結果としてエフェクト画像や効果音を変化させる。 【0059】画像生成部140は、ゲーム処理結果等に基づいて、オブジェクト空間内において所与の視点(仮想カメラ)から見える画像を生成し、表示部190に出力する。 【0060】より具体的には、画像生成部140では、まず座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(頂点に付与される位置座標、テクスチャ座標、色(輝度)データ、法線ベクトル或いはα値等を含むデータ)が作成される。 【0061】そして、画像生成部140は、この描画データに基づいて、ジオメトリ処理後のオブジェクト(1又は複数のプリミティブ面)の画像を、記憶部170内の描画領域(フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できる領域)に描画する。この際、画像生成部140は、テクスチャをオブジェクトにマッピング処理等も行う。 【0062】本実施形態における画像生成部140は、さらに位置演算部110によって求められた第1及び第2のセンサ面における被検出物の位置に対応する画面30上での位置等に基づいて、エフェクトとしての画像を生成する処理を行う。すなわち、より効果的なエフェクト画像を生成して画面30に表示させることにより、操作入力部としての刀型コントローラ40を駆使して画面30に映し出される敵キャラクタと攻防を繰り返すプレーヤの仮想現実感を向上させる。 【0063】音生成部150は、ゲーム処理結果等に基づいて、各種の音処理を行い、BGM、効果音、又は音声などの音を生成し、音出力部192に出力する。 【0064】本実施形態における音生成部150は、さらに位置演算部110によって求められた画面30上での位置等に基づいて、エフェクトとしての音を生成する処理を行う。すなわち、より効果的なエフェクト音を生成して出力させることにより、操作入力部としての刀型コントローラ40を駆使して画面30に映し出される敵キャラクタと攻防を繰り返すプレーヤの仮想現実感を向上させる。 【0065】なお、本実施形態の画像生成システムを適用したゲームシステムについては、1人のみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。 【0066】また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて生成してもよい。 【0067】2. 本実施形態の特徴本実施形態における画像生成システムは、図1に示した検出装置により形成されたセンサ面における操作入力部(被検出物)の位置から、表示部の画面上での位置を求め、その位置又はその位置から求められる位置の変化に基づいて、画像生成を行うことを特徴としている。 【0068】まず、本実施形態における画像生成システムにおいて、プレーヤによって操作される操作入力部の位置等を検出する原理について説明する。 【0069】2.1 操作入力部の位置の検出本実施形態では、画像生成システムが生成する画像を表示する画面上の各位置と、上述した検出装置により形成されるセンサ面上の各位置とを1対1に対応付けている。したがって、操作入力部がセンサ面上を横切る位置が検出できれば、操作入力部の画面上での位置を容易に特定することができる。 【0070】図3(A)、(B)に、上述した検出装置により形成されるセンサ面における操作入力部の位置の検出原理について説明するための図を示す。 【0071】ここでは、第1のセンサ50による第1の位置の検出原理ついてのみ説明するが、第2のセンサ60による第2の位置の検出原理についても同様である。 【0072】第1のセンサ50は、図3(A)に示すように、第1のセンサ面形成枠200内に、2次元の第1のセンサ面52を形成する。第1のセンサ面形成枠200の第1の辺SD1の両角部には、1組のセンサS1、S2が設けられている。 【0073】センサS1は、発光部と受光部とを有している。発光部は、角度θが0度〜90度の間で赤外線を出力し、その戻り光を受光部で受光するようになっている。そのため、第1のセンサ面形成枠200の各辺SD1〜SD4には、反射板を配置し、センサの発光部からの赤外線を受光部に反射させるようにしている。 【0074】センサS2も、センサS1と同様に発光部と受光部とを有し、角度θが0度〜90度の間で自ら発光した赤外線の戻り光を受光する。 【0075】このようなセンサS1、S2は、角度θが0度となる方向が、互いに逆方向になるように設けられている。こうすることで、センサS1、S2により2次元平面の第1のセンサ面52が第1のセンサ面形成枠200内に形成される。 【0076】センサS1によって角度θが0度〜90度の間で受光された結果は、第1のセンサ50において結像IM1として得られる。センサS2によって角度θが0度〜90度の間で受光された結果は、第1のセンサ50において結像IM2として得られる。 【0077】結像IM1、IM2では、プレーヤによって操作される操作入力部が被検出物として第1のセンサ面52を横切ると、被検出物により発光した赤外線が遮られない部分は各辺に設けられた反射板により反射して受光部で受光されるが、被検出物により発光した赤外線が遮られる部分は各辺に設けられた反射板により反射されることがない。したがって、結像IM1、IM2では、被検出物の部分のみが影となって表現される。すなわち、結像IM1、IM2において、影となった部分を、角度θ1、θ2として判別することができる。 【0078】なお、第1のセンサ面形成枠200の各辺に反射板を設けずに、操作入力部の方に反射板を設けるようにしてもよい。この場合、結像IM1、IM2では、被検出物として操作入力部が第1のセンサ面52を横切ると、被検出物に遮られない部分が影となって表現されるので、結像IM1、IM2において、影とならない部分を、角度θ1、θ2として判別することができる。 【0079】センサS1、S2の位置が固定されているため、角度θ1、θ2から操作入力部が第1のセンサ面52を横切る位置をP(x,y)を特定することができる。 【0080】ここで、図3(B)に示すように第1のセンサ面形成枠200の第1の辺SD1の中点を原点O(0,0)とし、第1の辺SD1の長さを2×Lとし、センサS1、S2の座標をそれぞれ(−L,0)、(L,0)とする。この場合、Pの座標(x,y)は(1)式、(2)式より求めることができる。 【0081】 tanθ1=y/(x+L) ・・・(1) tanθ2=y/(L−x) ・・・(2) 以上より、操作入力部が第1のセンサ面52を横切る位置Pの座標を特定することができる。同様に、操作入力部が第2のセンサ面62を横切る位置も特定することができる。 【0082】したがって、第1のセンサ面形成枠200内に形成される第1のセンサ面52の各位置と、本実施形態において生成される画像が表示される画面の各位置とを1対1に対応付けておくことで、本実施形態における画像生成システムは操作入力部が第1のセンサ面52を横切る位置に対応した画面上での位置を容易に特定することができる。 【0083】なお、本実施形態では、第1及び第2のセンサ50、60により、第1及び第2のセンサ面52、62における第1及び第2の位置を特定し、その位置を入力情報として画像生成システムに供給するものとして説明したが、これに限定されるものではない。例えば、第1及び第2のセンサ50、60における結像IM1、IM2から求められる角度θ1、θ2を入力情報として画像生成システムに供給し、画像生成システムにおいて、上述したように第1及び第2のセンサ面52、62における位置を求めた後、画面上での位置を特定するようにしてもよい。 【0084】また、操作入力部の画面上での位置の特定は、上述した1つのセンサ面のみで可能となるため、第1及び第2のセンサ面52、62のいずれかの検出された位置を代表値として用いることができる。本実施形態では、第1のセンサ面52における位置を代表値として用いる。 【0085】2.2 操作入力部が移動する速さの検出図4に、本実施形態において、上述した検出装置により形成されるセンサ面における操作入力部が移動する速さの検出原理について説明するための図を示す。 【0086】本実施形態では、リアルタイムに画像を生成し、例えば所与のフレーム周期(例えば、1/60秒、1/30秒)で画像を生成する。したがって、このフレーム周期を単位時間とすることで、所与のフレームf1において求められた第1のセンサ面52における位置Pf1(x1,y1)と、次のフレームf2(=f1+1)において求められた第1のセンサ面52におけるPf2(x2,y2)の変化量を求めることで、第1のセンサ面52における単位時間当たりの変化量を求めることができる。 【0087】この単位時間当たりの変化量を、操作入力部が移動する速さ(例えば、刀型コントローラの振る速さ)とすることができる。 【0088】また、第1のセンサ面52における位置Pf1(x1,y1)から、次のフレームf2(=f1+1)において求められた第1のセンサ面52におけるPf2(x2,y2)の変化する向きを求めることで、操作入力部が移動する向き(例えば、刀型コントローラの振る向き)とすることができる。 【0089】さらに、第1のセンサ面52における位置Pf1(x1,y1)から、次のフレーム(f1+1)において求められた第1のセンサ面52におけるPf2(x2,y2)の変化する量の絶対値を求めることで、操作入力部の移動距離(例えば、刀型コントローラの振り幅)とすることができる。 【0090】また、操作入力部の移動する速さ、向き及び距離は、上述した1つのセンサ面のみで可能となるため、第1及び第2のセンサ面52、62のいずれかのみを用いて求めるようにしてもよい。第1及び第2のセンサ面52、62を用いる場合は、いずれかのセンサ面で求められた値を代表値として用いることができる。本実施形態では、第1のセンサ面52における値を代表値として用いる。 【0091】2.3 操作入力部の画面に対する向きの検出図5(A)、(B)に、上述した検出装置による操作入力部の画面に対する向きの検出原理について説明するための図を示す。 【0092】図5(A)に示すように、検出装置の2つのタブレットセンサにより、間隔dをおいて第1及び第2のセンサ面52、62が形成される。ここで、プレーヤによって操作される操作入力部が、第1のセンサ面52を横切る位置をPS1、第2のセンサ面62を横切る位置をPS2とする。 【0093】このとき、操作入力部の画面に対する向きは、第1のセンサ面52を横切る位置をPS1と第2のセンサ面62を横切る位置をPS2とを結ぶ線が、第1又は第2のセンサ面52、62となす角となる。 【0094】すなわち、第1のセンサ面52を横切る位置PS1(xs1,ys1)、第2のセンサ面62を横切る位置PS2(xs2,ys2)とすると、図5(B)に示すように、操作入力部の画面に対する向きφのx成分をφx、y成分をφyは、次の(3)式、(4)式により求められる。 【0095】 tanφx=(xs1−xs2)/d ・・・(3) tanφy=(ys1−ys2)/d ・・・(4) このように、センサ面における操作入力部が横切る位置が特定できれば、第1及び第2のセンサ面における位置から、操作入力部の画面に対する向きを容易に求めることができるようになる。 【0096】2.4 応用例このような検出装置からの入力情報に基づいて、プレーヤによって操作される操作入力部の画面上での位置等を特定することができる画像生成システムを適用した刀ゲームによれば、プレーヤの仮想現実感をより向上させるために、次に述べるような適用が可能となる。 【0097】2.4.1 刀の振る速さに応じた攻撃力図6(A)、(B)に、操作入力部としての刀型コントローラ40の振る速度に応じて、攻撃力が変化する例を模式的に示す。 【0098】すなわち、上述した検出装置からの入力情報に基づいて、本実施形態における画像生成システムでは、刀型コントローラ40の振る速度を得ることができるので、振る速度に応じてプレーヤが操作するキャラクタの攻撃力(広義には、パラメータ)を変化させることができる。 【0099】オブジェクト空間において、仮想的なプレーヤの位置から所与の範囲内に敵キャラクタ(オブジェクト)が存在する場合に、プレーヤが刀型コントローラ40を振ると、第1及び第2のセンサ面における刀型コントローラ40の位置に対応して求められた画面上での位置に基づいてダメージを与える(敵キャラクタの生命力(体力)を小さくする)処理を行う。特に、求められた画面上での位置の軌跡上に敵キャラクタ(オブジェクト)の一部が存在することを条件に、ダメージを与えるようにすることもできる。 【0100】このとき、プレーヤは、実物の刀を振るように自由に刀型コントローラ40を振ることができるので、ゲーム処理において、図6(A)に示すように振る速度が遅い場合は攻撃力をアップさせず、図6(B)に示すように振る速度が速い場合には攻撃力をアップさせるようにしてもよい。こうすることで、画面30に映し出される敵キャラクタに対して与えるダメージの大きさが変わり、刀を用いた斬り合いによる仮想現実感を大幅に向上させることができる。 【0101】また、敵キャラクタに与えたダメージを与えた場合に、ダメージに応じた刀の斬り跡オブジェクトを表示させるとき、その刀の斬り跡オブジェクトの大きさを、与えたダメージ(若しくは攻撃力)に応じて変化させるようにしてもよい。例えば、刀型コントローラ40の振る速度が遅い場合は、図7(A)に示すように敵に小さなダメージを与えたことを示す斬り跡オブジェクトOBJ1を表示させたり、刀型コントローラ40の振る速度が速い場合は、図7(B)に示すように敵に大きなダメージを与えたことを示す斬り跡オブジェクトOBJ2を表示させたりすることができる。特に、プレーヤが刀型コントローラ40を振る向きを判別することができるので、その向きに応じて刀の斬り跡オブジェクトを、敵キャラクタに重ねて表示させるようにしてもよい。 【0102】さらに、刀型コントローラ40を振る速度の大きさに応じて、刀が風を切る効果音を変化させて出力させるようにしてもよい。 【0103】このように、刀型コントローラ40を振る速度の大きさに応じて、エフェクト画像や効果音、プレーヤが操作するキャラクタの攻撃力などのパラメータ(広義には、エフェクト画像を変化させるためのパラメータ)を変化させることによりプレーヤに与えるエフェクトを変化させることで、プレーヤの刀を用いた斬り合いによる仮想現実感を大幅に向上させることができる。 【0104】なお、プレーヤが刀型コントローラ40を振る速度に対して所与の閾値を設けるようにしてもよい。すなわち、プレーヤが所与の閾値以上の速度で、刀型コントローラ40を振ったときに、敵キャラクタに対する攻撃と判別させる。こうすることで、プレーヤが敵キャラクタを攻撃する意図なく刀型コントローラ40をゆっくり動かした場合に、敵キャラクタを斬りつけてしまうといった事態を回避することができる。こうすることで、刀型コントローラ40を閾値以上の速い速度で振ったとき、敵キャラクタに対する攻撃と判別されるので、ゲームの仮想現実感を損なうことがない。 【0105】2.4.2 刀の振り幅に応じた攻撃力図8(A)、(B)に、操作入力部としての刀型コントローラ40の振り幅に応じて、攻撃力が変化する例を模式的に示す。 【0106】すなわち、上述した検出装置からの入力情報に基づいて、本実施形態における画像生成システムでは、刀型コントローラ40の振り幅を得ることができるので、振り幅に応じてプレーヤが操作するキャラクタの攻撃力(広義には、パラメータ)を変化させるようにしてもよい。 【0107】したがって、上述した刀型コントローラ40を振る速度及びその振り幅の少なくとも1つに応じて、エフェクト画像、効果音又はプレーヤが操作するキャラクタの攻撃力(広義には、パラメータ)を変化させるようにしてもよい。 【0108】オブジェクト空間において、仮想的なプレーヤの位置から所与の範囲内に敵キャラクタ(オブジェクト)が存在する場合に、プレーヤが刀型コントローラ40を振ると、求められた画面上での位置に基づいてダメージを与える(敵キャラクタの生命力(体力)を小さくする)処理を行う。 【0109】このとき、プレーヤは、実物の刀を振るように自由に刀型コントローラ40を振ることができるので、ゲーム処理において、図8(A)に示すように振り幅が小さい場合は攻撃力をアップさせず、図8(B)に示すように振り幅が大きい場合には攻撃力をアップさせるようにしてもよい。こうすることで、画面30に映し出される敵キャラクタに対して与えるダメージの大きさが変わり、刀を用いた斬り合いによる仮想現実感を大幅に向上させることができる。 【0110】また、敵キャラクタに与えたダメージを与えた場合に、ダメージに応じた刀の斬り跡オブジェクトを表示させるとき、その刀の斬り跡オブジェクトの大きさを、与えたダメージ(若しくは攻撃力)に応じて変化させるようにしてもよい。例えば、刀型コントローラ40の振り幅が小さい場合は、図9(A)に示すように敵に小さなダメージを与えたことを示す斬り跡オブジェクトOBJ3を表示させたり、刀型コントローラ40の振り幅が大きい場合は、図9(B)に示すように敵に大きなダメージを与えたことを示す斬り跡オブジェクトOBJ4を表示させたりすることができる。特に、プレーヤが刀型コントローラ40を振る向きを判別することができるので、その向きに応じて刀の斬り跡オブジェクトを、敵キャラクタに重ねて表示させるようにしてもよい。 【0111】さらに、刀型コントローラ40を振り幅に応じて、刀が風を切る効果音を変化させて出力させるようにしてもよい。 【0112】このように、刀型コントローラ40の振り幅に応じて、エフェクト画像や効果音、プレーヤが操作するキャラクタの攻撃力などのパラメータ(広義には、エフェクト画像を変化させるためのパラメータ)を変化させることによりプレーヤに与えるエフェクトを変化させることで、プレーヤの刀を用いた斬り合いによる仮想現実感を大幅に向上させることができる。 【0113】なお、プレーヤによる刀型コントローラ40の振り幅に対して所与の閾値を設けるようにしてもよい。すなわち、プレーヤが所与の閾値以上の振り幅で、刀型コントローラ40を振ったときに、敵キャラクタに対する攻撃と判別させる。こうすることで、プレーヤによる刀型コントローラ40を振り幅が小さい場合に、敵キャラクタに対する攻撃と判別されてしまうことがなくなる。また、上述したように刀型コントローラ40の振る速度のみで判別してしまうと、プレーヤは単純に刀型コントローラ40を細かく振るだけで、敵キャラクタを倒せてしまうことになるため、ゲームとしての面白みに欠けてしまうことにもなる。したがって、刀型コントローラ40を閾値以上の振り幅のときに敵キャラクタに対する攻撃と判別することで、ゲームの仮想現実感を損なうことがなくなる。 【0114】2.4.3 刀の画面に対する向きに応じた攻撃及び防御上述したように画面に映し出される敵キャラクタに対して、プレーヤが攻撃だけを行うゲームは、刀型コントローラ40を単に振り回しておくだけで敵キャラクタを次々と倒させることになる。また、敵キャラクタもプレーヤに対して攻撃を次々と仕掛けてくるため、いつかはプレーヤの体力値が0になってゲームが終了してしまうことになる。したがって、このようなゲームは、ゲーム性は低下してしまい、プレーヤに飽きられてしまう。 【0115】そのため、プレーヤが敵キャラクタからの攻撃に対する防御ができるようにすることが望ましい。こうすることで、敵キャラクタからの攻撃を防御した際に、敵キャラクタの動作に隙を与え、その間に攻撃に転じて当該敵キャラクタを倒すといった攻撃や防御の駆け引きを楽しむことができ、刀ゲームとしての仮想現実感を大幅に向上させることにもなる。 【0116】そのため本実施形態における画像生成システムでは、刀型コントローラ40の画面に対する向きを判別することで、プレーヤは敵キャラクタに対する攻撃の態勢と、敵キャラクタの攻撃に対する防御の態勢とを切り替えることができるようにしている。そして、敵キャラクタに対する攻撃態勢の場合に、上述した刀型コントローラ40を振る速度やその振り幅に応じて、攻撃力を変化させるようにしてもよい。 【0117】図10(A)、(B)に、操作入力部としての刀型コントローラ40の画面30に対する向きに応じて、攻撃又は防御の態勢が変化する例を模式的に示す。 【0118】すなわち、上述した検出装置からの入力情報に基づいて、本実施形態における画像生成システムでは、刀型コントローラ40の画面30に対する向きを得ることができるので、その向きに応じてプレーヤが敵キャラクタに攻撃を加えたり、敵キャラクタの攻撃に対してプレーヤがキャラクタの防御力(広義には、パラメータ)を変化させることができる。 【0119】例えば図10(A)に示すように、プレーヤが刀型コントローラ40を画面に対して立てた場合に攻撃態勢とし、例えば図10(B)に示すように、プレーヤが刀型コントローラ40を画面に対して寝かせた場合に防御態勢とする。こうすることで、攻撃態勢において、上述したように振る速度や振り幅に応じた多様な攻撃が可能となる(逆に、画面30に対して刀型コントローラ40を寝かせた状態の場合には、上述したように振る速度や振り幅に応じた多様な攻撃が不可能となる)。 【0120】このように、刀型コントローラ40の画面30に対する向きに応じて、プレーヤの攻撃態勢と防御態勢とを切り替えるようにすることで、敵キャラクタとの攻防の駆け引きを楽しむことができ、プレーヤの刀を用いた斬り合いによる仮想現実感を大幅に向上させることができる。 【0121】また、本実施形態では、上述したように敵キャラクタから攻撃された場合、当該敵キャラクタの攻撃を防御することができる。この場合、敵キャラクタの刀と、プレーヤが操作する刀型コントローラの画面上での位置等が所与の関係を満たしたことを条件に、プレーヤが攻撃を仕掛けてきた敵キャラクタをはじき返すようになっている。こうすることで、プレーヤは、防御から一転して、はじき返されて攻撃がひるんだ当該敵キャラクタに対する攻撃を開始することができる。 【0122】図11に、このような敵キャラクタの攻撃をはじき返すための、敵キャラクタの刀と、プレーヤが操作する刀型コントローラが所与の関係を模式的に示す。 【0123】ここでは、奥行き方向zの画面30に、敵キャラクタの刀オブジェクト250がオブジェクト画像として映し出されているものとする。本実施形態における画像生成システムを適用したゲームシステムでは、この画面30に映し出される敵キャラクタの刀オブジェクト250に対して、プレーヤが操作入力部としての刀型コントローラ40の向きをどのように置くかを判別することにより、敵キャラクタの攻撃をはじき返すか否かを決定する。 【0124】なお、画面30の奥行き方向zと同一方向をdz、敵キャラクタの刀オブジェクト250の向きをde、刀オブジェクト250の移動方向をVe、プレーヤが操作する刀型コントローラ40の向きをdp、刀型コントローラ40の移動方向をVpとする。 【0125】図12に、プレーヤの操作により、敵キャラクタの攻撃をはじき返すか否かを判別する処理のフローチャートの一例を示す。 【0126】まず図10(B)に示すように、プレーヤが操作する刀型コントローラ40が画面30に対して寝ているか否かを判別し、寝ていると判別されたときプレーヤが敵キャラクタの攻撃に対する防御態勢に入る。 【0127】このとき、刀型コントローラ40の向きdpが、敵キャラクタの刀オブジェクト250の向きdeと直交するか否かを判別する(ステップS10)。ここで、dpとdeのなす角は、所与の範囲内でほぼ直交か否かを判別することが望ましい。 【0128】dpとdeのなす角が(ほぼ)直交すると判別されたとき(ステップS10:Y)、刀型コントローラ40の移動方向Vpと刀オブジェクト250の移動方向Veが平行か否かを判別する(ステップS11)。ここで、VpとVeは、所与の範囲内でほぼ平行か否かを判別することが望ましい。 【0129】VpとVeが(ほぼ)平行であると判別されたとき(ステップS11:Y)、VpとVeの内積が負、すなわち刀型コントローラ40の移動方向と刀オブジェクト250の移動方向とが互い逆方向であるか否かを判別する(ステップS12)。これにより、プレーヤが、刀型コントローラ40で、敵キャラクタの刀オブジェクト250を押し返したか否かを判別することができる。 【0130】VpとVeの内積が負のとき(ステップS11:Y)、すなわちプレーヤが、刀型コントローラ40で、敵キャラクタの刀オブジェクト250を押し返したと判別したとき、プレーヤが操作するキャラクタは敵キャラクタの攻撃を受けることなく(プレーヤが操作するキャラクタの体力値は減算されることなく)、敵キャラクタをはじき返す処理を行う(ステップS13)。すなわち、例えば図13(A)に示すように敵キャラクタ270が、プレーヤが操作するキャラクタに対して攻撃を仕掛けたとき、上述した条件を満たして敵キャラクタをはじき返す処理を行う場合、例えば図13(B)に示すように敵キャラクタをはじき返す画像を表示させる処理を行う。このとき、敵キャラクタは、態勢を整えるまで攻撃及び防御できず、プレーヤはこの隙を突いて敵キャラクタに対して反撃するといった攻防の駆け引きを実現させることができる。 【0131】なお、ステップS10においてdpとdeが(ほぼ)直交しないと判別されたとき(ステップS10:N)、ステップS11でVpとVeが(ほぼ)平行ではないと判別されたとき(ステップS11:N)、或いはステップS12でVpとVeの内積が負ではないとき(ステップS12:N)、プレーヤのキャラクタは通常の防御態勢となる(ステップS14)。すなわち、敵キャラクタの攻撃に対して、プレーヤが操作するキャラクタの体力値を減算することなく、若しくは割り引いて減算する。 【0132】このように、刀型コントローラ40の画面30に対する向きに応じて、プレーヤの攻撃態勢と防御態勢とを切り替える。 【0133】2.4.4 特殊技上述したように、図1に示すような検出装置において検出されるプレーヤによる刀型コントローラの操作状況は、画面30上での位置、振る速度、向き及び振り幅として得ることができる。したがって、これらの少なくとも1つ以上を組み合わせて、通常の攻撃時における攻撃力を格段にアップさせた特殊技(必殺技)により、敵キャラクタを攻撃できるようにしてもよい。 【0134】図14(A)、(B)に、プレーヤが必殺技を出すための操作パターンの一例を示す。 【0135】例えば、図14(A)に示すように、プレーヤが刀型コントローラ40を画面30上での位置で所与の一定の動きMOV1〜MOV3をさせた後に、斬る動作をすると、所与の一定の動きに関連付けられた特殊技SP1で攻撃できるようにすることができる。 【0136】より具体的には、特殊技それぞれに対応してあらかじめ画面上での位置とその変化のパターンを登録した図15に示すようなテーブルを用意しておく。そして、プレーヤが操作する刀型コントローラ40の位置、移動する向き、速さ及び振り幅の少なくとも1又は2つ以上の組み合わせによって決められる動作パターンが、テーブルに登録された動作パターンと一致したとき、その動作パターンに関連付けられた特殊技を出すようにする。 【0137】或いは、図14(B)に示すように、プレーヤが刀型コントローラ40を画面30上での位置で、一定の順序MOV4〜MOV6で斬った後に、斬る動作をすると、一定の順序に関連付けられた特殊技SP2で攻撃できるようにすることができる。 【0138】この場合も、特殊技それぞれに対応してあらかじめ画面上での位置とその変化のパターンを登録した図15に示すようなテーブルを用意しておき、プレーヤが操作する刀型コントローラ40の位置、移動する向き、速さ及び振り幅の少なくとも1又は2つ以上の組み合わせによって決められる動作パターンが、テーブルに登録された動作パターンと一致したとき、その動作パターンに関連付けられた特殊技を出すようにする。 【0139】2.4.5 その他さらに本実施形態において、プレーヤによる刀型コントローラの操作状況を、画面30上での位置、振る速度、向き及び振り幅として得ることができるため、例えば敵キャラクタに弱点を設定しておき、プレーヤが操作される刀型コントローラの画面上での位置が変化する際に、当該弱点の位置を通過したことを条件に、プレーヤが操作するキャラクタの攻撃力をアップさせ、敵キャラクタに多大なダメージを与えるようにしてもよい。 【0140】或いは、プレーヤが斬ろうとする対象物に「目」を持たせるようにしてもよい。より具体的には、プレーヤによって操作される刀型コントローラの画面上での位置が変化する軌跡の向きを判別し、この向きに応じて当該対象物が斬れたり、斬れなかったりするようにしてもよい。 【0141】このように、プレーヤによる刀型コントローラの操作状況を、画面30上での位置、振る速度、向き及び振り幅として得ることができることで、これまでにない多彩な操作で、より仮想現実感を向上させたゲーム画像若しくはゲームエフェクトを提供することができるようになる。 【0142】3. 本実施形態の処理例次に、本実施形態の処理の詳細例について、図16及び図17を用いて説明する。 【0143】ここで、以下のように定義する。 【0144】Vsum:刀型コントローラの画面上で移動した長さ(振り幅) Vベクトル:刀型コントローラの1フレーム当たりの移動量(変化量) f:初期化判定フラグp1ベクトル:図1に示した検出装置の第1のセンサ面において検出された刀型コントローラの位置p2ベクトル:図1に示した検出装置の第2のセンサ面において検出された刀型コントローラの位置(dx,dy,dz):刀型コントローラの画面上での向きのx成分、y成分、z成分(ただし、dzは画面の奥行き方向) p´ベクトル:図1に示した検出装置の第1のセンサ面における1フレーム前の位置pow:刀型コントローラの攻撃力若しくはプレーヤが操作するキャラクタの攻撃力qベクトル:敵キャラクタの弱点の位置r:敵キャラクタの弱点の大きさ(定数) W:刀型コントローラを振る速度の閾値(定数) L:刀型コントローラの振り幅の閾値(定数) まず、処理部100において、刀型コントローラの振り幅(画面上での移動距離)Vsumを0に、刀型コントローラの1フレーム当たりの変化量Vベクトルを0ベクトルに、初期化判定フラグfを0に、それぞれ初期化する(ステップS20)。 【0145】続いて、入力情報受付部162において、検出装置の第1及び第2のセンサ面における刀型コントローラの位置p1ベクトル及びp2ベクトルを受け付ける(ステップS21)。 【0146】そして、処理部100の位置演算部110において、ステップS21で受け付けたp1ベクトル及びp2ベクトルを用いて、画面上での位置をx成分、y成分及びz成分の各成分を正規化したdx、dy及びdzを求める(ステップS22)。 【0147】ここで、初期化判定フラグfが0のとき(ステップS23:Y)、図1に示した検出装置の第1のセンサ面における1フレーム前の位置p´ベクトルに当該フレームにおける検出装置の第1のセンサ面の刀型コントローラの位置p1ベクトルを設定して初期化するとともに、初期化判定フラグfに1を設定する(ステップS24)。 【0148】ステップS24において初期化された後、或いはステップS23で初期化判定フラグfが0ではないとき(ステップS23:N)、位置演算部110において、Vベクトルにp1ベクトルからp´ベクトルを減算したベクトルを代入して、刀型コントローラの1フレーム当たりの移動量、すなわち速さを求める(ステップS25)。 【0149】次に、Vベクトルの絶対値が0のとき(ステップS26:Y)、Vsumに0を設定する(ステップS27)。 【0150】一方、Vベクトルの絶対値が0ではないとき(ステップS26:N)、VsumにVベクトルの絶対値を加算して、刀型コントローラの画面上で移動した長さを更新する(ステップS28)。 【0151】続いて、プレーヤによって操作される刀型コントローラと、敵キャラクタとのヒットチェックを行う(ステップS29)。より具体的には、画像生成部140によって生成されたオブジェクト画像のジオメトリ処理後のレンダリング画像における敵キャラクタの位置が、刀型コントローラの画面上での位置の変化する軌跡上にあるか否かを判別する。 【0152】そして、ヒットと判定されたとき(ステップS29:Y)、dz成分の絶対値が0.5より小さいか否かを判別する(ステップS30)。すなわち、dz成分の絶対値が0.5より小さいときは、画面の奥行き方向の成分が小さいと判断し、刀型コントローラの画面に対する向きが画面に対して寝てる状態であると判別する。一方、dz成分の絶対値が0.5以上のときは、画面の奥行き方向の成分が大きいと判断し、刀型コントローラの画面に対する向きが画面に対して立っている状態であると判別する。 【0153】dz成分の絶対値が0.5より小さくないと判別されたとき(ステップS30:N)、パラメータ設定部130において攻撃力を10に設定する(ステップS31)。 【0154】そして、敵キャラクタの弱点の位置qベクトルを取得し(ステップS32)、p1ベクトルとqベクトルの差の絶対値が、敵キャラクタの弱点の大きさrより小さいか否かを判別する(ステップS33)。 【0155】p1ベクトルとqベクトルの差の絶対値がrより小さいとき(ステップS33:Y)、パラメータ設定部130において攻撃力powに5を加算して攻撃力をアップする(ステップS34)。 【0156】ステップS34で攻撃力powに5を加算した後、或いはステップS33でp1ベクトルとqベクトルの差の絶対値がrより小さくないと判別されたとき(ステップS33:N)、次にVベクトルの絶対値を所与の閾値Wとを比較する(ステップS35)。 【0157】Vベクトルの絶対値が所与の閾値Wより大きいとき(ステップS35:Y)、パラメータ設定部130において攻撃力powに5を加算して攻撃力をアップする(ステップS36)。 【0158】ステップS36で攻撃力powに5を加算した後、或いはステップS35でVベクトルの絶対値がWより大きくないと判別されたとき(ステップS35:N)、次にVsumと所与の閾値Lとを比較する(ステップS37)。 【0159】Vsumが所与の閾値Lより大きいとき(ステップS37:Y)、パラメータ設定部130において攻撃力powに5を加算して攻撃力をアップする(ステップS38)。 【0160】ステップS38で攻撃力powに5を加算した後、或いはステップS37でVsumがLより大きくないと判別されたとき(ステップS37:N)、その時点における攻撃力powでヒットした敵キャラクタにダメージを与える処理を行う(ステップS39)。例えば、敵キャラクタに付与されている体力値(生命力)を減算する。 【0161】一方、ステップS30で、dz成分の絶対値が0.5より小さいと判別されたとき(ステップS30:Y)、敵の攻撃に対して防御する処理を行う(ステップS40)。例えば、敵キャラクタの攻撃があった場合、図14に示す処理を行って、敵キャラクタの攻撃をはね返す処理を行う。 【0162】ステップS29で刀と敵キャラクタとがヒットしないと判定されたとき(ステップS29:N)、ステップS40で防御する処理が行われた後、或いはステップS39で攻撃処理を行った後、敵キャラクタ、刀やその斬り跡、或いは図11(B)に示すような敵キャラクタの攻撃のはじき返し後の画像などの表示を行う(ステップS41)。例えば、刀やその斬り跡の表示は、検出装置によって検出される刀型コントローラの位置等に基づいて表示させることができる。 【0163】その後、p´ベクトルにp1ベクトルを代入して、次のフレームに備える(ステップS42)。 【0164】ここで、ゲーム終了のとき(ステップS43:N)、一連の処理を終了し、ゲーム終了ではないとき(ステップS43:Y)、ステップS21に戻る(ステップS43:N)。 【0165】以上のようにして、本実施形態における画像生成システムは、図1に示した検出装置において形成されたセンサ面における操作入力部の位置から、画面上での位置を求め、その位置又はその位置から求められる位置の変化に基づいて、所与のエフェクト効果を与え、これまでにない多彩な操作による画像生成を可能にしている。 【0166】4. ハードウェア構成次に、本実施形態を実現できるハードウェア構成の一例について図18を用いて説明する。 【0167】メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インタフェース990を介して転送されたプログラム、或いはROM950(情報記憶媒体の1つ)に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。 【0168】コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。 【0169】ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。 【0170】データ伸張プロセッサ906は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、MPEG方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ROM950、CD982に格納されたり、或いは通信インタフェース990を介して外部から転送される。 【0171】描画プロセッサ910は、ポリゴンや曲面などのプリミティブ(プリミティブ面)で構成されるオブジェクトの描画(レンダリング)処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970の機能を利用して、オブジェクトデータを描画プロセッサ910に渡すとともに、必要であればテクスチャ記憶部924にテクスチャを転送する。すると、描画プロセッサ910は、これらのオブジェクトデータやテクスチャに基づいて、Zバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ922に高速に描画する。また、描画プロセッサ910は、aブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。 【0172】サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ932から出力される。 【0173】ゲームコントローラ942(レバー、ボタン、筺体、パッド型コントローラ又はガン型コントローラ等)からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介してデータ転送される。 【0174】ROM950にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なお、ROM950の代わりにハードディスクを利用するようにしてもよい。 【0175】RAM960は、各種プロセッサの作業領域として用いられる。 【0176】DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御するものである。 【0177】CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982(情報記憶媒体)を駆動し、これらのプログラム、データへのアクセスを可能にする。 【0178】通信インタフェース990は、ネットワークを介して外部との間でデータ転送を行うためのインタフェースである。この場合に、通信インタフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他の画像生成システムとの間でのデータ転送が可能になる。 【0179】或いは通信インタフェース990を介して、図示しない検出装置におけるセンサ面における操作入力部の位置等を特定するための入力情報を受け付けるようにすることが考えられる。 【0180】なお、本発明の各手段は、その全てを、ハードウェアのみにより実現(実行)してもよいし、情報記憶媒体に格納されるプログラムや通信インタフェースを介して配信されるプログラムのみにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。 【0181】そして、本発明の各手段をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実現するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示するとともに、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて、本発明の各手段を実現することになる。 【0182】なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。 【0183】例えば、検出装置は図1、図3乃至図5で説明した検出手法に限定されない。検出装置としては、赤外線を超音波に替えて操作入力部の位置を検出するようにしてもよいし、画像認識や、モーションキャプチャリングの原理を用いて、操作入力部の位置を検出するようにしてもよい。要は、表示部の画面上の位置に各位置が1対1に対応付けられた所与の空間(エリア)において、プレーヤの身体の一部又はプレーヤによって操作される操作入力部の位置若しくは位置を特定するための情報を検出できる検出装置であればよい。 【0184】また本実施形態では、操作入力部として刀型コントローラを例に説明したがこれに限定されるものではなく、槍やこん棒などの武器に限らず、指揮棒やゴルフクラブ、料理に使う包丁などを考えることができる。 【0185】また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。 【0186】また、本発明は種々のゲーム(格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等)に適用できる。 【0187】また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々の画像生成システム(ゲームシステム)に適用できる。
|
| 【出願人】 |
【識別番号】000134855 【氏名又は名称】株式会社ナムコ 【住所又は居所】東京都大田区多摩川2丁目8番5号
|
| 【出願日】 |
平成13年9月10日(2001.9.10) |
| 【代理人】 |
【識別番号】100090387 【弁理士】 【氏名又は名称】布施 行夫 (外2名)
|
| 【公開番号】 |
特開2003−79943(P2003−79943A) |
| 【公開日】 |
平成15年3月18日(2003.3.18) |
| 【出願番号】 |
特願2001−273537(P2001−273537) |
|