JP3843241B2 - プログラム、情報記憶媒体、およびゲーム装置 - Google Patents

プログラム、情報記憶媒体、およびゲーム装置 Download PDF

Info

Publication number
JP3843241B2
JP3843241B2 JP2002054809A JP2002054809A JP3843241B2 JP 3843241 B2 JP3843241 B2 JP 3843241B2 JP 2002054809 A JP2002054809 A JP 2002054809A JP 2002054809 A JP2002054809 A JP 2002054809A JP 3843241 B2 JP3843241 B2 JP 3843241B2
Authority
JP
Japan
Prior art keywords
model
sphere
game
program
displacement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2002054809A
Other languages
English (en)
Other versions
JP2003251068A (ja
Inventor
秀樹 平岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Namco Bandai Games Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2002054809A priority Critical patent/JP3843241B2/ja
Publication of JP2003251068A publication Critical patent/JP2003251068A/ja
Application granted granted Critical
Publication of JP3843241B2 publication Critical patent/JP3843241B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Description

【0001】
【発明の属する技術分野】
コンピュータに、所与のゲームを実行させるためのプログラム等に関する。
【0002】
【発明の背景】
従来、様々な種類のゲームが提案されているが、衝突した他の物体を表面上に結合(付着)して雪ダルマ式に巨大化するオブジェクトを転動操作して楽しむゲームは存在しなかった。
【0003】
【発明が解決しようとする課題】
ゲームでは、いかにキャラクタの設定に則した「それらしく見える動き」をさせるかが重要になる。前記巨大化するオブジェクトをキャラクタと考えた場合、「それらしく見える動き」とは、例えば、その見かけ(外観形状)の凹凸に応じて上下左右に不規則に振られて転動をすることである。
【0004】
しかし、前記巨大化するオブジェクトの表面には、設定上、大量の物体が結合されて外観形状は常に不規則に変化する。そのため、外観形状そのものから動き(転動)を求めようとすると、既結合状態の大量の物体を含む多数の面を演算の対象としなければならず、膨大な演算処理が必要となる。結果、運動の演算がゲーム画面の描画レートに追いつかなくなる問題が発生する。また逆に、前記オブジェクトの外観形状如何を問わず単純なモデル(例えば、単一のプリミティブ)として運動演算すると、ゲーム画面内での動きが単純化されて興ざめしてしまうという問題がある。
【0005】
本発明は、上記課題に鑑みてなされたものであり、その目的とするところは、衝突した他の物体を表面上に結合して雪ダルマ式に巨大化するオブジェクトについて、外見形状に応じたそれらしく見える動きをより簡単に実現することである。
【0006】
【課題を解決するための手段】
上記課題を解決するために、第1の発明は、プロセッサを備える装置に対して、該プロセッサによる演算・制御により、第1オブジェクト及び第2オブジェクトを含む複数のオブジェクトを配置した仮想空間を設定させるとともに、所与の視点から見た当該仮想空間の画像を生成させて、所与のゲームを実行させるためのゲーム情報であって、
所定方向にのみ変位可能な複数の変位点を設定して前記第1オブジェクトの転動基準面を形成させる点設定手段(例えば、図6の運動計算用モデル設定部222、運動計算用モデル情報53)と、前記第1オブジェクトと第2オブジェクトとの衝突判定を行う衝突判定手段(例えば、図6のゲーム演算部22)と、前記衝突判定手段により衝突したと判定された場合に、第1オブジェクトに当該第2オブジェクトを当該衝突位置で結合させる結合手段(例えば、図6の表示用モデル結合部221、結合履歴情報57)と、前記結合手段により前記第2オブジェクトが結合された場合、当該衝突位置に近接する変位点を前記所定方向に沿った新たな位置に変位させる変位点制御手段(例えば、図6の運動計算用モデル設定部222、運動計算用モデル情報53)と、前記第1オブジェクトの前記仮想空間内における転動を前記変位点に基づいて制御する転動制御手段(例えば、図6のゲーム演算部22、運動計算用モデル情報53)と、を前記装置に機能させるための情報を含むゲーム情報である。
【0007】
また、第11の発明は、第1オブジェクト及び第2オブジェクトを含む複数のオブジェクトを配置した仮想空間を設定するとともに、所与の視点から見た当該仮想空間の画像を生成して、所与のゲームを実行するゲーム装置であって、
所定方向にのみ変位可能な複数の変位点を設定して前記第1オブジェクトの転動基準面を形成させる点設定手段と、前記転動基準面に対する前記第2オブジェクトの衝突判定を行う衝突判定手段と、前記第1オブジェクトと第2オブジェクトとの衝突判定を行う衝突判定手段と、前記衝突判定手段により衝突したと判定された場合に、第1オブジェクトに当該第2オブジェクトを当該衝突位置で結合させる結合手段と、前記結合手段により前記第2オブジェクトが結合された場合、当該衝突位置に近接する変位点を前記所定方向に沿った新たな位置に変位させる変位点制御手段と、前記第1オブジェクトの前記仮想空間内における転動を前記変位点に基づいて制御する転動制御手段と、を備えるゲーム装置である。
【0008】
第1または第11の発明によれば、第1オブジェクトに第2オブジェクトが衝突した場合、結合手段が第1オブジェクトに第2オブジェクトを該衝突位置で結合させる。
【0009】
ここで言う衝突位置とは、例えば、第1オブジェクトと第2オブジェクトを密着させて表示する場合、両オブジェクトの最も近接した頂点座標や最も近接した面や該面の中心座標などがこれに該当する。また、結合方法は、例えば、表示用モデル(ゲーム画面にオブジェクトの外観を表示させるためのモデル)の階層構造を設定する方法や、第1オブジェクトの表示用モデルのモデリングデータそのものを第2オブジェクトと結合したモデルに変更する方法、などによって実施される。従って、衝突以降、第1オブジェクトと第2オブジェクトは一体となって表示されることになる。
【0010】
一方、第1オブジェクトには、結合手段によって結合される表示用モデルの情報とは別に、点設定手段によって複数の変位点が設定されて、転動基準面が形成されている。そして、第1オブジェクトに第2オブジェクトが衝突した場合、変位点制御手段が、衝突位置に近接する変位点を選択し、適当に変位点の位置を変更して転動基準面を変更することによって、第2オブジェクトと結合した第1オブジェクトの凹凸の変化に応じた転動基準面を形成する。
【0011】
そして、転動制御手段が、変位点に基づいて第1オブジェクトが転動基準面で転がるように運動演算する。従って、例えば、第1オブジェクトが角張っているために上下つつ転動する様を簡単に表現できる。また、例えば、接地位置に隣接する変位点によって形成される転動基準面の傾斜を参照して第1オブジェクトの中心と接地位置を結ぶ直線の鉛直からの左右方向の傾きを得ることで、外観の凹凸に応じて重心位置がずれて左右に振れているように見える転動を求めることができる。
【0012】
従って、第1または第11の発明によれば、第1オブジェクトと第2オブジェクトとが結合して外観形状がいかに複雑になっても、少ない演算負荷で外観形状の凹凸に応じたそれらしく見える転動の様を表現できる。
第1オブジェクトをプレーヤが操作する雪ダルマ式に巨大化するオブジェクト、第2オブジェクトを周囲に配置されている物体に当てはめるならば、巨大化するオブジェクトに外観の凹凸に応じたそれらしい転動を簡単に実現することができる。
【0013】
また、第2の発明として第1の発明のゲーム情報であって、前記変位点制御手段が、前記第2オブジェクトの形状に基づいて、変位点の変位量を決定するための情報(例えば、図6の運動計算用モデル設定プログラム422、階層情報514、結合履歴情報57)を含むゲーム情報を構成することとしても良い。
【0014】
第2の発明によれば、第1の発明と同様の効果を奏するとともに、変位点制御手段が、第1オブジェクトに結合された第2オブジェクトの形状に基づいて変位点を設定する。
【0015】
第2オブジェクトの形状に基づくとは、第1オブジェクトに結合された状態の第2オブジェクトの相対的な姿勢に基づく意味である。即ち、例えば、変位点制御手段は第2オブジェクトが結合して凹凸が生じた状態の外観形状に沿って変位点を設定し転動基準面を形成させる。
従って、第2オブジェクトが結合して凹凸が生じた第1オブジェクトに、外観形状の凹凸に応じた、よりそれらしい不規則な転動をさせることができる。
【0016】
また更に、第3の発明として第1または第2の発明のゲーム情報であって、前記変位点制御手段が、前記第2オブジェクトの形状に基づいて、変位させる変位点の数を決定するための情報(例えば、図6の運動計算用モデル設定プログラム422、階層情報514、結合履歴情報57)を含むゲーム情報を構成することとしても良い。
【0017】
第3の発明によれば、第1または第2の発明と同様の効果を奏するとともに、変位点制御手段が、変位させる変位点の数を適当にすることで、第2オブジェクトが結合した第1オブジェクトの外観形状に沿った、より詳細な転動基準面を形成することできる。従って、どの程度外観形状の凹凸に忠実な転動をさせるかを調節することができる。
【0018】
第4の発明は、第1〜3の何れかの発明のゲーム情報であって、前記第1オブジェクトと前記第2オブジェクトの結合可否を判定する結合判定手段(例えば、図6の結合判定部223)を前記装置に機能させるための情報(例えば、図6の結合判定プログラム423、結合判定情報65、球パラメータ55、配置物パラメータ64)と、前記結合手段および変位点制御手段が、前記衝突判定手段により衝突したと判定されたとともに、前記結合判定手段により結合可と判定された場合に機能するための情報(例えば、図6の表示用モデル結合プログラム421、運動計算用モデル設定プログラム422)と、を含むゲーム情報である
【0019】
第4の発明によれば、第1〜3の何れかの発明と同様の効果を奏するとともに、結合可否の判定によって第1オブジェクトと結合できる第2オブジェクトの条件を設定できる。
例えば、第2オブジェクトが極めて長尺の棒状物である場合、結合させる位置関係如何によっては、例えば、第1オブジェクトが、第2オブジェクトによって串刺しされた状態となり、第1オブジェクトを転動させるのが極端に不自然になる場合が考えられる。そこで、例えば該第2オブジェクトについては、端部で衝突した場合は結合不可と設定する。
従って、不自然な転動が生じる事態を未然に防ぐことができる。
【0020】
また、第5の発明として第4の発明のゲーム情報であって、前記結合判定手段が、予め設定されている前記第2オブジェクトの大きさ及び/又は重量に基づいて、結合可否を判定するための情報(例えば、図6の結合判定プログラム423、半径551、体積552、代表寸法641)を含むゲーム情報を構成することとしても良い。
【0021】
第5の発明によれば、第4の発明と同様の効果を奏するとともに、第1オブジェクトに結合する第2オブジェクトの大きさや重量をコントロールし、第1オブジェクトの外観形状の凹凸変化を、常に所定の範囲に収めることができる。
従って、不自然な転動が生じる事態を未然に防ぐとともに、常に安定した転動を実現してゲーム性の重要な要素である操作の爽快感を維持することができる。
【0022】
第6の発明は、第1〜5の何れかの発明のゲーム情報であって、前記変位点制御手段が、前記変位点の位置を一様化する方向に変位させる適応化手段(例えば、図6の運動計算用モデル馴染演算部226)を有するように機能させるための情報(例えば、図6の運動計算用モデル馴染プログラム426)を含むゲーム情報である
【0023】
第6の発明によれば、第1〜5の何れかの発明と同様の効果を奏するとともに、変位点の位置を一様化する。即ち、転動基準面の凹凸差を小さくして、第1オブジェクトをより転がりやすくする。
従って、例えば、第1オブジェクトの転動とともに変位点の位置を一様化するならば、第2オブジェクトの結合した直後は結合姿勢が不適切で転がり難いが、転動を繰り返すうちに形状が馴染んで徐々に転がりやすくなってゆく感覚を実現し、よりそれらしく見える動きが実現できる。
【0024】
また、第7の発明として第6の発明のゲーム情報であって、前記結合手段により結合された第2オブジェクトの結合態様を変更する結合態様変更手段(例えば、図6の表示用モデル馴染演算部225)を前記装置に機能させるための情報(例えば、図6の表示用モデル馴染プログラム425)と、前記結合態様変更手段による変更に伴って、前記適応化手段が機能するための情報(例えば、図6の表示用モデル馴染プログラム425)と、を含むゲーム情報を構成することとしても良い。
【0025】
第2オブジェクトの結合態様とは、第1オブジェクトとの結合位置関係・姿勢、結合した状態の形状などである。
第7の発明によれば、第6の発明と同様の効果を奏するとともに、結合態様変更手段が第2オブジェクトの結合態様を変化させる。例えば、棒状の第2オブジェクトが第1オブジェクトから突き立つように結合している場合では、第2オブジェクトの長尺方向が第1オブジェクトの面に沿うよう、第2オブジェクトの姿勢や結合位置が変更される。
【0026】
具体的には、例えば、第2オブジェクトの重心位置が第1オブジェクトの中心に最も近づくように結合態様を段階的に変化させる、転動基準面より外に位置する第2オブジェクトの部分を、転動基準面に沿うように屈曲・圧縮するように表示用モデルを変形させる、などの方法で実現できる。
従って、第1オブジェクトが転動することによって、見かけ上の形状の馴染が表現され、転動をよりそれらしく見せることができる。
【0027】
第8の発明は、第1〜7の何れかの発明のゲーム情報であって、所与の条件に応じて、前記結合手段により結合されていた前記第2オブジェクトを前記第1オブジェクトから分離させる分離手段(例えば、図6の表示用モデル結合部221)を前記装置に機能させるための情報(例えば、図6の表示用モデル結合プログラム421)と、前記変位点制御手段が、前記分離手段により前記第2オブジェクトが分離された場合、前記第2オブジェクトが衝突していた位置に近接する変位点を前記所定方向に沿った新たな位置に変位させるための情報(例えば、図6の運動計算用モデル設定プログラム422)と、を含むゲーム情報である
【0028】
第8の発明によれば、第1〜7の何れかの発明と同様の効果を奏するとともに、一度結合した第2オブジェクトを所定の条件で分離させ、分離後の第1オブジェクトの形状に基づいて転動基準面が再設定される。
【0029】
従って、例えば、第1オブジェクトが障害物オブジェクトと衝突した場合を条件として、その相対運動量に応じて既結合状態の第2オブジェクトを分離させるならば、あたかも衝突の影響で既に結合していたものが外れる様子を簡単に実現することができる。また、第2オブジェクトを分離させたのち転動基準面が再設定されることで、第2オブジェクトが外れたところがいびつになってその後の転動に衝突が影響する状態を実現することができる。
【0030】
第9の発明として第1〜8の何れかの発明のゲーム情報であって、前記点設定手段が、前記第1オブジェクトの全面を転動基準面とするための情報(例えば、図6の球表示用モデル情報51、運動計算用モデル情報53)を含むゲーム情報を構成してもよい。
【0031】
第9の発明によれば、第1〜8の何れかの発明と同様の効果を奏するとともに、タイヤのように転動面が設定されない任意の方向に転動できる球転がしの要領で、衝突した他の物体を表面上に結合(付着)して雪ダルマ式に巨大化するキャラクタを転動操作して楽しむゲームを実現することができる。
【0032】
第10の発明は、第1〜9の何れかの発明のゲーム情報を記憶する情報記憶媒体である。
【0033】
ここで言う情報記憶媒体とは、前記装置が情報を読み取り可能な、例えば、CD−ROM、FD(R)、MO、メモリカード、DVD、ハードディスク、DAT、ICメモリなどであって、その接続形態は、装置に着脱自在であっても良いし、通信回線を介して前記ゲーム装置に接続されるものであっても良くその形態は問わない。従って、第10の発明によれば、前記装置に、第1〜9の何れかの発明と同様の効果を発揮させることができる。
【0034】
[発明の実施の形態
〔第1の実施形態〕
次に、図1〜図20を参照して、本発明を適用した第1の実施形態について詳細に説明する。
【0035】
第1の実施形態は、球を転がして他の物体を雪ダルマ式にその表面に結合(付着)させ、時間内にいかに大きくするかを競う『玉転がし』ゲーム、として説明するが、本発明が適用されるものはこれに限定されない。例えば、オブジェクトを転動させることをモチーフとしたキャラクタが登場するゲームであれば、そのキャラクタ設定やゲームストーリ設定にかかわらず適用できる。
【0036】
[構成の説明]
まず、本実施形態における構成を説明する。
図1は、本発明を家庭用ゲーム装置1200に適用した場合の一例を示す図である。同図に示すように、家庭用ゲーム装置1200は、ゲームコントローラ1202、1204と、本体装置1210と、を備え、ディスプレイ1220に接続される。
【0037】
ゲームプログラムやデータ等のゲームを実行するために必要なゲーム情報は、例えば、本体装置1210に着脱自在な情報記憶媒体であるCD−ROM1212、ICメモリ1214、メモリカード1216等に格納されている。
本体装置1210は、前記情報記憶媒体から読み出したゲーム情報とゲームコントローラ1202、1204からの操作入力信号とに基づいて、種々のゲーム処理を実行し、ディスプレイ1220にゲーム画面を表示させる。
【0038】
プレーヤは、ディスプレイ1220に映し出されたゲーム画面を見ながら、ゲームコントローラ1202、1204に備えられた十字キーやアナログスティック、各種のボタン等を操作し、球の移動操作などを入力してゲームを楽しむ。
【0039】
[ゲーム内容の説明]
図2は、家庭用ゲーム装置1200によるゲーム画面の一例を示す図である。ゲーム画面は、例えば、オブジェクトを配置したオブジェクト空間内を所与の視点から見たポリゴンによる3DCG画像として表示される。
【0040】
プレーヤは、キャラクタCとなって、衝突した物体をその表面に結合させる不思議な球Bを転がし、路上やその周辺に配置されている配置物E1〜E3に上手く衝突させ、その表面に結合させ球Bを雪ダルマ式に大きくしてゆく。
【0041】
球Bは、球Bの半径と比べて所定の大きさ以下の配置物Eを結合することができるが、所定の大きさを越える配置物Eは結合できない。図2では、例えば塀(E4、E5、E8)、電柱(E6)、トラック(E7)などは球Bより大きいため結合できない。結合できない配置物は障害物となるので、上手に回避しながら球Bを大きくしなければならない。
【0042】
プレーヤは、球Bを大きくして、よりサイズの大きな配置物Eを結合してゆく。最初は空き缶や野球ボール程度の大きさの配置物Eを結合するところから始まり、巨大化とともに自転車、郵便ポスト、バス等を結合するようになり、ついには家屋や電柱サイズの物体をも結合して街を破壊しながら大きくなる。そして、時間内に球Bを所定の大きさ以上にすればステージクリアとなる。プレーヤは、非日常的な事態のなかで繰り広げられるジョークに満ちた破壊の感覚という、従来にない楽しさを得ることができる。
【0043】
本実施形態によれば、この様に種種雑多な物体(配置物E)をその表面に結合させ不規則な凹凸を有する球Bを、外形形状の凹凸に応じたそれらしい転動を簡単に実現することができる。
【0044】
[原理の説明]
次に、図3〜図5を参照して、本実施形態における球Bの転動を実現するための原理を説明する。本実施形態では、球Bには、球表示用モデルBdと、運動計算用モデルBmと、球衝突判定用モデルBjと、が用意されている。配置物Eには、配置物表示用モデルEdと、配置物衝突判定用モデルEjと、が用意されている。
【0045】
図3は、表示用モデルの扱いについて説明するための図である。
図3(a)に示すように、球Bはゲーム空間内の路面K上に設定された配置物E21〜E24を結合しながら大きくなる。
【0046】
球表示用モデルBdは、ゲーム画面上に球Bの外観を描画するためのモデリングデータであって、例えば図3(b)に示すように、ポリゴンによってモデリングされている。その表面には所定のテクスチャがマッピングされて、例えば雪玉やゴムボール等の見かけが表現される。
【0047】
球Bが配置物Eと衝突すると、球表示用モデルBdには当該配置物Eの配置物表示用モデルEdが衝突位置Hで結合される。
例えば、図3(a)の状況の場合、図3(c)に示すように配置物表示用モデルEd21、Ed25、Ed26が、それぞれ衝突位置H21、H25、H26を結合点として球表示用モデルBdに結合される。球表示用モデルBdと配置物表示用モデルEdとの結合関係は、例えば、球表示用モデルBdを親レベル、配置物表示用モデルEdを子レベル、衝突位置を結合点とする階層関係によって構成される。従って、衝突以降、球Bと配置物Eは一体となって表示されることになる。
【0048】
図4は、運動計算用モデルの扱いについて説明するための図である。
運動計算用モデルBmは、例えば図4(b)に示すように、球Bの中心O1を原点とする極座標(R,θ)で定義される複数の変位点Pを配置して転動基準面Sを形成するモデルである。球Bの転動は、該モデルに基づいて演算される。
【0049】
具体的には、例えば、現在の接地位置に近傍する変位点を参照して球Bの路面Kからの高さを得ることで、上下に振れて見える転動をさせることができる。また、接地位置に隣接する変位点によって形成される転動基準面Sの傾斜を参照して球Bの中心と接地位置を結ぶ直線の鉛直からの左右方向の傾きを得ることで、重心位置がずれて左右に振れているように見える転動をさせることができる。
尚、設定される変位点Pの数は適宜設定して構わない。例えば、球表示用モデルBdを構成するポリゴン数に比べ少なく設定され、運動演算をする際の演算負荷の低減を図っても良い。
【0050】
配置物E21が新たに球Bに衝突した場合は、図4(b)に示す状況のように、運動計算用モデルBmは配置物E21が結合したことによって球Bの外観に凹凸が生じる部分にあたる変位点Pの位置が変更される。
【0051】
より具体的には、図4(c)に示すように、結合した状態の配置物表示用モデルEd21(または配置物衝突判定用モデルEj21)を運動計算用モデルBmに投影した範囲(図中、一点線に挟まれる鋭角領域)に含まれる変位点P1、P2を選択する。そして、中心O1と変位点P1を通る直線L1および中心O1と変位点P2を通る直線L2と、結合した状態の配置物表示用モデルEd21(または配置物衝突判定用モデルEj21)との交点が求められる。
【0052】
前記直線それぞれについて配置物E21との交点が求められたならば、図4(d)に示すように、交点の中から中心O1より最外縁の交点Q1、Q2を検索し、極座標を算出して半径軸座標Rmaxを得る。次に、変位点P1、P2の半径軸座標値Rを、R+α×(Rmax−R)に再設定する。
【0053】
図4(d)の例では、係数αは1未満の実数であって、再設定された変位点はP1’、P2’のように、球表示用モデルBdの見かけ上の凹凸よりも係数αだけ内側に構成される。従って、球Bの最外縁部を路面Kに噛み合いながら転動させることができる。係数αを1以上としても良いのは勿論である。
【0054】
従って、運動計算用モデルBmの凹凸は、球表示用モデルBdの凹凸に対応しており、運動計算時には球Bの外見に応じたそれらしいゴツゴツとした転動が再現可能となる。また、運動計算用モデルBmの凹凸の差を、球表示用モデルBdの凹凸差よりも小さく形成することによって、見かけ上の凹凸のままでは実際上転がらないような状態であってもゲーム性に支障無く運動を計算させることができる。尚、運動計算用モデルBmの変位点Pは、点に限らず平面として設定しても構わない。
【0055】
球衝突判定用モデルBjは、衝突判定処理に使われるモデルであって、例えば図5(b)に示すように、球表示用モデルBdの外観を単純化した所謂バウンディングボリュームとして定義されている。
【0056】
本実施形態における全てのオブジェクトには、大きさ(例えば、半径、代表寸法、体積、重量などの物理量に相当)を表す設定値が与えられている。配置物Eが結合した場合は、例えば、図5(c)に示すように、球衝突判定用モデルBjの大きさは、球Bの大きさと結合された配置物Eの大きさとの和に等しくなるように、球衝突判定用モデルBj’によって更新される。従って、多数のポリゴンからなる球表示用モデルBdを衝突判定に使用することなく、簡単に球Bの大きさに応じた衝突判定を実現できる。
【0057】
[機能ブロックの説明]
次に、本実施形態を実現するための機能ブロックを説明する。
図6は、本実施形態における機能構成の一例を示すブロック図である。同図に示すように、本実施形態を構成する機能ブロックとしては、プレーヤからの操作を入力する操作部10と、装置やゲームの制御にかかわる演算を担う処理部20と、ゲーム画面を出力する表示部30と、プログラムやデータ等を記憶する記憶部40と、が有る。
【0058】
操作部10は、プレーヤからの操作を入力する。操作部10は、図1におけるゲームコントローラ1202、1204に相当し、その機能は、例えば十字キー、レバー、ボタン、ジョイスティック、トラックボールなどのハードウェアによって実現できる。操作部10から出力される操作入力信号は、処理部20に伝えられる。
【0059】
処理部20は、ゲーム装置全体の制御、装置内の各機能ブロックへの命令、ゲーム演算などの各種の演算処理を行う。その機能は、例えば、CPU(CISC型、RISC型)、DSP、あるいはASIC(ゲートアレイ等)などのハードウェアや、所与のプログラムやデータ等により実現できる。また、処理部20には、ゲームの演算処理を行うゲーム演算部22と、ゲーム演算部22の処理によって求められた各種のデータから画像データを生成する画像生成部24と、が含まれる。
【0060】
ゲーム演算部22は、操作部10からの操作入力信号や、記憶部40から読み出したプログラムやデータ等に基づいて、種々のゲーム処理を実行する。ゲーム処理としては、例えば、オブジェクトの移動に伴う位置座標や速度等を求める演算処理、オブジェクトの衝突判定処理、オブジェクトをオブジェクト空間に配置する処理、オブジェクトへのマッピング情報の選択処理、ゲーム結果(成績)を求める処理、視点の位置や視線方向の決定、などが挙げられる。
【0061】
また、ゲーム演算部22には、表示用モデル結合部221と、運動計算用モデル設定部222と、結合判定部223と、表示用モデル馴染演算部225と、運動計算用モデル馴染演算部226と、衝突判定用モデル変更部227と、が含まれる。
【0062】
表示用モデル結合部221は、球Bと配置物Eとが衝突したと判定された場合に、球表示用モデルBdと配置物表示用モデルEdとの位置関係に基づいて衝突位置を決定し、配置物表示用モデルEdを球表示用モデルBdに該衝突位置で結合させる。
【0063】
運動計算用モデル設定部222は、球表示用モデルBdの外観形状に基づいて運動計算用モデルBmの変位点Pの位置を設定する。
【0064】
結合判定部223は、球Bのパラメータと配置物Eのパラメータを比較して、配置物E毎に球Bと結合可能か否か設定する。具体的には、例えば、ゲーム空間において球Bより所定の半径内に配置されている配置物Eを検索して判定対象とする。そして、例えば、配置物Eの大きさを表すパラメータが、球Bの大きさを表すパラメータの所定値以下である場合に結合可とする。
【0065】
表示用モデル馴染演算部225は、球Bに既結合状態の配置物Eの姿勢を、球Bの移動とともに凹凸差が小さくなるように変更する。これによって、配置物Eの結合時の姿勢如何にかかわらず、球Bが回転しているとだんだんと全体として凹凸が小さな球形に近づいて外観形状が馴染む状態を実現する。具体的には、例えば、既結合状態の配置物Eを、結合点を中心に球Bの回転方向とは逆向きに所定回転させる。
【0066】
運動計算用モデル馴染演算部226は、運動計算用モデルBmの表面の凹凸差を球Bの移動と共に一様化させることによって、球表示用モデルBdの馴染と同様に、球Bが転がる内に球状に馴染んでより転がり易くなる状態を実現する。具体的には、例えば、全ての変位点Pの平均値(中心O1からの距離の平均値)より外(即ち、大きい場合)に設定されている変位点Pを、該平均値に近づくように変位させる。
【0067】
衝突判定用モデル変更部227は、球Bに配置物Eが結合して大きくなった分だけ、球Bの球衝突判定用モデルBjを拡大する。具体的には、例えば、球Bの球衝突判定用モデルBjを、球Bの体積と配置物Eの体積和と等しくなる大きさに拡大する。
【0068】
画像生成部24は、例えばCPU、DSP、画像生成専用のIC、メモリなどのハードウェアによって実現され、ゲーム演算部22からの指示信号や各種座標情報等に基づいて画像信号の生成を行う。
【0069】
表示部30は、画像生成部24からの画像信号に基づいて、ゲーム画面を表示出力する物であり、図1のディスプレイ1220に相当する。表示部30は、例えば、CRT、LCD、ELD、PDP、HMD等のハードウェアによって実現できる。
【0070】
記憶部40は、装置全体の制御を実行させるプログラムやデータ類を記憶しており、例えば、CD−ROM、ゲームカセット、ICカード、MD、FD(登録商標) 、DVD、ICメモリ、ハードディスク等のハードウェアによって実現される。
【0071】
記憶部40には、ゲーム内における種々の処理を実行させるプログラムやプログラムの実行に必要な設定値等のデータが含まれるゲーム情報42が、記憶されている。
【0072】
ゲーム情報42には、プログラムとしては、表示用モデル結合部221を機能させるための表示用モデル結合プログラム421と、運動計算用モデル設定部222を機能させるための運動計算用モデル設定プログラム422と、結合判定部223を機能させるための結合判定プログラム423と、表示用モデル馴染演算部225を機能させるための表示用モデル馴染プログラム425と、運動計算用モデル馴染演算部226を機能させるための運動計算用モデル馴染プログラム426と、衝突判定用モデル変更部227を機能させるための衝突用モデル変更プログラム427と、が含まれる。
【0073】
またゲーム情報42には、データとしては、球Bおよび配置物Eそれぞれに関する情報を格納する球データ50と、配置物データ60と、が含まれる。
【0074】
球データ50には、球表示用モデル情報51と、運動計算用モデル情報53と、球衝突判定用モデル情報54と、球パラメータ55と、結合履歴情報57と、が格納される。
【0075】
球表示用モデル情報51は、図3に示した球表示用モデルBdのモデリングデータを格納する。そして、球表示用モデル情報51には、球Bの初期設定にあたるオリジナルモデル情報511と、球Bのオリジナルモデルと配置物Eの表示用モデルとの階層情報512と、が含まれる。
【0076】
階層情報512は、球Bのオリジナルモデルを親ノード(要素)、結合した配置物Eを子ノード、衝突位置Hを結合点、とする階層構造の情報を格納する。
従って、新たに結合する配置物Eと球B(既に結合状態の別の配置物Eが有る)との衝突位置を求める場合は、球Bのオリジナルモデルと既結合状態の配置物表示用モデルEdとを対象として、どこで衝突したかが求められる。
【0077】
運動計算用モデル情報53は、図4に示した運動計算用モデルBmのモデリングデータを格納する。
【0078】
球衝突判定用モデル情報54は、図5に示した球Bの球衝突判定用モデルBjのモデリングデータを格納する。本実施形態では、衝突判定用モデルは所謂バウンディングボリュームとして定義される。
【0079】
球パラメータ55には、現在の球Bの状態量と各種設定情報が格納される。具体的には、例えば、速度、加速度、位置座標、姿勢の情報、および球Bの大きさを示す半径551、体積552などの情報が格納されるが、適宜設定して構わない。
【0080】
結合履歴情報57は、球Bと結合した順に、例えば、配置物Eの識別番号571と、結合点座標情報572と、を記憶する。
【0081】
配置物データ60は、球B以外にゲーム空間内に配置される全てのオブジェクト毎に設定される。配置物データ60には、配置物表示用モデル情報61と、配置物衝突判定用モデル情報62と、配置物パラメータ64と、結合判定情報65と、が格納されている。
【0082】
配置物表示用モデル情報61は、配置物表示用モデルEdのモデリングデータを格納する。配置物衝突判定用モデル情報62は、配置物衝突判定用モデルEjのモデリングデータを格納する。尚、本実施形態では、配置物衝突判定用モデルEjは所謂バウンディングボリュームとするがその形状は適宜設定して構わない。
【0083】
配置物パラメータ64は、球パラメータ55と同様に、配置物Eの状態量と各種設定情報が格納される。具体的には、例えば、速度、加速度、位置座標、姿勢の情報、配置物Eの大きさを示す代表寸法641、体積642、重心位置座標643などの情報が格納されるが、適宜設定して構わない。
【0084】
結合判定情報65は、球Bとの結合可否を示す情報であって、例えば結合可は「1」結合不可は「0」として記憶される。結合判定情報65は、球Bの大きさに応じて結合判定部223によって変更される。
【0085】
[フローの説明]
次に、図7〜図16を参照して、本実施形態における詳細な処理の流れについて説明する。尚、衝突判定処理、オブジェクトの位置・速度・加速度を求める演算処理、ゲーム画面の描画処理などは公知であるのでここでの説明は省略する。
【0086】
図7は、ゲーム中の処理の流れを説明するためのフローチャートである。
同図に示すように、ゲームスタートと共に、操作部10より球Bの移動操作が入力される(ステップS102)。
【0087】
ゲーム演算部22は、操作部10からの操作入力信号に基づいて運動計算用モデル情報53に基づいて球Bの転動を計算し、画像生成部24に球表示用モデル情報51に基づいて球Bを移動表示させる(ステップS104)。
次いでゲーム演算部22は、動物や乗物などゲーム空間内で独自に移動する設定がされている配置物Eの運動を計算して、画像生成部24に配置物表示用モデル情報61に基づいて当該配置物Eを移動表示させる(ステップS106)。
【0088】
球Bと配置物Eの移動がされたならば、球Bを中心とする所定の範囲に配置されている配置物Eについて、結合判定部223が結合可否判定処理を実行する(ステップS108)。
【0089】
図8は、結合可否判定処理の流れを説明するためのフローチャートである。
同図に示すように、結合判定部223は、先ず球Bから所定の半径に有る配置物Eを検索する(ステップS202)。例えば図14は、塀(E44〜E46)に囲まれた路を行く球Bを真上から見た様子を示す図である。図14の場合では、配置物E41〜E46が結合判定処理の対象となる。
【0090】
次に、結合判定部223は、検索された配置物Eの配置物パラメータ64と球パラメータ55とを比較して、当該配置物Eと球Bの大小関係を判定する(ステップS204)。例えば、配置物Eの代表寸法641が球Bの半径551の20%以下である場合(ステップS206のYES)、球Bに結合可能と判定して結合判定情報65に「1」を格納する(ステップS208)。一方、代表寸法641が球Bの半径551の20%以下でない場合は(ステップS206のNO)、大きすぎて球Bに結合できないと判定して結合判定情報65に「0」を格納する(ステップS210)。そして、判定結果の格納が終了したならば、図7のフローに戻る。
【0091】
図7において、次にゲーム演算部22は、球衝突判定用モデル情報54と配置物衝突判定用モデル情報62とに基づいて衝突判定を実施する(ステップS110)。そして、球Bと配置物Eとが衝突した場合(ステップS112のYES)、ゲーム演算部22は、当該配置物Eの結合判定情報65を参照して、球Bに結合できるか否かを判断する(ステップS114)。
【0092】
配置物Eが結合可と判定されている場合(ステップS114のYES)、表示用モデル結合部221が、球Bと該配置物Eを対象にして、表示用モデル結合処理を実行する(ステップS116)。
【0093】
図9は、表示用モデル結合処理の流れを説明するためのフローチャートである。同図に示すように、表示用モデル結合部221は、先ず階層情報512を参照して、球表示用モデル情報51、と衝突した配置物Eの配置物表示用モデル情報61とに基づいて配置物Eの衝突位置Hを求める(ステップS302)。
【0094】
図15は、衝突位置の関係を示す概念図である。同図(a)は、球Bに何も結合されておらず、球Bと配置物E30が衝突した場合を、球表示用モデルBdと配置物表示用モデルEd30とで表している。この場合、衝突位置Hは、球表示用モデルBd上のH1になる。同図(b)は、球Bにすでに複数の配置物Eが結合状態にあって、新たに結合する配置物E30が、既結合状態の配置物E32と衝突した場合を示す。この場合、衝突位置Hは、配置物E32の配置物表示用モデルEd32上のH2になる。
従って、球Bが結合を繰り返すと、見かけ上からは、新たに結合する配置物E30は既結合状態の配置物E32に結合することになる。尚、衝突位置情報は、例えば、球Bのローカル座標系における座標値でも配置物Eに最も近い頂点であっても良く、適宜定義して構わない。
【0095】
衝突位置Hが求められたならば、表示用モデル結合部221は、球Bのオリジナルモデルを親レベル、新たに結合した配置物Eを子レベル、前記衝突位置Hを結合点とする旨、階層情報512を更新し(ステップS304)、結合履歴情報57に新たに配置物Eを加えて更新する(ステップS306)。更新が終わったら、図7のフローに戻る。
【0096】
図7に戻って、次に運動計算用モデル設定部222が、運動計算用モデル設定処理を実行して、変更された球表示用モデル情報51に応じて運動計算用モデル情報53を変更する(ステップS118)。
【0097】
図10は、運動計算用モデル設定処理の流れを説明するためのフローチャートである。同図に示すように、運動計算用モデル設定部222は、先ず、新たに結合した配置物Eの配置物表示用モデルEdまたは配置物衝突判定用モデルEjを運動計算用モデルBm上に投影した範囲に含まれる変位点Pを選択する(ステップS402)。即ち、配置物Eが結合したことによって凸部が生じる範囲の変位点Pを選択する。例えば、図4(c)の場合、変位点P1とP2とが選択される。
【0098】
次に、運動計算用モデル設定部222は、選択された変位点Pと球Bの中心O1とを通る直線Lを求め(ステップS404)、球Bに結合した姿勢の配置物表示用モデルEdまたは配置物衝突判定用モデルEjとの交点を求める(ステップS406)。
【0099】
交点が求められたならば、運動計算用モデル設定部222は、図4(d)に示すように、交点の中から中心1より最外縁の交点Q1、Q2を検索し、極座標値を算出して半径軸座標Rmaxを得る(ステップS408)。そして、運動計算用モデル設定部222は、変位点P1、P2の半径軸座標値RをR+α×(Rmax−R)に再設定する(ステップS410)。運動計算用モデル設定部222は、以上の処理をステップS402で選択された全ての変位点Pについて実施する(ステップS412)。
【0100】
従って、運動計算用モデルBmは、図4(d)に示すように見かけの形状(球表示用モデルBdの外観形状)よりも凹凸が少ない転動基準面Sを形成する。この運動計算用モデルBmに基づいて、球Bの転動を計算することによって、見かけ同様にゴツゴツとした転動を実現する一方で、ゲームバランスに見合った転がり易さが得られる。設定が終了したら、図7のフローに戻る。
【0101】
図7に戻って、次に衝突判定用モデル変更部227が、新たに結合された配置物Eの分だけ球衝突判定用モデルBjを変更する(ステップS120)。
【0102】
図11は、衝突判定用モデル変更処理の流れを説明するためのフローチャートである。同図に示すように、衝突判定用モデル変更部227は、先ず、新たに結合した配置物Eの体積642を球Bの体積552に加算し変更する(ステップS502)。そして、加算後の体積552と同体積となるように球衝突判定用モデルBjを求め(ステップS504)、球衝突判定用モデル情報54を更新する(ステップS506)。次いで、衝突判定用モデル変更部227は、加算後の体積552と体積が等しくなる球形の半径551を求め、球パラメータ55を更新する(ステップS508)。更新が済んだら図7のフローに戻る。
【0103】
図7に戻って、次にゲーム演算部22は、球パラメータ55から速度の情報を参照して現在移動中であるかを判定する(ステップS122)。
移動中である場合(ステップS122のYES)、表示用モデル馴染演算部225が、表示用モデル馴染処理を実行して、球Bの外観の凹凸差が小さくなるように既結合状態の配置物Eの結合位置および結合姿勢を変更して球Bの形を馴染ませ(ステップS124)、次いで、運動計算用モデル馴染演算部226が運動計算用モデル馴染処理を実行して、運動計算用モデルBmの形を馴染ませる(ステップS126)。
一方、移動していない場合は(ステップS122のNO)、球Bが転動していないのに形が変化しないようにするために、表示用モデル馴染処理と運動計算用モデル馴染処理は実行しない。
【0104】
図12は、表示用モデル馴染処理の流れを説明するためのフローチャートである。同図に示すように、表示用モデル馴染演算部225は、先ず結合履歴情報57を参照して、既結合状態の配置物Eを、結合逆順(新しく結合した方から順)に従って所定数だけ選択する(ステップS602)。
尚、この際、表示用モデル馴染演算部225は、視点(仮想カメラ)の位置と球Bの位置とに基づいて、球Bの中心O1より画面奥に位置する配置物Eを選択する。即ち、ゲーム画面上球Bの裏側に位置して事実上プレーヤからは見えない配置物Eを処理対象とすることで、配置物Eの姿勢が変化する瞬間がプレーヤに見えないようにする。また、選択する数を限定するのは該処理に係る演算負荷を適正に保つためである。
【0105】
次に、選択された配置物Eを、球Bの回転方向とは逆向きに、結合点を中心に所定角度回転以内で隣接する他の配置物Eと衝突するまで回転させる(ステップS604)。
【0106】
ここで、例えば図16(b)に示すように、仮想力に応じて配置物E34を回転させた結果、当該配置物E34が新たに隣接する他の配置物E35に接触した場合(ステップS606のYES)、結合点Tと新しい接触点T’を比較して配置物Eの重心Gに近い点を結合点とする(ステップS608)。そして、階層情報514、結合履歴情報57の結合位置座標572を変更する(ステップS610)。表示用モデル馴染演算部225は、ステップS602で選択した配置物E全てに同様の処理を実行して(ステップS612)、図7のフローに戻る。
【0107】
図7に戻って、次に運動計算用モデル馴染演算部226が、運動計算用モデルの凹凸差が小さくなるように変位点Pの位置を変更する(ステップS126)。
【0108】
図13は、運動計算用モデル馴染処理の流れを説明するためのフローチャートである。同図に示すように、運動計算用モデル馴染演算部226は、先ず全変位点Pの半径軸座標の平均値Raveを求める(ステップS702)。次いで、平均値Raveより外に位置する変位点Pを選択する(ステップS704)。
【0109】
選択された変位点Pの半径軸座標を、運動計算用モデル馴染演算部226は、R=R−(R−Rave)×γに変更する(ステップS706)。係数γは適宜設定して良い。変更が終了したら、図7のフローに戻る。
【0110】
図7に戻って、ゲーム演算部22は、経過時間を判定する(ステップS128)。ここで、所定時間に達している場合は(ステップS130のYES)、ゲームオーバとなる(ステップS132)。所定時間に満たない場合は(ステップS130のNO)、ステージクリアの判定が行われ、球Bが所定の大きさより大きくなっていてクリア条件を満たす場合は(ステップS134のYES)、次のステージに進む(ステップS136)。球Bが十分大きくなっていなければ(ステップS134のNO)引き続きゲームが継続される。
【0111】
[ハードウェアの構成]
次に、本実施形態を実現できるハードウェアの構成について説明する。
図17は、本実施形態のハードウェア構成の一例を示す図である。同図に示す装置ではCPU1000、ROM1002、RAM1004、情報記憶媒体1006、音生成IC1008、画像生成IC1010、I/Oポート1012、1014が、システムバス1016により相互にデータの入出力可能に接続されている。
【0112】
音生成IC1008には、スピーカ1020が接続され、画像生成IC1010には、表示装置1018が接続され、I/Oポート1012には、コントロール装置1022が接続され、I/Oポート1014には、通信装置1024が接続されている。
【0113】
情報記憶媒体1006は、図6における記憶部40に該当し、プログラム、画像データ、音データなど予め設定されている情報や、ゲームの進行状況を記憶するプレイデータなどが主に格納されるものであり、図6におけるゲーム情報42も格納されることとなる。
【0114】
家庭用ゲーム装置1200では、例えば、ゲームプログラムを格納する情報記憶媒体として、CD−ROM1212、ICメモリ1214、DVDなどが用いられ、プレイデータを格納する情報記憶媒体としては、メモリカード1216などが用いられる。また、業務用ゲーム装置の場合では、ROM等のICメモリやハードディスクが用いられ、この場合は情報記憶媒体1006は、ROM1002になる。
【0115】
コントロール装置1022は、図6における操作部10に該当し、操作パネルや図1のゲームコントローラ1202、1204等に相当するものであり、プレーヤが、ゲームの進行に応じて種々の操作を装置本体に入力するためのものである。
【0116】
CPU1000は、図6における処理部20に該当し、情報記憶媒体1006に格納されているプログラム、ROM1002に格納されているシステムプログラム、コントロール装置1022によって入力される操作入力信号等に従って、装置全体の制御や各種のデータ処理を行う。
【0117】
RAM1004は、このCPU1000の作業領域などとして用いられる記憶手段であり、情報記憶媒体1006やROM1002内に記憶された所与の情報、或いはCPU1000の演算結果が格納される。
【0118】
更に、この種の装置には、音生成IC1008と、画像生成IC1010とが設けられていて、ゲーム音や、ゲーム画像の好適な出力が行えるようになっている。音生成IC1008は、情報記憶媒体1006やROM1002に記憶される情報に基づいて効果音やBGM等のゲーム音を生成する集積回路であり、生成された音はスピーカ1020によって出力される。
【0119】
また、画像生成IC1010は、RAM1004、ROM1002、情報記憶媒体1006等から出力される画像情報にもとづいて表示装置1018に画像を出力するための画素情報を生成する集積回路である。なお、表示装置1018は、図6における表示部30に該当し、CRT、LCD、PDP、ELDなどによって実現される。
【0120】
また、通信装置1024は、ゲーム装置内部で利用される各種の情報を外部とやり取りするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受信したり、通信回線を介して、ゲームプログラム等の情報を送受信することなどに利用される。
【0121】
また、図7〜図13で説明した処理は、当該処理を行うプログラムと、該プログラムを格納した情報記憶媒体1006と、該プログラムに従って動作するCPU1000、画像生成IC1010、音生成IC1008等によって実現される。尚、画像生成IC1010、音生成IC1008等で行われる処理はCPU1000、或いは汎用のDSP等によってソフトウェア的に実行されても良い。
【0122】
尚、本発明は図1に示した家庭用ゲーム装置1200だけでなく、業務用ゲーム装置、多数のプレーヤが参加する大型アトラクション装置、マルチメディア端末、画像生成装置、ゲーム画像を生成するシステム基板等の種々の装置に適用できる。
【0123】
例えば、図18は、本発明を業務用ゲーム装置1300に適用した場合の一例を示す図である。業務用ゲーム装置1300では、ディスプレイ1304にゲーム画面が映し出される。プレーヤは、該ゲーム画面を見ながら、スティック1306で、球Bの移動操作を入力して、ゲームを楽しむ。
【0124】
業務用ゲーム装置1300に内蔵されるシステム基板1310には、CPU、画像生成IC、音生成IC等が実装されている。ゲーム情報42は、システム基板1310上の情報記憶媒体であるメモリ1312に格納されている。
【0125】
また、図19は、本発明を、ネットワークを介して接続された装置を含むゲーム装置に適用した場合の例を示す図である。
図19(a)の構成では、ホスト装置1400と、ホスト装置1400と通信回線1402を介して接続される端末1404−1〜1404−nとを含む。
この場合、ゲーム情報42は、例えば、ホスト装置1400が制御可能な磁気ディスク装置、磁気テープ装置、ICメモリ等の情報記憶媒体1406に格納されている。端末1404−1〜1404−nが、スタンドアロンでゲーム画像、ゲーム音を再生できるものである場合には、ホスト装置1400からは、ゲーム画像、ゲーム音を生成するためのゲームプログラムなどが端末1404−1〜1404−nに配信される。一方、スタンドアロンで生成できない場合には、ホスト装置1400がゲーム画像、ゲーム音を生成して端末1404−1〜1404−nに伝送することにより端末において出力することとなる。
【0126】
図19(b)の構成の場合、ホスト装置1400に該当する装置は無く、端末1404−1〜1404−nが通信回線1402を介して接続され、本発明の各手段を端末1404−1〜1404−n間で分散して実行する。同様に、本発明の各手段を実行するためのプログラムやデータを端末の情報記憶媒体に分散して格納するようにしても良い。
【0127】
ネットワークに接続する端末は、上述した家庭用ゲーム装置であることは勿論のこと、パーソナルコンピュータ、業務用ゲーム装置、PDA、携帯電話機などの携帯端末などで有っても良い。そして、業務用ゲーム装置をネットワークに接続する場合には、業務用ゲーム装置の間で情報のやり取りが可能であるとともに、家庭用ゲーム装置との間でも情報のやり取りが可能な携帯型情報記憶装置(メモリカード、携帯型ゲーム装置)を使用可能な構成としても良い。
【0128】
〔第2の実施形態〕
次に、図21と図22を参照して、本発明を適用した第2の実施形態について説明する。第2の実施形態では、球Bが障害物オブジェクトと衝突した場合に、既結合状態の配置物Eを分離する処理を実行する例について説明する。尚、第2の実施形態は、基本的に第1の実施形態と同様の構成要素によって実現可能であり、同様の要素には同じ符号をつけて説明は省略する。
【0129】
障害物オブジェクトとは、結合可否判定部223によって、結合不可と判定された配置物Eであって、例えば図2の例では、塀(E4、E5、E8)、電柱(E6)、トラック(E7)などは球Bより大きいため結合できず、障害物オブジェクトに該当する。
【0130】
本実施形態では、図7のステップS114においてNOの場合、ステップS122の前段階で結合解除処理を実行して、球Bと既結合状態の配置物Eとの階層関係を解除することによって、球Bが障害物オブジェクトと衝突して配置物Eが分離する状況を実現する。
【0131】
[フローの説明]
図21は、結合解除処理の流れを説明するためのフローチャートである。図22は、球が障害物オブジェクトと衝突して配置物が分離する状態を説明する概念図である。
【0132】
結合解除処理では、図22(a)に示すように、先ずゲーム演算部22が、球Bと衝突した配置物Eとの相対運動量mvを算出し(ステップS802)、相対運動量mvに応じて階層を解除し球Bから分離させるオブジェクトの数nを決定する(ステップS804)。また、同様に相対運動量mvに応じて、分離させるオブジェクトを選択する範囲を示す角度θを決定する(ステップS806)。
尚、オブジェクト数nと角度θは、相対運動量mvと比例関係で決定されても良いし、相対運動量mvに基づいて段階的に決定されても良く、ゲーム性と演出の観点から適宜設定して構わない。
【0133】
次に、表示用モデル結合部221が、球表示用モデルBdと配置物表示用モデルEdとに基づいて衝突位置Hを求める(ステップS808)。衝突位置Hが求められたならば、結合履歴情報57を参照して、該衝突位置Hより角度軸座標±θの範囲で結合している既結合状態の配置物Eを、結合したのと逆順に数nだけ選択する(ステップS810)。図22(a)の例では、数n=5であって、角度軸座標±θの範囲に含まれ分離対象となった配置物Eがハッチング表示されている。そして、表示用モデル結合部221は、選択した配置物Eの階層を解除して球Bより分離して階層情報512を更新し(ステップS812)、結合履歴情報57から分離した配置物Eの履歴を削除する(ステップS814)。
【0134】
分離された配置物には、図22(b)に示すように、ゲーム演算部22が、分離された配置物Eにランダムに飛散速度vを設定して衝突の衝撃で飛び散る力を与える(ステップS816)。これによって、分離した配置物Eは、それぞれに飛散し落下することになる。
【0135】
オブジェクトが分離して球表示用モデルBdが変化したので、次に運動計算用モデル設定部222が運動計算用モデル設定処理(図10参照)を実行し、変化した球Bの外観形状の凹凸に基づいて運動計算用モデルBmを変更する(ステップS818)。尚、変位対象の変位点Pは、分離された配置物E(この時点では、球Bとの階層は解除されているが位置は移動していない状態)を運動計算用モデルBmに投影した範囲から選択される。これによって、結合していた配置物Eが外れたところがいびつになって転動に影響する状態を実現することができる。
【0136】
次に、衝突判定用モデル変更部227が、分離した配置物Eの体積642だけ、球Bの体積552を減算する(ステップS820)。球Bの体積552が更新されたならば、続いて、球衝突判定用モデルBj、を減算された体積644と同体積になる大きさに縮小し、球衝突判定用モデル情報54を変更する(ステップS822)。そして、衝突判定用モデル変更部227は、減算された体積552を有する球体の半径を算出して半径551を更新し(ステップS824)、図7のフローに戻る。
【0137】
以上の処理によって、図22(c)に示すように、あたかも衝突の影響で結合していた配置物Eが外れる様子を簡単に実現することができる。
【0138】
以上、本発明を適用した第1および第2実施形態について説明したが、本発明の適用がこれらに限定されるものではなく、本発明の主旨を逸脱しない限りにおいて適宜変更して構わない。
【0139】
例えば、運動計算用モデルBmを複数の変位点Pで構成するとしたが、図20(a)に示すように、球Bのオリジナルモデルの表面から放射状に別途オブジェクトFを設け、その端面で転動基準面を形成するとしても良い。また、図20(b)に示すように、点ではなく複数の平面によって構成されるとしても良い。
【0140】
【発明の効果】
本発明によれば、第1オブジェクトに第2オブジェクトが衝突した場合、結合手段が第2オブジェクトを該衝突位置で第1オブジェクトに結合することによって、衝突以降は第1オブジェクトと第2オブジェクトは、一体に表示可能となる。
【0141】
一方、第1オブジェクトには、点設定手段によって表示用のモデルとは別に、複数の変位点が設定されて転動基準面が形成されており、変位点制御手段によって、結合した第2オブジェクトの結合態様に基づいて、変位点制御手段が適当に変位点位置を決定し転動基準面を形成する。従って、第1および第2オブジェクトの外観形状がいかに複雑であっても、少ない演算負荷で第1オブジェクトをその外観形状に応じたそれらしい動きで転動させることが可能となる。
【0142】
衝突した他の物体を表面上に結合(付着)して雪ダルマ式に巨大化するキャラクタを転動操作して楽しむゲームにおいて、第1オブジェクトをプレーヤが操作するキャラクタ、第2オブジェクトを周囲に配置されている物体に当てはめるならば、巨大化するキャラクタにその外観の凹凸に応じたそれらしい転動をさせることができる。
【図面の簡単な説明】
【図1】家庭用ゲーム装置に適用した場合の外観の一例を示す図。
【図2】ゲーム画面の一例を示す図。
【図3】表示用モデルの扱いについて説明するための図。
【図4】運動計算用モデルの扱いについて説明するための図。
【図5】球衝突判定用モデルの扱いについて説明するための図。
【図6】機能構成の一例を示すブロック図。
【図7】ゲーム中の処理の流れを説明するためのフローチャート。
【図8】結合可否判定処理の流れを説明するためのフローチャート。
【図9】表示用モデル結合処理の流れを説明するためのフローチャート。
【図10】運動計算用モデル設定処理の流れを説明するためのフローチャート。
【図11】衝突判定用モデル変更処理の流れを説明するためのフローチャート。
【図12】表示用モデル馴染処理の流れを説明するためのフローチャート。
【図13】運動計算用モデル馴染処理の流れを説明するためのフローチャート。
【図14】塀に囲まれた路を行く球を真上から見た様子を示す図。
【図15】衝突位置の関係を示す概念図。
【図16】運動計算用モデル馴染処理の概念を説明するための概念図。
【図17】家庭用ゲーム装置のハードウェア構成の一例を示す図。
【図18】業務用ゲーム装置に適用した場合の外観の一例を示す図。
【図19】ネットワークを介して接続された装置を含むゲーム装置に適用した場合の例を示す図。
【図20】運動計算用モデルの変形例を示す図。
【図21】第2の実施形態における、結合解除処理の流れを説明するためのフローチャート。
【図22】結合解除処理の概念を説明するための図。
【符号の説明】
10 操作部
20 処理部
22 ゲーム演算部
221 表示用モデル結合部
222 運動計算用モデル設定部
223 結合判定部
224 移動量演算部
225 表示用モデル馴染演算部
226 運動計算用モデル馴染演算部
227 衝突判定用モデル変更部
24画像生成部
30 表示部
40記憶部
42 ゲーム情報
421 表示用モデル結合プログラム
422 運動計算用モデル設定プログラム
423 結合判定プログラム
424 移動量算出プログラム
425 表示用モデル馴染プログラム
426 運動計算用モデル馴染プログラム
427 衝突用モデル変更プログラム
50 球データ
51 球表示用モデル情報
53 運動計算用モデル情報
54 球衝突判定用モデル情報
55 球パラメータ
57 結合履歴情報
60 配置物データ
61 配置物表示用モデル情報
62 配置物衝突判定用モデル情報
64 配置物パラメータ
65 結合判定情報
B 球
Bd 球表示用モデル
Bj 球衝突判定用モデル
Bm 運動計算用モデル
C キャラクタ
E 配置物
Ed 配置物表示用モデル
Ej 配置物球衝突判定用モデル
H 衝突位置
P 変位点
R 半径軸座標

Claims (11)

  1. コンピュータに、第1オブジェクト及び第2オブジェクトを含む複数のオブジェクトを配置した仮想空間を設定させるとともに、所与の視点から見た当該仮想空間の画像を生成させて、所与のゲームを実行させるためのプログラムであって、
    前記第1オブジェクトに複数の変位点を設定する点設定手段
    前記第1オブジェクトと第2オブジェクトとが衝突したか否かを判定する衝突判定手段
    前記衝突判定手段により衝突したと判定された場合に、第1オブジェクトに当該第2オブジェクトを当該衝突位置で結合させる結合手段
    前記結合手段により前記第2オブジェクトが結合された場合、当該衝突位置に近接する変位点を、前記第1オブジェクトの中心から離れるように、新たな位置に変位させる変位点制御手段
    前記第1オブジェクトが前記仮想空間内の所定面上を転動する際の当該第1オブジェクトの運動演算を前記変位点に基づいて行うことによって、前記結合手段により前記第2オブジェクトが結合された場合には、前記変位点制御手段による変位後の変位点に基づく運動演算を行い、当該第2オブジェクトと当該第1オブジェクトとが一体となって前記仮想空間内を転動するように制御する転動制御手段
    として前記コンピュータを機能させるためのプログラム。
  2. 請求項1に記載のプログラムであって、
    前記変位点制御手段が、前記結合手段により前記第1オブジェクトに前記第2オブジェクトが結合された状態の当該第2オブジェクトの外縁に基づいて、変位点の変位量を決定するように前記コンピュータを機能させるためのプログラム。
  3. 請求項1または2に記載のプログラムであって、
    前記変位点制御手段が、前記第1オブジェクトに、前記結合手段により結合された前記第2オブジェクトを投影した範囲に含まれる変位点を変位させる変位点として決定するように前記コンピュータを機能させるためのプログラム。
  4. 請求項1〜3の何れかに記載のプログラムであって、
    前記第1オブジェクトと前記第2オブジェクトの結合可否を判定する結合判定手段として前記コンピュータを機能させ、
    前記結合手段および変位点制御手段が、前記衝突判定手段により衝突したと判定されたとともに、前記結合判定手段により結合可と判定された場合に機能するように前記コンピュータを機能させる、
    ためのプログラム。
  5. 請求項4に記載のプログラムであって、
    前記結合判定手段が、予め設定されている前記第2オブジェクトの大きさを表す設定値に基づいて、結合可否を判定するように前記コンピュータを機能させるためのプログラム。
  6. 請求項1〜5の何れかに記載のプログラムであって、
    前記複数の変位点それぞれの前記第1オブジェクトの中心からの距離の平均より大きい位置にある変位点の位置を前記第1オブジェクトの中心に近づくように徐々に変位させる適応化手段として前記コンピュータを機能させるためのプログラム。
  7. 請求項6に記載のプログラムであって、
    前記結合手段により結合された第2オブジェクトの結合態様を変更する結合態様変更手段として前記コンピュータを機能させ
    前記結合態様変更手段による変更に伴って、前記適応化手段が機能するように前記コンピュータを機能させる
    ためのプログラム。
  8. 請求項1〜7の何れかに記載のプログラムであって、
    所与の条件に応じて、前記結合手段により結合されていた前記第2オブジェクトを前記第1オブジェクトから分離させる分離手段として前記コンピュータを機能させ、
    前記変位点制御手段が、前記分離手段により前記第2オブジェクトが分離された場合、前記第2オブジェクトが結合していた位置に近接する変位点を、前記第オブジェクトの中心に近づけるように、新たな位置に変位させるように前記コンピュータを機能させる、
    ためのプログラム。
  9. 請求項1〜8の何れかに記載のプログラムであって、
    前記点設定手段が、前記第1オブジェクトを取り囲むように変位点を設定するように前記コンピュータを機能させるためのプログラム。
  10. 請求項1〜9の何れかに記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
  11. 第1オブジェクト及び第2オブジェクトを含む複数のオブジェクトを配置した仮想空間を設定するとともに、所与の視点から見た当該仮想空間の画像を生成して、所与のゲームを実行するゲーム装置であって、
    前記第1オブジェクトに複数の変位点を設定する点設定手段と、
    前記第1オブジェクトと第2オブジェクトとが衝突したか否かを判定する衝突判定手段と、
    前記衝突判定手段により衝突したと判定された場合に、第1オブジェクトに当該第2オブジェクトを当該衝突位置で結合させる結合手段と、
    前記結合手段により前記第2オブジェクトが結合された場合、当該衝突位置に近接する変位点を、前記第1オブジェクトの中心から離れるように、新たな位置に変位させる変位点制御手段と、
    前記第1オブジェクトが前記仮想空間内の所定面上を転動する際の当該第1オブジェクトの運動演算を前記変位点に基づいて行うことによって、前記結合手段により前記第2オブジェクトが結合された場合には、前記変位点制御手段による変位後の変位点に基づく運動演算を行い、当該第2オブジェクトと当該第1オブジェクトとが一体となって前記仮想空間内を転動するように制御する転動制御手段と、
    を備えるゲーム装置。
JP2002054809A 2002-02-28 2002-02-28 プログラム、情報記憶媒体、およびゲーム装置 Expired - Lifetime JP3843241B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002054809A JP3843241B2 (ja) 2002-02-28 2002-02-28 プログラム、情報記憶媒体、およびゲーム装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002054809A JP3843241B2 (ja) 2002-02-28 2002-02-28 プログラム、情報記憶媒体、およびゲーム装置

Publications (2)

Publication Number Publication Date
JP2003251068A JP2003251068A (ja) 2003-09-09
JP3843241B2 true JP3843241B2 (ja) 2006-11-08

Family

ID=28665855

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002054809A Expired - Lifetime JP3843241B2 (ja) 2002-02-28 2002-02-28 プログラム、情報記憶媒体、およびゲーム装置

Country Status (1)

Country Link
JP (1) JP3843241B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11110351B2 (en) 2018-09-06 2021-09-07 Bandai Namco Entertainment Inc. Information storage media, game devices and servers
JP7369556B2 (ja) 2018-09-06 2023-10-26 株式会社バンダイナムコエンターテインメント プログラム、ゲーム装置、サーバ装置及びゲーム提供方法

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4335160B2 (ja) * 2005-03-02 2009-09-30 任天堂株式会社 衝突判定プログラムおよび衝突判定装置
JP4651435B2 (ja) * 2005-03-31 2011-03-16 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及び画像生成システム
JP5031243B2 (ja) * 2005-12-16 2012-09-19 株式会社バンダイナムコゲームス プログラム、情報記憶媒体、ゲーム装置及びサーバ
JP4719579B2 (ja) * 2006-01-26 2011-07-06 任天堂株式会社 画像処理プログラムおよび画像処理装置
JP5224535B2 (ja) * 2009-04-20 2013-07-03 任天堂株式会社 衝突判定プログラム、衝突判定装置、衝突判定システムおよび衝突判定方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11110351B2 (en) 2018-09-06 2021-09-07 Bandai Namco Entertainment Inc. Information storage media, game devices and servers
JP7369556B2 (ja) 2018-09-06 2023-10-26 株式会社バンダイナムコエンターテインメント プログラム、ゲーム装置、サーバ装置及びゲーム提供方法

Also Published As

Publication number Publication date
JP2003251068A (ja) 2003-09-09

Similar Documents

Publication Publication Date Title
JP3843242B2 (ja) プログラム、情報記憶媒体、およびゲーム装置
EP0844587B1 (en) Image processor, image processing method, game machine and recording medium
JP4177381B2 (ja) 画像生成方法、画像生成装置、および画像生成プログラム
JP3843241B2 (ja) プログラム、情報記憶媒体、およびゲーム装置
KR100281837B1 (ko) 화상 처리 장치 및 이를 구비한 게임 장치
JP4316334B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP3786670B1 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4114822B2 (ja) 画像生成装置及び情報記憶媒体
JP2004298305A (ja) 画像生成情報、情報記憶媒体及び画像生成装置
JP4397410B2 (ja) 画像生成装置及び情報記憶媒体
JP3527578B2 (ja) ゲーム装置
JP3583995B2 (ja) エンタテインメント装置、記憶媒体およびオブジェクト表示方法
JP3977407B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP2000268193A (ja) 画像作成装置、画像作成方法、画像作成プログラムが記録された可読記録媒体およびビデオゲーム装置
JP5054908B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4318834B2 (ja) ゲーム装置及び情報記憶媒体
JP4146320B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP2000331184A (ja) 画像生成装置及び情報記憶媒体
JP4003794B2 (ja) 画像処理方法及び画像処理装置
JP4212015B2 (ja) 画像生成装置及び情報記憶媒体
JP2005122479A (ja) プログラム、情報記憶媒体及び画像生成装置
JP3990717B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP4229318B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP5377868B2 (ja) プログラム、情報記憶媒体、およびゲームシステム
JP3583994B2 (ja) エンタテインメント装置、記憶媒体およびオブジェクト表示方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050204

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060116

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060516

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060712

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060808

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060814

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3843241

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090818

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090818

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090818

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090818

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100818

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100818

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110818

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110818

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120818

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120818

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130818

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term