JP2004041593A - Program and method for data reading, video game device, and computer readable recording medium - Google Patents

Program and method for data reading, video game device, and computer readable recording medium Download PDF

Info

Publication number
JP2004041593A
JP2004041593A JP2002206146A JP2002206146A JP2004041593A JP 2004041593 A JP2004041593 A JP 2004041593A JP 2002206146 A JP2002206146 A JP 2002206146A JP 2002206146 A JP2002206146 A JP 2002206146A JP 2004041593 A JP2004041593 A JP 2004041593A
Authority
JP
Japan
Prior art keywords
data
compressed
read
game state
processing load
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
JP2002206146A
Other languages
Japanese (ja)
Other versions
JP3566953B2 (en
Inventor
Kentaro Nagayama
永山 賢太朗
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.)
Konami Computer Entertainment Studios Inc
Konami Group Corp
Original Assignee
Konami Corp
Konami Computer Entertainment Studios Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Konami Corp, Konami Computer Entertainment Studios Inc filed Critical Konami Corp
Priority to JP2002206146A priority Critical patent/JP3566953B2/en
Publication of JP2004041593A publication Critical patent/JP2004041593A/en
Application granted granted Critical
Publication of JP3566953B2 publication Critical patent/JP3566953B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a program and a method for data reading, and a video game device selecting compressed data or uncompressed data according to a game state and reading the data at high speed. <P>SOLUTION: A CPU (central processing unit) 1 determines whether the compressed data recording the data in a compressed state or the uncompressed data recording the data in an uncompressed state should be read according to the game state. When determining to read the compressed data, the CPU reads the developed data in a main memory 5, and when determining to read the uncompressed data, the CPU reads the uncompressed data in the main memory 5. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明は、ビデオゲームに使用されるデータを読み込むためのデータ読込プログラム、データ読込方法、ビデオゲーム装置及びコンピュータ読み取り可能な記録媒体に関するものである。
【0002】
【従来の技術】
従来、ビデオゲームに用いられるデータは、主にCD−ROMやDVD−ROMなどのコンピュータ読み取り可能な記録媒体によって提供され、このような記録媒体には、あらかじめデータを圧縮した状態で記録する場合と、データを圧縮せずに非圧縮の状態で記録する場合とがある。ビデオゲームの開発者は演算コストなどを考慮して、データを圧縮した状態で記録するか、非圧縮の状態で記録するかを決定する。記録媒体には、データを圧縮した状態の圧縮データ又はデータを圧縮しない非圧縮の状態の非圧縮データが記録されている。例えば、あるデータが圧縮した状態で記録されている場合、同じデータが非圧縮の状態で記録されていることはない。同様に、あるデータが非圧縮の状態で記録されている場合、同じデータが圧縮した状態で記録されていることはない。つまり、記録媒体には、一つのデータに関して圧縮又は非圧縮のうちのいずれかの状態でのみ記録されている。
【0003】
【発明が解決しようとする課題】
データを圧縮データとして記録した場合、読み込むデータ量が非圧縮データに比べて少ないので記録媒体にアクセスする時間が短縮される。しかしながら、圧縮されたデータはメモリ上に展開する必要があり、データをメモリ上に展開しない場合に比べて余分に演算コストが必要となるという問題がある。また、圧縮されたデータをメモリ上に展開するための記憶領域の他に、圧縮されたデータ自身を記憶するための記憶領域が必要となる。
【0004】
一方、データを非圧縮データとして記録した場合、データはメモリ上に展開する必要がなく、当該データを展開するための演算コストがかからない。しかしながら、データを非圧縮データとして記録した場合、指定したデータのファイルをそのまま読み込むので記録媒体に対するアクセス時間を含む読み取り時間がかかるという問題がある。
【0005】
例えば、ゲーム開始前のあらかじめ決められたデモ画像を表示する場合等のように、あらかじめ演算処理装置にどれだけの処理負荷がかかるかがわかっていれば、圧縮データ及び非圧縮データのうちのどちらを用いるかを決定することができる。しかしながら、ビデオゲームでは演算処理装置にかかる処理負荷がゲーム状態に応じて異なり、圧縮データを用いるか、非圧縮データを用いるかをあらかじめ決めることは困難である。
【0006】
例えば、画面に表示するキャラクタの数に応じて演算処理装置の処理負荷は異なり、表示するキャラクタが多い場合は、処理負荷は大きくなり、表示するキャラクタが少ない場合は、処理負荷は小さくなる。表示するキャラクタが多い場合は、非圧縮データを読み込んだ方が高速に読み込むことができ、表示するキャラクタが少ない場合は、圧縮データを読み込んだ方が高速に読み込むことができる。このような、表示されるキャラクタの数は、ユーザの技量によっても変化し、あらかじめ予測することは不可能である。そのため、従来のように圧縮データ又は非圧縮データのうちのいずれかの状態のみで記録する方法では、ゲーム状態に応じた適切なデータを読み込むことができなかった。
【0007】
本発明は、上記の問題を解決するためになされたもので、圧縮データ及び非圧縮データの選択をゲーム状態に応じて行うことができ、高速にデータを読み込むことができるデータ読込プログラム、データ読込方法及びビデオゲーム装置を提供することを目的とするものである。
【0008】
【課題を解決するための手段】
請求項1に記載の本発明は、ビデオゲームに使用されるデータを読み込むためのデータ読込プログラムであって、
前記データを圧縮した状態で記録されている圧縮データ及び前記データを圧縮していない状態で記憶されている非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する判断手段と、
前記判断手段が前記圧縮データを読み込むと判断した場合、当該圧縮データを展開する展開手段と、
前記判断手段が圧縮データを読み込むと判断した場合、前記展開手段によって展開されたデータを読み込み、前記判断手段が非圧縮データを読み込むと判断した場合、前記非圧縮データを読み込む読込手段としてビデオゲーム装置を機能させることを特徴とする。
【0009】
請求項1に記載の本発明に従えば、ビデオゲームに使用されるデータを読み込むためのデータ読込プログラムは、データを圧縮した状態で記録されている圧縮データ及びデータを圧縮していない状態で記憶されている非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する判断手段と、判断手段が圧縮データを読み込むと判断した場合、当該圧縮データを展開する展開手段と、判断手段が圧縮データを読み込むと判断した場合、展開手段によって展開されたデータを読み込み、判断手段が非圧縮データを読み込むと判断した場合、非圧縮データを読み込む読込手段としてビデオゲーム装置を機能させる。
【0010】
すなわち、同一のデータが圧縮された状態の圧縮データ及び非圧縮の状態の非圧縮データとして記憶されており、判断手段によって圧縮データ及び非圧縮データのうちのどちらを読み込むかがゲーム状態に応じて判断され、判断手段によって圧縮データを読み込むと判断された場合、展開手段によって当該圧縮データが展開され、判断手段が圧縮データを読み込むと判断した場合、展開手段によって展開されたデータが読込手段によって読み込まれ、判断手段が非圧縮データを読み込むと判断した場合、非圧縮データが読込手段によって読み込まれる。
【0011】
このように、1のデータに対して圧縮データと非圧縮データとの2種類のデータを記録しておき、圧縮データ及び非圧縮データのうちのどちらを読み込むかがゲーム状態に応じて判断される。圧縮データが読み込まれる場合、データが圧縮されているため、記録媒体にアクセスする時間を短縮することができ、非圧縮データが読み込まれる場合、データを展開する必要がないため、演算処理を短縮することができる。したがって、演算処理の処理負荷に余裕があるゲーム状態では圧縮データを選択し、処理負荷に余裕がないゲーム状態では非圧縮データを選択することで、ゲーム状態に適するデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0012】
請求項2に記載の本発明は、前記ゲーム状態は、現在実行されている第1のゲーム状態と、前記第1のゲーム状態の次に実行される第2のゲーム状態とを含み、
前記判断手段は、前記第1のゲーム状態における現処理負荷と、前記第2のゲーム状態において用いられる圧縮データの展開処理にかかる展開処理負荷とに基づいて前記圧縮データ及び前記非圧縮データのうちのどちらを読み込むかを判断することを特徴とする。
【0013】
請求項2に記載の本発明に従えば、ゲーム状態は、現在実行されている第1のゲーム状態と、第1のゲーム状態の次に実行される第2のゲーム状態とを含み、判断手段によって、第1のゲーム状態における現処理負荷と、第2のゲーム状態において用いられる圧縮データの展開処理にかかる展開処理負荷とに基づいて圧縮データ及び非圧縮データのうちのどちらを読み込むかが判断される。
【0014】
すなわち、現在実行されている第1のゲーム状態における演算処理装置の現処理負荷と、第1のゲーム状態の次に実行される第2のゲーム状態において用いられる圧縮データの展開処理にかかる演算処理装置の展開処理負荷とに基づいて圧縮データ及び非圧縮データのうちのどちらを読み込むかが判断されるため、第1のゲーム状態における処理負荷に応じて適切なデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0015】
請求項3に記載の本発明は、前記ビデオゲームのゲーム状態ごとに各ゲーム状態に要する処理負荷をあらかじめ記憶する第1の記憶手段と、前記圧縮データごとに各圧縮データの展開処理に要する展開処理負荷をあらかじめ記憶する第2の記憶手段としてビデオゲーム装置をさらに機能させることを特徴とする。
【0016】
請求項3に記載の本発明に従えば、ビデオゲームのゲーム状態ごとに各ゲーム状態に要する処理負荷をあらかじめ記憶する第1の記憶手段と、圧縮データごとに各圧縮データの展開処理に要する展開処理負荷をあらかじめ記憶する第2の記憶手段としてビデオゲーム装置をさらに機能させる。
【0017】
すなわち、ビデオゲームのゲーム状態ごとに各ゲーム状態に要する処理負荷をあらかじめ記憶しておくことによって、ビデオゲーム中にゲーム状態に要する処理負荷を計測する必要がなく、処理負荷を軽減することができる。
【0018】
請求項4に記載の本発明は、前記ゲーム状態における処理負荷を計測する計測手段と、
前記計測手段によって計測された処理負荷を履歴として記憶する第3の記憶手段として前記ビデオゲーム装置をさらに機能させ、
前記判断手段は、前記履歴に基づいて前記圧縮データ及び前記非圧縮データのうちのどちらを読み込むかを判断することを特徴とする。
【0019】
請求項4に記載の本発明に従えば、計測手段によって、ゲーム状態における処理負荷が計測され、計測手段によって計測された処理負荷が履歴として第3の記憶手段に記憶され、判断手段によって、第3の記憶手段に記憶されている履歴に基づいて圧縮データ及び非圧縮データのうちのどちらを読み込むかが判断される。
【0020】
すなわち、ゲーム状態における処理負荷をリアルタイムに計測して圧縮ファイル及び非圧縮ファイルのうちのいずれか一方を読み込むことができるので、ゲーム状態に応じた適切なデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0021】
請求項5に記載の本発明は、ビデオゲームに使用されるデータを読み込むデータ読込方法であって、
ビデオゲーム装置が、前記データを圧縮した状態で記録されている圧縮データ及び前記データを圧縮していない状態で記憶されている非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する判断ステップと、
ビデオゲーム装置が、前記判断ステップが前記圧縮データを読み込むと判断した場合、当該圧縮データを展開する展開ステップと、
ビデオゲーム装置が、前記判断ステップが圧縮データを読み込むと判断した場合、前記展開ステップによって展開されたデータを読み込み、前記判断ステップが非圧縮データを読み込むと判断した場合、前記非圧縮データを読み込む読込ステップとを含むことを特徴とする。
【0022】
請求項5に記載の本発明に従えば、ビデオゲームに使用されるデータを読み込むデータ読込方法は、ビデオゲーム装置が、データを圧縮した状態で記録されている圧縮データ及びデータを圧縮していない状態で記憶されている非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する判断ステップと、ビデオゲーム装置が、判断ステップが圧縮データを読み込むと判断した場合、当該圧縮データを展開する展開ステップと、ビデオゲーム装置が、判断ステップが圧縮データを読み込むと判断した場合、展開ステップによって展開されたデータを読み込み、判断ステップが非圧縮データを読み込むと判断した場合、非圧縮データを読み込む読込ステップとを含む。
【0023】
すなわち、同一のデータが圧縮された状態の圧縮データ及び非圧縮の状態の非圧縮データとして記憶されており、判断ステップによって圧縮データ及び非圧縮データのうちのどちらを読み込むかがゲーム状態に応じて判断され、判断ステップによって圧縮データを読み込むと判断された場合、展開ステップによって当該圧縮データが展開され、判断ステップが圧縮データを読み込むと判断した場合、展開ステップによって展開されたデータが読込ステップによって読み込まれ、判断ステップが非圧縮データを読み込むと判断した場合、非圧縮データが読込ステップによって読み込まれる。
【0024】
このように、1のデータに対して圧縮データと非圧縮データとの2種類のデータを記録しておき、圧縮データ及び非圧縮データのうちのどちらを読み込むかがゲーム状態に応じて判断される。圧縮データが読み込まれる場合、データが圧縮されているため、記録媒体にアクセスする時間を短縮することができ、非圧縮データが読み込まれる場合、データを展開する必要がないため、演算処理を短縮することができる。したがって、演算処理の処理負荷に余裕があるゲーム状態では圧縮データを選択し、処理負荷に余裕がないゲーム状態では非圧縮データを選択することで、ゲーム状態に適するデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0025】
請求項6に記載の本発明は、ビデオゲームに使用されるデータを読み込むビデオゲーム装置であって、
前記データを圧縮した状態で記録されている圧縮データ及び前記データを圧縮していない状態で記憶されている非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する判断手段と、
前記判断手段が前記圧縮データを読み込むと判断した場合、当該圧縮データを展開する展開手段と、
前記判断手段が圧縮データを読み込むと判断した場合、前記展開手段によって展開されたデータを読み込み、前記判断手段が非圧縮データを読み込むと判断した場合、前記非圧縮データを読み込む読込手段とを備えることを特徴とする。
【0026】
請求項6に記載の本発明に従えば、ビデオゲームに使用されるデータを読み込むビデオゲーム装置は、データを圧縮した状態で記録されている圧縮データ及びデータを圧縮していない状態で記憶されている非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する判断手段と、判断手段が圧縮データを読み込むと判断した場合、当該圧縮データを展開する展開手段と、判断手段が圧縮データを読み込むと判断した場合、展開手段によって展開されたデータを読み込み、判断手段が非圧縮データを読み込むと判断した場合、非圧縮データを読み込む読込手段とを備える。
【0027】
すなわち、同一のデータが圧縮された状態の圧縮データ及び非圧縮の状態の非圧縮データとして記憶されており、判断手段によって圧縮データ及び非圧縮データのうちのどちらを読み込むかがゲーム状態に応じて判断され、判断手段によって圧縮データを読み込むと判断された場合、展開手段によって当該圧縮データが展開され、判断手段が圧縮データを読み込むと判断した場合、展開手段によって展開されたデータが読込手段によって読み込まれ、判断手段が非圧縮データを読み込むと判断した場合、非圧縮データが読込手段によって読み込まれる。
【0028】
このように、1のデータに対して圧縮データと非圧縮データとの2種類のデータを記録しておき、圧縮データ及び非圧縮データのうちのどちらを読み込むかがゲーム状態に応じて判断される。圧縮データが読み込まれる場合、データが圧縮されているため、記録媒体にアクセスする時間を短縮することができ、非圧縮データが読み込まれる場合、データを展開する必要がないため、演算処理を短縮することができる。したがって、演算処理の処理負荷に余裕があるゲーム状態では圧縮データを選択し、処理負荷に余裕がないゲーム状態では非圧縮データを選択することで、ゲーム状態に適するデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0029】
請求項7に記載の本発明は、ビデオゲームに使用されるデータを記録しているコンピュータ読み取り可能な記録媒体であって、
前記データを圧縮した状態の圧縮データとして記録し、前記データを圧縮していない状態の非圧縮データとして記録していることを特徴とする。
【0030】
請求項7に記載の本発明に従えば、ビデオゲームに使用されるデータを記録しているコンピュータ読み取り可能な記録媒体は、データを圧縮した状態の圧縮データとして記録し、データを圧縮していない状態の非圧縮データとして記録している。
【0031】
すなわち、コンピュータ読み取り可能な記録媒体には、同一のデータが圧縮された状態の圧縮データ及び非圧縮の状態の非圧縮データとして記憶されており、判断手段によって圧縮データ及び非圧縮データのうちのどちらを読み込むかが判断され、圧縮データを読み込むと判断された場合、展開手段によって当該圧縮データが展開され、圧縮データを読み込むと判断された場合、読込手段によって展開されたデータが読み込まれ、非圧縮データを読み込むと判断された場合、読込手段によって非圧縮データが読み込まれる。
【0032】
このように、1のデータに対して圧縮データと非圧縮データとの2種類のデータを記録しておき、圧縮データ及び非圧縮データのうちのどちらを読み込むかがゲーム状態に応じて判断される。圧縮データが読み込まれる場合、データが圧縮されているため、記録媒体にアクセスする時間を短縮することができ、非圧縮データが読み込まれる場合、データを展開する必要がないため、演算処理を短縮することができる。したがって、演算処理の処理負荷に余裕があるゲーム状態では圧縮データを選択し、処理負荷に余裕がないゲーム状態では非圧縮データを選択することで、ゲーム状態に適するデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0033】
【発明の実施の形態】
以下、本発明の一実施の形態によるビデオゲーム装置について図面を参照しながら説明する。
【0034】
図1は本発明の一実施の形態のビデオゲーム装置の構成を示すブロック図である。なお、以下の説明では、ビデオゲーム装置の一例として家庭用ビデオゲーム機を家庭用テレビジョンに接続することによって構成される家庭用ビデオゲーム装置について説明するが、本発明はこの例に特に限定されず、モニタが一体に構成された業務用ビデオゲーム装置、ビデオゲームプログラムを実行することによってビデオゲーム装置として機能するパーソナルコンピュータ等にも同様に適用することができる。
【0035】
図1に示すビデオゲーム装置は家庭用ゲーム機100及び家庭用テレビジョン200を備える。家庭用ゲーム機100には、ビデオゲームプログラム及びゲームデータが記録されたコンピュータ読み出し可能な記録媒体300が装填され、ビデオゲームプログラム及びゲームデータが適宜読み出されてゲームが実行される。
【0036】
家庭用ゲーム機100は、CPU(Central Processing Unit)1、バスライン2、グラフィックスデータ生成プロセッサ3、インターフェース回路(I/F)4、メインメモリ5、ROM(Read Only Memory)6、伸張回路7、パラレルポート8、シリアルポート9、描画プロセッサ10、音声プロセッサ11、デコーダ12、インターフェース回路13、バッファ14〜16、記録媒体ドライブ17、メモリ18及びコントローラ19を含む。家庭用テレビジョン200はテレビジョンモニタ21、増幅回路22及びスピーカ23を含む。
【0037】
CPU1はバスライン2およびグラフィックスデータ生成プロセッサ3に接続されている。バスライン2はアドレスバス、データバス及びコントロールバス等を含み、CPU1、インターフェース回路4、メインメモリ5、ROM6、伸張回路7、パラレルポート8、シリアルポート9、描画プロセッサ10、音声プロセッサ11、デコーダ12及びインターフェース回路13を相互に接続している。
【0038】
描画プロセッサ10はバッファ14に接続される。音声プロセッサ11はバッファ15及び増幅回路22に接続される。デコーダ12はバッファ16及び記録媒体ドライブ17に接続される。インターフェース回路13はメモリ18及びコントローラ19に接続される。
【0039】
家庭用テレビジョン200のテレビジョンモニタ21は描画プロセッサ10に接続される。スピーカ23は増幅回路22に接続される。なお、業務用ビデオゲーム装置の場合、テレビジョンモニタ21、増幅回路22及びスピーカ23は、家庭用ゲーム機100を構成する各ブロックとともに1つの筺体に収納される場合がある。
【0040】
また、ビデオゲーム装置がパーソナルコンピュータやワークステーション等を核として構成されている場合、テレビジョンモニタ21等はコンピュータ用のディスプレイに対応する。また、伸張回路7、描画プロセッサ10及び音声プロセッサ11等は、それぞれ記録媒体300に記録されているプログラムデータの一部又はコンピュータの拡張スロットに搭載される拡張ボード上のハードウエアに対応する。また、インターフェース回路4、パラレルポート8、シリアルポート9及びインターフェース回路13は、コンピュータの拡張スロットに搭載される拡張ボード上のハードウエアに対応する。また、バッファ14〜16はそれぞれメインメモリ5又は拡張メモリの各記憶エリアに対応する。
【0041】
次に、図1に示す各構成要素について説明する。グラフィックスデータ生成プロセッサ3はCPU1のいわばコプロセッサとしての役割を果たす。すなわち、グラフィックスデータ生成プロセッサ3は座標変換や光源計算、例えば固定小数点形式の行列やベクトルの演算を並列処理によって行う。
【0042】
グラフィックスデータ生成プロセッサ3が行う主な処理としては、CPU1から供給される画像データの2次元又は仮想3次元空間内における各頂点の座標データ、移動量データ、回転量データ等に基づいて、所定の表示エリア上における処理対象画像のアドレスデータを求めてCPU1に返す処理、仮想的に設定された光源からの距離に応じて画像の輝度を計算する処理等がある。
【0043】
インターフェース回路4は周辺デバイス、例えばマウスやトラックボール等のポインティングデバイス等のインターフェース用に用いられる。メインメモリ5はRAM(Random Access Memory)等で構成される。ROM6にはビデオゲーム装置のオペレーティングシステムとなるプログラムデータが記憶されている。このプログラムはパーソナルコンピュータのBIOS(Basic Input Output System)に相当する。
【0044】
伸張回路7は動画に対するMPEG(Moving Picture Experts Group)規格や静止画に対するJPEG(Joint Photographic Experts Group)規格に準拠したイントラ符号化によって圧縮された圧縮画像に対して伸張処理を施す。伸張処理はデコード処理(VLC:Variable Length Codeによってエンコードされたデータのデコード)、逆量子化処理、IDCT(Inverse Discrete Cosine Transform)処理、イントラ画像の復元処理等を含む。
【0045】
描画プロセッサ10は所定時間T(例えば、1フレームでT=1/60秒)ごとにCPU1が発行する描画命令に基づいてバッファ14に対する描画処理を行う。
【0046】
バッファ14は例えばRAMで構成され、表示エリア(フレームバッファ)と非表示エリアとに分けられる。表示エリアはテレビジョンモニタ21の表示面上に表示するデータの展開エリアで構成される。非表示エリアはスケルトンを定義するデータ、ポリゴンを定義するモデルデータ、モデルに動きを行わせるアニメーションデータ、各アニメーションの内容を示すパターンデータ、テクスチャデータ及びカラーパレットデータ等の記憶エリアで構成される。
【0047】
ここで、テクスチャデータは2次元の画像データである。カラーパレットデータはテクスチャデータ等の色を指定するためのデータである。CPU1は、これらのデータを記録媒体300から一度に又はゲームの進行状況に応じて複数回に分けて、予めバッファ14の非表示エリアに記録する。
【0048】
また、描画命令としては、ポリゴンを用いて立体的な画像を描画するための描画命令、通常の2次元画像を描画するための描画命令がある。ここで、ポリゴンは多角形の2次元仮想図形であり、例えば、三角形や四角形が用いられる。
【0049】
ポリゴンを用いて立体的な画像を描画するための描画命令は、ポリゴン頂点座標データのバッファ14の表示エリア上における記憶位置を示すポリゴン頂点アドレスデータ、ポリゴンに貼り付けるテクスチャのバッファ14上における記憶位置を示すテクスチャアドレスデータ、テクスチャの色を示すカラーパレットデータのバッファ14上における記憶位置を示すカラーパレットアドレスデータ及びテクスチャの輝度を示す輝度データのそれぞれに対して行われるものである。
【0050】
上記のデータのうち表示エリア上のポリゴン頂点アドレスデータは、グラフィックスデータ生成プロセッサ3がCPU1からの仮想3次元空間上におけるポリゴン頂点座標データを移動量データ及び回転量データに基づいて座標変換することによって2次元上でのポリゴン頂点座標データに置換されたものである。輝度データはCPU1からの上記座標変換後のポリゴン頂点座標データによって示される位置から仮想的に配置された光源までの距離に基づいてグラフィックスデータ生成プロセッサ3によって決定される。
【0051】
ポリゴン頂点アドレスデータはバッファ14の表示エリア上のアドレスを示す。描画プロセッサ10は3個のポリゴン頂点アドレスデータで示されるバッファ14の表示エリアの範囲に対応するテクスチャデータを書き込む処理を行う。
【0052】
ゲーム空間内におけるキャラクタ等の物体は、複数のポリゴンで構成される。CPU1は各ポリゴンの仮想3次元空間上の座標データを対応するスケルトンのベクトルデータと関連させてバッファ14に記憶する。そして、後述するコントローラ19の操作によって、テレビジョンモニタ21の表示画面上でキャラクタを移動させる等の場合において、キャラクタの動きを表現したり、キャラクタを見ている視点位置を変えるときに、以下の処理が行われる。
【0053】
すなわち、CPU1はグラフィックスデータ生成プロセッサ3に対してバッファ14の非表示エリア内に保持している各ポリゴンの頂点の3次元座標データと、スケルトンの座標及びその回転量のデータから求められた各ポリゴンの移動量データ及び回転量データとを与える。
【0054】
グラフィックスデータ生成プロセッサ3は各ポリゴンの頂点の3次元座標データと各ポリゴンの移動量データ及び回転量データとに基づいて各ポリゴンの移動後及び回転後の3次元座標データを順次求める。
【0055】
このようにして求められた各ポリゴンの3次元座標データのうち水平及び垂直方向の座標データは、バッファ14の表示エリア上のアドレスデータ、すなわちポリゴン頂点アドレスデータとして描画プロセッサ10に供給される。
【0056】
描画プロセッサ10は3個のポリゴン頂点アドレスデータによって示されるバッファ14の表示エリア上に予め割り当てられているテクスチャアドレスデータによって示されるテクスチャデータを書き込む。これによって、テレビジョンモニタ21の表示画面上には、多数のポリゴンにテクスチャの貼り付けられた物体が表示される。
【0057】
通常の2次元画像を描画するための描画命令は、頂点アドレスデータ、テクスチャアドレスデータ、テクスチャデータの色を示すカラーパレットデータのバッファ14上における記憶位置を示すカラーパレットアドレスデータ及びテクスチャの輝度を示す輝度データに対して行われる。これらのデータのうち頂点アドレスデータは、CPU1からの2次元平面上における頂点座標データをCPU1からの移動量データ及び回転量データに基づいてグラフィックスデータ生成プロセッサ3が座標変換することによって得られる。
【0058】
音声プロセッサ11は記録媒体300から読み出されたADPCM(AdaptiveDifferential Pulse Code Modulation)データをバッファ15に記憶させ、バッファ15に記憶されたADPCMデータが音源となる。
【0059】
また、音声プロセッサ11は、例えば、周波数44.1kHzのクロック信号に基づき、バッファ15からADPCMデータを読み出す。音声プロセッサ11は、読み出したADPCMデータに対してピッチの変換、ノイズの付加、エンベロープの設定、レベルの設定及びリバーブの付加等の処理を施す。
【0060】
記録媒体300から読み出される音声データがCD−DA(Compact Disk Digital Audio)等のPCM(Pulse Code Modulation)データの場合、音声プロセッサ11はこの音声データをADPCMデータに変換する。また、PCMデータに対するプログラムによる処理は、メインメモリ5上において直接行われる。メインメモリ5上において処理されたPCMデータは、音声プロセッサ11に供給されてADPCMデータに変換される。その後、上述した各種処理が施され、音声がスピーカ23から出力される。
【0061】
記録媒体ドライブ17としては、例えば、DVD−ROMドライブ、CD−ROMドライブ、ハードディスクドライブ、光ディスクドライブ、フレキシブルディスクドライブ、シリコンディスクドライブ、カセット媒体読み取り機等が用いられる。この場合、記録媒体300としては、DVD−ROM、CD−ROM、ハードディスク、光ディスク、フレキシブルディスク、半導体メモリ等が用いられる。
【0062】
記録媒体ドライブ17は記録媒体300から画像データ、音声データ及びプログラムデータを読み出し、読み出したデータをデコーダ12に供給する。デコーダ12は記録媒体ドライブ17からの再生したデータに対してECC(Error Correction Code)によるエラー訂正処理を施し、エラー訂正処理を施したデータをメインメモリ5又は音声プロセッサ11に供給する。
【0063】
メモリ18としては、例えばカード型のメモリが用いられる。カード型のメモリは、例えばゲームを中断した場合において中断時点での状態を保持する等のように、中断時点での各種ゲームパラメータを保持するため等に用いられる。
【0064】
コントローラ19はユーザが種々の操作指令を入力するために使用する操作装置であり、ユーザの操作に応じた操作信号をCPU1に送出する。コントローラ19には、第1ボタン19a、第2ボタン19b、第3ボタン19c、第4ボタン19d、上方向キー19U、下方向キー19D、左方向キー19L、右方向キー19R、L1ボタン19L1、L2ボタン19L2、R1ボタン19R1、R2ボタン19R2、スタートボタン19e、セレクトボタン19f、左スティック19SL及び右スティック19SRが設けられている。
【0065】
上方向キー19U、下方向キー19D、左方向キー19L及び右方向キー19Rは、例えば、キャラクタやカーソルをテレビジョンモニタ21の画面上で上下左右に移動させるコマンドをCPU1に与えるために使用される。
【0066】
スタートボタン19eは記録媒体300からゲームプログラムをロードするようにCPU1に指示するため等に使用される。セレクトボタン19fは記録媒体300からメインメモリ5にロードされるゲームプログラムに関する各種選択をCPU1に指示するため等に使用される。
【0067】
左スティック19SL及び右スティック19SRを除くコントローラ19の各ボタン及び各キーは、外部からの押圧力によって中立位置から押圧されるとオンになり、押圧力が解除されると上記中立位置に復帰してオフになるオンオフスイッチで構成される。
【0068】
左スティック19SL及び右スティック19SRは、いわゆるジョイスティックとほぼ同一構成のスティック型コントローラである。このスティック型コントローラは直立したスティックを有し、このスティックの所定位置を支点として前後左右を含む360°方向に亘って傾倒可能な構成になっている。左スティック19SL及び右スティック19SRは、スティックの傾倒方向及び傾倒角度に応じて、直立位置を原点とする左右方向のx座標及び前後方向のy座標の値を操作信号としてインターフェース回路13を介してCPU1に送出する。
【0069】
なお、第1ボタン19a、第2ボタン19b、第3ボタン19c、第4ボタン19d、L1ボタン19L1、L2ボタン19L2、R1ボタン19R1及びR2ボタン19R2は、記録媒体300からロードされるゲームプログラムに応じて種々の機能に使用される。
【0070】
次に、上記のビデオゲーム装置の概略動作について説明する。記録媒体300が記録媒体ドライブ17に装填されている場合、電源スイッチ(図示省略)がオンされてビデオゲーム装置に電源が投入されると、ROM6に記憶されているオペレーティングシステムに基づいて、記録媒体300からゲームプログラムを読み出すように、CPU1は記録媒体ドライブ17に指示する。これによって、記録媒体ドライブ17は記録媒体300から画像データ、音声データ及びプログラムデータを読み出す。読み出された画像データ、音声データ及びプログラムデータはデコーダ12に供給され、デコーダ12によってエラー訂正処理が各データに施される。
【0071】
デコーダ12によってエラー訂正処理が施された画像データは、バスライン2を介して伸張回路7に供給される。伸張回路7によって上述した伸張処理が行われた画像データはメインメモリ5に書き込まれた後、描画プロセッサ10に供給され、描画プロセッサ10によってバッファ14の非表示エリアに書き込まれる。デコーダ12によってエラー訂正処理が施された音声データは、メインメモリ5又は音声プロセッサ11を介してバッファ15に書き込まれる。デコーダ12によってエラー訂正処理が施されたプログラムデータはメインメモリ5に書き込まれる。
【0072】
以降、CPU1は、メインメモリ5に記憶されているゲームプログラム及びユーザがコントローラ19を用いて指示する内容に基づいてビデオゲームを進行させる。すなわち、ユーザがコントローラ19を用いて指示する内容に基づいて、CPU1は画像処理の制御、音声処理の制御及び内部処理の制御等を適宜行う。
【0073】
画像処理の制御として、例えば、キャラクタに指示されるアニメーションに該当するパターンデータから各スケルトンの座標の計算又はポリゴンの頂点座標データの計算、得られた3次元座標データや視点位置データのグラフィックスデータ生成プロセッサ3への供給、グラフィックスデータ生成プロセッサ3が求めたバッファ14の表示エリア上のアドレスデータや輝度データを含む描画命令の発行等が行われる。
【0074】
音声処理の制御として、例えば、音声プロセッサ11に対する音声出力コマンドの発行、レベル、リバーブ等の指定が行われる。内部処理の制御として、例えばコントローラ19の操作に応じた演算等が行われる。
【0075】
図2は図1に示すビデオゲーム装置の主要機能を示すブロック図である。図2に示すように、ビデオゲーム装置は、機能的には、プログラム実行部31、圧縮データ記憶部32、非圧縮データ記憶部33、プログラム記憶部34及びデータ記憶部35を含む。
【0076】
圧縮データ記憶部32は、記録媒体300等で実現され、データを、圧縮した状態の圧縮データとして記録している。データを圧縮する方法としては、公知の技術が用いられ、例えば、JPEG規格やMPEG規格に準拠した圧縮方式、LZW圧縮方式等が用いられる。
【0077】
非圧縮データ記憶部33は、記録媒体300等で実現され、圧縮データと同一の内容のデータを圧縮していない状態の非圧縮データとして記録している。
【0078】
プログラム実行部31は、CPU1等で実現され、CPU1等がメインメモリ5に記憶されているデータ読込プログラムを実行することによって、データ判断部41、データ展開部42及びデータ読込部43として機能する。
【0079】
データ判断部41は、圧縮データ及び非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する。データ展開部42は、データ判断部41によって圧縮データを読み込むと判断された場合、当該圧縮データを展開し、元のデータに復元する。なお、本実施の形態における伸張処理と展開処理とは同じ処理である。データ読込部43は、データ判断部41が圧縮データを読み込むと判断した場合、データ展開部42によって展開されたデータをデータ記憶部32に読み込み、データ判断部41が非圧縮データを読み込むと判断した場合、非圧縮データをデータ記憶部32に読み込む。
【0080】
データ記憶部35は、メインメモリ5等で実現され、データ読込部43によって読み込まれたデータを記憶する。プログラム記憶部34は、記録媒体ドライブ17等で実現され、コンピュータ読み取り可能な記録媒体300を含む。記録媒体300は、ビデオゲームプログラムとしてデータ読込プログラムを記憶している。なお、記録媒体300からデータ読込プログラムが読み取られ、当該プログラムがメインメモリ5に記録されている場合、メインメモリ5がプログラム記憶部34として機能する。
【0081】
なお、本実施の形態において、データ判断部41は判断手段に相当し、データ展開部42は展開手段に相当し、データ読込部43は読込手段に相当に相当する。
【0082】
図3は、図1に示すビデオゲーム装置によるデータ読込処理の一例を示すフローチャートである。なお、図3に示すデータ読込処理は、CPU1等が記録媒体300に記憶されているデータ読込プログラム等を実行することによって行われる処理である。なお、以下の処理に用いる変数now_loadingは、現在ファイルの読み込みが行われているか否かを判断するものであり、now_loading=0の場合、現在ファイルの読み込みが行われていないことを表し、now_loading=1の場合、現在ファイルの読み込みが行われていることを表す。
【0083】
ステップS1において、CPU1は変数now_loadingの初期化を行い、now_loading=0とする。ステップS2において、CPU1はゲーム進行処理を行う。ゲーム進行処理では、データ読込処理以外のビデオゲームを進行するための種々の処理が行われ、CPU1は、ファイルの読み込み要求を発行する。ステップS3において、CPU1は、now_loading=1であるか否かを判断することで、現在ファイルの読み込みが行われているか否かを判断する。ここで、now_loading=1である(現在ファイルの読み込みが行われている)と判断されると(ステップS3でYES)、ステップS12に移行し、now_loading=1でない(現在ファイルの読み込みが行われていない)と判断されると(ステップS3でNO)、ステップS4に移行する。
【0084】
ステップS4において、CPU1はファイルを読み込むか否かを判断する。すなわち、CPU1はステップS2のゲーム進行処理でファイルの読み込み要求が発行されたか否かを判断する。ここで、ファイルを読み込むと判断されると(ステップS4でYES)、ステップS5に移行し、ファイルを読み込まないと判断されると(ステップS4でNO)、ステップS2に戻ることとなる。
【0085】
ステップS5において、CPU1は、読み込み要求のあったファイルに圧縮データを記録する圧縮ファイルが存在するか否かを判断する。ここで、圧縮ファイルが存在すると判断されると(ステップS5でYES)、ステップS6に移行し、圧縮ファイルが存在しないと判断されると(ステップS5でNO)、非圧縮データを記録する非圧縮ファイルを読み込むため、ステップS10に移行する。
【0086】
ステップS6において、CPU1は、圧縮ファイル及び非圧縮ファイルのうちのどちらのファイルを読み込むかを判断する判断処理を行う。本実施の形態における判断処理方法は、ゲーム状態に応じてあらかじめ圧縮ファイル又は非圧縮ファイルの指定をすることによって行われる。例えば、CPU1の処理負荷が少ないゲーム開始前は圧縮ファイルを読み込み、CPU1の処理負荷が大きくなるゲーム開始後は非圧縮ファイルを読み込むようにあらかじめ指定する。また、画面内に表示されるキャラクタが5体より少ない場合、CPU1の処理負荷が少ないため、圧縮ファイルを読み込むようにあらかじめ指定し、画面内に表示されるキャラクタが5体以上の場合、CPU1の処理負荷が大きいため、非圧縮ファイルを読み込むようにあらかじめ指定する。なお、判断処理については図4を用いて後述する。
【0087】
ステップS7において、CPU1は、圧縮ファイルを読み込むか否かを判断する。ここで、圧縮ファイルを読み込むと判断されると(ステップS7でYES)、ステップS8に移行し、圧縮ファイルを読み込まないと判断されると(ステップS7でNO)、非圧縮ファイルを読み込むため、ステップS10に移行する。
【0088】
ステップS8において、CPU1は非圧縮ファイルの拡張子の変更を行う。具体的には、非圧縮ファイルの拡張子に1文字付加することによって圧縮ファイルを指定する。ファイルは、ファイル名と拡張子とで構成される。ファイル名はファイルの名前を表し、拡張子はファイルの種類を表す。例えば、「file_a」というファイル名のファイルは、非圧縮ファイルでは「dat」という拡張子で表され、圧縮ファイルでは「datp」という拡張子で表される。記録媒体300は、圧縮データを「file_a.datp」というファイル名及び拡張子の圧縮ファイルで記録しており、非圧縮データを「file_a.dat」というファイル名及び拡張子の非圧縮ファイルで記録している。圧縮ファイルを読み込む場合、CPU1は、非圧縮ファイル「file_a.dat」の拡張子である「dat」に「p」という1文字を付加することによって、読み込む圧縮ファイル「file_a.datp」を特定する。このように、非圧縮ファイルの拡張子に1文字付加した圧縮ファイルを記録することによってデータを定義する際の重複をなくすことができる。
【0089】
ステップS9において、CPU1は、記録媒体300からバッファ16への圧縮ファイルの読み込みを開始し、ステップS11に移行する。ステップS10において、CPU1は、記録媒体300からメインメモリ5への非圧縮ファイルの読み込みを開始し、ステップS11に移行する。ステップS11において、CPU1は、記録媒体300からバッファ16又はメインメモリ5へのファイルの読み込みが開始されているため、now_loading=1として、ステップS2に戻る。
【0090】
ステップS3において、now_loading=1であると判断されると(ステップS3でYES)、ステップS12に移行する。ステップS12において、CPU1は、現在読み込み中のデータが圧縮データであるか否かを判断する。ここで、現在読み込み中のデータが圧縮データであると判断されると(ステップS12でYES)、ステップS13に移行し、現在読み込み中のデータが圧縮データではなく、非圧縮データであると判断されると(ステップS12でNO)、ステップS15に移行する。
【0091】
ステップS13において、CPU1は、一定量の圧縮データをバッファ16に読み込んだか否かを判断する。ここで、一定量の圧縮データをバッファ16に読み込んだと判断されると(ステップS13でYES)、ステップS14に移行し、一定量の圧縮データをバッファ16に読み込んでいないと判断されると(ステップS13でNO)、一定量の圧縮データをバッファ16に読み込むまで待機状態となる。なお、一定量の圧縮データをバッファ16に読み込まずに、全ての圧縮データをバッファ16に読み込んだ後、元のデータへの展開処理を行ってもよい。しかし、この場合、全ての圧縮データを読み込むための記憶領域が必要となるため、非効率的である。本実施の形態では、例えば20セクタ(40キロバイト)単位の一定量の圧縮データを一旦バッファ16に読み込み、元のデータへの展開処理が行われる。
【0092】
ステップS14において、伸張回路7は、バッファ16に読み込んだ一定量の圧縮データを元のデータに展開する。この際、圧縮データの圧縮方式に応じて展開処理する。ステップS15において、CPU1は、ステップS12で圧縮データであると判断された場合、ステップS14で展開されたデータをメインメモリ5に読み込み、ステップS12で圧縮データでない(非圧縮データである)と判断された場合、非圧縮データをメインメモリ5に読み込む。
【0093】
ステップS16において、CPU1は、指定されたファイルのデータを全て読み込んだか否かを判断する。ここで、指定されたファイル内のデータを全て読み込んだと判断されると(ステップS16でYES)、ステップS17に移行し、指定されたファイルのデータを全て読み込んでいないと判断されると(ステップS16でNO)、ステップS2に戻り、ゲーム進行処理が行われる。
【0094】
ステップS17において、CPU1は、ファイルの読み込みが終了したため、now_loading=0として、ファイルの読み込み要求を終了してステップS4に移行する。そして、ステップS4において、CPU1は、ファイルの読み込みが終了しているため、ファイルを読み込まないと判断し(ステップS4でNO)、ステップS2に移行することとなり、ゲーム進行処理が行われる。
【0095】
図4は、図3のステップS6における判断処理の一例を示すフローチャートである。なお、図4に示す判断処理は、CPU1等が記録媒体300に記憶されているデータ読込プログラム等を実行することによって行われる処理である。また、図4に示すフローチャートは、画面に表示するキャラクタの数に応じて圧縮データ及び非圧縮データのうちの一方を選択する場合の判断処理である。
【0096】
ステップS101において、CPU1は、現在画面に表示されているキャラクタの数を取得する。ここでのキャラクタとは、コンピュータによって動作が制御されているオブジェクトのことである。画面に表示するキャラクタが多くなると、CPU1にかかる処理負荷が大きくなり、画面に表示するキャラクタが少なくなると、CPU1にかかる処理負荷が小さくなる。
【0097】
ステップS102において、CPU1は、キャラクタの数が5体以上であるか否かを判断する。ここで、キャラクタの数が5体以上であると判断されると(ステップS102でYES)、ステップS103に移行し、キャラクタの数が5体より少ないと判断されると(ステップS102でNO)、ステップS104に移行する。なお、ここでの判断基準となるキャラクタの数は5体に限らず、CPU1の処理速度に応じて適宜変更可能である。
【0098】
ステップS103において、CPU1は圧縮ファイルを読み込むと決定し、リターンする。ステップS104において、CPU1は非圧縮ファイルを読み込むと決定し、リターンする。
【0099】
このように、1のデータに対して圧縮データと非圧縮データとの2種類のデータを記録しておき、圧縮データ及び非圧縮データのうちのどちらを読み込むかがゲーム状態に応じて判断される。圧縮データが読み込まれる場合、データが圧縮されているため、記録媒体300にアクセスする時間を短縮することができ、非圧縮データが読み込まれる場合、データを展開する必要がないため、演算処理を短縮することができる。したがって、演算処理の処理負荷に余裕があるゲーム状態(例えば表示されているキャラクタが5体より少ない)では圧縮データを選択し、処理負荷に余裕がないゲーム状態(例えば表示されているキャラクタが5体以上)では非圧縮データを選択することで、ゲーム状態に適した圧縮ファイル及び非圧縮ファイルのいずれか一方を読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0100】
なお、本実施の形態では、画面に表示されるキャラクタの数に応じて圧縮データ及び非圧縮データのうちのいずれか一方を選択するとしたが、本発明は特にこれに限定されず、ビデオゲームにおけるゲームシーン又はステージに応じて圧縮データ及び非圧縮データのうちのいずれか一方を選択してもよい。例えば、演算量の少ないステージに関するステージデータを読み込む場合には圧縮ファイルを選択する。砂漠を表現するステージなどは、オブジェクトの数が少ないため、市街地などを表現するステージに比べて演算量は少なくてすむ。そこで、演算量の少ないステージでは圧縮データを選択するようにし、演算量の多いステージでは非圧縮データを選択するようにする。なお、ゲームシーンとはビデオゲームの一場面を表し、ステージとはビデオゲームをストーリーに応じて複数に分割したうちの一つのストーリーを表す。
【0101】
次に、本発明の他の実施の形態について説明する。
【0102】
図5は、本発明の他の実施の形態におけるビデオゲーム装置の主要機能を示すブロック図である。なお、図5において、図2と同一の構成については、同一の符号を付し、その説明を省略する。図5に示すように、ビデオゲーム装置は、機能的には、プログラム実行部31、圧縮データ記憶部32、非圧縮データ記憶部33、プログラム記憶部34、データ記憶部35及びテーブルデータ記憶部36を含む。
【0103】
テーブルデータ記憶部36は、メインメモリ5等で実現され、第1のテーブル記憶部61及び第2のテーブル記憶部62を含む。第1のテーブル記憶部61は、ゲーム状態と、当該ゲーム状態における処理負荷とを対応付けてあらかじめ第1のテーブルとして記憶する。第2のテーブル記憶部62は、圧縮データが記録されている圧縮ファイルのファイル名と、当該圧縮ファイルの展開処理にかかる展開処理負荷とを対応付けてあらかじめ第2のテーブルとして記憶する。
【0104】
データ判断部41は、現在実行されている第1のゲーム状態における現処理負荷と、第1のゲーム状態の次に実行される第2のゲーム状態において用いられる圧縮データの展開処理にかかる展開処理負荷とに基づいて圧縮データ及び非圧縮データのうちのどちらを読み込むかを判断する。第1のテーブル記憶部61に記憶されている第1のゲーム状態に対応する処理負荷と、第2のテーブル記憶部62に記憶されている第2のゲーム状態において用いられる圧縮データに対応する展開処理負荷とに基づいて圧縮データ及び非圧縮データのうちのどちらを読み込むかを判断する。
【0105】
なお、本実施の形態において、第1のテーブル記憶部61は第1の記憶手段に相当し、第2のテーブル記憶部62は第2の記憶手段に相当する。
【0106】
図6は、第1のテーブル及び第2のテーブルのデータ構造の一例を示す図である。図6(a)は、第1のテーブルのデータ構造の一例を示す図であり、図6(b)は、第2のテーブルのデータ構造の一例を示す図である。
【0107】
第1のテーブル400には、ゲーム状態401と処理負荷402とが対応付けられている。なお、処理負荷402はあらかじめ計測されたものであり、百分率で表される。ゲーム状態401には、図6(a)に示すように、タイトル画面、ゲームセレクト中、プレイヤセレクト中、「Now Loading」画面及び滑走中等がある。タイトル画面とは、CPU1がタイトル画面を表示するゲーム状態を表す。プレイヤセレクト中とは、CPU1がユーザによるプレイヤ(ユーザによって操作されるゲームに登場するキャラクタ)のセレクト(選択)を受け付けるゲーム状態を表す。「Now Loading」画面とは、CPU1が記録媒体300からメインメモリ5にデータを読み込む間に、「Now Loading」と表示するゲーム状態を表す。滑走中とは、スノーボーダーを模したキャラクタが雪面などの斜面を滑走している際のゲーム状態を表す。例えば、タイトル画面を表示する際にCPU1にかかる処理負荷のピーク値は10%であり、ゲームセレクト中にCPU1にかかる処理負荷のピーク値は20%であり、「Now Loading」画面を表示する際にCPU1にかかる処理負荷のピーク値は5%である。
【0108】
第2のテーブル410には、圧縮データを記録する圧縮ファイルのファイル名411と、この圧縮ファイルの展開処理負荷412とが対応付けられている。なお、展開処理負荷412はあらかじめ計測されたものであり、百分率で表す。圧縮ファイル名411には、図6(b)に示すように、「file_a.datp」、「file_b.datp」及び「file_c.datp」等がある。例えば、CPU1が「file_a.datp」という圧縮ファイルを展開する際にCPU1にかかる展開処理負荷のピーク値は50%であり、CPU1が「file_b.datp」という圧縮ファイルを展開する際にCPU1にかかる展開処理負荷のピーク値は80%であり、CPU1が「file_c.datp」という圧縮ファイルを展開する際にCPU1にかかる展開処理負荷のピーク値は30%である。
【0109】
本発明の他の実施の形態における判断処理方法は、ゲーム状態毎の処理負荷と圧縮ファイル毎の展開処理負荷とをあらかじめ第1のテーブル400及び第2のテーブル410として記憶しておき、現在実行されている第1のゲーム状態の処理負荷と、第1のゲーム状態の次に実行される第2のゲーム状態において用いられる圧縮ファイルの展開処理負荷とを合計して所定の値と比較する。第1のゲーム状態の処理負荷と第2のゲーム状態において用いられる圧縮ファイルの展開処理負荷との合計が所定の値より小さければ、圧縮ファイルを読み込み、所定の値以上であれば、非圧縮ファイルを読み込む。本実施の形態では、所定の値を100%とし、第1のゲーム状態の処理負荷と第2のゲーム状態において用いられる圧縮ファイルの展開処理負荷との合計が100%より小さければ、圧縮ファイルを読み込み、100%以上であれば、非圧縮ファイルを読み込む。なお、所定の値は100%に限らず、他の値でもよい。
【0110】
例えば、第1のゲーム状態が図6(a)に示すタイトル画面であり、第2のゲーム状態において用いられる圧縮ファイルが図6(b)に示す「file_c.datp」である場合、タイトル画面の表示にかかる処理負荷と、「file_c.datp」の展開処理にかかる展開処理負荷との合計は40%となり、100%より小さいため、圧縮ファイルを読み込む。また、第1のゲーム状態が図6(a)に示す滑走中であり、第2のゲーム状態において用いられる圧縮ファイルが図6(b)に示す「file_c.datp」である場合、滑走中の処理にかかる処理負荷と、「file_c.datp」の展開処理にかかる展開処理負荷との合計は120%となり、100%以上となるため、非圧縮ファイルを読み込む。
【0111】
図7は、図3のステップS6における判断処理の他の実施の形態の一例を示すフローチャートである。なお、図7に示す判断処理は、CPU1等が記録媒体300に記憶されているデータ読込プログラム等を実行することによって行われる処理である。また、本発明の他の実施の形態におけるデータ読込処理は、図3のデータ読込処理の一例を示すフローチャートと同じであり、ステップS6における判断処理の内容が異なるため、ここでは、本発明の他の実施の形態における判断処理についてのみ説明する。
【0112】
ステップS201において、CPU1は現在実行されている第1のゲーム状態を取得する。ステップS202において、CPU1は、第1のテーブル記憶部61に記憶されている第1のテーブル400を参照して、第1のゲーム状態に対応する現処理負荷Aを取得する。
【0113】
ステップS203において、CPU1は、第2のテーブル記憶部62に記憶されている第2のテーブル410を参照して、第1のゲーム状態の次に実行される第2のゲーム状態において用いられる圧縮ファイルの展開処理負荷Bを取得する。ステップS204において、CPU1は、ステップS202において取得した現処理負荷Aと、ステップS203において取得した展開処理負荷Bとを加算した加算値αを算出する。
【0114】
ステップS205において、CPU1は、現処理負荷Aと展開処理負荷Bとの加算値αが100以上であるか否かを判断する。ここで、現処理負荷Aと展開処理負荷Bとの加算値αが100以上であると判断されると(ステップS205でYES)、ステップS207に移行し、現処理負荷と展開処理負荷との加算値が100より小さいと判断されると(ステップS205でNO)、ステップS206に移行する。
【0115】
ステップS206において、CPU1は圧縮ファイルを読み込むと決定し、リターンする。ステップS207において、CPU1は非圧縮ファイルを読み込むと決定し、リターンする。
【0116】
このように、ゲーム状態と最大処理負荷とを対応付けて第1のテーブル400としてあらかじめ記憶しておき、さらに、圧縮データと当該圧縮データの展開処理にかかる展開処理負荷とを第2のテーブル410としてあらかじめ対応付けて記憶しておく。そして、現在実行されている第1のゲーム状態の最大処理負荷と、第1のゲーム状態の次に実行される第2のゲーム状態において用いられる圧縮データの展開処理負荷とを合計した値が所定の値より小さい場合に圧縮データを読み込み、所定の値以上の場合に非圧縮データを読み込むことによって、ゲーム状態に応じて圧縮ファイル及び非圧縮ファイルのいずれか一方を読み込むことができる。
【0117】
また、ビデオゲームのゲーム状態ごとに各ゲーム状態に要する処理負荷をあらかじめ第1のテーブル400として記憶しておくことによって、ビデオゲーム中にゲーム状態に要する処理負荷を計測する必要がなく、CPU1の処理負荷を軽減することができる。
【0118】
次に、本発明のさらに他の実施の形態について説明する。
【0119】
図8は、本発明のさらに他の実施の形態におけるビデオゲーム装置の主要機能を示すブロック図である。なお、図8において、図2及び図5と同一の構成については、同一の符号を付し、その説明を省略する。図8に示すように、ビデオゲーム装置は、機能的には、プログラム実行部31、圧縮データ記憶部32、非圧縮データ記憶部33、プログラム記憶部34、データ記憶部35及びテーブルデータ記憶部36を含む。
【0120】
テーブルデータ記憶部36は、メインメモリ5等で実現され、第2のテーブル記憶部62及び第3のテーブル記憶部63を含む。第3のテーブル記憶部63は、後述する処理負荷計測部44によって計測された1フレーム毎の処理負荷の履歴を記憶する。本実施の形態において、第3のテーブル記憶部63は、3フレーム前までの処理負荷の履歴を記憶し、各フレームと、当該フレームにおける処理負荷とを対応付けて第3のテーブルとして記憶する。
【0121】
プログラム実行部31は、CPU1等で実現され、CPU1等がメインメモリ5に記憶されているデータ読込プログラムを実行することによって、データ判断部41、データ展開部42、データ読込部43及び処理負荷計測部44として機能する。
【0122】
データ判断部41は、第3のテーブル記憶部63に記憶されている過去の処理負荷の履歴と、第2のテーブル記憶部62に記憶されている次に用いる圧縮データの展開処理にかかる展開処理負荷とに基づいて圧縮データ及び非圧縮データのうちのどちらを読み込むかを判断する。処理負荷計測部44は、CPU1にかかる処理負荷を1フレーム毎に計測し、計測した処理負荷を第3のテーブル記憶部63に記憶する。
【0123】
なお、本実施の形態において、処理負荷計測部44は計測手段に相当し、第3のテーブル記憶部63は第3の記憶手段に相当する。
【0124】
図9は、第3のテーブルのデータ構造の一例を示す図である。第3のテーブル420には、3フレーム前までの履歴421と処理負荷422とが対応付けられており、実行時に動的に生成される。なお、処理負荷422は百分率で表す。履歴421には、図3(c)に示すように、3フレーム前までの処理負荷が記憶されている。1フレーム前の処理負荷は40%であり、2フレーム前の処理負荷は42%であり、3フレーム前の処理負荷は39%である。
【0125】
本発明のさらに他の実施の形態における判断処理方法は、過去の処理負荷の履歴に基づいて圧縮データ及び非圧縮データのうちのどちらを読み込むかを判断する。まず、圧縮ファイルごとの展開処理負荷のピーク値を計測してあらかじめ第2のテーブル410として用意しておく。CPU1は、フレーム毎の処理負荷の履歴を第3のテーブル420として記憶する。データの読み込み要求が発生した場合、CPU1は、当該データを圧縮した圧縮ファイルの展開処理負荷を第2のテーブル410から検索し、第3のテーブル420における最大処理負荷を検索する。第3のテーブル420から検索した最大処理負荷と第2のテーブル410から検索した展開処理負荷とを合計して所定の値と比較する。第3のテーブル420から検索した最大処理負荷と第2のテーブル410から検索した展開処理負荷との合計が所定の値以下であれば、圧縮ファイルを読み込み、所定の値以上であれば、非圧縮ファイルを読み込む。本実施の形態では、所定の値を100%とし、現在のゲーム状態の最大処理負荷と次に読み込む圧縮ファイルの展開処理負荷との合計が100%より小さければ、圧縮ファイルを読み込み、100%以上であれば、非圧縮ファイルを読み込む。
【0126】
なお、上記所定の値は100%に限らず、他の値でもよい。例えば、圧縮ファイルの読み込み中にゲーム進行処理によって急激に処理負荷が増加する可能性がある。このような急激な処理負荷の増加を考慮して、所定の値を例えば80%に設定する。所定の値を80%に設定することによって、急激な処理負荷の増加にも対応することができ、例えば、ゲーム中に登場するキャラクタを急に増加させる場合等にも処理速度を落とすことなく対処することができる。
【0127】
例えば、図9に示すように、1フレーム前のCPU1の処理負荷が40%であり、2フレーム前のCPU1の処理負荷が42%であり、3フレーム前のCPU1の処理負荷が39%であった場合、最大処理負荷は2フレーム前の処理負荷である42%となる。そして、次に読み込む圧縮ファイルが「file_c.datp」である場合、「file_c.datp」の展開処理にかかる展開処理負荷は図6(b)に示すように30%である。次に読み込む圧縮ファイルの展開処理負荷である30%と最大処理負荷である42%とを合計すると72%となり、所定の値である100%より小さくなるため、圧縮ファイルが読み込まれることとなる。また、次に読み込む圧縮ファイルが「file_d.datp」である場合、「file_d.datp」の展開処理にかかる展開処理負荷は図6(b)に示すように60%である。次に読み込む圧縮ファイルの展開処理負荷である60%と最大処理負荷である42%とを合計すると102%となり、所定の値である100%以上となるため、非圧縮ファイルが読み込まれることとなる。
【0128】
図10は、図3のステップS6における判断処理のさらに他の実施の形態の一例を示すフローチャートである。なお、図10に示す判断処理は、CPU1等が記録媒体300に記憶されているデータ読込プログラム等を実行することによって行われる処理である。また、本発明のさらに他の実施の形態におけるデータ読込処理は、図3のデータ読込処理の一例を示すフローチャートと同じであり、ステップS6における判断処理の内容が異なるため、ここでは、本発明のさらに他の実施の形態における判断処理についてのみ説明する。
【0129】
ステップS301において、CPU1は、第3のテーブル記憶部63に記憶されている第3のテーブル420を参照して、最大処理負荷Cを取得する。CPU1は、第3のテーブル420における各フレームごとの処理負荷の履歴のうちの最大となる処理負荷を最大処理負荷Cとして取得する。
【0130】
ステップS302において、CPU1は、第2のテーブル記憶部62に記憶されている第2のテーブル410を参照して、次に読み込む圧縮ファイルの展開処理負荷Bを取得する。
【0131】
ステップS303において、CPU1は、ステップS301において取得した最大処理負荷Cと、ステップS302において取得した展開処理負荷Bとを加算した加算値βを算出する。
【0132】
ステップS304において、CPU1は、最大処理負荷Cと展開処理負荷Bとの加算値βが100以上であるか否かを判断する。ここで、最大処理負荷Cと展開処理負荷Bとの加算値βが100以上であると判断されると(ステップS304でYES)、ステップS306に移行し、最大処理負荷Cと展開処理負荷Bとの加算値βが100より小さいと判断されると(ステップS304でNO)、ステップS305に移行する。
【0133】
ステップS305において、CPU1は圧縮ファイルを読み込むと決定し、リターンする。ステップS306において、CPU1は非圧縮ファイルを読み込むと決定し、リターンする。
【0134】
このように、圧縮データごとの展開処理にかかる展開処理負荷をあらかじめ計測して第2のテーブル410として用意しておき、例えば、各フレーム毎にかかった処理負荷の履歴を第3のテーブル420として動的に記憶する。そして、データの読み込み要求が発生した場合に、第3のテーブル420に記憶されている処理負荷の最大処理負荷と、これから読み込む圧縮データの展開処理負荷とを合計した値が所定の値以下の場合に圧縮データを読み込み、所定の値以上の場合に非圧縮データを読み込む。このようにして、ゲーム状態に応じて圧縮ファイル及び非圧縮ファイルのいずれか一方を読み込むことができる。
【0135】
なお、本発明のさらに他の実施の形態において、圧縮ファイルごとの展開処理負荷のピーク値を計測してあらかじめ第2のテーブル410として用意しておくとしたが、本発明は特にこれに限定されず、第2のテーブル410を必ずしも用意しておく必要はなく、第3のテーブル420のみを用意しておいてもよい。この場合、計測した処理負荷を第3のテーブル420として記憶し、データの読み込み要求が発生した場合に、第3のテーブル420に記憶されている処理負荷の最大処理負荷が所定の値以下の場合に圧縮データを読み込み、所定の値以上の場合に非圧縮データを読み込む。このようにして、ゲーム状態に応じて圧縮ファイル及び非圧縮ファイルのいずれか一方を読み込むことができる。
【0136】
なお、本実施の形態におけるコンピュータ読み取り可能な記録媒体は、全てのデータに関して圧縮データ及び非圧縮データの2種類のデータを記録してもよく、また、一部のデータに関して圧縮データ及び非圧縮データの2種類のデータを記録してもよい。
【0137】
また、本実施の形態では、圧縮ファイル及び非圧縮ファイルの判断処理方法として3つの判断処理方法を用いたが、本発明は特にこれに限定されず、いずれか1つの判断処理方法を用いてもよく、さらに、いずれか2つの判断処理方法を組み合わせて用いてもよい。
【0138】
また、処理負荷計測部44は、現在のゲーム状態における現処理負荷を計測し、第1のテーブル記憶部61に記憶されている各ゲーム状態に要する処理負荷を動的に変更してもよい。この場合、各ゲーム状態に要する処理負荷がリアルタイムに更新されるため、圧縮データ及び非圧縮データの断処理をさらに正確に行うことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0139】
また、本発明が適用されるビデオゲームの種類は特に限定されず、コンピュータ読み取り可能な記録媒体からデータを読み込むあらゆるビデオゲームに適用することができる。
【0140】
【発明の効果】
請求項1に記載の本発明によれば、演算処理の処理負荷に余裕があるゲーム状態では圧縮データを選択し、処理負荷に余裕がないゲーム状態では非圧縮データを選択することで、ゲーム状態に適するデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0141】
請求項2に記載の本発明によれば、現在実行されている第1のゲーム状態における演算処理装置の現処理負荷と、第1のゲーム状態の次に実行される第2のゲーム状態において用いられる圧縮データの展開処理にかかる演算処理装置の展開処理負荷とに基づいて圧縮データ及び非圧縮データのうちのどちらを読み込むかが判断されるため、第1のゲーム状態における処理負荷に応じて適切なデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0142】
請求項3に記載の本発明によれば、ビデオゲームのゲーム状態ごとに各ゲーム状態に要する処理負荷をあらかじめ記憶しておくことによって、ビデオゲーム中にゲーム状態に要する処理負荷を計測する必要がなく、処理負荷を軽減することができる。
【0143】
請求項4に記載の本発明によれば、ゲーム状態における処理負荷をリアルタイムに計測して圧縮ファイル及び非圧縮ファイルのうちのいずれか一方を読み込むことができるので、ゲーム状態に応じた適切なデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0144】
請求項5に記載の本発明によれば、演算処理の処理負荷に余裕があるゲーム状態では圧縮データを選択し、処理負荷に余裕がないゲーム状態では非圧縮データを選択することで、ゲーム状態に適するデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0145】
請求項6に記載の本発明によれば、演算処理の処理負荷に余裕があるゲーム状態では圧縮データを選択し、処理負荷に余裕がないゲーム状態では非圧縮データを選択することで、ゲーム状態に適するデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【0146】
請求項7に記載の本発明によれば、演算処理の処理負荷に余裕があるゲーム状態では圧縮データを選択し、処理負荷に余裕がないゲーム状態では非圧縮データを選択することで、ゲーム状態に適するデータを読み込むことができ、ゲームの進行処理の速度を落とさずに高速にデータを読み込むことができる。
【図面の簡単な説明】
【図1】本発明の一実施の形態のビデオゲーム装置の構成を示すブロック図である。
【図2】図1に示すビデオゲーム装置の主要機能を示すブロック図である。
【図3】図1に示すビデオゲーム装置によるデータ読込処理の一例を示すフローチャートである。
【図4】図3のステップS6における判断処理の一例を示すフローチャートである。
【図5】本発明の他の実施の形態におけるビデオゲーム装置の主要機能を示すブロック図である。
【図6】第1のテーブル及び第2のテーブルのデータ構造の一例を示す図である。
【図7】図1に示すビデオゲーム装置によるデータ読込処理の他の実施の形態を示すフローチャートである。
【図8】本発明のさらに他の実施の形態におけるビデオゲーム装置の主要機能を示すブロック図である。
【図9】第3のテーブルのデータ構造の一例を示す図である。
【図10】図1に示すビデオゲーム装置によるデータ読込処理のさらに他の実施の形態を示すフローチャートである。
【符号の説明】
1 CPU
2 バスライン
3 グラフィックスデータ生成プロセッサ
4,13 インターフェース回路
5 メインメモリ
6 ROM
7 伸張回路
8 パラレルポート
9 シリアルポート
10 描画プロセッサ
11 音声プロセッサ
12 デコーダ
14,15,16 バッファ
17 記録媒体ドライバ
18 メモリ
19 コントローラ
21 テレビジョンモニタ
31 プログラム実行部
32 圧縮データ記憶部
33 非圧縮データ記憶部
34 プログラム記憶部
35 データ記憶部
36 テーブルデータ記憶部
41 データ判断部
42 データ展開部
43 データ読込部
44 処理負荷計測部
61 第1のテーブル記憶部
62 第2のテーブル記憶部
63 第3のテーブル記憶部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data reading program for reading data used in a video game, a data reading method, a video game apparatus, and a computer-readable recording medium.
[0002]
[Prior art]
Conventionally, data used in a video game is mainly provided by a computer-readable recording medium such as a CD-ROM or a DVD-ROM. In such a recording medium, data is recorded in a compressed state in advance. In some cases, data is recorded in an uncompressed state without being compressed. The video game developer decides whether to record the data in a compressed state or in an uncompressed state in consideration of the calculation cost. On the recording medium, compressed data in a state where data is compressed or uncompressed data in an uncompressed state where data is not compressed is recorded. For example, when certain data is recorded in a compressed state, the same data is not recorded in an uncompressed state. Similarly, when certain data is recorded in an uncompressed state, the same data is never recorded in a compressed state. That is, the recording medium records only one data in a compressed state or a non-compressed state.
[0003]
[Problems to be solved by the invention]
When data is recorded as compressed data, the amount of data to be read is smaller than that of uncompressed data, so the time for accessing the recording medium is shortened. However, there is a problem that the compressed data needs to be expanded on the memory, and an extra calculation cost is required as compared with the case where the data is not expanded on the memory. In addition to the storage area for expanding the compressed data on the memory, a storage area for storing the compressed data itself is required.
[0004]
On the other hand, when data is recorded as uncompressed data, the data does not need to be expanded on the memory, and there is no calculation cost for expanding the data. However, when data is recorded as non-compressed data, there is a problem that it takes a reading time including an access time to the recording medium because the designated data file is read as it is.
[0005]
For example, if you know in advance how much processing load is applied to the arithmetic processing unit, such as when displaying a predetermined demo image before the game starts, which of the compressed data and uncompressed data Can be determined. However, in a video game, the processing load on the arithmetic processing device varies depending on the game state, and it is difficult to determine in advance whether to use compressed data or uncompressed data.
[0006]
For example, the processing load of the arithmetic processing unit varies depending on the number of characters displayed on the screen, and the processing load increases when there are many characters to be displayed, and the processing load decreases when there are few characters to be displayed. When there are many characters to be displayed, it is possible to read the uncompressed data at high speed, and when there are few characters to be displayed, the compressed data can be read at high speed. The number of characters to be displayed varies depending on the skill of the user and cannot be predicted in advance. For this reason, in the conventional method of recording only in the state of either compressed data or non-compressed data, it is impossible to read appropriate data according to the game state.
[0007]
The present invention has been made to solve the above-described problems. A data reading program and a data reading program capable of selecting compressed data and non-compressed data according to a game state and reading data at high speed. It is an object to provide a method and a video game device.
[0008]
[Means for Solving the Problems]
The present invention described in claim 1 is a data reading program for reading data used in a video game,
Determining means for determining, according to a game state, which one of compressed data recorded with the data compressed and uncompressed data stored without compressing the data read;
A decompressing means for decompressing the compressed data when the judging means determines to read the compressed data;
When the determination means determines that the compressed data is read, the video game device is read as the reading means for reading the uncompressed data when the data expanded by the expansion means is read and the determination means determines that the non-compressed data is read. Is made to function.
[0009]
According to the first aspect of the present invention, the data reading program for reading the data used in the video game stores the compressed data recorded in the compressed state of the data and the data in the uncompressed state. Determining means for determining which of the uncompressed data to be read according to the game state, and when the determining means determines to read the compressed data, a decompressing means for decompressing the compressed data, and a judging means When it is determined that the compressed data is read, the data developed by the expansion means is read. When the determination means determines that the non-compressed data is read, the video game apparatus is caused to function as a reading means for reading the non-compressed data.
[0010]
That is, the same data is stored as compressed data in a compressed state and non-compressed data in a non-compressed state, and it is determined according to the game state which of the compressed data and the non-compressed data is read by the judging means. If it is determined that the compressed data is read by the determining means, the compressed data is expanded by the expanding means. If the determining means determines that the compressed data is read, the data expanded by the expanding means is read by the reading means. If the determination unit determines to read uncompressed data, the uncompressed data is read by the reading unit.
[0011]
In this way, two types of data, compressed data and uncompressed data, are recorded for one data, and it is determined according to the game state which of the compressed data and the uncompressed data is read. . When compressed data is read, since the data is compressed, the time for accessing the recording medium can be shortened. When uncompressed data is read, it is not necessary to expand the data, so that the arithmetic processing is shortened. be able to. Therefore, by selecting compressed data in a game state where the processing load of arithmetic processing is sufficient, and selecting uncompressed data in a game state where the processing load is not sufficient, data suitable for the game state can be read. Data can be read at high speed without slowing down the progress of the process.
[0012]
The present invention according to claim 2, wherein the game state includes a first game state that is currently being executed and a second game state that is executed next to the first game state,
The determination means includes the compressed data and the uncompressed data based on a current processing load in the first game state and a decompression processing load on decompression processing of compressed data used in the second game state. It is characterized in that it is determined which one is read.
[0013]
According to the second aspect of the present invention, the game state includes a first game state that is currently being executed and a second game state that is executed next to the first game state, and the determination means. Determines whether to read compressed data or non-compressed data based on the current processing load in the first game state and the decompression processing load for decompression processing of the compressed data used in the second game state Is done.
[0014]
That is, the arithmetic processing relating to the current processing load of the arithmetic processing device in the first game state currently being executed and the decompression processing of the compressed data used in the second game state executed next to the first game state Since it is determined whether to read compressed data or non-compressed data based on the development processing load of the apparatus, appropriate data can be read according to the processing load in the first game state, Data can be read at high speed without slowing down the progress process.
[0015]
According to a third aspect of the present invention, there is provided first storage means for preliminarily storing a processing load required for each game state for each game state of the video game, and decompression required for decompression processing for each compressed data for each compressed data. The video game apparatus is further caused to function as second storage means for storing the processing load in advance.
[0016]
According to the third aspect of the present invention, the first storage means for storing in advance the processing load required for each game state for each game state of the video game, and the expansion required for the expansion processing for each compressed data for each compressed data The video game apparatus is further caused to function as second storage means for storing the processing load in advance.
[0017]
That is, by storing in advance the processing load required for each game state for each game state of the video game, it is not necessary to measure the processing load required for the game state during the video game, and the processing load can be reduced. .
[0018]
The present invention described in claim 4 is a measuring means for measuring a processing load in the game state;
Causing the video game device to further function as a third storage unit that stores the processing load measured by the measurement unit as a history;
The determination means determines which of the compressed data and the uncompressed data is to be read based on the history.
[0019]
According to the fourth aspect of the present invention, the processing load in the game state is measured by the measuring means, and the processing load measured by the measuring means is stored as a history in the third storage means. Whether to read compressed data or non-compressed data is determined based on the history stored in the storage means 3.
[0020]
In other words, since the processing load in the game state can be measured in real time and either one of the compressed file and the uncompressed file can be read, appropriate data according to the game state can be read, and the game progress process Data can be read at high speed without slowing down.
[0021]
The present invention according to claim 5 is a data reading method for reading data used in a video game,
The video game device determines which one of compressed data recorded with the data compressed and uncompressed data stored without compressing the data depending on the game state. A decision step;
When the video game device determines that the determination step reads the compressed data, the expansion step of expanding the compressed data;
When the video game device determines that the determination step reads compressed data, the video game device reads the data expanded by the expansion step. When the determination step determines that non-compressed data is read, the video game device reads the uncompressed data. And a step.
[0022]
According to the fifth aspect of the present invention, in the data reading method for reading data used in the video game, the video game apparatus does not compress the compressed data and the data recorded in a compressed state. A determination step for determining which of the uncompressed data stored in the state is to be read according to the game state; and if the video game device determines that the determination step is to read the compressed data, the compressed data is expanded The decompression step, and the video game device reads the data decompressed by the decompression step when the judgment step judges that the compressed data is read, and reads the uncompressed data when the judgment step judges that the uncompressed data is read. Read step.
[0023]
That is, the same data is stored as compressed data in a compressed state and non-compressed data in a non-compressed state, and it is determined according to the game state which one of the compressed data and the non-compressed data is read in the determination step. If it is determined that the compressed data is read by the determining step, the compressed data is expanded by the expanding step. If the determining step determines that the compressed data is read, the data expanded by the expanding step is read by the reading step. If the determination step determines that uncompressed data is to be read, the uncompressed data is read by the read step.
[0024]
In this way, two types of data, compressed data and uncompressed data, are recorded for one data, and it is determined according to the game state which of the compressed data and the uncompressed data is read. . When compressed data is read, since the data is compressed, the time for accessing the recording medium can be shortened. When uncompressed data is read, it is not necessary to expand the data, so that the arithmetic processing is shortened. be able to. Therefore, by selecting compressed data in a game state where the processing load of arithmetic processing is sufficient, and selecting uncompressed data in a game state where the processing load is not sufficient, data suitable for the game state can be read. Data can be read at high speed without slowing down the progress of the process.
[0025]
The present invention according to claim 6 is a video game apparatus for reading data used in a video game,
Determining means for determining, according to a game state, which one of compressed data recorded with the data compressed and uncompressed data stored without compressing the data read;
A decompressing means for decompressing the compressed data when the judging means determines to read the compressed data;
When the determination unit determines to read compressed data, the data read by the expansion unit is read; and when the determination unit determines to read uncompressed data, the reading unit reads the uncompressed data. It is characterized by.
[0026]
According to the present invention as set forth in claim 6, a video game apparatus for reading data used in a video game is stored with compressed data recorded with the data compressed and with the data not compressed. Determining means for determining which of the uncompressed data to be read according to the game state, and when the determining means determines to read the compressed data, the expanding means for expanding the compressed data and the determining means include the compressed data Is read by the expansion means, and when the determination means determines to read the uncompressed data, the reading means reads the uncompressed data.
[0027]
That is, the same data is stored as compressed data in a compressed state and non-compressed data in a non-compressed state, and it is determined according to the game state which of the compressed data and the non-compressed data is read by the judging means. If it is determined that the compressed data is read by the determining means, the compressed data is expanded by the expanding means. If the determining means determines that the compressed data is read, the data expanded by the expanding means is read by the reading means. If the determination unit determines to read uncompressed data, the uncompressed data is read by the reading unit.
[0028]
In this way, two types of data, compressed data and uncompressed data, are recorded for one data, and it is determined according to the game state which of the compressed data and the uncompressed data is read. . When compressed data is read, since the data is compressed, the time for accessing the recording medium can be shortened. When uncompressed data is read, it is not necessary to expand the data, so that the arithmetic processing is shortened. be able to. Therefore, by selecting compressed data in a game state where the processing load of arithmetic processing is sufficient, and selecting uncompressed data in a game state where the processing load is not sufficient, data suitable for the game state can be read. Data can be read at high speed without slowing down the progress of the process.
[0029]
The present invention according to claim 7 is a computer-readable recording medium recording data used in a video game,
The data is recorded as compressed data in a compressed state, and the data is recorded as uncompressed data in an uncompressed state.
[0030]
According to the seventh aspect of the present invention, the computer-readable recording medium on which data used in the video game is recorded is recorded as compressed data in a compressed state, and the data is not compressed. It is recorded as uncompressed data.
[0031]
That is, the computer-readable recording medium stores the same data as compressed data in a compressed state and non-compressed data in a non-compressed state. If the compressed data is determined to be read, the compressed data is expanded by the expansion means. If it is determined to read the compressed data, the data expanded by the read means is read and uncompressed. When it is determined that data is to be read, uncompressed data is read by the reading means.
[0032]
In this way, two types of data, compressed data and uncompressed data, are recorded for one data, and it is determined according to the game state which of the compressed data and the uncompressed data is read. . When compressed data is read, since the data is compressed, the time for accessing the recording medium can be shortened. When uncompressed data is read, it is not necessary to expand the data, so that the arithmetic processing is shortened. be able to. Therefore, by selecting compressed data in a game state where the processing load of arithmetic processing is sufficient, and selecting uncompressed data in a game state where the processing load is not sufficient, data suitable for the game state can be read. Data can be read at high speed without slowing down the progress of the process.
[0033]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, a video game apparatus according to an embodiment of the present invention will be described with reference to the drawings.
[0034]
FIG. 1 is a block diagram showing a configuration of a video game apparatus according to an embodiment of the present invention. In the following description, a home video game apparatus configured by connecting a home video game machine to a home television will be described as an example of the video game apparatus, but the present invention is particularly limited to this example. In addition, the present invention can be similarly applied to a professional video game apparatus with an integrated monitor, a personal computer that functions as a video game apparatus by executing a video game program, and the like.
[0035]
The video game apparatus shown in FIG. 1 includes a home game machine 100 and a home television 200. The home-use game machine 100 is loaded with a computer-readable recording medium 300 on which a video game program and game data are recorded, and the video game program and game data are appropriately read to execute the game.
[0036]
A consumer game machine 100 includes a CPU (Central Processing Unit) 1, a bus line 2, a graphics data generation processor 3, an interface circuit (I / F) 4, a main memory 5, a ROM (Read Only Memory) 6, and an expansion circuit 7. , Parallel port 8, serial port 9, drawing processor 10, audio processor 11, decoder 12, interface circuit 13, buffers 14 to 16, recording medium drive 17, memory 18, and controller 19. The home television 200 includes a television monitor 21, an amplifier circuit 22 and a speaker 23.
[0037]
The CPU 1 is connected to the bus line 2 and the graphics data generation processor 3. The bus line 2 includes an address bus, a data bus, a control bus, and the like. The CPU 1, interface circuit 4, main memory 5, ROM 6, decompression circuit 7, parallel port 8, serial port 9, drawing processor 10, audio processor 11, decoder 12 And the interface circuit 13 are connected to each other.
[0038]
The drawing processor 10 is connected to the buffer 14. The audio processor 11 is connected to the buffer 15 and the amplifier circuit 22. The decoder 12 is connected to the buffer 16 and the recording medium drive 17. The interface circuit 13 is connected to the memory 18 and the controller 19.
[0039]
The television monitor 21 of the home television 200 is connected to the drawing processor 10. The speaker 23 is connected to the amplifier circuit 22. In the case of an arcade video game apparatus, the television monitor 21, the amplifier circuit 22, and the speaker 23 may be housed in a single casing together with each block constituting the consumer game machine 100.
[0040]
When the video game apparatus is configured with a personal computer, a workstation, or the like as a core, the television monitor 21 or the like corresponds to a computer display. The decompression circuit 7, the drawing processor 10, the audio processor 11, and the like correspond to a part of program data recorded in the recording medium 300 or hardware on an expansion board installed in an expansion slot of a computer. The interface circuit 4, the parallel port 8, the serial port 9, and the interface circuit 13 correspond to hardware on an expansion board mounted in an expansion slot of a computer. The buffers 14 to 16 correspond to the storage areas of the main memory 5 or the expansion memory, respectively.
[0041]
Next, each component shown in FIG. 1 will be described. The graphics data generation processor 3 serves as a coprocessor for the CPU 1. That is, the graphics data generation processor 3 performs coordinate conversion and light source calculation, for example, calculation of a fixed point format matrix or vector by parallel processing.
[0042]
The main processing performed by the graphics data generation processor 3 is based on the coordinate data, movement amount data, rotation amount data, etc. of each vertex in the two-dimensional or virtual three-dimensional space of the image data supplied from the CPU 1. There are processing for obtaining address data of the processing target image on the display area and returning it to the CPU 1, processing for calculating the luminance of the image according to the distance from the virtually set light source, and the like.
[0043]
The interface circuit 4 is used for an interface of a peripheral device such as a pointing device such as a mouse or a trackball. The main memory 5 is composed of a RAM (Random Access Memory) or the like. The ROM 6 stores program data serving as an operating system for the video game apparatus. This program corresponds to a BIOS (Basic Input Output System) of a personal computer.
[0044]
The decompression circuit 7 performs decompression processing on a compressed image compressed by intra coding conforming to the MPEG (Moving Picture Experts Group) standard for moving images and the JPEG (Joint Photographic Experts Group) standard for still images. The decompression process includes a decoding process (decoding of data encoded by VLC: Variable Length Code), an inverse quantization process, an IDCT (Inverse Discrete Cosine Transform) process, an intra image restoration process, and the like.
[0045]
The drawing processor 10 performs a drawing process on the buffer 14 based on a drawing command issued by the CPU 1 every predetermined time T (for example, T = 1/60 seconds in one frame).
[0046]
The buffer 14 is composed of a RAM, for example, and is divided into a display area (frame buffer) and a non-display area. The display area is composed of a data development area to be displayed on the display surface of the television monitor 21. The non-display area is composed of storage areas such as data for defining a skeleton, model data for defining polygons, animation data for causing the model to move, pattern data indicating the contents of each animation, texture data, and color palette data.
[0047]
Here, the texture data is two-dimensional image data. The color palette data is data for designating a color such as texture data. The CPU 1 records these data in the non-display area of the buffer 14 in advance from the recording medium 300 at a time or divided into a plurality of times according to the progress of the game.
[0048]
The drawing command includes a drawing command for drawing a stereoscopic image using a polygon and a drawing command for drawing a normal two-dimensional image. Here, the polygon is a polygonal two-dimensional virtual figure, and for example, a triangle or a quadrangle is used.
[0049]
A drawing command for drawing a stereoscopic image using polygons includes polygon vertex address data indicating the storage position of polygon vertex coordinate data in the display area of the buffer 14, and the storage position of the texture pasted on the polygon 14 in the buffer 14. Is performed on each of the color address data indicating the storage position on the buffer 14 and the color data indicating the texture brightness.
[0050]
Among the above data, the polygon vertex address data on the display area is converted by the graphics data generation processor 3 from the polygon vertex coordinate data in the virtual three-dimensional space from the CPU 1 based on the movement amount data and the rotation amount data. Is replaced with the polygon vertex coordinate data in two dimensions. The luminance data is determined by the graphics data generation processor 3 based on the distance from the position indicated by the polygon vertex coordinate data after the coordinate conversion from the CPU 1 to the light source virtually arranged.
[0051]
The polygon vertex address data indicates an address on the display area of the buffer 14. The drawing processor 10 performs a process of writing texture data corresponding to the display area range of the buffer 14 indicated by the three polygon vertex address data.
[0052]
An object such as a character in the game space is composed of a plurality of polygons. The CPU 1 stores the coordinate data of each polygon in the virtual three-dimensional space in the buffer 14 in association with the corresponding skeleton vector data. When the character is moved on the display screen of the television monitor 21 by an operation of the controller 19 to be described later, when the character movement is expressed or the viewpoint position at which the character is viewed is changed, the following Processing is performed.
[0053]
That is, the CPU 1 obtains the graphics data generation processor 3 from the three-dimensional coordinate data of the vertices of each polygon held in the non-display area of the buffer 14, the skeleton coordinates, and the rotation amount data. Polygon movement amount data and rotation amount data are given.
[0054]
The graphics data generation processor 3 sequentially obtains the three-dimensional coordinate data after moving and rotating each polygon based on the three-dimensional coordinate data of the vertex of each polygon and the movement amount data and rotation amount data of each polygon.
[0055]
Of the three-dimensional coordinate data of each polygon thus obtained, the coordinate data in the horizontal and vertical directions are supplied to the drawing processor 10 as address data on the display area of the buffer 14, that is, polygon vertex address data.
[0056]
The drawing processor 10 writes the texture data indicated by the texture address data assigned in advance on the display area of the buffer 14 indicated by the three polygon vertex address data. As a result, on the display screen of the television monitor 21, an object in which textures are pasted on a large number of polygons is displayed.
[0057]
A drawing command for drawing a normal two-dimensional image indicates vertex address data, texture address data, color palette address data indicating the storage position on the buffer 14 of color palette data indicating the color of the texture data, and luminance of the texture. This is performed on the luminance data. Among these data, the vertex address data is obtained by the coordinate conversion of the vertex coordinate data on the two-dimensional plane from the CPU 1 by the graphics data generation processor 3 based on the movement amount data and the rotation amount data from the CPU 1.
[0058]
The audio processor 11 stores ADPCM (Adaptive Differential Pulse Code Modulation) data read from the recording medium 300 in the buffer 15, and the ADPCM data stored in the buffer 15 serves as a sound source.
[0059]
Also, the audio processor 11 reads ADPCM data from the buffer 15 based on, for example, a clock signal having a frequency of 44.1 kHz. The audio processor 11 performs processing such as pitch conversion, noise addition, envelope setting, level setting, and reverb addition on the read ADPCM data.
[0060]
When the audio data read from the recording medium 300 is PCM (Pulse Code Modulation) data such as CD-DA (Compact Disk Digital Audio), the audio processor 11 converts the audio data into ADPCM data. Further, the processing for the PCM data by the program is directly performed on the main memory 5. The PCM data processed on the main memory 5 is supplied to the audio processor 11 and converted into ADPCM data. Thereafter, the various processes described above are performed, and sound is output from the speaker 23.
[0061]
As the recording medium drive 17, for example, a DVD-ROM drive, a CD-ROM drive, a hard disk drive, an optical disk drive, a flexible disk drive, a silicon disk drive, a cassette medium reader, or the like is used. In this case, as the recording medium 300, a DVD-ROM, a CD-ROM, a hard disk, an optical disk, a flexible disk, a semiconductor memory, or the like is used.
[0062]
The recording medium drive 17 reads image data, audio data, and program data from the recording medium 300 and supplies the read data to the decoder 12. The decoder 12 performs error correction processing by ECC (Error Correction Code) on the reproduced data from the recording medium drive 17 and supplies the data subjected to the error correction processing to the main memory 5 or the audio processor 11.
[0063]
For example, a card-type memory is used as the memory 18. The card type memory is used for holding various game parameters at the time of interruption, such as holding the state at the time of interruption when the game is interrupted.
[0064]
The controller 19 is an operation device used by the user to input various operation commands, and sends an operation signal corresponding to the user's operation to the CPU 1. The controller 19 includes a first button 19a, a second button 19b, a third button 19c, a fourth button 19d, an up key 19U, a down key 19D, a left key 19L, a right key 19R, and L1 buttons 19L1, L2. A button 19L2, an R1 button 19R1, an R2 button 19R2, a start button 19e, a select button 19f, a left stick 19SL and a right stick 19SR are provided.
[0065]
The up direction key 19U, the down direction key 19D, the left direction key 19L, and the right direction key 19R are used, for example, to give the CPU 1 a command for moving a character or cursor up, down, left, or right on the screen of the television monitor 21. .
[0066]
The start button 19e is used to instruct the CPU 1 to load a game program from the recording medium 300. The select button 19f is used to instruct the CPU 1 to make various selections related to the game program loaded from the recording medium 300 to the main memory 5.
[0067]
The buttons and keys of the controller 19 except the left stick 19SL and the right stick 19SR are turned on when pressed from the neutral position by an external pressing force, and return to the neutral position when the pressing force is released. It consists of an on / off switch that turns off.
[0068]
The left stick 19SL and the right stick 19SR are stick-type controllers having almost the same configuration as a so-called joystick. This stick-type controller has an upright stick, and can be tilted over a 360 ° direction including front, rear, left and right with a predetermined position of the stick as a fulcrum. The left stick 19SL and the right stick 19SR are connected to the CPU 1 via the interface circuit 13 using the values of the x-coordinate in the left-right direction and the y-coordinate in the front-rear direction as the operation signals according to the tilt direction and tilt angle of the stick. To send.
[0069]
The first button 19a, the second button 19b, the third button 19c, the fourth button 19d, the L1 button 19L1, the L2 button 19L2, the R1 button 19R1, and the R2 button 19R2 correspond to the game program loaded from the recording medium 300. Used for various functions.
[0070]
Next, the general operation of the video game apparatus will be described. When the recording medium 300 is loaded in the recording medium drive 17, when a power switch (not shown) is turned on and the video game apparatus is turned on, the recording medium is recorded based on the operating system stored in the ROM 6. The CPU 1 instructs the recording medium drive 17 to read the game program from 300. As a result, the recording medium drive 17 reads image data, audio data, and program data from the recording medium 300. The read image data, audio data, and program data are supplied to the decoder 12, and the decoder 12 performs error correction processing on each data.
[0071]
The image data that has been subjected to error correction processing by the decoder 12 is supplied to the decompression circuit 7 via the bus line 2. The image data that has been subjected to the expansion processing described above by the expansion circuit 7 is written into the main memory 5, supplied to the drawing processor 10, and written into the non-display area of the buffer 14 by the drawing processor 10. The audio data that has been subjected to the error correction processing by the decoder 12 is written into the buffer 15 via the main memory 5 or the audio processor 11. Program data that has been subjected to error correction processing by the decoder 12 is written into the main memory 5.
[0072]
Thereafter, the CPU 1 advances the video game based on the game program stored in the main memory 5 and the content that the user instructs using the controller 19. In other words, the CPU 1 appropriately performs control of image processing, control of sound processing, control of internal processing, and the like based on contents that the user instructs using the controller 19.
[0073]
As image processing control, for example, the calculation of the coordinates of each skeleton or the calculation of the vertex coordinate data of polygons from the pattern data corresponding to the animation instructed to the character, the obtained three-dimensional coordinate data and the graphics data of the viewpoint position data Supply to the generation processor 3, issue of a rendering command including address data and luminance data on the display area of the buffer 14 obtained by the graphics data generation processor 3 are performed.
[0074]
As control of audio processing, for example, issue of an audio output command to the audio processor 11, specification of level, reverb, etc. are performed. As control of the internal processing, for example, calculation according to the operation of the controller 19 is performed.
[0075]
FIG. 2 is a block diagram showing the main functions of the video game apparatus shown in FIG. As shown in FIG. 2, the video game apparatus functionally includes a program execution unit 31, a compressed data storage unit 32, an uncompressed data storage unit 33, a program storage unit 34, and a data storage unit 35.
[0076]
The compressed data storage unit 32 is realized by the recording medium 300 or the like, and records data as compressed data in a compressed state. As a method for compressing data, a known technique is used. For example, a compression method based on the JPEG standard or the MPEG standard, an LZW compression method, or the like is used.
[0077]
The non-compressed data storage unit 33 is realized by the recording medium 300 or the like, and records data having the same content as the compressed data as uncompressed data in an uncompressed state.
[0078]
The program execution unit 31 is realized by the CPU 1 or the like, and functions as the data determination unit 41, the data expansion unit 42, and the data reading unit 43 when the CPU 1 or the like executes a data reading program stored in the main memory 5.
[0079]
The data determining unit 41 determines which of the compressed data and the non-compressed data is read according to the game state. If the data determining unit 41 determines that the compressed data is read, the data expanding unit 42 expands the compressed data and restores the original data. The decompression process and the expansion process in the present embodiment are the same process. When the data determining unit 41 determines that the compressed data is read, the data reading unit 43 reads the data expanded by the data expanding unit 42 into the data storage unit 32 and determines that the data determining unit 41 reads the uncompressed data. In this case, uncompressed data is read into the data storage unit 32.
[0080]
The data storage unit 35 is realized by the main memory 5 or the like, and stores data read by the data reading unit 43. The program storage unit 34 is realized by the recording medium drive 17 and the like, and includes a computer-readable recording medium 300. The recording medium 300 stores a data reading program as a video game program. When the data reading program is read from the recording medium 300 and the program is recorded in the main memory 5, the main memory 5 functions as the program storage unit 34.
[0081]
In the present embodiment, the data determination unit 41 corresponds to a determination unit, the data development unit 42 corresponds to a development unit, and the data reading unit 43 corresponds to a reading unit.
[0082]
FIG. 3 is a flowchart showing an example of data reading processing by the video game apparatus shown in FIG. Note that the data reading process shown in FIG. 3 is a process performed by the CPU 1 or the like executing a data reading program or the like stored in the recording medium 300. Note that a variable now_loading used for the following processing is used to determine whether or not a file is currently being read. When now_loading = 0, this indicates that a file is not currently being read, and now_loading = If 1, the file is currently being read.
[0083]
In step S1, the CPU 1 initializes a variable now_loading and sets now_loading = 0. In step S2, the CPU 1 performs a game progress process. In the game progress process, various processes for progressing the video game other than the data read process are performed, and the CPU 1 issues a file read request. In step S3, the CPU 1 determines whether or not the current file is being read by determining whether or not now_loading = 1. If it is determined that now_loading = 1 (currently reading a file) (YES in step S3), the process proceeds to step S12, and now_loading = 1 is not present (current file is being read). If not (NO in step S3), the process proceeds to step S4.
[0084]
In step S4, the CPU 1 determines whether to read a file. That is, the CPU 1 determines whether or not a file read request is issued in the game progress process in step S2. If it is determined that the file is to be read (YES in step S4), the process proceeds to step S5. If it is determined that the file is not to be read (NO in step S4), the process returns to step S2.
[0085]
In step S5, the CPU 1 determines whether or not there is a compressed file for recording compressed data in the file requested to be read. If it is determined that the compressed file exists (YES in step S5), the process proceeds to step S6. If it is determined that the compressed file does not exist (NO in step S5), the non-compressed data is recorded. In order to read the file, the process proceeds to step S10.
[0086]
In step S6, the CPU 1 performs a determination process for determining which one of the compressed file and the non-compressed file is to be read. The determination processing method in the present embodiment is performed by designating a compressed file or an uncompressed file in advance according to the game state. For example, it is specified in advance that a compressed file is read before the start of a game with a low processing load on the CPU 1 and an uncompressed file is read after the start of a game with a high processing load on the CPU 1. If the number of characters displayed on the screen is less than five, the processing load on the CPU 1 is small. Therefore, if the compressed file is read in advance and the number of characters displayed on the screen is five or more, the CPU 1 Because the processing load is heavy, specify in advance to read uncompressed files. The determination process will be described later with reference to FIG.
[0087]
In step S7, the CPU 1 determines whether or not to read the compressed file. If it is determined that the compressed file is read (YES in step S7), the process proceeds to step S8. If it is determined that the compressed file is not read (NO in step S7), the non-compressed file is read. The process proceeds to S10.
[0088]
In step S8, the CPU 1 changes the extension of the uncompressed file. Specifically, the compressed file is designated by adding one character to the extension of the uncompressed file. A file consists of a file name and an extension. The file name represents the file name, and the extension represents the file type. For example, a file having a file name “file_a” is represented by an extension “dat” for an uncompressed file and represented by an extension “datp” for a compressed file. The recording medium 300 records compressed data as a compressed file with a file name and extension “file_a.datp”, and records uncompressed data as an uncompressed file with a file name and extension “file_a.dat”. ing. When reading the compressed file, the CPU 1 identifies the compressed file “file_a.datp” to be read by adding one character “p” to “dat” which is the extension of the uncompressed file “file_a.dat”. In this way, duplication in defining data can be eliminated by recording a compressed file with one character added to the extension of an uncompressed file.
[0089]
In step S9, the CPU 1 starts reading the compressed file from the recording medium 300 to the buffer 16, and proceeds to step S11. In step S10, the CPU 1 starts reading an uncompressed file from the recording medium 300 to the main memory 5, and proceeds to step S11. In step S11, since reading of a file from the recording medium 300 to the buffer 16 or the main memory 5 is started, the CPU 1 sets now_loading = 1 and returns to step S2.
[0090]
If it is determined in step S3 that now_loading = 1 (YES in step S3), the process proceeds to step S12. In step S12, the CPU 1 determines whether the data currently being read is compressed data. If it is determined that the data currently being read is compressed data (YES in step S12), the process proceeds to step S13, where it is determined that the data currently being read is not compressed data but non-compressed data. Then (NO in step S12), the process proceeds to step S15.
[0091]
In step S <b> 13, the CPU 1 determines whether a certain amount of compressed data has been read into the buffer 16. If it is determined that a certain amount of compressed data has been read into the buffer 16 (YES in step S13), the process proceeds to step S14, and if it is determined that a certain amount of compressed data has not been read into the buffer 16 ( NO in step S13), and a standby state is entered until a certain amount of compressed data is read into the buffer 16. Note that instead of reading a certain amount of compressed data into the buffer 16, all compressed data may be read into the buffer 16 and then decompressed to the original data. However, this is inefficient because a storage area for reading all the compressed data is required. In the present embodiment, for example, a certain amount of compressed data in units of 20 sectors (40 kilobytes) is once read into the buffer 16 and decompressed into the original data.
[0092]
In step S14, the decompression circuit 7 expands a certain amount of compressed data read into the buffer 16 into the original data. At this time, decompression processing is performed according to the compression method of the compressed data. In step S15, if the CPU 1 determines that the data is compressed data in step S12, the CPU 1 reads the data expanded in step S14 into the main memory 5, and determines that the data is not compressed data (is uncompressed data) in step S12. If uncompressed, uncompressed data is read into the main memory 5.
[0093]
In step S16, the CPU 1 determines whether or not all the data of the designated file has been read. If it is determined that all the data in the specified file has been read (YES in step S16), the process proceeds to step S17, and if it is determined that all the data in the specified file has not been read (step S16). NO in S16), the process returns to step S2, and the game progress process is performed.
[0094]
In step S17, since the reading of the file is completed, the CPU 1 sets now_loading = 0, ends the file reading request, and proceeds to step S4. In step S4, the CPU 1 determines that the file is not read because the file has been read (NO in step S4), the process proceeds to step S2, and the game progress process is performed.
[0095]
FIG. 4 is a flowchart showing an example of the determination process in step S6 of FIG. Note that the determination processing shown in FIG. 4 is processing performed by the CPU 1 or the like executing a data reading program or the like stored in the recording medium 300. Further, the flowchart shown in FIG. 4 is a determination process when one of compressed data and non-compressed data is selected according to the number of characters displayed on the screen.
[0096]
In step S101, the CPU 1 obtains the number of characters currently displayed on the screen. The character here is an object whose movement is controlled by a computer. When the number of characters displayed on the screen increases, the processing load on the CPU 1 increases. When the number of characters displayed on the screen decreases, the processing load on the CPU 1 decreases.
[0097]
In step S102, the CPU 1 determines whether or not the number of characters is five or more. If it is determined that the number of characters is five or more (YES in step S102), the process proceeds to step S103, and if it is determined that the number of characters is less than five (NO in step S102). The process proceeds to step S104. Note that the number of characters used as the determination criterion here is not limited to five, and can be changed as appropriate according to the processing speed of the CPU 1.
[0098]
In step S103, the CPU 1 determines to read the compressed file and returns. In step S104, the CPU 1 determines to read an uncompressed file and returns.
[0099]
In this way, two types of data, compressed data and uncompressed data, are recorded for one data, and it is determined according to the game state which of the compressed data and the uncompressed data is read. . When compressed data is read, since the data is compressed, the time for accessing the recording medium 300 can be shortened. When uncompressed data is read, it is not necessary to expand the data, thereby shortening the arithmetic processing. can do. Therefore, in a game state where the processing load of the arithmetic processing is sufficient (for example, less than 5 characters are displayed), compressed data is selected, and a game state where the processing load is not sufficient (for example, 5 characters are displayed). By selecting uncompressed data, you can read either compressed files or uncompressed files suitable for the game state, and read data at high speed without slowing down the game progress process. Can do.
[0100]
In this embodiment, one of compressed data and non-compressed data is selected according to the number of characters displayed on the screen. However, the present invention is not particularly limited to this, and in video games. Either compressed data or non-compressed data may be selected according to the game scene or stage. For example, when reading stage data relating to a stage with a small amount of calculation, a compressed file is selected. Since the stage expressing the desert has a small number of objects, the amount of calculation is smaller than the stage expressing the urban area. Therefore, compressed data is selected at a stage with a small amount of computation, and uncompressed data is selected at a stage with a large amount of computation. Note that the game scene represents one scene of the video game, and the stage represents one story of the video game divided into a plurality according to the story.
[0101]
Next, another embodiment of the present invention will be described.
[0102]
FIG. 5 is a block diagram showing main functions of a video game apparatus according to another embodiment of the present invention. In FIG. 5, the same components as those in FIG. 2 are denoted by the same reference numerals, and the description thereof is omitted. As shown in FIG. 5, the video game apparatus functionally includes a program execution unit 31, a compressed data storage unit 32, an uncompressed data storage unit 33, a program storage unit 34, a data storage unit 35, and a table data storage unit 36. including.
[0103]
The table data storage unit 36 is realized by the main memory 5 or the like, and includes a first table storage unit 61 and a second table storage unit 62. The first table storage unit 61 stores a game state and a processing load in the game state in advance as a first table in association with each other. The second table storage unit 62 stores the name of the compressed file in which the compressed data is recorded and the decompression processing load for decompressing the compressed file in advance as a second table in association with each other.
[0104]
The data determination unit 41 is a decompression process related to a decompression process of the compressed data used in the second game state executed next to the current processing load in the first game state currently being executed and the first game state. Whether to read compressed data or non-compressed data is determined based on the load. The processing load corresponding to the first game state stored in the first table storage unit 61 and the expansion corresponding to the compressed data used in the second game state stored in the second table storage unit 62 It is determined whether to read compressed data or non-compressed data based on the processing load.
[0105]
In the present embodiment, the first table storage unit 61 corresponds to a first storage unit, and the second table storage unit 62 corresponds to a second storage unit.
[0106]
FIG. 6 is a diagram illustrating an example of the data structure of the first table and the second table. FIG. 6A is a diagram illustrating an example of the data structure of the first table, and FIG. 6B is a diagram illustrating an example of the data structure of the second table.
[0107]
In the first table 400, the game state 401 and the processing load 402 are associated with each other. The processing load 402 is measured in advance and is expressed as a percentage. As shown in FIG. 6A, the game state 401 includes a title screen, a game selection, a player selection, a “Now Loading” screen, and a running. The title screen represents a game state in which the CPU 1 displays the title screen. “Selecting a player” represents a game state in which the CPU 1 accepts selection (selection) of a player (a character appearing in a game operated by the user) by the user. The “Now Loading” screen represents a game state in which “Now Loading” is displayed while the CPU 1 reads data from the recording medium 300 into the main memory 5. “Sliding” represents a game state when a character imitating a snowboarder is sliding on a slope such as a snow surface. For example, the peak value of the processing load on the CPU 1 when displaying the title screen is 10%, the peak value of the processing load on the CPU 1 during the game selection is 20%, and the “Now Loading” screen is displayed. The peak value of the processing load on the CPU 1 is 5%.
[0108]
In the second table 410, the file name 411 of the compressed file for recording the compressed data is associated with the decompression processing load 412 of this compressed file. The development processing load 412 is measured in advance and is expressed as a percentage. As shown in FIG. 6B, the compressed file name 411 includes “file_a.datp”, “file_b.datp”, “file_c.datp”, and the like. For example, the peak value of the decompression processing load applied to the CPU 1 when the CPU 1 decompresses the compressed file “file_a.datt” is 50%, and the CPU 1 applies to the CPU 1 when the CPU 1 decompresses the compressed file “file_b.datp”. The peak value of the expansion processing load is 80%, and the peak value of the expansion processing load applied to the CPU 1 when the CPU 1 expands the compressed file “file_c.datt” is 30%.
[0109]
In the determination processing method according to another embodiment of the present invention, the processing load for each game state and the decompression processing load for each compressed file are stored in advance as the first table 400 and the second table 410 and are currently executed. The processing load of the first game state that is being executed and the decompression processing load of the compressed file used in the second game state that is executed next to the first game state are summed and compared with a predetermined value. If the sum of the processing load of the first game state and the decompression processing load of the compressed file used in the second game state is smaller than a predetermined value, the compressed file is read. Is read. In this embodiment, if the predetermined value is 100% and the total of the processing load of the first game state and the decompression processing load of the compressed file used in the second game state is smaller than 100%, the compressed file is If reading is 100% or more, an uncompressed file is read. Note that the predetermined value is not limited to 100% and may be other values.
[0110]
For example, if the first game state is the title screen shown in FIG. 6A and the compressed file used in the second game state is “file_c.datp” shown in FIG. The total of the processing load for display and the expansion processing load for the expansion processing of “file_c.datp” is 40%, which is smaller than 100%, so the compressed file is read. Further, when the first game state is running as shown in FIG. 6A and the compressed file used in the second game state is “file_c.datp” shown in FIG. The total of the processing load related to the processing and the expansion processing load related to the expansion processing of “file_c.datp” is 120%, which is equal to or more than 100%, so the uncompressed file is read.
[0111]
FIG. 7 is a flowchart showing an example of another embodiment of the determination process in step S6 of FIG. The determination process shown in FIG. 7 is a process performed by the CPU 1 or the like executing a data reading program or the like stored in the recording medium 300. In addition, the data reading process in another embodiment of the present invention is the same as the flowchart showing an example of the data reading process in FIG. 3 and the contents of the determination process in step S6 are different. Only the determination processing in the embodiment will be described.
[0112]
In step S201, the CPU 1 acquires the first game state that is currently being executed. In step S202, the CPU 1 refers to the first table 400 stored in the first table storage unit 61 and acquires the current processing load A corresponding to the first game state.
[0113]
In step S203, the CPU 1 refers to the second table 410 stored in the second table storage unit 62 and uses the compressed file used in the second game state to be executed next to the first game state. The expansion processing load B is acquired. In step S204, the CPU 1 calculates an addition value α obtained by adding the current processing load A acquired in step S202 and the unfolding processing load B acquired in step S203.
[0114]
In step S205, the CPU 1 determines whether or not the added value α of the current processing load A and the development processing load B is 100 or more. If it is determined that the addition value α between the current processing load A and the development processing load B is 100 or more (YES in step S205), the process proceeds to step S207, and the addition of the current processing load and the development processing load is performed. If it is determined that the value is smaller than 100 (NO in step S205), the process proceeds to step S206.
[0115]
In step S206, the CPU 1 determines to read the compressed file and returns. In step S207, the CPU 1 determines to read an uncompressed file and returns.
[0116]
As described above, the game state and the maximum processing load are associated with each other and stored in advance as the first table 400, and the compressed data and the decompression processing load for decompressing the compressed data are further stored in the second table 410. Are stored in association with each other in advance. A total value of the maximum processing load of the first game state currently being executed and the decompression processing load of the compressed data used in the second game state executed next to the first game state is predetermined. If the compressed data is smaller than the predetermined value, the compressed data is read, and if it is equal to or greater than the predetermined value, either the compressed file or the uncompressed file can be read according to the game state.
[0117]
Further, by storing the processing load required for each game state for each game state of the video game in advance as the first table 400, it is not necessary to measure the processing load required for the game state during the video game, and the CPU 1 Processing load can be reduced.
[0118]
Next, still another embodiment of the present invention will be described.
[0119]
FIG. 8 is a block diagram showing main functions of a video game apparatus according to still another embodiment of the present invention. In FIG. 8, the same components as those in FIGS. 2 and 5 are denoted by the same reference numerals, and the description thereof is omitted. As shown in FIG. 8, the video game apparatus functionally includes a program execution unit 31, a compressed data storage unit 32, an uncompressed data storage unit 33, a program storage unit 34, a data storage unit 35, and a table data storage unit 36. including.
[0120]
The table data storage unit 36 is realized by the main memory 5 or the like, and includes a second table storage unit 62 and a third table storage unit 63. The third table storage unit 63 stores a history of processing loads for each frame measured by the processing load measurement unit 44 described later. In the present embodiment, the third table storage unit 63 stores a history of processing loads up to three frames before, and stores each frame and the processing load in the frame in association with each other as a third table.
[0121]
The program execution unit 31 is realized by the CPU 1 or the like, and the CPU 1 or the like executes a data reading program stored in the main memory 5, whereby the data determination unit 41, the data expansion unit 42, the data reading unit 43, and the processing load measurement. It functions as the unit 44.
[0122]
The data determination unit 41 includes a history of past processing loads stored in the third table storage unit 63 and a decompression process related to decompression processing of compressed data to be used next stored in the second table storage unit 62. Whether to read compressed data or non-compressed data is determined based on the load. The processing load measurement unit 44 measures the processing load applied to the CPU 1 for each frame, and stores the measured processing load in the third table storage unit 63.
[0123]
In the present embodiment, the processing load measurement unit 44 corresponds to a measurement unit, and the third table storage unit 63 corresponds to a third storage unit.
[0124]
FIG. 9 is a diagram illustrating an example of the data structure of the third table. In the third table 420, the history 421 up to three frames before and the processing load 422 are associated with each other, and are dynamically generated at the time of execution. The processing load 422 is expressed as a percentage. As shown in FIG. 3C, the history 421 stores the processing load up to three frames before. The processing load one frame before is 40%, the processing load two frames before is 42%, and the processing load three frames before is 39%.
[0125]
The determination processing method according to still another embodiment of the present invention determines which of compressed data and non-compressed data is to be read based on the history of past processing loads. First, the peak value of the expansion processing load for each compressed file is measured and prepared as the second table 410 in advance. The CPU 1 stores a history of processing loads for each frame as the third table 420. When a data read request is generated, the CPU 1 retrieves the decompression processing load of the compressed file obtained by compressing the data from the second table 410 and retrieves the maximum processing load in the third table 420. The maximum processing load retrieved from the third table 420 and the expansion processing load retrieved from the second table 410 are summed and compared with a predetermined value. If the sum of the maximum processing load searched from the third table 420 and the expansion processing load searched from the second table 410 is less than or equal to a predetermined value, the compressed file is read. Read the file. In the present embodiment, if the predetermined value is 100% and the total of the maximum processing load of the current game state and the decompression processing load of the compressed file to be read next is smaller than 100%, the compressed file is read and 100% or more is read. If so, read the uncompressed file.
[0126]
The predetermined value is not limited to 100%, and may be another value. For example, there is a possibility that the processing load increases rapidly due to the game progress process while the compressed file is read. In consideration of such a rapid increase in processing load, the predetermined value is set to 80%, for example. By setting the predetermined value to 80%, it is possible to cope with a sudden increase in processing load. For example, even when the number of characters appearing in the game is suddenly increased, the processing speed is not reduced. can do.
[0127]
For example, as shown in FIG. 9, the processing load of the CPU 1 one frame before is 40%, the processing load of the CPU 1 two frames before is 42%, and the processing load of the CPU 1 three frames before is 39%. In this case, the maximum processing load is 42%, which is the processing load two frames before. When the next compressed file to be read is “file_c.datp”, the expansion processing load for the expansion processing of “file_c.datp” is 30% as shown in FIG. 6B. The total of the expansion processing load 30% and the maximum processing load 42% of the compressed file to be read next is 72%, which is smaller than the predetermined value 100%, so that the compressed file is read. If the next compressed file to be read is “file_d.datp”, the expansion processing load for the expansion processing of “file_d.datp” is 60% as shown in FIG. The total of the decompression processing load 60% and the maximum processing load 42% of the compressed file to be read next is 102%, which is a predetermined value of 100% or more, so that the uncompressed file is read. .
[0128]
FIG. 10 is a flowchart showing an example of still another embodiment of the determination process in step S6 of FIG. The determination process shown in FIG. 10 is a process performed by the CPU 1 or the like executing a data reading program or the like stored in the recording medium 300. In addition, the data reading process in still another embodiment of the present invention is the same as the flowchart showing an example of the data reading process in FIG. 3, and the contents of the determination process in step S6 are different. Further, only the determination process in another embodiment will be described.
[0129]
In step S <b> 301, the CPU 1 refers to the third table 420 stored in the third table storage unit 63 and acquires the maximum processing load C. The CPU 1 acquires the maximum processing load in the processing load history for each frame in the third table 420 as the maximum processing load C.
[0130]
In step S302, the CPU 1 refers to the second table 410 stored in the second table storage unit 62, and acquires the decompression processing load B of the compressed file to be read next.
[0131]
In step S303, the CPU 1 calculates an addition value β obtained by adding the maximum processing load C acquired in step S301 and the unfolding processing load B acquired in step S302.
[0132]
In step S304, the CPU 1 determines whether or not the added value β of the maximum processing load C and the development processing load B is 100 or more. If it is determined that the added value β between the maximum processing load C and the expansion processing load B is 100 or more (YES in step S304), the process proceeds to step S306, where the maximum processing load C and the expansion processing load B When it is determined that the added value β is smaller than 100 (NO in step S304), the process proceeds to step S305.
[0133]
In step S305, the CPU 1 determines to read the compressed file and returns. In step S306, the CPU 1 determines to read an uncompressed file and returns.
[0134]
In this way, the decompression processing load for decompression processing for each compressed data is measured in advance and prepared as the second table 410. For example, the history of the processing load for each frame is represented as the third table 420. Memorize dynamically. When a data read request is generated, the sum of the maximum processing load of the processing load stored in the third table 420 and the decompression processing load of compressed data to be read is equal to or less than a predetermined value. Compressed data is read in, and uncompressed data is read if it is greater than a predetermined value. In this way, either the compressed file or the uncompressed file can be read according to the game state.
[0135]
In yet another embodiment of the present invention, the peak value of the decompression processing load for each compressed file is measured and prepared in advance as the second table 410, but the present invention is particularly limited to this. However, the second table 410 is not necessarily prepared, and only the third table 420 may be prepared. In this case, when the measured processing load is stored as the third table 420 and a data read request is generated, the maximum processing load stored in the third table 420 is equal to or less than a predetermined value. Compressed data is read in, and uncompressed data is read if it is greater than a predetermined value. In this way, either the compressed file or the uncompressed file can be read according to the game state.
[0136]
Note that the computer-readable recording medium in this embodiment may record two types of data, compressed data and non-compressed data, for all data, and compressed data and non-compressed data for some data. These two types of data may be recorded.
[0137]
In this embodiment, three determination processing methods are used as the determination processing method for the compressed file and the uncompressed file. However, the present invention is not particularly limited to this, and any one of the determination processing methods may be used. In addition, any two determination processing methods may be used in combination.
[0138]
Further, the processing load measuring unit 44 may measure the current processing load in the current game state and dynamically change the processing load required for each game state stored in the first table storage unit 61. In this case, since the processing load required for each game state is updated in real time, the disconnection process of the compressed data and the uncompressed data can be performed more accurately, and the data can be transferred at high speed without slowing down the progress of the game. Can be read.
[0139]
The type of video game to which the present invention is applied is not particularly limited, and can be applied to any video game that reads data from a computer-readable recording medium.
[0140]
【The invention's effect】
According to the first aspect of the present invention, the game state is selected by selecting the compressed data in the game state where the processing load of the arithmetic processing is sufficient, and selecting the uncompressed data in the game state where the processing load is not sufficient. Can be read at a high speed without slowing down the game progress.
[0141]
According to the second aspect of the present invention, it is used in the current processing load of the arithmetic processing unit in the first game state currently being executed and in the second game state executed next to the first game state. It is determined which one of compressed data and non-compressed data is to be read based on the decompression processing load of the arithmetic processing unit involved in the decompression processing of the compressed data, so that it is appropriate according to the processing load in the first game state Data can be read, and data can be read at high speed without slowing down the progress of the game.
[0142]
According to the third aspect of the present invention, it is necessary to measure the processing load required for the game state during the video game by storing in advance the processing load required for each game state for each game state of the video game. Therefore, the processing load can be reduced.
[0143]
According to the fourth aspect of the present invention, since the processing load in the game state can be measured in real time and either one of the compressed file and the non-compressed file can be read, appropriate data according to the game state Can be read at high speed without slowing down the game progress.
[0144]
According to the fifth aspect of the present invention, the game state is selected by selecting the compressed data in the game state where the processing load of the arithmetic processing is sufficient, and selecting the uncompressed data in the game state where the processing load is not sufficient. Can be read at a high speed without slowing down the game progress.
[0145]
According to the sixth aspect of the present invention, the game state is selected by selecting the compressed data in the game state where the processing load of the arithmetic processing is sufficient, and selecting the uncompressed data in the game state where the processing load is not sufficient. Can be read at a high speed without slowing down the game progress.
[0146]
According to the seventh aspect of the present invention, the game state is selected by selecting the compressed data in the game state where the processing load of the arithmetic processing is sufficient, and selecting the uncompressed data in the game state where the processing load is not sufficient. Can be read at a high speed without slowing down the game progress.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a video game apparatus according to an embodiment of the present invention.
FIG. 2 is a block diagram showing main functions of the video game apparatus shown in FIG.
FIG. 3 is a flowchart showing an example of data reading processing by the video game apparatus shown in FIG. 1;
FIG. 4 is a flowchart illustrating an example of a determination process in step S6 of FIG.
FIG. 5 is a block diagram showing main functions of a video game apparatus according to another embodiment of the present invention.
FIG. 6 is a diagram illustrating an example of a data structure of a first table and a second table.
7 is a flowchart showing another embodiment of data reading processing by the video game apparatus shown in FIG. 1; FIG.
FIG. 8 is a block diagram showing main functions of a video game apparatus according to still another embodiment of the present invention.
FIG. 9 is a diagram illustrating an example of a data structure of a third table.
FIG. 10 is a flowchart showing still another embodiment of data reading processing by the video game apparatus shown in FIG. 1;
[Explanation of symbols]
1 CPU
2 Bus line 3 Graphics data generation processor 4, 13 Interface circuit 5 Main memory 6 ROM
7 Decompression Circuit 8 Parallel Port 9 Serial Port 10 Rendering Processor 11 Audio Processor 12 Decoder 14, 15, 16 Buffer 17 Recording Medium Driver 18 Memory 19 Controller 21 Television Monitor 31 Program Execution Unit 32 Compressed Data Storage Unit 33 Uncompressed Data Storage Unit 34 program storage unit 35 data storage unit 36 table data storage unit 41 data judgment unit 42 data development unit 43 data reading unit 44 processing load measurement unit 61 first table storage unit 62 second table storage unit 63 third table storage Part

