図面 (/)
課題
解決手段
ゲーム装置は、ポリゴンによって構成されるオブジェクトを少なくとも1つゲーム空間に配置する。ゲーム空間に配置されたオブジェクトのうちの少なくとも1つのオブジェクトが対象オブジェクト81として選出される。また、ゲーム空間内に基準位置が設定される。ゲーム装置は、対象オブジェクトを構成するポリゴンについて、基準位置を基準とした基準領域83内に存在するポリゴンまたは当該ポリゴンの頂点を特定する。さらに、対象オブジェクトのポリゴンまたはポリゴンの頂点に透明度を設定する際、ポリゴン特定手段によって特定されているか否かに応じて異なる透明度を設定する。対象オブジェクトは設定された透明度に基づいて描画され、ゲーム空間の画像が表示装置に表示される。
概要
背景
概要
透明度を用いた簡易な方法で様々なゲーム画像の生成を可能とする。ゲーム装置は、ポリゴンによって構成されるオブジェクトを少なくとも1つゲーム空間に配置する。ゲーム空間に配置されたオブジェクトのうちの少なくとも1つのオブジェクトが対象オブジェクト81として選出される。また、ゲーム空間内に基準位置が設定される。ゲーム装置は、対象オブジェクトを構成するポリゴンについて、基準位置を基準とした基準領域83内に存在するポリゴンまたは当該ポリゴンの頂点を特定する。さらに、対象オブジェクトのポリゴンまたはポリゴンの頂点に透明度を設定する際、ポリゴン特定手段によって特定されているか否かに応じて異なる透明度を設定する。対象オブジェクトは設定された透明度に基づいて描画され、ゲーム空間の画像が表示装置に表示される。
目的
本発明の目的は、透明度を用いた簡易な方法で様々なゲーム画像の生成を可能とするゲーム装置およびゲームプログラムを提供する
効果
実績
- 技術文献被引用数
- 0件
- 牽制数
- 0件
この技術が所属する分野
(分野番号表示ON)※整理標準化データをもとに当社作成
請求項1
3次元のゲーム空間の画像を表示装置に表示させるゲーム装置であって、ポリゴンによって構成されるオブジェクトを少なくとも1つ前記ゲーム空間に配置するオブジェクト配置手段、前記ゲーム空間に配置されたオブジェクトのうちの少なくとも1つのオブジェクトを対象オブジェクトとして選出するオブジェクト選出手段、前記ゲーム空間内に基準位置を設定する基準位置設定手段、前記対象オブジェクトを構成するポリゴンについて、前記基準位置を基準とした基準領域内に存在するポリゴンまたは当該ポリゴンの頂点を特定する特定手段、前記対象オブジェクトのポリゴンまたはポリゴンの頂点に透明度を設定する際、前記特定手段によって特定されているか否かに応じて異なる透明度を設定する透明度設定手段、および前記透明度設定手段によって設定された透明度に基づいて前記対象オブジェクトの描画を行い、前記ゲーム空間の画像を前記表示装置に表示させる表示制御手段を備えるゲーム装置。
請求項2
前記オブジェクト配置手段は、前記ゲーム空間内に基準オブジェクトを配置し、前記基準位置設定手段は、前記基準オブジェクトの前記ゲーム空間における位置を前記基準位置に設定する、請求項1に記載のゲーム装置。
請求項3
前記透明度設定手段は、前記特定手段によって特定されないポリゴンまたはポリゴンの頂点が、前記特定手段によって特定されるポリゴンまたはポリゴンの頂点よりも透明になるように透明度を設定する、請求項1に記載のゲーム装置。
請求項4
請求項5
前記透明度設定手段は、前記ポリゴンまたはポリゴンの頂点がとるべき透明度の値を示す目標値を、前記特定手段によって特定されているか否かに応じて異なる値になるように設定し、当該ポリゴンまたはポリゴンの頂点の透明度の値を、当該目標値になるまで所定時間間隔毎に現時点での透明度から所定量を増減することを特徴とする、請求項4に記載のゲーム装置。
請求項6
前記所定の条件は、ゲーム空間に登場するゲームオブジェクトの動作に関する条件である、請求項4に記載のゲーム装置。
請求項7
3次元のゲーム空間の画像を表示装置に表示させるゲーム装置のコンピュータに実行させるためのゲームプログラムであって、前記コンピュータを、ポリゴンによって構成されるオブジェクトを少なくとも1つ前記ゲーム空間に配置するオブジェクト配置手段、前記ゲーム空間に配置されたオブジェクトのうちの少なくとも1つのオブジェクトを対象オブジェクトとして選出するオブジェクト選出手段、前記ゲーム空間内に基準位置を設定する基準位置設定手段、前記対象オブジェクトを構成するポリゴンについて、前記基準位置を基準とした基準領域内に存在するポリゴンまたは当該ポリゴンの頂点を特定する特定手段、前記対象オブジェクトのポリゴンまたはポリゴンの頂点に透明度を設定する際、前記特定手段によって特定されているか否かに応じて異なる透明度を設定する透明度設定手段、および前記透明度設定手段によって設定された透明度に基づいて前記対象オブジェクトの描画を行い、前記ゲーム空間の画像を前記表示装置に表示させる表示制御手段として機能させる、コンピュータ読み取り可能なゲームプログラム。
技術分野
背景技術
0002
従来から、仮想的な3次元のゲーム空間を所定の視点から見たゲーム画像を生成して表示するゲーム装置が知られている。例えば、特開2001−167291号公報(特許文献1)には、第1のオブジェクトとほぼ同一形状の第2オブジェクトの透明度を可変に制御する画像生成システムが提示されている。この画像生成システムにおいては、例えば車のボディーのテクスチャを第1のオブジェクトにマッピングし、車のボディーの汚れの表現するためのテクスチャを第2のオブジェクトにマッピングする。そして、第2オブジェクトの透明度を可変に制御することによって、車のボディーに汚れがついた様子をリアルに表現する。
先行技術
0003
特開2001−167291号公報
発明が解決しようとする課題
0004
上記の画像生成システムは、オブジェクト単位(またはパーツオブジェクト単位)で透明度を変化させる技術である。従って、透明度を変化させるべき単位毎に、第1オブジェクトおよび第2オブジェクトという2つのオブジェクトを作成しなければならない。例えば、車のボディーの一部の円形部分に汚れがついた状態を表現する場合、上記の画像生成システムでは、当該円形部分のオブジェクトを、他の部分とは異なるオブジェクトとして設定しなければならない。つまり、上記の画像生成システムでは、透明度に変化を与える制御をより細かい単位で行おうとすれば、より多くのオブジェクトを用意しなければならない。さらに、当該円形部分の大きさを変化させようとすれば、その大きさに応じて複数種類のオブジェクトを用意しなければならない。以上より、従来の画像生成システムでは、透明度に変化を与える制御を行う領域の位置や大きさに応じて、多数のオブジェクトを用意しなければならなかった。従って、多数のオブジェクトを用いることによって、オブジェクトのために要するデータ量が増大するとともに、描画処理の負担が大きくなってしまうという問題があった。
0005
それ故、本発明の目的は、透明度を用いた簡易な方法で様々なゲーム画像の生成を可能とするゲーム装置およびゲームプログラムを提供することである。
課題を解決するための手段
0006
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、この欄における括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明を何ら限定するものではない。
本発明の第1の発明は、3次元のゲーム空間の画像を表示装置(テレビジョン受像機2)に表示させるゲーム装置(3)である。ゲーム装置は、オブジェクト配置手段(S11(ステップ11の略。以下同様。)を実行するCPU31。以下、単にステップ番号のみを示す。)、オブジェクト選出手段(S14)、基準位置設定手段(S10)、特定手段(S15)、透明度設定手段(S16およびS17)、および表示制御手段(S19)を備えている。オブジェクト配置手段は、ポリゴンによって構成されるオブジェクト(地面オブジェクト80、菌糸オブジェクト81、および胞子オブジェクト82)を少なくとも1つゲーム空間に配置する。オブジェクト選出手段は、ゲーム空間に配置されたオブジェクトのうちの少なくとも1つのオブジェクトを対象オブジェクト(菌糸オブジェクト81)として選出する。基準位置設定手段は、ゲーム空間内に基準位置を設定する。特定手段は、対象オブジェクトを構成するポリゴンについて、基準位置を基準とした基準領域内に存在するポリゴンまたは当該ポリゴンの頂点を特定する。透明度設定手段は、対象オブジェクトのポリゴンまたはポリゴンの頂点に透明度を設定する際、特定手段によって特定されているか否かに応じて異なる透明度を設定する。表示制御手段は、透明度設定手段によって設定された透明度に基づいて対象オブジェクトの描画を行い、ゲーム空間の画像を表示装置に表示させる。
0007
なお、第2の発明においては、オブジェクト配置手段は、ゲーム空間内に基準オブジェクト(胞子オブジェクト82)を配置してもよい。このとき、基準位置設定手段は、基準オブジェクトのゲーム空間における位置を基準位置に設定する。
0008
また、第3の発明においては、透明度設定手段は、特定手段によって特定されないポリゴンまたはポリゴンの頂点が、特定手段によって特定されるポリゴンまたはポリゴンの頂点よりも透明になるように透明度を設定してもよい。
0010
また、第5の発明においては、透明度設定手段は、ポリゴンまたはポリゴンの頂点がとるべき透明度の値を示す目標値(α=0またはα=255)を、特定手段によって特定されているか否かに応じて異なる値になるように設定し、当該ポリゴンまたはポリゴンの頂点の透明度の値を、当該第1目標値になるまで所定時間間隔毎に現時点での透明度から所定量を増減するようにしてもよい。
なお、「透明度を減少する」とは、ポリゴンがより不透明に表示されるように透明度の値を変化させることであり、実施形態で言えば、αの値を増加させることである。また、「透明度を増加する」とは、ポリゴンがより透明に表示されるように透明度の値を変化させることであり、実施形態で言えば、αの値を減少させることである。
0011
また、第6の発明においては、所定の条件は、ゲーム空間に登場するゲームオブジェクト(プレイヤオブジェクト)の動作に関する条件であってもよい。
0012
なお、上記の発明は、上記ゲーム装置のコンピュータにおいて実行されることによってゲーム装置に上記の機能を実現させるゲームプログラムとして提供されてもよい。
発明の効果
0013
第1の発明によれば、対象オブジェクトのポリゴンの透明度に影響を与える基準領域を設定することによって、対象オブジェクト自体を変更することなく様々な形態で対象オブジェクトを表示することができる。従って、本発明によれば、複数種類のオブジェクトを用意する必要がないので、オブジェクトのデータ量を低減することができるとともに、ゲーム画像の生成処理を簡易にすることができる。つまり、透明度を用いた簡易な方法で様々なバリエーションのゲーム画像を生成することができる。
0014
第2の発明によれば、基準オブジェクトが対象オブジェクトに影響を与える様子を簡易な方法で表現することができる。
0015
第3の発明によれば、基準領域の内側がその外側よりもはっきり見えるような表示を行うことができる。例えば、対象オブジェクトのうちの基準領域内に含まれる部分のみを表示し、その他の部分は表示されないようにすることができる。
0016
第4の発明によれば、表示される対象オブジェクトの形状や大きさが時間的に変化する様子を表現することができる。
0017
第5の発明によれば、基準領域の大きさが変化した場合(基準領域が消滅または発生する場合を含む)や、基準領域が移動した場合に、対象オブジェクトのうちの基準領域に含まれなくなった部分が次第に透明になっていくように表示される。また、対象オブジェクトのうちの基準領域に含まれることとなった部分が次第に浮き上がってくるように表示される。従って、対象オブジェクトが次第に変化する様子をリアルに表現することができる。
0018
第6の発明によれば、対象オブジェクトの表示形態(表示される大きさや透明度等)を他のゲームオブジェクトの動作に関連して変化させることができる。
図面の簡単な説明
0019
ゲームシステム1の外観図
ゲームシステム1の機能ブロック図
本実施形態におけるゲーム画像の一例を示す図
図3に示す菌糸オブジェクトを示す図
基準領域の範囲と透明度との関係を示す図
図5(b)に示す場合の画面表示例を示す図
ゲーム装置3において実行されるゲーム処理の流れを示すフローチャート
実施例
0020
以下、本発明の一実施形態に係るゲーム装置およびゲームプログラム、並びに当該ゲーム装置を含むゲームシステムについて説明する。図1は、当該ゲームシステム1の外観図である。なお、本実施形態では、本発明に係るゲーム装置として据置型ゲーム装置を一例に上げて説明するが、ゲームシステムはこれに限定されるものではなく、例えば携帯型ゲーム装置、アーケードゲーム装置、携帯端末、携帯電話またはパーソナルコンピュータなどのように、ゲームプログラムを実行するコンピュータを搭載する機器に適用することができる。
0021
図1において、ゲームシステム1は、据置型ゲーム装置(以下、単にゲーム装置と記載する)3と、当該ゲーム装置3に接続コードを介して接続される表示装置の一例であるテレビジョン受像機(以下、テレビと記載する)2とを含む。ゲーム装置3には、プレイヤによって操作可能な複数の操作スイッチを有するコントローラ6が接続される。また、ゲーム装置3には、本発明に係るゲームプログラムを記憶した情報記憶媒体の一例の光ディスク4が着脱自在に装着される。さらに、ゲーム装置3には、ゲームのセーブデータ等を記憶するフラッシュメモリ等を搭載するカートリッジ5が必要に応じて着脱自在に装着される。ゲーム装置3は、光ディスク4に記憶されたゲームプログラムを実行することによって得られるゲーム画像をテレビ2に表示する。さらに、ゲーム装置3は、カートリッジ5に記憶されたセーブデータを用いて、過去に実行されたゲームの続きを実行したり、過去に実行されたゲーム状態を再現して、ゲーム画像をテレビ2に表示することもできる。そして、ゲーム装置3のプレイヤは、テレビ2に表示されたゲーム画像を見ながらコントローラ6を操作することによってゲームを楽しむことができる。
0022
コントローラ6は、上述したように接続コードを介してゲーム装置3に着脱自在に接続される。コントローラ6は、テレビ2に表示されるゲーム空間に登場するプレイヤオブジェクト(プレイヤの操作対象であるオブジェクト(キャラクタ))を主に操作するための操作手段であり、複数の操作スイッチとして、操作ボタン、キー、およびスティック等の入力部を備えている。具体的には、コントローラ6には、プレイヤによって把持されるグリップ部が形成される。また、コントローラ6は、プレイヤの左手の親指等によって操作可能なメインスティック6aおよび十字キー6bと、右手の親指等によって操作可能なCスティック6cおよびAボタン6d等を含む。なお、コントローラ6は、上記ボタンの他、Bボタン、Xボタン、Yボタン、およびスタート−ポーズボタンや、プレイヤの右手の人差し指等によって操作可能なRボタン、プレイヤの左手の人差し指等によって操作可能なLボタンを含む。また、ゲームシステム1は、ゲーム装置3に複数のコントローラ6を接続することによって、複数のプレイヤが同時にゲームをプレイすることができる。
0023
次に、図2を参照して、本発明に係るゲーム装置3の構成について説明する。図2は、ゲームシステム1の機能ブロック図である。図2において、ゲーム装置3は、各種プログラムを実行するCPU(セントラルプロセッシングユニット)31を備える。CPU31は、図示しないブートROMに記憶された起動プログラムを実行し、ワークメモリ32等のメモリの初期化等を行った後、光ディスク4に記憶されているゲームプログラムをワークメモリ32に一旦読み込んだ後に当該ゲームプログラムを実行し、そのゲームプログラムに応じたゲーム処理を行うものである。CPU31には、ワークメモリ32、ビデオRAM(VRAM)33、外部メモリインターフェース(I/F)34、コントローラインターフェース(I/F)35、GPU(Graphics ProceSing Unit)36、オーディオインターフェース(I/F)37、および光ディスクドライブ38がバスを介して接続される。
0024
ワークメモリ32は、CPU31で使用される記憶領域であって、CPU31の処理に必要なゲームプログラム等を適宜記憶する。例えば、ワークメモリ32は、CPU31によって光ディスク4から読み出されたゲームプログラムや各種データ等を記憶する。このワークメモリ32に記憶されたゲームプログラムや各種データ等がCPU31によって実行される。VRAM33は、テレビ2にゲーム画像を表示するためのゲーム画像データを格納する。外部メモリI/F34は、図示しないコネクタにカートリッジ5を嵌合させることによってゲーム装置3とカートリッジ5とを通信可能に接続する。CPU31は、カートリッジ5に設けられたバックアップメモリに外部メモリI/F34を介してアクセスする。コントローラI/F35は、図示しないコネクタによって外部機器とゲーム装置3とを通信可能に接続する。例えば、コントローラ6は、接続コードを介して当該コネクタと嵌合し、コントローラI/F35を介してゲーム装置3と接続される。GPU36は、CPU31からの指示に応じて、例えば、3Dグラフィックスの表示に必要なベクトル演算やレンダリング処理等の処理を行う半導体チップで構成され、当該GPU36によってレンダリングされたゲーム画像はテレビ2に表示される。また、ゲーム処理において再生されるゲーム音は、オーディオI/F38を介してスピーカ7から出力される。スピーカ7は、典型的にはテレビ2に内蔵されている。光ディスクドライブ37は、CPU31からの指示に応じて、光ディスク4に記憶されたゲームプログラム、画像データ、サウンドデータなどの各種のデータを読み出す。
0025
以下、光ディスク4に格納されたゲームプログラムによってゲーム装置3において実行されるゲーム処理について説明する。まず、本実施形態におけるゲーム処理の概要を説明する。図3は、本実施形態におけるゲーム画像の一例を示す図である。本実施形態では、3次元のゲーム空間がゲーム装置3において構築され、当該ゲーム空間を所定の視点から見た画像がテレビ2の画面に表示される。なお、以下では、ゲーム空間内における地面上の胞子(図3に示す胞子オブジェクト82)から菌糸の根(図3に示す菌糸オブジェクト81)が伸びている様子を表現する場合を例にとって説明する。すなわち、図3においては、地面オブジェクト80、菌糸を模した菌糸オブジェクト81、および胞子を模した胞子オブジェクト82がゲーム空間に配置される。菌糸オブジェクト81は、地面オブジェクトの上(視点に近い側)に配置される。本発明に係るゲーム装置は、単一の菌糸オブジェクトを用いて多様な表示を可能とするものである。なお、図3には図示していないが、ゲーム空間には上記オブジェクトの他にもプレイヤオブジェクト等が登場してもよい。
0026
図4は、図3に示す菌糸オブジェクトを示す図である。図4に示すように、菌糸オブジェクト81は複数のポリゴンで構成される。菌糸オブジェクト81を構成する各ポリゴンには、菌糸を表現するためのテクスチャがマッピングされる。また、当該各ポリゴンの頂点には透明度が設定される。ポリゴンの各部分の透明度は、頂点に設定された透明度から決定される。ゲーム画像を生成する処理において、表示色は、マッピングされたテクスチャの色とポリゴンの頂点の透明度とに基づいて決定されることとなる。なお、ここでは、透明度をαで表す。具体的には、透明度αは、0≦α≦255の範囲の値をとり得る値であり、その値が小さいほど透明度が高いことを表す。すなわち、α=0であれば透明であり、α=255であれば不透明である。例えば、ある部分における菌糸オブジェクト81の透明度がα=0の場合、当該部分の菌糸オブジェクト81は表示されない。つまり、菌糸オブジェクトは透明なので画面上では見えず、画面上では地面のみが表示される。一方、ある部分における菌糸オブジェクト81の透明度がα=255の場合、当該部分の菌糸オブジェクト81は画面に表示される。また、透明度が0<α<255の場合には、半透明で表示される。
0027
また、本実施形態では、菌糸オブジェクト81を構成するポリゴンの頂点に設定される透明度は、基準位置によって決められる基準領域に基づいて決定される。ここで、基準位置は、ゲーム空間内において設定される所定の位置である。本実施形態では、基準位置は、胞子オブジェクト82が配置される位置である。また、基準領域は、基準位置によって決められる領域であり、本実施形態では、基準位置から所定距離内の範囲に含まれる領域である。本実施形態では、基準領域内に含まれる頂点については、透明度をα=255に設定する。また、基準領域内に含まれない頂点については、透明度をα=0に設定する。従って、基準領域内に含まれる領域では菌糸オブジェクト81は表示され、基準領域外では菌糸オブジェクト81は表示されない(透明なので見えない)。以上のように、頂点が基準領域内に含まれるか否かに応じて異なる透明度を設定すれば、基準位置および基準領域の範囲を任意に指定することによって、菌糸オブジェクトの一部を様々に見せることができ、菌糸オブジェクト81自体を変更することなしに様々な表示を行うことができる。例えば、図4に示す菌糸オブジェクト81の中央付近のみを表示させたり、右側のみを表示させたりすることができる。
0028
なお、本実施形態では、胞子オブジェクト82の位置を基準位置としたが、特別なオブジェクトを配置せずにゲーム空間内の所定の位置を基準位置に指定するようにしてもよい。また、本実施形態では、基準領域を基準位置から所定距離内の領域としたが、領域の形状は円形以外であってもよく、種々の形状を取ることができることは言うまでもない。
0029
図5は、基準領域の範囲と透明度との関係を示す図である。ここで、図5では、白丸で示すポリゴンの頂点は、透明度α=0に設定された頂点を表し、黒丸で示すポリゴンの頂点は、透明度α=255に設定された頂点を表す。なお、図5では、基準位置は菌糸オブジェクトの中心に設定されている。図5(a)は、基準領域83が菌糸オブジェクト81の全体を含む場合を示す図である。この場合、菌糸オブジェクト81を構成する各ポリゴンの頂点の透明度は、すべてα=255に設定される。従って、この場合、菌糸オブジェクト81の全体が画面上に表示される。上述した図3は、図5(a)の場合における菌糸オブジェクト81の表示例である。一方、図5(b)は、基準領域83が菌糸オブジェクト81の一部を含む場合を示す図である。この場合、菌糸オブジェクト81の中心付近のみが基準領域83に含まれている。すなわち、菌糸オブジェクト81を構成する各ポリゴンの頂点のうち、基準領域83に含まれる頂点のみがα=255に設定される。また、菌糸オブジェクト81を構成する各ポリゴンの頂点のうち、基準領域83外に位置する頂点はα=0に設定される。図6は、図5(b)に示す場合の画面表示例を示す図である。図5(b)の場合、図6に示すように、菌糸オブジェクト81の中心付近のみが表示されることとなる。図6に示す菌糸オブジェクト81は、図3に示す場合と比べて小さくなっていることがわかる。
0030
以上のように、本実施形態によれば、菌糸オブジェクトを予め配置しておき、基準位置および基準領域を適宜指定することによって、様々な形状や大きさで菌糸オブジェクトを表示させることができる。なお、本実施形態では、ゲームの進行に応じて基準領域の大きさが変化するものとする。具体的には、プレイヤオブジェクトが胞子オブジェクト82を攻撃すると、ゲーム装置は基準領域を小さくする。これによって、画面上において表示される菌糸が小さくなる。これによって、プレイヤオブジェクトの攻撃によって胞子の力が弱まった結果、菌糸が小さくなる様子を表現することができる。なお、他の実施形態では、ゲームの進行に応じて基準位置を変化させるようにしてもよい。例えば、胞子オブジェクトを移動するようにし、胞子オブジェクトの位置に合わせて基準位置を変化するようにしてもよい。また、時間経過とともに基準位置や基準領域を変更するようにしてもよい。
0031
なお、本実施形態においては、ゲーム装置3は、基準領域の範囲が変化した結果、新たに基準領域に含まれることとなった頂点については、基準領域に含まれた直後にα=255とはしないものとする。すなわち、ゲーム装置3は、当該頂点については、透明度の値がα=255になるまで1フレーム毎に、透明度αに所定値(例えば10)を加算する。これによって、αが次第に増加していくので、菌糸オブジェクトのうちの新たに基準領域に含まれることとなった部分は、次第に不透明さが増していくように表示される。従って、菌糸オブジェクトの当該部分が次第に浮かび上がってくるようなリアルな表示を行うことができる。また、上記と同様に、ゲーム装置3は、基準領域の範囲が変化した結果、新たに基準領域に含まれなくなった頂点については、透明度の値がα=0になるまで1フレーム毎に、透明度αから所定値(例えば10)を減算する。これによって、αが次第に減少していくので、菌糸オブジェクトのうちの新たに基準領域に含まれなくなった部分は、次第に透明さが増していくように表示される。従って、菌糸オブジェクトが次第に消え去っていくようなリアルな表示を行うことができる。
0032
次に、ゲーム装置3において実行されるゲーム処理の詳細を説明する。ゲーム装置3の電源が投入されると、ゲーム装置3のCPU31は、図示しないブートROMに記憶されている起動プログラムを実行し、ワークメモリ32等の各ユニットを初期化する。そして、光ディスク4に格納されたゲームプログラムが光ディスクドライブ37を介してワークメモリ32に読み込まれ、ワークメモリ32に読み込まれたゲームプログラム41の実行が開始される。図7で示されるフローチャートは、以上の処理動作以降の処理を示している。なお、このフローチャートに示す処理は、CPU31およびGPU36の協調動作として行われるが、例えばCPU31のみによって当該処理のほぼ全てを行わせることも可能である。
0033
図7は、本実施形態に係るゲーム装置3において実行されるゲーム処理の流れを示すフローチャートである。なお、このフローチャートにおいては、本発明に直接関連しないゲーム処理については記載を省略し、ゲーム空間の地面に菌糸および胞子を表示するための画面処理について主に説明を行う。図7に示すステップ10〜ステップ19(図では「ステップ」を単に「S」と略す。)の処理は、1フレーム分のゲーム画像を表示するための処理である。
0034
図7においては、まず、ステップ10において、基準位置が設定される。本実施形態では、基準位置は、ゲーム空間内における予め定められた所定の位置に設定される。なお、他の実施形態においては、時間経過とともに(例えば、フレーム毎に)基準位置を変化させてもよい。つまり、基準位置は時間的に変化してもよい。例えば、ゲーム装置3は、胞子オブジェクトと共に基準位置を移動して設定するようにしてもよい。
0035
ステップ10の次のステップ11において、ゲーム空間内に各オブジェクトが配置される。具体的には、予め定められた位置に地面オブジェクトおよび菌糸オブジェクトが配置されるとともに、基準位置に胞子オブジェクトが配置される。なお、これらのオブジェクトの他、プレイヤオブジェクト等が適宜配置されてもよい。また、胞子オブジェクトの移動制御をおこなって、胞子オブジェクトの現在位置を基準位置に設定するようにしてもよい。
0036
ステップ11の次のステップ12において、基準領域の範囲が決定される。基準領域の範囲は、基準位置から所定距離内の範囲である。本実施形態では、所定距離は、ゲーム進行に関するルールに従って決定される。具体的には、ステップ12において、プレイヤオブジェクトが胞子オブジェクトを攻撃したか否かが判定される。そして、プレイヤオブジェクトが胞子オブジェクトを攻撃した場合、予め定められた所定の長さだけ所定距離を短く変更する。一方、プレイヤオブジェクトが胞子オブジェクトを攻撃していない場合、予め定められた所定の長さだけ所定距離を長く変更する(すなわち、プレイヤオブジェクトが胞子オブジェクトを攻撃していない場合は、胞子オブジェクトの体力が時間とともに(または所定条件に応じて)回復して菌糸オブジェクトの大きさが次第に大きくなる)。なお、当該所定距離には初期値が予め定められており、ゲーム開始時には初期値の長さに設定される。以上のステップ10およびステップ12によって、基準領域の位置および大きさが決定されたこととなる。
0037
ステップ12の次のステップ13において、菌糸オブジェクトを構成するポリゴンの各頂点の透明度の初期値が設定される。ここでは、各頂点の初期値はα=255とする。つまり、初期状態では菌糸オブジェクトの全体が表示されるものとする。ステップ13の後、ステップ14の処理が行われる。
0038
ステップ14においては、菌糸オブジェクトのポリゴンの頂点のうちの1つの頂点(頂点X)が指定される。なお、頂点Xは、ステップ14〜18のループにおいてすでに指定された頂点が再度指定されないように指定される。このステップ14で指定された頂点について、ステップ15〜17において、透明度変化処理が行われる。透明度変化処理とは、基準領域に含まれるか否かに応じて異なる透明度を設定する処理である。なお、透明度変化処理の対象となるのは、菌糸オブジェクトを構成するポリゴンのみであり、ステップ14ではこのポリゴンの頂点が指定される。その他のオブジェクト(地面オブジェクトや胞子オブジェクト等)を構成するポリゴンは、上記透明度変化処理の対象とならない。つまり、ステップ14においては、ゲーム空間に配置されたオブジェクトのうちの菌糸オブジェクトが選出され、選出された菌糸オブジェクトのみが透明度変化処理の対象となる。なお、ここでは、透明度変化処理の対象となるオブジェクト(本実施形態では菌糸オブジェクト)を対象オブジェクトと呼ぶ。なお、ゲーム空間に配置されるオブジェクト毎に透明度変化処理の対象になるか否かの判定用フラグを持たせて、このフラグに基づいて透明度変化処理の対象になるか否かの選出処理を行うようにしてもよい。また、透明度変化処理の対象になるオブジェクトのリストを記憶しておいて、そのリストに基づいて選出処理を行うようにしてもよい。
0039
ステップ14の次のステップ15において、ステップ14で指定された頂点Xは基準領域内に含まれるか否かが判定される。すなわち、頂点Xと基準位置との距離がステップ12で決定された所定距離よりも短いか否かが判定される。ステップ15の処理は、対象オブジェクトを構成するポリゴンについて、基準領域内に存在する頂点を特定する処理である。ステップ15の判定において頂点Xが基準領域内に含まれる場合、ステップ16の処理が行われる。すなわち、基準領域内に存在する頂点として特定された頂点についてステップ16の処理が行われる。一方、ステップ15の判定において頂点Xが基準領域内に含まれない場合、ステップ17の処理が行われる。すなわち、基準領域内に存在する頂点として特定されなかった頂点についてステップ17の処理が行われる。
0040
ステップ16においては、頂点Xに現在設定されている透明度αの値に所定値(ここでは、10とする)が加算される。ただし、所定値を加算することによって、透明度αの値が255を超える場合には、255に設定される。また、頂点Xに現在設定されている透明度αの値がα=255であれば、αの値はそのままとなる。従って、このステップ16が毎フレーム行われることによって、頂点Xの値は255に次第に近づいていく。つまり、基準領域内に含まれる頂点については、α=255を目標値とし、αが目標値となるまで所定値が毎フレーム加算される(所定フレーム毎に加算してもよい)。なお、この目標値は、ゲームプログラム41において予め定められており、ゲーム処理の開始時にワークメモリ32に記憶される。
0041
一方、ステップ17においては、頂点Xに現在設定されている透明度αの値から所定値(ここでは、10とする)が減算される。ただし、所定値を減算することによって透明度αの値が0より小さくなる場合には、0に設定される。また、頂点Xに現在設定されている透明度αの値がα=0であれば、αの値はそのままとなる。従って、このステップ16が毎フレーム行われることによって、頂点Xの値は0に次第に近づいていく。つまり、基準領域外に位置する頂点については、α=0を目標値とし、αが目標値となるまで所定値が毎フレーム減算される。なお、この目標値は、ゲームプログラム41において予め定められており、ゲーム処理の開始時にワークメモリ32に記憶される。
0042
なお、本実施形態では、ステップ16の所定値とステップ17の所定値とを同じ値としたが、異なる値であってもよい。また、ステップ16および17の所定値は、2つの目標値(ステップ16の目標値およびステップ17の目標値)の差よりも小さい値であることが好ましい。所定値が2つの目標値の差よりも小さい場合、一方の目標値から他方の目標値まで透明度が変化するために複数のフレーム分の時間を要するからである。これによって、透明度が次第に変化する結果、対象オブジェクトが次第に浮き上がってきたり、対象オブジェクトが次第に消え去っていくような表現をリアルに行うことができる。本実施形態で言えば、基準領域の範囲が次第に広がることによって菌糸オブジェクトが大きくなる場合、大きくなる部分が次第に浮き上がってくるように表示されるので、菌糸が成長していく様子をリアルに表現することができる。また、基準領域の範囲が次第に狭まることによって菌糸オブジェクトが小さくなる場合、小さくなる部分が次第に消え去っていくように表示されるので、菌糸が弱まっていく様子をリアルに表現することができる。また、基準領域が移動するような場合であっても、移動前の領域が次第に消え去り、移動後の領域が次第に浮き上がるような表現が可能である。なお、ステップ16の所定値とステップ17の所定値は、固定値でなくてもよい。例えば、現在値と目標値との差の大きさに応じて当該所定値を決めるようにしてもよい(例えば、差が大きい場合には当該所定値を大きくする)。
0043
ステップ16または17の後、ステップ18の処理が行われる。ステップ18において、対象オブジェクトを構成するポリゴンの全ての頂点について透明度設定処理(ステップ15〜17の処理)を行ったか否かが判定される。ステップ18の判定において、いずれかの頂点について透明度設定処理を行っていない場合、ステップ14の処理に戻る。すなわち、透明度設定処理の対象となるオブジェクトを構成する全ての頂点について透明度設定処理を行うまでステップ14〜18の処理が繰り返される。一方、ステップ18の判定において、すべての頂点について透明度設定処理を行った場合、ステップ19の処理が行われる。すなわち、ステップ19において、ゲーム空間に配置されたオブジェクトについて描画処理が行われる。具体的には、所定の視点からゲーム空間を見たゲーム画像が、ゲーム空間に配置されたオブジェクトのためのテクスチャや当該オブジェクトについて設定された透明度等を用いて生成される。生成されたゲーム画像のデータはVRAM33に格納され、ゲーム画像がテレビ2に表示される。以上のステップ10〜19の処理によって、1フレーム分のゲーム画像がテレビ2に表示されたこととなる。以降、ステップ10〜19の処理が繰り返されることによって、ゲーム処理が続けられる。以上でゲーム処理の説明を終了する。
0044
以上のように、本実施形態によれば、対象オブジェクトを予め用意するとともに、透明度に影響を与える基準領域を指定することによって、対象オブジェクト自体を変更することなく様々な形態で対象オブジェクトを表示することができる。従って、オブジェクトのデータ量を低減することができるとともに簡易な処理でゲーム画像に多彩なバリエーションを与えることができる。
0045
なお、上記実施形態で説明した例の他にも、例えば、水を表現するためのオブジェクトを地面オブジェクトの上に重ねて配置しておき、基準領域の範囲を時間とともに増加するように変化させることによって、水が湧き出る様子をリアルに表現することができる。また、この場合において、基準領域を移動させるようにすれば、水のまとまりが移動する様子をリアルに表現することができる。
0046
なお、上記の実施形態では、基準領域が毎フレーム常に設定されるものとして説明したが、他の実施形態では、必要な場合にのみ基準領域が設定されてもよい。例えば、ゲーム画像の他の例として、人物キャラクタおよびその足跡を表示する例が考えられる。具体的には、足跡のオブジェクトを地面に配置しておき、足跡のオブジェクトの透明度を初期状態ではα=0(すなわち、透明)にしておく。そして、人物キャラクタが歩行するタイミングに合わせて、人物キャラクタの足元の位置に、足が離れてから所定時間の間、基準領域を設定する。これによって、地面に残る足跡を表現することができる。さらに、基準領域の設定を解除する際に上述の透明度設定処理(図7のステップ15〜17)を行うことによって、足跡が次第に消えていく様子をリアルに表現することができる。
0047
また、上記の実施形態では、対象オブジェクトを構成するポリゴンの頂点のうち、基準領域内に含まれる頂点について、相対的に大きなαの値を設定した。つまり、対象オブジェクトのうち、基準領域に含まれる部分が実際に表示されるようにした。ここで、他の実施形態では、ゲーム装置は、対象オブジェクトのうちの基準領域外に位置する部分を不透明にすることによって実際に表示し、基準領域内に含まれる部分を透明にすることによって表示されないようにしてもよい。
0048
また、上記の実施形態では、ポリゴンの頂点について透明度を設定し、頂点の透明度から頂点以外の部分の透明度を決定することとした。ここで、他の実施形態では、ポリゴン自体に透明度を設定してもよい。すなわち、対象オブジェクトを構成するポリゴンについて、ポリゴンが基準領域内に含まれているか否かに応じて(ポリゴンの全体が基準領域内に含まれているか否かに応じて、または、ポリゴン内の所定点が基準領域内に含まれているか否かに応じて)、ポリゴン自体の透明度を変化させて設定するようにしてもよい。
0049
また、上記の実施形態では、対象オブジェクトのうちの基準領域に含まれる部分については透明度の目標値をα=255(すなわち、不透明)とし、対象オブジェクトのうちの基準領域に含まれない部分については目標値をα=0(すなわち、透明)とした。ここで、他の実施形態では、目標値は、半透明となるような値(ここでは、0<α<255)であってもよい。例えば、雲のオブジェクトを表示する場合や、炎の周りの煙のオブジェクトを表示する場合等は、半透明となるような値を目標値に設定することが考えられる。
0050
本発明は、透明度を用いた簡易な方法で様々なゲーム画像を生成すること等を目的としてゲーム装置またはゲームプログラムに利用することが可能である。
0051
1ゲームシステム
2テレビジョン受像機
3据置型ゲーム装置
4光ディスク
5カートリッジ
6コントローラ
31 CPU
32ワークメモリ
41ゲームプログラム
80地面オブジェクト
81菌糸オブジェクト
82胞子オブジェクト
83 基準領域