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

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

Info

Publication number
JP2004329290A
JP2004329290A JP2003125434A JP2003125434A JP2004329290A JP 2004329290 A JP2004329290 A JP 2004329290A JP 2003125434 A JP2003125434 A JP 2003125434A JP 2003125434 A JP2003125434 A JP 2003125434A JP 2004329290 A JP2004329290 A JP 2004329290A
Authority
JP
Japan
Prior art keywords
sound data
acceleration
deceleration
sound
data
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
JP2003125434A
Other languages
English (en)
Other versions
JP3649722B2 (ja
Inventor
Taro Bando
太郎 阪東
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2003125434A priority Critical patent/JP3649722B2/ja
Priority to EP04003005A priority patent/EP1477210B1/en
Priority to DE602004007428T priority patent/DE602004007428T2/de
Priority to US10/781,868 priority patent/US20040219981A1/en
Publication of JP2004329290A publication Critical patent/JP2004329290A/ja
Application granted granted Critical
Publication of JP3649722B2 publication Critical patent/JP3649722B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • A63F13/10
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/54Controlling the output signals based on the game progress involving acoustic signals, e.g. for simulating revolutions per minute [RPM] dependent engine sounds in a driving game or reverberation against a virtual wall
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/803Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6063Methods for processing data by generating or executing the game program for sound processing
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8017Driving on land or water; Flying

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Stereophonic System (AREA)

Abstract

【課題】現実に近いエンジン音を再生可能にした、ゲーム装置およびゲームプログラムを提供する。
【解決手段】ゲーム空間上の車オブジェクトの走行動作に応じて、それらの走行動作を実際の車両の走行によって予め録音されたサウンドデータを用いて再生されるため、現実に近いエンジン音の再生が可能となる。また、車オブジェクトの加速中は、対応する加速音データを連続的に読み出して再生し、減速させる入力を開始したときには、再生し終わった加速音データに対応した減速音データの読み出し位置を指定可能にする。そして、減速中に加速を始めたときには、減速音データが再生し終わった位置に対応した加速音データの位置から再生を開始できるように、加速音データの読み出し位置を指定可能にすることによって、減速音および加速音データが違和感無く繋がる。
【選択図】 図7

Description

【0001】
【発明の属する技術分野】
本発明は、物体を移動させるゲームにおいて、その物体動作に応じた移動音を発生するゲーム装置およびゲームプログラムに関し、より特定的には、プレイヤが少なくともアクセル操作を行ってコース上を車オブジェクトが走行するレーシングゲームにおいて、その車オブジェクトの走行に応じたエンジン音を発生するゲーム装置およびゲームプログラムに関する。
【0002】
【従来の技術】
従来、レーシングゲーム等のビデオゲームでは、ゲーム空間で走行する車オブジェクトの走行動作やエンジン回転数に応じて、そのエンジン音がサウンドとして再生される。このエンジン音の再生においては、予め所定の運転条件に基づいて実際のエンジン音を録音する。そして、録音したサウンドデータをループ再生し、ゲーム中で車オブジェクトのエンジン回転が上下するのに合わせて、サウンドデータの周波数を上下する方法である。しかしながら、録音波形の周波数を変動させると、原音から音質がかけ離れる傾向があったため、例えば、出願人が開発した「マリオカート64」(登録商標)では、改良した手法を用いていた。すなわち、低速時のエンジン音(1秒程度のループ波形)と、高速時のエンジン音(1秒程度のループ波形)とを予め登録しておき、両者を相互にクロスフェードさせるというものである。
【0003】
また、エンジンのクランク軸が1燃焼サイクル分回転する時間に相当する長さを単位として、予め複数の範囲に分けたエンジンの運転状態各々について、波形をサウンドデータとして記憶しておく方法もある(例えば、特許文献1参照)。この特許文献1で開示された技術では、ゲーム空間におけるエンジン回転数に応じて、予め取得したサウンドデータの該波形のボリュームやピッチを変化(再生レートを上下)させることにより、少ない記憶容量で、より実際のエンジン音に近似した模擬音を発生させていた。
【0004】
【特許文献1】
特開2000−10576号公報
【0005】
【発明が解決しようとする課題】
しかしながら、低速時および高速時のエンジン音を予め登録しておき、両者を相互にクロスフェードさせる手法は、それぞれの音が重なることにより音質が濁ってしまう欠点があった。また、この手法および特許文献1で開示された手法は、現実のエンジン音を擬似的に再現しているに過ぎず、何れも原音から音質がかけ離れる傾向があった。例えば、現実のエンジン音は、そのエンジン回転数に固有の共振音、吸排気音、エンジンの負荷の違いによる機械音等が含まれているが、擬似的に再生する場合、これらの音を正確に再生できなかった。
【0006】
それ故に、本発明の目的は、現実に近いエンジン音を再生可能にした、ゲーム装置およびゲームプログラムを提供することである。
【0007】
【課題を解決するための手段および発明の効果】
上記目的を達成するために、本発明は、以下に述べるような特徴を有している。
第1の発明は、プレイヤの操作に応答して物体(実施例との対応関係を示せば、例えば車オブジェクト)が移動するゲームを、ゲーム画像上で表現するゲーム装置である。ゲーム装置は、操作手段(コントローラ6)、加速音記憶手段(ARAM35の加速音データ記憶領域351)、減速音記憶手段(ARAM35の減速音データ記憶領域352)、読み出し位置演算手段(実施例との対応関係を示せば、例えばステップS13、S21、S43、S53を実行するCPU30;以下単にステップ番号だけを示す)、音データ読み出し手段(S17、S25、S48、S58)、および音声出力制御手段(S17、S25、S48、S58)を備えている。操作手段は、プレイヤの操作(Aボタン62のONあるいはOFF)に応答して、少なくとも物体を加速移動させる加速操作入力データ(アクセルON:S12、S42)と物体を減速移動させる減速操作入力データ(アクセルOFF:S12、S42)とを入力させる。加速音記憶手段は、予め物体の加速音データ(加速音データDu)をその動作パラメータ(速度:アドレスAu)に応じて連続的に記憶する。減速音記憶手段は、予め物体の減速音データ(減速音データDd)をその動作パラメータ(速度:アドレスAd)に応じて連続的に記憶する。読み出し位置演算手段は、加速音記憶手段および減速音記憶手段に記憶された加速音データおよび減速音データの何れか一方を操作手段から入力する操作入力データに基づいて選択し、現在の物体の動作パラメータ(速度)に相当するこの選択された音データの読み出し開始位置(アドレスAu(a−1)、Ad(b−1))を演算する。音データ読み出し手段は、読み出し位置演算手段が選択した音データを読み出し開始位置から連続的に読み出す。音声出力制御手段は、音データ読み出し手段で読み出された音データを音として発音させる。
【0008】
上記第1の発明によれば、ゲーム上の物体の加減速動作に応じて、それらの加減速動作における動作パラメータに応じてそれぞれ予め連続的に記憶された加速音あるいは減速音データが連続的に再生されるため、現実に近い加速音あるいは減速音の再生が可能となる。また、再生される音データは、ゲーム中の物体の走行動作に基づいて選択されるため、ゲーム画面で表現される物体の走行動作とリンクさせて発音することができる。
【0009】
第2の発明は、第1の発明に従属する発明であって、操作手段から入力する加速および減速操作入力データが一方から他方に変わる毎に(S12、S42)、読み出し位置演算手段は、読み出し開始位置の演算対象として加速音データおよび減速音データの一方から他方へ変更する(S13、S21、S43、S53)。この場合、音データ読み出し手段は、読み出し位置演算手段の演算対象の変更に応じて、新たに演算対象となった音データを読み出し開始位置から連続的に読み出す(S17、S25、S48、S58)ことによって、その演算対象の変更前後で異なる音データを接続して読み出す。
【0010】
上記第2の発明によれば、プレイヤが物体を加速移動する指示から減速移動する指示に変更した場合、あるいは減速移動する指示から加速移動する指示に変更した場合、この変更に応じて再生される音データが、加速音から減速音データ、あるいは減速音から加速音データに変更される。そして、それらの音データは、その変更前後で物体の同じパラメータに基づいて接続されて読み出される。したがって、物体の走行動作が加速から減速、あるいは減速から加速の何れに変更されても、その走行動作に応じた加速音および減速音データを接続して音として発音することができる。また、加速音データあるいは減速音データの読み出し開始位置がゲーム上の物体の動作パラメータに基づいて指定されるため、両者の音データをつなぐ場合、それぞれの接続点を同じ動作パラメータを示す音データにすることが可能であるため、減速音および加速音データが違和感無く繋がる。
【0011】
第3の発明は、第1の発明に従属する発明であって、音データ読み出し手段が操作手段からの加速操作入力データに応答して加速音データを連続的に読み出しているときに、操作手段から減速操作入力データが入力される(S18、S49)。これに応じて、読み出し位置演算手段は、音データ読み出し手段が読み出している加速音データの読み出し位置に相当する動作パラメータに基づいて、減速音データの読み出し開始位置(アドレスAd(b−1))を演算する。
【0012】
上記第3の発明によれば、プレイヤがゲーム中に物体を加速させる入力を行っているときには、対応する加速音データを連続的に読み出して再生し、加速中に減速させる入力を開始したときには、減速音データの最初ではなく、再生し終わった加速音データに対応した減速音データの読み出し位置をその動作パラメータに基づいて指定可能にすることによって、加速音および減速音データが違和感無く繋がった加減速音を再生することができる。
【0013】
第4の発明は、第1の発明に従属する発明であって、音データ読み出し手段が操作手段からの減速操作入力データに応答して減速音データを連続的に読み出しているときに、操作手段から加速操作入力データが入力される(S26、S59)。これに応じて、読み出し位置演算手段は、音データ読み出し手段が読み出している減速音データの読み出し位置に相当する動作パラメータに基づいて、加速音データの読み出し開始位置(アドレスAu(a−1))を演算する。
【0014】
上記第4の発明によれば、プレイヤがゲーム中に物体を減速させる入力を行っているときには、対応する減速音データを連続的に読み出して再生し、減速中に加速させる入力を開始したときには、加速音データの最初ではなく、減速音データが再生し終わった位置に対応した加速音データの位置から再生を開始できるように、加速音データの読み出し位置をその動作パラメータに基づいて指定可能にすることによって、減速音および加速音データが違和感無く繋がった加減速音を再生することができる。
【0015】
第5の発明は、第1の発明に従属する発明であって、加速音記憶手段が記憶する加速音データは、少なくとも物体が最低速度(速度0)から最高速度(最高速度vmax)まで一定の加速度で加速したときの加速部分の音データ(加速音データDu0〜Du(m−1))を含んでいる。減速音記憶手段が記憶する減速音データは、少なくとも物体が最高速度から最低速度まで一定の加速度で減速したときの減速部分の音データ(減速音データDd0〜Dd(m−1))を含んでいる。
【0016】
上記第5の発明によれば、加速音および減速音記憶手段が予め記憶するそれぞれの加速音および減速音データは、一定加速度で加速および減速したときの音データであるため、音データ読み出し手段が読み出し開始位置から連続的に読み出し、音声出力制御手段が読み出された音データを音として発音させるとき、最低から最高速度までを範囲とした一定の加速度で加速あるいは減速するスムーズな加減速音を再生することができる。
【0017】
第6の発明は、第5の発明に従属する発明であって、さらに、加速音記憶手段が記憶する加速音データは、物体が最高速度で一定の速度で動作した最高速度一定部分の音データ(加速音データDu(m)〜Du(n−1))を加速部分の音データに連続して含んでいる。音データ読み出し手段は、操作手段から加速操作入力データの入力が所定の時間以上継続したとき、最高速度一定部分の加速音データを繰り返して読み出す(S20、S52)。
【0018】
上記第6の発明によれば、物体が最高速度一定で移動する場合、その移動音を時間制限なく再生することができる。また、最高速度まで加速した後、その最高速度で一定の速度で物体が移動する場合、両者の移動音が違和感無く繋がった移動音を再生することができる。
【0019】
第7の発明は、第5の発明に従属する発明であって、さらに、減速音記憶手段が記憶する減速音データは、物体が最低速度で一定の速度で動作した最低速度一定部分の音データ(減速音データDd(m)〜Dd(n−1))を減速部分の音データに連続して含んでいる。音データ読み出し手段は、操作手段から減速操作入力データの入力が所定の時間以上継続したとき、最低速度一定部分の減速音データを繰り返して読み出す(S28、S61)。
【0020】
上記第7の発明によれば、物体が最低速度一定で移動あるいは停止する場合、その移動音あるいは停止時音を時間制限なく再生することができる。また、最低速度まで減速した後、その最低速度で一定の速度で物体が移動あるいは停止する場合、両者の音が違和感無く繋がった音を再生することができる。
【0021】
第8の発明は、第1の発明に従属する発明であって、操作手段は、プレイヤの操作量(Rボタン66aの押し込み量)に応答して物体を任意の割合(アクセル開度)で加速移動させる加速操作入力データの入力が可能である。音声出力制御手段は、加速音周波数補正手段(S45、S50)を含む。加速音周波数補正手段は、加速操作入力データが示す加速移動の割合に応じて(アクセル開度補正係数ak)、音データ読み出し手段で読み出された加速音データの周波数を補正する。
【0022】
上記第8の発明によれば、プレイヤが任意の割合の加速移動が操作可能なゲームであっても、ゲーム上の物体の加速動作に応じて、その加速動作における動作パラメータに応じてそれぞれ予め連続的に記憶された加速音データが連続的に再生されるため、現実に近い加減速音の再生が可能となる。また、加速移動の割合に応じて加速音の周波数を補正することによって、自然な加速音が再生可能である。
【0023】
第9の発明は、第1の発明に従属する発明であって、操作手段は、プレイヤの操作量(Lボタン66bの押し込み量)に応答して物体を任意の割合(ブレーキ強度)で減速移動させる減速操作入力データの入力が可能である。音声出力制御手段は、減速音周波数補正手段(S55)を含む。減速音周波数補正手段は、減速操作入力データが示す減速移動の割合に応じて(ブレーキ強度補正係数bk)、音データ読み出し手段で読み出された減速音データの周波数を補正する。
【0024】
上記第9の発明によれば、プレイヤが任意の割合の減速移動が操作可能なゲームであっても、ゲーム上の物体の減速動作に応じて、その減速動作における動作パラメータに応じてそれぞれ予め連続的に記憶された減速音データが連続的に再生されるため、現実に近い減速音の再生が可能となる。また、減速移動の割合に応じて減速音の周波数を補正することによって、自然な減速音が再生可能である。
【0025】
第10の発明は、第1の発明に従属する発明であって、物体は、車両である。動作パラメータは、車両の車速である。
【0026】
上記第10の発明によれば、例えば、コース上を車オブジェクトが走行するレーシングゲームであっても、上述した効果と同等の効果が得られる。
【0027】
第11の発明は、プレイヤによって操作される操作部(コントローラ6)を備えたコンピュータに、プレイヤの操作に応答して物体が移動するゲームをゲーム画像上で表現する処理を実行させるゲームプログラムである。ゲームプログラムは、入力ステップ(S12、S42)、読み出し位置演算ステップ(S13、S21、S43、S53)、音データ読み出しステップ(S17、S25、S48、S58)、および音声出力制御ステップ(S17、S25、S48、S58)をコンピュータに実行させる。入力ステップは、操作部の操作に応答して、少なくとも物体を加速移動させる加速操作入力データと物体を減速移動させる減速操作入力データとを入力する。読み出し位置演算ステップは、物体の動作パラメータに応じて連続的に予め記憶されたその物体の加速音データおよび減速音データの何れか一方を入力ステップで入力する操作入力データに基づいて選択し、現在の物体の動作パラメータに相当するこの選択された音データの読み出し開始位置を演算する。音データ読み出しステップは、読み出し位置演算ステップが選択した音データを読み出し開始位置から連続的に読み出す。音声出力制御ステップは、音データ読み出しステップで読み出された音データを音として発音させる。
【0028】
上記第11の発明によれば、コンピュータに実行させるゲームプログラムにおいて、ゲーム上の物体の加減速動作に応じて、それらの加減速動作における動作パラメータに応じてそれぞれ予め連続的に記憶された加速音あるいは減速音データが連続的に再生されるため、現実に近い加速音あるいは減速音の再生が可能となる。また、再生される音データは、ゲーム中の物体の走行動作に基づいて選択されるため、ゲーム画面で表現される物体の走行動作とリンクさせて発音することができる。
【0029】
第12の発明は、第11の発明に従属する発明であって、入力ステップで操作部から入力する加速および減速操作入力データが一方から他方に変わる毎に、読み出し位置演算ステップは、読み出し開始位置の演算対象として加速音データおよび減速音データの一方から他方へ変更する。この場合、音データ読み出しステップは、読み出し位置演算ステップの演算対象の変更に応じて、新たに演算対象となった音データを読み出し開始位置から連続的に読み出すことによって、その演算対象の変更前後で異なる音データを接続して読み出す。
【0030】
第13の発明は、第11の発明に従属する発明であって、音データ読み出しステップが入力ステップによる加速操作入力データに応答して加速音データを連続的に読み出しているときに、入力ステップによって減速操作入力データが入力される。これに応じて、読み出し位置演算ステップは、音データ読み出しステップが読み出している加速音データの読み出し位置に相当する動作パラメータに基づいて、減速音データの読み出し開始位置を演算する。
【0031】
第14の発明は、第11の発明に従属する発明であって、音データ読み出しステップが入力ステップによる減速操作入力データに応答して減速音データを連続的に読み出しているときに、入力ステップによって加速操作入力データが入力される。これに応じて、読み出し位置演算ステップは、音データ読み出しステップが読み出している減速音データの読み出し位置に相当する動作パラメータに基づいて、加速音データの読み出し開始位置を演算する。
【0032】
第15の発明は、第11の発明に従属する発明であって、予め記憶された加速音データは、少なくとも物体が最低速度から最高速度まで一定の加速度で加速したときの加速部分の音データを含んでいる。予め記憶された減速音データは、少なくとも物体が最高速度から最低速度まで一定の加速度で減速したときの減速部分の音データを含んでいる。
【0033】
第16の発明は、第15の発明に従属する発明であって、さらに、予め記憶された加速音データは、物体が最高速度で一定の速度で動作した最高速度一定部分の音データを加速部分の音データに連続して含んでいる。音データ読み出しステップは、入力ステップによる加速操作入力データの入力が所定の時間以上継続したとき、最高速度一定部分の加速音データを繰り返して読み出す。
【0034】
第17の発明は、第15の発明に従属する発明であって、さらに、予め記憶された減速音データは、物体が最低速度で一定の速度で動作した最低速度一定部分の音データを減速部分の音データに連続して含んでいる。音データ読み出しステップは、入力ステップから減速操作入力データの入力が所定の時間以上継続したとき、最低速度一定部分の減速音データを繰り返して読み出す。
【0035】
第18の発明は、第11の発明に従属する発明であって、入力ステップは、プレイヤによって操作される操作部の操作量に応答して、物体を任意の割合で加速移動させる加速操作入力データをコンピュータに入力する。音声出力制御ステップは、加速音周波数補正ステップ(S45、S50)を含む。加速音周波数補正ステップは、加速操作入力データが示す加速移動の割合に応じて、音データ読み出しステップで読み出された加速音データの周波数を補正する。
【0036】
第19の発明は、第11の発明に従属する発明であって、入力ステップは、プレイヤによって操作される操作部の操作量に応答して、物体を任意の割合で減速移動させる減速操作入力データをコンピュータに入力する。音声出力制御ステップは、減速音周波数補正ステップ(S55)を含む。減速音周波数補正ステップは、減速操作入力データが示す減速移動の割合に応じて、音データ読み出しステップで読み出された減速音データの周波数を補正する。
【0037】
第20の発明は、第11の発明に従属する発明であって、物体は、車両である。動作パラメータは、車両の車速である。
【0038】
【発明の実施の形態】
(第1の実施形態)
図1を参照して、本発明の第1の実施形態に係るゲームシステム1について説明する。なお、図1は、当該ゲームシステムを説明するための外観図である。以下、据置型ゲーム装置を一例にして、本発明の第1の実施形態について説明する。
【0039】
図1において、当該ゲームシステム1は、家庭用テレビジョン受像機等のスピーカ2aを備えたCRT(Cathode Ray Tube)ディスプレイ(以下、モニタと記載する)2に、接続コードを介して接続される据置型ゲーム装置(以下、単にゲーム装置と記載する)3によって構成される。ゲーム装置3は、接続コードを介してゲーム装置3と接続されるコントローラ6およびゲーム装置3に対して交換可能に用いられる情報記憶媒体の一例の光ディスク4を含む。また、ゲーム装置3には、セーブデータ等を固定的に記憶するバックアップメモリ等を搭載する外部メモリカード5が必要に応じて着脱自在に装着される。ゲーム装置3は、光ディスク4に記憶されたゲームプログラムを実行することによって、その結果をゲーム画像としてモニタ2に表示する。さらに、ゲーム装置3は、外部メモリカード5に記憶されたセーブデータを用いて、過去に実行されたゲーム状態を再現して、ゲーム画像をモニタ2に表示することもできる。そして、ゲーム装置3のプレイヤは、モニタ2に表示されたゲーム画像を見ながら、コントローラ6を操作することによって、ゲーム進行を楽しむことができる。当該実施形態では、光ディスク4に記憶されたレーシングゲームプログラムが実行される一例を説明する。
【0040】
コントローラ6は、上述したように接続コードを介してゲーム装置3に接続され、その接続コードは、ゲーム装置3に対して着脱自在である。コントローラ6は、主にモニタ2に表示されるゲーム空間に登場するプレイヤオブジェクト(典型的には、プレイヤの操作対象である車オブジェクト)を操作するための操作手段であり、複数の操作ボタン、キー、およびスティック等の入力部を備えている。具体的には、コントローラ6には、プレイヤによって各々把持されるグリップ部が形成される。そして、コントローラ6は、プレイヤの左手の親指等によって操作可能なメインスティック61および十字キー67と、右手の親指等によって操作可能なCスティック68、Aボタン62、Bボタン63、Xボタン64、Yボタン65、およびスタート−ポーズボタン69を含む。さらに、コントローラ6には、プレイヤの左右の人差し指等によってそれぞれ操作可能なRボタン66aおよびLボタン66bを備える。
【0041】
例えば、コントローラ6の操作によって、後述するレーシングゲームを楽しむ場合、Aボタン62は、ゲーム空間内の車オブジェクトのアクセル操作を決定する場合に利用され、例えば、プレイヤがAボタン62を押す(ONする)ことによって車オブジェクトのアクセルON(アクセル全開)が指示され、Aボタン62を押すことを止める(OFFする)ことによって車オブジェクトのアクセルOFF(アクセル全閉)が指示される。他の入力部についても、後述するゲーム進行で用いられることがあるが、本発明の説明とは直接関連しないため詳細な説明を省略する。
【0042】
次に、図2を参照して、ゲーム装置3の構成について説明する。なお、図2は、ゲーム装置3の機能ブロック図である。
【0043】
図2において、ゲーム装置3は、各種プログラムを実行する例えばリスク(RISC)CPU(セントラルプロセッシングユニット)30を備える。CPU30は、図示しないブートROMに記憶された起動プログラムを実行し、メインメモリ33等のメモリの初期化等を行った後、光ディスク4に記憶されているゲームプログラムの実行し、そのゲームプログラムに応じたゲーム処理を行うものである。CPU30には、メモリコントローラ31を介して、GPU(Graphics Processing Unit)32、メインメモリ33、DSP(Digital Signal Processor)34およびARAM(Audio RAM)35が接続される。また、メモリコントローラ31には、所定のバスを介して、コントローラI/F(インターフェース)36、ビデオI/F37、外部メモリI/F38、オーディオI/F39、およびディスクI/F41が接続され、それぞれコントローラ6、モニタ2、外部メモリカード5、スピーカ2a、およびディスクドライブ40が接続されている。
【0044】
GPU32は、CPU30の命令に基づいて画像処理を行うものあり、例えば、3Dグラフィックスの表示に必要な計算処理を行う半導体チップで構成される。GPU32は、図示しない画像処理専用のメモリやメインメモリ33の一部の記憶領域を用いて画像処理を行う。GPU32は、これらを用いてモニタ2に表示すべきゲーム画像データを生成し、適宜メモリコントローラ31およびビデオI/F37を介してモニタ2に出力する。
【0045】
メインメモリ33は、CPU30で使用される記憶領域であって、CPU30の処理に必要なゲームプログラム等を適宜記憶する。例えば、メインメモリ33は、CPU30によって光ディスク4から読み出されたゲームプログラムや各種データ等を記憶する。このメインメモリ33に記憶されたゲームプログラムや各種データ等がCPU30によって実行される。
【0046】
DSP34は、ゲームプログラム実行時にCPU30において生成されるサウンドデータ等を処理するものであり、そのサウンドデータ等を記憶するためのARAM35が接続される。ARAM35は、DSP34が所定の処理(例えば、先読みしておいたゲームプログラムやサウンドデータの記憶)を行う際に用いられる。DSP34は、ARAM35に記憶されたサウンドデータを読み出し、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2aに出力させる。
【0047】
メモリコントローラ31は、データ転送を統括的に制御するものであり、上述した各種I/Fが接続される。コントローラI/F36は、例えば4つのコントローラI/F36a〜36dで構成され、それらが有するコネクタを介して嵌合可能な外部機器とゲーム装置3とを通信可能に接続する。例えば、コントローラ6は、接続コードを介して上記コネクタと嵌合し、コントローラI/F36を介してゲーム装置3と接続される。ビデオI/F37には、モニタ2が接続される。外部メモリI/F38には、外部メモリカード5が接続され、その外部メモリカード5に設けられたバックアップメモリにアクセス可能となる。オーディオI/F39にはモニタ2に内蔵されるスピーカ2aが接続され、DSP34がARAM35から読み出したサウンドデータやディスクドライブ40から直接出力されるサウンドデータをスピーカ2aから出力可能に接続される。ディスクI/F41には、ディスクドライブ40が接続される。ディスクドライブ40は、所定の読み出し位置に配置された光ディスク4に記憶されたデータを読み出し、ゲーム装置3のバスやオーディオI/F39に出力する。
【0048】
メインメモリ33には、上述したようにCPU30の処理に必要なゲームプログラム等が適宜記憶され、CPU30によって光ディスク4から読み出されたゲームプログラムや各種データ等が格納される。以下、図3を参照して、本発明のレーシングゲームを実行する場合にメインメモリ33に記憶されるプログラムおよびデータの一例について説明する。なお、図3は、メインメモリ33に記憶されるプログラムおよびデータの一例について説明するための概略的なメモリマップである。
【0049】
図3において、メインメモリ33は、プログラム記憶領域331およびデータ記憶領域332を有している。具体的には、プログラム記憶領域331には、CPU30によって実行されるゲームメイン処理プログラムと、そのゲームメイン処理プログラムによって利用されるアクセルおよびブレーキ操作プログラムと、エンジン回転数計算プログラムと、加速音および減速音読み出しアドレス算出プログラムと、加速音および減速音周波数補正プログラムと、サウンドデータ読み出しプログラムと、サウンド出力プログラム等とが記憶されている。また、データ記憶領域332には、上記ゲームメイン処理プログラム等のプログラムによって利用されるアクセルおよびブレーキ操作データバッファと、加減速音データアドレス等とが記憶され、加減速音データアドレスは、加速および減速部分アドレスと、高速一定部分アドレスと、アイドル部分アドレスとを含んでいる。
【0050】
アクセル操作プログラムは、プレイヤがアクセルを開ける操作(例えば、Aボタン62をON)をした際の車オブジェクトの走行動作を定義している。本発明のゲームプログラムでは、例えば、車オブジェクトが速度0の状態からAボタン62のONが時間t1継続した場合、最高速度vmaxに車オブジェクトが到達するようにプログラムされている。
【0051】
ブレーキ操作プログラムは、プレイヤがアクセルを閉める操作(例えば、Aボタン62をOFF)をした際の車オブジェクトの走行動作を定義している。本発明のゲームプログラムでは、例えば、車オブジェクトが最高速度vmaxの状態からAボタン62のOFFが時間t1継続した場合、速度0に車オブジェクトが減速するようにプログラムされている。これは、車オブジェクトがエンジンブレーキで減速することを定義した例であり、プレイヤがさらにブレーキ操作(例えば、Bボタン63をONあるいはLボタン66bをON)することによって、時間t1より短い時間で最高速度vmaxから速度0まで減速することも可能である。しかしながら、第1の実施形態では、説明を単純にするためにプレイヤからのブレーキ操作はないものと仮定(つまり、エンジンブレーキのみによる減速)して、ブレーキ操作による処理は、後述の第2の実施形態で説明する。
【0052】
エンジン回転数計算プログラムは、車オブジェクトにおけるエンジン回転数の計算が定義されている。代表的には、上記アクセルおよびブレーキ操作プログラムによって演算される車オブジェクトの速度に応じてエンジン回転数が計算されるが、さらに、ゲーム空間上の路面の状況(登り、下り、タイヤとの摩擦等)の影響を加えて、最終的なエンジン回転数が計算される。例えば、車オブジェクトのタイヤが空転していたり、ブレーキ操作等によってタイヤ回転数が0の場合、車オブジェクトの速度に対して、高いエンジン回転数が計算される。
【0053】
加速音および減速音読み出しアドレス算出プログラムは、それぞれ上述のように演算された車オブジェクトの速度に応じて、後述するARAM35に記憶されている加速および減速音データDuおよびDdを読み出すための加減速音データアドレスの演算が定義されている。また、加速音および減速音周波数補正プログラムは、現在の車オブジェクトの速度に対するエンジン回転数に応じた再生するエンジン音の補正が定義されている。これらの詳細な動作については、後述する。
【0054】
サウンドデータ読み出しプログラムは、ARAM35から、上記加速音および減速音読み出しアドレス算出プログラムで算出された加減速音データアドレスに応じた加速および減速音データDuおよびDdや、後述するループ再生のため用いられるエンジン音データの読み出し処理が定義されている。また、サウンド出力プログラムは、サウンドデータ読み出しプログラムによって読み出されたサウンドデータを、メモリコントローラ31およびオーディオI/F39を介してスピーカ2aに出力させる処理が定義されている。
【0055】
アクセルおよびブレーキ操作データバッファは、上述したプレイヤのアクセル操作の内容や、そのアクセル操作による車オブジェクトの速度やエンジン回転数の状態等が一時的に格納される。加減速音データアドレスは、ARAM35に記憶される加速音および減速音データのそれぞれのアドレスが、それぞれの音の種別に応じて記憶されている。具体的には、加速音データは、加速部分および高速一定部分のエンジン音データを有しており、それぞれのデータが記憶されているARAM35のアドレスが加速部分アドレスおよび高速一定部分アドレスとして記憶される。また、減速音データは、減速部分およびアイドル部分のエンジン音データを有しており、それぞれのデータが記憶されているARAM35のアドレスが減速部分アドレスおよびアイドル部分アドレスとして記憶される。
【0056】
次に、図4〜図6を参照して、ARAM35に記憶される加速音データおよび減速音データについて説明する。図4は加速音データを予め取得するための加速音データ(図4(a))とその条件(図4(b))との一例を示すグラフであり、図5は減速音データを予め取得するための減速音データ(図5(a))とその条件(図5(b))との一例を示すグラフである。また、図6は、図4および図5で示した加速音および減速音データをARAM35に記憶した際の概略的なメモリマップである。
【0057】
図4において、加速音データは、実際の車両が速度0から速度vまで加速し、その後速度vで一定で走行した際の、車の騒音を録音したサウンドデータである。具体的には、実際の録音の際の車両の速度は、時間0〜t1間において一定加速度で速度0から速度vまで加速し、時間t1〜t2間において一定速度vを維持している(図4(b)参照)。この時間t1は、上述したゲーム空間上の車オブジェクトが速度0の状態からAボタン62のONを継続した場合、最高速度vmaxに車オブジェクトが到達する時間(t1:例えば、8sec)と一致させる。このような走行条件下で録音された加速音データは、時間0〜t1の間が車両が一定加速度で加速する時の音データ(以下、加速部分と記載する)であり、時間t1〜t2の間が車両が高速一定走行する時の音データ(以下、高速一定部分と記載する)である(図4(a)参照)。このような加速音データが、時間t2分(例えば、10sec)に対して、サンプリング周波数iHz(例えば、16kHz)で予め録音される。
【0058】
図5において、減速音データは、実際の車両が速度vから速度0まで減速し、その後アイドル(ID)状態で停止した際の、車内騒音を録音したサウンドデータである。具体的には、実際の録音の際の車両の速度は、時間0〜t1間において一定加速度で速度vから速度0まで減速し、時間t1〜t2間においてアイドル停止状態を維持している(図5(b)参照)。この時間t1も、上述したゲーム空間上の車オブジェクトが最高速度vmaxの状態からAボタン62のOFFを継続した場合、速度0に車オブジェクトが減速する時間(t1:例えば、8sec)と一致させる。このような走行条件下で録音された減速音データは、時間0〜t1の間が車両が一定加速度で減速する時の音データ(以下、減速部分と記載する)であり、時間t1〜t2の間が車両がアイドル状態で停止している時の音データ(以下、アイドル部分と記載する)である(図5(a)参照)。このような減速音データが、時間t2(例えば、10sec)に対して、サンプリング周波数iHz(例えば、16kHz)で予め録音される。
【0059】
図6において、ARAM35は、加速音データ記憶領域351および減速音データ記憶領域352を有している。加速音データ記憶領域351には、上述した条件で録音された加速音データが記憶される。加速音データ記憶領域351に記憶される加速音データは、n個のjビット(例えば、8bit)の加速音データDu0〜Du(n−1)に等分割される。そして、加速音データDu0〜Du(n−1)は、加速音データ記憶領域351のアドレスAu0〜Au(n−1)にそれぞれサウンドデータとして記憶される。したがって、加速音データ記憶領域351に記憶された加速音データDu0〜Du(n−1)を(i/j)Hzで順次読み出し、再生レートiHzで再生した場合、予め録音した加速音データと同様のサウンドが再生されることになる。ここで、録音された加速音データの内、上記加速部分に対応するサウンドデータは、アドレスAu0〜Au(m−1)にm個の加速音データDu0〜Du(m−1)として記憶される。そして、録音された加速音データの内、上記高速一定部分に対応するサウンドデータは、アドレスAu(m)〜Au(n−1)に(n−m)個の加速音データDu(m)〜Du(n−1)として記憶される。
【0060】
減速音データ記憶領域352には、上述した条件で録音された減速音データが記憶される。減速音データ記憶領域352に記憶される減速音データは、n個のjビット(例えば、8bit)の減速音データDd0〜Dd(n−1)に等分割される。そして、減速音データDd0〜Dd(n−1)は、減速音データ記憶領域352のアドレスAd0〜Ad(n−1)にそれぞれサウンドデータとして記憶される。したがって、減速音データ記憶領域352に記憶された減速音データDd0〜Dd(n−1)を(i/j)Hzで順次読み出し、再生レートiHzで再生した場合、予め録音した減速音データと同様のサウンドが再生されることになる。ここで、録音された減速音データの内、上記減速部分に対応するサウンドデータは、アドレスAd0〜Ad(m−1)にm個の減速音データDd0〜Dd(m−1)として記憶される。そして、録音された減速音データの内、上記アイドル部分に対応するサウンドデータは、アドレスAd(m)〜Ad(n−1)に(n−m)個の減速音データDd(m)〜Dd(n−1)として記憶される。
【0061】
次に、車オブジェクトがプレイヤの操作によってゲーム空間上に設定されたコースを走行するレーシングゲームを一例に、本発明のゲームプログラムに基づいたゲーム装置3の動作について説明する。ゲーム装置3の電源が投入されると、ゲーム装置3のCPU30は、図示しないブートROMに記憶されている起動プログラムを実行し、メインメモリ33等の各ユニットが初期化される。そして、光ディスク4に格納されたゲームプログラムがディスクドライブ40およびディスクI/F41を介してメインメモリ33に読み込まれ、そのゲームプログラムの実行が開始され、GPU32を介してモニタ2にゲーム空間が表現されることによって、ゲームが開始される。また、光ディスク4に格納された上記加速音および減速音データがディスクドライブ40およびディスクI/F41を介してARAM35に上記アドレスに対応して記憶される。
【0062】
まず、ゲーム装置3のプレイヤは、モニタ2に表示されたゲーム画像を見ながらレーシングゲームを希望するコースや操作する車オブジェクトの種別を選択する。これらの選択は、上述したようにコントローラ6に設けられた各入力部をプレイヤが操作することによって行われる。そして、プレイヤによって選択されたコースおよび車オブジェクトに応じたゲーム画像がモニタ2に表示される。
【0063】
次に、図7を参照して、これらの処理動作以降に行われるゲーム装置3におけるエンジン音の再生処理について説明する。なお、図7は、ゲーム装置3が行うエンジン音再生処理の動作を示すフローチャートである。
【0064】
図7において、ゲーム装置3のCPU30は、ゲーム空間上の車オブジェクトのエンジンが始動しているか否か(ステップS11)、およびプレイヤがコントローラ6を操作することによってアクセルがON(例えば、Aボタン62のON)されているか否か(ステップS12)を判断する。そして、CPU30は、車オブジェクトのエンジンが始動状態でアクセルONである場合、処理を次のステップS13に進め、車オブジェクトのエンジンが始動状態でアクセルOFFである場合、処理を次のステップS21に進める。
【0065】
ステップS13では、CPU30は、車オブジェクトの加速時のエンジン音を再生するために、ARAM35の加速音データ記憶領域351に記憶されている加速音データDuのアドレスAuを演算し、次のステップに処理を進める。具体的には、CPU30は、上記ステップS13の演算で、加速部分の加速音データDuが記憶されているm個のアドレスAu0〜Au(m−1)に対して、再生を開始する加速音データDuがアドレスAu0から何番目(a番目)にあたるのかを、式(1)に基づいて演算する。
a=m×vx/vmax …(1)
ここで、vxは、現在の車オブジェクトの速度であり、CPU30が車オブジェクトが速度0の状態からAボタン62のONおよびOFFが操作された時間をそれぞれ累積計算し、データ記憶領域332のアクセルおよびブレーキ操作バッファに記憶された数値を用いて演算される。そして、vmaxは、アクセルONを継続することによって到達する上述した車オブジェクトの最高速度である。CPU30は、上記式(1)によって演算されたアドレスAu0からa番目にあたるアドレスAu(a−1)を、後述するエンジン音再生を開始する加速音再生開始アドレスとして決定する。
【0066】
ここで、CPU30は、上記式(1)を用いて、加速音データ記憶領域351に記憶されている加速部分の加速音データDuのアドレス数mに対して、最高速度vmaxに対する現在の車オブジェクトの速度vxの比率を乗算することによって、加速音再生開始アドレスを演算している。これは、上述したように加速音データ記憶領域351に記憶された加速音データDuが、実際の車両が時間0〜t1まで一定加速度で速度0から速度vまで加速したときのデータに基づいて録音されており、ゲーム上の時間0〜t1までアクセルONを継続することによって到達する車オブジェクトの最高速度vmaxを実際の車両の速度vに置き換えていることになる。つまり、このような置き換えを行うことによって、CPU30は、最高速度vmaxに対する現在の車オブジェクトの速度vxの割合に相当する現実の加速音が記憶されているアドレスAu(a−1)を、正確に演算することができる。
【0067】
次に、CPU30は、ゲーム空間上の車オブジェクトの速度が、最高速度vmaxに到達しているか否かを判断する(ステップS14)。そして、CPU30は、車オブジェクトが最高速度vmaxに未到達の場合、車オブジェクトが加速していると判断して次のステップS15に処理を進める。一方、CPU30は、車オブジェクトが最高速度vmaxに到達している場合、車オブジェクトが最高速度vmaxの高速一定状態で走行していると判断して次のステップS19に処理を進める。
【0068】
ステップS15では、CPU30は、上記ステップS13で演算された加速音再生開始アドレスAu(a−1)以降に記憶されている加速音データDuに対して、その再生に用いられる周波数補正係数を演算し、次のステップに処理を進める。一般的には、車オブジェクトの速度とエンジン回転数との関係は、トランスミッションのシフトを変更しない限り比例する。しかしながら、ゲーム進行においては、上記速度とエンジン回転数とが比例関係から逸脱する場合があり、上記ステップS15ではこのような場合の周波数補正係数を演算する。例えば、プレイヤが車オブジェクトの速度0でエンジンを空吹かしした場合や、タイヤが空転した場合等に演算される。上述したように、CPU30は、ゲーム進行上の車オブジェクトのエンジン回転数をエンジン回転数計算プログラムによって随時計算しており、このエンジン回転数の値を上記加速音データDuの周波数に対して所定割合で反映させる周波数補正係数を演算する。例えば、周波数補正係数は、0.92〜1.08の範囲で設定される。
【0069】
次に、CPU30は、エンジン音再生の際の音量を補正する音量補正係数を演算する(ステップS16)。レーシングゲームにおいては、車オブジェクトをゲーム画像としてとらえるためのカメラが仮想的に設定されており、このカメラの位置は車オブジェクトに対して変更可能な場合がある。例えば、車オブジェクトの車内に上記カメラを設定したり、車オブジェクトに対して鳥瞰図的な視点で上記カメラを設定する場合もある。このような車オブジェクトに対する上記カメラの距離に応じて、CPU30は、上記音量補正係数を設定する。例えば、CPU30は、車オブジェクトに対して所定の地点に設置された上記カメラの視点によって作成されたゲーム画像での再生音量を基準にして、その地点に対して増減するカメラの距離に応じて音量補正係数を演算する。
【0070】
次に、CPU30は、上記ステップS13で演算された加速音再生開始アドレスAu(a−1)以降に記憶されている加速音データDuを再生する処理を行い(ステップS17)、プレイヤがアクセル操作を変更せず(ステップS18)、かつ車オブジェクトが最高速度vmaxに到達するまで(ステップS14)、ステップS15〜S17の処理を繰り返す。そして、CPU30は、プレイヤがアクセル操作を変更した場合、上記ステップS11に戻って処理を継続する。上記ステップS17において、CPU30は、DSP34にARAM35のアドレスAu(a−1)以降に記憶されている加速音データDuをサウンドデータとして順次読み出す指示をする。そして、DSP34は、それらのサウンドデータが有する周波数に上記ステップS15で算出された周波数補正係数を乗算し、上記ステップS16で算出された音量補正係数による再生音量を調整して、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2aからエンジン音を再生する。このサウンド再生処理によって、プレイヤのアクセル操作の変更(つまり、アクセルをOFFする)がなく、最高速度vmaxに到達しない限り、上記ステップS13で演算された加速音再生開始アドレスを再生開始ポイントとして、予め録音した加速音データが連続して再生される。
【0071】
一方、上記ステップS14で、CPU30は、車オブジェクトが最高速度vmaxに到達している場合、車オブジェクトが最高速度vmaxの高速一定状態で走行していると判断してステップS19に処理を進める。ステップS19では、CPU30は、エンジン音再生の際の音量を補正する音量補正係数を演算し、次のステップに処理を進める。このステップS19の処理については、上記ステップS16と同様の処理であるため、詳細な説明を省略する。
【0072】
次に、CPU30は、高速一定部分のアドレスAu(m)〜Au(n−1)に記憶されている加速音データDu(m)〜Du(n−1)をループ再生する処理を行う(ステップS20)。このループ再生処理は、プレイヤがアクセルONを継続することによって(ステップS18)、車オブジェクトが最高速度vmaxの高速一定状態で走行している限り(ステップS14)、上記ステップS19の処理に戻って繰り返して行われる。CPU30は、DSP34にARAM35のアドレスAu(m)〜Au(n−1)に記憶されている高速一定部分の加速音データDu(m)〜Du(n−1)をサウンドデータとして繰り返して読み出す指示をする。そして、DSP34は、上記ステップS19で算出された音量補正係数による再生音量を調整して、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2aからエンジン音を再生する。そして、CPU30は、プレイヤがアクセル操作を変更(つまり、アクセルOFF)した場合(ステップS18)、上記ステップS11に戻って処理を継続する。
【0073】
一方、上記ステップS12において、車オブジェクトのエンジンが始動状態でアクセルOFFである場合、処理をステップS21に進める。ステップS21では、CPU30は、車オブジェクトの減速時のエンジン音を再生するために、ARAM35の減速音データ記憶領域352に記憶されている減速音データDdのアドレスAdを演算し、次のステップに処理を進める。具体的には、CPU30は、上記ステップS21の演算で、減速部分の減速音データDdが記憶されているm個のアドレスAd0〜Ad(m−1)に対して、再生を開始する減速音データDdがアドレスAd0から何番目(b番目)にあたるのかを、式(2)に基づいて演算する。
b=m−(m×vx/vmax) …(2)
ここで、vxは、上記ステップS13で用いられる数値と同様の、現在の車オブジェクトの速度であり、vmaxは、最高速度である。CPU30は、上記式(2)によって演算されたアドレスAd0からb番目にあたるアドレスAd(b−1)を、後述するエンジン音再生を開始する減速音再生開始アドレスとして決定する。
【0074】
ここで、CPU30は、上記式(2)を用いて、減速音データ記憶領域352に記憶されている減速部分の減速音データDdのアドレス数mに対して、最高速度vmaxに対する現在の車オブジェクトの速度vxの比率を乗算した値をアドレス数mから減算することによって、減速音再生開始アドレスを演算している。これは、上述したように減速音データ記憶領域352に記憶された減速音データDdが、実際の車両が時間0〜t1まで一定加速度で速度vから速度0まで減速したときのデータに基づいて録音されており、ゲーム上の時間0〜t1までアクセルOFFを継続することによって最高速度vmaxから速度0まで減速する車オブジェクトを、実際の車両の速度vから速度0への減速に置き換えていることになる。つまり、このような置き換えを行うことによって、CPU30は、最高速度vmaxに対する現在の車オブジェクトの速度vxの割合に相当する現実の減速音が記憶されているアドレスAd(b−1)を、正確に演算することができる。
【0075】
次に、CPU30は、ゲーム空間上の車オブジェクトの速度が、速度0のアイドル状態か否かを判断する(ステップS22)。そして、CPU30は、車オブジェクトが速度0のアイドル状態でない場合、車オブジェクトが減速していると判断して次のステップS23に処理を進める。一方、CPU30は、車オブジェクトが速度0のアイドル状態の場合、次のステップS27に処理を進める。
【0076】
ステップS23では、CPU30は、上記ステップS21で演算された減速音再生開始アドレスAd(b−1)以降に記憶されている減速音データDdに対して、その再生に用いられる周波数補正係数を演算し、エンジン音再生の際の音量を補正する音量補正係数を演算する(ステップS24)。これらステップS23およびS24の処理については、上記ステップS15およびS16と同様であるため、詳細な説明を省略する。そして、CPU30は、次のステップに処理を進める。
【0077】
次に、CPU30は、上記ステップS23で演算された減速音再生開始アドレスAd(b−1)以降に記憶されている減速音データDdを再生する処理を行い(ステップS25)、プレイヤがアクセル操作を変更せず(ステップS26)、かつ車オブジェクトが速度0のアイドル状態になるまで(ステップS22)、ステップS23〜S25の処理を繰り返す。そして、CPU30は、プレイヤがアクセル操作を変更(つまり、アクセルON)した場合、上記ステップS11に戻って処理を継続する。上記ステップS25において、CPU30は、DSP34にARAM35のアドレスAd(b−1)以降に記憶されている減速音データDdをサウンドデータとして順次読み出す指示をする。そして、DSP34は、それらのサウンドデータが有する周波数に上記ステップS23で算出された周波数補正係数を乗算し、上記ステップS24で算出された音量補正係数による再生音量を調整して、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2bからエンジン音を再生する。このサウンド再生処理によって、プレイヤのアクセル操作の変更(つまり、アクセルをONする)がなく、速度0のアイドル状態にならない限り、上記ステップS21で演算された減速音再生開始アドレスを再生開始ポイントとして、予め録音した減速音データが連続して再生される。
【0078】
一方、上記ステップS22で、CPU30は、車オブジェクトが速度0のアイドル状態の場合、ステップS27に処理を進める。ステップS27では、CPU30は、エンジン音再生の際の音量を補正する音量補正係数を演算し、次のステップに処理を進める。このステップS27の処理については、上記ステップS16と同様の処理であるため、詳細な説明を省略する。
【0079】
次に、CPU30は、アイドル部分のアドレスAd(m)〜Ad(n−1)に記憶されている減速音データDd(m)〜Dd(n−1)をループ再生する処理を行う(ステップS28)。このループ再生処理は、プレイヤがアクセルOFFを継続することによって(ステップS26)、車オブジェクトが速度0のアイドル状態を継続している限り(ステップS22)、上記ステップS27の処理に戻って繰り返して行われる。CPU30は、DSP34にARAM35のアドレスAd(m)〜Ad(n−1)に記憶されているアイドル部分の減速音データDd(m)〜Dd(n−1)をサウンドデータとして繰り返して読み出す指示をする。そして、DSP34は、上記ステップS27で算出された音量補正係数による再生音量を調整して、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2bからエンジン音を再生する。そして、CPU30は、プレイヤがアクセル操作を変更(つまり、アクセルON)した場合、上記ステップS11に戻って処理を継続する。
【0080】
そして、CPU30は、上記ステップS11でエンジンが始動していないと判断した場合、当該フローチャートによるエンジン音再生処理を終了する。
【0081】
なお、ARAM35には、加速音データDuおよび減速音データDdを、それぞれ同じ個数nで等分割し、加速音データDuの加速部分および減速音データDdの減速部分をそれぞれ同じ個数mで等分割して記憶したが、同じ個数nあるいはmでなくてもかまわない。上述したフローチャートによる処理および上記式(1)および(2)によるアドレスの算出を行えば、同じ個数でなくても同様の処理が可能である。
【0082】
次に、図8を参照して、上述したフローチャートに基づいた手順によって、ゲーム装置3が用いる加減速音データの一例を説明する。なお、図8は、車オブジェクトがアイドル状態から最高速度vmaxまで加速し、その後アイドル状態まで減速する場合に用いられる加減速音データを説明するための図である。
【0083】
図8において、ゲーム装置3は、車オブジェクトが速度0でアイドル状態の場合、ARAM35の減速音データ記憶領域352に記憶されているアイドル部分の減速音データAd(m)〜Ad(n−1)を用いてループ再生する。次に、プレイヤがアクセルONの操作を行うことによって、加速音データ記憶領域351のアドレスAu0から記憶されている加速部分の加速音データDu0、Du1、…を順次再生する。そして、プレイヤが時間t1以上アクセルON状態を継続することによって、当該アクセルONから時間t1経過した時点で、車オブジェクトが最高速度vmaxに到達する。この時間t1の経過までの期間は、ゲーム装置3は、加速音データ記憶領域351のアドレスAu0〜Au(m−1)に記憶されている加速部分の加速音データDu0〜Du(m−1)を順次再生する。その後、車オブジェクトは、プレイヤがさらにアクセルONの操作を継続することによって、最高速度vmaxを維持する。この最高速度vmaxを維持している期間に対して、ゲーム装置3は、加速音データ記憶領域351のアドレスAu(m)〜Au(n−1)に記憶されている高速一定部分の加速音データDu(m)〜Du(n−1)を用いてループ再生する。
【0084】
次に、プレイヤがアクセルOFFの操作を行うことによって、減速音データ記憶領域352のアドレスAd0から記憶されている減速部分の減速音データDd0、Dd1、…を順次再生する。そして、プレイヤが時間t1以上アクセルOFF状態を継続することによって、当該アクセルOFFから時間t1経過した時点で、車オブジェクトが速度0のアイドル状態となる。この時間t1の経過までの期間は、ゲーム装置3は、減速音データ記憶領域352のアドレスAd0〜Ad(m−1)に記憶されている減速部分の減速音データDd0〜Dd(m−1)を順次再生する。その後、車オブジェクトは、プレイヤがさらにアクセルOFFの操作を継続することによって、速度0のアイドル状態を維持する。このアイドル状態を維持している期間に対して、ゲーム装置3は、再度、減速音データ記憶領域352のアドレスAd(m)〜Ad(n−1)に記憶されているアイドル部分の減速音データDd(m)〜Dd(n−1)を用いてループ再生する。
【0085】
次に、図9を参照して、上述したフローチャートに基づいた手順によって、ゲーム装置3が用いる加減速音データの他の例を説明する。なお、図9は、車オブジェクトがアイドル状態から最高速度vmaxより遅い速度v1まで加速し、一度速度v2(v2<v1)まで減速した後、最高速度vmaxまで再加速する場合に用いられる加減速音データを説明するための図である。
【0086】
図9において、ゲーム装置3は、車オブジェクトが速度0でアイドル状態の場合、ARAM35の減速音データ記憶領域352に記憶されているアイドル部分の減速音データAd(m)〜Ad(n−1)を用いてループ再生する。次に、プレイヤがアクセルONの操作を行うことによって、加速音データ記憶領域351のアドレスAu0から記憶されている加速部分の加速音データDu0、Du1、…を順次再生する。そして、プレイヤがアクセルONの操作を停止した時点で、車オブジェクトが速度v1に到達する。この速度v1に到達するまでの期間は、ゲーム装置3は、加速音データ記憶領域351のアドレスAu0〜Au(m−1)に記憶されている加速部分の加速音データDu0〜Du(m−1)を用いて、上記速度v1に相当するアドレスまでの加速音データDuを順次再生する。
【0087】
そして、プレイヤがアクセルOFFを継続し、再度アクセルON状態の操作をするまで、車オブジェクトは速度v1から速度v2までエンジンブレーキによって減速する。この期間において、ゲーム装置3は、減速音データ記憶領域352のアドレスAd0〜Ad(m−1)に記憶されている減速部分の減速音データDd0〜Dd(m−1)を用いて、上記速度v1に相当するアドレスから上記速度v2に相当するアドレスまでの減速音データDdを順次再生する。
【0088】
そして、プレイヤが再度アクセルONの操作を行うことによって、車オブジェクトは速度v2から加速し、やがて最高速度vmaxに到達する。この期間において、ゲーム装置3は、加速音データ記憶領域351のアドレスAu0〜Au(m−1)に記憶されている加速部分の加速音データDu0〜Du(m−1)を用いて、上記速度v2に相当するアドレスから最高速度vmaxに相当するアドレスAu(m−1)までの加速音データDuを順次再生する。その後、車オブジェクトは、プレイヤがさらにアクセルONの操作を継続することによって、最高速度vmaxを維持する。この最高速度vmaxを維持している期間に対して、ゲーム装置3は、加速音データ記憶領域351のアドレスAu(m)〜Au(n−1)に記憶されている高速一定部分の加速音データDu(m)〜Du(n−1)を用いてループ再生する。
【0089】
このように、第1の実施形態に係るゲームシステム1においては、ゲーム空間上の車オブジェクトの加速、減速、アイドル、および最高速度一定状態の走行動作に応じたエンジン音が、それらの走行動作を実際の車両の走行によって予め録音されたサウンドデータを用いて再生されるため、現実に近いエンジン音の再生が可能となる。また、ゲーム中で車オブジェクトを加速させる入力を行っているときには、対応する加速音データを連続的に読み出して再生し、減速させる入力を開始したときには、再生し終わった加速音データに対応した減速音データの読み出し位置を指定可能にすることによって、加速音および減速音データが違和感無く繋がったエンジン音を再生することができる。さらに、減速中に加速を始めたときには、加速音データの最初ではなく、減速音データが再生し終わった位置に対応した加速音データの位置から再生を開始できるように、加速音データの読み出し位置を指定可能にすることによって、減速音および加速音データがさらに違和感無く繋がったエンジン音を再生することができる。
【0090】
(第2の実施形態)
本発明の第2の実施形態に係るゲームシステムについて説明する。第2の実施形態におけるゲームプログラムを実行するゲームシステムは、プレイヤが任意のアクセル開度およびブレーキ強度を操作できるそれぞれのアナログスイッチを備えている。つまり、第1の実施形態では、Aボタン62のONによってアクセル開度100%が指示されて加速し、Aボタン62のOFFによってアクセル開度0%が指示されて減速をエンジンブレーキで行うゲームシステムを説明したが、第2の実施形態では、それぞれ加速および減速の加速度を任意に設定できるものである。このようなゲームプログラムを実行するゲームシステムを、第2の実施形態として説明する。
【0091】
第2の実施形態に係るゲームシステムの構成は、図1を用いて第1の実施形態で説明したゲームシステム1と同様である。以下、同一の構成部については同一の参照符号を付して、詳細な説明を省略する。なお、第2の実施形態のゲームシステムで後述するレーシングゲームを楽しむ場合、上記アナログスイッチは、例えば、コントローラ6に設けられたRボタン66aおよびLボタン66bが利用される。例えば、プレイヤがRボタン66aを任意の押し下げ量で押す(ONする)ことによって車オブジェクトのアクセル開度0〜100%がその押し下げ量に応じてゲーム装置3に指示される。例えば、プレイヤが最も奥までRボタン66aを押し下げた時、アクセル開度100%が指示され、Rボタン66aを押すことを止める(OFFする)ことによって車オブジェクトのアクセルOFF(アクセル開度0%)が指示される。また、プレイヤがLボタン66bを任意の押し下げ量で押す(ONする)ことによって車オブジェクトのブレーキ強度0〜100%がその押し下げ量に応じてゲーム装置3に指示される。例えば、プレイヤが最も奥までLボタン66bを押し下げた時、ブレーキ強度100%が指示され、Lボタン66bを押すことを止める(OFFする)ことによって車オブジェクトのブレーキOFF(ブレーキ強度0%)が指示される。
【0092】
第2の実施形態のゲームシステム1に設けられるゲーム装置3の構成は、図2を用いて第1の実施形態で説明したゲーム装置3と同様である。以下、同一の構成部については同一の参照符号を付して、詳細な説明を省略する。
【0093】
また、第2の実施形態のメインメモリ33に記憶されるプログラムおよびデータおよびその領域も、図3を用いて第1の実施形態で説明したメモリマップと同様である。
【0094】
第2の実施形態のアクセル操作プログラムは、プレイヤがアクセルを開ける操作(例えば、Rボタン66aをON)をした押し込み量に応じたアクセル開度に対して、その車オブジェクトの走行動作を定義している。本発明のゲームプログラムでは、例えば、車オブジェクトが速度0の状態からRボタン66aの操作がアクセル開度100%で時間t1継続した場合、車オブジェクトが最高速度vmaxに到達するようにプログラムされている。また、車オブジェクトが速度0の状態からRボタン66aの操作がアクセル開度100%以外の状態で継続した場合、それぞれのアクセル開度毎に設定された時間の継続によって、それぞれのアクセル開度に応じた準最高速度vqmaxに車オブジェクトが到達するようにプログラムされている。なお、これら最高速度vmaxおよび準最高速度vqmaxは、何れもアクセル開度に応じて車オブジェクトが走行可能な最高速度であるため、これらを総称する場合は、アクセル開度に応じた最高速度vamaxと記載する。
【0095】
また、ブレーキ操作プログラムは、プレイヤがアクセルを閉める操作(例えば、Rボタン66aをOFF)をし、ブレーキをかける操作(例えば、Lボタン66bをON)をした押し込み量に応じたブレーキ強度に対して、その車オブジェクトの走行動作を定義している。本発明のゲームプログラムでは、例えば、車オブジェクトが最高速度vmaxの状態から、Rボタン66aおよびLボタン66bを共にOFF(つまり、アクセル開度0%およびブレーキ強度0%のエンジンブレーキがかかる状態)が時間t1継続した場合、車オブジェクトが速度0に減速するようにプログラムされている。そして、プレイヤがさらにブレーキ操作(例えば、Lボタン66bをON)することによって、ブレーキ強度に応じて設定された時間t1より短いそれぞれの時間で車オブジェクトが最高速度vmaxから速度0まで減速することが定義されている。なお、ブレーキ操作が、Bボタン63のON等によって行われる場合、ブレーキ強度0%および100%がプレイヤによって指示可能であるため、ブレーキ操作プログラムは、ブレーキ強度0%および100%に応じた上記時間を定義する。
【0096】
メインメモリ33に記憶される他のプログラムおよびデータは、第1の実施形態で説明したものと同様であるため、詳細な説明を省略する。また、ARAM35に記憶される加速音データおよび減速音データについても、図4〜図6を用いて第1の実施形態で説明したものと同様である。したがって、同一のデータについては同一の参照符号を付して、詳細な説明を省略する。
【0097】
次に、車オブジェクトがプレイヤの操作によってゲーム空間上に設定されたコースを走行するレーシングゲームを一例に、第2の実施形態に係るゲームプログラムに基づいたゲーム装置3の動作について説明する。ゲーム装置3の電源が投入されると、ゲーム装置3のCPU30は、図示しないブートROMに記憶されている起動プログラムを実行し、メインメモリ33等の各ユニットが初期化される。そして、光ディスク4に格納されたゲームプログラムがディスクドライブ40およびディスクI/F41を介してメインメモリ33に読み込まれ、そのゲームプログラムの実行が開始され、GPU32を介してモニタ2にゲーム空間が表現されることによって、ゲームが開始される。また、光ディスク4に格納された上記加速音および減速音データがディスクドライブ40およびディスクI/F41を介してARAM35に上記アドレスに対応して記憶される。
【0098】
まず、ゲーム装置3のプレイヤは、モニタ2に表示されたゲーム画像を見ながらレーシングゲームを希望するコースや操作する車オブジェクトの種別を選択する。これらの選択は、上述したようにコントローラ6に設けられた各入力部をプレイヤが操作することによって行われる。そして、プレイヤによって選択されたコースおよび車オブジェクトに応じたゲーム画像がモニタ2に表示される。
【0099】
次に、図10を参照して、これらの処理動作以降に行われる第2の実施形態に係るゲーム装置3におけるエンジン音の再生処理について説明する。なお、図10は、ゲーム装置3が行うエンジン音再生処理の動作を示すフローチャートである。
【0100】
図10において、ゲーム装置3のCPU30は、ゲーム空間上の車オブジェクトのエンジンが始動しているか否か(ステップS41)、およびプレイヤがコントローラ6を操作することによってアクセルがON(例えば、Rボタン66aのON)されているか否か(ステップS42)を判断する。そして、CPU30は、車オブジェクトのエンジンが始動状態でアクセルONである場合、処理を次のステップS43に進め、車オブジェクトのエンジンが始動状態でアクセルOFFである場合、処理を次のステップS53に進める。
【0101】
ステップS43では、CPU30は、車オブジェクトの加速時のエンジン音を再生するために、ARAM35の加速音データ記憶領域351に記憶されている加速音データDuのアドレスAuを演算し、次のステップに処理を進める。具体的には、CPU30は、上記ステップS43の演算で、加速部分の加速音データDuが記憶されているm個のアドレスAu0〜Au(m−1)に対して、再生を開始する加速音データDuがアドレスAu0から何番目(a番目)にあたるのかを、式(3)に基づいて演算する。
a=m×vx/vamax …(3)
ここで、vxは、現在の車オブジェクトの速度であり、CPU30が車オブジェクトが速度0の状態からRボタン66aのONおよびOFFと、Lボタン66bのONおよびOFFとが操作された時間をそれぞれの押し込み量(つまり、アクセル開度あるいはブレーキ強度)に応じて累積計算し、データ記憶領域332のアクセルおよびブレーキ操作バッファに記憶された数値を用いて演算される。そして、vamaxは、アクセルONを継続することによって到達する上述した車オブジェクトのアクセル開度に応じた最高速度である。CPU30は、上記式(3)によって演算されたアドレスAu0からa番目にあたるアドレスAu(a−1)をステップS43で演算する加速音再生開始アドレスとして決定する。
【0102】
ここで、CPU30は、上記式(3)を用いて、加速音データ記憶領域351に記憶されている加速部分の加速音データDuのアドレス数mに対して、アクセル開度に応じた最高速度vamaxに対する現在の車オブジェクトの速度vxの比率を乗算することによって、加速音再生開始アドレスを演算している。これは、上述したように加速音データ記憶領域351に記憶された加速音データDuが、実際の車両が一定加速度で速度0から速度vまで加速したときのデータに基づいて録音されており、ゲーム上でアクセルONを継続することによって到達する車オブジェクトのアクセル開度に応じた最高速度vamaxを実際の車両の速度vに置き換えていることになる。つまり、このような置き換えを行うことによって、CPU30は、アクセル開度に応じた最高速度vamaxに対する現在の車オブジェクトの速度vxの割合に相当する現実の加速音が記憶されているアドレスAu(a−1)を、正確に演算することができる。
【0103】
次に、CPU30は、ゲーム空間上の車オブジェクトの速度が、現在プレイヤの操作によって指示されているアクセル開度に応じた最高速度vamaxに到達しているか否かを判断する(ステップS44)。具体的には、CPU30は、アクセル開度100%の場合、最高速度vmaxに基づいて判断を行い、それ以外のアクセル開度の場合、そのアクセル開度に応じた準最高速度vqmaxに基づいて判断を行う。そして、CPU30は、車オブジェクトがアクセル開度に応じた最高速度vamaxに未到達の場合、車オブジェクトが加速していると判断して次のステップS45に処理を進める。一方、CPU30は、車オブジェクトがアクセル開度に応じた最高速度vamaxに到達している場合、車オブジェクトが最高速度vamaxの高速一定状態で走行していると判断して次のステップS50に処理を進める。
【0104】
ステップS45では、CPU30は、上記ステップS43で演算された加速音再生開始アドレスAu(a−1)以降に記憶されている加速音データDuに対して、その再生に用いられるアクセル開度補正係数akを演算し、次のステップに処理を進める。上述したように、車オブジェクトが到達可能な最高速度およびそのエンジン回転数は、アクセル開度に応じて異なり、それらの最高速度に到達する時間も異なる。しかしながら、上記式(3)を用いた演算では、アクセル開度に応じた最高速度vamaxに対する現在の速度vxの割合が同じであると同じ加速音再生開始アドレスが演算され、結果的に異なった速度vxに対して同じ加速音データが再生されてしまう。また、アクセル開度に応じた最高速度vamaxに到達するまでに要するエンジン音再生時間も同じになる。このようなアクセル開度による車オブジェクトの速度、エンジン回転数、および到達時間の違いを正確にエンジン音として再生するために、上記ステップS45では、再生するエンジン音周波数に乗算する周波数倍率としてアクセル開度補正係数akを演算する。CPU30は、上記アクセル開度補正係数akを式(4)によって演算する。
ak=aop×(ao100−ao0)/100+ao0 …(4)
ここで、aopは現在のアクセル開度(0〜100%)であり、ao100はアクセル開度100%における周波数倍率を示す定数であり、ao0はアクセル開度0%における周波数倍率を示す定数である。例えば、定数ao100=1.0、定数ao0=0.3に予め設定されている。
【0105】
次に、CPU30は、上記ステップS43で演算された加速音再生開始アドレスAu(a−1)以降に記憶されている加速音データDuに対して、その再生に用いられる周波数補正係数を演算し(ステップS46)、エンジン音再生の際の音量を補正する音量補正係数を演算する(ステップS47)。これらステップS46およびS47の処理については、第1の実施形態で説明したステップS15およびS16と同様であるため、詳細な説明を省略する。そして、CPU30は、次のステップに処理を進める。
【0106】
次に、CPU30は、上記ステップS43で演算された加速音再生開始アドレスAu(a−1)以降に記憶されている加速音データDuを再生する処理を行い(ステップS48)、プレイヤがアクセルOFFせず(ステップS49)、かつ車オブジェクトがアクセル開度に応じた最高速度vamaxに到達するまで(ステップS44)、ステップS45〜S48の処理を繰り返す。そして、CPU30は、プレイヤがアクセルOFFした場合、上記ステップS41に戻って処理を継続する。上記ステップS48において、CPU30は、DSP34にARAM35のアドレスAu(a−1)以降に記憶されている加速音データDuをサウンドデータとして順次読み出す指示をする。そして、DSP34は、それらのサウンドデータが有する周波数に上記ステップS45で演算されたアクセル開度補正係数akおよび上記ステップS46で算出された周波数補正係数を乗算し、上記ステップS47で算出された音量補正係数による再生音量を調整して、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2aからエンジン音を再生する。このサウンド再生処理によって、プレイヤのアクセル操作の変更(つまり、アクセルをOFFする)がなく、アクセル開度に応じた最高速度vamaxに到達しない限り、上記ステップS43で演算された加速音アドレスを再生開始ポイントとして、予め録音した加速音データが連続して再生される。また、ARAM35に記憶されている加速音データが有する周波数にアクセル開度補正係数akが乗算されているため、アクセル開度が100%でない場合、そのアクセル開度に応じて相対的に再生周波数が低く、かつそのアクセル開度に応じて最高速度vamaxに到達する時間が相対的に遅い加速音が再生される。つまり、アクセル開度による車オブジェクトの速度、エンジン回転数、および到達時間の違いを正確にエンジン音として再生することができる。
【0107】
一方、上記ステップS44で、CPU30は、車オブジェクトがアクセル開度に応じた最高速度vamaxに到達している場合、車オブジェクトが最高速度vamaxの高速一定状態で走行していると判断してステップS50に処理を進める。ステップS50では、CPU30は、高速一定部分のアドレスAu(m)〜Au(n−1)に記憶されている加速音データDu(m)〜Du(n−1)に対して、その再生に用いられるアクセル開度補正係数akを演算し、次のステップに処理を進める。このステップS50の処理については、上記ステップS45と同様であるため、詳細な説明を省略する。
【0108】
次に、CPU30は、エンジン音再生の際の音量を補正する音量補正係数を演算し(ステップS51)、次のステップに処理を進める。このステップS51の処理については、第1の実施形態で説明したステップS16と同様の処理であるため、詳細な説明を省略する。
【0109】
次に、CPU30は、高速一定部分のアドレスAu(m)〜Au(n−1)に記憶されている加速音データDu(m)〜Du(n−1)をループ再生する処理を行う(ステップS52)。このループ再生処理は、プレイヤがアクセルONを継続している限り(ステップS49)、上記ステップS50の処理に戻って繰り返して行われる。CPU30は、DSP34にARAM35のアドレスAu(m)〜Au(n−1)に記憶されている高速一定部分の加速音データDu(m)〜Du(n−1)をサウンドデータとして繰り返して読み出す指示をする。そして、DSP34は、そのサウンドデータが有する周波数に上記ステップS50で演算されたアクセル開度補正係数akを乗算し、上記ステップS51で算出された音量補正係数による再生音量を調整して、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2aからエンジン音を再生する。そして、CPU30は、プレイヤがアクセル操作を変更(つまり、アクセルOFF)した場合(ステップS49)、上記ステップS41に戻って処理を継続する。
【0110】
一方、上記ステップS42において、車オブジェクトのエンジンが始動状態でアクセルOFFである場合、処理をステップS53に進める。ステップS53では、CPU30は、車オブジェクトの減速時のエンジン音を再生するために、第1の実施形態の上記ステップS21と同様にARAM35の減速音データ記憶領域352に記憶されている減速音データDdのアドレスAdを演算し、次のステップに処理を進める。具体的には、CPU30は、上記ステップS21の演算で、減速部分の減速音データDdが記憶されているm個のアドレスAd0〜Ad(m−1)に対して、再生を開始する減速音データDdがアドレスAd0から何番目(b番目)にあたるのかを、上記ステップS21で用いた式(2)に基づいて演算する。
b=m−(m×vx/vmax) …(2)
ここで、vxは、上記ステップS43で用いられる数値と同様の、現在の車オブジェクトの速度であり、vmaxは、最高速度である。CPU30は、上記式(2)によって演算されたアドレスAd0からb番目にあたるアドレスAd(b−1)を、エンジン音再生を開始する減速音再生開始アドレスとして決定する。
【0111】
次に、CPU30は、ゲーム空間上の車オブジェクトの速度が、速度0のアイドル状態か否かを判断する(ステップS54)。そして、CPU30は、車オブジェクトが速度0のアイドル状態でない場合、車オブジェクトが減速していると判断して次のステップS55に処理を進める。一方、CPU30は、車オブジェクトが速度0のアイドル状態の場合、次のステップS60に処理を進める。
【0112】
ステップS55では、CPU30は、上記ステップS53で演算された減速音再生開始アドレスAd(b−1)以降に記憶されている減速音データDdに対して、その再生に用いられるブレーキ強度補正係数bkを演算し、次のステップに処理を進める。上述したように、プレイヤがさらにブレーキ操作(例えば、Lボタン66bをON)することによって、指示されたブレーキ強度に応じて設定された時間t1より短いそれぞれの時間で車オブジェクトが最高速度vmaxから速度0まで減速する。つまり、プレイヤが任意のブレーキ強度でブレーキ操作を行った場合、エンジンブレーキ(ブレーキ強度0%)による減速より相対的に大きな加速度で減速することになる。しかしながら、上記式(2)を用いた演算では、最高速度vmaxに対する現在の速度vxの割合が同じであると同じ減速音再生開始アドレスが演算され、結果的に減速期間の異なった速度に対して同じ減速音データが再生されてしまう。このようなブレーキ強度による車オブジェクトの速度およびエンジン回転数の違いを正確にエンジン音として再生するために、上記ステップS55では、再生するエンジン音周波数に乗算する周波数倍率としてブレーキ強度補正係数bkを演算する。CPU30は、上記ブレーキ強度補正係数bkを式(5)によって演算する。
bk=(100−bop)×(bo0−bo100)/100+bo100…(5)
ここで、bopは現在のブレーキ強度(0〜100%)であり、bo0はブレーキ強度0%における周波数倍率を示す定数であり、bo100はブレーキ強度100%における周波数倍率を示す定数である。例えば、定数bo0=1.0、定数bo100=0.3に予め設定されている。
【0113】
次に、CPU30は、上記ステップS53で演算された減速音再生開始アドレスAd(b−1)以降に記憶されている減速音データDdに対して、その再生に用いられる周波数補正係数を演算し(ステップS56)、エンジン音再生の際の音量を補正する音量補正係数を演算する(ステップS57)。これらステップS56およびS57の処理については、上記ステップS15およびS16と同様であるため、詳細な説明を省略する。そして、CPU30は、次のステップに処理を進める。
【0114】
次に、CPU30は、上記ステップS53で演算された減速音再生開始アドレスAd(b−1)以降に記憶されている減速音データDdを再生する処理を行い(ステップS58)、プレイヤがブレーキ操作をOFFしてアクセルONしない状態で(ステップS59)、かつ車オブジェクトが速度0のアイドル状態になるまで(ステップS54)、ステップS55〜S58の処理を繰り返す。そして、CPU30は、プレイヤがアクセル操作を変更(つまり、ブレーキ操作をOFFしてアクセルON)した場合、上記ステップS41に戻って処理を継続する。上記ステップS58において、CPU30は、DSP34にARAM35のアドレスAd(b−1)以降に記憶されている減速音データDdをサウンドデータとして順次読み出す指示をする。そして、DSP34は、それらのサウンドデータが有する周波数に上記ステップS55で演算されたブレーキ強度補正係数bkおよび上記ステップS56で算出された周波数補正係数を乗算し、上記ステップS57で算出された音量補正係数による再生音量を調整して、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2bからエンジン音を再生する。このサウンド再生処理によって、プレイヤのアクセル操作の変更(つまり、ブレーキ操作をOFFしてアクセルをONする)がなく、速度0のアイドル状態にならない限り、上記ステップS53で演算された減速音再生開始アドレスを再生開始ポイントとして、予め録音した減速音データが連続して再生される。また、ARAM35に記憶されている減速音データが有する周波数にブレーキ強度補正係数bkが乗算されているため、ブレーキ強度が0%(エンジンブレーキのみ)でない場合、そのブレーキ強度に応じて相対的に再生周波数が低い減速音が再生される。つまり、ブレーキ強度による車オブジェクトの速度およびエンジン回転数の違いを正確にエンジン音として再生することができる。
【0115】
一方、上記ステップS54で、CPU30は、車オブジェクトが速度0のアイドル状態の場合、ステップS60に処理を進める。ステップS60では、CPU30は、エンジン音再生の際の音量を補正する音量補正係数を演算し、次のステップに処理を進める。このステップS60の処理については、上記ステップS16と同様の処理であるため、詳細な説明を省略する。
【0116】
次に、CPU30は、アイドル部分のアドレスAd(m)〜Ad(n−1)に記憶されている減速音データDd(m)〜Dd(n−1)をループ再生する処理を行う(ステップS61)。このループ再生処理は、プレイヤが少なくともアクセルOFFを継続することによって(ステップS59)、車オブジェクトが速度0のアイドル状態を継続している限り(ステップS54)、上記ステップS60の処理に戻って繰り返して行われる。CPU30は、DSP34にARAM35のアドレスAd(m)〜Ad(n−1)に記憶されているアイドル部分の減速音データDd(m)〜Dd(n−1)をサウンドデータとして繰り返して読み出す指示をする。そして、DSP34は、上記ステップS60で算出された音量補正係数による再生音量を調整して、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2bからエンジン音を再生する。そして、CPU30は、プレイヤがアクセル操作を変更(つまり、少なくともアクセルON)した場合、上記ステップS41に戻って処理を継続する。
【0117】
そして、CPU30は、上記ステップS41でエンジンが始動していないと判断した場合、当該フローチャートによるエンジン音再生処理を終了する。
【0118】
なお、ARAM35には、加速音データDuおよび減速音データDdを、それぞれ同じ個数nで等分割し、加速音データDuの加速部分および減速音データDdの減速部分をそれぞれ同じ個数mで等分割して記憶したが、第2の実施形態においても同じ個数nあるいはmでなくてもかまわない。上述したフローチャートによる処理および上記式(2)および(3)によるアドレスの算出を行えば、同じ個数でなくても同様の処理が可能である。
【0119】
このように、第2の実施形態に係るゲームシステム1においては、プレイヤが任意のアクセル開度およびブレーキ強度を操作可能なゲームであっても、ゲーム空間上の車オブジェクトの加速、減速、アイドル、および最高速度一定状態の走行動作に応じたエンジン音が、それらの走行動作を実際の車両の走行によって予め録音されたサウンドデータを用いて再生されるため、現実に近いエンジン音の再生が可能となる。また、アクセル開度あるいはブレーキ強度に応じて加速あるいは減速音の周波数を補正することによって、自然な加速あるいは減速音が再生可能である。
【0120】
なお、上述した第1および第2の実施形態では、車オブジェクトがプレイヤの操作によってゲーム空間上に設定されたコースを走行するレーシングゲームを一例に説明したが、本発明は、他のゲームにも適用できる。例えば、電車や飛行機等の加速および減速が定義された物体が移動するゲームのサウンド再生においても、本発明を適用することができる。
【0121】
また、エンジン音の再生にあたっては、加速音および減速音の一方を予め録音してARAM35に記憶させ、ゲーム中に他方のエンジン音を再生するときに一方のエンジン音を逆再生することも考えられる。しかしながら、加速時のエンジン音と減速時のエンジン音とは、それぞれに固有の共振音、吸排気音、エンジンの負荷の違いによる機械音等が含まれており、逆再生によってこれらの特徴を再生することは不可能である。したがって、本発明を用いて自然な加速あるいは減速音が再生するためには、加速および減速時の2種類の連続的な音データを用いて、ゲームにおけるエンジンを再生するのが好ましい。
【図面の簡単な説明】
【図1】本発明の第1および第2の実施形態に係るゲームシステムを説明するための外観図である。
【図2】図1のゲーム装置3の機能ブロック図である。
【図3】図2のメインメモリ33に記憶されるプログラムおよびデータの一例について説明するための概略的なメモリマップである。
【図4】加速音データを予め取得するための加速音データとその条件との一例を示すグラフである。
【図5】減速音データを予め取得するための減速音データとその条件との一例を示すグラフである。
【図6】図4および図5で示した加速音および減速音データを図2のARAM35に記憶した際の概略的なメモリマップである。
【図7】第1の実施形態に係る図1のゲーム装置3が行うエンジン音再生処理の動作を示すフローチャートである。
【図8】図7のフローチャートに基づいて、車オブジェクトがアイドル状態から最高速度vmaxまで加速し、その後アイドル状態まで減速する場合に用いられる加減速音データを説明するための図である。
【図9】図7のフローチャートに基づいて、車オブジェクトがアイドル状態から最高速度vmaxより遅い速度v1まで加速し、一度速度v2(v2<v1)まで減速した後、最高速度vmaxまで再加速する場合に用いられる加減速音データを説明するための図である。
【図10】第2の実施形態に係る図1のゲーム装置3が行うエンジン音再生処理の動作を示すフローチャートである。
【符号の説明】
1…ゲームシステム
2…モニタ
2b…スピーカ
3…ゲーム装置
4…光ディスク
5…外部メモリカード
6…コントローラ
61…メインスティック
62…Aボタン
63…Bボタン
64…Xボタン
65…Yボタン
66a…Rボタン
66b…Lボタン
67…十字キー
68…Cスティック
69…スタート−ポーズボタン
30…CPU
31…メモリコントローラ
32…GPU
33…メインメモリ
331…プログラム記憶領域
332…データ記憶領域
34…DSP
35…ARAM
351…加速音データ記憶領域
352…減速音データ記憶領域
36…コントローラI/F
37…ビデオI/F
38…外部メモリI/F
39…オーディオI/F
40…ディスクドライブ
41…ディスクI/F

Claims (20)

  1. プレイヤの操作に応答して物体が移動するゲームを、ゲーム画像上で表現するゲーム装置であって、
    プレイヤの操作に応答して、少なくとも前記物体を加速移動させる加速操作入力データと前記物体を減速移動させる減速操作入力データとを入力させる操作手段と、
    予め前記物体の加速音データをその動作パラメータに応じて連続的に記憶した加速音記憶手段と、
    予め前記物体の減速音データをその動作パラメータに応じて連続的に記憶した減速音記憶手段と、
    前記加速音記憶手段および前記減速音記憶手段に記憶された前記加速音データおよび前記減速音データの何れか一方を前記操作手段から入力する操作入力データに基づいて選択し、現在の前記物体の動作パラメータに相当する当該選択された音データの読み出し開始位置を演算する読み出し位置演算手段と、
    前記読み出し位置演算手段が選択した音データを前記読み出し開始位置から連続的に読み出す音データ読み出し手段と、
    前記音データ読み出し手段で読み出された音データを音として発音させる音声出力制御手段とを備える、ゲーム装置。
  2. 前記操作手段から入力する前記加速および減速操作入力データが一方から他方に変わる毎に、
    前記読み出し位置演算手段は、前記読み出し開始位置の演算対象として前記加速音データおよび前記減速音データの一方から他方へ変更し、
    前記音データ読み出し手段は、前記読み出し位置演算手段の演算対象の変更に応じて、新たに演算対象となった音データを前記読み出し開始位置から連続的に読み出すことによって、当該演算対象の変更前後で異なる音データを接続して読み出すことを特徴とする、請求項1に記載のゲーム装置。
  3. 前記音データ読み出し手段が前記操作手段からの前記加速操作入力データに応答して前記加速音データを連続的に読み出しているときに、前記操作手段から前記減速操作入力データが入力されたことに応じて、
    前記読み出し位置演算手段は、前記音データ読み出し手段が読み出している前記加速音データの読み出し位置に相当する動作パラメータに基づいて、前記減速音データの読み出し開始位置を演算することを特徴とする、請求項1に記載のゲーム装置。
  4. 前記音データ読み出し手段が前記操作手段からの前記減速操作入力データに応答して前記減速音データを連続的に読み出しているときに、前記操作手段から前記加速操作入力データが入力されたことに応じて、
    前記読み出し位置演算手段は、前記音データ読み出し手段が読み出している前記減速音データの読み出し位置に相当する動作パラメータに基づいて、前記加速音データの読み出し開始位置を演算することを特徴とする、請求項1に記載のゲーム装置。
  5. 前記加速音記憶手段が記憶する加速音データは、少なくとも前記物体が最低速度から最高速度まで一定の加速度で加速したときの加速部分の音データを含み、
    前記減速音記憶手段が記憶する減速音データは、少なくとも前記物体が前記最高速度から前記最低速度まで一定の加速度で減速したときの減速部分の音データを含んでいることを特徴とする、請求項1に記載のゲーム装置。
  6. さらに、前記加速音記憶手段が記憶する加速音データは、前記物体が前記最高速度で一定の速度で動作した最高速度一定部分の音データを前記加速部分の音データに連続して含んでおり、
    前記音データ読み出し手段は、前記操作手段から前記加速操作入力データの入力が所定の時間以上継続したとき、前記最高速度一定部分の加速音データを繰り返して読み出すことを特徴とする、請求項5に記載のゲーム装置。
  7. さらに、前記減速音記憶手段が記憶する減速音データは、前記物体が前記最低速度で一定の速度で動作した最低速度一定部分の音データを前記減速部分の音データに連続して含んでおり、
    前記音データ読み出し手段は、前記操作手段から前記減速操作入力データの入力が所定の時間以上継続したとき、前記最低速度一定部分の減速音データを繰り返して読み出すことを特徴とする、請求項5に記載のゲーム装置。
  8. 前記操作手段は、プレイヤの操作量に応答して前記物体を任意の割合で加速移動させる加速操作入力データの入力が可能であり、
    前記音声出力制御手段は、前記加速操作入力データが示す加速移動の割合に応じて、前記音データ読み出し手段で読み出された加速音データの周波数を補正する加速音周波数補正手段を含む、請求項1に記載のゲーム装置。
  9. 前記操作手段は、プレイヤの操作量に応答して前記物体を任意の割合で減速移動させる減速操作入力データの入力が可能であり、
    前記音声出力制御手段は、前記減速操作入力データが示す減速移動の割合に応じて、前記音データ読み出し手段で読み出された減速音データの周波数を補正する減速音周波数補正手段を含む、請求項1に記載のゲーム装置。
  10. 前記物体は、車両であり、
    前記動作パラメータは、前記車両の車速であることを特徴とする、請求項1に記載のゲーム装置。
  11. プレイヤによって操作される操作部を備えたコンピュータに、プレイヤの操作に応答して物体が移動するゲームをゲーム画像上で表現する処理を実行させるゲームプログラムであって、
    前記操作部の操作に応答して、少なくとも前記物体を加速移動させる加速操作入力データと前記物体を減速移動させる減速操作入力データとを入力する入力ステップと、
    前記物体の動作パラメータに応じて連続的に予め記憶された当該物体の加速音データおよび減速音データの何れか一方を前記入力ステップで入力する操作入力データに基づいて選択し、現在の前記物体の動作パラメータに相当する当該選択された音データの読み出し開始位置を演算する読み出し位置演算ステップと、
    前記読み出し位置演算ステップが選択した音データを前記読み出し開始位置から連続的に読み出す音データ読み出しステップと、
    前記音データ読み出しステップで読み出された音データを音として発音させる音声出力制御ステップとを、前記コンピュータに実行させる、ゲームプログラム。
  12. 前記入力ステップで前記操作部から入力する前記加速および減速操作入力データが一方から他方に変わる毎に、
    前記読み出し位置演算ステップは、前記読み出し開始位置の演算対象として前記加速音データおよび前記減速音データの一方から他方へ変更し、
    前記音データ読み出しステップは、前記読み出し位置演算ステップの演算対象の変更に応じて、新たに演算対象となった音データを前記読み出し開始位置から連続的に読み出すことによって、当該演算対象の変更前後で異なる音データを接続して読み出すことを特徴とする、請求項11に記載のゲームプログラム。
  13. 前記音データ読み出しステップが前記入力ステップによる前記加速操作入力データに応答して前記加速音データを連続的に読み出しているときに、前記入力ステップによって前記減速操作入力データが入力されたことに応じて、
    前記読み出し位置演算ステップは、前記音データ読み出しステップが読み出している前記加速音データの読み出し位置に相当する動作パラメータに基づいて、前記減速音データの読み出し開始位置を演算することを特徴とする、請求項11に記載のゲームプログラム。
  14. 前記音データ読み出しステップが前記入力ステップによる前記減速操作入力データに応答して前記減速音データを連続的に読み出しているときに、前記入力ステップによって前記加速操作入力データが入力されたことに応じて、
    前記読み出し位置演算ステップは、前記音データ読み出しステップが読み出している前記減速音データの読み出し位置に相当する動作パラメータに基づいて、前記加速音データの読み出し開始位置を演算することを特徴とする、請求項11に記載のゲームプログラム。
  15. 予め記憶された前記加速音データは、少なくとも前記物体が最低速度から最高速度まで一定の加速度で加速したときの加速部分の音データを含み、
    予め記憶された前記減速音データは、少なくとも前記物体が前記最高速度から前記最低速度まで一定の加速度で減速したときの減速部分の音データを含んでいることを特徴とする、請求項11に記載のゲームプログラム。
  16. さらに、予め記憶された前記加速音データは、前記物体が前記最高速度で一定の速度で動作した最高速度一定部分の音データを前記加速部分の音データに連続して含んでおり、
    前記音データ読み出しステップは、前記入力ステップによる前記加速操作入力データの入力が所定の時間以上継続したとき、前記最高速度一定部分の加速音データを繰り返して読み出すことを特徴とする、請求項15に記載のゲームプログラム。
  17. さらに、予め記憶された前記減速音データは、前記物体が前記最低速度で一定の速度で動作した最低速度一定部分の音データを前記減速部分の音データに連続して含んでおり、
    前記音データ読み出しステップは、前記入力ステップから前記減速操作入力データの入力が所定の時間以上継続したとき、前記最低速度一定部分の減速音データを繰り返して読み出すことを特徴とする、請求項15に記載のゲームプログラム。
  18. 前記入力ステップは、プレイヤによって操作される前記操作部の操作量に応答して、前記物体を任意の割合で加速移動させる加速操作入力データを前記コンピュータに入力し、
    前記音声出力制御ステップは、前記加速操作入力データが示す加速移動の割合に応じて、前記音データ読み出しステップで読み出された加速音データの周波数を補正する加速音周波数補正ステップを含む、請求項11に記載のゲームプログラム。
  19. 前記入力ステップは、プレイヤによって操作される前記操作部の操作量に応答して、前記物体を任意の割合で減速移動させる減速操作入力データを前記コンピュータに入力し、
    前記音声出力制御ステップは、前記減速操作入力データが示す減速移動の割合に応じて、前記音データ読み出しステップで読み出された減速音データの周波数を補正する減速音周波数補正ステップを含む、請求項11に記載のゲームプログラム。
  20. 前記物体は、車両であり、
    前記動作パラメータは、前記車両の車速であることを特徴とする、請求項11に記載のゲームプログラム。
JP2003125434A 2003-04-30 2003-04-30 ゲーム装置およびゲームプログラム Expired - Lifetime JP3649722B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2003125434A JP3649722B2 (ja) 2003-04-30 2003-04-30 ゲーム装置およびゲームプログラム
EP04003005A EP1477210B1 (en) 2003-04-30 2004-02-11 Game apparatus and storage medium having game program recorded therein
DE602004007428T DE602004007428T2 (de) 2003-04-30 2004-02-11 Spielgerät und Speichermedium mit darauf gespeichertem Spielprogramm
US10/781,868 US20040219981A1 (en) 2003-04-30 2004-02-20 Game apparatus and storage medium having game program recorded therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003125434A JP3649722B2 (ja) 2003-04-30 2003-04-30 ゲーム装置およびゲームプログラム

Publications (2)

Publication Number Publication Date
JP2004329290A true JP2004329290A (ja) 2004-11-25
JP3649722B2 JP3649722B2 (ja) 2005-05-18

Family

ID=33028301

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003125434A Expired - Lifetime JP3649722B2 (ja) 2003-04-30 2003-04-30 ゲーム装置およびゲームプログラム

Country Status (4)

Country Link
US (1) US20040219981A1 (ja)
EP (1) EP1477210B1 (ja)
JP (1) JP3649722B2 (ja)
DE (1) DE602004007428T2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006308797A (ja) * 2005-04-27 2006-11-09 Yamaha Motor Co Ltd エンジン音合成装置およびそれを備えた車両、ならびにエンジン音合成方法
US7876913B2 (en) 2005-03-22 2011-01-25 Honda Motor Co., Ltd. Apparatus for producing sound effect for mobile object
JP2011085662A (ja) * 2009-10-13 2011-04-28 Yamaha Corp エンジン音生成装置
JP2011084109A (ja) * 2009-10-13 2011-04-28 Yamaha Corp エンジン音生成装置
US8059829B2 (en) 2006-03-24 2011-11-15 Honda Motor Co., Ltd. Sound effect producing apparatus for vehicle
JP2021524076A (ja) * 2018-05-21 2021-09-09 マイクロソフト テクノロジー ライセンシング,エルエルシー 仮想カメラ配置システム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004329463A (ja) * 2003-05-06 2004-11-25 Nintendo Co Ltd ゲーム装置および仮想カメラの制御プログラム
JP5506129B2 (ja) * 2006-05-08 2014-05-28 任天堂株式会社 ゲームプログラム、ゲーム装置、ゲームシステムおよびゲーム処理方法
JP4917347B2 (ja) * 2006-05-09 2012-04-18 任天堂株式会社 ゲーム装置およびゲームプログラム
JP5173174B2 (ja) * 2006-09-13 2013-03-27 任天堂株式会社 ゲーム装置、ゲームプログラム、ゲームシステム、およびゲーム処理方法
AU2008258197A1 (en) 2007-12-21 2009-07-09 Aristocrat Technologies Australia Pty Limited A gaming system, a sound controller, and a method of gaming
US8672761B2 (en) * 2010-05-10 2014-03-18 Michael Kidakarn Hand held controller with pressure controls
JP5573530B2 (ja) * 2010-09-15 2014-08-20 トヨタ自動車株式会社 車両の制御装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4373722A (en) * 1980-06-12 1983-02-15 Cpg Products Corp. Electronic vehicle race simulator
US5734726A (en) * 1993-11-03 1998-03-31 Pragmatic Designs, Inc. Device and method for controlling digitally-stored sounds to provide smooth acceleration and deceleration effects
JPH07182587A (ja) * 1993-12-21 1995-07-21 Honda Motor Co Ltd 電気車両用擬似音発生装置
JPH08292785A (ja) * 1995-04-20 1996-11-05 Marushin Kogyo Kk 実エンジン音再生装置
US6117007A (en) * 1996-08-09 2000-09-12 Konami Corporation Driving game machine and a storage medium for storing a driving game program
US5784468A (en) * 1996-10-07 1998-07-21 Srs Labs, Inc. Spatial enhancement speaker systems and methods for spatially enhanced sound reproduction
WO2002011838A1 (en) * 2000-08-03 2002-02-14 Mattel, Inc. Handheld driving simulation game apparatus
US6592375B2 (en) * 2001-02-09 2003-07-15 Midway Games West Inc. Method and system for producing engine sounds of a simulated vehicle
CA2386446A1 (en) * 2001-05-15 2002-11-15 James Phillipsen Parameterized interactive control of multiple wave table sound generation for video games and other applications

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7876913B2 (en) 2005-03-22 2011-01-25 Honda Motor Co., Ltd. Apparatus for producing sound effect for mobile object
JP2006308797A (ja) * 2005-04-27 2006-11-09 Yamaha Motor Co Ltd エンジン音合成装置およびそれを備えた車両、ならびにエンジン音合成方法
JP4515321B2 (ja) * 2005-04-27 2010-07-28 ヤマハ発動機株式会社 エンジン音合成装置およびそれを備えた車両、ならびにエンジン音合成方法
US8059829B2 (en) 2006-03-24 2011-11-15 Honda Motor Co., Ltd. Sound effect producing apparatus for vehicle
JP2011085662A (ja) * 2009-10-13 2011-04-28 Yamaha Corp エンジン音生成装置
JP2011084109A (ja) * 2009-10-13 2011-04-28 Yamaha Corp エンジン音生成装置
JP2021524076A (ja) * 2018-05-21 2021-09-09 マイクロソフト テクノロジー ライセンシング,エルエルシー 仮想カメラ配置システム
JP7317857B2 (ja) 2018-05-21 2023-07-31 マイクロソフト テクノロジー ライセンシング,エルエルシー 仮想カメラ配置システム

Also Published As

Publication number Publication date
EP1477210A2 (en) 2004-11-17
JP3649722B2 (ja) 2005-05-18
US20040219981A1 (en) 2004-11-04
EP1477210B1 (en) 2007-07-11
EP1477210A3 (en) 2005-06-22
DE602004007428D1 (de) 2007-08-23
DE602004007428T2 (de) 2008-04-30

Similar Documents

Publication Publication Date Title
US6859539B1 (en) Vehicle sound synthesizer
JP3649722B2 (ja) ゲーム装置およびゲームプログラム
US6001013A (en) Video dance game apparatus and program storage device readable by the apparatus
EP0974954B1 (en) Game system and computer-readable storage medium storing a program for executing a game
JP5346850B2 (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
US20070079690A1 (en) Dance game machine, method for scoring dance game and computer-readable recording medium
JP4848000B2 (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
US7330769B2 (en) Parameterized interactive control of multiple wave table sound generation for video games and other applications
KR100874176B1 (ko) 오디오 신호 출력 방법 및 배경 음악 발생 방법
JP4757704B2 (ja) 音楽再生プログラム、音楽再生装置、音楽再生方法及び音楽再生システム
JPH11249672A (ja) 乗物の模擬音発生装置
JP2004333679A (ja) 音声再生プログラム、音声再生方法及び音声再生装置
JPH10319957A (ja) キャラクタ舞踏動作表示装置、方法および記録媒体
JP3729642B2 (ja) カラオケ機の背景映像表示装置
JP3942720B2 (ja) 楽音生成装置、画像生成装置、ゲーム装置及び情報記憶媒体
JPH11184487A (ja) 乗物の模擬音発生装置
JP2013105085A (ja) 情報処理プログラム、情報処理装置、情報処理システム及び情報処理方法
JP2000070546A (ja) ゲーム装置、ゲームのリプレイ方法および情報記録媒体
JP2019037792A (ja) ビデオゲーム処理装置、及びビデオゲーム処理プログラム
JP4158443B2 (ja) 再生制御装置とプログラム
JP4134624B2 (ja) 再生制御情報作成装置とプログラム
JP3919190B2 (ja) ゲーム装置及びゲームプログラム
JP4880298B2 (ja) プログラム、情報記憶媒体、及びデータ再生システム
JP3511237B2 (ja) カラオケ装置
WO2014141316A1 (ja) ビデオゲーム処理装置、及びビデオゲーム処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041027

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20041027

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20041110

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050118

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050215

R150 Certificate of patent or registration of utility model

Ref document number: 3649722

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080225

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090225

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20090225

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090225

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100225

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20100225

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110225

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110225

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120225

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120225

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130225

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20130225

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130225

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20140225

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term