Claims (7)

ビデオゲームに使用されるデータを読み込むためのデータ読込プログラムであって、
前記データを圧縮した状態で記録されている圧縮データ及び前記データを圧縮していない状態で記憶されている非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する判断手段と、
前記判断手段が前記圧縮データを読み込むと判断した場合、当該圧縮データを展開する展開手段と、
前記判断手段が圧縮データを読み込むと判断した場合、前記展開手段によって展開されたデータを読み込み、前記判断手段が非圧縮データを読み込むと判断した場合、前記非圧縮データを読み込む読込手段としてビデオゲーム装置を機能させることを特徴とするデータ読込プログラム。
A data reading program for reading data used in a video game,
Determining means for determining, according to a game state, which one of compressed data recorded with the data compressed and uncompressed data stored without compressing the data read;
A decompressing means for decompressing the compressed data when the judging means determines to read the compressed data;
When the determination means determines that the compressed data is read, the video game apparatus is read as the reading means for reading the uncompressed data when the data expanded by the expansion means is read and the determination means determines that the non-compressed data is read. A data reading program characterized in that it functions.
前記ゲーム状態は、現在実行されている第1のゲーム状態と、前記第1のゲーム状態の次に実行される第2のゲーム状態とを含み、
前記判断手段は、前記第1のゲーム状態における現処理負荷と、前記第2のゲーム状態において用いられる圧縮データの展開処理にかかる展開処理負荷とに基づいて前記圧縮データ及び前記非圧縮データのうちのどちらを読み込むかを判断することを特徴とする請求項1記載のデータ読込プログラム。
The game state includes a first game state that is currently being executed and a second game state that is executed next to the first game state,
The determination means includes the compressed data and the non-compressed data based on a current processing load in the first game state and a decompression processing load on decompression processing of compressed data used in the second game state. The data reading program according to claim 1, wherein it is determined which of the data to be read.
前記ビデオゲームのゲーム状態ごとに各ゲーム状態に要する処理負荷をあらかじめ記憶する第1の記憶手段と、前記圧縮データごとに各圧縮データの展開処理に要する展開処理負荷をあらかじめ記憶する第2の記憶手段としてビデオゲーム装置をさらに機能させることを特徴とする請求項1又は2記載のデータ読込プログラム。First storage means for storing in advance processing load required for each game state for each game state of the video game, and second storage for storing in advance processing processing load required for expansion processing for each compressed data for each compressed data The data reading program according to claim 1 or 2, further comprising a video game device as a means. 前記ゲーム状態における処理負荷を計測する計測手段と、
前記計測手段によって計測された処理負荷を履歴として記憶する第3の記憶手段として前記ビデオゲーム装置をさらに機能させ、
前記判断手段は、前記履歴に基づいて前記圧縮データ及び前記非圧縮データのうちのどちらを読み込むかを判断することを特徴とする請求項1記載のデータ読込プログラム。
Measuring means for measuring the processing load in the game state;
Causing the video game device to further function as a third storage unit that stores the processing load measured by the measurement unit as a history;
The data reading program according to claim 1, wherein the determination unit determines which of the compressed data and the non-compressed data is to be read based on the history.
ビデオゲームに使用されるデータを読み込むデータ読込方法であって、
ビデオゲーム装置が、前記データを圧縮した状態で記録されている圧縮データ及び前記データを圧縮していない状態で記憶されている非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する判断ステップと、
ビデオゲーム装置が、前記判断ステップが前記圧縮データを読み込むと判断した場合、当該圧縮データを展開する展開ステップと、
ビデオゲーム装置が、前記判断ステップが圧縮データを読み込むと判断した場合、前記展開ステップによって展開されたデータを読み込み、前記判断ステップが非圧縮データを読み込むと判断した場合、前記非圧縮データを読み込む読込ステップとを含むことを特徴とするデータ読込方法。
A data reading method for reading data used in a video game,
The video game device determines which one of compressed data recorded with the data compressed and uncompressed data stored without compressing the data depending on the game state. A decision step;
When the video game device determines that the determination step reads the compressed data, the expansion step of expanding the compressed data;
When the video game device determines that the determination step reads compressed data, the video game device reads the data expanded by the expansion step, and when the determination step determines that non-compressed data is read, reads the uncompressed data. A data reading method comprising: steps.
ビデオゲームに使用されるデータを読み込むビデオゲーム装置であって、
前記データを圧縮した状態で記録されている圧縮データ及び前記データを圧縮していない状態で記憶されている非圧縮データのうちのどちらを読み込むかをゲーム状態に応じて判断する判断手段と、
前記判断手段が前記圧縮データを読み込むと判断した場合、当該圧縮データを展開する展開手段と、
前記判断手段が圧縮データを読み込むと判断した場合、前記展開手段によって展開されたデータを読み込み、前記判断手段が非圧縮データを読み込むと判断した場合、前記非圧縮データを読み込む読込手段とを備えることを特徴とするビデオゲーム装置。
A video game device for reading data used in a video game,
Determining means for determining, according to a game state, which one of compressed data recorded with the data compressed and uncompressed data stored without compressing the data read;
A decompressing means for decompressing the compressed data when the judging means determines to read the compressed data;
When the determination unit determines to read compressed data, it reads data expanded by the expansion unit, and when the determination unit determines to read uncompressed data, the reading unit reads the uncompressed data. A video game device characterized by.
ビデオゲームに使用されるデータを記録しているコンピュータ読み取り可能な記録媒体であって、
前記データを圧縮した状態の圧縮データとして記録し、前記データを圧縮していない状態の非圧縮データとして記録していることを特徴とするコンピュータ読み取り可能な記録媒体。
A computer readable recording medium recording data used in a video game,
A computer-readable recording medium, wherein the data is recorded as compressed data in a compressed state, and the data is recorded as uncompressed data in an uncompressed state.
JP2002206146A 2002-07-15 2002-07-15 Data reading program, data reading method, and video game apparatus Expired - Fee Related JP3566953B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002206146A JP3566953B2 (en) 2002-07-15 2002-07-15 Data reading program, data reading method, and video game apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002206146A JP3566953B2 (en) 2002-07-15 2002-07-15 Data reading program, data reading method, and video game apparatus

