(57)【要約】【課題】伸縮可能且つ湾曲可能なオブジェクトのヒット判定モデルの谷を無くし、見かけ上、他オブジェクトが当該伸縮オブジェクトに刺さり込むような状態を防ぐこと。【解決手段】伸縮オブジェクトのヒット判定モデルは、ヒット判定領域の基礎単位として、円柱４ａの両端に半球４ｂを結合させた円柱角丸円柱形の骨体４を複数個ライン状に並べ、隣接する骨体間の向かい合った半球４ｂの底面中心Ｐを連結点にして所定の許容範囲内で相対角度可変に連結して形成される。半球４ｂの重なり部分がボール状の関節となり、伸縮オブジェクトが湾曲しても湾曲外側部にヒット判定領域の隙間や谷部の発生を抑制できる。【選択図】図３
2010191656.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、所与のモデルが配置された仮想３次元空間を所与の仮想カメラから撮影した画像を生成させるためのプログラムであって、
両端が半球形状を成し全長可変な骨体を複数個ライン状に配置し、隣接する骨体同士の最寄りの半球同士を重ねるように連結して関節構造を構成することで前記モデルを形成するモデル形成手段、
前記各骨体の全長を可変する骨体全長可変手段、
前記隣接する骨体間の連結角度を所定の許容角度範囲内で可変する連結角度可変手段、
として前記コンピュータを機能させるためのプログラム。
【請求項２】
前記骨体全長可変手段が、前記各骨体の全長を所定の許容伸長範囲内で可変するように前記コンピュータを機能させるための請求項１に記載のプログラム。
【請求項３】
前記モデル形成手段が、前記骨体と同形の第１基礎骨体と第２基礎骨体とを長手方向に前記許容伸長範囲内でスライド可能に配置することで１つの前記骨体を形成する骨体形成手段を有し、
前記骨体全長可変手段が、前記第１基礎骨体及び第２基礎骨体間のスライド長を可変することで前記各骨体の全長を可変する、
ように前記コンピュータを機能させるための請求項２に記載のプログラム。
【請求項４】
前記骨体形成手段が、前記第１基礎骨体及び第２基礎骨体間に仮想バネと仮想ダンパーとを設けて形成し、
前記骨体全長可変手段が、前記仮想バネによるバネ成分と前記仮想ダンパーによるダンパー成分に基づいて、前記第１基礎骨体及び第２基礎骨体間のスライド長の変化速度を制御する、
ように前記コンピュータを機能させるための請求項３に記載のプログラム。
【請求項５】
前記骨体全長可変手段が、前記第１基礎骨体及び第２基礎骨体を同一位置に２重配置した骨体の全長が最短状態となる最短全長ポジションから、前記許容伸長範囲までスライド長を伸ばして骨体の全長が最長状態となる最長全長ポジションまでの範囲で、前記第１基礎骨体及び第２基礎骨体間のスライド長を可変するように前記コンピュータを機能させるための請求項３又は４に記載のプログラム。
【請求項６】
前記骨体が前記最長全長ポジションに達した場合に、当該骨体の第１基礎骨体及び第２基礎骨体それぞれを新たな骨体に置換する骨体増設手段として前記コンピュータを機能させ、
前記骨体全長可変手段が、前記新たな骨体についても、当該新たな骨体の第１基礎骨体及び第２基礎骨体間のスライド長を可変することで全長を可変するように前記コンピュータを機能させる、
ための請求項５に記載のプログラム。
【請求項７】
前記骨体増設手段が、
複数の骨体が前記最長全長ポジションに達している場合に、当該複数の骨体から択一的に骨体を選択する骨体選択手段を有し、
前記骨体選択手段により選択された骨体の第１基礎骨体及び第２基礎骨体それぞれを新たな骨体に置換する、
ように前記コンピュータを機能させるための請求項６に記載のプログラム。
【請求項８】
前記モデルが強制短縮される所定条件を満たすことを検知する強制短縮条件検知手段、
前記モデルを構成する全ての骨体が前記最短全長ポジションに達していることを検知する短縮限界検知手段、
前記強制短縮条件検知手段及び前記短縮限界検知手段による検知がなされた場合に、隣接する２つの骨体の一方を第１基礎骨体とし、他方を第２基礎骨体として、当該２つの骨体を１つの骨体に置換する骨体削減手段、
として前記コンピュータを機能させるための請求項５〜７の何れか一項に記載のプログラム。
【請求項９】
請求項１〜８の何れか一項に記載のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。
【請求項１０】
所与のモデルを配置した仮想３次元空間を所与の仮想カメラから撮影した画像を生成する画像生成装置であって、
両端が半球形状を成し全長可変な骨体を複数個ライン状に配置し、隣接する骨体同士の最寄りの半球同士を重ねるように連結して関節構造を構成することで前記モデルを形成するモデル形成手段と、
前記各骨体の全長を可変する骨体全長可変手段と、
前記隣接する骨体間の連結角度を所定の許容角度範囲内で可変する連結角度可変手段と、
を備えた画像生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータに、仮想３次元空間に配置されたモデルを所与の仮想カメラから撮影した画像を生成させるためのプログラム等に関する。
【背景技術】
【０００２】
近年のビデオゲームでは、ゲーム中に登場する各キャラクタについて骨格モデルとその外観容姿を表す表示モデルとを予め用意しておき、骨格モデルを所定のモーションデータに従って動作制御し、動作制御された骨格モデルに基づいて表示モデルとしてポリゴンモデルをゲーム空間中に形成することによって動作制御する場合が多い。
【０００３】
例えば、人型のキャラクタをゲームに登場させるならば、所定数の関節を有する人骨構造を簡略化した骨格モデルが用意されるとともに、例えば、騎士、ロボットなどその人型のキャラクタの外観容姿を形成する表示モデルが用意される。そして、例えば騎士が剣を振り上げる動作制御を実現する場合、剣を持つ手を上げるモーションデータに従って、ゲーム画面の次の描画タイミングにおけるその手の位置を算出して移動制御し、インバースキネマティクス処理によって腕の各関節部分の位置を求めて骨格モデルを移動制御する。そして、移動された骨格モデルに従って表示モデルのポリゴンをゲーム空間中に配置する。
【０００４】
しかし、ゲームに登場するキャラクタは、例えば騎士やロボットのように関節が可動するが基本的な大きさが変化しないものだけとは限らない。例えば、ロールプレイングゲーム等に登場するモンスターキャラクタに見られるように、粘土やゴム、流体金属のように変形自在で、基本的な大きさが単なる拡大縮小の範疇を超えて変化するものもある。
【０００５】
そうした変形自在なキャラクタのモデルの取り扱いとしては、所定長さの連結子を１つのノードとして、相対角度を所定範囲に規制して複数のノードを直列状に連結した関節構造を有する骨格モデルを設定し、この骨格モデルＢＭに外皮を形成してキャラクタのオブジェクトを配置する技術が知られている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００８−１８６３２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記先行技術文献で述べられている実施例では、骨格モデルのノードの両端位置に中心を合わせて、連結子の所定長を半径とする球体をヒット判定モデルとして設定している。そしてヒット判定モデルの外周を滑らかに繋ぐようにして表示用のポリゴンを配置して表示モデルを形成している。ヒット判定モデルでは球形が互いに半体を重ねるようにして数珠つなぎになっているのでその外周には球面と球面の谷間が存在するが、見かけ上は全体が一連の面をなすような例えば、ワームのような外観のキャラクタのオブジェクトを実現している。
【０００８】
ところが、キャラクタが湾曲している場合、湾曲外側でヒット判定モデルの間の隙間（谷間）が大きくなる。勿論、この谷間はキャラクタの見かけには反映されないのであるが、それ故にキャラクタ以外の他オブジェクトがこの湾曲で広がった隙間に挟まり込むと、画面上はキャラクタに他オブジェクトが刺さり込んで見えるケースが希に発生する。
【０００９】
本発明は、上述した課題に鑑みて為されたものであり、伸縮可能且つ湾曲可能なオブジェクト（以下、単に「伸縮オブジェクト」と言う。）においてヒット判定モデルの谷を無くし、見かけ上、他オブジェクトが当該伸縮オブジェクトに刺さり込むような状態を防ぐことを目的としている。
【課題を解決するための手段】
【００１０】
以上の課題を解決するための第１の発明は、コンピュータに、所与のモデルが配置された仮想３次元空間を所与の仮想カメラから撮影した画像を生成させるためのプログラムであって、両端が半球形状を成し全長可変な骨体を複数個ライン状に配置し、隣接する骨体同士の最寄りの半球同士を重ねるように連結して関節構造を構成することで前記モデルを形成するモデル形成手段（例えば、図６の処理部２００、伸縮オブジェクト制御部２１４、図８のステップＳ２〜Ｓ４）、
前記各骨体の全長を可変する骨体全長可変手段（例えば、図６の処理部２００、伸縮オブジェクト制御部２１４、図９のステップＳ３６、図１０のステップＳ６８、図１１のステップＳ９６）、
前記隣接する骨体間の連結角度を所定の許容角度範囲内で可変する連結角度可変手段（例えば、図６の処理部２００、伸縮オブジェクト制御部２１４、図９のステップＳ４２、図１０のステップＳ７４、図１１のステップＳ１０６）
として前記コンピュータを機能させるためのプログラムである。
【００１１】
また、別の形態として、所与のモデルを配置した仮想３次元空間を所与の仮想カメラから撮影した画像を生成する画像生成装置であって、
両端が半球形状を成し全長可変な骨体を複数個ライン状に配置し、隣接する骨体同士の最寄りの半球同士を重ねるように連結して関節構造を構成することで前記モデルを形成するモデル形成手段（例えば、図１のゲーム装置本体１２０１、制御ユニット１２１０、図８のステップＳ２〜Ｓ４）と、
前記各骨体の全長を可変する骨体全長可変手段（例えば、図１のゲーム装置本体１２０１、制御ユニット１２１０、図９のステップＳ３６、図１０のステップＳ６８、図１１のステップＳ９６）と、
前記隣接する骨体間の連結角度を所定の許容角度範囲内で可変する連結角度可変手段（例えば、図１のゲーム装置本体１２０１、制御ユニット１２１０、図９のステップＳ４２、図１０のステップＳ７４、図１１のステップＳ１０６）と、を備えた画像生成装置（例えば、図１の家庭用ゲーム装置１２００）を構成することができる。
【００１２】
第１の発明及びその別形態によれば、両端が半球形状を成し全長可変な骨体を複数個ライン状に配置し、隣接する骨体同士の最寄りの半球同士を重ねるように連結して関節構造を構成することで、モデルの屈曲部分がボール状の関節となる。よって、従来技術のように球形を互いに半体が重なるように連結させたモデルに比べて、モデルが湾曲した場合でも屈曲部周辺にヒット判定領域の隙間・谷部が生じにくくなり、見かけ上、他オブジェクトが当該伸縮オブジェクトに刺さり込むような状態を防ぐことができる。
特に、骨体を、円柱の両端に半球体を結合させた角丸円柱形や楕円形の回転体とすると、モデルの屈曲部分以外でもヒット判定領域の隙間や谷部が生じなくなるのでより好適である。
【００１３】
第２の発明は、前記骨体全長可変手段が、前記各骨体の全長を所定の許容伸長範囲内で可変するように前記コンピュータを機能させるための第１の発明のプログラムである。
【００１４】
第２の発明によれば、第１の発明と同様の効果を奏するとともに、骨体を１つの単位として所定の許容伸長範囲内で伸縮させることでモデルの全長を伸び縮みさせることができる。
【００１５】
第３の発明は、前記モデル形成手段が、前記骨体と同形の第１基礎骨体と第２基礎骨体とを長手方向に前記許容伸長範囲内でスライド可能に配置することで１つの前記骨体を形成する骨体形成手段（例えば、図６の処理部２００、伸縮オブジェクト制御部２１４、図９のステップＳ３６、図１０のステップＳ６８、図１１のステップＳ９６）を有し、
前記骨体全長可変手段が、前記第１基礎骨体及び第２基礎骨体間のスライド長を可変することで前記各骨体の全長を可変する、ように前記コンピュータを機能させるための第２の発明のプログラムである。
【００１６】
第３の発明によれば、第２の発明と同様の効果を奏するとともに、骨体に同形の第１基礎骨体と第２基礎骨体で１つの骨体を構成し、それらを長手方向にスライドさせることで骨体の全長を伸縮することができる。よって、骨体を１つの単位モデルで構成して、その単位モデルの立体形状を長短可変して骨体の長さを変えるよりも、第１基礎骨体と第２基礎骨体という共通の単位モデル２つで構成し、それぞれの単位モデルの相対位置を可変するだけで骨体の長さを調整できるので、演算負荷を低減できる。
【００１７】
第４の発明は、前記骨体形成手段が、前記第１基礎骨体及び第２基礎骨体間に仮想バネと仮想ダンパーとを設けて形成し、前記骨体全長可変手段が、前記仮想バネによるバネ成分と前記仮想ダンパーによるダンパー成分に基づいて、前記第１基礎骨体及び第２基礎骨体間のスライド長の変化速度を制御する、ように前記コンピュータを機能させるための第３の発明のプログラムである。
【００１８】
第４の発明によれば、第３の発明と同様の効果を奏するとともに、骨体が弾性体で形成されているかのような伸縮制御をすることができる。
【００１９】
第５の発明によれば、前記骨体全長可変手段が、前記第１基礎骨体及び第２基礎骨体を同一位置に２重配置した骨体の全長が最短状態となる最短全長ポジションから、前記許容伸長範囲までスライド長を伸ばして骨体の全長が最長状態となる最長全長ポジションまでの範囲で、前記第１基礎骨体及び第２基礎骨体間のスライド長を可変するように前記コンピュータを機能させるための第３又は第４の発明のプログラムである。
【００２０】
第５の発明は、第３又は第４の発明と同様の効果を奏するとともに、１つの骨体が２つの単位モデルから形成されていることを見かけ上分からないようにできる。特に、最長状態になったときに、第１基礎骨体と第２基礎骨体の対向する半球形状部分が互いに重なった状態を維持する構成とするならば、骨体の伸長に伴うヒット判定領域の隙間や谷部の発生を抑制できるので好適である。
【００２１】
第６の発明は、前記骨体が前記最長全長ポジションに達した場合に、当該骨体の第１基礎骨体及び第２基礎骨体それぞれを新たな骨体に置換する骨体増設手段（例えば、図６の処理部２００、伸縮オブジェクト制御部２１４、図９のステップＳ３０〜Ｓ３２、図１１のステップＳ９８〜Ｓ１０２）として前記コンピュータを機能させ、
前記骨体全長可変手段が、前記新たな骨体についても、当該新たな骨体の第１基礎骨体及び第２基礎骨体間のスライド長を可変することで全長を可変するように前記コンピュータを機能させる、ための第５の発明のプログラムである。
【００２２】
第６の発明によれば、第５の発明と同様の効果を奏するとともに、骨体が伸びきった状態から更にモデルを伸ばす必要がある場合に、伸びきった骨体の第１基礎骨体及び第２基礎骨体それぞれを新たな骨体に置換することで、更に伸びる余地と伸びた部分に湾曲部を設けることができる。特に、置換する新たな骨体を、当該骨体の第１基礎骨体と第２基礎骨体とが最短全長ポジションをとっているように構成すると、伸びる余地が多くなるので好適である。
【００２３】
第７の発明は、前記骨体増設手段が、複数の骨体が前記最長全長ポジションに達している場合に、当該複数の骨体から択一的に骨体を選択する骨体選択手段（図６の処理部２００、伸縮オブジェクト制御部２１４、図９のステップＳ３２）を有し、前記骨体選択手段により選択された骨体の第１基礎骨体及び第２基礎骨体それぞれを新たな骨体に置換する、ように前記コンピュータを機能させるための第６の発明のプログラムである。
【００２４】
第７の発明によれば、第６の発明と同様の効果を奏するとともに、モデルの伸びる位置を特定することで、見かけ上、有る部分から伸びが生じているかのような単なる伸縮体とは異なる特徴的な伸び表現を実現することができる
【００２５】
第８の発明は、前記モデルが強制短縮される所定条件を満たすことを検知する強制短縮条件検知手段（例えば、図６の処理部２００、操作入力種類判定部２１２、図８のステップＳ１４）、
前記モデルを構成する全ての骨体が前記最短全長ポジションに達していることを検知する短縮限界検知手段（図６の処理部２００、伸縮オブジェクト制御部２１４、図１０のステップＳ６０）、
前記強制短縮条件検知手段及び前記短縮限界検知手段による検知がなされた場合に、隣接する２つの骨体の一方を第１基礎骨体とし、他方を第２基礎骨体として、当該２つの骨体を１つの骨体に置換する骨体削減手段（図６の処理部２００、伸縮オブジェクト制御部２１４、図１０のステップＳ６４）、として前記コンピュータを機能させるための第５〜第７の何れかの発明のプログラムである。
【００２６】
第８の発明によれば、第５〜第７の発明の何れかと同様の効果を奏するとともに、前記モデルが全ての骨体が一杯に縮んだ状態から更に縮む必要がある場合に、縮みきった隣接する２つの骨体を、第１基礎骨体と第２基礎骨体に置換、つまりは１つの骨体に置換する簡単な処理で、更に縮む余地を設けることができる。
【００２７】
第９の発明は、第１〜第８の何れかの発明のプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体である。ここで言う「情報記憶媒体」とは、例えば磁気ディスクや光学ディスク、ＩＣメモリなどを含む。第９の発明によれば、第１〜第８の何れかの発明のプログラムをコンピュータに読み取らせて実行させることによって、コンピュータに第１〜８の発明の何れかと同様の効果を発揮させることができる。
【図面の簡単な説明】
【００２８】
【図１】画像表示装置の１つである家庭用ゲーム装置のシステム構成例を示す図。
【図２】プレーヤが操作するワーム状キャラクタの概要を説明するための図。
【図３】ワーム状キャラクタのモデル構造例を示す図。
【図４】骨体の構成例を示す図。
【図５】ヒット判定モデルから表示モデルが形成される過程を示す概念図。
【図６】機能構成の一例を示す機能ブロック図。
【図７】骨体登録データのデータ構成例を示す図。
【図８】主たる処理の流れを説明するためのフローチャート。
【図９】強制伸長処理の流れを説明するためのフローチャート。
【図１０】強制短縮処理の流れを説明するためのフローチャート。
【図１１】通常移動変形処理の流れを説明するためのフローチャート。
【図１２】骨体の形状の変形例を示す図。
【発明を実施するための形態】
【００２９】
以下、本発明を適用した実施形態として、画像生成装置の１つである家庭用ゲーム装置において、３ＤＣＧ空間で伸縮可能且つ湾曲可能なワーム状のキャラクタを伸ばしたり曲げたりして操作する例を挙げる。
【００３０】
［ゲーム装置の構成］
図１は、本実施形態における家庭用ゲーム装置の構成例を示すシステム構成図である。家庭用ゲーム装置１２００のゲーム装置本体１２０１は、例えばＣＰＵや画像処理用ＬＳＩ、ＩＣメモリ等が実装された制御ユニット１２１０と、光学ディスク１２０２やメモリカード１２０４といった情報記憶媒体の読み取り装置１２０６，１２０８を備える。そして、家庭用ゲーム装置１２００は、光学ディスク１２０２やメモリカード１２０４からプログラム及び各種設定データを読み出し、ゲームコントローラ１２３０に為される操作入力に基づいて各種のゲーム演算を実行して、３次元コンピュータグラフィックス（３ＤＣＧ）を生成する。
【００３１】
家庭用ゲーム装置１２００の制御ユニット１２１０で生成された３ＤＣＧの画像信号は信号ケーブル１２０９で接続されたビデオモニタ１２２０に出力される。プレーヤは、ビデオモニタ１２２０のフラットパネルディスプレイ１２２２に表示される３ＤＣＧ画像を見つつゲームコントローラ１２３０から各種操作を入力してワーム状のキャラクタの移動や、伸ばしたり縮めたり曲げたりといった伸縮・変形の操作をすることができる。
【００３２】
ゲームコントローラ１２３０は、選択の決定やキャンセル、タイミングの入力などに用いられるプッシュボタン１２３２と、図で言うところの上下左右の各方向を単独入力するための４つの方向入力キー１２３４と、操作方向と操作量とを同時に入力することのできる右アナログレバー１２３６及び左アナログレバー１２３８とを備える。
【００３３】
右アナログレバー１２３６及び左アナログレバー１２３８は、図で言うところの上下方向と左右方向の２軸成分を有する方向入力デバイスであり、レバー１２３６ａ，１２３８ａを倒すことによって２軸成分を含む任意の方向入力と、レバーの傾倒量に応じた任意操作量を入力することができる。また、何れのアナログレバーも、操作入力していない中立状態からレバーの軸方向に押し込むことでプッシュスイッチとしても機能する。そして、本実施形態では、右アナログレバー１２３６及び左アナログレバー１２３８からの操作入力によって、ワーム状キャラクタの移動並びに伸縮・変形の操作をする。
【００３４】
尚、ワーム状キャラクタのオブジェクトの生成並びに同キャラクタの操作を実行するのに必要なプログラム及び各種設定データは、通信装置１２１２を介して通信回線１に接続し、外部装置からダウンロードして取得する構成であっても良い。ここで言う、通信回線とは、データ授受が可能な通信路を意味する。すなわち、通信回線とは、直接接続のための専用線（専用ケーブル）やイーサネット（登録商標）等によるＬＡＮ（Local Area Network）の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線／無線を問わない。
【００３５】
［プレーヤキャラクタの説明］
図２は、本実施形態においてプレーヤが操作するワーム状キャラクタの概要を説明するための図である。ワーム状キャラクタＷＣは、一つの頭ＷＣｈ、一つの尾ＷＣｔを有する想像上のワーム（worm：細長く足のない動物。）としてデザインされており、紐のように柔軟であるとともに伸縮自在である。ワーム状キャラクタＷＣは、頭ＷＣｈ〜尾ＷＣｔ方向を前後方向として、胴ＷＣｂの太さをそのままに伸縮自在且つ湾曲可能なキャラクタとして設定されている。
尚、本実施形態では胴ＷＣｂが伸び縮みする形態として説明するが、頭ＷＣｈ及び尾ＷＣｔを含む全身が自在に伸び縮みする設定としても良いのは勿論である。
【００３６】
図３は、本実施形態におけるワーム状キャラクタＷＣのモデル構造例を示す図である。ワーム状キャラクタＷＣのヒット判定モデル２は、底面が半径ｒ、高さＬ（＝２ｒ）の円柱４ａの両端に、外向き凸にして半径ｒの半球４ｂを結合させた角丸円柱形の骨体４をヒット判定領域の基礎単位とする。そして、長手方向に沿って複数の骨体４をライン状に配置し、隣接する骨体同士の向き合う半球４ｂ同士を重ねるように連結した関節構造を有する。より具体的には、隣接する骨体４は互いに半球４ｂを向かい合わせ、向かい合った半球４ｂの底面の中心Ｐを重ね合わせて連結点とし、所定の許容角度範囲内で相対角度可変に連結されている。そして、ワーム状キャラクタＷＣの伸縮は、各骨体４の全長を所定の許容伸長範囲内で可変することで実現され、各骨体４が連結角度を変えることで湾曲が実現される。
【００３７】
このような構造のヒット判定モデル２では、屈曲部が向かい合った半球４ｂの重ね合わせ部分に形成されるので、球体の単位モデルを互いの半体を重ねるようにして数珠つなぎにしたヒット判定モデルに比べて、湾曲姿勢となっても湾曲外側にヒット判定領域の隙間や谷部が生じない。
【００３８】
図４は、本実施形態における骨体４の構成例を示す図である。１つの骨体４は、骨体４自体と同形同サイズの第１基礎骨体６と第２基礎骨体８とを長手方向（円柱４ａの柱軸方向）に許容伸長範囲内でスライド可能に配置することで１つの骨体を形成しており、第２基礎骨体６と第２基礎骨体８との相対位置を可変することで１つの骨体４の伸縮（全長可変）を実現する。尚、同図の吹き出し欄内の骨体４の表示は、第１基礎骨体６と第２基礎骨体８を意図的に少しずらして表記しているが、実際には両基礎骨体を完全に２重状態にする。
【００３９】
第１基礎骨体６と第２基礎骨体８にも、それぞれ両端の半球に底面の中心がある。
第１基礎骨体６の第１の半球底面の中心Ｐ６ａは第２基礎骨体８の離反方向と反対側（同図中左側）、第２の半球底面の中心Ｐ６ｂは第２基礎骨体８の離反方向側（同図中右側）にある。同様に、第２基礎骨体８の第２の半球底面の中心Ｐ８ａは、第１基礎骨体６の離反方向側（同図中左側）、第２の半球底面の中心Ｐ８ｂは、第１基礎骨体６の離反方向と反対側（同図中右側）にある。
【００４０】
骨体４の第１基礎骨体６は、半球底面の中心Ｐ６ａで、隣接する他骨体４Ｍの第２基礎骨体８の半球底面の中心Ｐ８ｂと連結する。同様に、当該骨体４の第２基礎骨体８の半球底面の中心Ｐ８ｂは、隣接する他骨体４Ｎの第１基礎骨体６の半球底面の中心Ｐ６ａと連結する。
【００４１】
本実施形態では、第１基礎骨体６と第２基礎骨体８とを同位置に２重配置した状態を最小長さポジションとして、骨体４の最小長さ状態（４Ｌｍｉｎ）を実現する。また、両基礎骨体の相対距離を離すことで骨体４は伸長し、第１基礎骨体６の半球底面の中心Ｐ６ｂと、第２基礎骨体８の半球底面の中心Ｐ８ａとが重なる位置までスライドさせて最大長さポジションとして、骨体４の最大長さ状態（４Ｌｍａｘ）を実現する。反対に、第１基礎骨体６と第２基礎骨体８との基礎骨体の相対距離を近づけることで骨体４の縮みを実現する。
【００４２】
尚、第１基礎骨体６と第２基礎骨体８とは、所与のバネ係数を用いた仮想バネ１０と、所与のダンパー係数を用いた仮想ダンパー１２とを介して接続されている設定とし、伸縮する量や伸縮する速さを制御する。具体的には、例えば、極めて小さい力が加わっただけでワーム状キャラクタＷＣが伸びる或いは縮むことがないように抑制するとともに、ワーム状キャラクタＷＣを構成する複数の骨体４のうち、何れかの骨体４が伸長する一方で隣接する骨体４が収縮し、次の時点では伸長／収縮する骨体４が逆になるといった、伸縮する現象が往復的・脈動的に発生してしまうことを抑制する。
【００４３】
また、本実施形態では、全ての骨体４が最大長さ４Ｌｍａｘの状態にあってワーム状キャラクタＷＣが更に伸長しなければならない場合、ヒット判定モデル２を構成する複数の骨体４の内、中央に配置されている骨体４の第１基礎骨体６及び第２基礎骨体８を、それぞれ最小長さＬｍｉｎ状態の新たな骨体４Ｅ及び４Ｆに置換する。つまり、一杯まで伸びきった最大長さＬｍａｘ状態の１つの骨体を、これからまだ伸びる余地のある最小長さ状態の２つの骨体に置換する。
【００４４】
逆に、全ての骨体４が最小長さ状態（４Ｌｍｉｎ）であるところからさらにワーム状キャラクタＷＣが縮まなければならない場合、中央に配置されている最小長さＬｍｉｎ状態の２つの骨体の一方を第１基礎骨体とし、他方を第２基礎骨体として、当該２つの基礎骨体を内在する１つの骨体４に置換する。同図の例で言うと、最小長さ状態の骨体４Ｅ，４Ｆから更に縮む場合、骨体４Ｅを第１基礎骨体６に置換し、骨体４Ｆを第２基礎骨体８に置換し、これら置換された基礎骨体を１つの最大長さＬｍａｘ状態の骨体４Ｌｍａｘとする。つまり、最小長さ状態の２つの骨体４Ｅ，４Ｆを１つの最大長さ状態の骨体４Ｌｍａｘに置き換える。置換された第１基礎骨体６及び第２基礎骨体８の相対位置を可変することで更にワーム状キャラクタＷＣの縮みが実現される。
【００４５】
図５は、本実施形態におけるヒット判定モデルから表示モデルが形成される過程を示す概念図である。前述のように伸縮及び湾曲変形されるヒット判定モデル２の外周を滑らかに繋ぐようにポリゴンを生成してポリゴンモデル１４が生成される。このポリゴンモデル１４に所定のテクスチャを適用してワーム状キャラクタＷＣの表示モデル１６が作られる。
【００４６】
そして、本実施形態ではゲームコントローラ１２３０の右アナログレバー１２３６の操作方向と傾倒量に応じた第１の仮想力が、頭ＷＣｈ及び尾ＷＣｔのうち画面右側の部位に作用し、左アナログレバー１２３８の操作方向と傾倒量に応じた第２の仮想力が頭ＷＣｈ及び尾ＷＣｔのうち画面左側の部位に作用するように制御される。そして、それら仮想力から、骨体同士の連結関係に基づいて個別の骨体４に作用する個別仮想力が求められ、この個別仮想力によって各骨体４の伸びが制御される。また、個別仮想力の結果、骨体同士の相対位置が変化し、ワーム状キャラクタＷＣの湾曲が実現される。
【００４７】
［機能ブロックの説明］
図６は、本実施形態における機能構成の一例を示す機能ブロック図である。同図に示すように本実施形態では、操作入力部１００と、処理部２００と、音出力部３５０と、画像表示部３６０と、通信部３７０と、記憶部５００とを備える。
【００４８】
操作入力部１００は、プレーヤによって為された各種の操作入力に応じて操作入力信号を処理部２００に出力する。そして、本実施形態における操作入力部１００は、一つの入力操作で操作方向と操作量とを入力可能にする第１ベクトル入力部１０２及び第２ベクトル入力部１０４を備える。
【００４９】
第１ベクトル入力部１０２及び第２ベクトル入力部１０４は、例えばアナログレバーやトラックパッド、マウス、トラックボール、少なくとも２軸以上の検出軸を有する多軸検出型加速度センサまたは検出軸方向を違えて組み合わされた単軸検出型加速度センサの集合、少なくとも２方向以上の検出方向を可能にする多方向検出型傾斜センサまたは検出方向を違えて組み合わされた単方向検出型傾斜センサの集合、タッチパネルなどによって実現され、ワーム状キャラクタＷＣの頭ＷＣｈ及び尾ＷＣｔに設定される仮想力（ベクトル）の入力に用いられる。
図１では、コントローラ１２３０が操作入力部１００に該当し、右アナログレバー１２３６、左アナログレバー１２３８がそれぞれ第１ベクトル入力部１０２及び第２ベクトル入力部１０４に該当する。
【００５０】
処理部２００は、例えばマイクロプロセッサやＡＳＩＣ（特定用途向け集積回路）、ＩＣメモリなどの電子部品によって実現され、操作入力部１００や記憶部５００をはじめゲーム装置１２００の各機能部との間でデータの入出力を行うとともに、所定のプログラムやデータ、操作入力部１００からの操作入力信号に基づいて各種の演算処理を実行して、ゲーム装置１２００の動作を制御する。図１では、ゲーム装置本体１２０１に内蔵された制御ユニット１２１０が処理部２００に該当する。
そして本実施形態における処理部２００は、操作入力種類判定部２１２と、伸縮オブジェクト制御部２１４と、音生成部２５０と、画像生成部２６０と、通信制御部２７０とを備える。
【００５１】
操作入力種類判定部２１２は、第１ベクトル入力部１０２及び第２ベクトル入力部１０４からの操作入力信号から特定の操作入力を識別判定する。本実施形態では、右アナログレバー１２３６が右方向一杯に傾倒されて、且つ左アナログレバー１２３８が左一杯に傾倒操作された場合に、強制伸長操作が入力されたと判定する。また、右アナログレバー１２３６及び左アナログレバー１２３８が共に傾倒されずに押し込み操作された場合、ワーム状キャラクタＷＣを強制的に縮める強制短縮操作が入力されたと判定する。それ以外は、通常の仮想力の入力操作が成されていると判断して通常移動変形操作と判定する。
【００５２】
伸縮オブジェクト制御部２１４は、ワーム状キャラクタＷＣのヒット判定モデル、ポリゴンモデル、表示モデルの生成・制御に係る処理を行う。
より具体的には、（１）第１ベクトル入力部１０２及び第２ベクトル入力部１０４へ為された操作入力に基づいて、ワーム状キャラクタＷＣの頭ＷＣｈ及び尾ＷＣｔに作用する仮想力を設定する処理、（２）ヒット判定モデルにおける骨体４の相互連結関係や内蔵される仮想バネ１０や仮想ダンパー１２が作用する条件を用いて公知の物理演算（或いは簡易仮想物理演算）により、（１）で設定された仮想力から各骨体４に作用する個別仮想力を算出する処理、（３）個別仮想力から各骨体４の伸び量又は縮み量を算出する処理、（４）算出した伸び量又は縮み量を実現するために各骨体４の第１基礎骨体６と第２基礎骨体８との相対位置の変更処理、（５）全ての骨体４が最大長さＬｍａｘの状態から更にワーム状キャラクタＷＣを伸ばす場合、並びに全ての骨体４が最小長さＬｍｉｎの状態から更にワーム状キャラクタＷＣを縮める場合の骨体４の置換処理、（６）仮想力及び個別仮想力及び骨体相互の連結関係に基づく各骨体４の移動処理（例えば、インバースキネマティクス処理やフォワードキネマティクス処理）、（７）ポリゴンの生成処理、（８）表示モデルの生成処理、を実行する。
【００５３】
音生成部２５０は、例えばデジタルシグナルプロセッサ（ＤＳＰ）などのプロセッサやその制御プログラムによって実現され、本実施形態で示すようなワーム状キャラクタＷをゲーム内に登場させる場合には、ゲームに係る効果音やＢＧＭ、各種操作音の音信号を生成し音出力部３５０に出力する。
【００５４】
音出力部３５０は、音生成部２５０から入力される音信号に基づいて効果音やＢＧＭ等を音出力するための装置である。図１ではビデオモニタ１２２０のスピーカ１２２４がこれに該当する。
【００５５】
画像生成部２６０は、例えば、デジタルシグナルプロセッサ（ＤＳＰ）などのプロセッサ、その制御プログラム、フレームバッファ等の描画フレーム用ＩＣメモリ等によって実現される。画像生成部２６０は、１フレーム時間（例えば１／６０秒）で１枚の３ＤＣＧ画像を生成し、生成した画像の画像信号を画像表示部３６０に出力する。
【００５６】
画像表示部３６０は、画像生成部２６０から入力される画像信号に基づいて各種ゲーム画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管（ＣＲＴ）、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。図１ではビデオモニタ１２２０のフラットパネルディスプレイ１２２２が該当する。
【００５７】
通信制御部２７０は、データ通信に係るデータ処理を実行し、通信部３７０を介して外部装置とのデータのやりとりを実現する。
【００５８】
通信部３７０は、通信回線１と物理レベルで接続して通信を実現する。例えば、無線通信機、モデム、ＴＡ（ターミナルアダプタ）、有線用の通信ケーブルのジャックや制御回路等によって実現され、図１では通信装置１２１２がこれに該当する。
【００５９】
記憶部５００は、処理部２００にゲーム装置１２００を統合的に制御させるための諸機能を実現するためのシステムプログラムや、ワーム状キャラクタＷＣの各種モデルの制御を実行するためのプログラム、各種データ等を記憶する。また、処理部２００の作業領域として用いられ、処理部２００が各種プログラムに従って実行した演算結果や操作入力部１００から入力される入力データ等を一時的に記憶する。この機能は、例えばＲＡＭやＲＯＭなどのＩＣメモリ、ハードディスク等の磁気ディスク、ＣＤ−ＲＯＭやＤＶＤなどの光学ディスクなどによって実現される。
【００６０】
本実施形態では、記憶部５００は予め記憶しているものとしてシステムプログラム５０１と、伸縮オブジェクト制御プログラム５０２と、キャラクタ初期設定データ５１０とを記憶している。また、ワーム状キャラクタＷＣの制御に伴って生成され随時更新されるデータとして骨体登録データ５１２を記憶する。
【００６１】
伸縮オブジェクト制御プログラム５０２は、処理部２００が読み出して実行することによって、伸縮オブジェクト制御部２１４としての機能を実現させることができるプログラムである。
【００６２】
キャラクタ初期設定データ５１０は、ワーム状キャラクタＷＣの各種モデルの生成と制御に必要な初期設定データを格納している。例えば、第１基礎骨体６及び第２基礎骨体８を含む骨体４のモデルデータ、仮想バネ１０や仮想ダンパー１２の設定値、ポリゴンモデル１４に適用されるテクスチャーなどがこれに該当する。
【００６３】
骨体登録データ５１２は、ワーム状キャラクタＷＣのヒット判定モデルを現在形成している骨体４の管理データである。例えば、図７に示すように、連結順５１２ａに対応づけて、配置される骨体を識別する骨体ＩＤ５１２ｂと、第１基礎骨体６の半球底面の中心Ｐ６ａ及びＰ６ｂの座標を格納する第１基礎骨体半球底面中心点座標５１２ｃと、第２基礎骨体８の半球底面の中心Ｐ８ａ及びＰ８ｂの座標を格納する第２基礎骨体半球底面中心点座標５１２ｄと、連結順前側（頭部寄り）の骨体の長手方向と当該骨体の長手方向との相対角度を格納する相対角度５１２ｅと、当該骨体に作用する個別仮想力５１２ｆとを対応づけて格納する。勿論、これ以外にも適宜骨体別に対応する情報（例えば骨体別の仮想バネ及び仮想ダンパーの係数を設定するのであれば、その設定値等）を格納することができる。
【００６４】
［処理の流れの説明］
次に、本実施形態における処理の流れについて説明する。ここで説明する一連の処理の流れは、処理部２００が伸縮オブジェクト制御プログラム５０２を実行することによって実現される。
【００６５】
図８は、主たる処理の流れを説明するためのフローチャートである。処理部２００はキャラクタ初期設定データ５１０から骨体４の基本データと初期配置数とを参照し、仮想３次元空間内に初期配置数の骨体４を、長手方向をそろえて直線状に連結し、初期状態のヒット判定モデル２を生成する（ステップＳ２）。ここで配置された骨体４に関する諸データは、骨体登録データ５１２に登録され、以下骨体４の位置や姿勢、長さ、作用する個別仮想力が変化するごとに適宜登録されている情報を更新するものとする。
【００６６】
次に、処理部２００は、このヒット判定モデルの外周を滑らかに繋ぐようにポリゴンを生成してポリゴンモデル１４を形成し、ポリゴンモデル１４に所定のテクスチャを適用してワーム状キャラクタＷＣの表示モデル１６を形成する（ステップＳ４）。
【００６７】
そして、この伸縮体オブジェクトの全体を撮影することのできる仮想カメラを仮想３次元空間に配置し（ステップＳ６）、仮想カメラで撮影した画像のレンダリングと、レンダリングされた３ＤＣＧの表示制御を開始する（ステップＳ８）。
【００６８】
以下、処理部２００はステップＳ１０〜Ｓ１８の処理を、フラットパネルディスプレイ１２２２における表示画像の更新サイクルを１制御サイクルとして繰り返し実行する。
【００６９】
具体的には、操作入力部１００からの入力信号から強制伸び操作入力が入力されたか否かを判定する（ステップＳ１０）。そして、肯定の場合（ステップＳ１０のＹＥＳ）、処理部２００は強制伸長処理を実行する（ステップＳ１２）。
【００７０】
図９は、本実施形態における強制伸長処理の流れを説明するためのフローチャートである。同処理では先ず、処理部２００は全ての骨体４の長さが最大長さＬｍａｘに達しているか否かを判定する（ステップＳ３０）。
何れかでも伸びきっていない骨体４が存在すれば否定判定し（ステップＳ３０のＮＯ）、全ての骨体４に対して中央に配置されているものから端に向けて順にループＡの処理を実行する（ステップＳ３４〜Ｓ４４）。
【００７１】
一方、何れの骨体４も伸びきっていて第１基礎骨体６と第２基礎骨体８との相対位置の変更ではこれ以上のワーム状キャラクタＷＣの伸長を実現出来ないと判断される場合には（ステップＳ３０のＹＥＳ）、処理部２００はヒット判定モデル２を構成する骨体４の内、中央に配置されている１つの骨体４を選択し、この骨体４の第１基礎骨体６と第２基礎骨体８とを、それぞれ最小長さＬｍｉｎの２つの骨体４に置換して（ステップＳ３２）、ループＡに移行する。
【００７２】
ループＡでは、先ず、処理部２００は処理対象とする骨体４の第１基礎骨体６と第２基礎骨体８との相対距離を変更して１制御サイクル当たり所定の伸び量を伸長する（ステップＳ３６）。このとき、仮想バネ及び仮想ダンパーの成分を考慮して伸び量を算定する。そして、処理対象の骨体４がヒット判定モデル２の中央に配置されている場合（ステップＳ３８のＹＥＳ）、伸長した骨体４を同位置同姿勢で配置して、当該骨体へのループＡの処理を終了する（ステップＳ４４）。一方、処理対象の骨体４の配置位置がヒット判定モデル２の中央でなければ（ステップＳ３８のＮＯ）、処理対象の骨体４の中央側に隣接する他骨体との相対角度を維持して伸長後の骨体４を再配置し（ステップＳ４２）、当該骨体へのループＡの処理を終了する（ステップＳ４４）。
【００７３】
尚、ステップＳ４２で再配置する際、再配置予定位置に他の骨体や仮想３次元空間に配置された他オブジェクトが存在する場合には、衝突条件に基づいて相対角度を適宜可変して再配置位置を調整するものとする。調整に当っては、ループＡの１つ前の骨体の再配置位置の再調整も含まれる。
【００７４】
全ての骨体４についてループＡの処理を実行したならば、ヒット判定モデル２が更新されたことになるので、処理部２００はこの更新されたヒット判定モデル２の外周を滑らかに覆うようにポリゴンを再生成してポリゴンモデル１４を更新する（ステップＳ４６）。そして、再形成されて更新されたポリゴンモデル１４に所定のテクスチャを適用してレンダリングを行って１制御サイクル分伸びたワーム状キャラクタＷＣの３ＤＣＧを表示させ（ステップＳ４８）、強制伸長処理を終了する。
【００７５】
図８のフローチャートに戻って、ステップＳ１０で否定判定された場合、処理部２００は次に操作入力部１００からの入力信号から強制縮み操作入力があったか否かを判定する（ステップＳ１４）。そして、肯定判定の場合（ステップＳ１４のＹＥＳ）、強制短縮処理を実行する（ステップＳ１６）。
【００７６】
図１０は、本実施形態における強制短縮処理の流れを説明するためのフローチャートである。同処理では先ず、処理部２００は全ての骨体の長さを参照し、全ての骨体が最小長さＬｍｉｎであるか否か判定する（ステップＳ６０）。
【００７７】
否定の場合（ステップＳ６０のＮＯ）、各骨体４の第１基礎骨体６と第２基礎骨体８との相対位置を可変することで縮みを実現する余地が有ると判断されるので、処理部２００はヒット判定モデル２を構成する複数の骨体４について、中央に配置されている骨体４から外側へ順に全ての骨体４についてループＢの処理を実行する（ステップＳ６６〜Ｓ７６）。
【００７８】
一方、肯定の場合（ステップＳ６０のＹＥＳ）、つまり各骨体４が縮みきっていて既に第１基礎骨体６と第２基礎骨体８との相対位置を可変することで縮みを実現する余地がなければ、処理部２００は現在のヒット判定モデル２を構成する骨体４の総数をカウントする。そして、構成する骨体４の総数が「３」以上であれば（ステップＳ６２の「３」以上）、中央に配置されている２つの骨体４を選択し、選択した２つの骨体４それぞれを、最大長Ｌｍａｘに伸びた状態の１つの骨体４の第１基礎骨体６と第２基礎骨体８とに置換して（ステップＳ６４）、ループＢに移行する。
【００７９】
ループＢでは、先ず処理対象の骨体の第１基礎骨体６と第２基礎骨体８とを近接させるように相対位置を変更して、１制御サイクル当たりの所定の縮み量を実現して当該骨体を短縮する（ステップＳ６８）。このとき、仮想バネ及び仮想ダンパーの成分を考慮して縮み量を算定する。また、この時、全長が最小長さＬｍｉｎに達している骨体４については、それ以上の短縮は事実上行われないことになる。ループＢに移行する前に、ステップＳ６４で骨体の置換処理が行われていれば、その置換された骨体４のみが縮むことになる。
【００８０】
処理対象の骨体の短縮制御を実行したならば、次に、処理部２００は当該骨体がヒット判定モデル２の中央に配置されている否かを判定する（ステップＳ７０）。ヒット判定モデル２を構成する骨体４の総数が奇数ならば中央の１つの骨体については肯定判定し、また総数が偶数ならば中央の２つの骨体について肯定判定し（ステップＳ７０のＹＥＳ）、処理部２００は短縮された処理対象の骨体を同位置同姿勢で配置し（ステップＳ７２）、当該骨体へのループＢの処理を終了する。
【００８１】
一方、ステップＳ７０で中央に配置されていないと判定された場合（ステップＳ７０のＮＯ）、処理部２００は処理対象の骨体より中央側に隣接配置されている他骨体との相対角度を維持して当該短縮された骨体を再配置し（ステップＳ７４）、当該骨体へのループＢの処理を終了する。
【００８２】
尚、ステップＳ７４では、ステップＳ４２と同様に、骨体４の再配置を実行する際、再配置予定位置に他の骨体や仮想３次元空間に配置された他オブジェクトが存在する場合には、衝突条件に基づいて相対角度を適宜可変して再配置位置を調整するものとする。調整に当っては、ループＡの１つ前の骨体の再配置位置の再調整も含まれる。
【００８３】
全ての骨体４についてループＢの処理が実行されるとヒット判定モデル２が更新されたことになるので、次に、処理部２００はヒット判定モデル２の外周を滑らかに覆うようにポリゴンを再生成してポリゴンモデル１４を更新する（ステップＳ７８）。そして、再形成されて更新されたポリゴンモデル１４に所定のテクスチャを適用してレンダリングを行って１制御サイクル分伸びたワーム状キャラクタＷＣの３ＤＣＧを表示させ（ステップＳ８０）、強制短縮処理を終了する。
【００８４】
尚、ステップＳ６２においてヒット判定モデル２を構成する骨体４の総数が「２」に達している場合には（ステップＳ６２のＮＯ）、これ以上縮むことが出来ないと判断して、ループＢへは移行せずそのまま強制短縮処理を終了する。
【００８５】
図８のフローチャートに戻って、操作入力部１００からの操作入力が強制伸び操作入力でも強制縮み操作入力でもなければ（ステップＳ１４のＮＯ）、処理部２００は通常移動変形処理を実行する（ステップＳ１８）。
【００８６】
図１１は、本実施形態における通常移動変形処理の流れについて説明するためのフローチャートである。同処理では先ず、処理部２００はゲームコントローラ１２３０の右アナログレバー１２３６及び左アナログレバー１２３８による操作入力に応じた仮想力をヒット判定モデル２の両端に設定する（ステップＳ９０）。
【００８７】
次に、処理部２００は設定した仮想力に基づいて各骨体４に作用する個別仮想力を算出する（ステップＳ９２）。個別仮想力は骨体４同士の相対角度等に基づく物理演算或いは簡易的な仮想物理演算の利用によって実現できる。そして、仮想バネ１０及び仮想ダンパー１２が第１基礎骨体６及び第２基礎骨体８間に設けられているものと仮定して、個別仮想力による各骨体４の１制御サイクル当たりの伸縮量を算出し（ステップＳ９４）、算出された伸縮量に応じて各骨体４の第１基礎骨体６と第２基礎骨体８との相対位置を変更する（ステップＳ９６）。
【００８８】
ステップＳ９６では、各骨体４の全長は最小長さＬｍｉｎと最大長さＬｍａｘの範囲内で可変するのは勿論であり、例えばステップＳ９４で１制御当たりの伸縮量が求められても、既に最大長さＬｍａｘに達している骨体４はそれ以上に伸ばされることはない。
【００８９】
次に、処理部２００は全ての骨体４が最大長さＬｍａｘの状態で一定時間以上継続しているかを判定する（ステップＳ９８）。
否定の場合には（ステップＳ９８のＮＯ）、処理部２００はステップＳ９０で設定した仮想力に基づいてヒット判定モデル２を構成する先端と末端の骨体４を１制御サイクル分だけ移動させ（ステップＳ１０４）、移動された先端と末端の骨体４を基点として、中間に配置されている他骨体の位置を割り出して再配置する（ステップＳ１０６）。
【００９０】
これでヒット判定モデル２が更新されたことになるので、処理部２００はヒット判定モデル２の外周を滑らかに覆うようにポリゴンを再生成してポリゴンモデルを更新する（ステップＳ１０８）。そして、再形成されて更新されたポリゴンモデルに所定のテクスチャを適用してレンダリングを行い、１制御サイクル分伸長したワーム状キャラクタＷＣの様子を表示させ（ステップＳ１１０）、通常移動変形処理を終了する。
【００９１】
一方、ステップＳ９８において、全ての骨体４が最大長さＬｍａｘの状態で一定時間以上継続したと判定された場合（ステップＳ９８のＹＥＳ）、処理部２００はヒット判定モデル２の中央に配置されている１つの骨体４を選択し、この骨体４の第１基礎骨体６と第２基礎骨体８とを、最小長さＬｍｉｎの２つの骨体４に置換して、ステップＳ１０４に移行する。
ステップＳ９８の分岐によって、ワーム状キャラクタＷＣは、有る一定時間は引っ張り力（伸ばそうとする力）に耐えているが一定時間を過ぎると体の中央から段階的に伸びると言った特徴的な伸び方をする。
【００９２】
以上、本実施形態によれば、伸縮可能且つ湾曲可能な伸縮オブジェクトであるワーム状キャラクタＷＣのヒット判定モデル２を、複数の角丸円柱形の骨体４を連結ポイントで揺動可能に一列に連結して形成することで、従来技術のようにワーム状キャラクタＷＣが湾曲する姿勢であっても、その湾曲外側にヒット判定領域の谷間を作らずに済む。
【００９３】
また、骨体４を同サイズの第１基礎骨体６と第２基礎骨体８とを長手方向にスライド可能に連結した構成とし、基礎骨体間の相対位置の変更で骨体４の伸縮を実現することができる。基礎骨体を内在させずに骨体４を単一のモデルとして円柱部分の長さを伸ばしたり縮めたりするとその都度立体的なモデルの変形に伴う演算処理を必要とするが、本実施形態のように内在させる基礎骨体間の距離を変化させるだけの方が圧倒的に演算負荷が少なくて済む。
【００９４】
また、本実施形態ではヒット判定モデル２を構成している骨体４が全て一杯に伸びた状態から更にワーム状キャラクタＷＣを伸ばす場合に、最大長さＬｍａｘの１つの骨体４を最小長さＬｍｉｎの２つの骨体４に置換することで、さらなる伸びを可能とすることができる。反対に、全ての骨体４が一杯まで縮んだ状態から更にワーム状キャラクタＷＣを縮める場合に、最小長さＬｍｉｎの２つの骨体４を最大長さＬｍａｘの１つの骨体４に置換してさらなる縮みの余地を作ることが出来る。このように、基本単位である骨体４の増設や削減といった簡単な処理で、ワーム状キャラクタＷＣの湾曲性を維持しつつ、伸縮可能な幅を広く設定することができる。
【００９５】
［変形例］
以上、本発明を適用した実施形態について説明したが、本発明の実施形態はこれに限るものではなく、適宜構成要素の追加・省略・変更を加えることができる。
【００９６】
例えば、画像生成装置として家庭用ゲーム装置を実施形態として示したが、業務用ゲーム装置、携帯型ゲーム装置、パソコン、アプリケーションソフトを実行することのできる多機能携帯電話機や音楽プレーヤ、カーナビなど、３ＤＣＧを生成する機能を有する装置には同様に適用することができる。
【００９７】
また、伸縮オブジェクトとしてワーム状キャラクタＷＣを例に挙げたが、その他の形態であっても良い。例えば、象の鼻部分、鞭の先、流体金属製の仮想ロボットなど伸縮性と湾曲性を兼ね備えたキャラクタであればその全体又は一部として同様に適用することができる。その外形は一本の紐状に限らず、適宜、リング状、Ｙ字状などその他の外形を有していても良いのは勿論である。
【００９８】
また、骨体４の形状は必ずしも角丸円柱形に限らない。例えば基礎骨体を内在させない構成とするならば、図１２の骨体４Ｂのように、骨体４の円柱４ａ相当の部分４ｃを側面の中央をややへこませた鞍型断面の回転体形状としても良い。反対に、骨体４Ｃのように、骨体４の円柱４ａ相当の部分４ｄを外向き凸断面の回転体形状としても良い。更には楕円断面の回転体としても良い。また、キャラクタの形状によっては骨体４の円柱４ａ相当部分を角柱に設定することもできる。何れにせよ、骨体４の円柱４ａ相当部分の側面形状は、キャラクタの外形と出来るだけ沿わせると良い。
【００９９】
また、上記実施形態では骨体を増設する際（例えば図９のステップＳ３２）、置換されるべき骨体を、ヒット判定モデルを構成する骨体の内、中央に配置されている骨体を択一的に選択する構成としているがこれに限らない。例えば、仮想３次元空間に配置されている他のオブジェクトと接触している部分の骨体を選択して、選択された骨体を置換される骨体として選択する。このようにすると、伸縮オブジェクトが当該他オブジェクトから外力を受けている様な場合には、当該外力によって当接部分から強制的に伸ばされているかのように見せることが出来るので好適である。或いは、中央に配置されている骨体の代わりに、ヒット判定モデルの少なくとも何れか一方の端、又は端から２つ目を置換対象として構成することもできる。このような置換対象の骨体の選択の仕方については、伸縮モデルの短縮に伴う置換処理についても同様のことが言える。
【０１００】
また、上述した実施形態では、ワーム状キャラクタＷＣの表示モデル１６を、ヒット判定モデル２をベースにして、ヒット判定モデル２の外周にポリゴンモデル１４を生成して、このポリゴンモデル１４にテクスチャを適用することで生成することとした。しかし、ヒット判定モデル２そのものを表示モデル１６としてもよいことは勿論である。
【符号の説明】
【０１０１】
２  ヒット判定モデル
４  骨体
４ａ  円柱
４ｂ  半球
６  第１基礎骨体
８  第２基礎骨体
１４  ポリゴンモデル
１６  表示モデル
１００  操作入力部
１０２  第１ベクトル入力部
１０４  第２ベクトル入力部
２００  処理部
２１２  操作入力種類判定部
２１４  伸縮オブジェクト制御部
５００  記憶部
５０２  伸縮オブジェクト制御プログラム
５１２  骨体登録データ
５１２ａ  連結順
５１２ｃ  第１基礎骨体半球底面中心点座標
５１２ｄ  第２基礎骨体半球底面中心点座標
５１２ｅ  相対角度
５１２ｆ  個別仮想力
１２００  家庭用ゲーム装置
１２０１  ゲーム装置本体
１２３０  ゲームコントローラ
１２３６  右アナログレバー
１２３８  左アナログレバー
ＷＣ  ワーム状キャラクタ
【図１】
2010191656.tif 000003
【図２】
2010191656.tif 000004
【図３】
2010191656.tif 000005
【図４】
2010191656.tif 000006
【図５】
2010191656.tif 000007
【図６】
2010191656.tif 000008
【図７】
2010191656.tif 000009
【図８】
2010191656.tif 000010
【図９】
2010191656.tif 000011
【図１０】
2010191656.tif 000012
【図１１】
2010191656.tif 000013
【図１２】
2010191656.tif 000014