JP4528027B2 - 画像生成プログラム、情報記憶媒体及び画像生成システム - Google Patents

画像生成プログラム、情報記憶媒体及び画像生成システム Download PDF

Info

Publication number
JP4528027B2
JP4528027B2 JP2004141314A JP2004141314A JP4528027B2 JP 4528027 B2 JP4528027 B2 JP 4528027B2 JP 2004141314 A JP2004141314 A JP 2004141314A JP 2004141314 A JP2004141314 A JP 2004141314A JP 4528027 B2 JP4528027 B2 JP 4528027B2
Authority
JP
Japan
Prior art keywords
operating frequency
frame
image
image generation
processing
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.)
Active
Application number
JP2004141314A
Other languages
English (en)
Other versions
JP2005322144A (ja
Inventor
聡 大内
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.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Namco Bandai Games 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 Namco Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2004141314A priority Critical patent/JP4528027B2/ja
Publication of JP2005322144A publication Critical patent/JP2005322144A/ja
Application granted granted Critical
Publication of JP4528027B2 publication Critical patent/JP4528027B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
従来より、仮想的な3次元空間であるオブジェクト空間内において所与の視点(仮想カメラ)から見える画像を生成する画像生成システム(ゲームシステム)が知られており、いわゆる仮想現実を体験できるものとして人気が高い。競争ゲーム(カーゲーム)を楽しむことができる画像生成システムを例にとれば、プレーヤは、操作部(ステアリング、シフトレバー、アクセルペダル、ブレーキペダル等)を用いて移動オブジェクト(自プレーヤ移動オブジェクト、自車)を操作し、他のプレーヤ(コンピュータプレーヤ又は他の人間プレーヤ)が操作する移動オブジェクト(他プレーヤ移動オブジェクト、他車)と競争することでゲームを楽しむ。
さて、このような画像生成システムでは、1フレーム周期に全てのオブジェクトの描画処理を完了しなければならないという課題がある。
しかしながら、例えば、表示オブジェクトが多い場合や処理負荷が重いゲームイベントが発生した場合等、1フレーム周期に描画処理を完了させることが間に合わなくなる場合があった。このような場合、2フレームに一回画像を更新することもおこなわれているが、シミュレーション時間と表示タイミングずれが生じて不自然な画像が表示されてしまうおそれがあった。
特開2000−214868号
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、少ない消費電力で演算負荷の高いフレーム発生しても高品質な画像を生成できる画像生成プログラム、情報記憶媒体及び画像生成システムを提供することにある
(1)本発明は、動作周波数を動的に変更可能な少なくとも1つ以上のプロセッサを用いて画像生成を行う画像生成システムであって、
各フレームの画像の描画バッファへの描画終了タイミングを検出する描画終了タイミング検出部と、
検出された描画終了タイミングに基づき各フレームが所定のフレーム更新時間内に描画されたかいなか判断し、描画されていないと判断した場合には、前記プロセッサの動作周波数を上げるように設定変更を行う動作周波数設定変更処理部と、
操作部からの入力データに基づき、設定された動作周波数で前記プロセッサが動作して、仮想3次元空間内に存在する事物の時間的な変化についてのシミュレーション演算をおこない、前記シミュレーション演算の結果に基づき得られたオブジェクトの配置情報及びゲームパラメータの少なくとも一方に基づき、仮想3次元空間を仮想カメラから見た各フレームの画像を生成し描画バッファに描画する画像生成部と、を含むことを特徴とする。
また本発明に係るプログラムは、コンピュータにより実行可能なプログラム(情報記憶媒体又は搬送波に具現化されるプログラム)であって、上記各処理部としてコンピュータを機能させることを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより読み取り可能(使用可能)な情報記憶媒体であって、上記処理部としてコンピュータを機能させるためのプログラムを含むことを特徴としている。また本発明にかかる画像生成方法は、上記各処理部の処理を行うステップを含むことを特徴とする。
動作周波数を動的に変更可能な少なくとも1つ以上のプロセッサとは、アプリケーションプログラム(例えばゲームプログラム等の画像生成プログラム等)の実行時にプログラムからの命令により動的に動作周波数が変更可能なプロセッサである。ここでアプリケーションプログラム(例えばゲームプログラム等の画像生成プログラム等)の実行が物理的に複数のプロセッサ(例えばCPUとDSP等)で実行される構成でもよい。
各フレームの画像の描画バッファへの描画終了の検出は、例えば描画用プログラムの最後(描画処理の最後の命令の後)に描画終了を通知するための描画終了通知命令を設定して置くき、当該描画終了通知命令の実行を検出すること等により実現することができる。
所定のフレームの更新時間とは第nのフレームの画像が表示されてから第n+1のフレームの画像が表示されるまでの時間であり、全フレームにおいて一定間隔のフレーム更新周期を有している。例えば1/60秒毎に画像が更新されるシステムにおいては、1/60秒がフレーム更新時間となる。
仮想3次元空間内に存在する事物の時間的な変化とは、例えばオブジェクトの位置や移動距離、速度、加速度、各速度、モーション等の時間的な変化や、また例えば、ラップタイムや時間の積算で演算される量(例えばダメージ量)の時間的な変化や仮想3次元空間内に存在する事物に影響を与えるパラメータ(時間の関数)等である。
シミュレーション演算とは、例えば運動方程式やエネルギー保存の法則やその他の現実世界の物理法則を用いて、現実世界の物理現象をシミュレーションするための物理値(仮想3次元空間内のオブジェクトの位置、速度、角速度、加速度、角加速度、移動距離、回転)の演算処理や単位時間応じたモーション補完処理やシミュレーション時間の積算処理やパラメータやラップタイムや時間の積算で演算される量(例えばダメージ量)の演算処理等である。
本発明によれば、1フレーム分の画像生成処理(1フレーム分の画像が描画されるまでの処理であり、シミュレーション演算等のゲーム処理を含む)が所定のフレーム更新時間内に終わらない場合には、画像生成処理を行うプロセッサの動作周波数を上げる設定をおこなう。
1フレーム分の画像生成処理が所定のフレーム更新時間内に終わらない場合とは、そのフレームの処理負荷が高く所定のフレーム更新時間内に描画バッファへの描画が終了せずに処理落ち(当該フレームの画像が表示おち)が発生する可能性が高い。
しかし本発明では、画像生成を行うプロセッサの動作周波数を上げることにより処理時間を短くすることができるため、処理落ち(当該フレームの画像が表示おち)の発生を防止し高品質な画像を提供することができる。
なお複数のプロセッサを含む構成においては複数のプロセッサの動作周波数をすべて変更する場合でもよいし、複数のプロセッサの一部の動作周波数をすべて変更する場合でもよい。
(2)また本発明の画像生成システム、プログラム、情報記憶媒体及び画像生成方法は、
動作周波数設定変更処理部は、
検出された描画終了タイミングに基づき各フレームが所定のフレーム更新時間内に描画されたかいなか判断し、描画されていると判断した場合には、前記プロセッサの動作周波数を下げるように設定変更を行うことを特徴とする。
1フレーム分の画像生成処理が所定のフレーム更新時間内に終わる場合には、そのフレームの処理負荷が低く、もっと低い動作周波数で画像生成処理をおこなっても所定のフレーム更新時間内に描画バッファへの描画終了する。
このような場合本発明によれば動作周波数を下げることができるので、常に必要とされる最大値にしておく場合に比べ、消費電力を少なくすることができる。
(3)また本発明の画像生成システム、プログラム、情報記憶媒体及び画像生成方法は、
動作周波数設定変更処理部は、
各フレームが所定の回数連続して所定のフレーム更新時間内に描画されたかいなかを判断し、判断結果に基づき画像生成部の動作周波数を下げるための設定を行うことを特徴とする。
動作周波数を下げる場合には1フレーム分の画像生成処理(1フレーム分の画像が描画されるまでの処理であり、シミュレーション演算等のゲーム処理を含む)が所定のフレーム更新時間内に終わる状態が所定期間の間続いてから動作周波数を下げるので、周波数の変化を穏やかにすることができる。
(4)また本発明の画像生成システム、プログラム、情報記憶媒体及び画像生成方法は、
動作周波数設定変更処理部は、
動作周波数を下げる時の変化率は動作周波数を上げる時の変化率よりも小さくなるように動作周波数の設定を行うことを特徴とする。
(5)本発明は、動作周波数を動的に変更可能な少なくとも1つ以上のプロセッサを用いて画像生成を行う画像生成システムであって、
各フレームでの予測処理負荷を演算する予測処理負荷演算処理部と、
前記予測処理負荷に基づき各フレームの画像生成に必要な動作周波数の設定の変更が必要かいなか判断し、必要であると判断した場合には、前記予測処理負荷に基づき前記プロセッサの動作周波数の設定を変更する動作周波数変更処理部と、
操作部からの入力データに基づき、設定された動作周波数で前記プロセッサが動作して、仮想3次元空間内に存在する事物の時間的な変化についてのシミュレーション演算をおこない、前記シミュレーション演算の結果に基づき得られたオブジェクトの配置情報及びゲームパラメータの少なくとも一方に基づき、仮想3次元空間を仮想カメラから見た各フレームの画像を生成し描画バッファに描画する画像生成部と、を含むことを特徴とする。
各フレームの予測処理負荷とは、各フレームの画像が描画されるまでの処理(シミュレーション処理と画像生成処理を含む)負荷であり、例えばゲームの画像を生成する場合であれば、各フレームにおける表示物の数(画面内に表示されるもの)、使用するポリゴン数(表示されない物も含む)、シミュレーション演算の対象となる移動体又はオブジェクトの数(出走台数)、ゲームイベントの内容、プレーヤ移動体の位置等に応じて各フレームの画像が描画されるまでの処理負荷が異なってくる。
仮想3次元空間内に存在する事物の時間的な変化とは、例えばオブジェクトの位置や移動距離、速度、加速度、各速度、モーション等の時間的な変化や、また例えば、ラップタイムや時間の積算で演算される量(例えばダメージ量)の時間的な変化や仮想3次元空間内に存在する事物に影響を与えるパラメータ(時間の関数)等である。
シミュレーション演算とは、例えば運動方程式やエネルギー保存の法則やその他の現実世界の物理法則を用いて、現実世界の物理現象をシミュレーションするための物理値(仮想3次元空間内のオブジェクトの位置、速度、角速度、加速度、角加速度、移動距離、回転)の演算処理や単位時間応じたモーション補完処理やシミュレーション時間の積算処理ややパラメータやラップタイムや時間の積算で演算される量(例えばダメージ量)の演算処理等である。
本発明によればリアルタイムに各フレームの処理負荷を予測して前記予測処理負荷に基づき前記プロセッサの動作周波数の設定を変更することは可能である。したがって各フレームの予測処理負荷が高い場合には各フレームの動作周波数を高く設定し、各フレームの予測処理負荷が高くない場合には各フレームの動作周波数を低く設定することにより、処理負荷に見合った必要十分な動作周波数で処理を行うことができるため、処理落ちすることなく効率よく省電力化を計る事ができる。
なお複数のプロセッサを含む構成においては複数のプロセッサの動作周波数をすべて変更する場合でもよいし、複数のプロセッサの一部の動作周波数をすべて変更する場合でもよい。
(6)また本発明の画像生成システム、プログラム、情報記憶媒体及び画像生成方法は、
前記予測処理負荷演算処理部は、
各フレームにおける表示物の数、オブジェクトに使用されているプリミティブ数、各フレームにおいてシミュレーション演算の対象となるオブジェクト数、各フレームで発生するゲームイベントの内容、各フレームにおけるプレーヤ移動体の位置を示す情報の少なくとも1つの情報に基づき、各フレームの予測処理負荷を演算する事を特徴とする。
各フレームにおける表示物の数とは、画像生成の結果表示対象となるオブジェクトの数である。各フレームにおける表示物の数が増えれば画像生成にかかる処理負荷等が増大する可能性が高い。
ここにおいて各フレームにおける表示物の数はLODを加味して判断することが好ましい。すなわちLODはオブジェクトの詳細度を示す物であり、詳細度が高いと処理負荷が高くなるため、表示物の数とそれぞれのLODを所定のアルゴリズムで乗算した値を表示物の数として使用する場合も本発明の範囲内である。
またオブジェクトに使用されているプリミティブ数とは、表示されるか否か似関わらず、仮想3次元空間内に存在するオブジェクトに使用されているプリミティブ数(ポリゴン数、頂点数等)である。オブジェクトに使用されているプリミティブ数が増加すると、透視投影変換等の3次元演算やレンダリング演算処理負荷等が増加する可能性が高い。
また各フレームにおいてシミュレーション演算の対象となるオブジェクト数とは、例えば移動体オブジェクト等である。各フレームにおいてシミュレーション演算の対象となるオブジェクト数が増えるとオブジェクトの位置演算負荷等が増加する可能性が高い。
各フレームで発生するゲームイベントの内容とは、例えば爆発とか、衝突とかのゲーム上発生するイベントである。各フレームにおいてかかるゲーム上のイベントが発生すると、シミュレーション演算負荷や画像処理演算負荷等が増加する可能性が高い。
各フレームにおけるプレーヤ移動体の位置を示す情報とは位置を示す座標値でもよいし、プレーヤ移動体の位置するエリアやブロックやステージ等をしめす情報でもよい。プレーヤ移動体の位置によって、画像の背景や移動等のシミュレーション演算の内容が変わってくるので処理負荷も変わってくる。
以下、本発明の好適な実施形態について図面を用いて説明する。
なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を何ら限定するものではない。また本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。
1. 第1の実施の形態
図1に、第1の実施の形態の画像生成システム(例えばゲームシステム)の機能ブロック図の一例を示す。
なお同図において本実施形態は、少なくとも処理部100とクロック供給処理部150を含めばよく(或いは処理部100と記憶部170、或いは処理部100と記憶部170と情報記憶媒体180を含めばよく)、それ以外のブロック(例えば操作部160、表示部190、音出力部192、携帯型情報記憶装置194、通信部196)については、任意の構成要素とすることができる。
ここで処理部100は、基準クロック156に基づき動作し、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、又は音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ(CPU、DSP等)、或いはASIC(ゲートアレイ等)などのハードウェアや、所与のプログラム(ゲームプログラム)により実現できる。
クロック供給処理部150は、クロック生成部152と生成クロック制御情報設定レジスタ154を含み、処理部100を実現するための各種プロセッサに、設定された動作周波数の基準クロックを供給する処理を行う。
生成クロック制御情報設定レジスタ154には、動作周波数を制御するための情報(動作周波数自体でもよいし、動作周波数に対応した分周情報等でもよい)が記憶され、ゲーム実行中に動作周波数設定処理部120によって動的に変更可能に構成されている。
クロック生成部152は、生成クロック制御情報設定レジスタ154に設定された内容基づき、設定された動作周波数の基準クロック156を発生させ、処理部100に供給する処理を行うもので、その機能はクロック発信器、分周回路、プログラマブルタイマ等のハードウエアで実現できる。
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筐体などのハードウェアにより実現できる。
記憶部170は、メインメモリ(主記憶部等)172やフレームバッファ(描画バッファ等)174等を含み、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。
情報記憶媒体(コンピュータにより使用可能な記憶媒体)180は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納される情報に基づいて本発明(本実施形態)の種々の処理を行う。即ち情報記憶媒体180には、本発明(本実施形態)の手段(特に処理部100に含まれるブロック)を実行するための情報(プログラム或いはデータ)が格納される。
なお、情報記憶媒体180に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部170に転送されることになる。また情報記憶媒体180に記憶される情報は、本発明の処理を行うためのプログラム、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも1つを含むものである。
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、LCD、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。なお表示部のフレーム更新レートはホストからも指示によって変更可能に構成されている。
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
携帯型情報記憶装置194は、プレーヤの個人データやセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。
通信部196は、外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
なお本発明(本実施形態)の手段を実行するためのプログラム或いはデータは、ホスト装置(サーバ)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180に配信するようにしてもよい。このようなホスト装置(サーバ)の情報記憶媒体の使用も本発明の範囲内に含まれる。
処理部100は、ゲーム処理部110、動作周波数設定処理部120、画像生成部130、音生成部140を含む。
ここでゲーム処理部110は、コイン(代価)の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト(1又は複数のプリミティブ面)の位置や回転角度(X、Y又はZ軸回りの回転角度)を求める処理、オブジェクトを動作させる処理(モーション処理)、視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果(成果、成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバ処理などの種々のゲーム処理を、操作部160からの操作データや、携帯型情報記憶装置194からの個人データ、保存データや、ゲームプログラムなどに基づいて行う。
動作周波数設定処理部120は、生成クロック制御情報設定レジスタ154に対し、ゲーム処理部110や画像生成部139の処理を実行するプロセッサの動作周波数の設定や設定変更処理を行うもので、各フレームの画像の描画バッファへの描画終了タイミングを検出する描画終了タイミング検出部と、検出された描画終了タイミングに基づき各フレームが所定のフレーム更新時間内に描画されたかいなか判断し、描画されていないと判断した場合には、前記プロセッサの動作周波数を上げるように設定変更を行う動作周波数設定変更処理部として機能する。
また動作周波数設定処理部120は、検出された描画終了タイミングに基づき各フレームが所定のフレーム更新時間内に描画されたかいなか判断し、描画されていると判断した場合には、前記プロセッサの動作周波数を下げるように設定変更を行うようにしてもよい。
また動作周波数設定処理部120は、各フレームが所定の回数連続して所定のフレーム更新時間内に描画されたかいなかを判断し、判断結果に基づき画像生成部の動作周波数を下げるための設定を行うようにしてもよい。
また動作周波数設定処理部120は、動作周波数を下げる時の変化率は動作周波数を上げる時の変化率よりも小さくなるように動作周波数の設定を行うようにしてもよい。
また動作周波数設定処理部120は、各フレームでの予測処理負荷を演算する予測処理負荷演算処理部と、前記予測処理負荷に基づき各フレームの画像生成に必要な動作周波数の設定の変更が必要かいなか判断し、必要であると判断した場合には、前記予測処理負荷に基づき前記プロセッサの動作周波数の設定を変更する動作周波数変更処理部として機能するようにしてもよい。
画像生成部130は、ゲーム処理部110からの指示等にしたがって各種の画像処理を行い、例えばオブジェクト空間内で仮想カメラ(視点)から見える画像を生成して、表示部190に出力する。
画像生成部130は、前記シミュレーション演算の結果に基づき得られたオブジェクトの配置情報及びゲームパラメータの少なくとも一方に基づき、仮想3次元空間を仮想カメラから見た各フレームの画像を生成し描画バッファに描画する処理を行う。
音生成部140は、ゲーム処理部110からの指示等にしたがって各種の音処理を行い、BGM、効果音、又は音声などの音を生成し、音出力部192に出力する。
なお、ゲーム処理部110、仮想オブジェクト配置処理部120、画像生成部130、音生成部150の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
画像生成部130は、ジオメトリ処理部(3次元演算部)132、描画部(レンダリング部)140を含む。
ここで、ジオメトリ処理部132は、座標変換、クリッピング処理、透視変換、或いは光源計算などの種々のジオメトリ処理(3次元演算)を行う。そして、本実施形態では、ジオメトリ処理後(透視変換後)のオブジェクトデータ(オブジェクトの頂点座標、頂点テクスチャ座標、或いは輝度データ等)は、記憶部170の主記憶部172に格納されて、保存される。
描画部140は、ジオメトリ処理後(透視変換後)のオブジェクトデータと、記憶部170に記憶されるテクスチャとに基づいて、オブジェクトを描画バッファ174に描画する。これにより、オブジェクトが移動するオブジェクト空間において、仮想カメラ(視点)から見える画像が描画(生成)されるようになる。
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末を用いて生成してもよい。
まず第1の実施の形態について説明する。
第1の実施の形態は、各フレームが規定のフレーム更新時間内に描画されたか否かにかんするフレーム更新状態を検出し、検出結果に基づき各フレームが規定のフレーム更新時間内に描画されていないと判断した場合には、前記プロセッサの動作周波数を上げるための設定を行い、設定された動作周波数で前記プロセッサが動作して、仮想3次元空間内に存在する事物の時間的な変化についてのシミュレーション演算をおこない、前記シミュレーション演算の結果に基づき得られたオブジェクトの配置情報及びゲームパラメータの少なくとも一方に基づき、仮想3次元空間を仮想カメラから見た各フレームの画像を生成し描画バッファに描画する処理を行う。
各フレームの更新時間とは第nのフレームの画像が表示されてから第n+1のフレームの画像が表示されるまでの時間であり、本実施の形態では規定のフレーム更新時間(例えば1/60秒)毎に次のフレームに更新するように構成されている。
各フレームの画像の描画バッファへの描画終了の検出は、例えば描画用プログラムの最後(描画処理の最後の命令の後)に描画終了を通知するための描画終了通知命令を設定して置くき、当該描画終了通知命令の実行を検出すること等により実現することができる。従って、規定のフレーム更新時間内に描画終了通知を受けとったか否かにもとづいて各フレームが規定のフレーム更新時間内に描画されたか否かにかんするフレーム更新状態を判断するようにしてもよい。
図2は、本実施の形態の処理の流れの一例について説明するためのフローチャート図である。
まずF=初期周波数、Tup=0に初期化する(ステップS10)。ここで、FはCPUの動作周波数であり、Tupは周波数を増減させた後各フレームが所定の回数連続して規定のフレーム更新時間内に描画されたかいなかを判断するためのカウンタであり、周波数の変化を穏やかにするために使用される。
次に各フレーム毎に以下の処理を繰り返す。
1フレーム分のゲーム処理(1フレーム分の画像が描画されるまでの処理)を行う(ステップS20)。例えば操作部からの入力データに基づき、設定された動作周波数で前記プロセッサが動作して、仮想3次元空間内に存在する事物の時間的な変化についてのシミュレーション演算をおこない、前記シミュレーション演算の結果に基づき得られたオブジェクトの配置情報及びゲームパラメータの少なくとも一方に基づき、仮想3次元空間を仮想カメラから見た各フレームの画像を生成し描画バッファに描画する処理を行う。
そして規定フレーム更新周期に達したら描画バッファの画像を表示部に出力する(ステップS30、S40)。
ここで1フレーム分のゲームの処理(1フレーム分の画像が描画されるまでの処理)が1画面更新時間(所定のフレーム更新時間)内に終わったか否か判断し、終わらない場合には以下のステップS60〜S80の処理を行う。
まずF=F+dF、Tup=10をセットする(ステップS60)。ここでdFは、周波数変化単位である。
次にF>FmaxであればF=Fmaxをセットする(ステップS70、S80)と
また1フレーム分のゲームの処理(1フレーム分の画像が描画されるまでの処理)が1画面更新時間(規定のフレーム更新時間)内に終わった場合には以下のステップS90〜S120の処理を行う。
まずTup=0か否か判断し、Tup=0であればF=F−dF、Tup=10をセットする(ステップS90、S100)。ここでdFは、周波数変化単位である。
次にF<FmimであればF=Fmimをセットする(ステップS110、S120)。
またTup=0でなければTup=Tup−1をセットし、動作周波数の設定の変更は行わない(ステップS90、S130)。
そしてFをプロセッサ(CPUやDSP等のプロセッサ)の動作周波数として設定する処理を行い、ステップS20に戻って次のフレームの処理を行う(ステップS130)。
このようにすることにより、1フレーム分のゲームの処理(1フレーム分の画像が描画されるまでの処理)が1画面更新時間(所定のフレーム更新時間)内に終わらない場合には、直ちにゲーム処理(1フレーム分の画像が描画されるまでの処理)を行うプロセッサの動作周波数を上げる設定をおこなう。
そして、1フレーム分のゲームの処理(1フレーム分の画像が描画されるまでの処理)が1画面更新時間(規定のフレーム更新時間)内に終わる場合には、ゲーム処理(1フレーム分の画像が描画されるまでの処理)を行うプロセッサの動作周波数を下げるための設定を行う。ここで、画像生成部の動作周波数を下げる場合には、各フレームが所定の回数連続して規定のフレーム更新時間内に描画された場合に動作周波数を下げるための設定を行う。
このように動作周波数を上げる場合には直ちに上げることにより、描画が規定時間内に終わらない等の状況を早急に解消できる。また動作周波数を下げる場合には1フレーム分のゲームの処理(1フレーム分の画像が描画されるまでの処理)が1画面更新時間(規定のフレーム更新時間)内に終わる状態が所定期間続いてから動作周波数を下げるので、周波数の変化を穏やかにすることができる。
また上記処理では、所定の単位dF毎に動作周波数の設定を増減させる場合について説明したが、これに限られない。
例えば動作周波数を下げる時の動作周波数の変化率は動作周波数を上げる時の動作周波数の変化率よりも小さくなるように動作周波数の設定を行うようにしてもよい。例えばステップS100で動作周波数を下げる時の周波数変化単位であるdFをステップS60で動作周波数を上げる時の周波数変化単位であるdFをより小さく設定するようにしてもよい。
次に第2の実施の形態について説明する。
第2の実施の形態は、各フレームでの予測処理負荷を演算し、前記予測処理負荷に基づき各フレームの画像生成に必要な動作周波数の変更が必要であるかいなか判断し、必要であると判断した場合には、前記予測処理負荷に基づき前記プロセッサの動作周波数の設定を変更し、操作部からの入力データに基づき変更後の動作周波数で前記プロセッサが動作して、仮想3次元空間内に存在する事物の時間的な変化についてのシミュレーション演算をおこない、前記シミュレーション演算の結果に基づき得られたオブジェクトの配置情報及びゲームパラメータの少なくとも一方に基づき、仮想3次元空間を仮想カメラから見た各フレームの画像を生成し描画バッファに描画する処理を行う。
ここで各フレームでの予測処理負荷は、各フレームにおける表示物の数(LODを加味する)、オブジェクトに使用されているプリミティブ数、各フレームにおいてシミュレーション演算の対象となるオブジェクト数、各フレームで発生するゲームイベントの内容、各フレームにおけるプレーヤ移動体の位置を示す情報の少なくとも1つの情報に基づき演算するようにしてもよい。
図3は、予測処理負荷に基づき動作周波数を変更する処理の流れの他一例について説明するためのフローチャート図である。
第2の実施の形態では各フレーム毎に以下の処理を繰り返す。
まず操作部からの入力情報を取得する(ステップS210)。
次のフレームでの予測処理負荷を演算する(ステップS220)。
そして予測処理負荷に基づき各フレームの画像生成に必要な動作周波数の変更が必要であるかいなか判断し、必要であると判断した場合には、前記予測処理負荷に基づき前記プロセッサの動作周波数の設定を変更する(ステップS230,S240)。
操作部からの入力データに基づき、変更後の動作周波数で前記プロセッサが動作して、仮想3次元空間内に存在する事物の時間的な変化についてのシミュレーション演算をおこない、前記シミュレーション演算の結果に基づき得られたオブジェクトの配置情報及びゲームパラメータの少なくとも一方に基づき、仮想3次元空間を仮想カメラから見た各フレームの画像を生成し描画バッファに描画する処理を行う(ステップS250)。
このように予測処理負荷に応じてリアルタイムに各フレームの処理負荷を予測して前記予測処理負荷に基づき前記プロセッサの動作周波数の設定を変更することは可能である。したがって各フレームの予測処理負荷が高い場合には各フレームの動作周波数を高く設定し、各フレームの予測処理負荷が高くない場合には各フレームの動作周波数を低く設定することにより、処理負荷に見合った必要十分な動作周波数で処理を行うことができるため、処理落ちすることなく効率よく省電力化を計る事ができる。
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
また、本発明は種々のゲーム(格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等)に適用できる。
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステムに適用できる。
本実施の形態の画像生成システム(例えばゲームシステム)の機能ブロック図の一例を示す。 本実施の形態の処理の流れの一例について説明するためのフローチャート図である。 予測処理負荷に基づき動作周波数を変更する処理の流れの他一例について説明するためのフローチャート図である。
符号の説明
100 処理部
110 ゲーム処理部
112 シミュレーション演算部
120 動作周波数設定処理部
130 画像生成部
132 ジオメトリ処理部
134 描画部
140 音生成部
150 クロック供給処理部
152 クロック生成部
154 生成クロック制御情報レジスタ
160 操作部
170 記憶部
172 メインメモリ
174 フレームバッファ
180 情報記憶媒体
190 表示部
192 音出力部
194 携帯型情報記憶装置
196 通信部

Claims (5)

  1. 動作周波数を動的に変更可能な少なくとも1つ以上のプロセッサを用いて画像生成を行う画像生成プログラムであって、
    各フレームの画像の描画バッファへの描画終了タイミングを検出する描画終了タイミング検出部と、
    検出された描画終了タイミングに基づき各フレームが所定のフレーム更新時間内に描画されたかいなか判断し、描画されていないと判断した場合には、前記プロセッサの動作周波数を上げるように設定変更を行う動作周波数設定変更処理部と、
    操作部からの入力データに基づき、設定された動作周波数で前記プロセッサが動作して、仮想3次元空間内に存在する事物の時間的な変化についてのシミュレーション演算をおこない、前記シミュレーション演算の結果に基づき得られたオブジェクトの配置情報及びゲームパラメータの少なくとも一方に基づき、仮想3次元空間を仮想カメラから見た各フレームの画像を生成し描画バッファに描画する画像生成部と、
    してコンピュータを機能させ、
    動作周波数設定変更処理部は、
    検出された描画終了タイミングに基づき各フレームが所定のフレーム更新時間内に描画されたか否か判断し、描画されていると判断した場合には、前記プロセッサの動作周波数を下げるように設定変更を行い、動作周波数を下げる時の変化率は動作周波数を上げる時の変化率よりも小さくなるように動作周波数の設定を行うことを特徴とする画像生成プログラム。
  2. 請求項1において、
    前記描画終了タイミング検出部は、
    描画処理の最後の命令の後に設定された描画終了通知命令の実行の検出により、前記描画終了タイミングを検出することを特徴とする画像生成プログラム
  3. 請求項1又は2において、
    動作周波数設定変更処理部は、
    各フレームが所定の回数連続して所定のフレーム更新時間内に描画されたかいなかを判断し、判断結果に基づき画像生成部の動作周波数を下げるための設定を行うことを特徴とするプログラム。
  4. コンピュータ読み取り可能な情報記憶媒体であって、請求項1乃至3のプログラムが記憶されていることを特徴とする情報記憶媒体。
  5. 動作周波数を動的に変更可能な少なくとも1つ以上のプロセッサを用いて画像生成を行う画像生成システムであって、
    各フレームの画像の描画バッファへの描画終了タイミングを検出する描画終了タイミング検出部と、
    検出された描画終了タイミングに基づき各フレームが所定のフレーム更新時間内に描画されたかいなか判断し、描画されていないと判断した場合には、前記プロセッサの動作周波数を上げるように設定変更を行う動作周波数設定変更処理部と、
    操作部からの入力データに基づき、設定された動作周波数で前記プロセッサが動作して、仮想3次元空間内に存在する事物の時間的な変化についてのシミュレーション演算をおこない、前記シミュレーション演算の結果に基づき得られたオブジェクトの配置情報及びゲームパラメータの少なくとも一方に基づき、仮想3次元空間を仮想カメラから見た各フレームの画像を生成し描画バッファに描画する画像生成部と、
    を含み、
    動作周波数設定変更処理部は、
    検出された描画終了タイミングに基づき各フレームが所定のフレーム更新時間内に描画されたかいなか判断し、描画されていると判断した場合には、前記プロセッサの動作周波数を下げるように設定変更を行い、動作周波数を下げる時の変化率は動作周波数を上げる時の変化率よりも小さくなるように動作周波数の設定を行うことを特徴とする画像生成システム。
JP2004141314A 2004-05-11 2004-05-11 画像生成プログラム、情報記憶媒体及び画像生成システム Active JP4528027B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004141314A JP4528027B2 (ja) 2004-05-11 2004-05-11 画像生成プログラム、情報記憶媒体及び画像生成システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004141314A JP4528027B2 (ja) 2004-05-11 2004-05-11 画像生成プログラム、情報記憶媒体及び画像生成システム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010028848A Division JP4955782B2 (ja) 2010-02-12 2010-02-12 画像生成プログラム、情報記憶媒体及び画像生成システム

Publications (2)

Publication Number Publication Date
JP2005322144A JP2005322144A (ja) 2005-11-17
JP4528027B2 true JP4528027B2 (ja) 2010-08-18

Family

ID=35469371

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004141314A Active JP4528027B2 (ja) 2004-05-11 2004-05-11 画像生成プログラム、情報記憶媒体及び画像生成システム

Country Status (1)

Country Link
JP (1) JP4528027B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5262148B2 (ja) * 2008-02-05 2013-08-14 日本電気株式会社 ランドマーク検出装置および方法ならびにプログラム
KR101935356B1 (ko) * 2012-04-27 2019-01-04 엘지전자 주식회사 디스플레이 프로세서 제어방법
JP2015158751A (ja) * 2014-02-21 2015-09-03 富士通株式会社 描画方法、描画装置及びプログラム
CN109966739B (zh) * 2019-01-17 2022-11-11 珠海金山数字网络科技有限公司 一种优化游戏运行的方法及系统
CN110503708A (zh) 2019-07-03 2019-11-26 华为技术有限公司 一种基于垂直同步信号的图像处理方法及电子设备
CN113633970B (zh) * 2021-08-18 2024-03-08 腾讯科技(成都)有限公司 动作效果的显示方法、装置、设备及介质
CN116774809A (zh) * 2022-03-17 2023-09-19 荣耀终端有限公司 调整频率的方法、装置、电子设备及可读存储介质
CN116450363B (zh) * 2023-06-13 2023-11-14 荣耀终端有限公司 一种资源调度方法及电子设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH099251A (ja) * 1995-06-20 1997-01-10 Hitachi Ltd 並列画像符号化方法およびその装置
JPH0950279A (ja) * 1995-08-07 1997-02-18 Yamaha Corp 音源装置及び楽音生成方法
JPH1124782A (ja) * 1997-07-07 1999-01-29 Matsushita Electric Ind Co Ltd マイクロプロセッサのクロック制御方法およびクロック制御型マイクロプロセッサシステム
JPH1188467A (ja) * 1997-09-09 1999-03-30 Nec Corp 通信制御lsiの消費電力低減方法及び通信制御lsi
JP2001043194A (ja) * 1999-07-28 2001-02-16 Nec Eng Ltd 情報機器および通信制御方法
JP2003091942A (ja) * 2001-09-17 2003-03-28 Sharp Corp デジタル情報再生装置
JP2003256069A (ja) * 2002-03-05 2003-09-10 Ricoh Co Ltd 制御装置及び複合機
JP2003337713A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd プロセッサの制御方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH099251A (ja) * 1995-06-20 1997-01-10 Hitachi Ltd 並列画像符号化方法およびその装置
JPH0950279A (ja) * 1995-08-07 1997-02-18 Yamaha Corp 音源装置及び楽音生成方法
JPH1124782A (ja) * 1997-07-07 1999-01-29 Matsushita Electric Ind Co Ltd マイクロプロセッサのクロック制御方法およびクロック制御型マイクロプロセッサシステム
JPH1188467A (ja) * 1997-09-09 1999-03-30 Nec Corp 通信制御lsiの消費電力低減方法及び通信制御lsi
JP2001043194A (ja) * 1999-07-28 2001-02-16 Nec Eng Ltd 情報機器および通信制御方法
JP2003091942A (ja) * 2001-09-17 2003-03-28 Sharp Corp デジタル情報再生装置
JP2003256069A (ja) * 2002-03-05 2003-09-10 Ricoh Co Ltd 制御装置及び複合機
JP2003337713A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd プロセッサの制御方法

Also Published As

Publication number Publication date
JP2005322144A (ja) 2005-11-17

Similar Documents

Publication Publication Date Title
JP4177381B2 (ja) 画像生成方法、画像生成装置、および画像生成プログラム
JP3707995B2 (ja) ゲームシステム及び情報記憶媒体
JP2007300974A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2004130003A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP2009240570A (ja) プログラム、情報記憶媒体、及びゲームシステム
JP3747050B1 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4528027B2 (ja) 画像生成プログラム、情報記憶媒体及び画像生成システム
JP4508918B2 (ja) 画像生成システム及び情報記憶媒体
JP2004341572A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2001160153A (ja) 画像生成システム及び情報記憶媒体
JP4955782B2 (ja) 画像生成プログラム、情報記憶媒体及び画像生成システム
JP2001084392A (ja) 画像生成システム及び情報記憶媒体
JP2001325605A (ja) ゲームシステム及び情報記憶媒体
JP2005319107A (ja) プログラム、情報記憶媒体、及びゲームシステム
JP4754229B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP2003051024A (ja) 画像生成システム及び情報記憶媒体
JP2004057797A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP4212015B2 (ja) 画像生成装置及び情報記憶媒体
JP2002092637A (ja) ゲームシステム及び情報記憶媒体
JP2002216167A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2006318196A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2004329791A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2005322143A (ja) プログラム、情報記憶媒体及び画像生成システム
JP4632531B2 (ja) ゲームシステム、情報記憶媒体及びゲームシステムの制御方法
JP4641602B2 (ja) ゲームシステム及び情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100212

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100310

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100430

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100604

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

Free format text: PAYMENT UNTIL: 20130611

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4528027

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130611

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130611

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250