Publications (2)

Publication Number Publication Date
JP2004041593A true JP2004041593A (en) 2004-02-12
JP3566953B2 JP3566953B2 (en) 2004-09-15

Family

ID=31711258

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002206146A Expired - Fee Related JP3566953B2 (en) 2002-07-15 2002-07-15 Data reading program, data reading method, and video game apparatus

Country Status (1)

Country Link
JP (1) JP3566953B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013118696A (en) * 2013-03-05 2013-06-13 Nec Casio Mobile Communications Ltd Terminal device and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013118696A (en) * 2013-03-05 2013-06-13 Nec Casio Mobile Communications Ltd Terminal device and program

Also Published As

Publication number Publication date
JP3566953B2 (en) 2004-09-15

Similar Documents

Publication Publication Date Title
JP3597803B2 (en) Volume control program, volume control method, and video game apparatus
JP3479504B2 (en) VIDEO GAME DEVICE, CHARACTER BEHAVIOR CONTROL METHOD, AND COMPUTER-READABLE RECORDING MEDIUM CONTAINING CHARACTER BEHAVIOR CONTROL PROGRAM
JP3686920B2 (en) 3D image processing program, 3D image processing method, and video game apparatus
US6926608B2 (en) Recording medium storing three-dimensional image processing program, three-dimensional image processing program, method and device
JP3647790B2 (en) Image display program, image display method, and video game apparatus
JPH10307905A (en) Image display processing device and method, and machine readable recording medium recording computer program
US7980955B2 (en) Method and apparatus for continuous execution of a game program via multiple removable storage mediums
US7034832B2 (en) Computer readable medium storing 3-D image processing program, 3-D image processing method and device, 3-D image processing program, and video game device
US20020173350A1 (en) Recording medium for storing gauge display program, gauge display method video game device, and gauge display program
JP3566953B2 (en) Data reading program, data reading method, and video game apparatus
JP3564440B2 (en) Moving image generation program, moving image generation method and apparatus
JP3539839B2 (en) Cursor display method, game system, and recording medium in pseudo-three-dimensionally displayed field
JP3617960B2 (en) Three-dimensional game image processing program, three-dimensional game image processing method, and video game apparatus
JP3561480B2 (en) Training game progress control program, training game progress control method, and training game device
JP3105817B2 (en) Image display processing device, image display processing method, and machine-readable recording medium recording computer program
JP3629453B2 (en) Game progress control program, game progress control method, and video game apparatus
JP2002541600A (en) Apparatus and method for perspective transformation
JP2003024626A (en) Voice output program, voice output method and video game device
JP3454359B2 (en) Setting screen display program, setting screen display method, and video game apparatus
JP3326128B2 (en) Game device, image display method, and machine-readable information recording medium recording program
JP4584665B2 (en) 3D game image processing program, 3D game image processing method, and video game apparatus
JPH1078792A (en) Voice processing method, game system and recording medium
JP3019351U (en) External storage device for computer
EP1889645A2 (en) Data processing
JPH08161465A (en) Method for generating image data file, recording medium and method for preparing image

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040302

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040408

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: 20040608

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040611

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

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

Free format text: PAYMENT UNTIL: 20080618

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

Free format text: JAPANESE INTERMEDIATE CODE: R313115

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

Free format text: PAYMENT UNTIL: 20080618

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090618

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090618

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20090618

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090618

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100618

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110618

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110618

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120618

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130618

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130618

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20140618

Year of fee payment: 10

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees