(57)【特許請求の範囲】
【請求項１】
複数のチャンネルに対応する複数の音データを含むゲーム音データを再生するゲーム装置であって、
前記複数の音データを再生する複数のチャンネルを有する音源と、
音楽的分析によって前記ゲーム音データを構成するコードの構成音毎に設定されており、再生中のゲーム音データのコード構成音に重複がある場合に使用される第１コード優先順位情報と、再生中のゲーム音データのコード構成音に重複がない場合に使用される第２コード優先順位情報とを含む優先順位情報を記憶する記憶手段と、
再生中のゲーム音データのコード構成音に重複があるか否かを検出する検出手段と、
前記検出手段の検出結果に基づいて、前記第１コード優先順位情報と前記第２コード優先順位情報のいずれかを選択する選択手段と
前記選択手段が選択したコード優先順位に基づいて、前記音データの再生における優先順位を決定する優先順位決定手段と、
前記優先順位決定手段により優先順位が最も低いと決定された音データである最低優先順位音データに対応する前記チャンネルを開放するチャンネル開放手段と、を備えることを特徴とするゲーム装置。
【請求項２】
前記優先順位情報は、前記複数の音データを再生する複数のパート間の優先順位を示すパート優先順位情報を含み、
前記優先順位決定手段は、前記最低優先順位音データを複数のパートが再生している場合、前記パート優先順位情報を参照して、最も優先順位の低いパートで再生している音データを最低優先順位音データに決定することを特徴とする請求項１に記載のゲーム装置。
【請求項３】
前記パート優先順位情報は、前記ゲーム音データの時間的な区分毎に設定されていることを特徴とする請求項２に記載のゲーム装置。
【請求項４】
前記優先順位情報は、前記ゲーム音データを違和感なく再生するために必要なパート毎の発音数を示す最低発音数を含み、
前記優先順位決定手段は、各パートが前記最低発音数を確保できる範囲内で前記最も優先順位の低いパートで再生している音データを最低優先順位音データに決定することを特徴とする請求項２又は３に記載のゲーム装置。
【請求項５】
前記最低発音数の情報は、前記ゲーム音データの時間的な区分毎に設定されていることを特徴とする請求項４に記載のゲーム装置。
【請求項６】
複数のチャンネルを有する音源を有し、複数のチャンネルに対応する複数の音データを含むゲーム音データを再生するコンピュータにより実行されるプログラムであって、
音楽的分析によって前記ゲーム音データを構成するコードの構成音毎に設定されており、再生中のゲーム音データのコード構成音に重複がある場合に使用される第１コード優先順位情報と、再生中のゲーム音データのコード構成音に重複がない場合に使用される第２コード優先順位情報とを含む優先順位情報を記憶する記憶手段、
再生中のゲーム音データのコード構成音に重複があるか否かを検出する検出手段、
前記検出手段の検出結果に基づいて、前記第１コード優先順位情報と前記第２コード優先順位情報のいずれかを選択する選択手段
前記選択手段が選択したコード優先順位に基づいて、前記音データの再生における優先順位を決定する優先順位決定手段、
前記優先順位決定手段により優先順位が最も低いと決定された音データである最低優先順位音データに対応する前記チャンネルを開放するチャンネル開放手段、として前記コンピュータを機能させることを特徴とするプログラム。
【請求項７】
前記優先順位情報は、前記複数の音データを再生する複数のパート間の優先順位を示すパート優先順位情報を含み、
前記優先順位決定手段は、前記最低優先順位音データを複数のパートが再生している場合、前記パート優先順位情報を参照して、最も優先順位の低いパートで再生している音データを最低優先順位音データに決定することを特徴とする請求項６に記載のプログラム。
【請求項８】
前記パート優先順位情報は、前記ゲーム音データの時間的な区分毎に設定されていることを特徴とする請求項７に記載のプログラム。
【請求項９】
前記優先順位情報は、前記ゲーム音データを違和感なく再生するために必要なパート毎の発音数を示す最低発音数を含み、
前記優先順位決定手段は、各パートが前記最低発音数を確保できる範囲内で前記最も優先順位の低いパートで再生している音データを最低優先順位音データに決定することを特徴とする請求項７又は８に記載のプログラム。
【請求項１０】
前記最低発音数の情報は、前記ゲーム音データの時間的な区分毎に設定されていることを特徴とする請求項９に記載のプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ゲーム装置が有する音源数の制約下において、違和感のないゲーム音楽を再生するゲーム装置及びプログラムに関する。
【０００２】
【従来の技術】
家庭用ゲーム機などのゲーム装置は、一般に、音源装置を内蔵し、この音源装置を利用して、ゲーム中に再生されるＢＧＭ（Back Ground Music）や、ゲーム中のプレイヤーの操作に応じて再生される効果音等に対応するゲーム音データをゲーム音楽として再生している。
【０００３】
ゲーム装置が有するこのような音源装置は複数チャンネル分の音源を備え、各音源がゲーム音データ中の１つのトラックの音を発音する。即ち、これら複数チャンネル分の音源のそれぞれをゲーム音データのトラックに割り当て、各チャンネルの音源がゲーム音データを再生する。複数チャンネル分の音源がそれぞれに割り当てられた音を同時に発音することで、和音や複数の楽器の合奏により構成されるゲーム音楽を再生することができる。
【０００４】
しかし、音源装置が有する音源のチャンネル数にはゲーム装置のハードウェア設計上所定の制限があるため、ゲーム装置はゲーム進行中のＢＧＭや効果音といったゲーム音データを、音源のチャンネル数の範囲（いわゆる、最大同時発音数）内で再生しなければならない。そのため、ゲームの進行状況により、ゲーム音楽を構成するゲーム音データを再生するために必要なチャンネル数が、ゲーム装置の音源のチャンネル数を超えてしまった場合は、ゲーム装置がゲーム音データの全ての音を再生することができないという問題が生じる。
【０００５】
実際に、ゲームのプレイ中に再生されるべき効果音の数はユーザのプレイに依存するため、ゲーム装置の音源装置が所定数のチャンネルを使用してＢＧＭを再生している状態でプレイヤーが多数の操作、入力などを行うと、ＢＧＭと効果音を含む複数のゲーム音データを再生するために必要なチャンネル数が、ゲーム装置の音源のチャンネル数を超えてしまうような状況がしばしば起こる。このような状況では、全てのゲーム音データを再生することはできないため、ゲーム音データ中のいずれかの音を再生しないことにせざるを得ない。しかし、ゲーム音楽を構成するゲーム音データの幾つかを再生しないことにすると、ゲーム音楽が違和感のある不自然な音楽となってしまう恐れがある。
【０００６】
この問題を解決するために、特開２０００−２２９１７３号公報は、ゲーム音データの各トラックに優先順位を設定し、その優先順位に従ってゲーム音データを再生する方法を記載している。ここで、優先順位は、主旋律等の重要なパートが高くなるように設定されている。ゲーム装置の音源装置が有するチャンネル数の制限によってゲーム装置が再生できるゲーム音データ数に制限がある場合、上記公報に記載の装置は優先順位の低いゲーム音データから順に再生を行わないこととしている。こうして、上記公報に記載の装置は、実際の発音数を減らすことによるゲーム音楽全体への悪影響を少なくしている。
【０００７】
【発明が解決しようとする課題】
しかし、上記公報に記載の装置では、ゲーム音データを構成する複数のトラックに対する優先順位の付け方によっては、ゲーム音楽全体に大きな影響を与える音を消してしまうことがありうる。即ち、優先順位の付け方によって、ゲーム音楽の違和感が大きく左右されることになるが、上記公報は具体的な優先順位の付け方については特に記載していない。
【０００８】
また、ＢＧＭなどのゲーム音データにおける各トラックの優先順位は、そのゲーム音楽全体にわたって常に一定とは限らず、曲の途中で変化することがある。例えば、所定のゲーム音楽において、ある小節ではピアノパートが最も重要なパートであったが、次の小節ではバイオリンが最も重要なパートとなるなどということがありうる。
【０００９】
本発明は、以上の点に鑑みてなされたものであり、ゲーム音楽を分析し、ゲーム音楽を構成する複数のトラックに対して音楽的見地から適切な優先順位を付与することにより、音源装置が有する音源数の制約の範囲内で違和感のないゲーム音楽を再生することができるゲーム装置及びプログラムを提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明の１つの観点では、複数のチャンネルに対応する複数の音データを含むゲーム音データを再生するゲーム装置であって、前記複数の音データを再生する複数のチャンネルを有する音源と、音楽的分析によって前記ゲーム音データを構成するコードの構成音毎に設定されており、再生中のゲーム音データのコード構成音に重複がある場合に使用される第１コード優先順位情報と、再生中のゲーム音データのコード構成音に重複がない場合に使用される第２コード優先順位情報とを含む優先順位情報を記憶する記憶手段と、再生中のゲーム音データのコード構成音に重複があるか否かを検出する検出手段と、前記検出手段の検出結果に基づいて、前記第１コード優先順位情報と前記第２コード優先順位情報のいずれかを選択する選択手段と前記選択手段が選択したコード優先順位に基づいて、前記音データの再生における優先順位を決定する優先順位決定手段と、前記優先順位決定手段により優先順位が最も低いと決定された音データである最低優先順位音データに対応する前記チャンネルを開放するチャンネル開放手段と、を備える。
【００１１】
上記のように構成されたゲーム装置によれば、ゲーム中の音楽に対応するゲーム音データは複数のチャンネルに対応する複数の音データとして構成されている。ゲーム音データは例えばゲーム中に再生されるＢＧＭやゲーム中のプレイヤーの操作、入力に対応する効果音などを含む。ゲーム装置は複数のチャンネルを有する音源を備えており、各チャンネルが、そのチャンネルに供給された音データを再生することにより、全体としてゲーム音データが再生される。
【００１２】
ゲーム音データに関しては、その内容の音楽的分析に基づいて設定された優先順位情報が用意され、記憶されている。優先順位情報は、ゲーム音データ中のどの音データを優先的に再生すべきかを決定する基準となる情報であり、具体的に、ゲーム音データを構成するコードの構成音毎に設定されたコード優先順位のことである。優先順位決定手段は、優先順位情報に従って、ゲーム進行中の各時点における音データの優先順位を決定し、優先順位の最も低い音データである最低優先順位音データを決定する。チャンネル開放手段は、例えば音源が有するチャンネル数を上回る数の音データを再生する必要が生じた場合などに、最低優先順位音データに対応するチャンネルを開放する。
【００１３】
このように、例えば使用中のチャンネルを開放する必要が生じた場合には、最も優先順位の低い音データを再生しないこととし、その音データに対応するチャンネルを開放する。よって、ゲーム装置の音源が有するチャンネル数に制限があり、その結果、ゲーム音データ中の全ての音データを再生することができない場合、優先順位の低い音データを再生しないこととする。このとき、ゲーム装置は、ゲーム音データを構成するコード中の構成音という細かなレベルで優先順位を考慮して再生しない音データを決定することになるので、ゲーム音データ中の全ての音データを再生できない場合でも、再生されるゲーム音楽全体の違和感を可能な限り小さくすることができる。
【００１７】
また、上記のように構成されたゲーム装置は、再生中のゲーム音データのコード構成音に重複があるか否かに応じて、優先順位情報を区別して使用する。再生中の音データのコード構成音に重複がある場合と無い場合とでは、各コード構成音を再生しないこととした場合にゲーム音楽全体に与える影響が異なってくる。よって、再生中の音データのコード構成音に重複があるか否かに応じて優先順位情報を切り替えて使用することにより、状況毎にゲーム音楽全体に与える影響を小さくすることができる。
【００１８】
上記のゲーム装置のさらに他の一態様では、前記優先順位情報は、前記複数の音データを再生する複数のパート間の優先順位を示すパート優先順位情報を含み、前記優先順位決定手段は、前記最低優先順位音データを複数のパートが再生している場合、前記パート優先順位情報を参照して、最も優先順位の低いパートで再生している音データを最低優先順位音データに決定する。
【００１９】
この態様によれば、最低優先順位音データを複数のパートが再生している場合には、パート毎の優先順位情報を参照して、最も優先順位の低いパートが再生している音データを最低優先順位音データに決定することで、最も優先順位の低いパートの再生に使用しているチャンネルを開放する。即ち、当該音データの再生を行わない。これにより、ゲーム音データのいずれかの再生を中止する場合、ゲーム音データのパート毎の影響を考慮して、ゲーム音楽全体の再生に与える影響を小さくすることが可能となる。
【００２０】
上記のゲーム装置のさらに他の一態様では、前記優先順位情報は、前記ゲーム音データを違和感なく再生するために必要なパート毎の発音数を示す最低発音数を含み、前記優先順位決定手段は、各パートが前記最低発音数を確保できる範囲内で前記最も優先順位の低いパートで再生している音データを最低優先順位音データに決定する。
【００２１】
この態様によれば、各パート毎に予め設定された最低発音数を維持できるように、最低優先順位音データが決定される。即ち、最低発音数の維持に基づいて、再生しない音データが決定される。最低発音数は、そのパートの音を違和感無く再生するために要求される数であるので、これを維持できるように再生しない音データを決定することにより、パート毎の再生音に違和感が生じることを防止することができる。
【００２２】
上記のゲーム装置のさらに他の一態様では、前記パート優先順位情報及び／又は前記最低発音数の情報は、前記ゲーム音データの時間的な区分毎に設定することができる。この態様によれば、パート優先順位情報や最低発音数の情報を、ゲーム音楽の時間的区分毎、例えば小節毎に設定する。これにより、ゲーム音楽の各時点において最も優先順位の低い音データ、即ち再生しないこととした場合に最も影響の少ない音データの再生が中止されることになり、ゲーム音楽の再生中の各時点において常に最適な音データを選択し、再生を中止することができる。
【００２３】
本発明の他の観点では、複数のチャンネルを有する音源を有し、複数のチャンネルに対応する複数の音データを含むゲーム音データを再生するコンピュータにより実行されるプログラムであって、音楽的分析によって前記ゲーム音データを構成するコードの構成音毎に設定されており、再生中のゲーム音データのコード構成音に重複がある場合に使用される第１コード優先順位情報と、再生中のゲーム音データのコード構成音に重複がない場合に使用される第２コード優先順位情報とを含む優先順位情報を記憶する記憶手段、再生中のゲーム音データのコード構成音に重複があるか否かを検出する検出手段、前記検出手段の検出結果に基づいて、前記第１コード優先順位情報と前記第２コード優先順位情報のいずれかを選択する選択手段前記選択手段が選択したコード優先順位に基づいて、前記音データの再生における優先順位を決定する優先順位決定手段、前記優先順位決定手段により優先順位が最も低いと決定された音データである最低優先順位音データに対応する前記チャンネルを開放するチャンネル開放手段、として前記コンピュータを機能させる。
【００２４】
上記のプログラムをコンピュータにより実行することにより、上述のゲーム装置を実現することができる。また、上述のゲーム装置についての各態様も同様に実現することができる。
【００２５】
【発明の実施の形態】
以下、図面を参照して本発明の好適な実施の形態について説明する。
【００２６】
［ゲーム装置の構成］
図１は本発明が適用されたゲーム装置の制御系のブロック図である。このゲーム装置は、記憶媒体としてのＤＶＤ−ＲＯＭ１５に記録されたゲーム用プログラムに従って所定のゲームを実行するものであり、本発明ではゲームの進行に従ってＢＧＭ及び効果音を出力する。
【００２７】
このゲーム装置は、モニタ９、スピーカ１０ａ及び１０ｂ、コントローラ１２、補助記憶装置１３、ＤＶＤ−ＲＯＭ１５、ゲーム機本体１６で構成される。モニタ９には家庭用のテレビ受像機が、スピーカ１０ａ及び１０ｂにはそのテレビ受像機の内臓スピーカが一般に使用される。スピーカは、右チャンネルスピーカ１０ａ及び左チャンネルスピーカ１０ｂの２チャンネルを有する。コントローラ１２は入力装置として機能するものであり、そこにはプレイヤーによる操作を受け付ける操作部材が設けられる。
【００２８】
補助記憶装置１３は、ゲーム進行状況などに関連するデータを記憶するための記憶媒体であり、例えば半導体メモリなどを使用することができる。ＤＶＤ−ＲＯＭ１５にはゲームの実行に必要なプログラムやデータが記録されているが、それらの詳細については後述する。なお、ＤＶＤ−ＲＯＭ１５の代わりに、ＣＤ−ＲＯＭや半導体メモリなどの各種記憶媒体を用いてもよい。
【００２９】
一方、ゲーム機本体１６は、マイクロプロセッサを主体として構成されたＣＰＵ１と、そのＣＰＵ１に対する主記憶装置としてのＲＯＭ２及びＲＡＭ３と、画像処理及び音声処理用のグラフィックスプロセッシングユニット（ＧＰＵ）４及びサウンドプロセッシングユニット（ＳＰＵ）６と、それらのユニットに対するバッファ５、７と、ＤＶＤ−ＲＯＭ読取装置８とを有している。ＲＯＭ２には、ゲーム機の複数体の動作制御に必要なプログラムとしてのオペレーティングシステムが書き込まれる。ＲＡＭ３には記憶媒体としてのＤＶＤ−ＲＯＭ１５から読み取ったゲーム用のプログラムやデータが必要に応じて書き込まれる。
【００３０】
ＧＰＵ４はＣＰＵ１から画像データを受け取ってフレームバッファ５上にゲーム画面を描画するとともに、その描画された画像のデータを所定のビデオ再生信号に変換して所定のタイミングでモニタ９に出力する。ＳＰＵ６は、ＤＶＤ−ＲＯＭ１５から読み出されてサウンドバッファ７に記録された音声、楽音等のゲーム音データ等を再生してスピーカから出力させる。また、ＳＰＵ６には、それぞれがゲーム音データにおける１つのトラックの音を発音する複数のチャンネル分の音源が搭載されている。
【００３１】
ＤＶＤ−ＲＯＭ読取装置８は、ＣＰＵ１からの指示に従ってＤＶＤ−ＲＯＭ１５上に記録されたプログラムやデータを読み取り、その読み取った内容に対応した信号を出力する。
【００３２】
ＣＰＵ１にはバス１４を介して通信制御デバイス１１が接続され、そのデバイス１１にはコントローラ１２及び補助記憶装置１３がそれぞれ着脱自在に接続される。通信制御デバイス１１は一定周期（例えば１／６０秒）でコントローラ１２の操作部材の操作状態を走査し、その走査結果に対応した信号をＣＰＵ１に出力する。ＣＰＵ１はその信号に基づいてコントローラ１２の操作状態を判別する。なお、コントローラ１２及び補助記憶装置１３は通信制御デバイス１１に対して複数並列に接続可能である。
【００３３】
［基本原理］
次に、本発明の基本原理について説明する。なお、本明細書において、「音」とは音階を指し、「Ｃ」、「Ｄ」、「Ｅ」などのそれぞれを示す。そして、「音データ」とは、所定の音に対応するデータである。即ち、音データを再生することによって、当該音データに対応する音が発音される。また、「ゲーム音」とはゲーム進行中に出力されるＢＧＭと、プレイヤーの操作、入力などに応じて出力される効果音とを含む概念であり、ゲーム音楽を構成する音である。また、「ゲーム音データ」はゲーム音のデータである。
【００３４】
前述の通り、ゲーム装置に搭載できる音源のチャンネル数にはゲーム装置のハードウェア設計上制限がある。ゲーム装置は一般的にゲーム音楽としてＢＧＭと効果音を再生する。ＢＧＭはゲームの進行中に基本的に継続して再生されている楽曲である。これに対し、効果音はゲームの進行中に不規則に再生される音である。効果音は、例えばゲームの進行中にある所定の状況となったとき（例えばプレイヤーの操作するキャラクタが特定のステージに到達したときや新たな敵キャラクタが登場したときなど）、又は、プレイヤーがコントローラを操作して入力を行ったとき（例えば戦闘ゲームにおいて攻撃を行ったときなど）に出力される音である。
【００３５】
一般的には、ゲームの進行中に、ゲーム装置は搭載された音源の所定チャンネル数を使用してＢＧＭを再生している。そして、プレイヤーの操作などに応じて効果音を再生する必要が生じると、ゲーム装置は音源の他のチャンネルを使用して効果音を再生する。しかし、ゲームの進行に応じて、多数の効果音を同時に出力しなければならないような状況が発生した場合、音源のチャンネル数が不足することがある。例えば、ゲーム装置が２４チャンネルの音源を備えており、そのうちの１８チャンネル分の音源を使用してＢＧＭを出力していたとする。ここでプレイヤーの操作などにより８チャンネル分の効果音を再生しなければならなくなったとすると、そのときに必要な音源のチャンネル数は２６となり、２チャンネル分の音源が不足することになる。よって、ＢＧＭの音データと効果音の音データのうち、２チャンネル分の再生は不可能となる。
【００３６】
このような場合、本発明のゲーム装置は、まず、ＢＧＭの音データよりも効果音の音データを優先して再生する。従って、ゲーム装置はＢＧＭの音データのうち２チャンネル分の音データを再生しないこととする。また、ＢＧＭの音データのうち、再生しない音データは、ＢＧＭの曲内容を音楽的見地から分析し、ＢＧＭの曲内容に与える影響が少ない音から順に決定することとする。これにより、ゲーム装置が有する音源のチャンネル数の範囲内でゲーム音楽を出力する際に、いくつかのチャンネル分の音データを再生しないこととしても、出力されるＢＧＭの曲内容になるべく違和感、不自然感などの影響を与えないようにする。
【００３７】
本発明のゲーム装置は、再生しない音データの決定を、予め決められた優先順位に従って行う。具体的には、ゲーム装置の発音制御部７０（前述のＣＰＵ１及びＳＰＵ６が所定のプログラムを実行することにより実現される）は以下に述べるコード優先テーブル及びパート優先テーブルを利用して、再生しない音データを決定する。
【００３８】
［コード優先テーブル］
まず、コード優先テーブルについて、図２を参照して説明する。コード優先テーブルは、図２に示すように、音楽のコード進行という概念に基づいて音の優先順位を設定したテーブルである。コード優先テーブルは、コード２１、構成音及び優先順位から構成されている。コードとは、３つ以上の音が同時に発音された和音のことであり、様々な種類のコードが存在する。
【００３９】
「構成音」とは、所定のコードの和音を構成する音である。「優先順位」は、音源のチャンネル数の制限に応じて、再生しない音を決定する場合に発音制御部７０が参照するものであり、あるコードの構成音のうちで、その和音に対する影響の少ないものから優先順位が低く設定されていく。即ち、コード優先テーブル中においては、各コードの個々の構成音について、その構成音が属する和音における重要度の高い音ほど優先順位が高く、重要度の低い音ほど優先順位が低くなるように設定される。図２（ａ）及び（ｂ）において優先順位は左に示されるものほど高く設定されている。具体的には、図２（ａ）に示すコード「Ｃ（以下、「Ｃメジャー」と呼ぶ。）」は、構成音「Ｃ」、「Ｅ」、「Ｇ」により構成されており、優先順位は「Ｅ」が最も高く、「Ｃ」が最も低い。
【００４０】
また、コード優先テーブルは、図２（ａ）に示す現在発音中の構成音に重複がある場合、及び、図２（ｂ）に示す現在発音中の構成音に重複がない場合の２つの場合について別個に用意されている。ここで、現在発音中の構成音に重複があるとは、詳細は後述するが、例えばコード「Ｃメジャー」の「Ｇ」の音をピアノパートとサックスパートが同時に発音している場合などである。一方、「Ｇ」の音をピアノパートのみが発音しており、他のパートでは発音していない場合、構成音に重複はないことになる。構成音に重複がある場合には図２（ａ）に示すコード優先テーブルが使用され、構成音に重複がない場合には図２（ｂ）に示すコード優先テーブルが使用される。
【００４１】
図２（ａ）及び図２（ｂ）を比較するとわかるように、優先順位は、現在発音中の構成音に重複がある場合と重複がない場合で異なる。具体的にコード「Ｃメジャー」において説明する。「Ｃメジャー」の構成音は、「Ｃ」、「Ｅ」、「Ｇ」であり、「Ｃ」を主和音、「Ｅ」を中和音、「Ｇ」を属和音という。
【００４２】
主和音とは、和音の構成音の中で基本となる最も重要な音のことである。また、属和音とは、主和音を引き立て、メロディを膨らませる重要な音のことである。中和音とは、コードのメジャー又はマイナーを決定付ける上で重要な音である。しかし、コード感を出す場合はまず属和音を加えるべきであるため、中和音は最も音量が小さくてもいい音である。
【００４３】
現在発音中の構成音に重複がある場合、主和音は複数のパートが発音しており代替可能であるので、主和音よりもコード感を出す中和音の方が重要である。そのため、図２（ａ）に示すように、優先順位は主和音「Ｃ」が最も低くなり、中和音「Ｅ」が最も高くなる。一方、現在発音中の構成音に重複がない場合、主和音は和音の構成音の中で基本となる音として必要である。そのため、図２（ｂ）に示すように、優先順位は主和音「Ｃ」が最も高くなり、中和音「Ｅ」が最も低くなる。
【００４４】
「Ｃメジャー」以外のコードの優先順位も上記と同様に、音楽的見地から設定されている。これによれば、音源のチャンネル数の制限により、ゲーム音データ中のいずれかの音データを再生しないこととする場合、音楽的見地から設定された優先順位に基づいて、再生しない音を決定するので、その音を再生しないことによるゲーム音楽全体への悪影響、違和感などを少なくすることができる。
【００４５】
［パート優先テーブル］
次に、パート優先テーブルについて、図３及び図４を参照して説明する。パート優先テーブルは、図３に示すように、トラック、パート２２、小節２３毎のパート優先順位及び最低発音数から構成されている。
【００４６】
「トラック」は、パート優先テーブルのキーであり、ゲーム音データの構成要素である。即ち、複数のトラックにより１つのゲーム音データが構成されている。ＳＰＵ６の有する複数チャンネル分の音源はそれぞれ各トラックに割り当てられ、各チャンネル毎に再生のための処理をした音を重ね合わせて発音することで、和音や複数の楽器の音を重ねたゲーム音データを再生する。ゲーム音データ３０の具体例を、楽譜として図４に示す。
【００４７】
パート２２は、トラック毎に対応付けられており、図３では、サックス、ベース、ピアノなどの楽器が設定されている。パート２２には、楽器以外の旋律パートや節奏パート等を任意に設定することも可能である。
【００４８】
小節２３は、音楽の拍子を構成する単位であり、パート優先テーブルでは、小節毎に各パートのパート優先順位及び最低発音数が設定されている。パート優先順位及び最低発音数が小節毎に設定されている理由は、１つのゲーム音楽に対応するゲーム音データにおいて、各パートのパート優先順位及び最低発音数が常に一定とは限らないからである。即ち、ゲーム音楽によっては、小節が変わる毎に、パート優先順位及び最低発音数が変化するものがある。
【００４９】
「パート優先順位」は、音源が有するチャンネル数の制限により、所定の音データを再生しないこととする場合に参照されるものであり、複数のパートの中で、そのパートの音データを再生しなかった場合に最もゲーム音楽に与える影響が少ないパートから順にパート優先順位が低く設定されている。つまり、ゲーム音データ３０を小節毎に分析し、メロディや基幹リズムを刻むパートは、優先順位を比較的高く設定する。一方、バックコーラスのような付属的なパートは、優先順位を比較的低く設定する。
【００５０】
「最低発音数」は、各パートに対して、発音のために割り当てられるべきチャンネルの最低必要数である。割り当てられるチャンネル数が最低発音数より少ないと、そのパートの音を十分に発音することができないので、ゲーム音楽に違和感が生じる可能性が高くなる。そのため、ゲーム音データを再生する際は、可能な限り最低発音数を維持する必要がある。最低発音数もパート優先順位と同様に、ゲーム音データ３０を小節毎に分析して設定する。
【００５１】
具体的には、図３に示すパート優先テーブルにおいて、トラック１にはパートとしてサックスが割り当てられている。小節Iにおいてトラック１であるサックスパートは優先順位が最も高い。また、最低発音数には１が設定されているので、トラック１であるサックスパートには、最低１つのチャンネルが割り当てられる必要がある。一方、トラック４にはパートとしてストリングが割り当てられている。小節Iにおいて、トラック４であるストリングパートは優先順位が最も低い。また、最低発音数には２が設定されているので、トラック４であるストリングパートには、最低２つのチャンネルが割り当てられる必要がある。
【００５２】
本発明では、チャンネル数の制限により、再生しない音データを決定する場合、発音制御部７０は音楽的見地から設定されたパート優先順位及び最低発音数に基づいて再生しない音データを決定するので、その音データを再生しないことによるゲーム音楽全体への影響を極力少なくすることができる。また、１つのゲーム音データ３０において、パート優先順位及び最低発音数は常に一定ではなく、小節毎に分析して設定されている。よって、小節毎に最も影響の少ない音から順に再生しない音データが決定されていくことになり、１つのゲーム音楽に対応するゲーム音データにおいて常に一定の設定がされている場合よりも、音データを再生しないことによるゲーム音楽への影響をさらに軽減することができる。
【００５３】
［機能ブロック図］
図５に、本発明のゲーム機の機能ブロック図を示す。図５に示す各機能は、ＤＶＤ−ＲＯＭ１５に記録されたプログラムをＣＰＵ１が実行し、必要に応じてＳＰＵ６などの構成要素を制御することにより実現される。
【００５４】
図５に示すように、本発明のゲーム機は、機能的には、コード優先順位記憶手段４７、パート優先順位記憶手段４８、最低発音数記憶手段４９、再生予定音データ算出手段５０、再生中音データ算出手段５１、チャンネル確認手段５２、コード優先順位選択手段５３、パート優先順位選択手段５４、最低発音数選択手段５５、再生中止音データ決定手段５６、チャンネル開放手段５７、音データ再生手段５８、及び再生完了確認手段５９を有する。このうち、再生予定音データ算出手段５０、再生中音データ算出手段５１、チャンネル確認手段５２、コード優先順位選択手段５３、パート優先順位選択手段５４、最低発音数選択手段５５、再生中止データ決定手段５６及びチャンネル開放手段５７が前述の発音制御部７０を構成する。
【００５５】
コード優先順位記憶手段４７は、コード優先テーブルを記憶する。コード優先テーブルは、コード進行に基づいてゲーム音データを分析し、コードの構成音の中で、発音しなくてもゲーム音楽に影響の少ないものから順にコード優先順位が低くなるようにコード優先順位を設定することにより作成される。
【００５６】
パート優先順位記憶手段４８は、パート優先順位を記憶する。パート優先順位は、複数のパートが重複して同じ音を発音している場合、パートの中で、発音しなくてもゲーム音楽に影響の少ないものから順にパート優先順位が低くなるように設定される。最低発音数記憶手段４９は、各パートにおいて、発音のために割り当てられるチャンネルの最低限度の数である最低発音数を記憶する。パート優先順位記憶手段４８及び最低発音数記憶手段４９は、図３に例示するパート優先順位テーブルの内容を記憶している。
【００５７】
再生予定音データ算出手段５０は、ゲームプログラム、及び、ＲＡＭ３若しくはサウンドバッファ７内にあらかじめロードされたゲーム音データに基づいて、次に再生する予定の音データを算出する。一方、再生中音データ算出手段５１は、ゲームプログラム、及びＲＡＭ３若しくはサウンドバッファ７内にあらかじめロードされたゲーム音データに基づいて、現在再生中の音データを算出する。チャンネル確認手段５２は、再生中音データ算出手段５１が算出した再生中音データ、及びＳＰＵ６が有するチャンネル数の情報に基づいて、空きチャンネル（即ち、音データの再生に使用していないチャンネル）があるか否かを確認する。
【００５８】
コード優先順位選択手段５３は、再生予定音データ算出手段５０及び再生中音データ算出手段５１により算出された、再生予定音データ及び再生中音データに基づいて、コード構成音に重複があるか否かを判断する。コード構成音に重複がある場合、コード優先順位選択手段５３は、重複している音のコード２１を算出し、コード優先テーブル（重複あり）に基づいて、重複している音の中で最も優先順位の低い音を選択する。一方、コード構成音に重複がない場合、コード優先順位選択手段５３は、再生予定音データ、再生中音データ及びコード優先テーブル（重複なし）に基づいて、最も優先順位の低い音を選択する。
【００５９】
パート優先順位選択手段５４は、最も優先順位の低い音が複数存在するか否かを判断する。該当する音が複数存在する場合とは、複数のパートで当該音が発音されている場合である。そこで、パート優先順位選択手段５４は、再生予定音データ及び再生中音データに基づいて、該当する音のパート２２及び小節２３を算出し、さらにパート優先テーブルに基づいて、最もパート優先順位の低いパートの音を選択する。
【００６０】
最低発音数選択手段５５は、パート優先テーブル内の最低発音数に基づいて、最も優先順位の低い音として選択した音を発音するパートの有するチャンネル数が、最低発音数より多いか否かを判別する。そして、最低発音数選択手段５５は、なるべく最低発音数を維持しながら、その中で最も優先順位の低い音を選択する。
【００６１】
再生中止音データ決定手段５６は、コード優先順位選択手段５３、パート優先順位選択手段５４、及び、最低発音数選択手段５５によって選択された最も優先順位の低い音を、発音しない音として決定する。即ち、当該音に対応する音データを再生中止音データに決定する。
【００６２】
チャンネル開放手段５７は、再生中止音データ決定手段５６により決定した再生中止音データを再生しないことにより、ＳＰＵ６の有するチャンネルを１つ開放する。即ち、チャンネル開放手段５７は、空きチャンネルがある場合にはそのうちの１つのチャンネルを確保し、空きチャンネルが無い場合には現在使用中のチャンネルから１つのチャンネルを開放する処理を行う。そして、音データ再生手段５８は、チャンネル開放手段５７によって開放されたチャンネルを使って、再生予定音データに基づき次に再生する予定の音データを再生する。
【００６３】
再生完了確認手段５９は、所定のゲーム音楽に対応するゲーム音データの再生が全て完了したか否かを確認する。ゲーム音データ全ての再生が完了していれば、ゲーム音データ再生処理を終了する。一方、ゲーム音データの再生が完了していなければ、次に再生すべき音データついて、ゲーム音データの再生処理を行う。例えばプレイヤーがゲームを続行しており、ＢＧＭや効果音等のゲーム音データを再生する必要がある場合、上述の各手段はゲーム音データの再生処理を継続する。
【００６４】
［ゲーム音データ再生処理］
次に、ゲーム音データ再生処理について図５の機能ブロック図、並びに図６及び図７のフローチャートを参照して説明する。ゲーム音データ再生処理は、ゲームの進行中に、ゲーム音楽に対応するゲーム音データを再生する処理である。図６はゲーム音データ再生処理のメインルーチンであり、図７は図６における再生中止音データ決定処理のサブルーチンである。
【００６５】
なお、以下に説明する処理は、図１に示すＤＶＤ−ＲＯＭ１５から読み出され、ＲＡＭ３にロードされたゲームプログラムに基づいて、ＣＰＵ１が各手段として機能することにより実行される。ただし、ＣＰＵ１のみではなく、ＳＰＵ６と共同で、若しくは、ＳＰＵ６のみが機能することによりゲーム音データ再生処理を実行しても構わない。
【００６６】
図６において、まず、再生予定音データ算出手段５０は、再生予定音データ算出処理を行う（ステップＳ１）。これは、再生予定音データ算出手段５０が、ゲームプログラム、及び、ＲＡＭ３若しくはサウンドバッファ７内にあらかじめロードされたゲーム音データに基づいて、次に再生する予定の音データを算出する処理である。具体的には、次に再生する予定の音データについて、当該音データが効果音であるか否かの判別、及び、コード２１、パート２２、小節２３等の算出を行う。再生予定音データ算出手段５０は、次に再生する音データの判別及び算出が完了すると、結果を再生予定音データとしてＲＡＭ３に一時的に記憶する。
【００６７】
次に、再生中音データ算出手段５１は、再生中音データ算出処理を行う（ステップＳ２）。これは、再生中音データ算出手段５１が、ゲームプログラム、及び、ＲＡＭ３若しくはサウンドバッファ７内にあらかじめロードされたゲーム音データに基づいて、現在再生中の音データを算出する処理である。具体的には、現在再生中の全ての音データについて、その音が効果音であるか否かの判別、及び、コード２１、パート２２、小節２３等の算出を行う。再生中音データ算出手段５１は、現在再生中の音データの判別及び算出が完了すると、結果を再生中音データとしてＲＡＭ３に一時的に記憶する。
【００６８】
次に、チャンネル確認手段５２は、チャンネル確認処理を行う（ステップＳ３）。即ち、チャンネル確認手段５２は、再生中音データ、及びＳＰＵ６が有するチャンネルに基づいて、空きチャンネルがあるか否かを確認する。空きチャンネルがない場合、チャンネル確認手段５２は再生中止音データ決定処理を行う（ステップＳ４）。空きチャンネルがある場合、チャンネル確認手段５２は再生中止音データ決定処理をスキップして、音データ再生処理へ進む。
【００６９】
再生中止音データ決定処理は、ＳＰＵ６が有するチャンネル数の制限により、再生予定音データに対応する新しい音データが再生できない場合に、最もゲーム音楽に影響のない音データを再生しない、即ち当該音データに対応する音を発音しないこととしてチャンネルを開放する処理であり、その詳細を図７を参照して説明する。なお、ゲーム音データにおいて、ＢＧＭと効果音を同時に再生する場合は、必ず効果音を優先して再生しなければならない。効果音は、ゲームの臨場感を高めるために、ゲームの展開に応じて再生されるゲーム音データであり、効果音が再生される状況では効果音はＢＧＭより重要であると考えられるからである。
【００７０】
また、ＢＧＭの中で、経過音は最も優先度が高い。経過音とは、コードの構成音以外の音であって、音と音を音階的につなぎ、メロディを滑らかにする効果を生み出すものである。経過音が消されると、所定のコードの構成音が消されるよりも、ゲーム音楽への影響が大きい。以上のことから、図７のＳ４に示す再生中止音データ決定処理の対象となるのは経過音以外のＢＧＭの音のみとなる。
【００７１】
再生中止音データ決定処理において、まず、コード優先順位選択手段５３は、ＢＧＭの再生予定音データ及び再生中音データに基づいて、コード構成音に重複があるか否かを判断する（ステップＳ１０）。なお、効果音の音データは必ずＢＧＭよりも優先的に再生されるので、効果音の再生予定音データ及び再生中音データは再生中止音データ決定処理の対象とはならない。また、経過音はＢＧＭにおいて、コード構成音よりも優先的に発音されるので、経過音の再生予定音データ及び再生中音データも再生中止音データ決定処理の対象とはならない。
【００７２】
コード構成音に重複がある場合、コード優先順位選択手段５３は、再生予定音データ及び再生中音データに基づいて、重複している音のコード２１を算出する。そして、コード優先順位選択手段５３は、重複している音のコード２１、及び、コード優先順位記憶手段４７により設定された図２（ａ）に示すコード優先テーブル（重複あり）に基づいて、重複している音の中で最も優先順位の低い音を選択する（ステップＳ１１）。
【００７３】
コード構成音に重複がある場合とは、複数のパートで同じ音を発音している場合である。この場合、重複している音のうちいずれかの音の発音を中止しても、他のパートで同じ音を発音しているため、重複していない音の発音を中止するよりも、ゲーム音楽に与える影響は少ない。また、図２（ａ）に示すコード優先テーブル（重複あり）は、コード構成音が複数のパートで重複して発音されている場合において、曲内容を音楽的見地から分析した結果に基づいて、ゲーム音楽に与える影響が少ない音から順に優先順位が低く設定されている。そのため、コード構成音に重複がある場合、コード優先テーブル（重複あり）において最も優先順位が低い音を選択し、その音を発音しない音として決定すれば、ゲーム音楽に与える影響が最も少ないことになる。
【００７４】
さらに、パート優先順位選択手段５４は、選択した最も優先順位の低い音が、複数存在するか否かを判断する（ステップＳ１２）。例えば、最も優先順位の低い音が「Ｇ」であった場合、サックス、ピアノ及びストリングのそれぞれのパート２２で「Ｇ」を発音していれば、該当する音が複数存在することになる。
【００７５】
該当する音が複数存在する場合、パート優先順位選択手段５４は、再生予定音データ及び再生中音データに基づいて、該当する音のパート２２及び小節２３を算出する。そして、パート優先順位選択手段５４は、算出したデータ、及び、パート優先順位記憶手段４８により設定された図３に示すパート優先テーブルに基づいて、最もパート優先順位の低いパートの音を選択する（ステップＳ１３）。例えば、小節Iにおいて、サックス、ピアノ及びストリングのパートが同じ音（ステップＳ１１で選択された最も優先順位の低い音）を重複して発音していると仮定すると、サックスのパート優先順位は１、ピアノのパート優先順位は３、ストリングのパート優先順位は５であるので、パート優先順位選択手段５４は、最もパート優先順位の低いパートの音として、ストリングの音を選択することになる。
【００７６】
図３に示すパート優先テーブルは、所定の音が複数のパートで重複して発音されている場合に、曲内容を音楽的見地から分析した結果に基づいて、ゲーム音楽に与える影響が少ないパートから順に優先順位が低く設定されている。そのため、ある音が複数のパートで重複して発音されている場合、パート優先テーブルにおいて最も優先順位が低い音を選択し、発音しない音に決定すれば、ゲーム音楽に与える影響を最も少なくすることができる。
【００７７】
一方、ステップＳ１０においてコード構成音に重複がないと判断された場合、コード優先順位選択手段５３は、再生予定音データ、再生中音データ、及び、コード優先順位記憶手段４７により設定された図２（ｂ）に示すコード優先テーブル（重複なし）に基づいて、最も優先順位の低い音を選択する（ステップＳ１４）。図２（ｂ）に示すコード優先テーブル（重複なし）は、コード構成音が重複していない場合に、曲内容を音楽的見地から分析した結果に基づいて、ゲーム音楽に与える影響が少ない音から順に優先順位が低く設定されている。そのため、コード構成音に重複がない場合、コード優先テーブル（重複なし）において最も優先順位が低い音を選択し、発音しない音に決定すれば、ゲーム音楽に与える影響を最も少なくすることができる。
【００７８】
さて、ステップＳ１１、Ｓ１３及びＳ１４において最も優先順位の低い音を１つ選択すると、最低発音数選択手段５５は、最低発音数記憶手段４９により設定された図３に示すパート優先テーブルの最低発音数に基づいて、該当する音を発音するパートの現在発音中のチャンネル数が最低発音数より多いか否かを判別する（ステップＳ１５）。該当する音を発音するパートの現在発音中のチャンネル数が、最低発音数より少ない場合、最低発音数選択手段５５は、再生予定音データ及び再生中音データに基づいて、該当する音が他のパートで発音されているか否かを判別する（ステップＳ１６）。該当する音が他のパートでも発音されている場合、同一ループ内で過去に選択したパート以外で最もパート優先順位の低い音を選択する（ステップＳ１７）。そして、再びステップＳ１５及びＳ１６を行う。
【００７９】
最低発音数は、各パートにおいて、発音のために割り当てられるチャンネルの最低必要数である。発音のために割り当てられるチャンネル数が最低発音数より少ないと、そのパートの音を十分に発音することができないので、ゲーム音楽に違和感が生じる可能性が高くなる。よって、各パートにおいて音を発音する際は、可能な限り最低発音数を維持する必要がある。このため、ステップＳ１５までの処理によって発音しない音に決定された音を発音しないと、そのパートにおける最低発音数を維持できない場合（ステップＳ１５；NO）、Ｓ１６及びＳ１７の処理を行い、発音しない音を他のパート中に決定する処理を行う。
【００８０】
一方、ステップＳ１６において、該当する音が他のパートでは発音されていないと判別された場合、パート優先テーブルに示す最低発音数を維持できなくなることを許容し、ステップＳ１１、Ｓ１３及びＳ１４で選択した音を発音しない予定の音として選択し（ステップＳ１８）、選択した音に対応する音データを再生中止音データとして決定する。
【００８１】
また、ステップＳ１５において、該当する音を発音するパートの有するチャンネル数が最低発音数より多いと判別された場合、その音を発音しなくてもそのパートの最低発音数は維持できるので、該当する音を発音しない予定の音として選択し（ステップＳ１９）、選択した音に対応する音データを再生中止音データとして決定する。そして、チャンネル開放手段５７は、選択した音を発音しないこと、即ち再生中止音データを再生しないことで、チャンネルを１つ開放する（ステップＳ２０）。ここで選択された音は、それまでＢＧＭを構成する音として発音されていた音であるので、その音の再生を中止することにより、ＣＰＵ１はチャンネルを１つ開放し、再生中止音データ決定処理を終了する。
【００８２】
こうして、再生中止音データ決定処理が終了すると、処理は図６に示すメインルーチンへ戻り、音データ再生手段５８は音データ再生処理を行う（ステップＳ５）。音データ再生処理は、再生予定音データに基づいて、再生中止音データ決定処理によって開放されたチャンネルを使って、次に再生する予定の音データを再生する。なお、次に再生する予定の音データが、再生中止音データ決定処理によって、再生中止音データに決定されている場合には、その音の音データ再生処理は行わないことになる。
【００８３】
また、チャンネル確認処理（ステップＳ３）において、空きチャンネルがあると判断された場合、再生中止音データ決定処理を行わず、音データ再生手段５８が再生予定音データに基づいて、ゲーム音データ再生処理を行う。
【００８４】
そして、再生完了確認手段５９は、ゲーム音データの再生が完了したか否かを判断する（ステップＳ６）。ゲーム音データの再生が全て完了していれば、音データ再生処理を終了する。一方、ゲーム音データの再生が完了していなければ、再び、ゲーム音データ再生処理を行う。具体的には、プレイヤーがゲームを続行しており、ＢＧＭや効果音等のゲーム音データを再生する必要がある場合、各手段はゲーム音データ再生処理を継続する。
【００８５】
次に、本発明を適用した例について、再生中止音データ決定処理（ステップＳ４）を中心として具体的に説明する。
【００８６】
例えば、ゲーム進行中のある時点で、ＢＧＭのゲーム音データの小節Iにおいて、サックスパートが「Ｃメジャーコード」の構成音「Ｅ」、「Ｇ」を発音し、ベースパートが「Ｃメジャーコード」の構成音「Ｅ」、「Ｇ」を発音し、ピアノパートが「Ｃメジャーコード」の構成音「Ｅ」、「Ｇ」、「Ｃ」を発音していたとする。この場合、サックス、ベース、ピアノパートの発音により使用されているチャンネル数は７つである。なお、ゲーム音データを再生するゲーム装置の音源装置が搭載するチャンネル数は９つであるものと仮定する。
【００８７】
ここで、ＢＧＭの小節Iと同時に３つの効果音のゲーム音データを再生することになり、効果音を再生するために３つのチャンネルが必要になったとする。ゲーム装置の搭載する音源のチャンネル数は９つであり、ＢＧＭによって使用されているチャンネル数は７つであるため、空きチャンネルは２つしかない。そのため、ＢＧＭとしてサックス、ベース、ピアノパートが発音している音のうち１つを発音しない音とし、チャンネルを効果音のために１つ開放する必要がある。この場合、図７に示す、再生中止音データ決定処理（ステップＳ４）が行われる。
【００８８】
まず、ステップＳ１０において、コード構成音に重複があるか否かを判断する。本例では、サックス、ベース、ピアノパートにおいて「Ｃメジャー」の構成音「Ｅ、Ｇ」が重複している。そこで、ステップＳ１１へ進み、コード優先順位選択手段５３は図２（ａ）に示すコード優先テーブル（重複あり）から最も優先順位の低い音を選択する。本例では、「Ｃメジャー」の構成音「Ｅ、Ｇ」が重複しており、コード優先テーブル（重複あり）に基づくと、「Ｇ」が最も優先順位の低い音として選択することになる。
【００８９】
次に、処理はステップＳ１２へ進み、コード優先順位選択手段５３は、選択した音が複数存在するか否かを判断する。本例で選択した「Ｇ」は、サックス、ベース、ピアノの３つのパートで重複して発音されているので、複数存在すると判断される。そこで、処理はステップＳ１３へ進み、パート優先順位選択手段５４は図３に示すパート優先テーブルから最もパート優先順位の低いパートの音を選択する。パート優先テーブルの小節Iにおけるサックス、ベース、及びピアノのパート優先順位を比較すると、サックスが１、ベースが２、ピアノが３である。即ち、ピアノの優先順位が最も低く、ステップＳ１３では、パート優先順位選択手段５４は最も優先順位の低いパートの音として、ピアノパートの「Ｇ」の音を選択することになる。
【００９０】
次に、処理はステップＳ１５へ進み、選択した音を発音するパートの有するチャンネル数が最低発音数より多いか否かを判断する。パート優先テーブルの小節Iにおいて、ピアノパートの最低発音数は３である。本例では、ピアノパートは「Ｃメジャー」の構成音「Ｅ」、「Ｇ」、「Ｃ」を発音しており、３つのチャンネルで発音している。即ち、選択した音を発音するピアノパートの有するチャンネル数は最低発音数と同じ数なので、処理はステップＳ１６へ進む。これは、ピアノパートの「Ｇ」の音を発音しない音として決定し、チャンネルを開放すると、ピアノパートの発音数が２つとなり、最低発音数を下回ってしまうからである。最低発音数を下回ると、十分に発音することができず、ゲーム音楽に違和感を与える可能性が高い。よって、できるだけ各パートが最低発音数を維持するように発音しない音を決定する。
【００９１】
ステップＳ１６では、パート優先順位選択手段５４は選択した「Ｃメジャー」の「Ｇ」の音が他のパートでも発音されているか否かについて判別する。本例では、「Ｃメジャー」の「Ｇ」の音は、サックス及びベースパートでも発音されているので、ステップＳ１７へ進む。そして、同じループ内で過去に抽出したパート以外で最もパート優先順位の低いパートの音を選択する。ここで、過去に抽出したパートとはピアノパートのことである。即ち、「Ｃメジャー」の「Ｇ」の音を発音している、ピアノ以外のパートで最もパート優先順位の低いパートの音として、ベースパートの「Ｇ」の音が選択される。
【００９２】
そして、処理は再びステップＳ１５へ進み、ベースパートの現在の発音数が最低発音数より多いか否かを判断する。パート優先テーブルの小節Iにおいて、ベースパートの最低発音数は１である。本例では、ベースパートは「Ｃメジャー」の構成音「Ｅ、Ｇ」を発音しており、２つのチャンネルで発音している。即ち、選択した音を発音するベースパートの有するチャンネル数は最低発音数より多いので、処理はステップＳ１９へ進み、ベースパートの「Ｇ」の音を発音しない予定の音として決定する。即ち、ＢＧＭの小節Iにおいてベースパートの「Ｃメジャー」の構成音「Ｇ」の音に対応する音データを、再生中止予定音データに決定する。
【００９３】
ステップＳ２０では、決定したベースパートの「Ｇ」の音を発音しないことでチャンネルを１つ開放する。これにより、ＢＧＭの再生に使用するチャンネル数が６に減り、新たな効果音を３チャンネルで再生することにより、ゲーム装置の有する総チャンネル数９個で新たな効果音を含めたゲーム音データを再生することができるようにある。よって、開放されたチャンネルを使用して効果音のゲーム音データに対応する音を発音する。
【００９４】
以上説明したように、本発明によるゲーム音データ再生処理では、まず、コード優先順位選択手段５３は、現在再生中の音データ及び次に再生する予定の音データの中で、構成音が重複しているか否かを判断し、その後、コード優先テーブルに基づいて、最も優先順位の低い音を選択する。コード優先テーブルは、図２（ａ）に示すコード優先テーブル（重複あり）、及び、図２（ｂ）に示すコード優先テーブル（重複なし）の２種類を有し、それぞれが音楽的見地に基づいて設定されている。よって、構成音が重複している場合、及び、構成音が重複していない場合共に、音楽的見地から最も優先度の低く、ゲーム音楽への影響が少ない音を再生しない音として選択することができる。
【００９５】
また、構成音が重複しており、且つ、重複した音が複数のパートで発音されている場合、パート優先順位選択手段５４は、図３に示すパート優先テーブルに基づいて、最も優先順位の低いパートの音を選択する。パート優先テーブルは、１つのゲーム音データ中で常に一定ではなく、小節毎にコード進行などの音楽的見地から分析をして、パート優先度及び最低発音数を設定している。よって、構成音が重複して、複数のパートで発音されている場合、その中で最も優先度が低く、ゲーム音楽への影響が少ないパートの音を発音しない音として選択することができる。
【００９６】
[第１の変形例]
上記の実施形態においては、効果音及びＢＧＭの経過音は再生中止音データ決定処理の対象外としている。しかし、効果音及びＢＧＭの経過音にもパート優先順位及び最低発音数を音楽的見地から設定することで、全ての音データの再生予定音データ及び再生中音データを対象として、ゲーム音データ再生処理をすることも可能である。
【００９７】
これにより、複数の効果音に対応する複数の音データを同時に再生することによって、ＢＧＭに対応する音データを再生していないにも関わらず、ＳＰＵ６の有するチャンネル数が足りなくなった場合にも本発明を適用することができる。
【００９８】
[第２の変形例]
また、別の例として、ゲーム音データ再生処理において、最も優先度の低い音を選択した際、パートの最低発音数は考慮せずに、発音しない音の選択、即ち再生中止音データの決定をすることもできる。これによれば、ゲーム音データの小節毎の音楽的見地からの分析に基づくパート毎の最低発音数を設定する必要がないため、ゲームプログラムの量を少なくすることができる。また、再生中止音データ決定処理において、再生中止音データの決定をする際に、最低発音数を判断する必要がないため、最低発音数を判断する場合よりも迅速に再生中止音データの決定をすることができる。
【００９９】
【発明の効果】
以上説明したように、本発明によれば、ゲーム装置の音源が有するチャンネル数の制限といったハードウェアの制約により、全ての音データを再生できない場合、音楽的見地から設定された優先順位に基づいて再生しない音データを決定するので、その音データを再生しないことによるゲーム音楽への影響を極力少なくすることができる。
【０１００】
また、１つのゲーム音データにおいて、パート優先順位及び最低発音数は常に一定ではなく、曲の小節毎に音楽的見地から分析して設定されている。すなわち、１つのゲーム音データにおいて常に一定の設定がされている場合よりも、音データを再生しないことによるゲーム音楽への悪影響をさらに軽減することができる。よって、音源のチャンネル数の制限といったハードウェア上の制約により再生しない音データを決定する場合、個々のゲーム音楽において小節毎に音楽的見地から設定された優先順位に基づいて再生しない音データを決定するので、その音データを再生しないことによるゲーム音楽への影響を極力少なくすることができる。
【図面の簡単な説明】
【図１】本発明が適用されたゲーム装置の制御系ブロック図である。
【図２】コード優先テーブルの例である。
【図３】パート優先テーブルの例である。
【図４】本発明に適用される楽譜の例である。
【図５】本発明のプログラムにより実現される機能のブロック図である。
【図６】ゲーム音データ再生処理を示すフローチャートである。
【図７】図６のゲーム音データ再生処理に含まれる再生中止音データ決定処理を示すフローチャートである。
【符号の説明】
１      ＣＰＵ
２      ＲＯＭ
３      ＲＡＭ
４      ＧＰＵ
５      フレームバッファ
６      ＳＰＵ
７      サウンドバッファ
８      ＤＶＤ−ＲＯＭ読取装置
９      モニタ
１０ａ  右チャンネルスピーカ
１０ｂ  左チャンネルスピーカ
１１    通信制御デバイス
１２    コントローラ
１３    補助記憶装置
１４    バス
１５    ＤＶＤ−ＲＯＭ
１６    ゲーム機本体
２１    コード
２２    パート
２３    小節
３０    ゲーム音データ
【図１】
0003667714.tif 000002
【図２】
0003667714.tif 000003
【図３】
0003667714.tif 000004
【図４】
0003667714.tif 000005
【図５】
0003667714.tif 000006
【図６】
0003667714.tif 000007
【図７】
0003667714.tif 000008