JP2005321514A - ゲーム装置および音程付効果音生成プログラムならびに方法 - Google Patents

ゲーム装置および音程付効果音生成プログラムならびに方法 Download PDF

Info

Publication number
JP2005321514A
JP2005321514A JP2004138461A JP2004138461A JP2005321514A JP 2005321514 A JP2005321514 A JP 2005321514A JP 2004138461 A JP2004138461 A JP 2004138461A JP 2004138461 A JP2004138461 A JP 2004138461A JP 2005321514 A JP2005321514 A JP 2005321514A
Authority
JP
Japan
Prior art keywords
pitch
sound
data
bgm
game
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
JP2004138461A
Other languages
English (en)
Other versions
JP4366240B2 (ja
Inventor
Masashi Kawamura
昌史 川村
Masato Yokota
真人 横田
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 JP2004138461A priority Critical patent/JP4366240B2/ja
Publication of JP2005321514A publication Critical patent/JP2005321514A/ja
Application granted granted Critical
Publication of JP4366240B2 publication Critical patent/JP4366240B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

【構成】 ゲーム機(12)のCPU(36)は、ゲームの進行において、BGM演奏データに基づいてBGMを出力させる。CPUは、プレイヤによるコントローラ(22)の操作信号に応じて音程付効果音を再生する必要があるとき(S20)、音程付効果音生成規則データおよび演奏データを選択する(S21)。そして、ステップS23で、BGMとのリズム同期の要否を判断し、リズム同期を行なうときは同期トリガに応じて、非同期の場合には、そのまま、まず、ステップS25で基準音程を決定する。このとき、演奏しているBGMのコードデータやスケールデータを参照する。さらに、ステップS31からステップS33を経たステップS25において、後続音程を決定する。
【効果】 BGMのコードやスケールを参照するので、BGMに対して意図しない音程の効果音が再生されることはない。
【選択図】 図16

Description

この発明は、ゲーム装置および音程付効果音生成プログラムならびに方法に関し、特にたとえば、BGM(background music : 背景音楽)の音楽的進行や、ゲームキャラクタの動作やプレイヤの操作入力、あるいはゲームの進行状況に応じて、音程付効果音を演奏するゲーム装置、およびそれに用いる音程付効果音生成プログラムならびに方法に関する。
従来、ビデオゲームのプレイ中に、音程付効果音が演奏されてきた。これはごく短い音楽的フレーズとして表現される効果音のことである。そして、古くは、ゲーム機がまだサンプリング波形を扱えなかった頃には、ほぼ全ての効果音がゲームコンソール内蔵波形(たとえば矩形波)に音程をつけたものとして表現されてきた。
したがって、音程付効果音は「ゲームらしさ」を表現するのに現在でも非常に重要なものである。
また、音程付効果音は、信号や合図として、短いファンファーレ的な効果を期待して用いられることも多い。
さらに、音程付効果音はごく短いメロディであるので、キャラクタの動きに表情を与えるためにも特徴音として用いられることがある(たとえば、キャラクタが首を振るときには常に、マリンバの音で長3度音程が繰り返し演奏される、など)。
公知な技術として、これらは通常は固定された演奏データや波形データの形でゲームに組み込まれてきた。
しかしながら、固定された演奏データを用いた場合、音程付効果音の音程は固定されており、ゲームのBGMの調性(その曲の持つ音階や和声的な調体系)と音程付効果音の調性が一致しないことが多々あった。そのため、異なった調性の音程がぶつかることにより、不協和音(調和しない音程関係)のような意図しない音程の効果音が生じ、耳障りに感じることも多々あった。
また、固定された演奏データを用いる場合には、音程付効果音のリズムやテンポも固定されているため、BGMのリズムとの調和もよくなかった。
これを解決するために、たとえば特許文献1に開示されているような、音楽的に非常によく融合したゲーム音響の設計が行なわれてきた。
この特許文献1では、SEの発音タイミングの補正や、プレイヤの入力に反応してのメロディ生成や伴奏生成が行なわれている。
また、特許文献2には自動メロディ生成装置が開示されており、この自動メロディ生成装置では、短いフレーズを複数登録したフレーズデータベースを用意しておき、その組み合わせによってメロディを生成していく。このとき、フレーズデータベースに記憶されているデータは相対的な音程を記憶しているので、曲の調に合わせて展開することができ、種々の音楽を生成することが可能である。
この特許文献2の自動メロディ生成装置を使えばゲームによく融合したBGMや効果音を生成することができる。
特開2002−215151号公報 特許第3271282号公報
しかしながら、特許文献1に記載のメロディ合成技術では、音楽との融合を目指したものであったため、信号や特徴音としての特色(常に同じ音型として耳に残るフレーズ)を表現する手段としての音程付効果音には不向きであった。
また、音楽的要素を持つ全ての効果音を一定のリズムで扱おうとしていたため、プレイヤの入力に対しての即時反応性が薄くなり、効果音の鳴りが「もたつく」印象を与える場合があった。
また、特許文献2の従来技術では、楽器の演奏を聴く目的で、どのような音楽を自動生成するのかを指定して、自動作曲を行うので、それだけで非常に多くの処理を必要とし、単純に音程付きのゲーム効果音を生成するためには過剰な機能を含んでいる。また、そもそもこの特許文献2には、ゲームで使用されるBGMが別に用意されているときに、このBGMに音楽的に調和した音程付きのゲーム効果音を生成するための技術は開示していない。また、同じ音程付き効果音が異なるBGMでも違和感なく聞けるようにする手段も開示していない。
それゆえに、この発明の主たる目的は、新規な、ゲーム装置、およびそれに用いる音程付効果音の生成プログラムおよび方法を提供することである。
この発明の他の目的は、たとえば不協和音などのように意図しない音程で音程付効果音が再生されることがない、ゲーム装置、およびそれに用いる音程付効果音の生成プログラムおよび方法を提供することである。
この発明のさらに他の目的は、ゲームのBGMに音楽的に合致した音程付効果音を生成することができる、ゲーム装置、およびそれに用いる音程付効果音の生成プログラムおよび方法を提供することである。
この発明のなおも他の目的は、BGMの調性とリズムに応じて、自由度が高くかつ効果音としての特徴を失わない音程付効果音を生成することができる、ゲーム装置、およびそれに用いる音程付効果音の生成プログラムおよび方法を提供することである。
この発明のさらに他の目的は、効果音を鳴らす処理が重くならないように配慮した、音程付効果音を生成する、ゲーム装置、およびそれに用いる音程付効果音の生成プログラムおよび方法を提供することである。
この発明のその他の目的は、プレイヤのゲームプレイの状況に応じて、インタラクティブにBGMが変化することによって、プレイヤに高揚感を与えることができるとともに、娯楽性を高めることができる、ゲーム装置、およびそれに用いる音程付効果音の生成プログラムおよび方法を提供することである。
請求項1の発明は、プレイヤによるゲーム操作を入力するための操作手段、ゲーム画像を表示する表示手段、ゲーム中のBGMと効果音とを出力する音声出力手段、ゲームで使用される効果音やBGMのサウンドのデータを記憶したサウンドデータ記憶手段、ゲーム中で使用される複数のBGMの演奏データを記憶したBGMデータ記憶手段、複数のBGMの演奏データ毎にBGMが演奏されるスケールのスケールデータを記憶したスケールデータ記憶手段、BGMが演奏されているコードのコードデータを記憶したコードデータ記憶手段、少なくとも音程生成規則データと音程を除いた演奏データとを含む複数の音程付効果音データを記憶した音程付効果音データ記憶手段、複数のBGMの演奏データのいずれかを選択して演奏するBGM演奏手段、操作手段からの操作入力に応じて音程付効果音データを選択する効果音選択手段、選択された音程生成規則データと、そのとき演奏されているBGMのスケールデータおよびコードデータとから、効果音の音程を決める効果音音程生成手段、および効果音音程生成手段によって生成された音程と演奏データとに応じて、サウンドデータ記憶手段に記憶されたサウンドデータからサウンドを生成し、音声出力手段から出力する効果音出力手段を備える、ゲーム装置である。
請求項1の発明では、操作手段(22:実施例で相当する部分の参照符号。以下同様。)がプレイヤに操作されることによって、表示手段(36,42)が、モニタ上にゲーム画像を表示する。オーディオI/F(54)を介してスピーカ(34a)のような音声出力手段から、ゲームの進行中、BGMや果音が出力される。このとき、サウンドデータ記憶手段(46,118)に設定されているサウンドデータによって決まる音色(楽器)で発音される。
BGMデータ記憶手段(104)がゲーム中で使用される複数のBGMの演奏データを記憶しており、BGMを演奏すべきときには、BGM演奏手段(36,S13)が、そのうちのいずれかを選択して演奏する。BGMの演奏に伴って、スケールデータ記憶手段(112)やコードデータ記憶手段(112)が、それぞれBGMのスケールデータやコードデータを示す。
他方、音程付効果音データ記憶手段(108,110)は、それぞれが音程生成規則データと、音程を除いた演奏データとを含む複数の音程付効果音データを記憶する。
たとえば、プレイヤによる操作手段の操作に応じて、効果音選択手段(36,S21)が音程付効果音データを選択する。したがって、効果音音程生成手段(36,S25,S27)が、選択された音程生成規則データと、そのとき演奏されているBGMのスケールデータおよびコードデータとから、効果音の音程を決め、そして効果音音程生成手段によって生成された音程と演奏データとに応じて、サウンドデータ記憶手段に記憶されたサウンドデータからサウンドを生成し、音声出力手段から出力される。
請求項2の発明は、BGMデータ記憶手段は複数のBGMを演奏するタイミングを決める同期トラックを含み、効果音音程生成手段は同期トラックからの同期信号に応じて効果音音程を生成する、請求項1記載のゲーム装置である。
請求項2の発明では、リズム同期トラック(128)に、たとえば拍の開始および終了を定義した同期パターンを設定し、BGMがそれによって発音制御されるとともに、効果音もその同期パターンに従って発音することができる。したがって、音程やリズムの決まった従来の音程付効果音と違い、BGMのリズムと合致したものになるので、聞いた感じが非常に自然である。ただし、プレイヤの操作手段からの入力に即応させる場合には、BGMに同期させる必要はない。
請求項3の発明は、効果音音程生成手段は、少なくとも音程生成規則データに基づいて効果音の最初に発音すべき基準音程を定める基準音程決定手段と、少なくとも基準音程と、音程生成規則データとに基づいて基準音程に続いて発音すべき効果音の音程を定める後続音程生成手段とを含む、請求項1または2記載のゲーム装置である。
請求項3の発明では、基準音程決定手段(36,S25)が基準音程を決め、後続音程生成手段(36,S27,S31,S33)が、基準音程に続いて発音すべき効果音の音程を定める。
請求項4の発明は、プレイヤによるゲーム操作を入力するための操作手段、ゲーム画像を表示する表示手段、ゲーム中のBGMと効果音とを出力する音声出力手段、ゲームで使用される効果音やBGMのサウンドのデータを記憶したサウンドデータ記憶手段、ゲーム中で使用される複数のBGMの演奏データを記憶したBGMデータ記憶手段、複数のBGMの演奏データ毎にBGMが演奏されるスケールのスケールデータを記憶したスケールデータ記憶手段、BGMが演奏されているコードのコードデータを記憶したコードデータ記憶手段、少なくとも音程生成規則データと音程を除いた演奏データとを含む複数の音程付効果音データを記憶した音程付効果音データ記憶手段、および複数のBGMの演奏データのいずれかを選択して演奏するBGM演奏手段を備えるゲーム装置の音程付効果音生成プログラムであって、ゲーム装置のコンピュータを、操作手段からの操作入力に応じて音程付効果音データを選択する効果音選択手段、および選択された音程生成規則データと、そのとき演奏されているBGMのスケールデータおよびコードデータとから、効果音の音程を決める効果音音程生成手段として機能させ、効果音音程生成手段によって生成された音程と演奏データとに応じて、サウンドデータ記憶手段に記憶されたサウンドデータからサウンドを生成し、音声出力手段から出力する、音程付効果音生成プログラムである。
請求項4の発明では、請求項1の発明と同様の効果が期待できる。
請求項5の発明は、BGMデータ記憶手段は複数のBGMを演奏するタイミングを決める同期トラックを含み、効果音音程生成手段は同期トラックからの同期信号に応じて効果音音程を生成する、請求項4記載の音程付効果音生成プログラムである。
請求項5の発明では、請求項2の発明と同様の効果が期待できる。
請求項6の発明は、効果音音程生成手段は、少なくとも音程生成規則データに基づいて効果音の最初に発音すべき基準音程を定める基準音程決定手段と、少なくとも基準音程と、音程生成規則データとに基づいて基準音程に続いて発音すべき効果音の音程を定める後続音程生成手段とを含む、請求項4または5記載の音程付効果音生成プログラムである。
請求項6の発明では、請求項3の発明と同様の効果が期待できる。
請求項7の発明は、プレイヤによるゲーム操作を入力するための操作手段、ゲーム画像を表示する表示手段、ゲーム中のBGMと効果音とを出力する音声出力手段、ゲームで使用される効果音やBGMのサウンドのデータを記憶したサウンドデータ記憶手段、ゲーム中で使用される複数のBGMの演奏データを記憶したBGMデータ記憶手段、複数のBGMの演奏データ毎にBGMが演奏されるスケールのスケールデータを記憶したスケールデータ記憶手段、BGMが演奏されているコードのコードデータを記憶したコードデータ記憶手段、および複数のBGMの演奏データのいずれかを選択して演奏するBGM演奏手段を備えるゲーム装置において音程付効果音を生成する方法であって、少なくとも音程生成規則データと音程を除いた演奏データとを含む複数の音程付効果音データを記憶しておき、さらに操作手段からの操作入力に応じて音程付効果音データを選択する効果音選択ステップ、選択された音程生成規則データと、そのとき演奏されているBGMのスケールデータおよびコードデータとから、効果音の音程を決める効果音音程生成ステップ、および効果音音程生成ステップで生成された音程と演奏データとに応じて、サウンドデータ記憶手段に記憶されたサウンドデータからサウンドを生成して音声出力手段から出力するステップを含む、音程付効果音生成方法である。
請求項7の発明では、請求項1または請求項4の発明と同様の効果が期待できる。
この発明によれば、BGMのスケールデータやコードデータを参照して効果音の音程を生成するので、BGMに対して意図しない音程を持った効果音が再生されることはない。たとえば、BGMとの音程的調和を持った効果音や、あるいはBGMに対して意図的に不協和音程を持った効果音を再生することもできる。そして、BGMが差し換わることにより、コード進行やリズムも変化するため、同じ音程付効果音であっても様々に表情を変化させることができ、プレイヤを飽きさせることがない。しかしながら、同じ効果音演奏データを用いるため、音程が変化しても同じ形をした音型であるという認識はできるレベルの表情変化にとどまっている。
また、発音タイミングをBGMのリズム同期に合わせるようにすれば、音程やリズムの決まった従来の音程付効果音と違い、BGMのリズムと合致したものになるので、聞いた感じが非常に自然である。
ただし、全ての音程付効果音がリズム同期させる必要はなく、その場合には、プレイヤの操作手段からの入力に対する即時性も保たれる。
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
図1に示す実施例のビデオゲームシステムないしゲーム装置10はビデオゲーム機(以下、単に「ゲーム機」という。)12を含む。ゲーム機12は、略立方体のハウジング14を含み、ハウジング14の上端には光ディスクドライブ16が内蔵される。光ディスクドライブ16には、ゲームプログラムを記憶した情報記憶媒体の一例である光ディスク18が挿入できる。ハウジング14の前面には複数の(実施例では4つの)コネクタ20が設置される。これらコネクタ20は、ケーブル24によって、コントローラ22をゲーム機12に接続するためのものであり、この実施例では最大4つのコントローラをゲーム機12に接続することができる。
コントローラ22には、その上面,下面,あるいは側面などに、操作手段(コントロール)26が設けられる。操作手段26は,たとえば2つのアナログジョイスティック,1つの十字キー,複数のボタンスイッチ等を含む。1つのアナログジョイスティックは、スティックの傾き量と方向とによって、プレイヤキャラクタ(プレイヤがコントローラ22によって操作可能な動画キャラクタ)の移動方向および/または移動速度ないし移動量などを入力するために用いられる。他のアナログジョイスティックは、傾斜方向によって、仮想カメラの移動を制御する。十字スイッチは、アナログジョイスティックに代えてプレイヤキャラクタの移動方向を指示するために用いられる。ボタンスイッチは、プレイヤキャラクタの動作を指示するために利用されたり、3次元画像の仮想カメラの視点を切り換えたり、プレイヤキャラクタの移動スピード調節等に用いられる。ボタンスイッチは、さらに、たとえばメニュー選択やポインタあるいはカーソル移動を制御する。
なお、実施例ではコントローラ22がケーブル24によってゲーム機12に接続された。しかしながら、コントローラ22は、他の方法、たとえば電磁波(たとえば電波または赤外線)を介してワイヤレスで、ゲーム機12に接続されてもよい。また、コントローラ22の操作手段の具体的構成は、もちろん実施例の構成に限られるものではなく、任意の変形が可能である。たとえば、アナログジョイスティックは1つだけでもよいし、用いられなくてもよい。十字スイッチは用いられなくてもよい。
ゲーム機12のハウジング14の前面のコネクタ20の下方には、少なくとも1つの(実施例では2つの)メモリスロット28が設置される。このメモリスロット28にはメモリカード30が挿入される。メモリカード30は、光ディスク18から読み出したゲームプログラムや表示用データ(図3参照)をローディングして一時的に記憶したり、このゲームシステム10を利用してプレイしたゲームのゲームデータ(たとえばゲームの結果)をセーブしておくために利用される。
ゲーム機12のハウジング14の後面には、AVケーブルコネクタ(図示せず)が設けられ、そのコネクタを用いて、AVケーブル32を通してゲーム機12にモニタ34を接続する。このモニタ34は典型的にはカラーテレビジョン受像機であり、AVケーブル32は、ゲーム機12からの映像信号をカラーテレビのビデオ入力端子に入力し、音声信号を音声入力端子に送る。したがって、カラーテレビ(モニタ)34の画面上にたとえば3次元(3D)ビデオゲームのゲーム画像が表示され、左右のスピーカ34aからゲーム音楽(BGM)や効果音などのステレオゲーム音声が出力され得る。
このゲームシステム10において、ユーザまたはゲームプレイヤがゲーム(または他のアプリケーション)をプレイするために、ユーザはまずゲーム機12の電源をオンし、ついで、ユーザはビデオゲーム(もしくはプレイしたいと思う他のアプリケーション)をストアしている適宜の光ディスク18を選択し、その光ディスク18をゲーム機12のディスクドライブ16にローディングする。応じて、ゲーム機12がその光ディスク18にストアされているソフトウェアに基づいてビデオゲームもしくは他のアプリケーションを実行し始めるようにする。ユーザはゲーム機12に操作入力を行うためにコントローラ22を操作する。たとえば、操作手段26のどれかを操作することによってゲームもしくは他のアプリケーションをスタートさせる。他の操作手段26を動かすことによって、動画キャラクタ(プレイヤキャラクタ)を異なる方向に移動させ、または3次元(3D)のゲーム世界におけるユーザの視点(カメラ位置)を変化させることができる。
図2は図1実施例のビデオゲームシステム10の電気的な内部構成を示すブロック図である。ビデオゲーム機12は、中央処理ユニット(以下、「CPU」という。)36を内蔵している。CPU36は、コンピュータ或いはプロセサなどとも呼ばれ、ゲーム機の全体的な制御を担当する。このCPU36ないしコンピュータは、ゲームプロセサとして機能し、バスを介して、メモリコントローラ38に接続される。メモリコントローラ38は主として、CPU36の制御の下で、バスを介して接続されるメインメモリ40の書込みや読出しを制御する。メインメモリ40は作業領域またはバッファ領域として使用される。メモリコントローラ38にはGPU(Graphics Processing Unit:グラフィックス処理装置) 42が接続される。
GPU42は、たとえばシングルチップASICで構成され、メモリコントローラ38を介してCPU36からのグラフィクスコマンド(graphics command:作画命令)を受け、そのコマンドに従って、内部に含まれるジオメトリユニットおよびレンダリングユニットによって3次元(3D)ゲーム画像を生成する。つまり、ジオメトリユニットは、3次元座標系の各種キャラクタやキャラクタ(複数のポリゴンで構成されている。そして、ポリゴンとは少なくとも3つの頂点座標によって定義される多角形平面をいう)の回転,移動,変形等の座標演算処理を行う。レンダリングユニットは、各種キャラクタの各ポリゴンにテクスチャ(Texture:模様画像)を貼り付ける(レンダリングする)。したがって、GPU42によって、ゲーム画面上に表示すべき3D画像データが作成され、そして、その画像データはGPU42に関連して設けられるフレームバッファ(図示せず)内に描画(記憶)されるとともに、画素の奥行き情報はZバッファ(図示せず)に記憶される。なお、GPU42が作画コマンドを実行するにあたって必要なデータ(プリミティブまたはポリゴンやテクスチャ等)は、GPU42がメモリコントローラ38を介して、メインメモリ40から入手する。
メモリコントローラ38はまた、DSP(Digital Signal Processor)44を介して、ARAM(オーディオメモリ)46に接続される。したがって、メモリコントローラ38は、CPU36の制御の下で、メインメモリ40だけでなく、ARAM46の書込みおよび/または読出しを制御する。
DSP44はオーディオ処理を実行する。ARAM46はディスク18から読み込まれた音波形データ(サウンドデータ)をストアする。DSP44は、メモリコントローラ38を介してCPU36からのオーディオ処理コマンドを受け、そのコマンドに従って、必要な音波形データを読み出し、たとえばピッチ処理をしたり,音声データや効果音の音量調整および他のトラックとのミキシング処理を行う。オーディオ処理コマンドは、サウンド制御プログラムの実行によって、メインメモリ40に書き込まれた演奏データ(BGMデータ)を順次読み出して解析することによって発生される。音波形データは順次読み出されて、ゲームのサウンドを生成するためにDSP44によって処理される。結果として生成されたサウンドデータは、スピーカ34aでたとえばステレオ音声として出力するために、オーディオI/F54に転送される。したがって、その音声がスピーカ34aから出力される。
メモリコントローラ38は、さらに、バスによって、各インタフェース(I/F)48,50,52,54および56に接続される。
コントローラI/F48は、コントローラ22のためのインタフェースであり、コントローラ22の操作手段26の操作信号またはデータをメモリコントローラ38を介してCPU36に与える。
ビデオI/F50は、GPU42で作成した画像データを読み出して、画像信号または画像データ(ディジタルRGBピクセル値)をAVケーブル32(図1)を介してモニタ34に送る。
外部メモリI/F52は、ゲーム機12の前面に挿入されるメモリカード30(図1)をメモリコントローラ38に接続する。それによって、メモリコントローラ38を介して、CPU36がこのメモリカード30にデータを書込み、またはメモリカード30からデータを読み出すことができる。
オーディオI/F54は、図示しないD/Aコンバータを含み、メモリコントローラ38を介してオーディオデータまたは光ディスク18から読み出されたオーディオストリームを受け、それらに応じたオーディオ信号(音声信号)をモニタ34のスピーカ34aに与送る。
そして、ディスクI/F56は、そのディスクドライブ16をメモリコントローラ38に接続し、したがって、CPU36がディスクドライブ16を制御する。このディスクドライブ16によって光ディスク18から読み出されたプログラムデータやキャラクタデータ,画像データ,演奏データ等が、CPU36の制御の下で、メインメモリ40に書き込まれる。
図3にはメインメモリ40のメモリマップが示される。メインメモリ40は、プログラム記憶領域58,プレイヤキャラクタデータ記憶領域60,ノンプレイヤキャラクタデータ記憶領域62,演奏データ記憶領域64および画像データ記憶領域66を含む。
プログラム記憶領域58には、光ディスク18から読み出したゲームプログラムが1度に全部または部分的かつ順次的に、記憶される。このプログラム記憶領域58は、ゲームメイン処理プログラム記憶領域68,画像処理プログラム記憶領域70およびサウンド制御処理プログラム記憶領域72を含む。
図4にはこのサウンド制御処理プログラム記憶領域72のメモリマップが示される。サウンド制御処理プログラム記憶領域72は、サウンド出力を制御するためのプログラムを格納するためのものであり、BGMを演奏するためのBGM演奏プログラム記憶領域74、すべての効果音(音程付、音程なし)を演奏するための効果音演奏プログラム76、BGMや効果音のリズムを制御するためのリズム制御プログラム78、効果音の音程を計算するための音程計算プログラム80を含む。サウンド制御処理プログラム記憶領域72は、さらに、効果音の発音タイミングを計算するための発音タイミング計算プログラム82、モーション開始命令を取得するためのモーション開始取得プログラム84、プレイヤ(コントローラ)の状態を管理するためのプレイヤ状態管理プログラム86、キャラクタ(プレイヤキャラクタ、ノンプレイヤキャラクタ)の状態を管理するめためのキャラクタ状態管理プログラム88、およびゲームの状態を管理するためのゲーム状態管理プログラム90を含む。
図3に示すプレイヤキャラクタデータ記憶領域60には、プレイヤキャラクタに関する情報が格納される。プレイヤキャラクタは、ゲームプレイヤがコントローラ22を操作することによってゲーム空間内で移動させ、あるいは他の任意の動作をさせることができるキャラクタである。プレイヤキャラクタデータには、プレイヤキャラクタのリアルタイムの状態を示す情報が含まれる。
このプレイヤキャラクタデータ記憶領域60は、プレイヤキャラクタの動作(モーション)を指示ためのモーションデータ記憶領域72、プレイヤキャラクタが装備しているアイテム(剣等)に関する情報を記憶する装備アイテムデータ記憶領域94、プレイヤキャラクタのレベルに関する情報を記憶するレベルデータ記憶領域96、およびプレイヤキャラクタの位置データないし3次元ゲーム世界における座標データを記憶する位置データ記憶領域98を含み、ゲームの進行においてプレイヤキャラクタの状態に応じた情報がそれぞれ書き込まれる。
ノンプレイヤキャラクタデータ記憶領域62には、同様に、ノンプレイヤキャラクタに関する情報が格納される。ノンプレイヤキャラクタは、ゲームプレイヤによって操作または制御できないキャラクタであり敵キャラクタを含む。なお、ノンプレイヤキャラクタは、敵キャラクタ以外のたとえば静止キャラクタのようなノンプレイヤキャラクタを含むことがある。ノンプレイヤキャラクタデータには、ノンプレイヤキャラクタのリアルタイムの状態に関する情報が含まれる。
このノンプレイヤキャラクタデータ記憶領域62には、ノンプレイヤキャラクタの動作(モーション)を指示するためのモーションデータ記憶領域100、およびノンプレイヤキャラクタの位置データないし3次元ゲーム世界における座標データを記憶する位置データ記憶領域102が設けられ、ゲームの進行においてノンプレイヤキャラクタの状態に応じた情報がそれぞれ書き込まれる。
図3のサウンド演奏データ記憶領域64には、同様に、光ディスク18から読み出したサウンド演奏データが1度に全部または部分的かつ順次的に、記憶される。
図5に詳細に示すように、このサウンド演奏データ記憶領域64は、それぞれがBGM1曲を演奏するための情報であるBGM演奏データ1、BGM演奏データ2、…を記憶しているBGM演奏データ記憶領域104を含む。同様に、サウンド演奏データ記憶領域64には、それぞれが一連の効果音(音程なし)を演奏するための情報である効果音演奏データ1、効果音演奏データ2、…を記憶している効果音演奏データ記憶領域106が形成される。
この実施例では、音程付効果音は、音程を生成するための音程生成規則データと、実際にその音程の効果音を演奏するための音程付効果音演奏データとによって再生できるようにしているため、サウンド演奏データ記憶領域64は、さらに、音程付効果音生成規則データ記憶領域108および音程付効果音演奏データ記憶領域110を含む。
音程付効果音生成規則データ記憶領域108には、それぞれが音程付効果音を構成する各ステップの音程を生成するための規則データである音程付効果音生成規則データ1、音程付効果音生成規則データ2、…が記憶される。音程付効果音演奏データ記憶領域110には、それぞれが一連の音程付効果音を演奏するための情報である音程付効果音演奏データ1、効果音演奏データ2、…を記憶している。
サウンド演奏データ記憶領域64は、コードネームおよびスケールのデータを記憶したコード情報テーブルデータ1、コード情報テーブルデータ2、…を含むコード情報テーブルデータ記憶領域112をさらに含み、このコード情報テーブルデータ記憶領域112は、図8に詳細に示される。
図3に示す画像データ記憶領域66にも、同様に、光ディスク18から読み出した画像データが1度に全部または部分的かつ順次的に、記憶される。画像データ記憶領域66は、それぞれのキャラクタA、B…に関するポリゴン等の画像データを記憶するための領域114、116、…を含む。このキャラクタはプレイヤキャラクタおよび敵キャラクタや壁キャラクタもしくは地面キャラクタ等のノンプレイヤキャラクタを含む。
図6には、ARAM46のメモリマップが示される。ARAM46は、音波形データを記憶するための音波形データ記憶領域118を含む。この領域118には、光ディスク18から読み出して一旦メインメモリ40の所定領域に書き込んだ音波形データが1度に全部または部分的かつ順次的に、記憶される。音波形データ記憶領域118は、トラックに割り当てられたそれぞれの楽器(たとえばフルート,トロンボーン,ピアノ,…)ごとの音の波形データA,B,C…を記憶するための領域120a,120b,120c,…を含む。この波形データは、上述のしたように、演奏データおよび総奏データ等に基づいてDSP44によって処理される。
図7に、先の図5に示したBGM演奏データ記憶領域104の一例が図示される。このBGM演奏データ記憶領域104には、そのBGMのテンポに関する情報を記憶するテンポトラックデータ記憶領域122、BGMの演奏データ(シーケンスデータ)を記憶する演奏データ記憶領域124、およびBGMのコード進行データを記憶するコード進行データ記憶領域126を含む。
演奏データ記憶領域124には、リズム同期トラック128が設けられる。リズム同期トラック128は、通常のトラックの演奏データと同じ形式で用意される。通常のトラック演奏データではトラックの発音や停止処理を扱うが、リズム同期トラック128では、発音タイミングを「その拍の開始」、終了タイミングを「その拍の終了」として扱う。この拍の開始タイミング、および拍の開始から終了までの時間長を用いて様々なゲーム処理を行うことが可能である。
リズム同期トラック128が通常の演奏トラックと同様に設定できるということは、それは即ち4分音符や16分音符などの固定拍のみを同期リズムとしない、ということである。たとえば、サンバのリズムなどに特有な、「訛った」雰囲気を持つ、西洋音楽では存在しないようなリズムを同期リズムとして持たせることにより、同期して演奏される音程付効果音も「訛った」印象にすることができる上、場合によっては曲の進行に従って同期リズムを随時変化させて行くことも可能である。また、音程毎に違ったリズムを持たせることにより、1つのトラックで複数のリズムパターンを同時に管理することが可能である。
コード進行データ記憶領域126には、コード番号(コード1、2、…)が定義されており、この番号を用いてコード情報テーブルデータ記憶領域112が参照されて利用される。つまり、コード進行データは、曲の進行に合わせて変化するBGMのコード(和音)を示す情報であり、これによってBGMの任意の時点のコードがわかる。たとえばコード情報(コード1,2,3…)は曲中のコードの変わり目や小節ごと等に対応付けて記憶されている。
コード情報テーブルデータ記憶領域112(図5)の一例が図8に詳細に示される。このコード情報テーブルデータ記憶領域112には、通常のコードネームを表現するために過不足のないデータが設定されていて、たとえば、ルート音(根音とも呼ばれ、和音(コード)の名前の基となる音)、コード種類(メジャー:長3度の音を構成音とする和音、マイナー:短3度の音を構成音とする和音、ノンコード等)、7th(セブンス)の種類(なし、メジャー、マイナー)、テンションノート(基本的な和音構成に緊張を付与するために加えられる非和声音。テンションとも呼ばれる。)、第5音の変化(通常、半音上げ、半音下げ、省略)、ベース音(最低音)、第3音を省略するか、などのコード情報の他に、スケール(音階)情報が付加されている。
スケール情報は、C−Bまで1オクターブ分の音程をどう変化させるか、という持ち方になっている。ダブルシャープやダブルフラットも使用できるので、同名異音を利用することにより、必ずしも7音全てを使用しないスケールを定義することも可能である。
なお、コード情報には番号が付与されており、BGM演奏データの中のコード進行データの番号と対応している。したがって、BGM演奏におけるコード進行によりコードが変化すると、参照するコード情報データが切り替わり、これが利用される。
図9に音程付効果音生成規則データ記憶領域108(図5)の一例が示される。音程生成規則データでは、複数の演奏パートを扱うことができる。そのため、この記憶領域108には、パート数データが設定できる他に、生成可能な音域(音高の範囲)のデータを設定している。音程付効果音の演奏はリズム同期で行なうことができるため、音程付効果音生成規則データ記憶領域108は、また、詳細を図10に示す、リズム同期情報を定義するための音程生成リズム同期データ記憶領域114を含む。さらに、音程付効果音生成規則データ記憶領域108は、図11に詳細を示す、音程生成パートデータを記憶するための音程生成パートデータ記憶領域116を含む。
リズム同期の定義は、図10に示す音程生成リズム同期データによってなされている。図10を参照して、この音程生成リズム同期データ記憶領域114には、リズム同期データのステップ数を記憶するための領域を含むとともに、発音および停止のリズム同期ステップの情報(同期パターンなど)が各ステップ毎に設定される。つまり、音程生成リズム同期データは、どのようなタイミングで音程生成と発音処理を行うのかを逐次定義してある。音程付効果音はこの同期タイミングで逐次音程が計算され、演奏がなされる。
このリズム同期パターンにおいても、発音タイミングを「その拍の開始」、終了タイミングを「その拍の終了」として扱い、さらに、4分音符や16分音符などの固定拍のみを同期リズムとしない、自由リズムパターンも可能である。なお、プレイヤの入力に対して瞬時に反応を返した方がよいものについては、リズム同期を行なわず、音程だけを算定した方がよい効果を生むので、たとえば後述のステップS21(図16)のように、「リズム同期を行なわず、音程取得だけを利用する」という使い方もできるようになっている。
ジャンプ情報を利用して指定したステップへ処理を移すことができるため、無限にループ演奏される音程付効果音も演奏が可能である。また、ポーズ情報は、その位置で演奏を一旦中断(ポーズ)するための情報である。これにより「ある一定の条件にならないと、それ以降の演奏が行なわれない」という、「途切れ途切れのメロディ」のような効果を出すことが可能である。
また、通常はトラックの発音処理が行われるが、リズム同期トラックに関しては、発音タイミングを「その拍の開始」、終了タイミングを「その拍の終了」として扱う。
また、ベロシティ(強度)情報を「リズムパターンの音符数」の情報定義などに利用している。
図11に示す音程生成パートデータ記憶領域116に記憶される、1つの音程生成パートデータは、複数の音程生成ステップデータから成る。そのために、この領域116には、ステップ数データ、通常ステップ数および例外ステップ数のデータ、さらには音域のデータが設定されるとともに、図12に詳細に示す音程生成ステップデータ記憶領域118が設定されている。パート1つ当たりの生成規則は、音程生成パートデータとして定義されている。複数のパートは同時に演奏したり(和音)、ずらして演奏する(分散和音)ことが可能である。
なお、この図12の音程生成ステップデータ記憶領域118では、ステップデータとして、実際に音程を生成するための規則が定義されている。ステップは「通常ステップ」と「例外ステップ」との2種類が定義できる。通常ステップは、通常の演奏に用いられるステップである。例外ステップは、計算された音程が音域を越していた場合や、コード変化があった場合などに実行されるステップである。ただし、実行の条件定義は、ステップデータ内で定義される。
音程生成ステップデータには、音程生成の方法が定義されている。音程生成の方法は、「基準音程」と「その基準音程との音程関係」という形で定義されている。基準音程は、直前の演奏音音程、他のパートの演奏音程、コード上の音程、スケール上の音程、特定の絶対音程が利用できる。なお、基準音程として休符を与えることにより、このステップを休みとすることも可能である。
コード上の音程やスケール上の音程は、優先度を付けて選択することが可能である。
たとえばコード上の音程の場合、ベース音、ルート音、第5音、第7音、というように、コードから音程を選択する順番を定義できる。
また、スケール上の音程の場合、1音目、5音目、7音目、というように、スケールから音程を選択する順番を定義できる。
基準音程との音程関係は、その音と同じ(あるいは近い)音、その音より高い音、その音より低い音、の三種類が選択でき、基準音程との距離(たとえば、コード上で1つ上の音、スケール上で4つ下の音、など)を指定できる。
また、半音単位の音程情報も持っているため、意図的に不協和音程を指定することも可能である。この不協和音程の指定に関してもたとえば、「直前の演奏音程の一オクターブ上の、半音上」という風に、コードやスケールを考慮して決めることができる。
このように、音程付効果音を構成する音の音程関係をデータ化することにより、コードやスケールが変化しても、常に同様のメロディとして認識される音型を定義できることになる。
図13に示す具体例でいうと、図13(A)が、音程付効果音の基本演奏形の例を示し、コードはCで、Cメジャースケールが使用されている。この例で各構成音の音程の並び規則を抽出すると、図13(B)に示すようになるので、これを以下のようにデータ化している。
1.ルート音
2.前の音よりコード上で1つ上
3.前の音よりコード上で1つ上
4.前の音よりコード上で1つ上
5.前の音よりスケール上で1つ下
6.前の音よりスケール上で1つ下
そして,図13(C)に示す変形例1は、コードをCからEに切り替えた場合であり、開始音が変わり、その結果、音程付効果音がそのまま音域シフトした形になっている。
また、図13(D)で示す変形例2は、コードをFに変え、特殊なスケール(ここではアラビア風なもの)を使用した場合である。ここでは、「スケール上で下がる」部分について、スケールの音程変化が反映されている。
図13(E)での変形例3は音程付効果音の再生途中にコード変化が起こった場合をしめしており、メロディパターンの単純な移調や変形ではなく、コード上およびスケール上での音程関係を音程計算規則としているため、コード変化に伴って音が極端に飛んだり、音型が歪んだりすることはなく、基本形がきれいな形で変形(変奏)されている。
図14は、図5の音程付効果音演奏データ記憶領域110を詳細に示す図である。音程付効果音演奏データは、基本的には通常の効果音と違いはないが、音程情報が定義されていない。したがって、この記憶領域110には、音程以外の基本的な演奏情報(トラック毎にどの音色を選択し、どの程度のボリュームで、どのような定位で、などの情報)が予め設定されているだけであり、音程の情報はBGMのコード進行と音程生成データから計算され、発音の際に与えられる(データ中に音程情報は与えられていない)。ただし、発音タイミングは音程生成データのリズム同期データによって指定され、BGMのリズム同期トラックに同期して(あるいは非同期で)演奏される。
図15にはこのゲームシステム10のゲーム動作が示される。ゲームをプレイするとき、上述のように光ディスク18をゲーム機12にセットし、電源を投入すると、図15の最初のステップS1において、CPU36によって、光ディスク18からデータが読み出され、必要なプログラムやデータが図3に示すようにメインメモリ40に記憶(ロード)される。そして、CPU36はこれらロードしたプログラムに従って処理を実行する。次のステップS3では、CPU36によって、光ディスク18から読み出されて一旦メインメモリ40に書き込まれた音波形データが、図6に示すようにARAM46にロードされる。
そして、ステップS5では、CPU36は、コントローラ22からの操作入力信号を取得し、この操作信号に応じて、続くステップS7〜S17の処理を実行する。ステップS7では、CPU36は、操作入力信号に応じてプレイヤキャラクタを動作させる。たとえば、ゲームプレイヤがコントローラ22の方向指示手段(たとえば、十字キーまたはアナログジョイスティック)を操作した場合、CPU36は、このステップS7で、ゲーム空間内において、プレイヤキャラクタをその方向に移動させる。たとえば、動作指示手段(たとえば、Aボタン)が操作されたとすると、このステップS7では、プレイヤキャラクタにたとえば剣を使った攻撃動作をさせる。
CPU36は、続くステップS9において、敵キャラクタや静止キャラクタ等のノンプレイヤキャラクタの動作処理を実行する。そして、ステップS11で、動作させたキャラクタの描画処理を実行する。これによって、モニタ34にはユーザプレイヤの操作に応じたゲーム画像が表示される。
続くステップS13で、CPU36は、BGMや音程付効果音を再生(演奏)を制御するサウンド制御処理を実行する。このステップS13の処理は、図16以降に詳細に示されるが、この処理の説明は後述する。
そして、ステップS15で、CPU36はその他のゲーム処理を実行して、続くステップS17でゲームを終了するかどうか判断する。ステップS17で“NO”であれば、つまり、ゲームを続ける場合にはステップS5に戻って処理を繰返す。一方、ステップS17で“YES”であれば、つまり、ゲームを終了する場合には図示しないゲーム終了処理を行って終了する。
先のステップS13で、図7に示すようなリズム同期トラック付BGMを演奏するが、このとき、CPU36は、図5のBGM演奏データ記憶領域104に記憶されている複数のBGM演奏データのいずれかを選択する。したがって、図15のステップS13では、CPU36によって選択されたBGM演奏データに従ったBGMがオーディオI/F54からスピーカ34aを経て出力される。
そして、プレイヤがコントローラ22を操作することによって、音程付効果音を再生する必要があると、つまり、音程付効果音の再生要求があると、図16のステップS20において“YES”が判断され、次のステップS21において、CPU36は、図5の音程付効果音生成規則データ記憶領域108に記憶されている複数の音程付効果音生成規則データのうちのいずれかを選択するとともに、音程付効果音演奏データ記憶領域110に記憶されている複数の音程付効果音演奏データのいずれかを選択する。したがって、音程付効果音の音程以外の要素が設定される。ただし、この音程付効果音生成規則データと音程付効果音演奏データとは必ずしも対をなして選択される必要はなく、音程付効果音生成規則データ1と音程付効果音演奏データ2とのように、異なる組み合わせが選択されてもよい。
ステップS13(図15)でリズム同期トラック付BGMを演奏すると、リズム同期トラック128(図7)でのリズム音符の開始の都度リズム同期信号が発生される。また、BGMの演奏過程においてコード変化情報を通過する都度、コード情報テーブル112(図8)の参照位置が変化し、音程付効果音の再生に利用されるコード情報とスケール情報とが変化する。
上述のように音程付効果音再生要求があると、CPU36は、図9に示す音程生成規則データ記憶領域108設定されているかつ先にCPU36が選択した音程生成リズム同期データ114を利用して、その音程付効果音がBGM演奏とのリズム同期を行なう必要があるかどうか判断する(ステップS22)。リズム同期を行なう必要があると判断した場合には、指定されたリズムの同期信号が来るまで待機し、リズム同期の時点で処理が行われる。ただし、プレイヤによるコントローラ22からの入力に即座に応答すべきときには、BGMとのリズム同期は行なわない(非同期)。
ステップS23でリズム同期信号が来たら、あるいは、非同期の場合にはステップS21の後すぐに、音程計算処理が行われる。音程計算処理は、複数のパートについて順次行われる。
音程計算ではまず、基準音程決定手段として機能するステップS25において、基準音程が算定される。この基準音程は、図8に示すコード情報テーブルデータ112におけるコード情報およびスケール情報を参照し、かつ図12に示す音程生成ステップデータや、さらには直前の発音音程や、他のパートの生成音程などを利用することによって求められる。他のパートの生成音程は、和音を表現するために主に利用する。たとえば、パート1よりもコード上で1つ高い音程、のような指定を行なう。
ステップS25で基準音程の算定がされると、次にステップS27で、その基準音程からの音程関係による計算を行い、最終発音音程を確定する。この音程関係による計算には、後に図17および図18を参照して説明するように、図12の音程生成ステップデータ、および図8のコード情報ならびにスケール情報が利用される。
最終音程が確定すると、CPU36は、ステップS29でその音程を発音処理に送る。発音処理では、音程付効果音演奏データと、発音音程情報とを利用して、発音処理を行う。ただし、この最終発音音程情報は、次の計算のために、たとえばメインメモリ40の一部に形成されたバッファ(図示せず)にストックされる。
ステップS29で発音処理が行われると、音程生成ステップデータが参照され、後続音程決定手段の一部であるステップS31で、次のステップがあるかどうかの判断が行なわれる。次のステップがある場合には、同様に後続音程決定手段の一部であるステップS33で、たとえばメインメモリ40の一部に形成されたステップカウンタ(図示せず)を1つ進め、次の処理に備え、リズム同期の判断に戻る。次のステップがない場合には、ここで処理が終了となる。
図16のステップS27は、基準音程が決まった後、基準音程に対して施す処理を実行するものであり、図17の最初のステップS51で、まず、生成音が基準音から一定音程離れていて欲しい場合には、予め基準音に音程を加算、あるいは減算しておく。これはたとえば、7thコードなどの2度音程を避け、必ず3度以上の音程にしたいときなどに用いる。
基準音の上あるいは下の特定音程を決め打ちしたい場合には、ステップS53で“YES”が判断され、続くステップS55で、特定音程サーチ処理(これは、基準音程より上あるいは下の、特定の音程を選択する処理である。)を実行し、基準音程を更新する。
特定音程を選択する場合には、図17のステップS55から図18に進み、図18の最初のステップS57で、CPU36は、完全な特定音程を選ぶかどうか決める。「完全な特定音程」を選ぶというのは、たとえば、D♯や、A♭のような決め方を行なうもので、これは、主にパーカッション(打楽器音)のための機能で、特定音程をたとえば「シンバル」として扱う、という場合に使用する。たとえば、ティンパニでルート音を発音した後、シンバルで特定音程を発音し、さらにティンパニで第5音を発音し、続いてシンバルで特定音程を発音する、のような演奏が可能である。
ステップS57で“YES”を判断した場合には、CPU36は、次のステップS59で、特定音程を選択する。そして、この後に音程補正処理を行えば、たとえば「G♯に一番近い、スケール上の音」という、特定の狭音域を指した音程指定が行なえる。
ステップデータには「コード音サーチ優先リスト」や「スケール音サーチ優先リスト」を持っており、このリストに書かれた優先順位で音をサーチして決定する。たとえば、第5音が省略されたコードで「第5音」をリストの先頭にしてあっても、この音は当然見つからないので、リストの2番目以降の音からさらにサーチを行なう。また、スケール音サーチ優先リスト中の、スケール音番号は、C(ド)から数えた番号と、そのコードのルート音から数えた番号の2種類を扱うことができる。前者は主に「絶対的な音程が欲しいとき」、後者は主に「和音機能上でのスケール音程が欲しいとき」にそれぞれ使用する。
したがって、ステップS57で特定音程の決め打ちをしないと判断した場合には、次のステップS61で、CPU36は、コード機能音を選ぶかどうかを判断する。ステップS65で“YES”を判断したときには、次のステップS63において、CPU36は、コード機能音サーチリストから音程を決定する。
ステップS61で“NO”を判断したときには、コード音を選ぶために、次のステップS65において、CPU36は、スケール音がベース基準音の番号であるかどうか判断する。ステップS65で“YES”の場合には、ステップS67において、ベース音に合わせてサーチリストをシフトし、あるいは“NO”の場合には、そのまま、ステップS69で、スケール音サーチリストから音程を選択する。
そして、ステップS59で特定音程を選択した後、またはステップS63でコード機能音を選択した後、もしくはステップS69でスケール音を選択した後、続くステップS71で、CPU36は、基準音より下の音程が必要なのかどうか判断する。“NO”の
場合には、ステップS73で、基準音と同じか、あるいは上になるまで、1オクターブずつ音程を上げる。“YES”の場合には、基準音より下になるまで、1オクターブずつ音程を下げる。
このようにして、特定音程サーチ処理が実行された後、図17のステップS77にリターンする。
図17のステップS77では、コード上でどれだけ音程が離れているかを見て、その分、音程を加算あるいは減算する。これは、コード情報テーブル(図8)からコード構成音を順次サーチし、目的の音を決めるためである。
続いて、ステップS79で、スケール上でどれだけ音程が離れているかを見て、その分、音程を加算あるいは減算する。これは、コード情報テーブル(図8)のスケール情報から、音を順次サーチし、目的の音を決めるためである。
ついで、ステップS81において、CPU36は、1番最初の基準音程から音程変化のなかった場合、その音程を現在のスケールに補正するかどうかの判断を行う。ステップS81で“YES”が判断されたときには、ステップS83で、音程補正処理が実行される。これは、スケールが変化した場合に不協和音程になるのを防ぐために行なわれる。もし、最初の基準音が、現在のスケール上にない場合、最初の基準音の直上あるいは直下のスケール音が選ばれる。上から選ぶか下から選ぶかについては、音程生成ステップデータ(図11)内で定義される。
続いて、ステップS85において、CPU36は、半音階上でどれだけ音程が離れているかを計算し、その分、音程の加算あるいは減算を行なう。これは、「現在の調性からは常に外れている」不協和音を敢えて作り出すために使用される。たとえば、調子外れなメロディや装飾音符を表現するなどのためである。従来とは違い、不協和音もあえて生成できるようにしている点がこの実施例の1つの特徴である。
最後に、ステップS87で、生成された音程が音域からはみ出ていた場合の例外処理を行う。特に定義がなければ、オクターブ調整(上にはみ出ていればオクターブずつ下へシフトし、下にはみ出ていればオクターブずつ上へシフト)を行なうのみである。もし、音域例外用のステップが用意されていれば、この生成音程を新たな基準音程とし、音域例外用の音程生成ステップをもう1度行なう。
このような音程付効果音の生成ステップを例示すると、
ステップ1ではルート音の音程を生成する。そのために、基準音程として、ルート音を選択する。離れていて欲しい音程加算分は0とし、特定音程サーチは行なわない。さらに、コード音加算、スケール音加算、半音階加算はなしとした。
ステップ2では、前の音よりコード上で1つ上の音程を生成する。そのために、基準音程として、直前の音が選ばれ離れていて欲しい音程加算分は0とし、特定音程サーチは行なわず、コード音加算は1とし、スケール音加算、半音階加算はなしとした。
ステップ3では、前の音よりスケール上で1つ下の音程を生成する。そのために、基準音程として、直前の音を選択し、離れていて欲しい音程加算分は0とした。特定音程サーチは行なわない。また、コード音加算は0とし、スケール音加算は−1とし、半音階加算は0とした。
音程付効果音の付与の動作例として、たとえば、プレイヤがプレイヤキャラクタにジャンプを行わせるときの特徴音として、音程付効果音を演奏する場合を考える。この場合、サウンド制御処理プログラムが、プレイヤキャラクタのジャンプモーションの再生を感知すると、ジャンプ用の音程付効果音の演奏を要求する。このとき、リズム補正を行なっている場合には、実際に鳴る音が若干遅れる印象を受けるので、非音楽的でリズム感を受けないような通常の効果音を先行して(アクションのタイミングで)鳴らすと、プレイヤ入力からの反応性と、音程付効果音の音楽性が融合してよい結果を生む。
音程付効果音の発音処理プログラムは、前述の方法に従って音程計算を行い、音程付効果音を発音する。
なお、プレイヤキャラクタの座標情報を音程付効果音演奏の際に与えることにより、パン(定位)や距離を計算して演奏を行なうことも可能である。この場合、プレイヤキャラクタ自身が楽器になって、その与えられた位置で音程付効果音を演奏しているような印象を与えることができる。また、同様にプレイヤの位置によりリバーブ(残響)情報などを与えて演奏することも可能である。
さらに、以下のような変形例も考えられる。
音程付効果音を次々とランダムに配置して鳴らすことにより、簡易的なメロディ自動生成のような効果を生むことができる。しかしながら、完全なメロディ自動生成ではないので、データの用意の段階でメロディラインの方向性(メロディの大まかな形)を規定しておくことができる。たとえば、プレイヤキャラクタのプレイヤーレベルが高い(強い状態の)ときに、BGMを賑やかにしたいと思った際、プレイの結果を逐次反映して、上述の方法で音程付効果音の演奏を頻繁に行なうと、BGM側の処理を増やすことなく、BGMが賑やかになったような印象を与えることができる。
図1はこの発明の一実施例のゲームシステムを示す概観図である。 図2は図1実施例のゲーム機の内部構成を示すブロック図である。 図3は図2におけるメインメモリのメモリマップの一例を示す図解図である。 図4は図3におけるサウンド制御処理プログラム記憶領域のメモリマップを示す図解図である。 図5は図3におけるサウンド演奏データ記憶領域のメモリマップを示す図解図である。 図6は図2におけるARAMの音波形データ記憶領域のメモリマップの一例を示す図解図である。 図7は図5のサウンド演奏データ記憶領域内のBGM演奏データ記憶領域のメモリマップを示す図解図である。 図8は図5のサウンド演奏データ記憶領域内のコード情報テーブルデータ記憶領域のメモリマップを示す図解図である。 図9は図5のサウンド演奏データ記憶領域内の音程付効果音音程生成規則データ記憶領域のメモリマップを示す図解図である。 図10は図9の音程生成規則データ記憶領域内の音程生成リズム同期データ記憶領域のメモリマップを示す図解図である。 図11は図9の音程生成規則データ記憶領域内の音程生成パートデータ記憶領域のメモリマップを示す図解図である。 図12は図11の音程生成パートデータ記憶領域内の音程生成ステップで記憶領域のメモリマップを示す図解図である。 図13は具体的な楽譜の例を示し、図13(A)は音程付効果音の基本形の一例であり、図13(B)はその中の音程生成規則を例示し、図13(C)は変形例1を示し、図13(D)図は変形例2を示し、図13(E)は変形例3を示す。 図14は図5のサウンド演奏データ記憶領域内の音程付効果音演奏データ記憶領域のメモリマップを示す図解図である。 図15は図1実施例のゲーム動作を示すフロー図である。 図16は図15におけるサウンド制御処理ステップで実行される音程付効果音再生の動作を示すフロー図である。 図17は図16における最終音程算出処理の動作を示すフロー図である。 図18は図176における特定音程サーチ処理の動作を示すフロー図である。
符号の説明
10 …ゲーム装置(ゲームシステム)
12 …ゲーム機
22 …コントローラ
26 …操作手段
34 …モニタ
34a …スピーカ
36 …CPU
40 …メインメモリ
44 …DSP
46 …ARAM

Claims (7)

  1. プレイヤによるゲーム操作を入力するための操作手段、
    ゲーム画像を表示する表示手段、
    ゲーム中のBGMと効果音とを出力する音声出力手段、
    ゲームで使用される効果音やBGMのサウンドのデータを記憶したサウンドデータ記憶手段、
    ゲーム中で使用される複数のBGMの演奏データを記憶したBGMデータ記憶手段、
    複数のBGMの演奏データ毎にBGMが演奏されるスケールのスケールデータを記憶したスケールデータ記憶手段、
    BGMが演奏されているコードのコードデータを記憶したコードデータ記憶手段、
    少なくとも音程生成規則データと音程を除いた演奏データとを含む複数の音程付効果音データを記憶した音程付効果音データ記憶手段、
    前記複数のBGMの演奏データのいずれかを選択して演奏するBGM演奏手段、
    前記操作手段からの操作入力に応じて前記音程付効果音データを選択する効果音選択手段、
    選択された音程生成規則データと、そのとき演奏されているBGMの前記スケールデータおよび前記コードデータとから、効果音の音程を決める効果音音程生成手段、および
    前記効果音音程生成手段によって生成された音程と前記演奏データとに応じて、前記サウンドデータ記憶手段に記憶されたサウンドデータからサウンドを生成し、前記音声出力手段から出力する効果音出力手段を備える、ゲーム装置。
  2. 前記BGMデータ記憶手段は前記複数のBGMを演奏するタイミングを決める同期トラックを含み、
    前記効果音音程生成手段は前記同期トラックからの同期信号に応じて効果音音程を生成する、請求項1記載のゲーム装置。
  3. 前記効果音音程生成手段は、少なくとも前記音程生成規則データに基づいて効果音の最初に発音すべき基準音程を定める基準音程決定手段と、少なくとも前記基準音程と、前記音程生成規則データとに基づいて前記基準音程に続いて発音すべき効果音の音程を定める後続音程生成手段とを含む、請求項1または2記載のゲーム装置。
  4. プレイヤによるゲーム操作を入力するための操作手段、ゲーム画像を表示する表示手段、ゲーム中のBGMと効果音とを出力する音声出力手段、ゲームで使用される効果音やBGMのサウンドのデータを記憶したサウンドデータ記憶手段、ゲーム中で使用される複数のBGMの演奏データを記憶したBGMデータ記憶手段、複数のBGMの演奏データ毎にBGMが演奏されるスケールのスケールデータを記憶したスケールデータ記憶手段、BGMが演奏されているコードのコードデータを記憶したコードデータ記憶手段、少なくとも音程生成規則データと音程を除いた演奏データとを含む複数の音程付効果音データを記憶した音程付効果音データ記憶手段、および前記複数のBGMの演奏データのいずれかを選択して演奏するBGM演奏手段を備えるゲーム装置の音程付効果音生成プログラムであって、
    前記ゲーム装置のコンピュータを
    前記操作手段からの操作入力に応じて前記音程付効果音データを選択する効果音選択手段、および
    選択された音程生成規則データと、そのとき演奏されているBGMの前記スケールデータおよび前記コードデータとから、効果音の音程を決める効果音音程生成手段として機能させ、
    前記効果音音程生成手段によって生成された音程と前記演奏データとに応じて、前記サウンドデータ記憶手段に記憶されたサウンドデータからサウンドを生成し、前記音声出力手段から出力する、音程付効果音生成プログラム。
  5. 前記BGMデータ記憶手段は前記複数のBGMを演奏するタイミングを決める同期トラックを含み、
    前記効果音音程生成手段は前記同期トラックからの同期信号に応じて効果音音程を生成する、請求項4記載の音程付効果音生成プログラム。
  6. 前記効果音音程生成手段は、少なくとも前記音程生成規則データに基づいて効果音の最初に発音すべき基準音程を定める基準音程決定手段と、少なくとも前記基準音程と、前記音程生成規則データとに基づいて前記基準音程に続いて発音すべき効果音の音程を定める後続音程生成手段とを含む、請求項4または5記載の音程付効果音生成プログラム。
  7. プレイヤによるゲーム操作を入力するための操作手段、ゲーム画像を表示する表示手段、ゲーム中のBGMと効果音とを出力する音声出力手段、ゲームで使用される効果音やBGMのサウンドのデータを記憶したサウンドデータ記憶手段、ゲーム中で使用される複数のBGMの演奏データを記憶したBGMデータ記憶手段、複数のBGMの演奏データ毎にBGMが演奏されるスケールのスケールデータを記憶したスケールデータ記憶手段、BGMが演奏されているコードのコードデータを記憶したコードデータ記憶手段、および前記複数のBGMの演奏データのいずれかを選択して演奏するBGM演奏手段を備えるゲーム装置において音程付効果音を生成する方法であって、
    少なくとも音程生成規則データと音程を除いた演奏データとを含む複数の音程付効果音データを記憶しておき、さらに
    前記操作手段からの操作入力に応じて前記音程付効果音データを選択する効果音選択ステップ、
    選択された音程生成規則データと、そのとき演奏されているBGMの前記スケールデータおよび前記コードデータとから、効果音の音程を決める効果音音程生成ステップ、および
    前記効果音音程生成ステップで生成された音程と前記演奏データとに応じて、前記サウンドデータ記憶手段に記憶されたサウンドデータからサウンドを生成して前記音声出力手段から出力するステップを含む、音程付効果音生成方法。
JP2004138461A 2004-05-07 2004-05-07 ゲーム装置および音高付効果音生成プログラムならびに方法 Expired - Fee Related JP4366240B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004138461A JP4366240B2 (ja) 2004-05-07 2004-05-07 ゲーム装置および音高付効果音生成プログラムならびに方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004138461A JP4366240B2 (ja) 2004-05-07 2004-05-07 ゲーム装置および音高付効果音生成プログラムならびに方法

Publications (2)

Publication Number Publication Date
JP2005321514A true JP2005321514A (ja) 2005-11-17
JP4366240B2 JP4366240B2 (ja) 2009-11-18

Family

ID=35468868

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004138461A Expired - Fee Related JP4366240B2 (ja) 2004-05-07 2004-05-07 ゲーム装置および音高付効果音生成プログラムならびに方法

Country Status (1)

Country Link
JP (1) JP4366240B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010197600A (ja) * 2009-02-24 2010-09-09 Kawai Musical Instr Mfg Co Ltd 旋律変形装置及び旋律変形プログラム
WO2010119541A1 (ja) * 2009-04-16 2010-10-21 パイオニア株式会社 音発生装置、音発生方法、音発生プログラム、及び記録媒体
WO2012057522A3 (ko) * 2010-10-27 2012-07-26 포항공과대학교 산학협력단 음악적 두뇌 건강증진 시스템
JP2015087436A (ja) * 2013-10-29 2015-05-07 パイオニア株式会社 音声処理装置、音声処理装置の制御方法およびプログラム
JP2016093513A (ja) * 2015-11-26 2016-05-26 株式会社三洋物産 遊技機
CN111991809A (zh) * 2020-07-17 2020-11-27 北京达佳互联信息技术有限公司 音频的生成方法、装置、服务器及存储介质

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010197600A (ja) * 2009-02-24 2010-09-09 Kawai Musical Instr Mfg Co Ltd 旋律変形装置及び旋律変形プログラム
WO2010119541A1 (ja) * 2009-04-16 2010-10-21 パイオニア株式会社 音発生装置、音発生方法、音発生プログラム、及び記録媒体
WO2012057522A3 (ko) * 2010-10-27 2012-07-26 포항공과대학교 산학협력단 음악적 두뇌 건강증진 시스템
KR101228529B1 (ko) * 2010-10-27 2013-01-31 포항공과대학교 산학협력단 음악적 두뇌 건강증진 시스템
JP2014504372A (ja) * 2010-10-27 2014-02-20 ポステック アカデミー−インダストリー ファンデーション 音楽的頭脳健康増進システム
JP2015087436A (ja) * 2013-10-29 2015-05-07 パイオニア株式会社 音声処理装置、音声処理装置の制御方法およびプログラム
JP2016093513A (ja) * 2015-11-26 2016-05-26 株式会社三洋物産 遊技機
CN111991809A (zh) * 2020-07-17 2020-11-27 北京达佳互联信息技术有限公司 音频的生成方法、装置、服务器及存储介质
JP2022019676A (ja) * 2020-07-17 2022-01-27 北京達佳互▲れん▼信息技術有限公司 オーディオの生成方法、オーディオの生成装置、サーバ、記憶媒体及びコンピュータプログラム
US11883742B2 (en) 2020-07-17 2024-01-30 Beijing Dajia Internet Information Technology Co., Ltd. Method and device for audio generation
CN111991809B (zh) * 2020-07-17 2024-01-30 北京达佳互联信息技术有限公司 音频的生成方法、装置、服务器及存储介质

Also Published As

Publication number Publication date
JP4366240B2 (ja) 2009-11-18

Similar Documents

Publication Publication Date Title
KR102654029B1 (ko) 음악 생성을 위한 장치, 시스템들, 및 방법들
JP3686906B2 (ja) 音楽ゲームプログラム及び音楽ゲーム装置
EP0823270A2 (en) Video dance game apparatus
US9842577B2 (en) Improvised guitar simulation
US6878869B2 (en) Audio signal outputting method and BGM generation method
JP3632411B2 (ja) 楽音信号生成方法、楽音信号生成装置及びプログラムを記録した媒体
JP3728942B2 (ja) 楽音および画像生成装置
JP2002515987A (ja) リアルタイム音楽作成システム
KR19990064283A (ko) 실시간 음악 생성 시스템
JP2001145778A (ja) ゲームシステム、及びそれを実現するためのコンピュータ読取可能な記憶媒体
JP2002301263A (ja) ゲームシステム、及びそれを実現するためのコンピュータ読取可能な記憶媒体
JP4757704B2 (ja) 音楽再生プログラム、音楽再生装置、音楽再生方法及び音楽再生システム
JP4366240B2 (ja) ゲーム装置および音高付効果音生成プログラムならびに方法
JPH0830807A (ja) 演奏連動型動画生成装置、音声連動型動画生成装置及びこれを利用したカラオケ装置
JP4131279B2 (ja) 合奏パラメータ表示装置
JP2004187706A (ja) ゲーム音楽演奏プログラム、ゲーム装置およびゲーム音楽演奏方法
JP3839417B2 (ja) ゲームbgm生成プログラム、ゲームbgm生成方法およびゲーム装置
JP3942720B2 (ja) 楽音生成装置、画像生成装置、ゲーム装置及び情報記憶媒体
JP3117413B2 (ja) リアルタイム・マルチメディア・アート製作装置
JP3921817B2 (ja) 自動演奏装置およびフィンガリング記録装置
JP3870964B2 (ja) 楽音信号生成方法、楽音信号生成装置及びプログラムを記録した媒体
JP4218045B2 (ja) 記録媒体,ゲーム装置及びゲーム音楽制御方法
JP2008122888A (ja) カラオケ装置
JP3404594B2 (ja) 記録媒体及び音楽ゲーム装置
JP2001232058A (ja) ゲーム装置および情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060512

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080206

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080805

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080929

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

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

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

Free format text: PAYMENT UNTIL: 20120828

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4366240

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120828

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120828

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130828

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

Year of fee payment: 4

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

LAPS Cancellation because of no payment of annual fees