(57)【特許請求の範囲】
【請求項１】
ＣＰＵと、プレイヤが操作するコントローラと、楽曲及び効果音に対応するサウンドデータを記憶するメモリと、を備えるコンピュータに実行させるゲームプログラムであって、
前記サウンドデータは、前記楽曲に前記効果音が同期して発音すべき発音タイミングが発音処理単位を基準として定められており、
前記ＣＰＵに、
前記サウンドデータに基づいて再生した前記楽曲をスピーカから出力させるステップと、
前記コントローラを介して、仮想空間内を移動する移動ブロックを右移動、左移動又は回転させる操作入力のうち何れかを受け付けるステップと、
前記操作入力に基づき、前記移動ブロックを、右移動、左移動又は回転制御するステップと、
前記移動ブロックを落下制御するステップと、
前記移動ブロックと前記仮想空間内に堆積する堆積ブロックとを含むゲーム画像を表示装置に出力させるステップと、
前記移動ブロックと前記堆積ブロックとが整合した時点における効果音の発音タイミングを、前記サウンドデータに基づいて前記発音処理単位毎に開始するように決定するステップと、
決定された前記効果音の発音タイミングに基づいて、前記効果音を前記スピーカから出力させるステップと、
を実行させるためのゲームプログラム。
【請求項２】
ＣＰＵと、プレイヤが操作するコントローラと、楽曲及び効果音に対応するサウンドデータを記憶するメモリと、を備えるコンピュータに実行させるゲームプログラムであって、
前記サウンドデータは、前記楽曲に前記効果音が同期して発音すべき発音タイミングが発音処理単位を基準として定められており、
前記ＣＰＵに、
前記サウンドデータに基づいて再生した前記楽曲をスピーカから出力させるステップと、
前記コントローラを介して、仮想空間内を移動する移動ブロックを移動又は回転させる操作入力を受け付けるステップと、
前記操作入力に基づき、前記移動ブロックを、移動又は回転制御するステップと、
前記移動ブロックを落下制御するステップと、
前記移動ブロックと前記仮想空間内に堆積する堆積ブロックとを含むゲーム画像を表示装置に出力させるステップと、
前記移動ブロックと前記堆積ブロックとが整合した時点における効果音の発音タイミングを、前記サウンドデータに基づいて前記発音処理単位毎に開始するように決定するステップと、
決定された前記効果音の発音タイミングに基づいて、前記効果音を前記スピーカから出力させるステップと、
を実行させるためのゲームプログラム。
【請求項３】
仮想空間内で移動体の移動を制御するための操作入力を受け付ける操作手段と、
楽曲及び効果音に対応するサウンドデータを記憶する記憶手段と、
前記操作手段及び前記記憶手段を制御する制御手段と、を備えるコンピュータに実行させるゲームプログラムであって、
前記サウンドデータは、前記楽曲に前記効果音が同期して発音すべき発音タイミングが発音処理単位を基準として定められており、
前記制御手段に、
前記サウンドデータに基づいて再生した前記楽曲をスピーカから出力させるステップと、
前記操作手段を介して前記移動体を制御するための操作入力を受け付けるステップと、
前記操作入力に基づき前記移動体を制御するステップと、
前記制御された移動体を含むゲーム画像を表示装置に出力させるステップと、
前記移動体の制御に応じて前記効果音の発音要因が成立したか否かを判定するステップと、
前記効果音の前記発音要因が成立した時点での効果音の発音を前記発音処理単位毎に開始するように発音タイミングを合わせるステップと、
前記効果音を前記スピーカから出力させるステップと、
を実行させるためのゲームプログラム。
【請求項４】
ＣＰＵと、プレイヤが操作するコントローラと、楽曲及び効果音に対応するサウンドデータを記憶するメモリと、を備えるゲーム装置であって、
前記サウンドデータは、前記楽曲に前記効果音が同期して発音すべき発音タイミングが発音処理単位を基準として定められており、
前記ＣＰＵは、
前記サウンドデータに基づいて再生した前記楽曲をスピーカから出力させる手段と、
前記コントローラを介して、仮想空間内を移動する移動ブロックを右移動、左移動、又は回転させる操作入力のうち何れかを受け付ける手段と、
前記操作入力に基づき、前記移動ブロックを、右移動、左移動、又は回転制御する手段と、
前記移動ブロックを落下制御する手段と、
前記移動ブロックと前記仮想空間内に堆積する堆積ブロックとを含むゲーム画像を表示装置に出力させる手段と、
前記移動ブロックと前記堆積ブロックとが整合した時点における効果音の発音タイミングを、前記サウンドデータに基づいて前記発音処理単位毎に開始するように決定する手段と、
決定された前記効果音の発音タイミングに基づいて、前記効果音を前記スピーカから出力させる手段と、
を備えるゲーム装置。
【請求項５】
ＣＰＵに、
仮想空間内の移動ブロックと堆積ブロックとを含むゲーム画像をゲーム画面として表示装置に出力させるステップと、
前記仮想空間内で前記移動ブロックを移動又は回転制御するための操作入力を、コントローラを介して受け付けるステップと、
楽曲と効果音とに対応し、該楽曲に該効果音が同期して発音すべき発音タイミングが発音処理単位を基準として定められたサウンドデータを記憶するメモリから前記サウンドデータを読み出して、再生した前記楽曲をスピーカから出力させるステップと、
前記コントローラを介して、前記移動ブロックを右移動させる操作入力、前記移動ブロックを左移動させる操作入力、前記移動ブロックを回転させる操作入力のうち何れかを受け付けるステップと、
前記操作入力に基づき、前記移動ブロックを、右移動、左移動、又は回転制御するステップと、
前記移動ブロックを落下制御するステップと、
前記制御される移動ブロックと、前記堆積ブロックとを含むゲーム画像を前記表示画面に表示するステップと、
前記移動ブロックと前記堆積ブロックとが整合した時点における効果音の発音タイミングを、前記サウンドデータに基づいて前記発音処理単位毎に開始するように決定するステップと、
決定された前記効果音の発音タイミングに基づいて、前記効果音を前記スピーカから出力させるステップと、
を実行させる効果音の出力方法。
【請求項６】
請求項１乃至請求項３のうち何れか１項に記載のゲームプログラムを記録するコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は効果音やセリフ（台詞）等の音声やＢＧＭ等の音楽を含む音響の発音開始タイミングを調整する技術に関し、特に、演奏者に過度の負担をかけずに簡単な操作で適切な音楽的タイミングで音響の発音処理を可能とする改良技術に関する。
【０００２】
【従来の技術】
従来のゲーム装置においては、画面に表示する動画とともに場面に対応したＢＧＭ（Back Ground Music）を出力して臨場感を高めている。例えば、三次元座標で構成される仮想空間に種々の物体や仮想上の人物を配置して仮想ゲーム空間を形成し、ゲームの主人公がゲーム空間を自由に移動してゲームを展開する際にＢＧＭとして場面に対応した音楽を出力している。また、車両の競争ゲームでは、エンジン音やスリップ音、衝突音等がゲーム展開に対応して発生するように構成されている。このため、ゲームストーリーを記述するプログラムには予めゲーム展開に応じて表示すべき画面とこの画面に対応する音楽、音声、効果音等の音響信号の出力パターンが記述されている。
【０００３】
【発明が解決しようとする課題】
しかし、従来のゲーム装置において出力されるＢＧＭは予めゲームプログラムに記述されているものであり、ゲームの進行に伴って出力されるＢＧＭが変わるように構成されてはいるが、これは単にゲーム場面等に応じて出力されるＢＧＭを切り換えているだけであり、プレイヤー（遊戯者若しくは演奏者）によるゲーム中のコントローラの入力操作がそのままＢＧＭ生成に反映されるという配慮はなされていなかった。
【０００４】
また、ゲーム処理上の爆発音などの効果音は爆発映像などの表示画像に同期するように予め設定されたタイミングで出力されていた。ＴＶ等の情報の流れが一方向のみでない、遊戯者が操作するインタラクティブなゲームにおいて、効果音の出力タイミングを他のタイミングに合わせて制御して遊戯者の操作をリズミカルにするようなことは出来なかった。
【０００５】
ゲームの進行状況やプレイヤーの入力操作に対応してＢＧＭを自動的に生成することができれば、プレイヤーとＢＧＭとの一体感が増し、ゲームをしながらあたかも演奏をしているかのような感覚をプレイヤーに与えることができる。このときに重要となるのは、プレイヤーに対してＢＧＭ生成に関して過大な負担を負わせないことである。ＢＧＭ生成のためにプレイヤーに対して複雑な入力操作や入力タイミングを要求すると、通常の楽器演奏と同等の難易度を要求することになるため、ゲームを楽しみながらプレイヤーが気楽にＢＧＭ生成を楽しむことはできない。
【０００６】
そこで、本発明は複雑な入力操作を必要とせずに遊戯者が気楽にＢＧＭを作曲できるＢＧＭ生成技術を提案することを課題とする。さらに、本発明は効果音等の音響信号出力タイミングを音楽的に適切なタイミングに調整し、調和のとれたサウンド環境を実現するための技術を提案することを課題とする。
【０００７】
【課題を解決するための手段】
上記の課題を解決するべく、本発明では音響生成の起因となる発音要因を検出し、該発音要因が発生した時点で再生されている音楽の進行タイミングに基づいて、前記発音要因に対する音響の発音開始タイミングを決定する。これにより、ＢＧＭ等の音楽の進行タイミングに同期して効果音等が発音処理されるため、調和のとれたサウンド環境を提供することができる。
【０００８】
また、本発明ではゲーム状況に対応した伴奏を生成し、メロディ生成の起因となる発音要因を検出して、該発音要因が発生した時点での伴奏の進行タイミングに基づいて、前記発音要因に対する発音開始タイミングを決定することでメロディを生成する。これにより、ゲーム状況に応じて自動的に伴奏が生成されるため、遊戯者は複雑な操作をしなくてもゲーム状況に応じたＢＧＭを作曲することができる。
【０００９】
また、本発明によれば上記の方法をコンピュータシステムに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体を提供することができる。コンピュータ読み取り可能な記録媒体として、例えば、光記録媒体（ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−Ｒ、ＰＤディスク、ＭＤディスク、ＭＯディスク等の光学的にデータの読み取りが可能な記録媒体）や、磁気記録媒体（フレキシブルディスク、磁気カード、磁気テープ等の磁気的にデータの読み取りが可能な記録媒体）、或いは半導体メモリ（ＤＲＡＭ等）や光メモリ等の記憶素子を備えたメモリカートリッジ等の可搬性記録媒体の他に、コンピュータ内部或いはメモリカード等に設けられる内部記憶装置、或いはハードディスクのような外部記憶装置等がある。
【００１０】
【発明の実施の形態】
以下、各図を参照して本実施形態について説明する。
【００１１】
図１はＢＧＭ生成機能を搭載したゲーム装置の機能ブロック図である。同図において、ゲーム装置２０はＣＤ−ＲＯＭドライブ２１、ゲーム処理部２２、画像表示処理部２３、メロディパラメータ生成部２４、伴奏パラメータ生成部２５、サウンド処理部２６、及びメロディ出力タイミング調整部２７を備えて構成されている。ゲーム処理部２２はＣＰＵ、ＲＡＭ、ＲＯＭ等のゲーム処理に必要な各種ハードウエアによって構成されており、ＣＤ−ＲＯＭドライブ２１を介してＣＤ−ＲＯＭ５０から供給されるゲームプログラムを読み取って実行する。
【００１２】
画像表示処理部２３はフレームバッファ、カラーＲＡＭ、エンコーダ等を含み、ゲーム処理部２２から供給されるコマンドデータに基づき、ＴＶモニタ３０に表示されるオブジェクトをポリゴン（モデル座標系で定義された頂点と稜線で構成される三次元図形）で表し、これをワールド座標系へのモデリング変換、所定のカメラ視点への視野変換、三次元クリッピング処理、陰線処理、テクスチャマッピング処理、シェーディング処理、表示優先処理等を行ってＴＶモニタ３０に表示している。
【００１３】
伴奏パラメータ生成部２５は伴奏パラメータ生成プログラムによって実現されるモジュールであり、ゲーム処理部２２から供給されるゲームパラメータに基づいて、予め登録されている伴奏要素の中から適当な伴奏要素を選択して伴奏パラメータを生成する。伴奏要素とは伴奏パートを構成する各種音楽要素であり、例えば、テンポ、調（キー）、コード、リズムパターン、伴奏パターン、エフェクトの種類、エフェクトのかかり具合等がある。伴奏パラメータとはサウンド処理部２６によって実際に再生処理される伴奏パートを構成する伴奏要素の組み合わせ情報である。また、ゲームパラメータとは伴奏に変化を与える起因となる要素であり、例えば、プレイヤーが獲得したスコア、ゲーム展開の速さ、プレイヤーキャラクタとエネミーキャラクタ（敵キャラクタ）との優劣、ゲーム画面の明るさ等の各種ゲーム状況に対応して設定される。伴奏パラメータ生成の具体的な手順については後述する。
【００１４】
メロディパラメータ生成部２４はメロディパラメータ生成プログラムによって実現されるモジュールであり、コントローラ１０を介して入力されるプレイヤーの操作情報と伴奏パラメータ生成部２５から出力される伴奏パラメータに基づいてメロディパラメータを生成する。メロディパラメータとはメロディを構成する音符の音階、発音開始時間、発音長等を規定するパラメータである。コントローラ１０を介して入力されるプレイヤーの操作情報には、例えば、スイッチを押した又は離した、レバーを倒した又は回した、マイクから音声を入力した等の情報がある。メロディパラメータ生成の具体的な手順については後述する。
【００１５】
サウンド処理部２６はサウンドＣＰＵ、サウンドメモリ、Ｄ／Ａコンバータ等を含んで構成されている。サウンド処理部２６はメロディパラメータ生成部２４及び伴奏パラメータ生成部２５から発行される発音リクエストに基づいてＢＧＭを作曲し、メロディと伴奏を再生処理する。サウンドメモリには予めメロディパラメータや伴奏パラメータに対応したサウンドデータ（ＭＩＤＩデータ等）が登録されており、サウンドＣＰＵはメロディパラメータや伴奏パラメータで指定されるタイミングで、ＤＳＰ機能に基づくエコー、リバーブ、コーラス等の特殊音響効果を実現し、音響信号をスピーカ４１，４２に出力する。サウンド処理部２６にて発音処理されるメロディや効果音等の音響信号の出力タイミングは発音タイミング調整部２７で調整される。
【００１６】
図２はゲーム装置２０における自動楽曲生成ステップを記述したフローチャートである。同図に示す各処理ステップは画像更新期間（例えば、６０分の１秒）に同期して繰り返し実行される。同フローチャートに示すように、自動楽曲生成ステップは、ゲーム処理部２２におけるゲーム処理ステップ（Ｓ１１）、伴奏パラメータ生成部２５における伴奏パラメータ生成ステップ（Ｓ１２）、メロディパラメータ生成部２４におけるメロディパラメータ生成ステップ（Ｓ１３）、及びサウンド処理部２６におけるＢＧＭ再生処理ステップ（Ｓ１４）から成る。以下、各処理ステップについて説明する。
【００１７】
ゲーム処理ステップ（Ｓ１１）
図７はゲーム画面の一例である。本ゲームは同図に示す仮想空間６３の右上から落下するＬ字型の移動ブロック６１の落下位置と落下姿勢を、コントローラ１０を操作することで制御し、移動ブロック６１の凹凸が堆積ブロック６２の凹凸と整合した際に得点が加算されるという内容のゲームである。図９はコントローラ１０の外観構成図である。コントローラ１０にはＡボタン１１、Ｂボタン１２、Ｘボタン１３、Ｙボタン１４、及び十字キー１５が配置されている。プレイヤーは十字キー１５を左右に傾けることで移動ブロック６１の位置を右或いは左に移動させ、落下位置を制御するとともに、Ａボタン１１等のボタン操作により移動ブロック６１を回転操作し、落下姿勢を制御する。
【００１８】
伴奏パラメータ生成ステップ（Ｓ１２）
伴奏パラメータ生成部２５はゲーム処理部２２からゲームパラメータを取得すると、例えば、ゲーム進行がプレイヤーに有利であるときには調をメジャーにし、ゲーム進行がプレイヤーに不利であるときには調をマイナーにする、プレイヤーにとっていいことがあった場合は明るいコードを多用する、ゲーム展開が単調なときはコード変化を少なくする、プレイヤーの操作頻度が高い場合にはテンポを早くする、ゲームが一段落した場合にはテンポを遅くする、プレイヤーに複雑な操作を要求する場面では複雑演奏パターンにする等の操作を行い、伴奏パラメータを生成する。
【００１９】
この他にも、例えば、ゲームがロールプレイングゲームや対戦ゲーム等の場合には、プレイヤキャラクタが明るいステージに移行した場合には明るい伴奏パターンを選択し、暗いステージに移行した場合には暗い演奏パターンを選択する、プレイヤキャラクタがエネミーキャラクタに囲まれたときには緊迫感のある伴奏パターンを選択し、エネミーキャラクタの囲みから脱出した場合には軽快な伴奏パターンを選択する、プレイヤキャラクタが狭いところにきた場合にはエコー等のエフェクトのかかり具合を強くし、プレイヤキャラクタが広いところにきた場合にはエコー等のエフェクトのかかり具合を弱くする、プレイヤキャラクタが立ち上がった、進行方向を変えた、ジャンプした、ダメージを受けた、アイテムを獲得した、アイテムを使用した、激しく動いた、ゆっくり動いた、ぐるぐる回った、小刻みに動いた、大きく動いた、転んだ等の動きに併せてテンポ、調、コード、リズムパターン、伴奏パターン等を変える等の操作を行い、伴奏パラメータを生成する。
【００２０】
尚、リズムパターンや伴奏パターンには後述するメロディパラメータ生成部２４にて生成された演奏パターンを使用してもよい。この場合には、該演奏パターンをメモリに保存しておき、頻度の高い演奏パターンを一定の割合で使用する。勿論、既存の楽曲を伴奏として使用することもできる。
【００２１】
メロディパラメータ生成ステップ（Ｓ１３）
メロディパラメータ生成部２４はコントロールパッド１０からのＡボタン１１、Ｂボタン１２、Ｘボタン１３、Ｙボタン１４、及び十字キー１５等の操作信号を取得すると、伴奏パラメータ生成部２５が生成する伴奏パラメータのその時点での調、コード、楽曲上の時間位置等の情報を基に音階、発音開始時間、及び発音長を決定する。図３はメロディ生成ステップのサブルーチンであり、音階候補決定ステップ（Ｓ２１）、音階補正処理ステップ（Ｓ２２）、発音開始時間決定ステップ（Ｓ２３）、及び発音長決定ステップ（Ｓ２４）から成る。以下、各処理ステップについて詳説する。
【００２２】
音階候補決定ステップ（Ｓ２１）
本処理ステップにおいて、メロディパラメータ生成部２４はプレイヤーのコントロールパッド１０に対するキー操作を画像更新期間に同期したタイミングで監視し、キー操作を検出すると、該キー操作に対応する音階候補を決定する。図８に示すように、伴奏の調のスケールに対して、音階の低い方から順に番号（音階値）が付与されている。同図の例では、ド（１度）、レ（２度）、ミ（３度）、ファ（４度）、ソ（５度）、ラ（６度）、シ（７度）である。同図に示すスケールはダイアトニック・スケールであるが、これに限られるものではなく、現在再生されている伴奏のスケールを基準に音階候補が決定される。
【００２３】
音階候補を決定する方法として、音階候補を相対値で決定する方法と絶対値で決定する方法がある。音階候補を相対値で決定する場合には、例えば、直前で発音した音階を基準にし、十字キー１５を右（或いは下）に傾けて移動ブロック６１を右（或いは下）に移動させると、音階値を１だけ低い値にし、十字キー１５を左（或いは上）に傾けて移動ブロック６１を左（或いは上）に移動させると、音階値を１だけ高い値にする等の処理をして音階候補を決定する。この他にも、例えば、Ａボタン１１に対してプラスの数値を設定し、Ｂボタン１２に対してマイナスの数値を設定することで音階候補を決定してもよく、アナログキー（図示せず）を右回転したときにマイナスの値を設定し、左回転したときにプラスの値を設定することで音階候補を決定してもよい。音階値を相対値で決定することにより、音階値の取り得る数値の範囲が狭くて済むといったメリットや、直前の音階から大きくはずれることがないため、メロディの継続性を保持することができるといったメリットがある。
【００２４】
音階候補を絶対値で決定する場合には、例えば、Ａボタン１１に対して２度の音階値を、Ｂボタンに対して３度の音階値を、Ｘボタン１３に対して５度の音階値を、Ｙボタン１４に対して７度の音階値をそれぞれ割り当てることで音階候補を決定する。この他にも、例えば、仮想空間６３を複数の領域に分割し、該領域毎に音階値を設置しておくことで、移動ブロック６１が移動した位置の属する領域に対応した音階候補を決定するように構成してもよい。音階値を絶対値で決定することにより、一般の楽器演奏に近い音楽制御が楽しめるといったメリットがある。
【００２５】
音階補正処理ステップ（Ｓ２２）
本処理ステップにおいて、メロディパラメータ生成部２４は上記の手法で暫定的に決定した音階候補が楽曲に対して音楽理論的に適合する音階であるか否かを判定し、音楽理論的に適合しない場合にはその時点での伴奏の調、コード等と照らし合わせて適切な周波数の音階に補正する。図４は音階補正処理ステップのサブルーチンを示すフローチャートである。同図に示すように、音階候補がコードを構成する音であれば（Ｓ３１；ＹＥＳ）、発音しても問題はないため、発音バッファに登録する（Ｓ３５）。音階候補がコードを構成する音でない場合には（Ｓ３１；ＮＯ）、そのまま発音するのは問題があるため、以下に述べる補正処理を行う。音階候補の発音タイミングが表拍である場合には（Ｓ３２；ＮＯ）、音階候補を最も周波数の近いコードの構成音に補正し（Ｓ３４）、発音バッファに登録する（Ｓ３５）。音階候補の発音タイミングが裏拍である場合には（Ｓ３２；ＹＥＳ）、直前の音がコードの構成音がどうかをチェックする（Ｓ３３）。コードの構成音でない場合には（Ｓ３３；ＮＯ）、音階候補を最も周波数の近いコードの構成音に補正し（Ｓ３４）、発音バッファに登録する（Ｓ３５）。コードの構成音である場合には（Ｓ３３；ＹＥＳ）、発音バッファに登録する（Ｓ３５）。
【００２６】
発音開始時間決定ステップ（Ｓ２３）
本処理ステップにおいて、メロディパラメータ生成部２４はメロディの発音時間を決定する。メロディの発音開始時間を決定する方法として、プレイヤーのコントロールパッド１０に対するキー操作があった時点で発音処理する方法（直接発音処理）と、伴奏の進行タイミングに合わせて発音時間の調整を行った上で発音処理する方法（発音開始時間調整処理）の２つがある。直接発音処理の方法によれば、プレイヤーのキー操作と発音タイミングが一致しているため、プレイヤーは通常の楽器演奏と同等の演奏感覚を楽しむことができる。
【００２７】
図１０は発音開始時間調整処理の説明図である。同図において、時刻ｔ1，ｔ3，ｔ4，ｔ6，ｔ7は伴奏に同期したメロディの発音タイミングであり、４分音符単位、８分音符単位、１６音符単位等の処理単位を基準として定められている。時刻ｔ2において入力されたキー操作に対応するメロディの発音処理はその時点で実行されるのではなく、直近のメロディの発音タイミングである時刻ｔ3まで保留された後、発音処理されるように遅延時間（ｔ3-ｔ2）が設定される。同様に、時刻ｔ5において入力されたキー操作に対応するメロディの発音処理はその時点で実行されるのではなく、直近のメロディの発音タイミングである時刻ｔ6まで保留された後、発音処理されるように遅延時間（ｔ6-ｔ5）が設定される。このように、キー操作があった時点で発音するのではなく、伴奏毎に予め定められたメロディの発音タイミングで発音するようにメロディの発音開始時間を設定することで、プレイヤーに過度の負担をかけずにゲームプレイを楽しみながら気楽に楽曲を作成することができる。
【００２８】
発音長決定ステップ（Ｓ２４）
本処理ステップにおいて、メロディパラメータ生成部２４はメロディの発音長を決定する。発音長の決定については、次のキー操作があった時点で発音処理を終了する、現在発音しているメロディが含まれる小節が終了した時点或いはこれに相当する音楽的タイミングになった時点で発音処理を終了する、等の方法がある。但し、継続性の低い音色を使用する場合には、必ずしも発音長を指定する必要はない。
【００２９】
ＢＧＭ再生処理ステップ（Ｓ１４）
本処理ステップにおいて、サウンド処理部２６はメロディパラメータ生成部２４から供給されるメロディパラメータと、伴奏パラメータ生成部２５から供給される伴奏パラメータと、発音タイミング調整部２７から供給される発音要因とその発音処理単位に基づいてＢＧＭの再生処理を行う。メロディの発音タイミングは伴奏の進行タイミングに同期するように、発音タイミング調整部２７にて調整される。発音タイミング調整部２７はバッファメモリ２８を備えており、コントロールパッド１０から供給されるプレイヤの操作信号、即ち、発音要因を取得して、その発音要因に対応する発音処理単位をバッファメモリ２８に書き込む。発音処理単位は、例えば、１／４音符単位、１／８音符単位、１／１６音符単位等で定められる。
【００３０】
図５はメロディの発音タイミングを調整する処理ステップを記述したフローチャートである。同図に示す各処理ステップは画像更新期間（例えば、１／６０秒）に同期して繰り返し実行される。発音タイミング調整部２７はコントロールパッド１０から供給される発音要因を検出すると（Ｓ４１；ＹＥＳ）、その発音要因の種類と発音処理単位をバッファメモリ２８に書き込む（Ｓ４２）。バッファメモリ２８に書き込まれるデータは図６のようになる。同図に示すように、Ａボタン１１のキー入力に対して１／８音符の処理単位が与えられ、Ｂボタン１２のキー入力に対して１／８音符の処理単位が与えられている。また、Ｘボタン１３のキー入力に対して１／４音符の処理単位が与えられ、Ｙボタン１４のキー入力に対して１／４音符の処理単位が与えられている。
【００３１】
発音タイミング調整部２７は伴奏パラメータ生成部２５から供給されるメロディの発音タイミングの情報を取得し、発音タイミングになると（Ｓ４３；ＹＥＳ）、バッファメモリ２８から発音要因と発音処理単位を読み出し、サウンド処理部２６に出力する（Ｓ４４）。サウンド処理部２６に供給されたこれらのデータはバッファメモリ２８から消去される。以上の処理ステップにより、サウンド処理部２６にてＢＧＭが生成される。
【００３２】
尚、上記の説明ではメロディパラメータ生成ステップ（Ｓ１３）において、音階、発音開始時間、及び発音長を決定したが、この他にも例えば、音質の制御、音量の制御、音色の制御、サブメロディの生成等をメロディパラメータに付加してもよい。音質の制御には、例えば、プレイヤキャラクタが機敏に動くと硬い音質になる、ゆったりと動くと柔らかい音質になる、プレイヤキャラクタが明るいところに出るとキラキラした音色になる、プレイヤキャラクタがぐるぐる回るとピッチが微妙に変化する音色になる、伴奏の音質に合わせて音色が変化する等の制御がある。
【００３３】
音量の制御には、例えば、プレイヤキャラクタが激しく動き回ると音量が上がる、プレイヤキャラクタの動きが鈍いと音量が下がる、ゲームスコアが上がると音量が上がる、伴奏の音量に合わせて音量を調整する等の制御がある。音色の制御には、例えば、ステージが変わると楽器（ピアノ、ギター、バイオリン等）も変わる、プレイヤキャラクタが変わると楽器も変わる、プレイヤキャラクタがパワーアップすると楽器が変わる等の制御がある。サブメロディの生成処理には、例えば、ゲームがラストステージ等の特殊な状態になったときに、音階が３度（或いは５度）高い（或いは低い）サブメロディを重ねる等の処理がある。
【００３４】
また、上記の処理ステップで生成したメロディをメモリに保存しておき、プレイヤの操作を伴わないところで再生処理するように構成してもよい。例えば、移動ブロック６１を左右に移動させたときに生成されたメロディをメモリに保存しておき、移動ブロック６１が仮想空間６３内を落下する際、或いは堆積ブロック６２の凹凸が移動ブロック６１の凹凸と整合して得点が加算された際に該メロディを再生処理する等である。
【００３５】
以上、説明したように、本実施形態によれば、プレイヤが「自分の操作によって楽曲が生成される」ということを必要以上に意識せずに通常のゲーム操作を行いつつ、簡単なキー操作だけでその場のゲームの状況に応じたＢＧＭを自動生成することができる。また、上記の説明ではプレイヤの操作によってゲームのＢＧＭが作成される場合を例示したが、本発明はこれに限定されるものではなく、例えば、音楽ゲームとして作成される楽曲自体の優劣を競う形態、楽器として既存曲のメロディや伴奏のアレンジを簡単に行う形態、電話回線などの通信ネットワークを介して多人数で合奏（セッション）をする形態、作曲ツールとして簡単にユーザの意図に沿った楽曲を生成する目的で使用する形態等に利用することができる。
【００３６】
ここで、図１１を参照して、通信ネットワークを介して多人数で合奏をする形態について説明する。まず前提として、プレイヤーＡとプレイヤーＢの二人がそれぞれの家庭でモデムを介してゲーム装置を電話回線に接続し、ネットワーク経由で合奏するものとする。同図において、時刻ｔ1，ｔ4，ｔ6，ｔ8はメロディの発音タイミングである。一般にネットワーク経由でゲームプレイする場合、信号の遅延時間（タイムラグ）を考慮する必要があるため、各ゲーム装置は相手側のゲーム装置からの信号をバッファリングし、所定時間経過後にバッファから信号を読み出してゲーム処理を実行している。この遅延時間をＴ［msec］とすると、プレイヤによる操作信号はＴ［msec］後に各ゲーム装置で処理されることになる。
【００３７】
時刻ｔ2において入力されたキー操作は遅延時間Ｔ［msec］後の時刻ｔ3にプレイヤーＡ，Ｂのゲーム装置にてキー操作の操作信号として処理される。これらの信号は時刻ｔ1〜ｔ4の間にあるため、それぞれ時刻ｔ4にて発音処理される。一方、ネットワークに接続せずにスタンドアロンでゲームプレイする場合には、時刻ｔ2のキー操作は時刻ｔ4で発音処理されることになる。このように、本実施形態によれば、キー操作に対応するメロディの発音処理は予め定められたメロディの発音タイミングで発音するように処理されるため、ネットワークプレイ特有の遅延時間を吸収することができる。
【００３８】
但し、キー操作の入力時刻がメロディの発音タイミングのＴ［msec］以内である場合には上記遅延時間を吸収することはできない。例えば、プレイヤーＡが時刻ｔ5にキー操作をしたとする。（ｔ6-ｔ5）＜Ｔ［msec］の場合には、時刻ｔ5において入力されたキー操作はＴ［msec］後の時刻ｔ7にプレイヤーＡ，Ｂのゲーム装置にてキー操作の操作信号として処理される。これらの信号は時刻ｔ6〜ｔ8の間にあるため、それぞれ時刻ｔ8にて発音処理される。しかしながら、遅延時間Ｔ［msec］はメロディの発音タイミングの間隔に比べて無視できる程小さいため、実際上はネットワークプレイ特有の遅延時間をほぼ問題なく吸収することができる。
【００３９】
尚、上記の説明においては、メロディ生成の起因となる発音要因として、プレイヤーによるキー操作を例に説明したが、これに限らず、一定時間内に離散的に発生し、且つ複数の種類がある要因であれば特に限定されるものではない。例えば、ゲーム進行がプレイヤーに有利であるとき、ゲーム進行がプレイヤーに不利であるとき、プレイヤーにとっていいことがあった、ゲーム展開が単調になった、プレイヤーの操作頻度が多い、ゲームが一段落した、プレイヤーに複雑な操作を要求する場面になった、等のゲーム状況に対応して発音要因を定義してもよい。
【００４０】
この他にも、例えば、ゲームがロールプレイングゲームや対戦ゲーム等の場合には、プレイヤキャラクタが明るいステージに移行した、プレイヤキャラクタが暗いステージに移行した、プレイヤキャラクタがエネミーキャラクタに囲まれた、プレイヤキャラクタがエネミーキャラクタの囲みから脱出した、プレイヤキャラクタが狭いところにきた、プレイヤキャラクタが広いところにきた、プレイヤキャラクタが立ち上がった、プレイヤキャラクタが進行方向を変えた、プレイヤキャラクタがジャンプした、プレイヤキャラクタがダメージを受けた、プレイヤキャラクタがアイテムを獲得した、プレイヤキャラクタがアイテムを使用した、プレイヤキャラクタが激しく動いた、ゆっくり動いた、ぐるぐる回った、小刻みに動いた、大きく動いた、転んだ等の動きに併せて発音要因を定義してもよい。
【００４１】
また、上記の発音要因の種類に対して、予め音階を設定することもできる。例えば、プレイヤキャラクタが立ち上がった場合に、‘ド’の音階を設定し、プレイヤキャラクタが進行方向を変えた場合に、‘レ’の音階を設定する、プレイヤキャラクタがジャンプした場合に‘ミ’の音階を設定する等である。この他にも、ゲーム画面の明るさ、エネミーキャラクタの数、プレイヤの獲得ポイント等のようにゲーム進行に伴い適宜変化或いは更新するパラメータに対応してメロディの発音要因を定義してもよい。
【００４２】
また、ゲーム装置に接続する他のデバイスからの出力信号、例えば、音声入出力デバイス、デジタルカメラやスキャナ等の画像入出力デバイス等の出力信号を発音要因として定義してもよい。また、ゲームソフトウエアに対するこれら周辺機器（標準デバイス若しくは拡張デバイス等のペリフェラルデバイス）からの割り込み信号を発音要因として定義してもよい。周辺機器の例として、例えば、標準ゲームコントローラ、ジョイスティック、ステアリング、キーボード、マウス、銃型コントローラ、バックアップメモリ、ＴＶモニタ、セットトップボックス等がある。このように構成すれば、ゲーム進行に伴い適宜変化或いは更新するパラメータ、或いはプレイヤキャラクタ、エネミーキャラクタ等の各種キャラクタの行動、状態の変化、数の増減、獲得アイテム数、獲得ポイント等に同期してメロディが自動生成されることになる。
【００４３】
また、伴奏パラメータ生成ステップ（Ｓ１２）やメロディパラメータ生成ステップ（Ｓ１３）においては、ゲーム進行がプレイヤーに有利であるときには明るいメロディ若しくは伴奏、又はテンポの速いメロディ若しくは伴奏にし、ゲーム進行がプレイヤーに不利であるときには暗いメロディ若しくは伴奏、又はテンポの遅いメロディ若しくは伴奏にする、プレイヤーにとっていいことがあった場合は活気のあるメロディ若しくは伴奏にし、ゲーム展開が単調なときはメロディパターン若しくは伴奏パターンの変化を少なくする、プレイヤーの操作頻度が高い場合にはメロディ若しくは伴奏のテンポを早くする、ゲームが一段落した場合にはメロディ若しくは伴奏のテンポを遅くする、プレイヤーに複雑な操作を要求する場面では複雑なメロディパターン若しくは伴奏パターンにする等の操作を行い、メロディパラメータ及び伴奏パラメータを生成することもできる。
【００４４】
また、上記の説明においては、プレイヤーのキー操作に対応してＢＧＭを自動生成する場合を例示したが、本発明はこれに限らず、例えば、ＢＧＭの発音タイミングに同期して効果音を発音処理することもできる。効果音とは、例えば、シューティングゲームにおける爆発音、弾丸の発射音、レーシングゲームにおけるタイヤのスリップ音、エンジンの出力音、クラッシュ時の激突音、野球ゲームにおける打球音等のように、ゲームの臨場感や音響効果を高めるためのサウンドをいう。
【００４５】
効果音の発音タイミングについて、図１２を参照して説明する。効果音の発音タイミングを調整する手法は上述したメロディの発音開始時間を調整する手法と同様である。同図において、時刻ｔ1，ｔ3，ｔ4，ｔ6はＢＧＭに同期して効果音が発音するべきタイミングであり、４分音符単位、８分音符単位、１６音符単位等の処理単位を基準として定められている。ここでは、シューティングゲームにおける効果音として、弾丸の発射音と爆発音を例にとる。また、プレイヤーのキー入力と爆発処理を発音要因として定義し、キー操作と同時に弾丸の発射処理をするものとする。同図では時刻ｔ2においてプレイヤーのキー操作が行われている。通常のゲームにおいては、キー入力と同時に、即ち、時刻ｔ2において弾丸の発射音の発音処理をするのであるが、本発明においては時刻ｔ2において効果音の発音処理をするのではなく、直近の発音タイミングである時刻ｔ3まで発音処理が保留された後、発音処理が実行されるように遅延時間（ｔ3-ｔ2）が設定される。
【００４６】
また、同図では時刻ｔ5において爆発映像の表示処理が行われている。通常のゲームにおいては、爆発映像の表示処理と同時に、即ち、時刻ｔ5において爆発音の発音処理をするのであるが、本発明においては時刻ｔ5において効果音の発音処理をするのではなく、直近の発音タイミングである時刻ｔ6まで発音処理が保留された後、発音処理が実行されるように遅延時間（ｔ6-ｔ5）が設定される。このように、キー入力或いは爆発映像の表示処理がなされた時点で効果音を発音処理するのではなく、ＢＧＭ毎に予め定められた効果音の発音タイミングで発音するように効果音の発音開始時間を設定することで、プレイヤーに過度の負担をかけずにゲームプレイを楽しみながら気楽に楽曲を作成することができる。
【００４７】
尚、ＢＧＭに同期して効果音を出力する場合には、発音タイミング調整部２７はゲーム処理部２２からキー入力や爆発処理等の発音要因を取得し、該発音要因に対応する発音処理単位をバッファメモリ２８に書き込み、効果音の出力タイミングに同期してこれらのデータをサウンド処理部２６に供給するように構成する。基本的な処理ステップは図５に示す通りである。バッファメモリ２８に書き込まれるデータは図１３のようになる。同図に示すように、Ａボタン１１のキー入力に対して１／８音符の処理単位が与えられ、Ｂボタン１２のキー入力に対して１／８音符の処理単位が与えられている。また、爆発処理Ａに対して１／１６音符の処理単位が与えられ、爆発処理Ｂに対して１／１６音符の処理単位が与えられている。これにより、サウンド処理部２６はＢＧＭに同期して効果音を出力することができる。
【００４８】
尚、本明細書における「…部」、「…手段」は自動楽曲生成処理或いはＢＧＭ生成処理において実現されるモジュールであり、必ずしも特定のハードウエアやソフトウエアルーチンに１対１には対応してはいない。同一のハードウエア要素が複数の「…部」、「…手段」を実現する場合もあれば、複数のハードウエア要素の関連で１つの「…部」、「…手段」を実現する場合もある。
【００４９】
【発明の効果】
本発明にれば、演奏者に複雑な操作を要求せずに気楽にＢＧＭを作曲できる技術を提供することができる。また、本発明によれば、効果音等の音響信号出力タイミングをＢＧＭに同期して調整することで、調和のとれたサウンド環境を実現する技術を提供することができる。
【図面の簡単な説明】
【図１】本発明のＢＧＭ作曲機能を搭載したゲーム装置の機能ブロック図である。
【図２】ゲーム装置の動作の全体フローを記述したフローチャートである。
【図３】メロディパラメータ生成サブルーチンを記述したフローチャートである。
【図４】音階補正処理サブルーチンを記述したフローチャートである。
【図５】発音要因の発音タイミングを調整するステップを記述したフローチャートである。
【図６】メロディ生成の起因となる発音要因とその発音処理単位である。
【図７】ゲーム画面の一例である。
【図８】ダイアトニック・スケールに対応した音階値の説明図である。
【図９】コントロールパッドの外観構成図である。
【図１０】メロディの発音タイミングの説明図である。
【図１１】メロディの発音タイミングの説明図である。
【図１２】効果音の発音タイミングの説明図である。
【図１３】効果音生成の起因となる発音要因とその発音処理単位である。
【符号の説明】
１０…コントロールパッド、１１…Ａボタン、１２…Ｂボタン、１３…Ｘボタン、１４…Ｙボタン、１５…十字キー、２０…ゲーム装置、２１…ＣＤ−ＲＯＭドライバ、２２…ゲーム処理部、２３…画像表示処理部、２４…メロディパラメータ生成部、２５…伴奏パラメータ生成部、２６…サウンド処理部、２７…発音タイミング調整部、２８…バッファメモリ、３０…ＴＶモニタ、４１…スピーカ、４２…スピーカ、５０…ＣＤ−ＲＯＭ、６１…移動ブロック、６２…堆積ブロック、６３…仮想空間
【図１】
0004497264.tif 000002
【図２】
0004497264.tif 000003
【図３】
0004497264.tif 000004
【図４】
0004497264.tif 000005
【図５】
0004497264.tif 000006
【図６】
0004497264.tif 000007
【図７】
0004497264.tif 000008
【図８】
0004497264.tif 000009
【図９】
0004497264.tif 000010
【図１０】
0004497264.tif 000011
【図１１】
0004497264.tif 000012
【図１２】
0004497264.tif 000013
【図１３】
0004497264.tif 000014