JP2008099755A - ゲームプログラムおよびゲーム装置 - Google Patents

ゲームプログラムおよびゲーム装置 Download PDF

Info

Publication number
JP2008099755A
JP2008099755A JP2006283112A JP2006283112A JP2008099755A JP 2008099755 A JP2008099755 A JP 2008099755A JP 2006283112 A JP2006283112 A JP 2006283112A JP 2006283112 A JP2006283112 A JP 2006283112A JP 2008099755 A JP2008099755 A JP 2008099755A
Authority
JP
Japan
Prior art keywords
trace
game
shape information
image
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2006283112A
Other languages
English (en)
Other versions
JP5013511B2 (ja
Inventor
Yuusuke Akifusa
祐亮 秋房
Kenichi Nishida
憲一 西田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2006283112A priority Critical patent/JP5013511B2/ja
Priority to US11/633,612 priority patent/US7834895B2/en
Publication of JP2008099755A publication Critical patent/JP2008099755A/ja
Application granted granted Critical
Publication of JP5013511B2 publication Critical patent/JP5013511B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/503Blending, e.g. for anti-aliasing
    • A63F13/10
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6692Methods for processing data by generating or executing the game program for rendering three dimensional images using special effects, generally involving post-processing, e.g. blooming
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8017Driving on land or water; Flying

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

【課題】表現できる長さに制限なくオブジェクトが移動した痕跡を表現するゲームプログラムおよびゲーム装置を提供する。
【解決手段】仮想ゲーム世界におけるオブジェクトの配置位置の変化に応じて、オブジェクトが仮想ゲーム世界におけるゲームフィールド上を通過した痕跡の形状を示す痕跡形状情報が更新される。痕跡の有無別にそれぞれ用意された仮想ゲーム世界におけるゲームフィールドの画像を、痕跡形状情報に基づいて合成することによって地面テクスチャを生成する。地面テクスチャを用いて、仮想ゲーム世界におけるゲームフィールドを描画する。そして、オブジェクトが配置された仮想ゲーム世界を表示装置へ表示する。
【選択図】図12

Description

本発明は、ゲームプログラムおよびゲーム装置に関し、より特定的には、仮想ゲーム世界でオブジェクトを移動させるゲームプログラムおよびゲーム装置に関する。
従来、仮想ゲーム世界でオブジェクトを移動させるとき、そのオブジェクトが移動した痕跡を表現するゲーム装置がある(例えば、特許文献1参照)。上記ゲーム装置では、仮想ゲーム空間内でオブジェクトが移動した痕跡マーク(軌跡)をポリゴンで描画し、痕跡マークの後端側を時間経過と共に徐々に薄くして描画することにより、時間の経過に伴って痕跡マークが消滅するように表現される。
特開2000−298733号公報
しかしながら、上記特許文献1で開示されたゲーム装置は、仮想ゲーム空間内において表現する軌跡マークの長さが長くなるほど、描画するポリゴンが多く必要となるため、それらのポリゴンに応じたメモリ容量の確保が必要となる。したがって、ゲーム装置の処理速度や割り当てられたメモリサイズによって、表現できる痕跡マークの長さが制限されてしまう。
それ故に、本発明の目的は、表現できる長さに制限なくオブジェクトが移動した痕跡を表現するゲームプログラムおよびゲーム装置を提供することである。
上記の目的を達成するために、本発明は以下の構成を採用した。なお、括弧内の参照符号やステップ番号等は、本発明の理解を助けるために後述する実施形態との対応関係を示したものであって、本発明の範囲を何ら限定するものではない。
第1の発明は、仮想ゲーム世界を移動するオブジェクト(PC)を表示装置(2)に表示するゲーム装置(5)のコンピュータ(30)で実行されるゲームプログラムである。ゲームプログラムは、オブジェクト位置算出ステップ(ステップ15を実行するCPU30、以下、単にステップ番号のみ記載する)、痕跡形状情報更新ステップ(S46)、地面テクスチャ生成ステップ(S51)、ゲームフィールド描画ステップ(S52)、オブジェクト配置ステップ(S15)、および表示制御ステップ(S53、S13)をコンピュータに実行させる。オブジェクト位置算出ステップは、仮想ゲーム世界におけるオブジェクトの配置位置(Db)を算出する。痕跡形状情報更新ステップは、配置位置の変化に応じて、オブジェクトが仮想ゲーム世界におけるゲームフィールド上を通過した痕跡(M)の形状を示す痕跡形状情報(Tsa)を更新してメモリ(33)に記憶する。地面テクスチャ生成ステップは、痕跡の有無別にそれぞれ用意された仮想ゲーム世界におけるゲームフィールドの画像(Tt、Tg)を、痕跡形状情報に基づいて合成することによって地面テクスチャ(Tc)を生成する。ゲームフィールド描画ステップは、地面テクスチャを用いて、仮想ゲーム世界におけるゲームフィールドを描画する。オブジェクト配置ステップは、配置位置にオブジェクトを配置する。表示制御ステップは、オブジェクトが配置された仮想ゲーム世界を表示装置へ表示する。
第2の発明は、上記第1の発明において、オブジェクト位置算出ステップ、痕跡形状情報更新ステップ、地面テクスチャ生成ステップ、ゲームフィールド描画ステップ、および表示制御ステップは、所定の処理周期毎にコンピュータによって繰り返し実行される。
第3の発明は、上記第1の発明において、痕跡形状情報は、痕跡が有るゲームフィールドの画像を痕跡がないゲームフィールドの画像に合成する合成割合を示す情報である。
第4の発明は、上記第1の発明において、痕跡形状情報は、痕跡が有るゲームフィールドの画像を痕跡がないゲームフィールドの画像に合成する領域を示す情報である。
第5の発明は、上記第4の発明において、痕跡形状情報は、領域に痕跡が有るゲームフィールドの画像を合成する合成割合をさらに示す情報である。
第6の発明は、上記第3または第5の発明において、痕跡形状情報更新ステップでは、既に描画されて表示装置に表示された痕跡を示す箇所に対して、痕跡が有るゲームフィールドの画像を合成する合成割合を低くして痕跡形状情報が更新される。
第7の発明は、上記第1の発明において、痕跡形状情報は、ゲームフィールドに対して痕跡がある領域を第1の色(黒)で示し、痕跡がない領域をその第1の色とは異なる第2の色(白)で示し、痕跡が有るゲームフィールドの画像を痕跡がないゲームフィールドの画像に合成する合成割合をその第1の色の濃度で示す画像データである。
第8の発明は、仮想ゲーム世界を移動するオブジェクトを表示装置に表示するゲーム装置である。ゲーム装置は、オブジェクト位置算出手段、痕跡形状情報更新手段、地面テクスチャ生成手段、ゲームフィールド描画手段、オブジェクト配置手段、および表示制御手段を備える。オブジェクト位置算出手段は、仮想ゲーム世界におけるオブジェクトの配置位置を算出する。痕跡形状情報更新手段は、配置位置の変化に応じて、オブジェクトが仮想ゲーム世界におけるゲームフィールド上を通過した痕跡の形状を示す痕跡形状情報を更新して記憶手段に記憶する。地面テクスチャ生成手段は、痕跡の有無別にそれぞれ用意された仮想ゲーム世界におけるゲームフィールドの画像を、痕跡形状情報に基づいて合成することによって地面テクスチャを生成する。ゲームフィールド描画手段は、地面テクスチャを用いて、仮想ゲーム世界におけるゲームフィールドを描画する。オブジェクト配置手段は、配置位置にオブジェクトを配置する。表示制御手段は、オブジェクトが配置された仮想ゲーム世界を表示装置へ表示する。
上記第1の発明によれば、仮想ゲーム世界の描画に先行して、痕跡のみを描画し、描画された痕跡をテクスチャ化して地面と合成して表示される。したがって、痕跡を描画するために必要な処理速度やメモリコストを、描画される痕跡のサイズに関係なく一定に保つことができる。また、2種類のゲームフィールドを示す画像を合成することによって地面テクスチャを生成するため、ゲームフィールドにフィットした地面を生成することができる。
上記第2の発明によれば、痕跡の描画処理が繰り返されるため、オブジェクトの移動に応じて、その痕跡を更新して適切に描画することができる。
上記第3の発明によれば、痕跡が有るゲームフィールドの画像を合成する割合を制御できるため、痕跡の濃淡をゲームフィールド上で表現することができる。
上記第4の発明によれば、痕跡形状情報を用いて、オブジェクトが通過した経路に応じた痕跡を描画することができる。
上記第5の発明によれば、痕跡形状情報を用いて、オブジェクトが通過した経路に応じた痕跡を描画しながら、その濃淡をゲームフィールド上で表現することができる。
上記第6の発明によれば、古い痕跡が時間経過と共に徐々に薄くして描画され、最終的には時間の経過に応じて古い痕跡が消滅するように表現される。
上記第7の発明によれば、第1の色(例えば、黒)で痕跡形状を示し、第2の色(例えば、白)で痕跡以外の領域を示し、第1の色の濃度で痕跡の濃淡を示す画像データによって、痕跡形状情報を実現することができる。
また、本発明のゲーム装置によれば、上述したゲームプログラムと同様の効果を得ることができる。
図1を参照して、本発明の一実施形態に係るゲーム装置について説明する。以下、説明を具体的にするために、当該ゲーム装置の一例の据置型のゲーム装置を含むゲームシステムについて説明する。なお、図1は据置型のゲーム装置3を含むゲームシステム1の外観図であり、図2はゲーム装置本体5のブロック図である。以下、当該ゲームシステム1について説明する。
図1において、ゲームシステム1は、表示手段の一例の家庭用テレビジョン受像機(以下、モニタと記載する)2と、当該モニタ2に接続コードを介して接続する据置型のゲーム装置3とから構成される。モニタ2は、ゲーム装置本体5から出力された音声信号を音声出力するためのスピーカ2aを備える。また、ゲーム装置3は、本願発明のゲームプログラムを記録した光ディスク4と、当該光ディスク4のゲームプログラムを実行してゲーム画面をモニタ2に表示出力させるためのコンピュータを搭載したゲーム装置本体5と、ゲーム画面に表示されたキャラクタ等を操作するゲームに必要な操作情報をゲーム装置本体5に与えるためのコントローラ7とを備えている。
また、ゲーム装置本体5は、通信ユニット6を内蔵する。通信ユニット6は、コントローラ7から無線送信されるデータを受信し、ゲーム装置本体5からコントローラ7へデータを送信して、コントローラ7とゲーム装置本体5とを無線通信によって接続する。さらに、ゲーム装置本体5には、当該ゲーム装置本体5に対して交換可能に用いられる情報記憶媒体の一例の光ディスク4が脱着される。ゲーム装置本体5の前部主面には、当該ゲーム装置本体5の電源ON/OFFスイッチ、ゲーム処理のリセットスイッチ、光ディスク4を脱着する投入口、およびゲーム装置本体5の投入口から光ディスク4を取り出すイジェクトスイッチ等が設けられている。
また、ゲーム装置本体5には、セーブデータ等のデータを固定的に記憶するバックアップメモリとして機能するフラッシュメモリ38が搭載される。ゲーム装置本体5は、光ディスク4に記憶されたゲームプログラム等を実行することによって、その結果をゲーム画像としてモニタ2に表示する。さらに、ゲーム装置本体5は、フラッシュメモリ38に記憶されたセーブデータを用いて、過去に実行されたゲーム状態を再現して、ゲーム画像をモニタ2に表示することもできる。そして、ゲーム装置本体5のプレイヤは、モニタ2に表示されたゲーム画像を見ながら、コントローラ7を操作することによって、ゲーム進行を楽しむことができる。
コントローラ7は、通信ユニット6を内蔵するゲーム装置本体5へ、例えばBluetooth(ブルートゥース;登録商標)の技術を用いて操作情報等の送信データを無線送信する。コントローラ7は、主にモニタ2の表示画面に表示されるゲーム空間に登場するプレイヤキャラクタ等を操作したりするための操作手段である。コントローラ7は、片手で把持可能な程度の大きさのハウジングと、当該ハウジングの表面に露出して設けられた複数個の操作ボタン(十字キーやスティック等を含む)が設けられている。また、後述により明らかとなるが、コントローラ7は、当該コントローラ7から見た画像を撮像する撮像情報演算部74を備えている。また、撮像情報演算部74の撮像対象の一例として、モニタ2の表示画面近傍に2つのLEDモジュール(以下、マーカと記載する)8Lおよび8Rが設置される。これらマーカ8Lおよび8Rは、それぞれモニタ2の前方に向かって例えば赤外光を出力する。また、コントローラ7は、ゲーム装置本体5の通信ユニット6から無線送信された送信データを通信部75で受信して、当該送信データに応じた音や振動を発生させることもできる。
図2において、ゲーム装置本体5は、各種プログラムを実行する例えばCPU(セントラルプロセッシングユニット)30を備える。CPU30は、図示しないブートROMに記憶された起動プログラムを実行し、メインメモリ33等のメモリの初期化等を行った後、光ディスク4に記憶されているゲームプログラムの実行し、そのゲームプログラムに応じたゲーム処理等を行うものである。CPU30には、メモリコントローラ31を介して、GPU(Graphics Processing Unit)32、メインメモリ33、DSP(Digital Signal Processor)34、およびARAM(Audio RAM)35などが接続される。また、メモリコントローラ31には、所定のバスを介して、通信ユニット6、ビデオI/F(インターフェース)37、フラッシュメモリ38、オーディオI/F39、およびディスクI/F41が接続され、それぞれのインターフェースにモニタ2、スピーカ2a、およびディスクドライブ40が接続されている。
GPU32は、CPU30の命令に基づいて画像処理を行うものあり、例えば、3Dグラフィックスの表示に必要な計算処理を行う半導体チップで構成される。GPU32は、図示しない画像処理専用のメモリやメインメモリ33の一部の記憶領域を用いて画像処理を行う。GPU32は、これらを用いてモニタ2に表示すべきゲーム画像データやムービ映像を生成し、適宜メモリコントローラ31およびビデオI/F37を介してモニタ2に出力する。
メインメモリ33は、CPU30で使用される記憶領域であって、CPU30の処理に必要なゲームプログラム等を適宜記憶する。例えば、メインメモリ33は、CPU30によって光ディスク4から読み出されたゲームプログラムや各種データ等を記憶する。このメインメモリ33に記憶されたゲームプログラムや各種データ等が、CPU30によって実行される。
DSP34は、ゲームプログラム実行時にCPU30において生成されるサウンドデータ等を処理するものであり、そのサウンドデータ等を記憶するためのARAM35が接続される。ARAM35は、DSP34が所定の処理(例えば、先読みしておいたゲームプログラムやサウンドデータの記憶)を行う際に用いられる。DSP34は、ARAM35に記憶されたサウンドデータを読み出し、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2aに出力させる。
メモリコントローラ31は、データ転送を統括的に制御するものであり、上述した各種I/Fが接続される。上述したように通信ユニット6は、コントローラ7からの送信データを受信し、当該送信データをCPU30へ出力する。また、通信ユニット6は、CPU30から出力された送信データをコントローラ7の通信部75へ送信する。ビデオI/F37には、モニタ2が接続される。オーディオI/F39にはモニタ2に内蔵されるスピーカ2aが接続され、DSP34がARAM35から読み出したサウンドデータやディスクドライブ40から直接出力されるサウンドデータをスピーカ2aから出力可能に接続される。ディスクI/F41には、ディスクドライブ40が接続される。ディスクドライブ40は、所定の読み出し位置に配置された光ディスク4に記憶されたデータを読み出し、ゲーム装置本体5のバスやオーディオI/F39に出力する。
図3および図4を参照して、コントローラ7について説明する。なお、図3は、コントローラ7の上面後方から見た斜視図である。図4は、コントローラ7を下面前方から見た斜視図である。
図3および図4において、コントローラ7は、例えばプラスチック成型によって形成されたハウジング71を有しており、当該ハウジング71に複数の操作部72が設けられている。ハウジング71は、その前後方向を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。
ハウジング71上面の中央前面側に、十字キー72aが設けられる。この十字キー72aは、十字型の4方向プッシュスイッチであり、4つの方向(前後左右)に対応する操作部分が十字の突出片にそれぞれ90°間隔で配置される。プレイヤが十字キー72aのいずれかの操作部分を押下することによって前後左右いずれかの方向を選択される。例えばプレイヤが十字キー72aを操作することによって、仮想ゲーム世界に登場するプレイヤキャラクタ等の移動方向を指示したり、複数の選択肢から選択指示したりすることができる。
なお、十字キー72aは、上述したプレイヤの方向入力操作に応じて操作信号を出力する操作部であるが、他の態様の操作部でもかまわない。例えば、十字方向に4つのプッシュスイッチを配設し、プレイヤによって押下されたプッシュスイッチに応じて操作信号を出力する操作部を設けてもかまわない。さらに、上記4つのプッシュスイッチとは別に、上記十字方向が交わる位置にセンタスイッチを配設し、4つのプッシュスイッチとセンタスイッチとを複合した操作部を設けてもかまわない。また、ハウジング71上面から突出した傾倒可能なスティック(いわゆる、ジョイスティック)を倒すことによって、傾倒方向に応じて操作信号を出力する操作部を上記十字キー72aの代わりに設けてもかまわない。さらに、水平移動可能な円盤状部材をスライドさせることによって、当該スライド方向に応じた操作信号を出力する操作部を、上記十字キー72aの代わりに設けてもかまわない。また、タッチパッドを、上記十字キー72aの代わりに設けてもかまわない。
ハウジング71上面の十字キー72aより後面側に、複数の操作ボタン72b〜72gが設けられる。操作ボタン72b〜72gは、プレイヤがボタン頭部を押下することによって、それぞれの操作ボタン72b〜72gに割り当てられた操作信号を出力する操作部である。例えば、操作ボタン72b〜72dには、1番ボタン、2番ボタン、およびAボタン等としての機能が割り当てられる。また、操作ボタン72e〜72gには、マイナスボタン、ホームボタン、およびプラスボタン等としての機能が割り当てられる。これら操作ボタン72a〜72gは、ゲーム装置本体5が実行するゲームプログラムに応じてそれぞれの操作機能が割り当てられる。なお、図3に示した配置例では、操作ボタン72b〜72dは、ハウジング71上面の中央前後方向に沿って並設されている。また、操作ボタン72e〜72gは、ハウジング71上面の左右方向に沿って操作ボタン72bおよび72dの間に並設されている。そして、操作ボタン72fは、その上面がハウジング71の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。
また、ハウジング71上面の十字キー72aより前面側に、操作ボタン72hが設けられる。操作ボタン72hは、遠隔からゲーム装置本体5の電源をオン/オフする電源スイッチである。この操作ボタン72hも、その上面がハウジング71の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。
また、ハウジング71上面の操作ボタン72cより後面側に、複数のLED702が設けられる。ここで、コントローラ7は、他のコントローラ7と区別するためにコントローラ種別(番号)が設けられている。例えば、LED702は、コントローラ7に現在設定されている上記コントローラ種別をプレイヤに通知するために用いられる。具体的には、コントローラ7から通信ユニット6へ送信データを送信する際、上記コントローラ種別に応じて複数のLED702のうち、種別に対応するLEDが点灯する。
また、ハウジング71上面には、操作ボタン72bおよび操作ボタン72e〜72gの間に後述するスピーカ(図5のスピーカ706)からの音を外部に放出するための音抜き孔が形成されている。
一方、ハウジング71下面には、凹部が形成されている。ハウジング71下面の凹部は、プレイヤがコントローラ7の前面をマーカ8Lおよび8Rに向けて片手で把持したときに、当該プレイヤの人差し指や中指が位置するような位置に形成される。そして、上記凹部の後面側傾斜面には、操作ボタン72iが設けられる。操作ボタン72iは、例えばBボタンとして機能する操作部である。
また、ハウジング71前面には、撮像情報演算部74の一部を構成する撮像素子743が設けられる。ここで、撮像情報演算部74は、コントローラ7が撮像した画像データを解析してその中で輝度が高い場所を判別してその場所の重心位置やサイズなどを検出するためのシステムであり、例えば、最大200フレーム/秒程度のサンプリング周期であるため比較的高速なコントローラ7の動きでも追跡して解析することができる。この撮像情報演算部74の詳細な構成については、後述する。また、ハウジング70の後面には、コネクタ73が設けられている。コネクタ73は、例えばエッジコネクタであり、例えば接続ケーブルと嵌合して接続するために利用される。
次に、図5および図6を参照して、コントローラ7の内部構造について説明する。なお、図5は、コントローラ7の上筐体(ハウジング71の一部)を外した状態を後面側から見た斜視図である。図6は、コントローラ7の下筐体(ハウジング71の一部)を外した状態を前面側から見た斜視図である。ここで、図6に示す基板700は、図5に示す基板700の裏面から見た斜視図となっている。
図5において、ハウジング71の内部には基板700が固設されており、当該基板700の上主面上に操作ボタン72a〜72h、加速度センサ701、LED702、およびアンテナ754等が設けられる。そして、これらは、基板700等に形成された配線(図示せず)によってマイコン751等(図6、図7参照)に接続される。また、図示しない無線モジュール753(図7参照)およびアンテナ754によって、コントローラ7がワイヤレスコントローラとして機能する。なお、ハウジング71内部には図示しない水晶振動子703が設けられており、後述するマイコン751の基本クロックを生成する。また、基板700の上主面上に、スピーカ706およびアンプ708が設けられる。また、加速度センサ701は、操作ボタン72dの左側の基板700上(つまり、基板700の中央部ではなく周辺部)に設けられる。したがって、加速度センサ701は、コントローラ7の長手方向を軸とした回転に応じて、重力加速度の方向変化に加え、遠心力による成分が含まれる加速度を検出することができるので、所定の演算により、検出される加速度データからコントローラ7の回転を良好な感度でゲーム装置本体5等が判定することができる。
一方、図6において、基板700の下主面上の前端縁に撮像情報演算部74が設けられる。撮像情報演算部74は、コントローラ7の前方から順に赤外線フィルタ741、レンズ742、撮像素子743、および画像処理回路744によって構成されており、それぞれ基板700の下主面に取り付けられる。また、基板700の下主面上の後端縁にコネクタ73が取り付けられる。さらに、基板700の下主面上にサウンドIC707およびマイコン751が設けられている。サウンドIC707は、基板700等に形成された配線によってマイコン751およびアンプ708と接続され、ゲーム装置本体5から送信されたサウンドデータに応じてアンプ708を介してスピーカ706に音声信号を出力する。
そして、基板700の下主面上には、バイブレータ704が取り付けられる。バイブレータ704は、例えば振動モータやソレノイドである。バイブレータ704は、基板700等に形成された配線によってマイコン751と接続され、ゲーム装置本体5から送信された振動データに応じてその作動をオン/オフする。バイブレータ704が作動することによってコントローラ7に振動が発生するので、それを把持しているプレイヤの手にその振動が伝達され、いわゆる振動対応ゲームが実現できる。ここで、バイブレータ704は、ハウジング71のやや前方寄りに配置されるため、プレイヤが把持している状態において、ハウジング71が大きく振動することになり、振動を感じやすくなる。
次に、図7を参照して、コントローラ7の内部構成について説明する。なお、図7は、コントローラ7の構成を示すブロック図である。
図7において、コントローラ7は、上述した操作部72、撮像情報演算部74、加速度センサ701、バイブレータ704、スピーカ706、サウンドIC707、およびアンプ708の他に、その内部に通信部75を備えている。
撮像情報演算部74は、赤外線フィルタ741、レンズ742、撮像素子743、および画像処理回路744を含んでいる。赤外線フィルタ741は、コントローラ7の前方から入射する光から赤外線のみを通過させる。レンズ742は、赤外線フィルタ741を透過した赤外線を集光して撮像素子743へ出射する。撮像素子743は、例えばCMOSセンサやあるいはCCDのような固体撮像素子であり、レンズ742が集光した赤外線を撮像する。したがって、撮像素子743は、赤外線フィルタ741を通過した赤外線だけを撮像して画像データを生成する。撮像素子743で生成された画像データは、画像処理回路744で処理される。具体的には、画像処理回路744は、撮像素子743から得られた画像データを処理して高輝度部分を検知し、それらの位置座標や面積を検出した結果を示す処理結果データを通信部75へ出力する。なお、これらの撮像情報演算部74は、コントローラ7のハウジング71に固設されており、ハウジング71自体の方向を変えることによってその撮像方向を変更することができる。
コントローラ7は、3軸(X、Y、Z軸)の加速度センサ701を備えていることが好ましい。この3軸の加速度センサ701は、3方向、すなわち、上下方向(図3に示すY軸)、左右方向(図3に示すX軸)、および前後方向(図3に示すZ軸)で直線加速度を検知する。例えば、これらの加速度センサ701は、アナログ・デバイセズ株式会社(Analog Devices, Inc.)またはSTマイクロエレクトロニクス社(STMicroelectronics N.V.)から入手可能であるタイプのものでもよい。加速度センサ701は、シリコン微細加工されたMEMS(Micro Electro Mechanical Systems:微小電子機械システム)の技術に基づいた静電容量式(静電容量結合式)であることが好ましい。しかしながら、既存の加速度検出手段の技術(例えば、圧電方式や圧電抵抗方式)あるいは将来開発される他の適切な技術を用いて、加速度センサ701が提供されてもよい。
加速度センサ701に用いられるような加速度検出手段は、加速度センサ701の持つ各軸に対応する直線に沿った加速度(直線加速度)のみを検知することができる。つまり、加速度センサ701からの直接の出力は、それら3軸のそれぞれに沿った直線加速度(静的または動的)を示す信号である。このため、加速度センサ701は、非直線状(例えば、円弧状)の経路に沿った動き、回転、回転運動、角変位、傾斜、位置、または姿勢等の物理特性を直接検知することはできない。
しかしながら、加速度センサ701から出力される加速度の信号に対して追加の処理を行うことによって、コントローラ7に関するさらなる情報を推測または算出(判定)することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、静的な加速度(重力加速度)が検知されると、加速度センサ701からの出力を用いて、傾斜角度と検知された加速度とを用いた演算によって重力ベクトルに対する対象(コントローラ7)の傾きを判定することができる。このように、加速度センサ701をマイコン751(またはゲーム装置本体5に含まれるCPU30等の他のプロセッサ)と組み合わせて用いることによって、コントローラ7の傾き、姿勢、または位置を判定することができる。同様に、加速度センサ701を備えるコントローラ7がプレイヤの手で動的に加速されて動かされる場合に、加速度センサ701によって生成される加速度信号を処理することによって、コントローラ7の様々な動きおよび/または位置を算出することができる。他の実施例では、加速度センサ701は、信号をマイコン751に出力する前に内蔵の加速度検出手段から出力される加速度信号に対して所望の処理を行うための、組込み式の信号処理装置または他の種類の専用の処理装置を備えていてもよい。例えば、組込み式または専用の処理装置は、加速度センサ701が静的な加速度(例えば、重力加速度)を検出するためのものである場合、検知された加速度信号をそれに相当する傾斜角(あるいは、他の好ましいパラメータ)に変換するものであってもよい。加速度センサ701でそれぞれ検知された加速度を示すデータは、通信部75に出力される。
通信部75は、マイクロコンピュータ(Micro Computer:マイコン)751、メモリ752、無線モジュール753、およびアンテナ754を含んでいる。マイコン751は、処理の際にメモリ752を記憶領域として用いながら、送信データを無線送信する無線モジュール753を制御する。また、マイコン751は、アンテナ754を介して無線モジュール753が受信したゲーム装置本体5からのデータに応じて、サウンドIC707およびバイブレータ704の動作を制御する。サウンドIC707は、通信部75を介してゲーム装置本体5から送信されたサウンドデータ等を処理する。また、マイコン751は、通信部75を介してゲーム装置本体5から送信された振動データ(例えば、バイブレータ704をONまたはOFFする信号)等に応じて、バイブレータ704を作動させる。
コントローラ7に設けられた操作部72からの操作信号(キーデータ)、加速度センサ701からの3軸方向の加速度信号(X、Y、およびZ軸方向加速度データ)、および撮像情報演算部74からの処理結果データは、マイコン751に出力される。マイコン751は、入力した各データ(キーデータ、X、Y、およびZ軸方向加速度データ、処理結果データ)を通信ユニット6へ送信する送信データとして一時的にメモリ752に格納する。ここで、通信部75から通信ユニット6への無線送信は、所定の周期毎に行われるが、ゲームの処理は1/60秒を単位として行われることが一般的であるので、それよりも短い周期で送信を行うことが必要となる。具体的には、ゲームの処理単位は16.7ms(1/60秒)であり、ブルートゥース(登録商標)で構成される通信部75の送信間隔は5msである。マイコン751は、通信ユニット6への送信タイミングが到来すると、メモリ752に格納されている送信データを一連の操作情報として出力し、無線モジュール753へ出力する。そして、無線モジュール753は、例えばBluetooth(ブルートゥース;登録商標)の技術を用いて、所定周波数の搬送波を用いて操作情報をその電波信号としてアンテナ754から放射する。つまり、コントローラ7に設けられた操作部72からのキーデータ、加速度センサ701からのX、Y、およびZ軸方向加速度データ、および撮像情報演算部74からの処理結果データがコントローラ7から送信される。そして、ゲーム装置本体5の通信ユニット6でその電波信号を受信し、ゲーム装置本体5で当該電波信号を復調や復号することによって、一連の操作情報(キーデータ、X、Y、およびZ軸方向加速度データ、および処理結果データ)を取得する。そして、ゲーム装置本体5のCPU30は、取得した操作情報とゲームプログラムとに基づいて、ゲーム処理を行う。なお、Bluetooth(登録商標)の技術を用いて通信部75を構成する場合、通信部75は、他のデバイスから無線送信された送信データを受信する機能も備えることができる。
なお、後述により明らかとなるが、本発明のゲームプログラムでは、上記送信データとして送信する各データ(キーデータ、X、Y、およびZ軸方向加速度データ、処理結果データ)のうち、少なくともキーデータのみ送信されれば実現することができる。この場合、加速度センサ701や撮像情報演算部74がコントローラ7に搭載されていなくてもかまわない。また、コントローラ7から音声を出力するための機能(スピーカ706、アンプ708、サウンドIC707)やコントローラ7を振動させるための機能(バイブレータ704)もコントローラ7に搭載されていなくてもかまわない。
次に、ゲーム装置本体5が行う具体的な処理を説明する前に、図8を参照して本ゲーム装置本体5で行うゲームの概要について説明する。なお、図8は、モニタ2の表示画面に表示されるゲーム画像の一例を示す図である。
図8において、モニタ2の表示画面には、プレイヤが仮想ゲーム世界でプレイヤキャラクタPCを移動させるとき、そのプレイヤキャラクタPCが移動した痕跡Mが仮想地面上に表現される。例えば、プレイヤキャラクタPCは、仮想ゲーム世界における位置がコントローラ7から送信されるキーデータによって指示される。一例として、十字キー72aをプレイヤが押下する方向に応じて、プレイヤキャラクタPCが仮想ゲーム世界を移動する方向dが決定され、当該プレイヤキャラクタPCが決定された方向dへ一定速度で移動する。
プレイヤキャラクタPCは、仮想ゲーム世界に設定された地面上を移動するが、当該プレイヤキャラクタPCが通過した地面上には痕跡Mが描かれる。例えば、プレイヤキャラクタPCが戦車オブジェクトである場合、痕跡Mは、地面上に描かれるキャタピラ痕である。また、痕跡Mは、その後端側を時間経過と共に徐々に薄くして描画され、最終的には時間の経過に伴って当該後端側から痕跡Mが消滅するように表現される。なお、図8においては、痕跡Mを黒色で塗りつぶした矩形図形群で表現しており、仮想ゲーム世界の地面を白色で表現している。そして、痕跡Mが薄く描画されている様子を灰色〜白色に順次変化させて塗りつぶした矩形図形で表現している。
次に、ゲームシステム1において行われるゲーム処理の詳細を説明する。まず、図9を参照して、ゲーム処理において用いられる主なデータについて説明する。なお、図9は、ゲーム装置本体5のメインメモリ33に記憶される主なデータを示す図である。
図9に示すように、メインメモリ33には、キーデータDa、プレイヤキャラクタ位置データDb、プレイヤキャラクタ方向データDc、痕跡描画位置データDd、痕跡形状テクスチャデータDe、通常地面テクスチャデータDf、痕跡地面テクスチャデータDg、合成テクスチャデータDh、描画スクリーンデータDi、カメラ行列データDj、および画像データDk等が記憶される。なお、メインメモリ33には、図9に示す情報に含まれるデータの他、ゲームに登場するプレイヤキャラクタPCや他のオブジェクト等に関するデータや仮想ゲーム空間に関するデータ等、ゲーム処理に必要なデータが記憶される。
キーデータDaは、コントローラ7から送信データとして送信されてくる一連の操作情報に含まれるキーデータである。なお、ゲーム装置本体5に内蔵される通信ユニット6は、コントローラ7から所定間隔(例えば5ms毎)に送信される操作情報を受信し、通信ユニット6に備える図示しないバッファに蓄える。その後、ゲーム処理間隔である1フレーム毎(1/60秒)に読み出されてメインメモリ33のキーデータDaが更新される。なお、コントローラ7から送信データとして送信されてくる一連の操作情報には、上述のキーデータの他に、処理結果データや加速度データが含まれるが、後述するフローチャートではこれらのデータを利用しない態様を示す。
プレイヤキャラクタ位置データDbは、仮想ゲーム世界におけるプレイヤキャラクタPC(図8参照)の位置を示す、例えば座標データである。プレイヤキャラクタ方向データDcは、仮想ゲーム世界におけるプレイヤキャラクタPCの方向を示す、例えばベクトルデータである。痕跡描画位置データDdは、仮想ゲーム世界において、プレイヤキャラクタPCが移動した痕跡M(図8参照)を描画した最後の位置(つまり、痕跡Mの前端の位置)を示す、例えば座標データである。
痕跡形状テクスチャデータDeは、仮想ゲーム世界において、痕跡Mの形状やその濃淡を表現するテクスチャ画像データである。通常地面テクスチャデータDfは、仮想ゲーム世界における通常地面を表現するテクスチャ画像データである。痕跡地面テクスチャデータDgは、仮想ゲーム世界における痕跡部分を表現するテクスチャ画像データである。合成テクスチャデータDhは、痕跡形状テクスチャデータDe、通常地面テクスチャデータDf、および痕跡地面テクスチャデータDgがそれぞれ示すテクスチャ画像データを合成して得られ、仮想ゲーム世界において痕跡が残った地面を表現するテクスチャ画像データである。
描画スクリーンデータDiは、テクスチャ画像データを生成したり、モニタ2に表示するゲーム画像を生成したりするために使用される描画スクリーンSaやSbを格納する。カメラ行列データDjは、描画スクリーンSaやSbを生成するときの仮想カメラの状態を定義するカメラ行列C1やC2を示すデータである。
画像データDkは、プレイヤキャラクタ画像データDk1等を含み、仮想ゲーム空間にプレイヤキャラクタPC等を配置してゲーム画像を生成するためのデータである。
次に、図10〜図15を参照して、ゲーム装置本体5において行われるゲーム処理の詳細を説明する。なお、図10は、ゲーム装置本体5において実行されるゲーム処理の流れを示すフローチャートである。図11は、図10におけるステップ11の初期化処理の詳細な動作を示すサブルーチンである。図12は、図10におけるステップ17の描画処理の詳細な動作を示すサブルーチンである。図13は、仮想ゲーム世界と痕跡形状テクスチャTsaとの関係の一例を示す図である。図14は、図12に示す描画処理の動作に応じて、痕跡形状テクスチャを生成するまでの各段階の一例を示す図である。図15は、図12に示す描画処理の動作に応じて、合成テクスチャを生成する一例を示す図である。なお、図10〜図12に示すフローチャートにおいては、ゲーム処理のうち、仮想ゲーム世界に痕跡が描画される処理について主に説明し、本願発明と直接関連しない他のゲーム処理については詳細な説明を省略する。また、図10〜図12では、CPU30が実行する各ステップを「S」と略称する。
ゲーム装置本体5の電源が投入されると、ゲーム装置本体5のCPU30は、図示しないブートROMに記憶されている起動プログラムを実行し、これによってメインメモリ33等の各ユニットが初期化される。そして、光ディスク4に記憶されたゲームプログラムがメインメモリ33に読み込まれ、CPU30によって当該ゲームプログラムの実行が開始される。図10〜図12に示すフローチャートは、以上の処理が完了した後に行われるゲーム処理を示すフローチャートである。
図10において、CPU30は、ゲーム処理の初期化処理を行い(ステップ11)、処理を次のステップに進める。以下、図11を参照して、上記ステップ11で行う初期化処理について説明する。
図11において、CPU30は、プレイヤがゲームを行う仮想ゲーム世界のゲームフィールド(地面)を設定する(ステップ20)。そして、CPU30は、仮想ゲーム世界にプレイヤキャラクタPCが通過した痕跡形状を書き込むテクスチャ(痕跡形状テクスチャ)の大きさを、仮想ゲーム世界において痕跡が描画される可能性のある地面の大きさに応じて設定し(ステップ21)、処理を次のステップに進める。例えば、図13に示すように、仮想ゲーム世界において痕跡が描画される可能性のある地面の大きさが縦Vy横Vxである場合、痕跡形状テクスチャTsaが縦Ty横Txで設定される。そして、地面の大きさ縦Vy横Vxの中心に基準点Pvが設定され、縦Ty横Txの痕跡形状テクスチャTsaの中心に基準点Ptが設定され、基準点PvおよびPtはそれぞれ同じ地点を示す基準点である。
次に、CPU30は、痕跡形状テクスチャTsaのフォーマットを設定して(ステップ22)、処理を次のステップに進める。例えば、CPU30は、痕跡形状テクスチャTsaのフォーマットとして、輝度Iおよびα値Aでそれぞれテクスチャ化するフォーマット(例えば、IA8フォーマット)を設定する。
次に、CPU30は、痕跡形状テクスチャTsaの大きさおよびフォーマットに基づいて、記憶領域(例えば、メインメモリ33や画像処理専用のメモリ)からテクスチャバッファを確保する(ステップ23)。そして、CPU30は、フレームバッファやテクスチャバッファ等の描画領域の初期化を行い(ステップ24)、処理を次のステップに進める。例えば、CPU30は、描画領域のRGBA値をRGBA={0,0,0,0}にして、描画領域の初期化を行う。
次に、CPU30は、痕跡形状テクスチャTsaの大きさに基づいて、痕跡形状テクスチャTsaを生成するための描画スクリーンSaの大きさを算出して(ステップ25)、描画スクリーンSaを描画領域に設定する。そして、CPU30は、仮想カメラの視線がゲームフィールド(地面)の鉛直方向となるカメラ行列C1を算出し(ステップ26)、カメラ行列データDjに格納して処理を次のステップに進める。例えば、カメラ行列C1は、仮想カメラが射影する態様に応じて、透視射影行列や正射影行列等の射影行列で算出される。
次に、CPU30は、描画スクリーンSaを白く塗りつぶして初期化する(ステップ27)。例えば、CPU30は、描画スクリーンSaのRGBA値をRGBA={255,255,255,255}にして、描画スクリーンSaを白く塗りつぶす。そして、CPU30は、上記ステップ27で白く塗りつぶした描画スクリーンSaをキャプチャしてテクスチャ化し、痕跡形状テクスチャTsaとして痕跡形状テクスチャデータDeに格納する(ステップ28)。例えば、CPU30は、描画スクリーンSaのR成分を輝度Iの値に、G成分をα値Aの値にそれぞれ変換してテクスチャ化する。そして、CPU30は、プレイヤキャラクタPCの位置および方向を初期化して、プレイヤキャラクタ位置データDbおよびプレイヤキャラクタ方向データDcに格納し(ステップ29)、当該サブルーチンによる処理を終了する。
図10に戻り、ステップ11の初期化処理の後、CPU30は、仮想ゲーム世界における現在のプレイヤキャラクタPCの位置を、痕跡Mの前端の位置(痕跡描画位置)として、痕跡描画位置データDdに格納する(ステップ12)。次に、CPU30は、現在のプレイヤキャラクタPCの位置および方向に応じて、ゲームフィールドにプレイヤキャラクタPCを配置して、仮想カメラを視点としたゲーム画像をモニタ2に表示する(ステップ13)。そして、CPU30は、キーデータを取得し(ステップ14)、当該キーデータに応じて仮想ゲーム世界におけるプレイヤキャラクタPCの位置および方向を算出して、プレイヤキャラクタ位置データDbおよびプレイヤキャラクタ方向データDcを更新し(ステップ15)、処理を次のステップに進める。例えば、図8に示したようなゲーム画像がモニタ2に表示される場合、プレイヤが十字キー72aの右方向を押下することに応じて、プレイヤキャラクタPCの方向が右方向となり、当該右方向に向かって一定速度でゲームフィールドを移動する。そして、プレイヤが十字キー72aの押下を解除することに応じて、プレイヤキャラクタPCが現在の方向を維持してゲームフィールド上で停止する。上記ステップ15では、例えば、このようなプレイヤキャラクタPCの移動に応じた位置および方向が算出される。
次に、CPU30は、上記ステップ12で格納された痕跡描画位置から現在のプレイヤキャラクタPCの位置までの仮想ゲーム世界における距離が、所定距離以上か否かを判断する(ステップ16)。そして、CPU30は、痕跡描画位置からプレイヤキャラクタPCの位置までの距離が所定距離以上の場合、処理を次のステップ17に進める。一方、CPU30は、痕跡描画位置からプレイヤキャラクタPCの位置までの距離が所定距離未満の場合、上記ステップ13に戻って処理を繰り返す。
ステップ17において、CPU30は、描画処理を行って、処理を次のステップに進める。以下、図12を参照して、CPU30が行う描画処理について説明する。
図12において、CPU30は、描画領域をクリアする(ステップ41)。例えば、CPU30は、描画領域のRGBA値をRGBA={0,0,0,0}にして、描画領域をクリアする。次に、CPU30は、痕跡形状テクスチャデータDeに格納されている痕跡形状テクスチャTsaの大きさに基づいて、描画スクリーンSaの大きさを算出して(ステップ42)、描画スクリーンSaを描画領域に設定する。そして、CPU30は、仮想カメラの視線がゲームフィールド(地面)の鉛直方向となるカメラ行列C1を算出し(ステップ43)、カメラ行列データDjに格納して、処理を次のステップに進める。
次に、CPU30は、前回の処理で作成した痕跡形状テクスチャTsaを描画スクリーンSaに描画して(ステップ44)、処理を次のステップに進める。例えば、図14Aに示すように、痕跡形状テクスチャTsaに痕跡Mt0が描かれている場合、上記ステップ44で描画スクリーンSaに痕跡Mt0が描画される。
次に、CPU30は、描画スクリーンSa全体を所定量だけ白に近づけて(ステップ45)、処理を次のステップに進める。例えば、CPU30は、輝度Iおよびα値Aでテクスチャ化するフォーマットの場合、I=255およびA=255を白、I=0およびA=255を黒とする。この場合、CPU30は、描画スクリーンSa全体に対して輝度Iの値を所定量増加させることによって、描画スクリーンSa全体を白に近づける。上記ステップ45の処理によって、図14Bに示すように描画スクリーンSaに描画された痕跡Mt0が所定量だけ白に近づいて描画される。なお、図14Bでは、白に近づいた痕跡Mt0を斜線領域で示している。
次に、CPU30は、カメラ行列C1に基づいて、痕跡描画位置から現在のプレイヤキャラクタPCの位置までの痕跡を描画スクリーンSaに描画して(ステップ46)、処理を次のステップに進める。例えば、図14Cに示すように、描画スクリーンSaに描かれた痕跡Mt0の前端から、新たな痕跡Mt1が黒で描画される。
ここで、仮想ゲーム世界と描画スクリーンSaとの位置関係を算出する一例について説明する。図13を用いて説明したように、縦Vy横Vxの仮想ゲーム世界の地面に対応して、縦Ty横Txの痕跡形状テクスチャTsaが設定されている。また、両者の中央には、それぞれ同じ地点を示す基準点PvおよびPtが設定されている。つまり、縦Vy横Vx内の仮想ゲーム世界の地面における位置に対応する痕跡形状テクスチャTsa内の位置は、両者の縦横それぞれの比(すなわち、Vy:TyおよびVx:Tx)を用いれば、算出することが可能である。例えば、仮想ゲーム世界の地面における基準点Pvを基準とした縦y0および横x0の位置は、痕跡形状テクスチャTsaにおける基準点Ptを基準とした縦y0*(Ty/Vy)および横x0*(Tx/Vx)に対応する。このような関係式によれば、図13に示す仮想ゲーム世界の痕跡Mは、痕跡形状テクスチャTsaにおける痕跡Mtに対応する。一方、描画スクリーンSaは、痕跡形状テクスチャTsaの大きさに応じて設定され、上記ステップ44において痕跡形状テクスチャTsaが描画スクリーンSaに描画されている。したがって、上記ステップ46では、このような関係式を用いて、仮想ゲーム世界における位置データに対応する描画スクリーンSa上の位置を算出することが可能となる。
次に、CPU30は、上記ステップ46で描画した描画スクリーンSaをキャプチャしてテクスチャ化し、新たな痕跡形状テクスチャTsaとして痕跡形状テクスチャデータDeを更新する(ステップ47)。例えば、図14Dに示すように、痕跡Mt0およびMt1が描かれた描画スクリーンSaがキャプチャされて、新たな痕跡形状テクスチャTsaが生成される。図14Aおよび図14Dから明らかなように、痕跡形状テクスチャTsaに描かれていた痕跡が所定量だけ白に近づけられ、さらにプレイヤキャラクタPCの移動に応じて新たな痕跡が追記されて新たな痕跡形状テクスチャTsaが作成される。
次に、CPU30は、描画領域をクリアする(ステップ48)。例えば、CPU30は、描画領域のRGBA値をRGBA={0,0,0,0}にして、描画領域をクリアする。なお、後述する処理によって、描画領域が上書きされてスクリーンSaの描画内容が消去される場合、当該ステップ48の処理を省略してもかまわない。次に、CPU30は、モニタ2に表示するゲーム画像のサイズに基づいて、当該ゲーム画像を生成するための描画スクリーンSbの大きさを算出して(ステップ49)、描画スクリーンSbを描画領域に設定する。そして、CPU30は、描画スクリーンSbに対応する仮想カメラのカメラ行列C2を算出し(ステップ50)、カメラ行列データDjに格納して、処理を次のステップに進める。
次に、CPU30は、痕跡形状テクスチャデータDeに格納された痕跡形状テクスチャTsaが示す痕跡Mtの形状やその濃淡に応じて、通常地面テクスチャおよび痕跡地面テクスチャとを描画したい地面の大きさに応じて合成し(ステップ51)、処理を次のステップに進める。
図15に示すように、痕跡地面テクスチャデータDgには、痕跡部分を表現するための痕跡地面テクスチャTtが格納されており、痕跡形状テクスチャTsaが示す痕跡Mtが黒いほど、痕跡地面テクスチャTtが示す色に近づいて表現される。また、通常地面テクスチャデータDfには、痕跡以外の通常地面を表現するための通常地面テクスチャTgが格納されており、痕跡形状テクスチャTsaが示す痕跡Mtが白いほど、通常地面テクスチャTgが示す色に近づいて表現される。これら痕跡地面テクスチャTt、通常地面テクスチャTg、および痕跡形状テクスチャTsaを組み合わせて合成することによって、合成テクスチャTcが得られ、合成テクスチャデータDhに格納される。
次に、CPU30は、上記ステップ51で作成した合成テクスチャTcを描画スクリーンSbに描画する(ステップ52)。そして、CPU30は、地面以外のオブジェクトを描画スクリーンSbに描画してゲーム画像をモニタ2に表示して(ステップ53)、当該サブルーチンによる処理を終了する。なお、ステップ52においては、仮想ゲーム世界における地面形状を示す地面ポリゴンに、合成テクスチャTcをマッピングして行ってもかまわない。
図10に戻り、CPU30は、上記ステップ17の描画処理の後、ゲームを終了するか否かを判断する(ステップ18)。ゲームを終了する条件としては、例えば、ゲームオーバーとなる条件が満たされたことや、プレイヤがゲームを終了する操作を行ったこと等がある。CPU30は、ゲームを終了しない場合に上記ステップ12に戻って処理を繰り返し、ゲームを終了する場合に当該フローチャートによる処理を終了する。
このように、上記実施形態に係るゲーム装置3は、仮想ゲーム世界の描画に先行して、痕跡のみを描画し、描画されたイメージをテクスチャ化して地面と合成して表示される。したがって、痕跡を描画するために必要な処理速度やメモリコストを、描画される痕跡のサイズに関係なく一定に保つことができる。また、痕跡がゲームフィールドに合成されてテクスチャ化されるため、完全にゲームフィールドにフィットした痕跡の描画を行うことが可能となる。
なお、ゲームフィールドに描く痕跡の図形は、図8に示したような複数図形群(塗りつぶした複数の矩形が連続した形態)や図15に示したような連続曲線等、様々な図形で実現可能である。例えば、上記複数図形群は、ハートマークや多角形等の図形が等間隔で連続して描かれてもかまわない。さらに、等間隔で連続的に並べることによって一方向を示すことができる図形(例えば、矢印図形、奇数角形、ハートマーク等)で痕跡を描くことによって、プレイヤキャラクタPCが移動した方向を痕跡で示すことができる。また、プレイヤキャラクタPCの種別に応じて、痕跡の図形を変えてもかまわない。
例えば、同じ図形が等間隔で連続して描かれる複数図形群で痕跡が描画される場合、上記ステップ16の判定基準となる所定距離を1つの当該図形を追加して描くことが可能な距離に設定する。このような設定によって、プレイヤキャラクタPCが上記所定距離を移動する毎に、1つの新たな痕跡図形が完全な形でゲームフィールドに出現するような描画処理が可能となる。
また、連続曲線等で痕跡が描画される場合、プレイヤキャラクタPCの移動に応じてリアルタイムに痕跡が出現する描画処理が可能となる。この場合、上記ステップ16の判定基準となる所定距離を、描画処理の最小単位となる距離(例えば、1画素)や0に設定する。このような設定によって、プレイヤキャラクタPCが移動する毎に、途切れることなくプレイヤキャラクタPCの真下まで痕跡が描かれるような描画処理が可能となる。
また、上述したステップ17の描画処理を繰り返すことによって、痕跡は、その後端側を時間経過と共に徐々に薄くして描画され、最終的には時間の経過に伴って当該後端側から痕跡が消滅するように表現される。しかしながら、本発明では、ゲームフィールド上の痕跡が出現時の状態で維持されて、時間経過と共に消滅しないような描画も可能である。例えば、上記ステップ45の処理を省略することによって、痕跡が時間経過と共に消滅しない描画が可能となる。
また、本発明の本質的な技術は、痕跡をゲームフィールドに合成したテクスチャを描画処理に用いるところにあるので、プレイヤキャラクタPCを移動させる操作方法は、他の方法でもかまわない。例えば、十字キー72aの操作によってプレイヤキャラクタPCの方向を決定して、他の操作部72の押下に応じた移動速度でプレイヤキャラクタPCが移動する態様でもかまわない。また、十字キー72a以外の操作部72の押下に応じて、プレイヤキャラクタPCの移動方向や移動速度が決定される態様でもかまわない。
また、上述したように、コントローラ7には撮像情報演算部74や加速度センサ701が搭載されている。例えば、撮像情報演算部74がマーカ8Lおよび8Rを撮像対象とした撮像画像を用いれば、モニタ2に対してコントローラ7で指し示した位置を算出することが可能となる。このようなコントローラ7で指し示した位置を仮想ゲーム世界上の位置に変換して、当該位置を移動目標としてプレイヤキャラクタPCを移動させてもかまわない。また、上述したように、加速度センサ701から出力される加速度の信号に対して追加の処理を行うことによって、コントローラ7の姿勢、動作、位置等を算出することが可能である。このようなコントローラ7の姿勢、動作、位置等に基づいて、プレイヤキャラクタPCを移動させてもかまわない。
また、上述した説明では、本発明の描画処理を実行するゲーム装置本体5をゲームシステム1に適用した例を説明したが、一般的なパーソナルコンピュータ等の情報処理装置にも適用することができる。
また、上述した説明では、コントローラ7とゲーム装置本体5とが無線通信によって接続された態様を用いたが、コントローラ7とゲーム装置本体5とがケーブルを介して電気的に接続されてもかまわない。この場合、コントローラ7に接続されたケーブルをゲーム装置本体5の接続端子に接続する。
また、上述したコントローラ7の形状や、それらに設けられている操作部72の形状、数、および設置位置等は、単なる一例に過ぎず他の形状、数、および設置位置であっても、本発明を実現できることは言うまでもない。
また、本発明のゲームプログラムは、光ディスク4等の外部記憶媒体を通じてゲーム装置本体5に供給されるだけでなく、有線または無線の通信回線を通じてゲーム装置本体5に供給されてもよい。また、ゲームプログラムは、ゲーム装置本体5内部の不揮発性記憶装置に予め記録されていてもよい。なお、ゲームプログラムを記憶する情報記憶媒体としては、CD−ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体の他に、不揮発性半導体メモリでもよい。
本発明に係るゲームプログラムおよびゲーム装置は、痕跡を描画するために必要な処理速度やメモリコストを描画される痕跡のサイズに関係なく一定に保つことができ、ゲームフィールド等に痕跡を表示するゲーム装置やゲームプログラムとして有用である。
本発明の一実施形態に係るゲームシステム1を説明するための外観図 図1のゲーム装置本体5の機能ブロック図 図1のコントローラ7の上面後方から見た斜視図 図3のコントローラ7を下面後方から見た斜視図 図3のコントローラ7の上筐体を外した状態を示す斜視図 図4のコントローラ7の下筐体を外した状態を示す斜視図 図3のコントローラ7の構成を示すブロック図 図1のモニタ2の表示画面に表示されるゲーム画像の一例を示す図 図1のゲーム装置本体5のメインメモリ33に記憶される主なデータを示す図 図1のゲーム装置本体5において実行されるゲーム処理の流れを示すフローチャート 図10におけるステップ11の初期化処理の詳細な動作を示すサブルーチン 図10におけるステップ17の描画処理の詳細な動作を示すサブルーチン 仮想ゲーム世界と痕跡形状テクスチャTsaとの関係の一例を示す図 図12に示す描画処理の動作に応じて、痕跡形状テクスチャを生成するまでの第1段階の一例を示す図 図12に示す描画処理の動作に応じて、痕跡形状テクスチャを生成するまでの第2段階の一例を示す図 図12に示す描画処理の動作に応じて、痕跡形状テクスチャを生成するまでの第3段階の一例を示す図 図12に示す描画処理の動作に応じて、痕跡形状テクスチャを生成するまでの第4段階の一例を示す図 図12に示す描画処理の動作に応じて、合成テクスチャを生成する一例を示す図
符号の説明
1…ゲームシステム
2…モニタ
2a、706…スピーカ
3…ゲーム装置
30…CPU
31…メモリコントローラ
32…GPU
33…メインメモリ
34…DSP
35…ARAM
36…コントローラI/F
37…ビデオI/F
38…フラッシュメモリ
39…オーディオI/F
40…ディスクドライブ
41…ディスクI/F
4…光ディスク
5…ゲーム装置本体
6…通信ユニット
7…コントローラ
71…ハウジング
72…操作部
73…コネクタ
74…撮像情報演算部
741…赤外線フィルタ
742…レンズ
743…撮像素子
744…画像処理回路
75…通信部
751…マイコン
752…メモリ
753…無線モジュール
754…アンテナ
700…基板
701…加速度センサ
702…LED
703…水晶振動子
704…バイブレータ
707…サウンドIC
708…アンプ
8…マーカ

Claims (8)

  1. 仮想ゲーム世界を移動するオブジェクトを表示装置に表示するゲーム装置のコンピュータで実行されるゲームプログラムであって、
    仮想ゲーム世界における前記オブジェクトの配置位置を算出するオブジェクト位置算出ステップと、
    前記配置位置の変化に応じて、前記オブジェクトが仮想ゲーム世界におけるゲームフィールド上を通過した痕跡の形状を示す痕跡形状情報を更新してメモリに記憶する痕跡形状情報更新ステップと、
    前記痕跡の有無別にそれぞれ用意された仮想ゲーム世界におけるゲームフィールドの画像を、前記痕跡形状情報に基づいて合成することによって地面テクスチャを生成する地面テクスチャ生成ステップと、
    前記地面テクスチャを用いて、前記仮想ゲーム世界におけるゲームフィールドを描画するゲームフィールド描画ステップと、
    前記配置位置に前記オブジェクトを配置するオブジェクト配置ステップと、
    前記オブジェクトが配置された仮想ゲーム世界を前記表示装置へ表示する表示制御ステップとを、前記コンピュータに実行させる、ゲームプログラム。
  2. 前記オブジェクト位置算出ステップ、前記痕跡形状情報更新ステップ、前記地面テクスチャ生成ステップ、前記ゲームフィールド描画ステップ、および前記表示制御ステップは、所定の処理周期毎に前記コンピュータによって繰り返し実行される、請求項1に記載のゲームプログラム。
  3. 前記痕跡形状情報は、前記痕跡が有るゲームフィールドの画像を前記痕跡がないゲームフィールドの画像に合成する合成割合を示す情報である、請求項1に記載のゲームプログラム。
  4. 前記痕跡形状情報は、前記痕跡が有るゲームフィールドの画像を前記痕跡がないゲームフィールドの画像に合成する領域を示す情報である、請求項1に記載のゲームプログラム。
  5. 前記痕跡形状情報は、前記領域に前記痕跡が有るゲームフィールドの画像を合成する合成割合をさらに示す情報である、請求項4に記載のゲームプログラム。
  6. 前記痕跡形状情報更新ステップでは、既に描画されて前記表示装置に表示された痕跡を示す箇所に対して、前記痕跡が有るゲームフィールドの画像を合成する前記合成割合を低くして前記痕跡形状情報が更新される、請求項3または5に記載のゲームプログラム。
  7. 前記痕跡形状情報は、前記ゲームフィールドに対して前記痕跡がある領域を第1の色で示し、前記痕跡がない領域を当該第1の色とは異なる第2の色で示し、前記痕跡が有るゲームフィールドの画像を前記痕跡がないゲームフィールドの画像に合成する合成割合を当該第1の色の濃度で示す画像データである、請求項1に記載のゲームプログラム。
  8. 仮想ゲーム世界を移動するオブジェクトを表示装置に表示するゲーム装置であって、
    仮想ゲーム世界における前記オブジェクトの配置位置を算出するオブジェクト位置算出手段と、
    前記配置位置の変化に応じて、前記オブジェクトが仮想ゲーム世界におけるゲームフィールド上を通過した痕跡の形状を示す痕跡形状情報を更新して記憶手段に記憶する痕跡形状情報更新手段と、
    前記痕跡の有無別にそれぞれ用意された仮想ゲーム世界におけるゲームフィールドの画像を、前記痕跡形状情報に基づいて合成することによって地面テクスチャを生成する地面テクスチャ生成手段と、
    前記地面テクスチャを用いて、前記仮想ゲーム世界におけるゲームフィールドを描画するゲームフィールド描画手段と、
    前記配置位置に前記オブジェクトを配置するオブジェクト配置手段と、
    前記オブジェクトが配置された仮想ゲーム世界を前記表示装置へ表示する表示制御手段とを備える、ゲーム装置。
JP2006283112A 2006-10-17 2006-10-17 ゲームプログラムおよびゲーム装置 Active JP5013511B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006283112A JP5013511B2 (ja) 2006-10-17 2006-10-17 ゲームプログラムおよびゲーム装置
US11/633,612 US7834895B2 (en) 2006-10-17 2006-12-05 Storage medium storing game program, and game device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006283112A JP5013511B2 (ja) 2006-10-17 2006-10-17 ゲームプログラムおよびゲーム装置

Publications (2)

Publication Number Publication Date
JP2008099755A true JP2008099755A (ja) 2008-05-01
JP5013511B2 JP5013511B2 (ja) 2012-08-29

Family

ID=39302672

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006283112A Active JP5013511B2 (ja) 2006-10-17 2006-10-17 ゲームプログラムおよびゲーム装置

Country Status (2)

Country Link
US (1) US7834895B2 (ja)
JP (1) JP5013511B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011530131A (ja) * 2008-08-04 2011-12-15 ソニー コンピュータ エンタテインメント ヨーロッパ リミテッド 電子文書閲覧装置および方法
JP2012108790A (ja) * 2010-11-18 2012-06-07 Nintendo Co Ltd 画像処理プログラム、画像処理装置、画像処理方法、画像処理システム
JP2016022252A (ja) * 2014-07-23 2016-02-08 グリー株式会社 ゲームプログラム、コンピュータの制御方法、およびコンピュータ
JP2016028672A (ja) * 2015-03-12 2016-03-03 グリー株式会社 ゲームプログラム、コンピュータの制御方法、およびコンピュータ
WO2018164129A1 (ja) * 2017-03-09 2018-09-13 株式会社カプコン ゲームシステム、ゲームシステムの制御方法、および不揮発性記録媒体

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000298733A (ja) * 1996-11-22 2000-10-24 Sega Enterp Ltd ゲーム装置、画像データの形成方法及び媒体
JP2003067770A (ja) * 2001-08-22 2003-03-07 Nintendo Co Ltd 画像生成装置および画像生成プログラム
JP2003123089A (ja) * 2001-10-11 2003-04-25 Konami Co Ltd 画像表示プログラム、画像表示方法及びビデオゲーム装置
JP2003325969A (ja) * 2002-05-17 2003-11-18 Nintendo Co Ltd ビデオゲーム装置およびその制御方法ならびにゲームプログラム
JP2005025771A (ja) * 1996-07-25 2005-01-27 Sega Corp 遊戯装置
JP2005122479A (ja) * 2003-10-16 2005-05-12 Namco Ltd プログラム、情報記憶媒体及び画像生成装置
JP2005128687A (ja) * 2003-10-22 2005-05-19 Namco Ltd プログラム、情報記憶媒体、及び画像生成システム
JP2006285509A (ja) * 2005-03-31 2006-10-19 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7382373B2 (en) * 2003-12-19 2008-06-03 Intel Corporation Method and apparatus for producing animation
US20050231512A1 (en) * 2004-04-16 2005-10-20 Niles Gregory E Animation of an object using behaviors
US20060077210A1 (en) * 2004-10-13 2006-04-13 Morris John D Rasterizing stacked graphics objects from top to bottom

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005025771A (ja) * 1996-07-25 2005-01-27 Sega Corp 遊戯装置
JP2000298733A (ja) * 1996-11-22 2000-10-24 Sega Enterp Ltd ゲーム装置、画像データの形成方法及び媒体
JP2003067770A (ja) * 2001-08-22 2003-03-07 Nintendo Co Ltd 画像生成装置および画像生成プログラム
JP2003123089A (ja) * 2001-10-11 2003-04-25 Konami Co Ltd 画像表示プログラム、画像表示方法及びビデオゲーム装置
JP2003325969A (ja) * 2002-05-17 2003-11-18 Nintendo Co Ltd ビデオゲーム装置およびその制御方法ならびにゲームプログラム
JP2005122479A (ja) * 2003-10-16 2005-05-12 Namco Ltd プログラム、情報記憶媒体及び画像生成装置
JP2005128687A (ja) * 2003-10-22 2005-05-19 Namco Ltd プログラム、情報記憶媒体、及び画像生成システム
JP2006285509A (ja) * 2005-03-31 2006-10-19 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011530131A (ja) * 2008-08-04 2011-12-15 ソニー コンピュータ エンタテインメント ヨーロッパ リミテッド 電子文書閲覧装置および方法
US8907970B2 (en) 2008-08-04 2014-12-09 Sony Computer Entertainment Europe Limited Apparatus and method of viewing electronic documents
JP2012108790A (ja) * 2010-11-18 2012-06-07 Nintendo Co Ltd 画像処理プログラム、画像処理装置、画像処理方法、画像処理システム
JP2016022252A (ja) * 2014-07-23 2016-02-08 グリー株式会社 ゲームプログラム、コンピュータの制御方法、およびコンピュータ
JP2016028672A (ja) * 2015-03-12 2016-03-03 グリー株式会社 ゲームプログラム、コンピュータの制御方法、およびコンピュータ
WO2018164129A1 (ja) * 2017-03-09 2018-09-13 株式会社カプコン ゲームシステム、ゲームシステムの制御方法、および不揮発性記録媒体
JP2018143690A (ja) * 2017-03-09 2018-09-20 株式会社カプコン ゲームプログラム及びゲームシステム
CN110290844A (zh) * 2017-03-09 2019-09-27 喀普康有限公司 游戏系统、游戏系统的控制方法以及非易失性记录介质
US10994204B1 (en) 2017-03-09 2021-05-04 Capcom Co., Ltd. Game system, method for controlling game system, and non-transitory computer readable medium
CN110290844B (zh) * 2017-03-09 2022-09-20 喀普康有限公司 游戏系统、游戏系统的控制方法以及非易失性记录介质

Also Published As

Publication number Publication date
JP5013511B2 (ja) 2012-08-29
US7834895B2 (en) 2010-11-16
US20080088645A1 (en) 2008-04-17

Similar Documents

Publication Publication Date Title
JP5294442B2 (ja) ゲーム装置およびゲームプログラム
US8797264B2 (en) Image processing apparatus and storage medium storing image processing program
JP5376874B2 (ja) 画像処理プログラムおよび画像処理装置
JP5173174B2 (ja) ゲーム装置、ゲームプログラム、ゲームシステム、およびゲーム処理方法
JP5004518B2 (ja) ゲーム装置、ゲームプログラム、ゲームシステム、およびゲーム処理方法
JP4684147B2 (ja) 傾き算出装置、傾き算出プログラム、ゲーム装置およびゲームプログラム
US7831064B2 (en) Position calculation apparatus, storage medium storing position calculation program, game apparatus, and storage medium storing game program
JP4795087B2 (ja) ゲーム装置およびゲームプログラム
JP4547346B2 (ja) 傾き算出装置および傾き算出プログラムならびにゲーム装置およびゲームプログラム
JP4895352B2 (ja) 対象選択プログラム、対象選択装置、対象選択システム、および対象選択方法
US20080311989A1 (en) Game controller and game system
JP4919887B2 (ja) 画像処理プログラムおよび画像処理装置
JP5378133B2 (ja) 鳥瞰マップリソース生成プログラム、鳥瞰マップ表示プログラム、鳥瞰マップリソース生成装置、および、鳥瞰マップ表示装置
JP2008036167A (ja) ゲームプログラムおよびゲーム装置
JP5013511B2 (ja) ゲームプログラムおよびゲーム装置
JP2008302130A (ja) 画像処理プログラムおよび画像処理装置
JP5797046B2 (ja) ポインティングシステム、情報処理システム、座標系等の設定方法、情報処理装置、および情報処理プログラム
JP2007236469A (ja) ゲームプログラム、ゲームシステム
JP4917347B2 (ja) ゲーム装置およびゲームプログラム
JP5274298B2 (ja) 描画処理装置、および、描画処理プログラム
JP5350612B2 (ja) ゲームプログラム、ゲーム装置、ゲームシステムおよびゲーム処理方法
JP4151983B2 (ja) 移動方向算出装置および移動方向算出プログラム
JP4964688B2 (ja) 画像処理プログラムおよび画像処理装置
JP5339490B2 (ja) ゲーム装置およびゲームプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090925

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110902

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120530

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120601

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

Free format text: PAYMENT UNTIL: 20150615

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5013511

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250