(57)【要約】【課題】  例えば、競馬ゲームにおいて、表示装置に表示される画像と実況がずれ、また最悪の場合、重要な状況において実況が行われない実況漏れが起きていた。【解決手段】  事前の予測演算によって、状況予測を行うと共に、各状況に対し、予め優先度が設定された音声データを割り当て、実際に実況を行う際に、その優先度に応じた音声選択を行うプログラム等を提供する。予測演算によって、画像のタイミングに応じて音声を再生することができ、また、実況を行うべき状況に対し、高い優先度を与え、実況漏れを防止できる。【選択図】    図２
2006087620.tif 000002
【特許請求の範囲】
【請求項１】
移動体によって行われる競技シミュレーションゲームのプログラムを実行して、
競技の様子を表現する画像データを生成し、該画像データを出力して表示装置に前記競技の様子を表示し、
前記競技の様子を実況する音声データを構成し、該音声データを出力して音声再生装置を介して音声を再生するコンピュータであって、
予め、前記音声データが、該音声データの再生に要する再生時間と、再生されるべき順位の優劣を示す優先度と共に対応付けられ格納される記憶部を有するコンピュータを、
競技を行う前記移動体のゲーム展開を第一の期間先まで予測演算し、前記ゲーム展開における各状況に対応する複数の音声データを構築して前記記憶部に格納する予測演算手段と、
前記構築した複数の音声データの中から、前記第一の期間先までのゲーム展開における第一の状況に対応する第一の音声データを決定し、前記第一の音声データの再生完了時間を、該第一の音声データの前記再生時間より求め、前記再生完了時間から前記第一の期間より短い第二の期間先までのゲーム展開における第二の状況に対応する第二の音声データを、前記構築した複数の音声データの中から、前記優先度に基づいて選択する選択手段と、
前記ゲーム展開における各状況に基づく競技の様子を前記表示装置に表示するタイミングに合わせて、前記第一の音声データが再生された後、前記第二の状況に対応する第二の音声データが再生されるよう、前記第一の音声データ及び第二の音声データを前記記憶部から読み出して前記音声再生装置に出力する合成手段として機能させるためのプログラム。
【請求項２】
請求項１において、
前記記憶部に格納される音声データには、更に、該音声データの再生の際、再生開始時間を前後にずらすことが可能な範囲を示すシフト時間が対応付けられており、
前記合成手段は、前記第一の音声データの前記再生完了時間と前記第二の音声データに対応する前記第二の状況が発生する発生時間との間に、空白期間が存在する場合、該空白期間以下となる前記再生時間を持つ第三の音声データを前記記憶部から検索し、前記第三の音声データの前記発生時間及び前記シフト時間に基づき、前記第三の音声データを前記第一の音声データの後に再生可能かを判定し、再生可能と判定される場合、該第三の音声データが、前記第一の音声データと前記第二の音声データの間に再生されるよう、該第三の音声データを前記記憶部から読み出して前記音声再生装置に出力することを特徴とするプログラム。
【請求項３】
請求項２において、
前記優先度が高い音声データほど、該音声データに対応付けられる前記シフト時間が短くなることを特徴とするプログラム。
【請求項４】
請求項１において、
前記記憶部に格納される音声データには、更に、ある音声データが再生されると、別の音声データの再生が誘発される親子関係を、前者を親データとして、後者を子データとして識別する情報が対応付けられており、
前記選択手段は、前記第一の音声データが前記親データとして識別される場合、前記第二の音声データとして、前記親データと親子関係にある前記音声データを選択することを特徴とするプログラム。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記競技シミュレーションゲームは、仮想空間内に配置された複数の移動体によるレースを行う競馬ゲームであって、
前記コンピュータは、前記複数の移動体を前記仮想空間に配置された仮想視点から見た画像データを生成し、
前記予測演算手段は、前記第一の期間として、一つのレースにおけるスタートからゴールまでの予測演算を行うことを特徴とするプログラム。
【請求項６】
移動体によって行われる競技シミュレーションゲームのプログラムを実行して、競技の様子を表現する画像データを生成し、該画像データを出力して表示装置に前記競技の様子を表示し、
前記競技の様子を実況する音声データを構成し、該音声データを出力して音声再生装置を介して音声を再生するゲーム装置において実行されるゲーム処理方法であって、
予め、前記音声データが、該音声データの再生に要する再生時間と、再生されるべき順位の優劣を示す優先度と共に対応付けられ前記ゲーム装置の記憶部に格納されており、
競技を行う前記移動体のゲーム展開が第一の期間先まで予測演算され、前記ゲーム展開における各状況に対応する複数の音声データが構築されて前記記憶部に格納される予測演算工程と、
前記構築した複数の音声データの中から、前記第一の期間先までのゲーム展開における第一の状況に対応する第一の音声データが決定され、前記第一の音声データの再生完了時間が、該第一の音声データの前記再生時間より求められ、前記再生完了時間から前記第一の期間より短い第二の期間先までのゲーム展開における第二の状況に対応する第二の音声データが、前記構築した複数の音声データの中から、前記優先度に基づいて選択される選択工程と、
前記ゲーム展開における各状況に基づく競技の様子を前記表示装置に表示するタイミングに合わせて、前記第一の音声データが再生された後、前記第二の状況に対応する第二の音声データが再生されるよう、前記第一の音声データ及び第二の音声データが前記記憶部から読み出されて前記音声再生装置に出力される合成工程とを有することを特徴とするゲーム処理方法。
【請求項７】
請求項６において、
前記記憶部に格納される音声データには、更に、該音声データの再生の際、再生開始時間を前後にずらすことが可能な範囲を示すシフト時間が対応付けられており、
前記合成工程において、前記第一の音声データの前記再生完了時間と前記第二の音声データに対応する前記第二の状況が発生する発生時間との間に、空白期間が存在する場合、該空白期間以下となる前記再生時間を持つ第三の音声データが前記記憶部から検索され、前記第三の音声データの前記発生時間及び前記シフト時間に基づき、前記第三の音声データを前記第一の音声データの後に再生可能かが判定され、再生可能と判定される場合、該第三の音声データが、前記第一の音声データと前記第二の音声データの間に再生されるよう、該第三の音声データが前記記憶部から読み出されて前記音声再生装置に出力されることを特徴とするゲーム処理方法。
【請求項８】
請求項７において、
前記優先度が高い音声データほど、該音声データに対応付けられる前記シフト時間が短くなることを特徴とするゲーム処理方法。
【請求項９】
請求項６において、
前記記憶部に格納される音声データには、更に、ある音声データが再生されると、別の音声データの再生が誘発される親子関係を、前者を親データとして、後者を子データとして識別する情報が対応付けられており、
前記選択工程において、前記第一の音声データが前記親データとして識別される場合、前記第二の音声データとして、前記親データと親子関係にある前記音声データが選択されることを特徴とするゲーム処理方法。
【請求項１０】
移動体によって行われる競技シミュレーションゲームのプログラムを実行して、競技の様子を表現する画像データを生成し、該画像データを出力して表示装置に前記競技の様子を表示し、
前記競技の様子を実況する音声データを構成し、該音声データを出力して音声再生装置を介して音声を再生するゲーム装置であって、
予め、前記音声データが、該音声データの再生に要する再生時間と、再生されるべき順位の優劣を示す優先度と共に対応付けられ格納され、且つ、制御プログラムが格納される記憶部と、
前記記憶部から前記制御プログラムを読み出して実行する制御部とを有し、
前記制御部は、
競技を行う前記移動体のゲーム展開を第一の期間先まで予測演算し、前記ゲーム展開における各状況に対応する複数の音声データを構築して前記記憶部に格納する予測演算機能と、
前記構築した複数の音声データの中から、前記第一の期間先までのゲーム展開における第一の状況に対応する第一の音声データを決定し、前記第一の音声データの再生完了時間を、該第一の音声データの前記再生時間より求め、前記再生完了時間から前記第一の期間より短い第二の期間先までのゲーム展開における第二の状況に対応する第二の音声データを、前記構築した複数の音声データの中から、前記優先度に基づいて選択する選択機能と、
前記ゲーム展開における各状況に基づく競技の様子を前記表示装置に表示するタイミングに合わせて、前記第一の音声データが再生された後、前記第二の状況に対応する第二の音声データが再生されるよう、前記第一の音声データ及び第二の音声データを前記記憶部から読み出して前記音声再生装置に出力する合成機能とを実現することを特徴とするゲーム装置。
【請求項１１】
請求項１０において、
前記記憶部に格納される音声データには、更に、該音声データの再生の際、再生開始時間を前後にずらすことが可能な範囲を示すシフト時間が対応付けられており、
前記制御部は、前記合成機能において、前記第一の音声データの前記再生完了時間と前記第二の音声データに対応する前記第二の状況が発生する発生時間との間に、空白期間が存在する場合、該空白期間以下となる前記再生時間を持つ第三の音声データを前記記憶部から検索し、前記第三の音声データの前記発生時間及び前記シフト時間に基づき、前記第三の音声データを前記第一の音声データの後に再生可能かを判定し、再生可能と判定される場合、該第三の音声データが、前記第一の音声データと前記第二の音声データの間に再生されるよう、該第三の音声データを前記記憶部から読み出して前記音声再生装置に出力することを特徴とするゲーム装置。
【請求項１２】
請求項１１において、
前記優先度が高い音声データほど、該音声データに対応付けられる前記シフト時間が短くなることを特徴とするゲーム装置。
【請求項１３】
請求項１０において、
前記記憶部に格納される音声データには、更に、ある音声データが再生されると、別の音声データの再生が誘発される親子関係を、前者を親データとして、後者を子データとして識別する情報が対応付けられており、
前記制御部は、前記選択機能において、前記第一の音声データが前記親データとして識別される場合、前記第二の音声データとして、前記親データと親子関係にある前記音声データを選択することを特徴とするゲーム装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声による実況を伴うコンピュータゲームを処理するゲーム装置、ゲーム処理方法及びゲームプログラムに関する。
【背景技術】
【０００２】
現在さまざまな種類のビデオゲームが存在するが、映像に合わせてその映像を描写する実況音声を流すことによって、ユーザにより現実に似せた体感をさせるビデオゲームが存在する。そのようなビデオゲームは、野球、サッカー、競馬等の競技を扱うゲームのうち、特にシミュレーションゲームと呼ばれるジャンルに属するものによく見られる。
【０００３】
競馬を扱うシミュレーションゲームの１つに競走馬育成シミュレーションゲーム（以下、競馬ゲームと称する）と呼ばれるゲームがある。競馬ゲームにおいては、プレイヤが馬主となり、自己の所有する馬をレースに参加させることによって獲得賞金を増やしていく。レースでは、入力装置を介したプレイヤの介入（例えば、ムチを入れるためにボタンを連打する、コース取りを十字キーにより操作する）は必要無いゲームが多く、レース前までのプレイヤの操作状況に応じて設定される各競走馬の身体能力値等に基づいてレース結果が決定される。
【０００４】
この競馬ゲームにおけるプレイヤの目的の１つは、レースで賞金を獲得し、新たな繁殖牝馬の獲得、厩舎環境の改善等ゲーム内で再投資を行い、よりよい条件で次なるレースを迎えることにある。また、プレイヤの目的は賞金の獲得に留まらず、特定の重賞レースで勝利する馬を育てる、コースレコードを更新する馬を育てる、実際の名馬を再現する等さまざまあり、プレイヤは１つの目的に縛られること無く競馬ゲームを楽しむことができる。
【０００５】
以上のようなプレイの目的のため、プレイヤの関心事項は、賞金が獲得できるか、またコースレコードが更新されるかといったことが判別するレースに集中する。従って、競馬ゲームにおいてレースシーンをプレイヤにいかに見せるかは特に重要である。このレースシーンの再現にあたりより臨場感を増すことで、他社製品との差別化を測り、顧客吸引力を高めるため、競馬ゲームによっては、レースシーンを音声で実況することが行われる。
【０００６】
従来技術においても、特許文献１によれば、自分の出走させた馬などの特定の馬を中心としたレース実況を見ることができる競馬ゲーム装置が提案される。また、特許文献２によれば、入力装置を介したプレイヤの命令入力によりプレイヤを操作する野球ゲームにおいて、例えば、プレイヤが選択した球種に応じて次に実況される用語が選択される実況中継機能付きゲーム機が提案される。また、特許文献３によれば、複数のプレイヤが一ヶ所に集まって同一の投票型レースゲームを行うことができる複数の競馬ゲーム装置と管理装置を有するゲームシステムにおいて、レース実行状況が合成音声により行われることが記載される。
【特許文献１】特許第３４３５１５５号公報
【特許文献２】特許第２５５２４２５号公報
【特許文献３】特開２００１−２２４８４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来技術においては、ある状況を実況する音声が、レース展開を再現する画像におけるその状況の表示よりも遅くなることがあった。例えば、プレイヤが目にする画像では、先行していた逃げ切り馬が、スタミナ切れで後続馬群にのまれつつある状況において、その馬が後続馬群から抜け出して先行している（数秒前の）実況音声が流れたり、１０００ｍ地点を通過する画像が表示される数秒後に、「ただいま、１０００ｍ地点を通過しました」といった実況音声が流れたりすることがあった。
【０００８】
また、ある状況を実況する音声が流れる間に、その状況よりも重大な状況が発生している場合であっても、最初の実況音声が終わるまでは、その重大な状況を実況する音声を流すことができず、結果として、プレイヤに伝えたい重大な状況に関する実況音声が本来流すべきタイミングより遅いタイミングで流れるか、あるいは、最悪の場合、別の実況音声が選択され、全く流されないことがあった。例えば、各馬がスムーズにスタートを切り、先頭馬群、２番手馬群が形成され、先頭馬群に属する馬から順に出走馬の紹介を行う実況がされる最中に、先頭馬群内の１番人気の有力馬が転倒する場合でも、有力馬転倒の実況は、２番手馬群の紹介後になってしまう場合や、最悪の場合、２番手馬群の紹介完了時のレース展開が実況され、有力馬転倒の実況がスキップされてしまうことがあった。
【０００９】
そこで、本発明の目的は、競馬ゲームにおけるレースシーンにおいて、実況を行うべきタイミングで、画像に遅れることなく適切な実況が行われるゲーム装置、ゲーム処理方法及びゲームプログラムを提供することにある。また、本発明の別の目的は、プレイヤに伝えるべき重大な状況が発生する場合、その重大な状況を実況する音声が適切に再生されるゲーム装置等を提供することにある。
【課題を解決するための手段】
【００１０】
上記目的は、本発明の第一の側面によれば、移動体によって行われる競技シミュレーションゲームのプログラムを実行して、競技の様子を表現する画像データを生成し、該画像データを出力して表示装置に前記競技の様子を表示し、前記競技の様子を実況する音声データを構成し、該音声データを出力して音声再生装置を介して音声を再生するコンピュータであって、予め、前記音声データが、該音声データの再生に要する再生時間と、再生されるべき順位の優劣を示す優先度と共に対応付けられ格納される記憶部を有するコンピュータを、競技を行う前記移動体のゲーム展開を第一の期間先まで予測演算し、前記ゲーム展開における各状況に対応する複数の音声データを構築して前記記憶部に格納する予測演算手段と、前記構築した複数の音声データの中から、前記第一の期間先までのゲーム展開における第一の状況に対応する第一の音声データを決定し、前記第一の音声データの再生完了時間を、該第一の音声データの前記再生時間より求め、前記再生完了時間から前記第一の期間より短い第二の期間先までのゲーム展開における第二の状況に対応する第二の音声データを、前記構築した複数の音声データの中から、前記優先度に基づいて選択する選択手段と、前記ゲーム展開における各状況に基づく競技の様子を前記表示装置に表示するタイミングに合わせて、前記第一の音声データが再生された後、前記第二の状況に対応する第二の音声データが再生されるよう、前記第一の音声データ及び第二の音声データを前記記憶部から読み出して前記音声再生装置に出力する合成手段として機能させるためのプログラムを提供することにより達成される。
【００１１】
上記発明の側面においてより好ましい実施例によれば、前記記憶部に格納される音声データには、更に、該音声データの再生の際、再生開始時間を前後にずらすことが可能な範囲を示すシフト時間が対応付けられており、前記合成手段は、前記第一の音声データの前記再生完了時間と前記第二の音声データに対応する前記第二の状況が発生する発生時間との間に、空白期間が存在する場合、該空白期間以下となる前記再生時間を持つ第三の音声データを前記記憶部から検索し、前記第三の音声データの前記発生時間及び前記シフト時間に基づき、前記第三の音声データを前記第一の音声データの後に再生可能かを判定し、再生可能と判定される場合、該第三の音声データが、前記第一の音声データと前記第二の音声データの間に再生されるよう、該第三の音声データを前記記憶部から読み出して前記音声再生装置に出力する。
【００１２】
上記発明の側面においてより好ましい実施例によれば、前記優先度が高い音声データほど、該音声データに対応付けられる前記シフト時間が短くなる。
【００１３】
また、上記発明の側面においてより好ましい実施例によれば、前記記憶部に格納される音声データには、更に、ある音声データが再生されると、別の音声データの再生が誘発される親子関係を、前者を親データとして、後者を子データとして識別する情報が対応付けられており、前記選択手段は、前記第一の音声データが前記親データとして識別される場合、前記第二の音声データとして、前記親データと親子関係にある前記音声データを選択する。
【００１４】
また上記目的は、本発明の第二の側面によれば、移動体によって行われる競技シミュレーションゲームのプログラムを実行して、競技の様子を表現する画像データを生成し、該画像データを出力して表示装置に前記競技の様子を表示し、前記競技の様子を実況する音声データを構成し、該音声データを出力して音声再生装置を介して音声を再生するゲーム装置において実行されるゲーム処理方法であって、予め、前記音声データが、該音声データの再生に要する再生時間と、再生されるべき順位の優劣を示す優先度と共に対応付けられ前記ゲーム装置の記憶部に格納されており、競技を行う前記移動体のゲーム展開が第一の期間先まで予測演算され、前記ゲーム展開における各状況に対応する複数の音声データが構築されて前記記憶部に格納される予測演算工程と、前記構築した複数の音声データの中から、前記第一の期間先までのゲーム展開における第一の状況に対応する第一の音声データが決定され、前記第一の音声データの再生完了時間が、該第一の音声データの前記再生時間より求められ、前記再生完了時間から前記第一の期間より短い第二の期間先までのゲーム展開における第二の状況に対応する第二の音声データが、前記構築した複数の音声データの中から、前記優先度に基づいて選択される選択工程と、前記ゲーム展開における各状況に基づく競技の様子を前記表示装置に表示するタイミングに合わせて、前記第一の音声データが再生された後、前記第二の状況に対応する第二の音声データが再生されるよう、前記第一の音声データ及び第二の音声データが前記記憶部から読み出されて前記音声再生装置に出力される合成工程とを有することを特徴とするゲーム処理方法を提供することにより達成される。
【００１５】
また上記目的は、本発明の第三の側面によれば、移動体によって行われる競技シミュレーションゲームのプログラムを実行して、競技の様子を表現する画像データを生成し、該画像データを出力して表示装置に前記競技の様子を表示し、前記競技の様子を実況する音声データを構成し、該音声データを出力して音声再生装置を介して音声を再生するゲーム装置であって、予め、前記音声データが、該音声データの再生に要する再生時間と、再生されるべき順位の優劣を示す優先度と共に対応付けられ格納され、且つ、制御プログラムが格納される記憶部と、前記記憶部から前記制御プログラムを読み出して実行する制御部とを有し、前記制御部は、競技を行う前記移動体のゲーム展開を第一の期間先まで予測演算し、前記ゲーム展開における各状況に対応する複数の音声データを構築して前記記憶部に格納する予測演算機能と、前記構築した複数の音声データの中から、前記第一の期間先までのゲーム展開における第一の状況に対応する第一の音声データを決定し、前記第一の音声データの再生完了時間を、該第一の音声データの前記再生時間より求め、前記再生完了時間から前記第一の期間より短い第二の期間先までのゲーム展開における第二の状況に対応する第二の音声データを、前記構築した複数の音声データの中から、前記優先度に基づいて選択する選択機能と、前記ゲーム展開における各状況に基づく競技の様子を前記表示装置に表示するタイミングに合わせて、前記第一の音声データが再生された後、前記第二の状況に対応する第二の音声データが再生されるよう、前記第一の音声データ及び第二の音声データを前記記憶部から読み出して前記音声再生装置に出力する合成機能とを実現することを特徴とするゲーム装置を提供することにより達成される。
【発明の効果】
【００１６】
本発明によれば、例えば、競馬ゲームにおいて、表示装置に表示される画像と実況のずれが防止され、そして、重要な状況において実況が行われない実況漏れが防止される。また、音声データをずらすことができる範囲がシフト時間として定められており、重要な実況の間に適宜別の音声データを挟み実況の空白期間を埋めることができ、全体の実況時間を効率的に使用し、最適化された実況を提供することができる。本発明は、競馬ゲームのみならず、野球、サッカー等の競技を扱うシミュレーションゲームにおける実況に適用することも可能である。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施の形態について図面に従って説明する。しかしながら、本発明の技術的範囲はかかる実施の形態に限定されるものではなく、特許請求の範囲に記載された発明とその均等物にまで及ぶものである。
【００１８】
図１は、本発明の実施形態におけるゲーム装置１の構成ブロック図である。本実施形態のゲーム装置１は、競馬ゲームを処理し、レースの様子を映し出す画像を液晶ディスプレイ等の表示装置に表示させるため画像データを出力し、そのレースの様子に合わせた実況がスピーカ等の音声再生装置から再生されるよう音声データを出力する。本実施形態のゲーム装置１においては、事前に一レース分のレース展開がまず予測演算され、そのレース展開を細かい時間間隔で分割したとき各状況を表す実況用のフレーズを割り当てたワークデータが生成される。ワークデータにおいては、各フレーズが重複することになり、割り当てたすべてのフレーズを実況することができないため、各フレーズの優先度に応じてフレーズが選択され、レースの模様を表示する画像データの出力に合わせて、音声データが出力されるというものである。こうして、レース展開の事前計算によって表示装置に表示される画像と実況のずれが防止されると共に、優先度に応じたフレーズ選択によって重要な状況において実況が行われない実況漏れが防止される。
【００１９】
図１のゲーム装置は、バス２０を介して互いに接続される制御部１１、RAM(Random Access Memory)１２、記憶部１３、周辺機器接続用インタフェース(I/F)１５、入力部１６、表示部１７を含む。制御部１１は、図示省略されたCPU(Central Processing Unit)を含み、RAMに格納されるプログラムを実行し、ゲーム装置１に含まれる各部を制御する。
【００２０】
RAM１２は、ゲーム装置１の処理における演算結果やプログラムが一時的に格納される記憶手段である。記憶部１３は、ハードディスク、光ディスク、磁気ディスク、フラッシュメモリ等の不揮発性記憶手段であり、各種データやRAMへ読み出される前のゲームプログラム等が格納される。
【００２１】
音声再生部１４は、ゲームにおける効果音や、実況音声を出力するスピーカである。再生される音声（ステレオ音声、５．１チャンネル音声等）に合わせたチャンネル数分用意される。
【００２２】
周辺機器I/F１５は、ゲーム装置１に周辺機器を接続するためのインタフェースであり、例えば、USB(Universal Serial Bus)ポートや、ネットワークポートである。周辺機器には、例えば、プリンタ、SCSI(Small Computer System Interface)機器、メモリカードリーダライタ、無線LAN機器、モデムなどである。周辺機器IF１５を介した周辺機器の接続形態は、無線であるか、有線であるかを問わない。
【００２３】
周辺機器I/F１５は、ゲームプログラムの販売形態に応じて、ゲームプログラムを記憶部１３に取り込む際に使用される。例えば、ネットワークを介したダウンロード販売されるゲームプログラムであれば、周辺機器I/F１５としてネットワークポートを介して、ROMカートリッジで提供されるゲームプログラムであれば、周辺機器I/F１５としてカートリッジスロットを介して、そして、DVD-ROM、CD-ROMのような媒体で提供されるゲームプログラムであれば、周辺機器I/F１５として、周辺機器として備えられる光学ドライブからの読み出し信号を仲介するドライブインタフェースを介して、ゲームプログラムが記憶部１３に取り込まれる。
【００２４】
入力部１６は、ゲーム専用コントローラ、キーボード、マウス、タッチパネル、ボタン等ユーザからの指示（コマンド）の入力信号をゲーム装置１に入力する入力装置である。表示部１７は、液晶ディスプレイ、CRT(Cathode Ray Tube)等ユーザに対する情報を表示するための表示装置である。図１のゲーム装置は、入力部１６、表示部１７を備えているが、ゲーム装置１に周辺機器I/F１５を介して外部接続されるゲーム専用コントローラや、プレゼンテーション用のプロジェクタ、液晶ディスプレイ、テレビといった入力装置、表示装置があってもよい。
【００２５】
以下、本実施形態は、レースにおける音声実況に関連するものであるため、以下、レースシーンにおける実況がいかにして行われるかに特化して説明を行う。競馬ゲームにおけるその他の点、例えば育成機能や、レースにおけるカメラの最適配置機能等に関しては、従来技術が適用できる。
【００２６】
図２は、本実施形態におけるゲーム装置１の制御部１１を説明する機能ブロック図である。制御部１１は、予測演算部３１、選択部３２、合成部３３を含んでいる。ゲーム装置１の記憶部１３には、競馬ゲームにおけるレース状況に対応付けられる実況のための音声データの候補が格納される状況別音声データ４１、レースの出走馬の馬名を実況するための音声データが格納される馬名音声データ４２、所定のレースを実況するために構築され、そのレースのレース展開における状況の時間ごとの変化に応じた音声データが複数格納されるワークデータ４３が格納される。図２には、音声実況に関するデータが記載されるが、他にも、レースの状況に応じた画像を表示するための画像データも記憶部１３に格納される。
【００２７】
予測演算部３１は、レース毎に、一レース分のレース状況を予測演算し、その結果を基に、対応する実況を特定する情報をワークデータ４３に保存する（Ｍ９３）。このとき、予測演算部３１は、フレーム毎に示されるレースの状況に対応する実況を次々に配置していく。フレームは、画像描写における基本時間単位であり、例えば、１秒間に３０フレーム分の画像が表示される。
【００２８】
１つの実況が、１／３０秒で終了することはないため、ワークデータ４３においては、実況する音声が重複する、つまり、ある実況に対応する音声データの再生完了時間前に別の音声データの再生開始時間が配置されることになる。この重複は、後に選択部３２において音声データの選択を行うことによって、実際の音声が再生される際には取り除かれる。
【００２９】
レース状況とは、ゲートインに始まり、スタート、レース序盤、レース中盤、第３、第４コーナー、最後の直線、ゴール、ゴール後という流れにおいて発生する状況、所定時間毎の仮想空間における各移動体の配置状況や、その状況の発生する時間等を意味する。従って、予測演算部３１による、一レース分の予測演算によって、どの時間に何が起きているか詳細な状況が再現可能になる。予測演算によって、スタートしてからゴールし、ゴール後の実況を行うのに必要な全レース時間等も得ることができる。ゴール後の実況を行うのに必要な時間は、例えば、１分等と固定してもよい。
【００３０】
なお、ワークデータ４３の構築にあたり、予測演算部３１は、状況に応じた音声データを検索するため、状況別音声データ４１を参照し（Ｍ９１）、音声データ中に実際の出走馬の馬名を埋めるため、馬名音声データ４２を参照する（Ｍ９２）。
【００３１】
選択部３２は、ワークデータ４３が構築されると、ワークデータ４３に含まれる音声データの中から、実況を行うべき音声データをその優先度に基づいて選択する（Ｍ９４）。そして、合成部３３は、選択部３２による選択が完了すると、レースの状況に応じた画像表示のタイミングに合わせて、選択された音声データを音声再生装置に出力する（Ｍ９５）。
【００３２】
なお図２の各機能部は、制御部１１に備えられる図示省略されたCPUで実行されるプログラムとして実現することも、ハードウェアにより実現することも可能である。また、ハードウェアで各機能部を実現する場合、必ずしも制御部１１に含まれることを要しない。
【００３３】
図３は、記憶部１３に格納される状況別音声データ４１のデータ構成例である。図３の状況別音声データは、「イベントID」、「フレーズ」、「カテゴリ」、「優先度」、「親子関係」、「発音時間」、「ファイルパス」というデータ項目を含む。
【００３４】
「イベントID」は、各データエントリを識別する番号である。「フレーズ」は、状況に応じて実況される文であり、レースの場面を描写する語句が並べられる。「フレーズ」において、＜馬名＞とあるのは、後に出走馬の名前で埋められることを意味し、イベントIDが、１６、２６、２８、２９、３４等で使用される時間データは、予測演算部３１による演算結果に基づいて埋められる。例えば、イベントIDが１のフレーズである「○○競馬場第１０レース、天候は晴れ、良馬場でのレースです」は、スタート前の実況としてよく耳にするものであり、本実施形態においても、表示装置にスタート前の画像が表示される状況において使用されうるフレーズである。
【００３５】
「カテゴリ」は、実況の種類を識別する名称である。カテゴリとしては、天候や馬場状態、レース名、ゲートインの様子が実況される「スタート前」、ゲートが開いた直後の状態が実況される「スタート」、スタート後の先行争いの様子が実況される「先行争い」、レース序盤から中盤での様子が実況される「道中」、第４コーナーから最後の直線にかけての様子が実況される「ゴール前」、ゴール板を横切るときの様子が実況される「ゴール」、ゴール後の様子が実況される「ゴール後」がある。他に、重要性の高い実況を示す「割り込み」がある。
【００３６】
例えば、転倒や落馬、馬の故障等は、その後のレース展開に関するプレイヤの興味を惹きつけるために、発生時に確実に伝える必要がある。また馬の接触等による審議の可能性も同様の理由で、重要性は高い。また、距離標識の通過は、どのレースでも確実に発生し、又、全工程におけるレースの進行状況をプレイヤに通知することができるために、重要性が高い。さらに、先頭馬がゴールインする状況は、レースにおいて最も盛り上がる箇所であり、当然重要性が高い。
【００３７】
「優先度」は、複数のフレーズが重複して並べられるとき、どのフレーズを選択するかを決定するのに使用され、再生されるべき実況の順位の優劣を示す数値である。図３では、数値が大きいものほど重要性が高く、実況されやすい。カテゴリが「割り込み」である実況は、優先度が最高であり、対応する状況が発生すれば、必ず再生される。
【００３８】
「親子関係」は、ある実況が再生されるとき、必ず再生すべき関係にある実況を規定するものである。前者を親データ、後者を子データと呼ぶ。図３における「親子関係」欄には親データの「イベントID」が格納される。例えば、イベントID＝３９は親データ、イベントID＝１６はその子データであり、「１０００メートル通過」の後には、「時計は５９秒」などと続くことになる。
【００３９】
「発音時間」は、「フレーズ」が録音された音声データの再生に要する時間である。１つのフレーズを再生中に、別のフレーズを再生することはできないので、「発音時間」は、互いの実況が重複しないよう再生開始時間を調整するために使用される。「ファイルパス」は、「フレーズ」が録音された音声データが格納される記憶部１３における位置を特定するファイル名である。
図３では、音声データがwavファイルとして格納されることがわかる。音声データは、mp3ファイル等であってもよい。
【００４０】
図４は、記憶部１３に格納される馬名音声データ４２のデータ構成例である。レース毎に出走馬は変わるため、馬名音声データ４２は、レース毎に事前に生成される。図４では、１８頭立てのレースが想定されており、１８頭分のデータエントリが格納される。そのデータ項目には、「番号」、「馬名」、「発音時間」、「ファイルパス」が含まれる。
【００４１】
「番号」は、ゲートインするときの位置を特定する番号である。番号が若いもの方が内から順にゲートインされる。「馬名」は、出走馬の名前である。「発音時間」、「ファイルパス」は、図３における「発音時間」、「ファイルパス」と同じであるので、説明は略す。なお、図３における馬名は、色＋真珠という組合せで単純に創作したものであり、仮称である。
【００４２】
図５は、記憶部１３に格納されるワークデータ４２のデータ構成例である。図５のワークデータは、「リストID」、「フレームID」、「イベントID」、「馬名」、「シフト時間」、「再生完了時間」、「選択結果」というデータ項目を含む。
【００４３】
「リストID」は、ワークデータにおけるエントリを識別する連続番号である。図５においては、途中省略されている箇所があるため、例えば、Ｌ１という記述になっているが、実際は０００１から始まる連続番号である。
【００４４】
「フレームID」は、各状況の発生時間を特定する情報であり、フレームを特定する番号である。フレームは、前述したように、画像描写における基本時間単位であり、スタート地点を０とする。例えば、１秒間に３０フレーム分の画像が表示される場合であれば、フレーム数を３０で割れば秒数に変換できる。また、スタート前の状況には、マイナスのフレームIDが付けられる。
【００４５】
「イベントID」は、その「フレームID」における状況に対応する実況（音声データ）を特定する実況別音声データ４１（図３参照）における「イベントID」を特定する識別子である。例えば、図５におけるリストID＝Ｌ１のデータエントリは、イベントID＝１のスタート前の実況に対応しており、そのフレーズとしては「○○競馬場第１０レース、天候は晴れ、良馬場でのレースです」が対応する。
【００４６】
フレームIDが２、３違っても、表示される状況が激変することはまれであり、フレームIDが近いものは、イベントIDに対応する音声データの「カテゴリ」（図３参照）が同じものになることが多い。また、予測演算部３１は、同一フレームIDに複数のイベントIDを対応させることもある。
【００４７】
「馬名」は、「イベントID」に対応する実況で使用される「フレーズ」（図３参照）に、馬名が使用される場合、出走馬からその馬名を特定するためのデータ項目である。ここでは、「馬名」には、出走馬音声データ４２における「番号」（図４参照）を示す番号が格納される。従って、例えば、リストID＝Ｌ２における「馬名」＝４は、図４を参照すれば、「グリーンパール」を特定しており、リストID＝Ｌ２に対応する実況は、図３を参照すれば、「最後にゲートインするのは、グリーンパール」となる。
【００４８】
「シフト時間」は、その実況の再生開始時間を前後にずらすことのできる範囲を特定する情報であり、プラス記号は遅らせることが可能な時間、マイナス記号は早めることが可能な時間を示す。時間の単位は、秒数またはフレーム数である。これもまた、フレームIDが２、３違っても、表示される状況が激変することはまれであることに起因し、特に重要性の低い実況に関しては、シフト時間の範囲が広めに設定される。重要性の高い、優先度の高い実況は、位置をずらすことが許されない場合が多く、シフト時間は短めになる。特に、「カテゴリ」が「割り込み」であるものは（優先度１００）、シフト時間０である。
【００４９】
「再生完了時間」は、その実況に対応する音声データの再生が完了する時間であり、発生時間である「フレームID」に、各状況に対応する「フレーズ」の「発音時間」を加えたものになる。また、「フレーズ」において馬名が使用される場合には、その馬名の「発音時間」も加えた
ものになる。「フレームID」と「発音時間」の単位が異なる場合には、上述したようにフレームIDを秒数に変換することが可能であるため、どちらかの単位に統一して計算が行われ、結果が「再生完了時間」に格納される。
【００５０】
「選択結果」は、最終的に実況を行うべき音声データを示す情報であり、図５では、「選択状態」が○印、「非選択状態」が×印で表される。予測演算部３１は、フレーム毎の状況を表す実況を、再生時間の重複を許して配置するため、ワークデータ４３に格納される音声データを、発生時間を再生開始時間として順に再生しても、実況としての意味をなさない。そこで、選択部３２が、所定時間毎に音声データの選択を優先度に応じた選択を行うが、その選択結果が「選択結果」に保存される。
【００５１】
「優先度」は、図３に示される状況別音声データ４１を参照して得られる、各「イベントID」に対応するエントリの「優先度」である。図５の「親子関係」には、親データであるエントリにだけ、子データ特定するリストIDが格納される。
【００５２】
続いて、本実施形態におけるゲーム装置の動作を説明する。ここでも、音声実況に関する処理に特化して説明する。
【００５３】
図６は、本実施形態におけるゲーム装置１の動作を説明するフローチャートである。まず、予測演算部３１が、第１の期間先までの状況を予測演算し、演算結果をワークデータ４３に保存する（Ｓ１）。ステップＳ１でいう、第１の期間は、本実施形態においては、一レースにおけるゲートインから、ゴール後のコメントを述べるまでの時間までである。ステップＳ１における予測演算によって、ゲートインに始まり、スタート、レース序盤、レース中盤、第３、第４コーナー、最後の直線、ゴール、ゴール後という流れにおける状況やその発生タイミングが判明し、それによって、状況に応じて流すべき音声データを、再生時間の重複を許したワークデータとして構築することができる。
【００５４】
予測演算部３１によって、図５のデータ例に示されるようなワークデータの構築が完了すると、選択部３２が、実況すべき音声データを選択する（Ｓ２）。選択部３２が行う、実況すべき音声データの選択方法については別フローチャートを用いて後述する。
【００５５】
そして、選択部３２による実況すべき音声データの選択が完了すると、ゲーム装置１は、レースシーンの表示を開始し（Ｓ３）、合成部３３は、表示装置に表示される画像に合うよう、選択された音声データを出力する（Ｓ４）。
【００５６】
なお、ステップＳ１における第１の期間は、一レース分より短くしてもよい。例えば、レースの表示前に、第２コーナーまでの状況を予測演算し、優先度の高い実況を選択しておき、第２コーナーまでのレース表示を行いながら、第４コーナーまでの予測演算を行って、優先度の高い実況を選択する、という処理をゴールまで繰り返してもよい。続いて、選択部３２が行う、実況すべき音声データの選択方法のバリエーションを説明する。
【００５７】
図７は、選択部３２が行う音声データの選択方法（その１）を説明するフローチャートである。音声データ毎に設定される優先度に基づいて、次に実況する音声データを選択する例である。
【００５８】
まず、ステップＳ１が完了すると、選択部３２は、最初に実況する音声データを選択し、選択された音声データの「選択結果」を「選択状態」（図５では○印）に更新する（Ｓ２１）。ステップＳ２１における、最初に実況する音声データの選択の方法にはいろいろある。例えば、選択部３２は、ワークデータ４３に格納された音声データのうち、リストIDが００２５までのイベントIDのうち、優先度が最も高いものを選択する。また、ステップＳ２１において、選択部３２は、ワークデータに格納された音声データのうち、イベントIDによって特定される音声データの「カテゴリ」（図３参照）が、「スタート前」であるものから、優先度が最も高いものを選択しても良い。
【００５９】
次に、選択部３２は、ワークデータ４３に含まれる音声データのうち、ステップＳ２１で選択された音声データの再生完了時間から、ステップＳ１における第１の期間より短い第２の期間先までの状況から、優先度が最高の状況に対応する音声データを選択し、選択された音声データの「選択結果」を「選択状態」（図５では○印）に更新する（Ｓ２２）。ステップＳ２１で選択された音声データの再生完了時間は、図５におけるワークデータの「再生完了時間」を参照することによって得ることができる。
【００６０】
そこで、ステップＳ２２では、選択部３２が、ワークデータ４３において、ステップＳ２１で選択された音声データの再生完了時間から第２の期間先までの範囲に含まれるリストIDを特定し、その中から優先度が最高のものを選択する。そして、選択部３２は、ステップＳ２２で選択された音声データの再生完了時間が、ゴール後の実況が完了する時間であるレース終了時間よりも後かを判定する（Ｓ２３）。
【００６１】
再生完了時間が、レース終了時間前である場合（Ｓ２３Ｎｏ）、まだ実況を行う余地が残されており、ステップＳ２２に戻り処理が続行される。再生完了時間がレース終了時間を過ぎている場合（Ｓ２３Ｙｅｓ）、実況のための音声データの選択は終了し、ステップＳ３へ進み、レースシーンの表示が開始される。
【００６２】
こうして、ステップＳ２１で選択された音声データの次に実況する音声データを探す範囲を第２の期間先までに限定し、優先度に基づいた選択をすることによって、状況の変化を細かく追いながら重要な実況を逃さず行うことができる。
【００６３】
図８は、選択部３２が行う音声データの選択方法（その２）を説明するフローチャートである。音声データ毎に設定される優先度に基づいて、次に実況する音声データを選択すると共に、選択された音声データ間に空白期間が存在する場合、その空白期間を埋めることが可能な別の音声データを更に選択する例である。
【００６４】
まず、ステップＳ１が完了すると、選択部３２は、最初に実況する音声データを選択し、選択された音声データの「選択結果」を「選択状態」（図５では○印）に更新する（Ｓ２１）。ステップＳ２１は、図７におけるステップＳ２１と同じであり、説明は略す。
【００６５】
次に、選択部３２は、ワークデータ４３に含まれる音声データのうち、ステップＳ２１で選択された音声データの再生完了時間から、ステップＳ１における第１の期間より短い第２の期間先までの状況から、優先度が最高の状況に対応する音声データを選択し、選択された音声データの「選択結果」を「選択状態」（図５では○印）に更新する（Ｓ２２）。そして、選択部３２は、ステップＳ２２で選択された音声データの再生完了時間が、ゴール後の実況が完了する時間であるレース終了時間よりも後かを判定する（Ｓ２３）。
【００６６】
再生完了時間が、レース終了時間前である場合（Ｓ２３Ｎｏ）、まだ実況を行う余地が残されており、ステップＳ２２に戻り処理が続行される。ステップＳ２２、Ｓ２３における処理も、図７のステップＳ２２、Ｓ２３と同様であり、説明を略す。
【００６７】
再生完了時間がレース終了時間を過ぎている場合（Ｓ２３Ｙｅｓ）、選択部３２は、ステップＳ２２を繰り返すことによって選択される各音声データ間が連続しているかを判定する（Ｓ２４）。隣接する音声データに対応する実況が連続していれば、つまり、ある音声データの再生完了時間と、隣の音声データの再生開始時間（発生時間＝フレームID）が連続する状態が、すべての音声データで観測されれば、空白期間なしと判定され（Ｓ２４Ｎｏ）、実況のための音声データの選択は終了し、ステップＳ３へ進み、レースシーンの表示が開始される。
【００６８】
しかし、いずれかの隣接する音声データが不連続であり、空白期間ありと判定されれば（Ｓ２４Ｙｅｓ）、選択部３２は、その空白期間を埋めることができる音声データをワークデータ４３から検索し（Ｓ２５）、すべての音声データ間の空白期間について処理が終了すれば、実況のための音声データの選択は終了し、ステップＳ３へ進み、レースシーンの表示が開始される。
【００６９】
ステップＳ２５において、選択部３２は、まず、隣接する音声データの空白期間を、先に実況される音声データの再生完了時間と、それに隣接する音声データの再生開始時間（発生時間＝フレームID）の差として求める。そして、選択部３２は、ワークデータ４３において、各フレーズの発音時間が、空白期間と同じものを検索する。ステップＳ２５で使用する各フレーズの発音時間は、図５の「再生完了時間」から発生時間であるフレームIDに対応する時間を引いた時間になる。そして、空白期間と同じ発音時間を持つ音声データがあれば、それは、ステップＳ２２で選択された隣接する音声データ間の隙間を埋めることができる音声データであることになるからである。
【００７０】
次に、その音声データの「シフト時間」を参照し、隙間を埋める音声データの再生開始時間を、先に実況される音声データの再生完了時間と連続する時間になるようにシフトすることができるかを判定する。以上のようにして、空白期間と一致する発音時間を持ち、隙間を埋めるよう再生開始時間をシフトすることができる音声データが一つでも検索できれば、そのようにして検索された音声データを実況すべき音声データとして選択し、選択された音声データの「選択結果」を「選択状態」（図５では○印）に更新する。
【００７１】
こうして、ステップＳ２１で選択された音声データの次に実況する音声データを探す範囲を第２の期間先までに限定し、優先度に基づいた選択をすることによって、状況の変化を細かく追いながら重要な実況を逃さず行うことができる。更に、そのようにして選択された音声データ間に空白期間がある場合であっても、その空白期間を埋めることができる音声データが更に選択されるので、スタートしてからゴールし、ゴール後の実況を行うのに必要な全レース時間を効率的に使用した実況を行うことができる。これにより、実況における長時間の無音をできるだけ減らすことができる。
【００７２】
図９は、選択部３２が行う音声データの選択方法（その３）を説明するフローチャートである。ある音声データが選択されると、必ず再生すべき関係にある音声データを優先的に選択するものである。
【００７３】
まず、ステップＳ１が完了すると、選択部３２は、最初に実況する音声データを選択し、選択された音声データの「選択結果」を「選択状態」（図５では○印）に更新する（Ｓ２１）。ステップＳ２１は、図７におけるステップＳ２１と同じであり、説明は略す。
【００７４】
次に、選択部３２は、ステップＳ２１で選択された音声データが親データかを判定する（Ｓ２６）。選択部３２は、ステップＳ２１で選択された音声データの「親子関係」欄を参照し、濃データを特定するリストIDが格納されているか否かにより、ステップＳ２６の処理を行う。
【００７５】
ワークデータ４３における「親子関係」欄に、子データを特定するリストIDが格納されていれば、親データと判定され（Ｓ２６Ｙｅｓ）、選択部３２は、そのリストIDで特定される子データを選択し、選択された子データの「選択結果」を「選択状態」（図５では○印）に更新する（Ｓ２７）。ワークデータ４３における「親子関係」欄に、子データを特定するリストIDが格納されていなければ（Ｓ２６Ｎｏ）、ステップＳ２７がスキップされる。
【００７６】
ステップＳ２７が完了するか、スキップされると、所定の再生完了時間から、ステップＳ１における第１の期間より短い第２の期間先までの状況から、優先度が最高の状況に対応する音声データを選択する（Ｓ２８）。ステップＳ２８の処理は、図７におけるステップＳ２２の処理と同じである。ここで、「所定の再生完了時間」としたのは、ステップＳ２７が完了してステップＳ２８に進む場合には、子データの再生完了時間、ステップＳ２７がスキップされステップＳ２８に進む場合（Ｓ２６Ｎｏの場合）には、ステップＳ２１で選択された音声データの再生完了時間が使用されるためである。
【００７７】
そして、選択部３２は、ステップＳ２８で選択された音声データが親データかを判定する（Ｓ２９）。ステップＳ２９は、ステップＳ２６の処理と同じである。そして、親データと判定される場合（Ｓ２９Ｙｅｓ）、選択部３２は、子データを選択し、選択された子データの「選択結果」を「選択状態」（図５では○印）に更新する（Ｓ３０）。ステップＳ３０の処理は、ステップＳ２７と同じである。親データと判定されない場合（Ｓ２９Ｎｏ）、ステップＳ３０がスキップされる。
【００７８】
ステップＳ３０が完了するか、スキップされると、選択部３２は、最後に選択された音声データの再生完了時間が、ゴール後の実況が完了する時間であるレース終了時間よりも後かを判定する（Ｓ３１）。ステップＳ３１の処理は、図７のステップＳ２３の処理と同じである。「最後に選択された」とあるのは、ステップＳ３０が完了してステップＳ３１に進む場合には、子データの再生完了時間、ステップＳ３０がスキップされステップＳ３１に進む場合（Ｓ２９Ｎｏの場合）には、ステップＳ２８で選択された音声データの再生完了時間が使用されるためである。
【００７９】
再生完了時間が、レース終了時間前である場合（Ｓ３１Ｎｏ）、まだ実況を行う余地が残されており、ステップＳ２８に戻り処理が続行される。再生完了時間がレース終了時間を過ぎている場合（Ｓ３１Ｙｅｓ）、実況のための音声データの選択は終了し、ステップＳ３へ進み、レースシーンの表示が開始される。
【００８０】
こうして、親データが選択されると、子データも必ず選択されることによって、互いに関連するフレーズを漏らさず実況することができる。なお、子データが選択されても、その子データより高い優先度の音声データがある場合、その選択された子データはキャンセルされ、子データが選択されることによって、優先度の高い音声データが再生されない事態は避けられる。
【００８１】
なお、図７から図９の方法を組み合わせて、音声データを選択することも可能である。例えば、図９におけるステップＳ３１の後に、図８に示すステップＳ２４、ステップＳ２５の処理を行って、空白期間を埋めることも可能である。
【００８２】
最後に、図７から図９で述べた、選択部が行う音声データの選択方法をそれぞれ、より具体的な例で説明する。
【００８３】
図１０は、本実施形態において実施される競馬ゲームにおけるレースシーンを説明する図である。図１０Ａは、レースが行われるコースの一例を説明する図である。図１０Ａのスタート地点５１からレースは開始され、レースシーンにおいては、出走場がトラック（斜線部）を周回し、ゴール地点５６にゴールするまでの様子が表示される。
【００８４】
スタート地点５１からホームストレッチと呼ばれる直線区間５５、レース中盤となる第１・第２コーナー５２、バックストレッチ５３、レース終盤となる第４コーナー、そして、最後の直線となるホームストレッチ５５を再通過してゴール５６に至るコースである。図１０Ａにおける矢印６１は、スタートからゴールまでのレースの時間を長さで示すタイムラインである。
【００８５】
図１０Ｂは、巻いていたタイムライン６１を真っ直ぐに伸ばし、時間軸を付けた図である。レースシーンの画像、及び音声は、このタイムラインに沿って再生される。本実施形態においては、１秒間に３０フレームが描画されるものとする。ゴール後の実況まで含めた全レース時間（レース終了時間）は、３分とする。フレーム数にすると、５４００フレームである。例えば、ゴール前の直線付近でのフレーム６２には、画面例６３に示されるような３頭の馬がゴールに向かって疾走する様子が描かれる。
【００８６】
図１１は、選択部が行う音声データの選択方法（その１）に対応し、図１１Ａは、優先度に基づいて、次に実況される音声データが選択される様子を説明する図であり、図１１Ｂは、実況される音声データに対応するフレーズを示した図である。図１１は、図５のワークデータ４３における、リストIDがＬ１、Ｌ２、Ｌ３のエントリに関連する。
【００８７】
まず、最初の実況として、ここでは、リストID＝Ｌ１が選択される（図７ステップＳ２１）。その結果、「○○競馬場第１０レース、天候は晴れ、良馬場でのレースです」というフレーズ７１の音声データが選択される。この音声データの再生完了時間７４は、図５を参照すれば、Ｆ１＋Ｔ１時間である（実際の算出においては、秒あるいはフレーム数のどちらかに単位を揃える必要があるが、ここでは、記号のまま記述するものとする）。
【００８８】
そして、ワークデータ４３において、この再生完了時間７４から所定期間７５（第２の期間）の間に含まれる状況から、優先度に基づき、次に実況する音声データが選択される（図７ステップＳ２２）。ここでは、候補として、リストID＝Ｌ２に対応するフレーズ「最後にゲートインするのは、グリーンパール」７２（馬名が４は、図４を参照すればグリーンパール）と、リストID＝Ｌ３に対応するフレーズ「グリーンパール、ゲートインを嫌がっています」７３が挙げられる。両者の優先度を比較した結果、優先度が高い後者のリストID＝Ｌ３が選択される。
【００８９】
図５には、リストIDがＬ２のエントリの「選択結果」に「非選択状態」を示す×印が格納されており、実際の実況には使用されない。つまり、図６のステップＳ４において、リストIDがＬ２のエントリに対応する音声データは音声再生装置に出力されることはない。結局、実況される音声は、図１１Ｂに示されるように、「○○競馬場第１０レース、天候は晴れ、良馬場でのレースです」「グリーンパール、ゲートインを嫌がっています」と続くことになる。
【００９０】
図１２は、選択部が行う音声データの選択方法（その２）に対応し、図１２Ａは、優先度に基づいて、次に実況される音声データが選択され、更に、シフト時間に基づき、選択された音声データ間の空白期間に別の音声データが埋められる様子を説明する図であり、図１２Ｂは、実況される音声データに対応するフレーズを示した図である。図１２は、図５のワークデータ４３における、リストIDがＬ１３、Ｌ１４、Ｌ１５のエントリに関連する。
【００９１】
まず、リストID＝Ｌ１３が選択される（図８ステップＳ２２）。その結果、「バックストレッチから第３コーナーに向かいます」というフレーズ８１の音声データが選択される。この音声データの再生完了時間８４は、図５を参照すれば、Ｆ１３＋Ｔ１７時間である。
【００９２】
この再生完了時間８４は、レース終了時間（３分）より前であるものとする。すると、図８ステップＳ２２の処理が行われ（図８ステップＳ２３Ｎｏ）、ワークデータ４３において、この再生完了時間８４から所定期間８５（第２の期間）の間に含まれる状況から、優先度が１００である、リストID＝Ｌ１５に対応するフレーズ「おっと、ここでレッドパールに故障発生」８３（馬名が８は、図４を参照すればレッドパール）が選択され、優先度が５０である、リストID＝Ｌ１４に対応するフレーズ「依然として先頭はブラックパール」８２（馬名が１は、図４を参照すればブラックパール）は選択されない。
【００９３】
ところが、再生完了時間８４と、リストID＝Ｌ１５に対応するフレーズ８３の発生時間８６（具体的には、図５を参照すればフレームIDであるＦ１５）に空白期間８７（Ｆ１５−Ｆ１３−Ｔ１７）ができてしまう。ここでは、空白期間８７と、リストID＝Ｌ１４に対応するフレーズ８２の発音時間８９（Ｆ１４＋Ｔ２０＋Ｈ１−Ｆ１４）が一致するものとする。
【００９４】
そして、リストID＝Ｌ１４に対応するフレーズのシフト時間を参照すれば、シフト時間９０がわかる。そして、マイナス側のシフト時間（−Ｃ１４２）によって、リストID＝Ｌ１４に対応するフレーズの発生時間８８（図５を参照すれば、Ｆ１４時間）を再生完了時間８４に連続する位置までシフト可能であるとすれば、一旦は非選択状態になったリストID＝Ｌ１４に対応するフレーズが、空白期間を埋める音声データとして選択されることになる（Ｓ２５）。
【００９５】
図５には、リストIDがＬ１４のエントリの「選択結果」に「選択状態」を示す○印が格納されており、実際の実況には使用される。結局、実況される音声は、図１２Ｂに示されるように、
「バックストレッチから第３コーナーに向かいます」「依然として先頭はブラックパール」「おっと、ここでレッドパールに故障発生」と続くことになる。
【００９６】
図１３は、選択部が行う音声データの選択方法（その３）に対応し、図１３Ａは、親子関係に基づいて、次に実況される音声データが選択される様子を説明する図であり、図１３Ｂは、実況される音声データに対応するフレーズを示した図である。図１３は、図５のワークデータ４３における、リストIDがＬ２４、Ｌ２５、Ｌ２６のエントリに関連する。
【００９７】
まず、リストID＝Ｌ２４が選択される（図９ステップＳ２８）。その結果、「素晴らしい末脚でゴールドパール今ゴールイン」（馬名が１２は、図４を参照すればゴールドパール）というフレーズ１０１の音声データが選択される。この音声データの再生完了時間１０４は、図５を参照すれば、Ｆ２４＋Ｔ３８＋Ｈ１２時間である。
【００９８】
次に、リストID＝Ｌ２４に対応するフレーズ１０１が親データかが判定される（図９ステップＳ２９）。ここでは、図５においてリストID＝Ｌ２４に対応するエントリの「親子関係」欄に子データを特定する識別子が格納されておらず、親データではないと判定され（図９ステップＳ２９Ｎｏ）る。そして、再生完了時間１０４は、レース終了時間（３分）より前であるものとする。
【００９９】
すると、図９ステップＳ３１Ｎｏとなり、ワークデータ４３において、この再生完了時間１０４から所定期間１０５（第２の期間）の間に含まれる状況から、優先度に基づき、次に実況する音声データが選択される（図９ステップＳ２８）。ここでは、リストID＝Ｌ２５に対応するフレーズ１０２「勝ったのは、ゴールドパール」が選択される。次に、リストID＝Ｌ２５に対応するフレーズ１０２が親データかが判定される（図９ステップＳ２９）。ここでは、図５においてリストID＝Ｌ２５に対応するエントリの「親子関係」欄に子データを特定する識別子（リストID＝Ｌ２６）が格納されており、親データとして判定され（図９ステップＳ２９Ｙｅｓ）、そのリストID＝Ｌ２６に対応するフレーズ１０３（「勝ちタイムは２分３２秒２」）が子データとして選択される（図９ステップＳ３０）。
【０１００】
図５には、子データとして選択されるリストIDがＬ２６のエントリの「選択結果」に「選択状態」を示す○印が格納されており、実際の実況に使用されることがわかる。結局、実況される音声は、図１３Ｂに示されるように、「素晴らしい末脚でゴールドパール今ゴールイン」「勝ったのは、ゴールドパール」「勝ちタイムは２分３２秒２」と続くことになる。
【０１０１】
本発明によれば、例えば、競馬ゲームにおいて、表示装置に表示される画像と実況のずれが防止され、そして、重要な状況において実況が行われない実況漏れが防止される。また、音声データをずらすことができる範囲がシフト時間として定められており、重要な実況の間に適宜別の音声データを挟み実況の空白期間を埋めることができ、全体の実況時間を効率的に使用し、最適化された実況を提供することができる。
【０１０２】
本発明は、競馬ゲームのみならず、野球、サッカー等の競技を扱うシミュレーションゲームにおけるゲーム展開の実況に適用することも可能である。ゲーム展開とは、競馬ゲームにおけるレース展開、野球ゲームにおける試合展開等であり、実況は、このゲーム展開における各状況に対応して行われる。例えば、野球シミュレーションゲームにおいて、ワンアウトランナー１、２塁の場面で、バッターがセンター前にヒットを放ち、２塁ランナーがホームインする状況において、ホームベースカバーに入るピッチャーの動作は重要性が低いため実況されず、重要性の高い、ホームベース上でのクロスプレーの実況がきちんと行われることになる。その場合、予測演算を行う第１の期間としては、イニング毎、または試合単位で行うことが考えられる。サッカーシミュレーションゲームにおいても同様であり、この場合、予測演算を行う第１の期間としては、前半４５分、後半４５分、延長前後半１５分づつ、PK戦といった区切りで行われればよい。
【図面の簡単な説明】
【０１０３】
【図１】本発明の実施形態におけるゲーム装置の構成ブロック図である。
【図２】本実施形態におけるゲーム装置の制御部を説明する機能ブロック図である。
【図３】記憶部に格納される状況別音声データのデータ構成例である。
【図４】記憶部に格納される馬名音声データのデータ構成例である。
【図５】記憶部に格納されるワークデータのデータ構成例である。
【図６】本実施形態におけるゲーム装置の動作を説明するフローチャートである。
【図７】選択部が行う音声データの選択方法（その１）を説明するフローチャートである。
【図８】選択部が行う音声データの選択方法（その２）を説明するフローチャートである。
【図９】選択部が行う音声データの選択方法（その３）を説明するフローチャートである。
【図１０】本実施形態において実施される競馬ゲームにおけるレースシーンを説明する図である。
【図１１】選択部が行う音声データの選択方法（その１）に対応し、Ａは、優先度に基づいて、次に実況される音声データが選択される様子を説明する図であり、Ｂは、実況される音声データに対応するフレーズを示した図である。
【図１２】選択部が行う音声データの選択方法（その２）に対応し、Ａは、優先度に基づいて、次に実況される音声データが選択され、更に、シフト時間に基づき、選択された音声データ間の空白期間に別の音声データが埋められる様子を説明する図であり、Ｂは、実況される音声データに対応するフレーズを示した図である。
【図１３】選択部が行う音声データの選択方法（その３）に対応し、Ａは、親子関係に基づいて、次に実況される音声データが選択される様子を説明する図であり、Ｂは、実況される音声データに対応するフレーズを示した図である。
【符号の説明】
【０１０４】
１１  制御部、１２  RAM、１３  記憶部、１４  音声再生部、１５  周辺機器インタフェース、１６  入力部、１７  表示部、３１  予測演算部、３２  選択部、３３  合成部
【図１】
2006087620.tif 000003
【図２】
2006087620.tif 000004
【図３】
2006087620.tif 000005
【図４】
2006087620.tif 000006
【図５】
2006087620.tif 000007
【図６】
2006087620.tif 000008
【図７】
2006087620.tif 000009
【図８】
2006087620.tif 000010
【図９】
2006087620.tif 000011
【図１０】
2006087620.tif 000012
【図１１】
2006087620.tif 000013
【図１２】
2006087620.tif 000014
【図１３】
2006087620.tif 000015