三次元アニメーションの表示装置及びその表示装置を実現するためのプログラム
【課題】透視投影法による三次元アニメーションの表示において、仮想カメラと物体との距離が近接しすぎた場合の当該物体によって隠れる後方の物体等を見易くする。
【解決手段】透視投影法による三次元アニメーションの表示方法において、仮想カメラと物体(メインキャラクタ)との距離が所定の距離以下に近接した場合、シルエット透過処理を行う。シルエット透過処理では、物体を除いた透視投影法による二次元画像が作成され(S11)、モニタの画面上における物体の表示位置が算出される(S13)。そして、ステップS11で作成された二次元画像の、ステップS13で算出されたモニタの画面内の物体の表示位置に含まれる画素に対して、各画素の濃度が所定の割合で変更され(S14)、その二次元画像がモニタに表示される(S15)。これにより、物体はシルエットだけが表示される。
【解決手段】透視投影法による三次元アニメーションの表示方法において、仮想カメラと物体(メインキャラクタ)との距離が所定の距離以下に近接した場合、シルエット透過処理を行う。シルエット透過処理では、物体を除いた透視投影法による二次元画像が作成され(S11)、モニタの画面上における物体の表示位置が算出される(S13)。そして、ステップS11で作成された二次元画像の、ステップS13で算出されたモニタの画面内の物体の表示位置に含まれる画素に対して、各画素の濃度が所定の割合で変更され(S14)、その二次元画像がモニタに表示される(S15)。これにより、物体はシルエットだけが表示される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、三次元の仮想空間内に定義された物体を、透視投影法によりスクリーンに投影される二次元画像に変換してモニタに表示させる三次元アニメーションの表示方法に関し、特に仮想カメラの位置(視点)と物体との距離が、当該仮想カメラの撮影画面内の物体のサイズが大きくなり過ぎて遠方の物体や背景が見えなくなるような近接距離になった場合の三次元アニメーションの表示方法、その表示装置、その表示装置を備えたゲーム装置、その表示装置をコンピュータで実現するためのプログラム及び記録媒体に関するものである。
【背景技術】
【0002】
従来、三次元コンピュータグラフィクス(Computer Graphics 以下、「CG」という。)を用いたアニメーションによってゲーム展開を表示するゲーム装置が知られている。そして、この種のゲーム装置に用いられる三次元CGアニメーションでは、一般に透視投影のカメラモデルを用いて各コマの二次元画像が作成される。
【0003】
例えば三次元の仮想空間内に2つの物体を存在させ、一方の物体を主たる遊技者の操作によって動作させる一方、他方の物体を従たる遊技者の操作若しくはコンピュータによって動作させて両物体を対戦させる対戦型ゲームにおいては、図9に示すように、一方の物体A(以下、「メインキャラクタ」という。)に対して後方の所定の位置(メインキャラクタAから距離Dだけ後方で高さHの位置)に仮想カメラCを配置し、この仮想カメラCでメインキャラクタA側を撮影して得られる二次元画像G(図10参照)が三次元CGの各コマの画像として生成され、モニタに表示される。
【0004】
なお、図10に示す画像Gは、実際に仮想カメラCでメインキャラクタA側を撮影したときに得られる撮影画像をシミュレーションしたものではなく、仮想カメラCの位置からメインキャラクタA側に視線を伸ばし、その視線が仮想カメラCとメインキャラクタAとの間に仮想的に配置されたスクリーンSと交差する位置にメインキャラクタAや対戦相手の物体B(以下、「敵キャラクタ」という。)やビルE1,E2や背景の山Mなどの他の物体を描画したもの(透視投影法による二次元画像)である。
【0005】
そして、三次元CGアニメーションでは、操作者が操作コントローラの移動ボタンを操作すると、その操作に応じて仮想空間内でメインキャラクタAを移動させるとともに、仮想カメラCもメインキャラクタAに従って移動させ、コマ毎に透視投影法による二次元画像が生成されて仮想空間内で移動するメインキャラクタAの画像がモニタに表示される。
【0006】
対戦型ゲームおいては、遊技者の操作に応じてメインキャラクタAや敵キャラクタBは仮想空間(すなわち、対戦場となる空間。以下、「対戦空間」という。)内を自由に移動することができるが、例えば対戦空間内に設けられたビルE1,E2のうち、内部の画像が作成されていないものについては、ビル内に入ることはできない。このようなビルは、仮想空間内に恰も存在するかのように描画されるが、描画処理においては、ビル内は空洞になっており、外部から見たビル表面の画像が存在するだけだからである。このため、遊技者がメインキャラクタAをビル内に移動させるような操作を行ってもメインキャラクタAはビルの壁の部分までしか移動できず、メインキャラクタAの移動がビルの壁の部分で制限された状態の描画処理が行われる。
【0007】
同様のことが仮想カメラCの移動位置についても生じる。すなわち、図11に示すように、P1に存在するメインキャラクタAに対してP3の位置に仮想カメラCを配置し、メインキャラクタA側を透視投影している状態から、操作者がメインキャラクタAをビルE1の前のP2に移動させた場合、仮想カメラCの位置がビルE1内のP4となり、仮想カメラCを移動させることができなくなる。
【0008】
ビルE1内のP4に仮想カメラCを移動させてメインキャラクタA側を見た透視投影法による二次元画像を作成すると、仮想カメラCとメインキャラクタAとの間に存在するビルE1の壁によって画面全体が覆われ、実質的にメインキャラクタAや仮想カメラCに対してメインキャラクタAの後方の敵キャラクタBなどをモニタに表示させることができないので、プログラムによって仮想カメラCをビルE1内に移動させないようにしているからである。
【0009】
従って、このような場合は、P2とP4とを結ぶ線とビルE1の壁との交点P5に仮想カメラCを移動させ、このP5の位置からメインキャラクタA側を透視投影した二次元画像からなる三次元アニメーションが作成されることになる。
【0010】
この場合、メインキャラクタAと仮想カメラCとの間の距離D’が通常の透視投影の場合の距離Dよりも短くなり、モニタに表示される画像は、図12に示すように、二次元画像Gの画面内におけるメインキャラクタAの占める面積が大きくなりすぎ、仮想カメラCに対してメインキャラクタAの後方の敵キャラクタBやビルE3や背景Fの画像が殆ど隠れてしまうことになる。このような場合、通常の描画処理を行ったのではメインキャラクタAの描画によって、後方の敵キャラクタBやビルE3や背景Fの状態が完全に隠れてしまい、操作者が戦況状態を見失うことになるので、例えば特許文献1〜3に示される透過処理技術を用いてメインキャラクタAの画像に対して透過処理を行い、メインキャラクタAによって隠れる部分を見える状態にすることが行われている。
【0011】
図13は、メインキャラクタAの画像を透過画像にする従来の透過処理の処理手順の一例を示すフローチャートである。
【0012】
ここで、図14に示す透視投影の構成を例に、図13に示すフローチャートに従って従来の透過処理について説明する。
【0013】
図14(a)に示す透視投影の構成においては、仮想カメラCに対して球OJ1、直方体OJ2及び山OJ3の順に物体が配置され、仮想カメラCの位置から視線Lの方向を見た三次元CGの画像G(二次元画像G)は同図(b)のようになる。画面内には3個の物体OJ1,OJ2,OJ3のほかに、背景OJ4が存在するが、二次元画像Gにおいては、山OJ3が背景OJ4に含まれ、山OJ3は背景OJ4と一緒に描かれることになる。従って、二次元画像G内には、球OJ1の部分の領域と、直方体OJ2の部分の領域と、山OJ3及び背景OJ4の部分の領域の3つの領域とが存在することになる。
【0014】
各領域は、多数の三角形のポリゴンによって構成され、二次元画像Gを作成する場合は、仮想カメラCから最も遠い物体を構成するポリゴンに対して描画処理を行った後、次に遠い物体を構成するポリゴンに対して描画処理を行い、最後に最も近い物体を構成するポリゴンに対して描画処理が行われる。球OJ1の部分の領域に含まれるポリゴンをg(k)、直方体OJ2の部分の領域に含まれるポリゴンをg(j)、山OJ3及び背景OJ4を含む部分の領域に含まれるポリゴンをg(i)とすると、ポリゴンg(i)について描画処理が行われた後、ポリゴンg(j)について描画処理が行われ、最後にポリゴンg(k)について描画処理が行われる。そして、最後のポリゴンg(k)についての描画処理において透過処理が行われる。
【0015】
以上の処理内容を図13のフローチャートにより説明すると、まず、仮想カメラCより奥側の物体からポリゴン単位で描画順が決定される(S30)。すなわち、山OJ3及び背景OJ4の部分の領域に含まれるポリゴンg(i)(i=1,2,…N1)について描画順が決定され、次に、直方体OJ2の部分の領域に含まれるポリゴンg(j)(j=1,2,…N2)について描画順が決定され、最後に球OJ1の部分の領域に含まれるポリゴンg(k)(k=1,2,…N3)について描画順が決定される。
【0016】
従って、描画順の決定された全てのポリゴンg(i),g(j),g(k)をg(h)(hは描画順。h=1,2,…(N1+N2+N3))とすると、続いて、ポリゴンの描画順をカウントするカウンタ値hが「1」に設定され(S31)、最初のポリゴンg(h)に対して光源処理が行われる(S32)。光源処理とは、ポリゴンを構成する頂点について光源及び光源から入射光の反射特性に関する情報を付与する処理である。
【0017】
続いて、ポリゴンg(h)に対してテクスチャ処理が行われる(S33)。テクスチャ処理は、ポリゴンg(h)に、対応するテクスチャ(二次元画像)を貼り付ける処理である。続いて、ポリゴンg(h)に対して透過処理の要否が判定される(S34)。この判定は、ポリゴンg(h)が球OJ1の部分の領域に含まれるポリゴンであるか否かを判定することによって行われる。ポリゴンg(h)に対して透過処理が必要であれば(S34:YES)、アルファブレンディング処理が行われる(S35)。アルファブレンディング処理は、例えばポリゴンg(h)とこれに重なるポリゴンg(h’)のテクスチャの色を混合したり、掛け合わしたりしてポリゴンg(h)の色を透過色とするものである。ポリゴンg(h)に対して透過処理が不要であれば(S34:NO)、ステップS35の処理はスキップされる。最初のポリゴンg(1)では、透過処理は不要となるから、ステップS35はスキップされ、ステップS36に移行する。
【0018】
続いて、カウンタ値hが「1」だけ増加された後(S36)、そのカウンタ値hが全てのポリゴン数(N1+N2+N3)を超えたか否かが判別され(S37)、h≦(N1+N2+N3)であれば(S37:NO)、ステップS32に戻り、次のポリゴンg(h+1)についてステップS32〜S35の処理が行われ、以下、同様にして全てのポリゴンg(h)に対してステップS32〜S35の処理が行われる。そして、h>(N1+N2+N3)になると(S37:YES)、透過処理を終了する。
【先行技術文献】
【特許文献】
【0019】
【特許文献1】特開平09−50541号公報
【特許文献2】特許第2902352号公報
【特許文献3】特開2002−45566号公報
【発明の概要】
【発明が解決しようとする課題】
【0020】
ところで、例えば図12のような状態になるときに、従来の透過処理を適用すれば、メインキャラクタAの部分には透過処理が施されるので、遊技者はメインキャラクタAに重なって見えなくなる敵キャラクタBや背景Fの部分を視認することができるようになるが、この透過処理においてもメインキャラクタAのポリゴンに対して光源処理やテクスチャ処理が行われるので、メインキャラクタAの透過像にも光沢や色、柄の情報が残り、これによって敵キャラクタBやビルE3や背景Fの部分が見え辛くなるという不都合がある。
【0021】
なお、図12において、メインキャラクタAに施した斜線部分は透過像に色や模様が付されていることを示し、透明部分は透過像の反射が大きく、色や柄や模様が他の部分より明るいことを示している。
【0022】
この問題を解決するために、メインキャラクタAを透過像で表示することを止め、メインキャラクタAを表示しないという方法も考えられる。しかし、対戦型ゲームの場合、遊技者がメインキャラクタAの攻撃又は防御の動作を制御する際、メインキャラクタAと敵キャラクタBとの位置関係や敵キャラクタBの動作状態が認識できることが重要であり、これらの情報がモニタの画面から明瞭に得られなかった場合は、敵キャラクタBの攻撃を受けたのか否かも分からぬままメインキャラクタAがダメージを負ったり、メインキャラクタAの攻撃動作に入る挙動が見えないため、遊技者は攻撃ボタンを操作するタイミングが分からなくなったりする等して、戦闘意欲が阻害されることになるので、メインキャラクタAを表示しないという方法を採用することは好ましくない。
【0023】
対戦型ゲームにおいては、遊技者が戦況に応じて、メインキャラクタAを図11や図12の状態になる位置に移動させることは多々あり、その度にメインキャラクタAがモニタに表示されないようになると、遊技者はメインキャラクタAの位置が分からなくなり、操作性が著しく低下することになる。
【0024】
その一方、従来の透過処理によりメインキャラクタAを表示させるようにした場合は、メインキャラクタAが透過表示された状態で遊技者がメインキャラクタAに攻撃若しくは防御の動作をさせると、メインキャラクタAと敵キャラクタBとが重なった状態で両キャラクタA,Bが動作する画像が透過像で表示されることになるので、透過表示におけるメインキャラクタAの色、柄、模様などの情報が却って敵キャラクタBの動作を見辛くし、遊技者にとって戦況の把握が困難になる。
【0025】
本発明は、上記課題に鑑みてなされたものであり、仮想カメラの位置がメインキャラクタに近接した場合、メインキャラクタをシルエット表示することにより当該メインキャラクタで隠れる部分を従来よりも見易くすることのできる三次元アニメーションの表示方法、三次元アニメーションの表示装置、その表示装置を備えたゲーム装置、その表示装置を実現するためのプログラム及び記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0026】
本願発明の第1の側面によって提供されるプログラムは、コンピュータを、三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示装置として機能させるプログラムであって、前記コンピュータを、前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別手段と、前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成手段と、前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成手段で作成された三次元アニメーションを前記モニタに表示させる表示制御手段と、して機能させることを特徴としている(請求項1)。
【0027】
なお、前記所定の距離は、前記視点から仮想カメラによって前記第1の物体を撮影した場合に撮影画面内における前記第1の物体のサイズが所定のサイズ以上となる距離にするとよい(請求項2)。
【0028】
また、前記動画像作成手段は、前記第1の物体を除いた透視投影法による各コマの二次元画像を作成する画像作成手段と、前記モニタの表示画面上における前記第1の物体の表示位置を算出する算出手段と、前記画像作成手段によって作成された二次元画像の、前記算出手段で算出された前記モニタの表示画面内の前記第1の物体の表示位置に含まれる画素に対して、各画素の濃度を所定の割合で変化させる濃度変更手段と、を含むとよい(請求項3)。
【0029】
また、前記動画像作成手段は、前記画像作成手段で作成された各コマの二次元画像の色数を低減して保存する記憶手段と、前記算出手段で算出された前記第1の物体の表示位置を前記記憶手段に保存された各コマの二次元画像における表示位置に変換する変換手段と、を更に備え、前記濃度変更手段は、前記記憶手段に保存された各コマの二次元画像を用いて、濃度変更処理を行うとよい(請求項4)。
【0030】
また、本願発明の第2の側面によって提供される記録媒体は、請求項1乃至4のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である(請求項5)。
【0031】
また、本願発明の第3の側面によって提供される三次元アニメーション表示方法は、三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示方法であって、前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別工程と、前記判別工程により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成工程と、前記判別工程により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成工程によって作成された三次元アニメーションを前記モニタに表示させる表示制御工程と、からなることを特徴とする(請求項6)。
【0032】
なお、前記動画像作成工程は、前記第1の物体を除いた透視投影法による各コマの二次元画像を作成する第1の工程と、前記モニタの表示画面上における前記第1の物体の表示位置を算出する第2の工程と、前記第1の工程によって作成された二次元動画像の、前記第2の工程で算出された前記モニタの表示画面内の前記第1の物体の表示位置に含まれる画素に対して、各画素の濃度を所定の割合で変化させる第3の工程とからなるとよい(請求項7)。
【0033】
また、本願発明の第4の側面によって提供される三次元アニメーション表示装置は、三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示装置であって、前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別手段と、前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成手段と、前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成手段で作成された三次元アニメーションを前記モニタに表示させる表示制御手段と、を備えたことを特徴とする(請求項8)。
【0034】
また、本願発明の第5の側面によって提供されるゲーム装置は、遊技者によって操作される操作手段と、画像を表示する表示手段と、前記遊技者によって動作が制御されるメインキャラクタの三次元画像データを記憶する第1の記憶手段と、前記メインキャラクタが配置される仮想的な空間を構成する背景その他の物体の三次元画像データを記憶する第2の記憶手段と、前記操作手段から操作情報が入力されると、所定のゲームプログラムに従ってその操作情報に基づき前記メインキャラクタ及び背景その他の物体を動作させる第1の動作制御手段と、前記第1の動作制御手段によって決定される動作内容に基づき、ゲーム進行を示す三次元アニメーション画像として、前記第1,第2の記憶手段に記憶された三次元画像のデータを用いて前記メインキャラクタの後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成する第1の画像作成手段と、前記第1の画像作成手段で作成された三次元アニメーションを前記表示手段に表示する表示制御手段と、を備えたゲーム装置において、前記操作手段から前記メインキャラクタを移動させる操作情報が入力されると、その移動情報に基づいて前記仮想空間内の前記メインキャラクタ及び前記視点の移動位置を演算する演算手段と、前記演算手段により演算された前記メインキャラクタ及び前記視点の移動位置に基づいて、前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したか否かを判別する判別手段と、前記判別手段により前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したと判別されると、前記メインキャラクタによって隠れる背景その他の物体の濃度を、当該メインキャラクタが存在しないとした場合の濃度と異ならせることにより、当該メインキャラクタをシルエットで表示した二次元画像からなる三次元アニメーションを作成する第2の画像作成手段と、を備え、前記表示制御手段は、前記判別手段により前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したと判別されると、前記第1の画像作成手段によって作成される三次元アニメーションに代えて、前記第2の画像作成手段によって作成される三次元アニメーションを前記表示手段に表示させることを特徴とする(請求項9)。
【0035】
なお、前記第2の動画像作成手段は、前記第1の動画像作成手段で作成された各コマの二次元画像の色数を低減して保存する第3の記憶手段と、前記算出手段で算出された前記メインキャラクタの表示位置を前記第3の記憶手段に保存された各コマの二次元画像における表示位置に変換する変換手段と、を更に備え、前記濃度変更手段は、前記第3の記憶手段に保存された各コマの二次元画像を用いて、濃度変更処理を行うとよい(請求項10)。
【発明の効果】
【0036】
本発明によれば、透視投影法により作成した三次元アニメーションをモニタに表示する際、視点(仮想カメラの位置)と第1の物体との距離が、例えば仮想カメラの撮影画面内の第1物体のサイズが所定のサイズ以上となるような所定の距離以下に近接したときは、第1の物体によって隠れる背景及びその他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションが作成されてモニタに表示されるので、第1の物体の操作者は当該第1の物体の位置や状態を見失うことがなく、しかも当該第1の物体によって隠れる背景及びその他の第2の物体も明瞭に視認することができるので、第1の物体に対する操作性を損なうことがない。
【0037】
特に、本発明に係る透過処理方法を対戦型ゲームに適用した場合には、操作者が操作するメインキャラクタに仮想カメラが近接しすぎた場合にも戦況把握に必要な情報(メインキャラクタと敵キャラクタとの位置関係や両キャラクタの態勢などの情報)の取得が困難になることがなく、メインキャラクタに対する操作性の低下やこれに基づく遊技者の遊技意欲の喪失を防止することができる。従って、遊技者は対戦型ゲームを快適に楽しむことができる。
【0038】
また、第1の物体(メインキャラクタ)によって隠れる部分の濃度を低下若しくは上昇させるだけの処理であるので、従来の透過処理に比べて、描画のための演算負荷を低減することができる。
【図面の簡単な説明】
【0039】
【図1】本発明に係る三次元アニメーションの表示方法を適用したゲーム装置の一例を示すブロック構成図である。
【図2】本発明に係るシルエット透過表示方法に関係した描画制御を示す基本的な処理手順を示すフローチャートである。
【図3】メインキャラクタをシルエット表示するシルエット透過処理の処理手順を示すフローチャートである。
【図4】仮想カメラがメインキャラクタに近接した場合にモニタに表示される透視投影法による二次元画像の描画順を説明するための図である。
【図5】スクリーンバッファにメインキャラクタよりも後方にある敵キャラクタとビル及び背景とが描画された状態を示す図である。
【図6】スクリーンバッファからテクスチャバッファに色数を低減して画像を取り込む際の色数の低減例を示す図である。
【図7】スクリーンバッファにおけるメインキャラクタの描画位置を示す図である。
【図8】スクリーンバッファに描かれた敵キャラクタ及び背景のメインキャラクタによって隠れる部分の濃度を低下させることにより当該メインキャラクタがシルエット表示される三次元アニメーション画像の一例を示す図である。
【図9】透視投影法による三次元CG画像を説明するための図である。
【図10】図9の構成によってモニタに表示される三次元CG画像を示す図である。
【図11】メインキャラクタの移動により内部が定義されていないビル内にカメラ位置が移動することになる場合のカメラ位置の修正を説明するための図である。
【図12】メインキャラクタに仮想カメラが近接した場合にモニタに表示される3次元CG画像の一例を示す図である。
【図13】従来の透過処理の処理手順の一例を示すフローチャートである。
【図14】従来の透過処理の内容を説明するための図である。
【発明を実施するための形態】
【0040】
以下、本発明の好ましい実施の形態を、添付図面を参照して具体的に説明する。
【0041】
図1は、本発明に係るアニメーション表示方法を適用したゲーム装置の一例を示すブロック構成図である。ゲーム装置1は、家庭用として用いられるテレビゲーム機であり、ゲームプログラム及びゲームデータが記録されたCD−ROM(Compact Disc−ROM)から当該ゲームプログラム及びゲームデータを装置内のメモリ(RAM)に読み込み、CPU(Central Processing Unit)によってゲームプログラムを実行させることにより遊技者がゲーム内容を楽しむことができるものである。
【0042】
本実施形態は、家庭用のテレビゲーム機であるが、本発明に係る三次元アニメーション表示方法は家庭用のテレビゲーム機に限らず、アーケードゲーム機などの他の種類のゲーム機やゲーム機以外の透視投影法による三次元アニメーションを用いた装置にも適用することができる。なお、以下の説明では、ゲーム内容として対戦型ゲーム(メインキャラクタと敵キャラクタとが格闘したり、戦闘したりするゲーム)を例に説明する。
【0043】
ゲーム装置1は、CPU2、描画データ生成プロセッサ3、RAM(Random Access Memory)4、ROM(Read Only Memory)5、描画処理プロセッサ6、VRAM(Video-RAM)7、D/A(Digital-Analog)コンバータ8、音声処理プロセッサ9、アンプ10、インターフェース(I/F)11、CD−ROMドライバ12及びバス13を含んでいる。
【0044】
ゲーム装置1にはテレビジョンが接続され、当該テレビジョンのブラウン管や液晶ディスプレイなどの表示装置がD/Aコンバータ8に外部接続されるモニタ14として利用され、当該テレビジョンに内蔵のスピーカがアンプ10に外部接続されるスピーカ15として利用される。ゲーム装置1では、ゲームプログラム及びゲームデータ(キャラクタや背景の画像データ、ステータスなどの情報表示用の画像データ、効果音やBGMなどの音声データ、文字や記号によるメッセージデータなど)が記録されたCD−ROM17をCD−ROMドライバ12に装着し、CD−ROMドライバ12によってCD−ROM17内のゲームプログラム及びゲームデータをRAM4に読み込み、CPU2によってゲームプログラムを実行することによりゲーム内容を楽しむことができる。
【0045】
ゲーム装置1にはインターフェース(I/F)11を介して操作コントローラ16が接続され、遊技者はこの操作コントローラ16の操作部材を操作することによりゲームを進行させることができる。
【0046】
CPU2、描画データ生成プロセッサ3、RAM4、ROM5、描画処理プロセッサ6、音声処理プロセッサ9、インターフェース(I/F)11及びCD−ROMドライバ12はバス13によって相互にデータ伝送可能に接続されている。
【0047】
CPU2は、上記のようにCD−ROMドライバ12によってCD−ROM17からRAM4に読み込まれるゲームプログラムを実行することより、ゲーム進行を統括的に制御する。より具体的には、操作コントローラ16から遊技者の操作信号が入力されると、CPU2は、ゲームプログラムに従ってその操作信号に対する所定のゲーム進行処理を行い、その処理結果をモニタ14に三次元アニメーションによって表示するとともに、スピーカ15から効果音によって出力する。
【0048】
モニタ14に表示するための三次元アニメーションの描画処理は、主として描画処理プロセッサ6によって行われる。CPU2は、操作コントローラ16からの遊技者の操作信号に基づき、モニタ14に表示すべき三次元アニメーションの内容を決定し、その内容に対して必要な描画データを描画データ生成プロセッサ3に生成させ、その描画データを描画処理プロセッサ6に転送して描画処理を行わせる。また、CPU2は、スピーカ15から出力すべき効果音若しくはBGMの音響内容を決定し、音声処理プロセッサ9にその音響内容に対した音声データを生成させ、その音声データをスピーカ15から出力させる。
【0049】
描画データ生成プロセッサ3は、描画処理に必要な各種の演算処理を行うものである。CPU2は、モニタ14に表示すべき画像を決定し、その画像の描画に必要な画像データ(背景、メインキャラクタ及び敵キャラクタのポリゴンデータ、テクスチャデータ、光源データなど)をRAM4から読み出して描画データ生成プロセッサ3に供給する。また、CPU2は、操作コントローラ16から入力される操作情報を描画データ生成プロセッサ3に供給する。描画データ生成プロセッサ3は、CPU2から供給される画像データと操作情報に基づいて、描画に必要なデータ(透視投影における仮想カメラ、メインキャラクタ、敵キャラクタ及び背景の位置関係、スクリーン画面(モニタの画面に相当)上におけるメインキャラクタ、敵キャラクタ及び背景を構成するポリゴンの座標、各ポリゴンに対応するテクスチャ、各ポリゴンの反射特性などのデータ)を演算し、その演算結果を描画処理プロセッサ6に供給する。
【0050】
RAM4は、CD−ROMドライバ12によってCD−ROM17から読み込まれたゲームプログラム及びゲームデータを格納するエリアと、CPU2がゲームプログラムを処理するためのワークエリアを提供するものである。RAM4には、ゲームの進行に応じて必要なゲームプログラムとゲームデータとがCD−ROM17から読み込まれて記憶される。
【0051】
ゲームプログラムには、CPU2に実行させるための処理手順や各種命令等が記述されており、その中には、操作コントローラ16からの操作信号に応じてゲーム画面や音声等を制御するための内容が含まれている。ゲームデータには、例えばメインキャラクタ、敵キャラクタ及び背景や他の物体を構成するポリゴンデータとテクスチャデータが含まれ、BGMや各種の効果音として用いられる音声データも含まれている。
【0052】
本実施形態では、CD−ROM17に記憶されたゲームプログラムは、例えば遊技者が操作コントローラ16を操作することによって動作が制御されるメインキャラクタと他の遊技者若しくはコンピュータによって動作が制御される複数の敵キャラクタとを対戦させるアクションゲームである。より具体的には、このアクションゲームは、市街地、砂漠、海上、空、宇宙空間などの各種のシチュエーションを対戦場とし、メインキャラクタが銃やミサイルなどの各種の武器を用いて複数の敵キャラクタと戦闘し、より強い敵キャラクタを倒していくことを目的としたものである。
【0053】
ROM5は、ディスクローディング機能などのゲーム装置1の基本的機能やCD−ROM17に記憶されたゲームプログラム及びゲームデータを読み出す手順などを示す基本プログラムが記憶されている。CPU2は、CD−ROMドライバ12にCD−ROM17が装着されると、ROM5の基本プログラムに従ってCD−ROMドライバ12を動作させ、CD−ROM17からゲームプログラム及びゲームデータをRAM4に読み込み、ゲーム開始状態に設定する。
【0054】
描画処理プロセッサ6は、三次元アニメーションの各コマの画像(透視投影法による二次元画像)を生成し、モニタ14に表示させるものである。描画処理プロセッサ6は、CPU2からの描画指令に基づき、描画データ生成プロセッサ3から供給されるデータを用いてモニタ14に表示させる各コマの二次元画像を作成する。描画処理プロセッサ6には各コマの二次元画像の作成作業をするためのVRAM7が接続されている。描画処理プロセッサ6は、VRAM7を用いて1/30秒毎に各コマの二次元画像のデータを生成する。
【0055】
VRAM7には、モニタ14に表示される各コマの二次元画像のデータを格納するバッファメモリ72(以下、「スクリーンバッファ」という。)と、スクリーンバッファ72に格納すべき画像データを作成するためのバッファメモリ71(以下、「テクスチャバッファ」という。)が設けられている。スクリーンバッファ72は同一のメモリ構造及びメモリ容量を有する2枚のスクリーンバッファ72A,72Bで構成されている。
【0056】
スクリーンバッファ72を2枚構成とするのは、モニタ14への表示速度に対してスクリーンバッファ72への描画速度に余裕を持たせるためである。すなわち、一方のスクリーンバッファ72Aを用いてモニタ14への表示処理を行っている間に、他方のスクリーンバッファ72Bで次のコマの画像データを生成し、この処理をスクリーンバッファ72Aとスクリーンバッファ72Bとの間で交互に行うことにより、モニタ14への1/30秒毎の各コマの表示処理をスムーズに行うようにしている。
【0057】
テクスチャバッファ71は、スクリーンバッファ72にモニタ14に表示すべき二次元画像のデータを作成するための前処理を行うためのバッファである。テクスチャバッファ71はスクリーンバッファ72よりも少ないメモリ容量を有している。スクリーンバッファ72ではR(赤),G(緑),B(青)の各色成分が、例えば256階調(8ビット)で描画されるが、テクスチャバッファ71ではR,G,Bの各色成分の階調数を少なくすることにより、テクスチャバッファ71のメモリ容量をスクリーンバッファ72よりも少なくしている。
【0058】
D/Aコンバータ8は、スクリーンバッファ72から出力される画像データをアナログ信号に変換してモニタ14に出力するものである。D/Aコンバータ8にはスクリーンバッファ72Aからの画像データとスクリーンバッファ72Bからの画像データを切り換えるスイッチ回路が設けられ、このスイッチ回路の切り換えは描画処理プロセッサ6によって制御される。
【0059】
すなわち、描画処理プロセッサ6は、スクリーンバッファ72Aをモニタ14のバッファとするときは、スクリーンバッファ72Aの画像データがモニタ14に出力されるようにスイッチ回路を切り換え、スクリーンバッファ72Bをモニタ14のバッファとするときは、スクリーンバッファ72Bの画像データがモニタ14に出力されるようにスイッチ回路を切り換える。
【0060】
音声処理プロセッサ9は、CPU1からの音声指令に基づき、RAM4から効果音もしくはBGMの音声データを読み出し、所要の加工処理とD/A変換処理をした後、アンプ10に出力する。アンプ10は、音声処理プロセッサ9から入力される音声信号を所定の増幅度で増幅した後、スピーカ15に出力する。
【0061】
インターフェース(I/F)11は、操作コントローラ16をゲーム装置1に接続するためのインターフェースである。操作コントローラ16は、ゲーム装置1に各種の操作情報を入力するものである。操作コントローラ16には、十字キー、左ボタン、右ボタン、セレクトボタン、スタートボタン、ジョイステックなどの複数の操作部材が設けられている。スタートボタンは、ゲーム開始を入力するためのボタンであり、セレクトボタンはメニュー内容を選択するためのボタンである。また、ジョイステックや十字キーは、主としてメインキャラクタに移動、攻撃、防御などの種々の動作を指令するための操作部材として使用され、左ボタン及び右ボタンは、例えばモニタに表示される三次元アニメーション画像の視線方向を左方向や右方向に回転したりするのに使用される。
【0062】
次に、図2〜図9を用いて、本発明に係る三次元アニメーションの表示方法について説明する。
【0063】
本発明は、三次元の仮想空間内に定義されたメインキャラクタ、敵キャラクタ及び背景その他の物体を、透視投影法によりスクリーンに投影される二次元画像に変換してモニタに表示させる際に、視点(仮想カメラの位置)とメインキャラクタとの距離が、スクリーン内のメインキャラクタのサイズが大きくなり過ぎて遠方の敵キャラクタや背景その他の物体が見えなくなるような近接距離になった場合に、メインキャラクタの部分を透過させ、当該メインキャラクタをシルエットによって表示する(以下、この表示方法を「シルエット透過表示方法」という。)点に特徴を有するものである。従って、以下の説明では、そのシルエット透過表示方法について説明する。
【0064】
図2は、本発明に係るシルエット透過表示方法に関係した描画制御を示す基本的な処理手順を示すフローチャートである。また、図3は、メインキャラクタをシルエット表示するシルエット透過処理の処理手順を示すフローチャートである。
【0065】
CPU2は、対戦型ゲームの進行を制御しているとき、操作コントローラ16から操作信号の割り込みを監視している(S1)。操作コントローラ16から操作信号の割り込みがなければ(S1:NO)、ステップS6に移行し、描画処理プロセッサ6によって通常の描画処理が行われる。操作コントローラ16から操作信号の割り込みがあると(S1:YES)、更にその操作信号がメインキャラクタの移動操作であるか否かが判別され(S2)、メインキャラクタの移動操作でなければ(S2:NO)、ステップS6に移行し、描画処理プロセッサ6によって通常の描画処理が行われる。
【0066】
通常の描画処理は、三次元の対戦空間内に存在するメインキャラクタ、敵キャラクタ及び背景その他の物体の三次元画像のデータを、透視投影法によりスクリーンに投影した各コマの二次元画像のデータに変換し、モニタ14に表示させる処理である。この描画処理では、仮想カメラCとメインキャラクタAとの距離が、図9に示したように、所定の距離Dに保持されているので、モニタ14には、例えば図10に示したように、メインキャラクタAや、敵キャラクタBやビルE1,E2や山Mなどが適度な大きさで表示される。
【0067】
従って、モニタ14に、例えば図10に示される状態の三次元アニメーションが表示されている状態で、遊技者によりメインキャラクタAに攻撃若しくは防御を行わせる操作が行われた場合は、図10の画角を保持した状態でメインキャラクタAが遊技者の操作に応じた攻撃若しくは防御の動作を行う三次元アニメーションを表示させる。また、例えば図10に示される状態の三次元アニメーションが表示されている状態で、遊技者が操作コントローラ16を操作しなければ、その表示状態が保持される。
【0068】
操作コントローラ16からメインキャラクタAを移動させる操作信号の割り込みがあると(S2:YES)、CPU2により仮想空間の対戦場におけるメインキャラクタAの移動位置が算出されるとともに、メインキャラクタAの移動に伴う仮想カメラCの移動位置が算出される(S3)。続いて、仮想カメラCとメインキャラクタAとの距離が、メインキャラクタAの画面内におけるサイズが所定サイズ(例えば画面の70%以上を占めるサイズ)以上となる所定の距離まで近接しているか否かが判別される(S4)。この判別は、例えば図9において、距離Dを予め設定された閾値Drと比較することにより行われる。
【0069】
仮想カメラCとメインキャラクタAとの距離Dが所定の距離Dr以下に近接していなければ(S4:NO)、ステップS6に移行し、通常の描画処理が行われ、仮想カメラCとメインキャラクタAとの距離Dが所定の距離Dr以下に近接していれば(S4:YES)、メインキャラクタAの部分をシルエットで表示する透過処理(以下、「シルエット透過処理」という。)を施した描画処理が行われる(S5)。
【0070】
例えば図11において、P1に位置するメインキャラクタAをP2に移動させる操作が行われた場合、仮想カメラCの位置がP5に移動し、仮想カメラCとメインキャラクタAの距離D’が閾値Drよりも短くなり、モニタ14に表示される三次元アニメーションは、図12に示すような状態となるので、この場合は、メインキャラクタAの部分をシルエットで表示するような透過処理が行われる。
【0071】
次に、シルエット透過処理について、上述した図9〜図12に示す透視投影例を用いて、図3に示すフローチャートに従い説明する。
【0072】
なお、通常の描画処理が行われて、モニタ14に、図10に示す二次元画像が表示されている状態で(ステップS1,S6のループ)、遊技者によりメインキャラクタAを移動させる操作が行われた結果(ステップS1,S2,S4:YES)、ステップS5で、図12に示す二次元画像に対してシルエット透過処理を行うことになった場合を例に説明する。
【0073】
ステップS5に移行する直前のコマでは、図10に示す二次元画像が、例えばスクリーンバッファ72Aに描画され、モニタ14に表示されている。そして、スクリーンバッファ72Bでは、次のコマの画像として図12に示す二次元画像の描画処理が行われている。このとき、図12に示す二次元画像は、図4に示すように、後方のビルE3及び背景Fや敵キャラクタBを構成するポリゴンg(i),g(j),g(m)から順番に描画されるので、スクリーンバッファ72BにビルE3及び背景Fと敵キャラクタBとが描画された時点で(S11)、スクリーンバッファ72Bの画像データがテクスチャバッファ71に取り込まれる(S12)。すなわち、テクスチャバッファ71には、図5に示す画像(メインキャラクタAが描かれていない画像)が格納される。
【0074】
このとき、テクスチャバッファ71には、R,G,Bの各色成分の階調数を少なくして、すなわち、色数を低減してデータ数を少なくした画像データが取り込まれる。例えばR,G,Bの各色成分の階調数を1/2にする場合は、図6に示すように、元の画像の色成分のデータ(R,G,B)=(11/16,14/16,7/16)が(R',G',B')=(5/8,7/8,3/8)に変換されてテクスチャバッファ71に格納される。なお、図6において、白抜きの棒グラフは元の画像の色成分の濃度レベルを示し、斜線入りの棒グラフはテクスチャバッファ71に格納される色成分の濃度レベルを示している。
【0075】
このように色数を低減するのは、テクスチャバッファ71では、主としてメインキャラクタAを構成するポリゴンに対して、透過して見える敵キャラクタBやビルE3や背景Fの部分の画像の濃度を変更する処理を行い、メインキャラクタAをシルエットで表示させる処理を行うだけであるので、正確な色情報を必要としないため、色数を低減することによりテクスチャバッファ71のメモリ容量を低減するとともに、処理の迅速化を図るものである。
【0076】
続いて、スクリーンバッファ72BにおけるメインキャラクタAの描画位置、すなわち、メインキャラクタAを構成する複数のポリゴンg(k)の各座標(以下、「スクリーン座標」という。)が算出される(S13)。すなわち、図7に示すように、スクリーンバッファ72Bが480×640ピクセルで構成されているとすると、各ポリゴンg(k)の頂点位置に対応するピクセルのアドレスが算出される。続いて、更に各ポリゴンg(k)のスクリーン座標がテクスチャバッファ71における座標(以下、「テクスチャ座標」という。)に変換される(S14)。
【0077】
続いて、テクスチャバッファ71において、メインキャラクタAを構成する各ポリゴンg(k)単位で、当該ポリゴンg(k)に含まれるピクセルのR,G,Bの色成分の濃度レベルが所定の割合で変更される(S15)。
【0078】
テクスチャバッファ71においては、三角形の各ポリゴンg(k)の位置は3個の頂点のテクスチャ座標によって決定されるので、これらのテクスチャ座標によって囲まれる三角形の領域に含まれるピクセルを抽出することができる。テクスチャバッファ71には、メインキャラクタAが描かれる位置に当該メインキャラクタAを透過した敵キャラクタB、ビルE3若しくは背景Fの画像のデータが格納されているので、メインキャラクタAを構成する各ポリゴンg(k)に含まれるピクセルのR,G,Bの色成分は、各ポリゴンg(k)の位置に対応する敵キャラクタB、ビルE3若しくは背景Fの部分のR,G,Bの色成分となっている。
【0079】
従って、メインキャラクタAを構成する各ポリゴンg(k)単位で、当該ポリゴンg(k)に含まれるピクセルのR,G,Bの各色成分の濃度データを抽出し、その濃度データのレベルを所定の割合で低下もしくは上昇させることにより、敵キャラクタB、ビルE3若しくは背景FのメインキャラクタAによって隠れる部分の色が黒っぽく、もしくは白っぽくなる。
【0080】
なお、濃度レベルを低下させるか、上昇させるかは、画面全体の明るさによって決定される。例えば対戦空間が夜景や宇宙空間のように全体的に暗い場合は、濃度レベルは上昇され、対戦空間が昼間の市街地や空のように全体的に明るい場合は、濃度レベルは低下される。濃度レベルをどのように変更させるかを制御するためのデータ(例えばフラグデータ)は、例えば対戦空間毎や同一の対戦空間内でもメインキャラクタAの移動に基づく対戦シーン毎に設定され、このデータに基づいてステップS15の濃度変更処理が行われる。
【0081】
続いて、テクスチャバッファ71で作成したメインキャラクタAを構成する各ポリゴンg(k)に含まれるピクセルのR,G,Bの色成分の濃度データに基づいて、スクリーンバッファ72Bに描画されている敵キャラクタB、ビルE3及び背景Fの画像のメインキャラクタAによって隠れる部分のピクセルのR,G,Bの色成分の濃度データが変更される(S16)。これにより、スクリーンバッファ72Bには、図8に示すように、メインキャラクタAをシルエットで表示するとともに、当該メインキャラクタAの部分を透過した二次元画像が作成される。
【0082】
なお、図8は、メインキャラクタAによって隠れる敵キャラクタB、ビルE3及び背景Fの部分の濃度を低下させた場合の例を示している。図8では、敵キャラクタBに点描を付し、ビルE3に右斜線を付し、これらの背景Fに左斜線を付しているが、これらは敵キャラクタB、ビルE3及び背景Fに貼り付けられたテクスチャの色の濃度を表している。敵キャラクタBのメインキャラクタAによって隠れる部分の点描の各点を大きくすることにより敵キャラクタBに貼り付けられたテクスチャの色の濃度がメインキャラクタAによって隠れていない部分の濃度よりも暗くなっていることを示している。また、ビルE3及び背景FのメインキャラクタAによって隠れる部分の右斜線と左斜線の密度を上げることによってビルE3及び背景Fに貼り付けられたテクスチャの色の濃度がメインキャラクタAによって隠れていない部分の濃度よりも暗くなっていることを示している。
【0083】
上記のように、シルエット透過処理によれば、メインキャラクタAの部分は、当該メインキャラクタAがなければ見えることになる後方の敵キャラクタB、ビルE3及び背景Fが黒っぽく表示されたり、白っぽく表示されたりするので、これによりメインキャラクタAの輪郭がシルエットとして表示されることになる。
【0084】
従って、シルエット透過処理では、メインキャラクタAによって隠れる部分に当該メインキャラクタAの形状や色、模様が半透明で表示されることがないので、従来の透過処理に比して、メインキャラクタAによって隠れる部分が見易くなる利点がある。また、メインキャラクタAの存在はシルエットによって表示されるので、遊技者がどのようにメインキャラクタAを移動させても当該メインキャラクタAを見失うことがない。
【0085】
また、従来の透過処理では、メインキャラクタAに対してポリゴン単位のソート処理、光源処理、テクスチャ処理及びアルファブレンディング処理を必要とするが、本発明に係るシルエット透過処理では、ポリゴン単位のソート処理、光源処理及びテクスチャ処理は不要となり、メインキャラクタAによって隠れる部分の濃度を変更するだけであるので、描画処理の演算負荷を低減することができる。
【0086】
なお、上記実施形態では、本発明に係るシルエット透過表示方法を適用したゲーム装置について説明したが、本発明に係るシルエット透過表示方法はゲーム装置以外の透視投影法を用いた三次元アニメーションの表示装置にも適用することができる。この場合は、図3に示すシルエット透過処理のフローチャートを実行するプログラムをコンピュータ読み取り可能に記録したCD−ROMなどの記録媒体から当該プログラムをコンピュータに読み込んだり、電気通信回線を通じて当該プログラムをコンピュータに転送したりした後、そのプログラムを実行させることにより容易に本発明に係るシルエット透過表示装置を実現することができる。
【0087】
また、ゲーム内容も対戦型ゲームに限られるものではなく、透視投影法を用いた三次元アニメーションによる表示方法を用いたゲーム全般に適用することができる。
【0088】
また、上記実施形態では、仮想カメラCとメインキャラクタAとの距離Dが所定の距離Dr以下に近接した場合は、メインキャラクタAに対してシルエット透過処理のみを行うようにしたが、上述した従来の透過処理と本発明に係るシルエット透過処理とを使い分けるようにしてもよい。
【0089】
例えば仮想カメラCのスクリーン内におけるメインキャラクタAのサイズを特大、大、標準の3段階に分類し、「特大」の場合はシルエット透過処理を行い、「大」の場合は従来の透過処理を行い、「標準」の場合は通常の描画処理を行うようにしてもよい。仮想カメラCとメインキャラクタAとの距離Dで言えば、仮想カメラCが標準の視点位置(距離Dが第1の閾値Dr1以上)であれば、通常の描画処理を行い、仮想カメラCとメインキャラクタAとの距離Dが第1の閾値Dr1と第2の閾値Dr2(<Dr1)との間であれば、従来の透過処理を行い、仮想カメラCとメインキャラクタAとの距離Dが第2の閾値Dr2以下であれば、シルエット透過処理を行うようにしてもよい。
【符号の説明】
【0090】
1 ゲーム装置
2 CPU
3 描画データ生成プロセッサ
4 RAM
5 ROM
6 描画処理プロセッサ
7 VRAM
71 テクスチャバッファ
72,72A,72B スクリーンバッファ
8 D/Aコンバータ
9 音声処理プロセッサ
10 アンプ
11 I/F
12 CD−ROMドライバ
13 バス
14 モニタ
15 スピーカ
16 操作コントローラ
17 CD−ROM
A メインキャラクタ
B 敵キャラクタ
C 仮想カメラ
E1,E2,E3,M 他の物体
F 背景
G 二次元画像
【技術分野】
【0001】
本発明は、三次元の仮想空間内に定義された物体を、透視投影法によりスクリーンに投影される二次元画像に変換してモニタに表示させる三次元アニメーションの表示方法に関し、特に仮想カメラの位置(視点)と物体との距離が、当該仮想カメラの撮影画面内の物体のサイズが大きくなり過ぎて遠方の物体や背景が見えなくなるような近接距離になった場合の三次元アニメーションの表示方法、その表示装置、その表示装置を備えたゲーム装置、その表示装置をコンピュータで実現するためのプログラム及び記録媒体に関するものである。
【背景技術】
【0002】
従来、三次元コンピュータグラフィクス(Computer Graphics 以下、「CG」という。)を用いたアニメーションによってゲーム展開を表示するゲーム装置が知られている。そして、この種のゲーム装置に用いられる三次元CGアニメーションでは、一般に透視投影のカメラモデルを用いて各コマの二次元画像が作成される。
【0003】
例えば三次元の仮想空間内に2つの物体を存在させ、一方の物体を主たる遊技者の操作によって動作させる一方、他方の物体を従たる遊技者の操作若しくはコンピュータによって動作させて両物体を対戦させる対戦型ゲームにおいては、図9に示すように、一方の物体A(以下、「メインキャラクタ」という。)に対して後方の所定の位置(メインキャラクタAから距離Dだけ後方で高さHの位置)に仮想カメラCを配置し、この仮想カメラCでメインキャラクタA側を撮影して得られる二次元画像G(図10参照)が三次元CGの各コマの画像として生成され、モニタに表示される。
【0004】
なお、図10に示す画像Gは、実際に仮想カメラCでメインキャラクタA側を撮影したときに得られる撮影画像をシミュレーションしたものではなく、仮想カメラCの位置からメインキャラクタA側に視線を伸ばし、その視線が仮想カメラCとメインキャラクタAとの間に仮想的に配置されたスクリーンSと交差する位置にメインキャラクタAや対戦相手の物体B(以下、「敵キャラクタ」という。)やビルE1,E2や背景の山Mなどの他の物体を描画したもの(透視投影法による二次元画像)である。
【0005】
そして、三次元CGアニメーションでは、操作者が操作コントローラの移動ボタンを操作すると、その操作に応じて仮想空間内でメインキャラクタAを移動させるとともに、仮想カメラCもメインキャラクタAに従って移動させ、コマ毎に透視投影法による二次元画像が生成されて仮想空間内で移動するメインキャラクタAの画像がモニタに表示される。
【0006】
対戦型ゲームおいては、遊技者の操作に応じてメインキャラクタAや敵キャラクタBは仮想空間(すなわち、対戦場となる空間。以下、「対戦空間」という。)内を自由に移動することができるが、例えば対戦空間内に設けられたビルE1,E2のうち、内部の画像が作成されていないものについては、ビル内に入ることはできない。このようなビルは、仮想空間内に恰も存在するかのように描画されるが、描画処理においては、ビル内は空洞になっており、外部から見たビル表面の画像が存在するだけだからである。このため、遊技者がメインキャラクタAをビル内に移動させるような操作を行ってもメインキャラクタAはビルの壁の部分までしか移動できず、メインキャラクタAの移動がビルの壁の部分で制限された状態の描画処理が行われる。
【0007】
同様のことが仮想カメラCの移動位置についても生じる。すなわち、図11に示すように、P1に存在するメインキャラクタAに対してP3の位置に仮想カメラCを配置し、メインキャラクタA側を透視投影している状態から、操作者がメインキャラクタAをビルE1の前のP2に移動させた場合、仮想カメラCの位置がビルE1内のP4となり、仮想カメラCを移動させることができなくなる。
【0008】
ビルE1内のP4に仮想カメラCを移動させてメインキャラクタA側を見た透視投影法による二次元画像を作成すると、仮想カメラCとメインキャラクタAとの間に存在するビルE1の壁によって画面全体が覆われ、実質的にメインキャラクタAや仮想カメラCに対してメインキャラクタAの後方の敵キャラクタBなどをモニタに表示させることができないので、プログラムによって仮想カメラCをビルE1内に移動させないようにしているからである。
【0009】
従って、このような場合は、P2とP4とを結ぶ線とビルE1の壁との交点P5に仮想カメラCを移動させ、このP5の位置からメインキャラクタA側を透視投影した二次元画像からなる三次元アニメーションが作成されることになる。
【0010】
この場合、メインキャラクタAと仮想カメラCとの間の距離D’が通常の透視投影の場合の距離Dよりも短くなり、モニタに表示される画像は、図12に示すように、二次元画像Gの画面内におけるメインキャラクタAの占める面積が大きくなりすぎ、仮想カメラCに対してメインキャラクタAの後方の敵キャラクタBやビルE3や背景Fの画像が殆ど隠れてしまうことになる。このような場合、通常の描画処理を行ったのではメインキャラクタAの描画によって、後方の敵キャラクタBやビルE3や背景Fの状態が完全に隠れてしまい、操作者が戦況状態を見失うことになるので、例えば特許文献1〜3に示される透過処理技術を用いてメインキャラクタAの画像に対して透過処理を行い、メインキャラクタAによって隠れる部分を見える状態にすることが行われている。
【0011】
図13は、メインキャラクタAの画像を透過画像にする従来の透過処理の処理手順の一例を示すフローチャートである。
【0012】
ここで、図14に示す透視投影の構成を例に、図13に示すフローチャートに従って従来の透過処理について説明する。
【0013】
図14(a)に示す透視投影の構成においては、仮想カメラCに対して球OJ1、直方体OJ2及び山OJ3の順に物体が配置され、仮想カメラCの位置から視線Lの方向を見た三次元CGの画像G(二次元画像G)は同図(b)のようになる。画面内には3個の物体OJ1,OJ2,OJ3のほかに、背景OJ4が存在するが、二次元画像Gにおいては、山OJ3が背景OJ4に含まれ、山OJ3は背景OJ4と一緒に描かれることになる。従って、二次元画像G内には、球OJ1の部分の領域と、直方体OJ2の部分の領域と、山OJ3及び背景OJ4の部分の領域の3つの領域とが存在することになる。
【0014】
各領域は、多数の三角形のポリゴンによって構成され、二次元画像Gを作成する場合は、仮想カメラCから最も遠い物体を構成するポリゴンに対して描画処理を行った後、次に遠い物体を構成するポリゴンに対して描画処理を行い、最後に最も近い物体を構成するポリゴンに対して描画処理が行われる。球OJ1の部分の領域に含まれるポリゴンをg(k)、直方体OJ2の部分の領域に含まれるポリゴンをg(j)、山OJ3及び背景OJ4を含む部分の領域に含まれるポリゴンをg(i)とすると、ポリゴンg(i)について描画処理が行われた後、ポリゴンg(j)について描画処理が行われ、最後にポリゴンg(k)について描画処理が行われる。そして、最後のポリゴンg(k)についての描画処理において透過処理が行われる。
【0015】
以上の処理内容を図13のフローチャートにより説明すると、まず、仮想カメラCより奥側の物体からポリゴン単位で描画順が決定される(S30)。すなわち、山OJ3及び背景OJ4の部分の領域に含まれるポリゴンg(i)(i=1,2,…N1)について描画順が決定され、次に、直方体OJ2の部分の領域に含まれるポリゴンg(j)(j=1,2,…N2)について描画順が決定され、最後に球OJ1の部分の領域に含まれるポリゴンg(k)(k=1,2,…N3)について描画順が決定される。
【0016】
従って、描画順の決定された全てのポリゴンg(i),g(j),g(k)をg(h)(hは描画順。h=1,2,…(N1+N2+N3))とすると、続いて、ポリゴンの描画順をカウントするカウンタ値hが「1」に設定され(S31)、最初のポリゴンg(h)に対して光源処理が行われる(S32)。光源処理とは、ポリゴンを構成する頂点について光源及び光源から入射光の反射特性に関する情報を付与する処理である。
【0017】
続いて、ポリゴンg(h)に対してテクスチャ処理が行われる(S33)。テクスチャ処理は、ポリゴンg(h)に、対応するテクスチャ(二次元画像)を貼り付ける処理である。続いて、ポリゴンg(h)に対して透過処理の要否が判定される(S34)。この判定は、ポリゴンg(h)が球OJ1の部分の領域に含まれるポリゴンであるか否かを判定することによって行われる。ポリゴンg(h)に対して透過処理が必要であれば(S34:YES)、アルファブレンディング処理が行われる(S35)。アルファブレンディング処理は、例えばポリゴンg(h)とこれに重なるポリゴンg(h’)のテクスチャの色を混合したり、掛け合わしたりしてポリゴンg(h)の色を透過色とするものである。ポリゴンg(h)に対して透過処理が不要であれば(S34:NO)、ステップS35の処理はスキップされる。最初のポリゴンg(1)では、透過処理は不要となるから、ステップS35はスキップされ、ステップS36に移行する。
【0018】
続いて、カウンタ値hが「1」だけ増加された後(S36)、そのカウンタ値hが全てのポリゴン数(N1+N2+N3)を超えたか否かが判別され(S37)、h≦(N1+N2+N3)であれば(S37:NO)、ステップS32に戻り、次のポリゴンg(h+1)についてステップS32〜S35の処理が行われ、以下、同様にして全てのポリゴンg(h)に対してステップS32〜S35の処理が行われる。そして、h>(N1+N2+N3)になると(S37:YES)、透過処理を終了する。
【先行技術文献】
【特許文献】
【0019】
【特許文献1】特開平09−50541号公報
【特許文献2】特許第2902352号公報
【特許文献3】特開2002−45566号公報
【発明の概要】
【発明が解決しようとする課題】
【0020】
ところで、例えば図12のような状態になるときに、従来の透過処理を適用すれば、メインキャラクタAの部分には透過処理が施されるので、遊技者はメインキャラクタAに重なって見えなくなる敵キャラクタBや背景Fの部分を視認することができるようになるが、この透過処理においてもメインキャラクタAのポリゴンに対して光源処理やテクスチャ処理が行われるので、メインキャラクタAの透過像にも光沢や色、柄の情報が残り、これによって敵キャラクタBやビルE3や背景Fの部分が見え辛くなるという不都合がある。
【0021】
なお、図12において、メインキャラクタAに施した斜線部分は透過像に色や模様が付されていることを示し、透明部分は透過像の反射が大きく、色や柄や模様が他の部分より明るいことを示している。
【0022】
この問題を解決するために、メインキャラクタAを透過像で表示することを止め、メインキャラクタAを表示しないという方法も考えられる。しかし、対戦型ゲームの場合、遊技者がメインキャラクタAの攻撃又は防御の動作を制御する際、メインキャラクタAと敵キャラクタBとの位置関係や敵キャラクタBの動作状態が認識できることが重要であり、これらの情報がモニタの画面から明瞭に得られなかった場合は、敵キャラクタBの攻撃を受けたのか否かも分からぬままメインキャラクタAがダメージを負ったり、メインキャラクタAの攻撃動作に入る挙動が見えないため、遊技者は攻撃ボタンを操作するタイミングが分からなくなったりする等して、戦闘意欲が阻害されることになるので、メインキャラクタAを表示しないという方法を採用することは好ましくない。
【0023】
対戦型ゲームにおいては、遊技者が戦況に応じて、メインキャラクタAを図11や図12の状態になる位置に移動させることは多々あり、その度にメインキャラクタAがモニタに表示されないようになると、遊技者はメインキャラクタAの位置が分からなくなり、操作性が著しく低下することになる。
【0024】
その一方、従来の透過処理によりメインキャラクタAを表示させるようにした場合は、メインキャラクタAが透過表示された状態で遊技者がメインキャラクタAに攻撃若しくは防御の動作をさせると、メインキャラクタAと敵キャラクタBとが重なった状態で両キャラクタA,Bが動作する画像が透過像で表示されることになるので、透過表示におけるメインキャラクタAの色、柄、模様などの情報が却って敵キャラクタBの動作を見辛くし、遊技者にとって戦況の把握が困難になる。
【0025】
本発明は、上記課題に鑑みてなされたものであり、仮想カメラの位置がメインキャラクタに近接した場合、メインキャラクタをシルエット表示することにより当該メインキャラクタで隠れる部分を従来よりも見易くすることのできる三次元アニメーションの表示方法、三次元アニメーションの表示装置、その表示装置を備えたゲーム装置、その表示装置を実現するためのプログラム及び記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0026】
本願発明の第1の側面によって提供されるプログラムは、コンピュータを、三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示装置として機能させるプログラムであって、前記コンピュータを、前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別手段と、前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成手段と、前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成手段で作成された三次元アニメーションを前記モニタに表示させる表示制御手段と、して機能させることを特徴としている(請求項1)。
【0027】
なお、前記所定の距離は、前記視点から仮想カメラによって前記第1の物体を撮影した場合に撮影画面内における前記第1の物体のサイズが所定のサイズ以上となる距離にするとよい(請求項2)。
【0028】
また、前記動画像作成手段は、前記第1の物体を除いた透視投影法による各コマの二次元画像を作成する画像作成手段と、前記モニタの表示画面上における前記第1の物体の表示位置を算出する算出手段と、前記画像作成手段によって作成された二次元画像の、前記算出手段で算出された前記モニタの表示画面内の前記第1の物体の表示位置に含まれる画素に対して、各画素の濃度を所定の割合で変化させる濃度変更手段と、を含むとよい(請求項3)。
【0029】
また、前記動画像作成手段は、前記画像作成手段で作成された各コマの二次元画像の色数を低減して保存する記憶手段と、前記算出手段で算出された前記第1の物体の表示位置を前記記憶手段に保存された各コマの二次元画像における表示位置に変換する変換手段と、を更に備え、前記濃度変更手段は、前記記憶手段に保存された各コマの二次元画像を用いて、濃度変更処理を行うとよい(請求項4)。
【0030】
また、本願発明の第2の側面によって提供される記録媒体は、請求項1乃至4のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体である(請求項5)。
【0031】
また、本願発明の第3の側面によって提供される三次元アニメーション表示方法は、三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示方法であって、前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別工程と、前記判別工程により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成工程と、前記判別工程により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成工程によって作成された三次元アニメーションを前記モニタに表示させる表示制御工程と、からなることを特徴とする(請求項6)。
【0032】
なお、前記動画像作成工程は、前記第1の物体を除いた透視投影法による各コマの二次元画像を作成する第1の工程と、前記モニタの表示画面上における前記第1の物体の表示位置を算出する第2の工程と、前記第1の工程によって作成された二次元動画像の、前記第2の工程で算出された前記モニタの表示画面内の前記第1の物体の表示位置に含まれる画素に対して、各画素の濃度を所定の割合で変化させる第3の工程とからなるとよい(請求項7)。
【0033】
また、本願発明の第4の側面によって提供される三次元アニメーション表示装置は、三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示装置であって、前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別手段と、前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成手段と、前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成手段で作成された三次元アニメーションを前記モニタに表示させる表示制御手段と、を備えたことを特徴とする(請求項8)。
【0034】
また、本願発明の第5の側面によって提供されるゲーム装置は、遊技者によって操作される操作手段と、画像を表示する表示手段と、前記遊技者によって動作が制御されるメインキャラクタの三次元画像データを記憶する第1の記憶手段と、前記メインキャラクタが配置される仮想的な空間を構成する背景その他の物体の三次元画像データを記憶する第2の記憶手段と、前記操作手段から操作情報が入力されると、所定のゲームプログラムに従ってその操作情報に基づき前記メインキャラクタ及び背景その他の物体を動作させる第1の動作制御手段と、前記第1の動作制御手段によって決定される動作内容に基づき、ゲーム進行を示す三次元アニメーション画像として、前記第1,第2の記憶手段に記憶された三次元画像のデータを用いて前記メインキャラクタの後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成する第1の画像作成手段と、前記第1の画像作成手段で作成された三次元アニメーションを前記表示手段に表示する表示制御手段と、を備えたゲーム装置において、前記操作手段から前記メインキャラクタを移動させる操作情報が入力されると、その移動情報に基づいて前記仮想空間内の前記メインキャラクタ及び前記視点の移動位置を演算する演算手段と、前記演算手段により演算された前記メインキャラクタ及び前記視点の移動位置に基づいて、前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したか否かを判別する判別手段と、前記判別手段により前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したと判別されると、前記メインキャラクタによって隠れる背景その他の物体の濃度を、当該メインキャラクタが存在しないとした場合の濃度と異ならせることにより、当該メインキャラクタをシルエットで表示した二次元画像からなる三次元アニメーションを作成する第2の画像作成手段と、を備え、前記表示制御手段は、前記判別手段により前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したと判別されると、前記第1の画像作成手段によって作成される三次元アニメーションに代えて、前記第2の画像作成手段によって作成される三次元アニメーションを前記表示手段に表示させることを特徴とする(請求項9)。
【0035】
なお、前記第2の動画像作成手段は、前記第1の動画像作成手段で作成された各コマの二次元画像の色数を低減して保存する第3の記憶手段と、前記算出手段で算出された前記メインキャラクタの表示位置を前記第3の記憶手段に保存された各コマの二次元画像における表示位置に変換する変換手段と、を更に備え、前記濃度変更手段は、前記第3の記憶手段に保存された各コマの二次元画像を用いて、濃度変更処理を行うとよい(請求項10)。
【発明の効果】
【0036】
本発明によれば、透視投影法により作成した三次元アニメーションをモニタに表示する際、視点(仮想カメラの位置)と第1の物体との距離が、例えば仮想カメラの撮影画面内の第1物体のサイズが所定のサイズ以上となるような所定の距離以下に近接したときは、第1の物体によって隠れる背景及びその他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションが作成されてモニタに表示されるので、第1の物体の操作者は当該第1の物体の位置や状態を見失うことがなく、しかも当該第1の物体によって隠れる背景及びその他の第2の物体も明瞭に視認することができるので、第1の物体に対する操作性を損なうことがない。
【0037】
特に、本発明に係る透過処理方法を対戦型ゲームに適用した場合には、操作者が操作するメインキャラクタに仮想カメラが近接しすぎた場合にも戦況把握に必要な情報(メインキャラクタと敵キャラクタとの位置関係や両キャラクタの態勢などの情報)の取得が困難になることがなく、メインキャラクタに対する操作性の低下やこれに基づく遊技者の遊技意欲の喪失を防止することができる。従って、遊技者は対戦型ゲームを快適に楽しむことができる。
【0038】
また、第1の物体(メインキャラクタ)によって隠れる部分の濃度を低下若しくは上昇させるだけの処理であるので、従来の透過処理に比べて、描画のための演算負荷を低減することができる。
【図面の簡単な説明】
【0039】
【図1】本発明に係る三次元アニメーションの表示方法を適用したゲーム装置の一例を示すブロック構成図である。
【図2】本発明に係るシルエット透過表示方法に関係した描画制御を示す基本的な処理手順を示すフローチャートである。
【図3】メインキャラクタをシルエット表示するシルエット透過処理の処理手順を示すフローチャートである。
【図4】仮想カメラがメインキャラクタに近接した場合にモニタに表示される透視投影法による二次元画像の描画順を説明するための図である。
【図5】スクリーンバッファにメインキャラクタよりも後方にある敵キャラクタとビル及び背景とが描画された状態を示す図である。
【図6】スクリーンバッファからテクスチャバッファに色数を低減して画像を取り込む際の色数の低減例を示す図である。
【図7】スクリーンバッファにおけるメインキャラクタの描画位置を示す図である。
【図8】スクリーンバッファに描かれた敵キャラクタ及び背景のメインキャラクタによって隠れる部分の濃度を低下させることにより当該メインキャラクタがシルエット表示される三次元アニメーション画像の一例を示す図である。
【図9】透視投影法による三次元CG画像を説明するための図である。
【図10】図9の構成によってモニタに表示される三次元CG画像を示す図である。
【図11】メインキャラクタの移動により内部が定義されていないビル内にカメラ位置が移動することになる場合のカメラ位置の修正を説明するための図である。
【図12】メインキャラクタに仮想カメラが近接した場合にモニタに表示される3次元CG画像の一例を示す図である。
【図13】従来の透過処理の処理手順の一例を示すフローチャートである。
【図14】従来の透過処理の内容を説明するための図である。
【発明を実施するための形態】
【0040】
以下、本発明の好ましい実施の形態を、添付図面を参照して具体的に説明する。
【0041】
図1は、本発明に係るアニメーション表示方法を適用したゲーム装置の一例を示すブロック構成図である。ゲーム装置1は、家庭用として用いられるテレビゲーム機であり、ゲームプログラム及びゲームデータが記録されたCD−ROM(Compact Disc−ROM)から当該ゲームプログラム及びゲームデータを装置内のメモリ(RAM)に読み込み、CPU(Central Processing Unit)によってゲームプログラムを実行させることにより遊技者がゲーム内容を楽しむことができるものである。
【0042】
本実施形態は、家庭用のテレビゲーム機であるが、本発明に係る三次元アニメーション表示方法は家庭用のテレビゲーム機に限らず、アーケードゲーム機などの他の種類のゲーム機やゲーム機以外の透視投影法による三次元アニメーションを用いた装置にも適用することができる。なお、以下の説明では、ゲーム内容として対戦型ゲーム(メインキャラクタと敵キャラクタとが格闘したり、戦闘したりするゲーム)を例に説明する。
【0043】
ゲーム装置1は、CPU2、描画データ生成プロセッサ3、RAM(Random Access Memory)4、ROM(Read Only Memory)5、描画処理プロセッサ6、VRAM(Video-RAM)7、D/A(Digital-Analog)コンバータ8、音声処理プロセッサ9、アンプ10、インターフェース(I/F)11、CD−ROMドライバ12及びバス13を含んでいる。
【0044】
ゲーム装置1にはテレビジョンが接続され、当該テレビジョンのブラウン管や液晶ディスプレイなどの表示装置がD/Aコンバータ8に外部接続されるモニタ14として利用され、当該テレビジョンに内蔵のスピーカがアンプ10に外部接続されるスピーカ15として利用される。ゲーム装置1では、ゲームプログラム及びゲームデータ(キャラクタや背景の画像データ、ステータスなどの情報表示用の画像データ、効果音やBGMなどの音声データ、文字や記号によるメッセージデータなど)が記録されたCD−ROM17をCD−ROMドライバ12に装着し、CD−ROMドライバ12によってCD−ROM17内のゲームプログラム及びゲームデータをRAM4に読み込み、CPU2によってゲームプログラムを実行することによりゲーム内容を楽しむことができる。
【0045】
ゲーム装置1にはインターフェース(I/F)11を介して操作コントローラ16が接続され、遊技者はこの操作コントローラ16の操作部材を操作することによりゲームを進行させることができる。
【0046】
CPU2、描画データ生成プロセッサ3、RAM4、ROM5、描画処理プロセッサ6、音声処理プロセッサ9、インターフェース(I/F)11及びCD−ROMドライバ12はバス13によって相互にデータ伝送可能に接続されている。
【0047】
CPU2は、上記のようにCD−ROMドライバ12によってCD−ROM17からRAM4に読み込まれるゲームプログラムを実行することより、ゲーム進行を統括的に制御する。より具体的には、操作コントローラ16から遊技者の操作信号が入力されると、CPU2は、ゲームプログラムに従ってその操作信号に対する所定のゲーム進行処理を行い、その処理結果をモニタ14に三次元アニメーションによって表示するとともに、スピーカ15から効果音によって出力する。
【0048】
モニタ14に表示するための三次元アニメーションの描画処理は、主として描画処理プロセッサ6によって行われる。CPU2は、操作コントローラ16からの遊技者の操作信号に基づき、モニタ14に表示すべき三次元アニメーションの内容を決定し、その内容に対して必要な描画データを描画データ生成プロセッサ3に生成させ、その描画データを描画処理プロセッサ6に転送して描画処理を行わせる。また、CPU2は、スピーカ15から出力すべき効果音若しくはBGMの音響内容を決定し、音声処理プロセッサ9にその音響内容に対した音声データを生成させ、その音声データをスピーカ15から出力させる。
【0049】
描画データ生成プロセッサ3は、描画処理に必要な各種の演算処理を行うものである。CPU2は、モニタ14に表示すべき画像を決定し、その画像の描画に必要な画像データ(背景、メインキャラクタ及び敵キャラクタのポリゴンデータ、テクスチャデータ、光源データなど)をRAM4から読み出して描画データ生成プロセッサ3に供給する。また、CPU2は、操作コントローラ16から入力される操作情報を描画データ生成プロセッサ3に供給する。描画データ生成プロセッサ3は、CPU2から供給される画像データと操作情報に基づいて、描画に必要なデータ(透視投影における仮想カメラ、メインキャラクタ、敵キャラクタ及び背景の位置関係、スクリーン画面(モニタの画面に相当)上におけるメインキャラクタ、敵キャラクタ及び背景を構成するポリゴンの座標、各ポリゴンに対応するテクスチャ、各ポリゴンの反射特性などのデータ)を演算し、その演算結果を描画処理プロセッサ6に供給する。
【0050】
RAM4は、CD−ROMドライバ12によってCD−ROM17から読み込まれたゲームプログラム及びゲームデータを格納するエリアと、CPU2がゲームプログラムを処理するためのワークエリアを提供するものである。RAM4には、ゲームの進行に応じて必要なゲームプログラムとゲームデータとがCD−ROM17から読み込まれて記憶される。
【0051】
ゲームプログラムには、CPU2に実行させるための処理手順や各種命令等が記述されており、その中には、操作コントローラ16からの操作信号に応じてゲーム画面や音声等を制御するための内容が含まれている。ゲームデータには、例えばメインキャラクタ、敵キャラクタ及び背景や他の物体を構成するポリゴンデータとテクスチャデータが含まれ、BGMや各種の効果音として用いられる音声データも含まれている。
【0052】
本実施形態では、CD−ROM17に記憶されたゲームプログラムは、例えば遊技者が操作コントローラ16を操作することによって動作が制御されるメインキャラクタと他の遊技者若しくはコンピュータによって動作が制御される複数の敵キャラクタとを対戦させるアクションゲームである。より具体的には、このアクションゲームは、市街地、砂漠、海上、空、宇宙空間などの各種のシチュエーションを対戦場とし、メインキャラクタが銃やミサイルなどの各種の武器を用いて複数の敵キャラクタと戦闘し、より強い敵キャラクタを倒していくことを目的としたものである。
【0053】
ROM5は、ディスクローディング機能などのゲーム装置1の基本的機能やCD−ROM17に記憶されたゲームプログラム及びゲームデータを読み出す手順などを示す基本プログラムが記憶されている。CPU2は、CD−ROMドライバ12にCD−ROM17が装着されると、ROM5の基本プログラムに従ってCD−ROMドライバ12を動作させ、CD−ROM17からゲームプログラム及びゲームデータをRAM4に読み込み、ゲーム開始状態に設定する。
【0054】
描画処理プロセッサ6は、三次元アニメーションの各コマの画像(透視投影法による二次元画像)を生成し、モニタ14に表示させるものである。描画処理プロセッサ6は、CPU2からの描画指令に基づき、描画データ生成プロセッサ3から供給されるデータを用いてモニタ14に表示させる各コマの二次元画像を作成する。描画処理プロセッサ6には各コマの二次元画像の作成作業をするためのVRAM7が接続されている。描画処理プロセッサ6は、VRAM7を用いて1/30秒毎に各コマの二次元画像のデータを生成する。
【0055】
VRAM7には、モニタ14に表示される各コマの二次元画像のデータを格納するバッファメモリ72(以下、「スクリーンバッファ」という。)と、スクリーンバッファ72に格納すべき画像データを作成するためのバッファメモリ71(以下、「テクスチャバッファ」という。)が設けられている。スクリーンバッファ72は同一のメモリ構造及びメモリ容量を有する2枚のスクリーンバッファ72A,72Bで構成されている。
【0056】
スクリーンバッファ72を2枚構成とするのは、モニタ14への表示速度に対してスクリーンバッファ72への描画速度に余裕を持たせるためである。すなわち、一方のスクリーンバッファ72Aを用いてモニタ14への表示処理を行っている間に、他方のスクリーンバッファ72Bで次のコマの画像データを生成し、この処理をスクリーンバッファ72Aとスクリーンバッファ72Bとの間で交互に行うことにより、モニタ14への1/30秒毎の各コマの表示処理をスムーズに行うようにしている。
【0057】
テクスチャバッファ71は、スクリーンバッファ72にモニタ14に表示すべき二次元画像のデータを作成するための前処理を行うためのバッファである。テクスチャバッファ71はスクリーンバッファ72よりも少ないメモリ容量を有している。スクリーンバッファ72ではR(赤),G(緑),B(青)の各色成分が、例えば256階調(8ビット)で描画されるが、テクスチャバッファ71ではR,G,Bの各色成分の階調数を少なくすることにより、テクスチャバッファ71のメモリ容量をスクリーンバッファ72よりも少なくしている。
【0058】
D/Aコンバータ8は、スクリーンバッファ72から出力される画像データをアナログ信号に変換してモニタ14に出力するものである。D/Aコンバータ8にはスクリーンバッファ72Aからの画像データとスクリーンバッファ72Bからの画像データを切り換えるスイッチ回路が設けられ、このスイッチ回路の切り換えは描画処理プロセッサ6によって制御される。
【0059】
すなわち、描画処理プロセッサ6は、スクリーンバッファ72Aをモニタ14のバッファとするときは、スクリーンバッファ72Aの画像データがモニタ14に出力されるようにスイッチ回路を切り換え、スクリーンバッファ72Bをモニタ14のバッファとするときは、スクリーンバッファ72Bの画像データがモニタ14に出力されるようにスイッチ回路を切り換える。
【0060】
音声処理プロセッサ9は、CPU1からの音声指令に基づき、RAM4から効果音もしくはBGMの音声データを読み出し、所要の加工処理とD/A変換処理をした後、アンプ10に出力する。アンプ10は、音声処理プロセッサ9から入力される音声信号を所定の増幅度で増幅した後、スピーカ15に出力する。
【0061】
インターフェース(I/F)11は、操作コントローラ16をゲーム装置1に接続するためのインターフェースである。操作コントローラ16は、ゲーム装置1に各種の操作情報を入力するものである。操作コントローラ16には、十字キー、左ボタン、右ボタン、セレクトボタン、スタートボタン、ジョイステックなどの複数の操作部材が設けられている。スタートボタンは、ゲーム開始を入力するためのボタンであり、セレクトボタンはメニュー内容を選択するためのボタンである。また、ジョイステックや十字キーは、主としてメインキャラクタに移動、攻撃、防御などの種々の動作を指令するための操作部材として使用され、左ボタン及び右ボタンは、例えばモニタに表示される三次元アニメーション画像の視線方向を左方向や右方向に回転したりするのに使用される。
【0062】
次に、図2〜図9を用いて、本発明に係る三次元アニメーションの表示方法について説明する。
【0063】
本発明は、三次元の仮想空間内に定義されたメインキャラクタ、敵キャラクタ及び背景その他の物体を、透視投影法によりスクリーンに投影される二次元画像に変換してモニタに表示させる際に、視点(仮想カメラの位置)とメインキャラクタとの距離が、スクリーン内のメインキャラクタのサイズが大きくなり過ぎて遠方の敵キャラクタや背景その他の物体が見えなくなるような近接距離になった場合に、メインキャラクタの部分を透過させ、当該メインキャラクタをシルエットによって表示する(以下、この表示方法を「シルエット透過表示方法」という。)点に特徴を有するものである。従って、以下の説明では、そのシルエット透過表示方法について説明する。
【0064】
図2は、本発明に係るシルエット透過表示方法に関係した描画制御を示す基本的な処理手順を示すフローチャートである。また、図3は、メインキャラクタをシルエット表示するシルエット透過処理の処理手順を示すフローチャートである。
【0065】
CPU2は、対戦型ゲームの進行を制御しているとき、操作コントローラ16から操作信号の割り込みを監視している(S1)。操作コントローラ16から操作信号の割り込みがなければ(S1:NO)、ステップS6に移行し、描画処理プロセッサ6によって通常の描画処理が行われる。操作コントローラ16から操作信号の割り込みがあると(S1:YES)、更にその操作信号がメインキャラクタの移動操作であるか否かが判別され(S2)、メインキャラクタの移動操作でなければ(S2:NO)、ステップS6に移行し、描画処理プロセッサ6によって通常の描画処理が行われる。
【0066】
通常の描画処理は、三次元の対戦空間内に存在するメインキャラクタ、敵キャラクタ及び背景その他の物体の三次元画像のデータを、透視投影法によりスクリーンに投影した各コマの二次元画像のデータに変換し、モニタ14に表示させる処理である。この描画処理では、仮想カメラCとメインキャラクタAとの距離が、図9に示したように、所定の距離Dに保持されているので、モニタ14には、例えば図10に示したように、メインキャラクタAや、敵キャラクタBやビルE1,E2や山Mなどが適度な大きさで表示される。
【0067】
従って、モニタ14に、例えば図10に示される状態の三次元アニメーションが表示されている状態で、遊技者によりメインキャラクタAに攻撃若しくは防御を行わせる操作が行われた場合は、図10の画角を保持した状態でメインキャラクタAが遊技者の操作に応じた攻撃若しくは防御の動作を行う三次元アニメーションを表示させる。また、例えば図10に示される状態の三次元アニメーションが表示されている状態で、遊技者が操作コントローラ16を操作しなければ、その表示状態が保持される。
【0068】
操作コントローラ16からメインキャラクタAを移動させる操作信号の割り込みがあると(S2:YES)、CPU2により仮想空間の対戦場におけるメインキャラクタAの移動位置が算出されるとともに、メインキャラクタAの移動に伴う仮想カメラCの移動位置が算出される(S3)。続いて、仮想カメラCとメインキャラクタAとの距離が、メインキャラクタAの画面内におけるサイズが所定サイズ(例えば画面の70%以上を占めるサイズ)以上となる所定の距離まで近接しているか否かが判別される(S4)。この判別は、例えば図9において、距離Dを予め設定された閾値Drと比較することにより行われる。
【0069】
仮想カメラCとメインキャラクタAとの距離Dが所定の距離Dr以下に近接していなければ(S4:NO)、ステップS6に移行し、通常の描画処理が行われ、仮想カメラCとメインキャラクタAとの距離Dが所定の距離Dr以下に近接していれば(S4:YES)、メインキャラクタAの部分をシルエットで表示する透過処理(以下、「シルエット透過処理」という。)を施した描画処理が行われる(S5)。
【0070】
例えば図11において、P1に位置するメインキャラクタAをP2に移動させる操作が行われた場合、仮想カメラCの位置がP5に移動し、仮想カメラCとメインキャラクタAの距離D’が閾値Drよりも短くなり、モニタ14に表示される三次元アニメーションは、図12に示すような状態となるので、この場合は、メインキャラクタAの部分をシルエットで表示するような透過処理が行われる。
【0071】
次に、シルエット透過処理について、上述した図9〜図12に示す透視投影例を用いて、図3に示すフローチャートに従い説明する。
【0072】
なお、通常の描画処理が行われて、モニタ14に、図10に示す二次元画像が表示されている状態で(ステップS1,S6のループ)、遊技者によりメインキャラクタAを移動させる操作が行われた結果(ステップS1,S2,S4:YES)、ステップS5で、図12に示す二次元画像に対してシルエット透過処理を行うことになった場合を例に説明する。
【0073】
ステップS5に移行する直前のコマでは、図10に示す二次元画像が、例えばスクリーンバッファ72Aに描画され、モニタ14に表示されている。そして、スクリーンバッファ72Bでは、次のコマの画像として図12に示す二次元画像の描画処理が行われている。このとき、図12に示す二次元画像は、図4に示すように、後方のビルE3及び背景Fや敵キャラクタBを構成するポリゴンg(i),g(j),g(m)から順番に描画されるので、スクリーンバッファ72BにビルE3及び背景Fと敵キャラクタBとが描画された時点で(S11)、スクリーンバッファ72Bの画像データがテクスチャバッファ71に取り込まれる(S12)。すなわち、テクスチャバッファ71には、図5に示す画像(メインキャラクタAが描かれていない画像)が格納される。
【0074】
このとき、テクスチャバッファ71には、R,G,Bの各色成分の階調数を少なくして、すなわち、色数を低減してデータ数を少なくした画像データが取り込まれる。例えばR,G,Bの各色成分の階調数を1/2にする場合は、図6に示すように、元の画像の色成分のデータ(R,G,B)=(11/16,14/16,7/16)が(R',G',B')=(5/8,7/8,3/8)に変換されてテクスチャバッファ71に格納される。なお、図6において、白抜きの棒グラフは元の画像の色成分の濃度レベルを示し、斜線入りの棒グラフはテクスチャバッファ71に格納される色成分の濃度レベルを示している。
【0075】
このように色数を低減するのは、テクスチャバッファ71では、主としてメインキャラクタAを構成するポリゴンに対して、透過して見える敵キャラクタBやビルE3や背景Fの部分の画像の濃度を変更する処理を行い、メインキャラクタAをシルエットで表示させる処理を行うだけであるので、正確な色情報を必要としないため、色数を低減することによりテクスチャバッファ71のメモリ容量を低減するとともに、処理の迅速化を図るものである。
【0076】
続いて、スクリーンバッファ72BにおけるメインキャラクタAの描画位置、すなわち、メインキャラクタAを構成する複数のポリゴンg(k)の各座標(以下、「スクリーン座標」という。)が算出される(S13)。すなわち、図7に示すように、スクリーンバッファ72Bが480×640ピクセルで構成されているとすると、各ポリゴンg(k)の頂点位置に対応するピクセルのアドレスが算出される。続いて、更に各ポリゴンg(k)のスクリーン座標がテクスチャバッファ71における座標(以下、「テクスチャ座標」という。)に変換される(S14)。
【0077】
続いて、テクスチャバッファ71において、メインキャラクタAを構成する各ポリゴンg(k)単位で、当該ポリゴンg(k)に含まれるピクセルのR,G,Bの色成分の濃度レベルが所定の割合で変更される(S15)。
【0078】
テクスチャバッファ71においては、三角形の各ポリゴンg(k)の位置は3個の頂点のテクスチャ座標によって決定されるので、これらのテクスチャ座標によって囲まれる三角形の領域に含まれるピクセルを抽出することができる。テクスチャバッファ71には、メインキャラクタAが描かれる位置に当該メインキャラクタAを透過した敵キャラクタB、ビルE3若しくは背景Fの画像のデータが格納されているので、メインキャラクタAを構成する各ポリゴンg(k)に含まれるピクセルのR,G,Bの色成分は、各ポリゴンg(k)の位置に対応する敵キャラクタB、ビルE3若しくは背景Fの部分のR,G,Bの色成分となっている。
【0079】
従って、メインキャラクタAを構成する各ポリゴンg(k)単位で、当該ポリゴンg(k)に含まれるピクセルのR,G,Bの各色成分の濃度データを抽出し、その濃度データのレベルを所定の割合で低下もしくは上昇させることにより、敵キャラクタB、ビルE3若しくは背景FのメインキャラクタAによって隠れる部分の色が黒っぽく、もしくは白っぽくなる。
【0080】
なお、濃度レベルを低下させるか、上昇させるかは、画面全体の明るさによって決定される。例えば対戦空間が夜景や宇宙空間のように全体的に暗い場合は、濃度レベルは上昇され、対戦空間が昼間の市街地や空のように全体的に明るい場合は、濃度レベルは低下される。濃度レベルをどのように変更させるかを制御するためのデータ(例えばフラグデータ)は、例えば対戦空間毎や同一の対戦空間内でもメインキャラクタAの移動に基づく対戦シーン毎に設定され、このデータに基づいてステップS15の濃度変更処理が行われる。
【0081】
続いて、テクスチャバッファ71で作成したメインキャラクタAを構成する各ポリゴンg(k)に含まれるピクセルのR,G,Bの色成分の濃度データに基づいて、スクリーンバッファ72Bに描画されている敵キャラクタB、ビルE3及び背景Fの画像のメインキャラクタAによって隠れる部分のピクセルのR,G,Bの色成分の濃度データが変更される(S16)。これにより、スクリーンバッファ72Bには、図8に示すように、メインキャラクタAをシルエットで表示するとともに、当該メインキャラクタAの部分を透過した二次元画像が作成される。
【0082】
なお、図8は、メインキャラクタAによって隠れる敵キャラクタB、ビルE3及び背景Fの部分の濃度を低下させた場合の例を示している。図8では、敵キャラクタBに点描を付し、ビルE3に右斜線を付し、これらの背景Fに左斜線を付しているが、これらは敵キャラクタB、ビルE3及び背景Fに貼り付けられたテクスチャの色の濃度を表している。敵キャラクタBのメインキャラクタAによって隠れる部分の点描の各点を大きくすることにより敵キャラクタBに貼り付けられたテクスチャの色の濃度がメインキャラクタAによって隠れていない部分の濃度よりも暗くなっていることを示している。また、ビルE3及び背景FのメインキャラクタAによって隠れる部分の右斜線と左斜線の密度を上げることによってビルE3及び背景Fに貼り付けられたテクスチャの色の濃度がメインキャラクタAによって隠れていない部分の濃度よりも暗くなっていることを示している。
【0083】
上記のように、シルエット透過処理によれば、メインキャラクタAの部分は、当該メインキャラクタAがなければ見えることになる後方の敵キャラクタB、ビルE3及び背景Fが黒っぽく表示されたり、白っぽく表示されたりするので、これによりメインキャラクタAの輪郭がシルエットとして表示されることになる。
【0084】
従って、シルエット透過処理では、メインキャラクタAによって隠れる部分に当該メインキャラクタAの形状や色、模様が半透明で表示されることがないので、従来の透過処理に比して、メインキャラクタAによって隠れる部分が見易くなる利点がある。また、メインキャラクタAの存在はシルエットによって表示されるので、遊技者がどのようにメインキャラクタAを移動させても当該メインキャラクタAを見失うことがない。
【0085】
また、従来の透過処理では、メインキャラクタAに対してポリゴン単位のソート処理、光源処理、テクスチャ処理及びアルファブレンディング処理を必要とするが、本発明に係るシルエット透過処理では、ポリゴン単位のソート処理、光源処理及びテクスチャ処理は不要となり、メインキャラクタAによって隠れる部分の濃度を変更するだけであるので、描画処理の演算負荷を低減することができる。
【0086】
なお、上記実施形態では、本発明に係るシルエット透過表示方法を適用したゲーム装置について説明したが、本発明に係るシルエット透過表示方法はゲーム装置以外の透視投影法を用いた三次元アニメーションの表示装置にも適用することができる。この場合は、図3に示すシルエット透過処理のフローチャートを実行するプログラムをコンピュータ読み取り可能に記録したCD−ROMなどの記録媒体から当該プログラムをコンピュータに読み込んだり、電気通信回線を通じて当該プログラムをコンピュータに転送したりした後、そのプログラムを実行させることにより容易に本発明に係るシルエット透過表示装置を実現することができる。
【0087】
また、ゲーム内容も対戦型ゲームに限られるものではなく、透視投影法を用いた三次元アニメーションによる表示方法を用いたゲーム全般に適用することができる。
【0088】
また、上記実施形態では、仮想カメラCとメインキャラクタAとの距離Dが所定の距離Dr以下に近接した場合は、メインキャラクタAに対してシルエット透過処理のみを行うようにしたが、上述した従来の透過処理と本発明に係るシルエット透過処理とを使い分けるようにしてもよい。
【0089】
例えば仮想カメラCのスクリーン内におけるメインキャラクタAのサイズを特大、大、標準の3段階に分類し、「特大」の場合はシルエット透過処理を行い、「大」の場合は従来の透過処理を行い、「標準」の場合は通常の描画処理を行うようにしてもよい。仮想カメラCとメインキャラクタAとの距離Dで言えば、仮想カメラCが標準の視点位置(距離Dが第1の閾値Dr1以上)であれば、通常の描画処理を行い、仮想カメラCとメインキャラクタAとの距離Dが第1の閾値Dr1と第2の閾値Dr2(<Dr1)との間であれば、従来の透過処理を行い、仮想カメラCとメインキャラクタAとの距離Dが第2の閾値Dr2以下であれば、シルエット透過処理を行うようにしてもよい。
【符号の説明】
【0090】
1 ゲーム装置
2 CPU
3 描画データ生成プロセッサ
4 RAM
5 ROM
6 描画処理プロセッサ
7 VRAM
71 テクスチャバッファ
72,72A,72B スクリーンバッファ
8 D/Aコンバータ
9 音声処理プロセッサ
10 アンプ
11 I/F
12 CD−ROMドライバ
13 バス
14 モニタ
15 スピーカ
16 操作コントローラ
17 CD−ROM
A メインキャラクタ
B 敵キャラクタ
C 仮想カメラ
E1,E2,E3,M 他の物体
F 背景
G 二次元画像
【特許請求の範囲】
【請求項1】
コンピュータを、三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示装置として機能させるプログラムであって、
前記コンピュータを、
前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別手段と、
前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成手段と、
前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成手段で作成された三次元アニメーションを前記モニタに表示させる表示制御手段と、
して機能させるためのプログラム。
【請求項2】
前記所定の距離は、前記視点から仮想カメラによって前記第1の物体を撮影した場合に撮影画面内における前記第1の物体のサイズが所定のサイズ以上となる距離である、請求項1に記載のプログラム。
【請求項3】
前記動画像作成手段は、
前記第1の物体を除いた透視投影法による各コマの二次元画像を作成する画像作成手段と、
前記モニタの表示画面上における前記第1の物体の表示位置を算出する算出手段と、
前記画像作成手段によって作成された二次元画像の、前記算出手段で算出された前記モニタの表示画面内の前記第1の物体の表示位置に含まれる画素に対して、各画素の濃度を所定の割合で変化させる濃度変更手段と、
を含むことを特徴とする請求項1又は2に記載のプログラム。
【請求項4】
前記動画像作成手段は、
前記画像作成手段で作成された各コマの二次元画像の色数を低減して保存する記憶手段と、
前記算出手段で算出された前記第1の物体の表示位置を前記記憶手段に保存された各コマの二次元画像における表示位置に変換する変換手段と、を更に備え、
前記濃度変更手段は、前記記憶手段に保存された各コマの二次元画像を用いて、濃度変更処理を行うことを特徴とする請求項3に記載のプログラム。
【請求項5】
請求項1乃至4のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項6】
三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示方法であって、
前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別工程と、
前記判別工程により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成工程と、
前記判別工程により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成工程によって作成された三次元アニメーションを前記モニタに表示させる表示制御工程と、
からなることを特徴とする三次元アニメーション表示方法。
【請求項7】
前記動画像作成工程は、
前記第1の物体を除いた透視投影法による各コマの二次元画像を作成する第1の工程と、
前記モニタの表示画面上における前記第1の物体の表示位置を算出する第2の工程と、
前記第1の工程によって作成された二次元動画像の、前記第2の工程で算出された前記モニタの表示画面内の前記第1の物体の表示位置に含まれる画素に対して、各画素の濃度を所定の割合で変化させる第3の工程と、
からなることを特徴とする請求項6に記載の三次元アニメーション表示方法。
【請求項8】
三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示装置であって、
前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別手段と、
前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成手段と、
前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成手段で作成された三次元アニメーションを前記モニタに表示させる表示制御手段と、
を備えたことを特徴とする三次元アニメーション表示装置。
【請求項9】
遊技者によって操作される操作手段と、
画像を表示する表示手段と、
前記遊技者によって動作が制御されるメインキャラクタの三次元画像データを記憶する第1の記憶手段と、
前記メインキャラクタが配置される仮想的な空間を構成する背景その他の物体の三次元画像データを記憶する第2の記憶手段と、
前記操作手段から操作情報が入力されると、所定のゲームプログラムに従ってその操作情報に基づき前記メインキャラクタ及び背景その他の物体を動作させる第1の動作制御手段と、
前記第1の動作制御手段によって決定される動作内容に基づき、ゲーム進行を示す三次元アニメーション画像として、前記第1,第2の記憶手段に記憶された三次元画像のデータを用いて前記メインキャラクタの後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成する第1の画像作成手段と、
前記第1の画像作成手段で作成された三次元アニメーションを前記表示手段に表示する表示制御手段と、
を備えたゲーム装置において、
前記操作手段から前記メインキャラクタを移動させる操作情報が入力されると、その移動情報に基づいて前記仮想空間内の前記メインキャラクタ及び前記視点の移動位置を演算する演算手段と、
前記演算手段により演算された前記メインキャラクタ及び前記視点の移動位置に基づいて、前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したか否かを判別する判別手段と、
前記判別手段により前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したと判別されると、前記メインキャラクタによって隠れる背景その他の物体の濃度を、当該メインキャラクタが存在しないとした場合の濃度と異ならせることにより、当該メインキャラクタをシルエットで表示した二次元画像からなる三次元アニメーションを作成する第2の画像作成手段と、を備え、
前記表示制御手段は、前記判別手段により前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したと判別されると、前記第1の画像作成手段によって作成される三次元アニメーションに代えて、前記第2の画像作成手段によって作成される三次元アニメーションを前記表示手段に表示させることを特徴とする、ゲーム装置。
【請求項10】
前記第2の動画像作成手段は、
前記第1の動画像作成手段で作成された各コマの二次元画像の色数を低減して保存する第3の記憶手段と、
前記算出手段で算出された前記メインキャラクタの表示位置を前記第3の記憶手段に保存された各コマの二次元画像における表示位置に変換する変換手段と、を更に備え、
前記濃度変更手段は、前記第3の記憶手段に保存された各コマの二次元画像を用いて、濃度変更処理を行うことを特徴とする、請求項9に記載のゲーム装置。
【請求項1】
コンピュータを、三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示装置として機能させるプログラムであって、
前記コンピュータを、
前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別手段と、
前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成手段と、
前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成手段で作成された三次元アニメーションを前記モニタに表示させる表示制御手段と、
して機能させるためのプログラム。
【請求項2】
前記所定の距離は、前記視点から仮想カメラによって前記第1の物体を撮影した場合に撮影画面内における前記第1の物体のサイズが所定のサイズ以上となる距離である、請求項1に記載のプログラム。
【請求項3】
前記動画像作成手段は、
前記第1の物体を除いた透視投影法による各コマの二次元画像を作成する画像作成手段と、
前記モニタの表示画面上における前記第1の物体の表示位置を算出する算出手段と、
前記画像作成手段によって作成された二次元画像の、前記算出手段で算出された前記モニタの表示画面内の前記第1の物体の表示位置に含まれる画素に対して、各画素の濃度を所定の割合で変化させる濃度変更手段と、
を含むことを特徴とする請求項1又は2に記載のプログラム。
【請求項4】
前記動画像作成手段は、
前記画像作成手段で作成された各コマの二次元画像の色数を低減して保存する記憶手段と、
前記算出手段で算出された前記第1の物体の表示位置を前記記憶手段に保存された各コマの二次元画像における表示位置に変換する変換手段と、を更に備え、
前記濃度変更手段は、前記記憶手段に保存された各コマの二次元画像を用いて、濃度変更処理を行うことを特徴とする請求項3に記載のプログラム。
【請求項5】
請求項1乃至4のいずれかに記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項6】
三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示方法であって、
前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別工程と、
前記判別工程により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成工程と、
前記判別工程により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成工程によって作成された三次元アニメーションを前記モニタに表示させる表示制御工程と、
からなることを特徴とする三次元アニメーション表示方法。
【請求項7】
前記動画像作成工程は、
前記第1の物体を除いた透視投影法による各コマの二次元画像を作成する第1の工程と、
前記モニタの表示画面上における前記第1の物体の表示位置を算出する第2の工程と、
前記第1の工程によって作成された二次元動画像の、前記第2の工程で算出された前記モニタの表示画面内の前記第1の物体の表示位置に含まれる画素に対して、各画素の濃度を所定の割合で変化させる第3の工程と、
からなることを特徴とする請求項6に記載の三次元アニメーション表示方法。
【請求項8】
三次元の仮想空間内に配置された第1の物体を当該第1の物体の後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成し、その三次元アニメーションをモニタに表示させる三次元アニメーション表示装置であって、
前記第1の物体の移動に応じて前記視点と当該第1の物体との距離が所定の距離以下に近接したか否かを判別する判別手段と、
前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記第1の物体によって隠れる当該第1の物体の後方にある背景その他の第2の物体の濃度を、当該第1の物体が存在しないとした場合の濃度と異ならせることにより、当該第1の物体をシルエットで表示した二次元画像からなる三次元アニメーションを作成する動画像作成手段と、
前記判別手段により前記視点と前記第1の物体との距離が所定の距離以下に近接したと判別されると、前記動画像作成手段で作成された三次元アニメーションを前記モニタに表示させる表示制御手段と、
を備えたことを特徴とする三次元アニメーション表示装置。
【請求項9】
遊技者によって操作される操作手段と、
画像を表示する表示手段と、
前記遊技者によって動作が制御されるメインキャラクタの三次元画像データを記憶する第1の記憶手段と、
前記メインキャラクタが配置される仮想的な空間を構成する背景その他の物体の三次元画像データを記憶する第2の記憶手段と、
前記操作手段から操作情報が入力されると、所定のゲームプログラムに従ってその操作情報に基づき前記メインキャラクタ及び背景その他の物体を動作させる第1の動作制御手段と、
前記第1の動作制御手段によって決定される動作内容に基づき、ゲーム進行を示す三次元アニメーション画像として、前記第1,第2の記憶手段に記憶された三次元画像のデータを用いて前記メインキャラクタの後方に設定された所定の視点から透視投影して得られる二次元画像からなる三次元アニメーションを作成する第1の画像作成手段と、
前記第1の画像作成手段で作成された三次元アニメーションを前記表示手段に表示する表示制御手段と、
を備えたゲーム装置において、
前記操作手段から前記メインキャラクタを移動させる操作情報が入力されると、その移動情報に基づいて前記仮想空間内の前記メインキャラクタ及び前記視点の移動位置を演算する演算手段と、
前記演算手段により演算された前記メインキャラクタ及び前記視点の移動位置に基づいて、前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したか否かを判別する判別手段と、
前記判別手段により前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したと判別されると、前記メインキャラクタによって隠れる背景その他の物体の濃度を、当該メインキャラクタが存在しないとした場合の濃度と異ならせることにより、当該メインキャラクタをシルエットで表示した二次元画像からなる三次元アニメーションを作成する第2の画像作成手段と、を備え、
前記表示制御手段は、前記判別手段により前記視点と前記メインキャラクタとの距離が所定の距離以下に近接したと判別されると、前記第1の画像作成手段によって作成される三次元アニメーションに代えて、前記第2の画像作成手段によって作成される三次元アニメーションを前記表示手段に表示させることを特徴とする、ゲーム装置。
【請求項10】
前記第2の動画像作成手段は、
前記第1の動画像作成手段で作成された各コマの二次元画像の色数を低減して保存する第3の記憶手段と、
前記算出手段で算出された前記メインキャラクタの表示位置を前記第3の記憶手段に保存された各コマの二次元画像における表示位置に変換する変換手段と、を更に備え、
前記濃度変更手段は、前記第3の記憶手段に保存された各コマの二次元画像を用いて、濃度変更処理を行うことを特徴とする、請求項9に記載のゲーム装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2011−103142(P2011−103142A)
【公開日】平成23年5月26日(2011.5.26)
【国際特許分類】
【出願番号】特願2011−30320(P2011−30320)
【出願日】平成23年2月16日(2011.2.16)
【分割の表示】特願2005−95508(P2005−95508)の分割
【原出願日】平成17年3月29日(2005.3.29)
【出願人】(000129149)株式会社カプコン (192)
【Fターム(参考)】
【公開日】平成23年5月26日(2011.5.26)
【国際特許分類】
【出願日】平成23年2月16日(2011.2.16)
【分割の表示】特願2005−95508(P2005−95508)の分割
【原出願日】平成17年3月29日(2005.3.29)
【出願人】(000129149)株式会社カプコン (192)
【Fターム(参考)】
[ Back to top ]