Notice: Undefined variable: fterm_desc_sub in /mnt/www/biblio_conv.php on line 353
ゲームプログラム、ゲーム装置、およびゲーム制御方法
説明

ゲームプログラム、ゲーム装置、およびゲーム制御方法

【課題】プレイヤのボールの読みを、打撃結果に反映させることができるゲームプログラム、ゲーム装置、およびゲーム制御方法を提供する。
【解決手段】飛翔体キャラクタが作用面に到達する前に、作用面を構成する複数の領域の中から、操作部を介してプレイヤによって選択される少なくとも1つの領域を選択領域として順次、特定する領域特定機能と、選択領域のそれぞれに、特定の順に単調減少する重みを割り当て、かつ、複数の領域のうちプレイヤによって選択されなかった非選択領域のそれぞれには、選択領域に割り当てられる重みよりも小さい重みを割り当てる重み付け機能と、飛翔体キャラクタが、選択領域のいずれかに到達した場合に、飛翔体キャラクタが到達した選択領域に割り当てられた重みに基づいて、飛翔体キャラクタの作用力を求める作用力計算機能とを実現する。

【発明の詳細な説明】
【技術分野】
【0001】
本開示は、操作部を介してプレイヤが、飛翔体キャラクタに対し、人的キャラクタによって作用面上において作用を及ぼす操作を行うゲームを実行するゲームプログラム、ゲーム装置、およびゲーム制御方法に関する。
【背景技術】
【0002】
ゲームプログラムを実行させて、プレイヤがゲームを楽しむことができるさまざまなゲーム機が普及している。例えば野球ゲームにおいては、ユーザであるプレイヤは、コントローラを操作することによって打者キャラクタを動かし、投手キャラクタが投げたボールキャラクタを打つ。
【0003】
従来技術による携帯型のゲーム機は、特許文献1に記載されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許第3822215号明細書
【発明の概要】
【発明が解決しようとする課題】
【0005】
現実の野球においては、打者は、次に来るボールのコースをある程度、予想する。打者の予想(「読み」)が実際に当たると、ヒットになる確率が高く、ヒットになった場合は長打になりやすい。逆に読みがはずれると(すなわち予期しないコースにボールが来ると)、ヒットになる確率は低く、仮にヒットになっても長打にはなりにくい。
【0006】
しかし従来のゲーム機では、打者であるプレイヤがボールを打ったときの判定は、バットと、ボールとの距離だけに基づいてなされていた。そのため従来のゲーム機は、打者による次のボールの予想を、打撃結果に反映できない。これは、現実の野球を感じさせるリアル感に欠ける一因である。
【0007】
そこで本発明は、プレイヤのボールの読みを、打撃結果に反映させることができるゲームプログラム、ゲーム装置、およびゲーム制御方法を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明のある実施形態によれば、ゲーム空間内に設定された飛翔体キャラクタおよび前記飛翔体キャラクタに対して作用を及ぼす人的キャラクタを表示部に表示し、操作部を介してプレイヤが、前記ゲーム空間内に設けられた複数領域から構成される仮想的な作用面に向かって飛翔する前記飛翔体キャラクタに対し、前記人的キャラクタによって前記作用面上において作用を及ぼす操作を行うゲームを実行可能なコンピュータに、前記飛翔体キャラクタが前記作用面に到達する前に、前記作用面を構成する複数の領域の中から、前記操作部を介して前記プレイヤによって選択される少なくとも1つの領域を選択領域として順次、特定する領域特定機能と、前記選択領域のそれぞれに、前記特定の順に単調減少する重みを割り当て、かつ、前記複数の領域のうち前記プレイヤによって選択されなかった非選択領域のそれぞれには、前記選択領域に割り当てられる重みよりも小さい重みを割り当てる重み付け機能と、前記飛翔体キャラクタが、前記選択領域のいずれかに到達した場合に、前記飛翔体キャラクタが到達した選択領域に割り当てられた重みに基づいて、前記飛翔体キャラクタの作用力を求める作用力計算機能とを実現させる。
【0009】
上記構成においては、ストライクゾーンが複数の領域に分割される。打者であるプレイヤは、次のボールが来ると予想する領域を選択する。選択するときには、プレイヤは最も来る確率が高いと予想する領域から選択する。ゲーム機は、プレイヤが選択した領域(選択領域)を、その順序と共に記憶する。典型的にはストライクゾーン中のいくつかの領域が選択され、他の領域は選択されない。ゲーム機は、記憶された順序で単調減少する重みをそれぞれの領域に割り当てる。選択領域には、非選択領域よりも大きい重みを割り当てる。したがって選択された領域内をボールが通過し、打者によって打たれた場合は、選択されなかった領域内をボールが通過した場合に比べて、ヒットになりやすい。上記構成により、プレイヤは、ボールが来ると予想する領域を選択することによって、打撃結果の向上を期待できる。その一方で、選択領域にボールが来ないときには打撃結果がふるわないというペナルティが課せられるので、従来のように打撃時のバットとボールとの距離だけでなく、打者の読みに基づいて打撃結果が変わることになる。この結果、プレイヤにはプラスの利益享受を狙おうとする一種の射幸性がもたらされると同時に、予想が外れればデメリットも生じるという緊張感も与えられることになり、ゲームとしての興趣性が向上する。さらにまた、選択領域のそれぞれに、特定の順に単調減少する重みを割り当てるので、プレイヤとしては、自分の予想として最も高い確率でボールが通過するであろうと判断する第1の領域を最初に選択し、その後に続く複数の領域を順次選択することになるため、要は重要な順序に選択していけばよいことから、直感的で容易な選択操作を行うことができる。
【0010】
ある実施形態では、前記重み設定機能は、前記非選択領域のそれぞれにおける重みを、前記非選択領域のそれぞれと前記選択領域のそれぞれとの距離の増加に応じて、前記選択領域のそれぞれの重みを減少させた値の総和に対応する値に設定する。
【0011】
上記構成においては、非選択領域の重みは、近傍に存在する選択領域の重みをある程度、反映する。例えば、近傍に選択領域が存在すれば、その影響を受けて、その非選択領域の重みも大きくなる。選択領域と非選択領域との距離が大きくなると、影響度は小さくなる、すなわち重みが大きくなる度合いが減る。これにより選択領域から非選択領域へ滑らかに重みを分布させることができる。
【0012】
ある実施形態では、空間的に連続でない2つの前記選択領域に割り当てられた前記重みの差分は、空間的に連続である2つの前記選択領域に割り当てられた前記重みの差分よりも大きい。
【0013】
上記構成においては、空間的に連続でない領域を選択することによるペナルティをプレイヤに課す。そのため、領域選択に際してプレイヤはより慎重な選択を促され、ゲームの緊張感が増す。
【0014】
ある実施形態では、前記ゲームは野球ゲームであり、前記人的キャラクタは打者キャラクタであり、前記飛翔体キャラクタは投手キャラクタによって送出され、前記作用面はストライクゾーンを構成し、前記送出の後には、前記コンピュータは前記選択を許可しない。
【0015】
上記構成におけるゲームプログラムは、野球を再現する。人気の高い野球を再現することにより、プレイヤは実感を伴ってゲームをプレイすることができる。
【0016】
ある実施形態では、既に行われた前記選択と同じように前記プレイヤが新たに選択するときだけ、前記選択を取り消して、再選択することを許可する機能をさらに備える。
【0017】
上記構成においては、プレイヤが再び領域を選択するときに、既に選択したのと同じ軌跡を操作部上でなぞるなどの条件が課せられる。この条件を満たさないと再選択が許可されないので、ゲームに緊張感が出て、興趣性が向上する。
【0018】
ある実施形態では、前記選択から所定時間が経過したときだけ、前記再選択することを許可する機能をさらに備える。
【0019】
上記構成においては、プレイヤが再び領域を選択するときに、所定時間が経過するまでは再選択が許可されないという条件が課せられる。この条件を満たさないと再選択が許可されないので、ゲームに緊張感が出て、興趣性が向上する。
【0020】
ある実施形態では、前記選択領域に割り当てられた重みと、前記非選択領域に割り当てられた重みとの和は所定の一定値である。
【0021】
上記構成においては、選択領域に割り当てられる重みが大きくなるほど、非選択領域には小さい重みしか割り当てられない。そのため、読みが当たったときと、読みがはずれたときの打撃結果の差が大きくなる。よってゲームの興趣性が増す。
【0022】
ある実施形態では、前記選択領域に割り当てられた重みと、前記非選択領域に割り当てられた重みとの和は、前記打者キャラクタに依存して異なる値である。
【0023】
上記構成においては、打者キャラクタに依存して、割り当てられる重みが異なる。例えば、強打者の場合は割り当てられる重みが大きくなり、強くない選手は重みが小さくなる。そのため実際の野球のように、打者キャラクタによってヒットの出やすさが大きく変わり得る。よってゲームの興趣性が増す。
【0024】
ある実施形態では、前記非選択領域に割り当てられた重みは、前記打者キャラクタによる作用が空振りに対応するようゼロに設定される。
【0025】
上記構成においては、ボールが非選択領域を通過すると、打者キャラクタはヒットが打てずに空振りになる。これにより読みがはずれたときのペナルティが増し、ゲームの緊張感が増す。
【0026】
ある実施形態では、前記操作部は、前記コンピュータに結合されたタッチパネルを含み、前記選択は、前記プレイヤが前記タッチパネルを触わることによって行われる。
【0027】
上記構成においては、プレイヤは、液晶画面を見ながらその上に設けられたタッチパネルを触ることで領域を選択できる。これにより選択操作が容易にかつ迅速に行える。
【発明の効果】
【0028】
本発明によれば、プレイヤのボールの読みを、打撃結果に反映させることができるゲームプログラム、ゲーム装置、およびゲーム制御方法を提供できる。
【図面の簡単な説明】
【0029】
【図1】本発明のある実施形態によるゲームプログラムを実行可能なコンピュータの一例であるゲーム機の外観図である。
【図2】ゲーム機が野球ゲームを実行しているときの画面を示す図である。
【図3】ゲーム機が、プレイヤによって選択された領域を特定する機能を説明する図である。
【図4】ユーザによる選択の後に、ハイライト表示される選択領域を示す図である。
【図5】プレイヤによって選択された選択領域と、選択されなかった非選択領域と、それらに割り当てられた重みを示す図である。
【図6】プレイヤによって選択された選択領域と、選択されなかった非選択領域と、それらに割り当てられた重みを示す図である。
【図7】プレイヤによって選択された選択領域と、選択されなかった非選択領域と、それらに割り当てられた重みを示す図である。
【図8】プレイヤによって選択された選択領域と、選択されなかった非選択領域と、それらに割り当てられた重みを示す図である。
【図9】プレイヤによって選択された選択領域と、選択されなかった非選択領域と、それらに割り当てられた重みを示す図である。
【図10】同じ領域を連続して選択した例を示す図である。
【図11】ストライクゾーンに連続的な重みを割り当てる重み付け機能を示す図である。
【図12】本発明のある実施形態によるゲームプログラムのフローを示す図である。
【図13】ゲーム機のハードウェアを示すブロック図である。
【図14】プレイヤによる領域選択の例を示す図である。
【図15】プレイヤによる領域選択の例を示す図である。
【図16】本発明のある実施形態によるゲームプログラムを実行可能なコンピュータの一例であるゲーム機を含むシステムの概略図である。
【発明を実施するための形態】
【0030】
以下、本発明によるゲームプログラム、ゲーム装置、およびゲーム制御方法の例示的実施形態について、図面を用いて詳細に説明する。図面において同一又は同様の構成要素は、同じ参照符号によって表される。
【0031】
(ゲーム機の概要)
図1は、本発明のある実施形態によるゲームプログラムを実行可能なコンピュータの一例であるゲーム機100の外観図である。ゲーム機100は、筐体102上、およびその内部に設けられたさまざまな電子要素を含む。ゲーム機100は、典型的には携帯型のゲーム専用機、または携帯電話機であり、タッチパネルを持つ液晶表示部を有する。ゲーム機100は、携帯型には限定されず、後述するように、据え置き型のテレビゲーム機であってもよく、ゲームセンターなどに見られる業務用機であってもよい。
【0032】
ゲーム機100は、仮想的なゲーム空間内にキャラクタを生成し、ゲームのルールに従って人的キャラクタおよび飛翔体キャラクタ(総称してゲームキャラクタと呼ぶ)を動かす。ゲームプログラムは、ゲーム空間、ゲームキャラクタ、およびゲームルールなどを記述する。
【0033】
例えば野球ゲームのゲームプログラムであれば、ゲーム空間は、野球場を模擬する空間である。人的キャラクタには、例えば、投手キャラクタ、打者キャラクタ、および野手キャラクタがある。飛翔体キャラクタには、ボールキャラクタがある。その他のキャラクタとしては、バットキャラクタや背景キャラクタなどがある。
【0034】
ゲームルールには、プレイヤと情報をやりとりしつつ、ゲームを進めるためのさまざまなルールがある。例えば野球ゲームのゲームプログラムであれば、ボールが打者に打たれることなくストライクゾーンを通過すると、ストライクとみなすルールなど、野球ゲームを規定するさまざまなルールがある。
【0035】
筐体102には開口部が設けられ、そこからプレイヤ(操作者、ユーザとも呼ばれる)は表示部104を見ることができる。表示部104は、典型的には液晶ディスプレイであるが、これには限られず任意の表示装置であり得る。表示部104は、さまざまなGUI(グラフィカルユーザインタフェース)を表示することができる。例えば表示部104は、例えば、カーソルを動かす向きを入力する十字キー106(十字ボタン、方向キーとも呼ばれる)、および野球ゲームでバットをスイングするボタン108などのさまざまなアイコンを表示できる。表示部104は、これら十字キー106やボタン108に限定されず、ゲームプログラムを実行するのに必要な任意のGUIおよびキャラクタを表示できる。
【0036】
表示部104の上には、プレイヤからの入力を受け取る操作部150が設けられる。操作部150に用いられる電極は透明であるので、表示部104に表示されるアイコンを触れることによって、操作部150はプレイヤからの入力を検出できる。
【0037】
プレイヤは、操作部150を操作することによって、ゲーム空間内のキャラクタを動かすことができる。例えば野球ゲームの場合は、ゲーム空間内に投手キャラクタ、打者キャラクタ、野手キャラクタなどが配置される。プレイヤは、表示部104に表示される十字キー106やボタン108に触れることによって、キャラクタを操作できる。例えばプレイヤは、打者キャラクタがバットを振る時の、バットの打撃部分の位置、バットを振る力の強さ、バットを振るタイミングなどを操作部150に触れることによって制御できる。このような制御によってプレイヤは、打者にボールを打たせる操作を行うことができる。
【0038】
操作部150は、典型的には静電容量方式のタッチパネルである。操作部150上のタッチパネルには電界が発生されている。指示手段であるプレイヤの指が操作部150に接触すると、操作部150の表面において電荷がわずかに変化する。この電荷の変化に基づいて接触位置を検出する。例として、本実施形態は、投影型静電容量方式タッチパネルを利用するが、このタイプは、指先の多点検出(マルチタッチとも呼ばれる)が可能なため、プレイヤからの複雑な入力を受け取ることができる。指示手段は、タッチパネルの種類に依存して、プレイヤの指、スタイラス(タッチペンとも呼ばれる)などであり得る。図1において表示部104の輪郭よりも操作部150の輪郭のほうが小さく描かれているが、これには限定されず、表示部104および操作部150の大きさが実質的に同じであってもよい。
【0039】
ゲーム機100は、その筐体102上に、ホームボタン110、ボリュームボタン112、スリープボタン114などの入力デバイスも備える。プレイヤがホームボタン110を押すと、ゲーム機100は、ホーム画面を表示したり、スリープ状態から復帰したりする。プレイヤがボリュームボタン112を操作すると、ボリュームボタン112上でプレイヤが押さえる場所に依存して、ゲーム機100は、音量を上げたり、下げたりする。プレイヤがスリープボタン114を押すと、ゲーム機100は、スリープ状態に遷移する。
【0040】
ゲーム機100は、マイク116、スピーカ118、およびスピーカ120を備える。例えば電話を使用するときにユーザは、スピーカ118からの音を聞き、マイク116に向かって話す。スピーカ120は、スピーカ118に比べてより大きい音量で音声を出力することができる。そのためスピーカ120は、ヘッドホンを使うことなく、ゲーム機100が発するゲームのサウンドを楽しむときに典型的には利用される。
【0041】
図2は、ゲーム機100が野球ゲームを実行しているときの画面を示す図である。ゲーム機100は、典型的には野球ゲームのゲームプログラムを実行するが、これには限定されない。より一般的には、ゲーム機100は、ゲーム空間内(例えば野球場)に設定された飛翔体キャラクタ(例えばボールキャラクタ)および飛翔体キャラクタに対して作用(例えば打撃)を及ぼす人的キャラクタ(例えば打者キャラクタ)220を表示部104に表示する。ゲーム空間内には、仮想的な作用面が設けられる。操作部150を介してプレイヤによって制御される人的キャラクタ220は、この作用面において、飛翔体キャラクタに対して作用を及ぼす。作用面上には、複数領域(例えばストライクゾーン200)が設けられ、他の人的キャラクタ(例えば投手キャラクタ)が飛翔体キャラクタをこの複数領域に向かって発射する(例えば投げる)。
【0042】
野球ゲームの場合、表示部104上には、例えば縦3マス、横3マスの9個の領域201〜209からなるストライクゾーン200と、人的キャラクタである打者キャラクタ220とが表示される。領域の個数は9個には限定されず、縦4マス、横4マスの16個など任意の個数であり得る。
【0043】
投手キャラクタが投げたボールキャラクタがストライクゾーン200を含む仮想的な作用面に到達する前に、プレイヤは、操作部150を指で触ることによって、ボールキャラクタが到達すると予想する領域を選択する。予想した領域においてボールキャラクタが打たれると、予想した領域以外の領域で打たれた場合に比べて、ヒットになりやすい。
【0044】
ゲーム機100が実行するゲームの種類は、野球には限定されず、一般に飛翔体キャラクタを扱うゲームならよい。例えば、ゲーム機100は、シューティングゲーム、アクションゲーム、シミュレーションゲームなどのゲームを実行し得る。実行されるゲームに応じて、飛翔体キャラクタは、ボール、フリスビー、円盤、槍、モンスターなどであり得る。
【0045】
(プレイヤによる領域選択)
図3は、ゲーム機100が、プレイヤによって選択された領域を特定する機能を説明する図である。例えばもしプレイヤが、次の投球でボールキャラクタが高めに来ると予想する場合、プレイヤは、ストライクゾーン200のうち内角高めから外角高めに対応する領域201,202,203をこの順に指300でなぞる。換言すれば、まずプレイヤの指300は、位置301において領域201を選択する。次にプレイヤの指300は、位置302において領域202を選択する。最後にプレイヤの指300は、位置303において領域203を選択する。ゲーム機100の操作部150は、プレイヤによって(例えば指300によって)選択された領域(以下「選択領域」と呼ぶ)201,202,203に関連付けられた信号をデータ処理部1300(図13を参照して後述する)に送る。データ処理部1300は、選択領域201,202,203を特定する。
【0046】
本実施形態ではプレイヤは、ボールが到達すると予想される複数の領域を「なぞる」だけで、簡単に領域を選択できる。本明細書では「なぞる」とは、指などが操作部150から実質的に離れることなく、操作部150に接触したままで、その上を移動することである。したがって図8を参照して後述する、複数の領域を別々に触って選択することは、「なぞる」ことと異なる。
【0047】
本実施形態では、投手キャラクタがボールキャラクタを投球した(すなわちリリースした)後には、ゲーム機100は、領域選択を許可しない。これにより打者キャラクタ220を操作するプレイヤに、領域選択についての時間的な制限を課すことができる。このような時間的制限は、ゲームの緊張感を出すのに役立ち得る。
【0048】
図4は、図3に示すユーザによる選択の後に、ハイライト表示される選択領域201,202,203を示す図である。人的キャラクタ220(例えば打者キャラクタ)が飛翔体キャラクタ(例えばボールキャラクタ)を打撃するまでのあいだ、ゲーム機100は、特定された選択領域201,202,203をハイライト表示する。ハイライト表示は、例えば選択領域の明度を増すことによって実現できるが、これには限定されず任意のやり方で実現できる。
【0049】
(選択領域およびその重み)
図5は、プレイヤによって選択された選択領域201,202,203と、選択されなかった非選択領域204〜209と、それらに割り当てられた重みを示す図である。本発明のさまざまな実施形態によれば、プレイヤは、飛翔体キャラクタ(例えばボールキャラクタ)が到達すると予想した領域を選択する。プレイヤが選択しなかった領域は「非選択領域」と呼ばれる。選択領域において人的キャラクタ(例えば打者キャラクタ)が飛翔体キャラクタ(例えばボールキャラクタ)に作用を及ぼす(例えば打撃する)と、非選択領域における場合よりも、大きい作用力が飛翔体キャラクタに作用する(すなわち、打撃力が増す)。
【0050】
野球ゲームを例に挙げれば、プレイヤは打者キャラクタを操作して、ボールキャラクタを打とうとする。投手キャラクタが投げるボールキャラクタがホームベースに到達するまでに、プレイヤは、ボールキャラクタが到達する領域を選択する。これは実際の野球においては、打者が次に来るボールの位置(「打撃ポイント」)を予想することに対応する。打者の「読み」が当たって、予想した打撃ポイントに来たボールを打つと、打撃力が増す。逆に打者の「読み」がはずれて、予想した打撃ポイントではない位置に来たボールを打つと、通常の打撃よりも、打撃力が減る。換言すれば、選択領域において打者キャラクタがボールキャラクタを打撃すると、非選択領域における場合よりも、ヒットになる確率が高い(「ヒット性が高い」とも呼ばれる)ように、ゲーム機100は作用力(例えば打撃力、またはヒット性とも呼ばれる)を計算する。このような実際の野球における打者の読み、およびその読みが当たったかどうかに依存した打撃力の変化を再現することは、本発明の目的のうちの一つである。
【0051】
例えば図2〜図4に示す具体例において、高めのボールが来るとプレイヤが予想するとき、プレイヤは、領域201,202,203をなぞることによって選択する。選択領域201,202,203には、非選択領域204〜209に比べて大きい重みが割り当てられる。ゲーム機100は、プレイヤによって選択された領域を特定する順番に従って、単調減少する重みを選択領域に割り当てる。本明細書において「単調減少」は、同じかまたは減少することをいう。例えば、特定する順に、領域の重みが5.0,5.0,3.0である場合も単調減少であるという。
【0052】
例えば、プレイヤが領域201,202,203の順に操作部150に触れたとき、領域201,202,203には、それぞれ5.0,3.0,2.0の重みが割り当てられる。図5では、領域201,202,203の右下にそれぞれ5.0,3.0,2.0の数値が示される。これら数値は、ゲーム機100が記憶する、それぞれの領域に割り当てられた重みを表現するために図示されているのであって、ゲーム機100は、これらの数値を表示部104上に実際に表示しなくてもよい。逆に、ゲーム機100は、それぞれの領域に割り当てられた重みを表示部104上に表示してもよい。例えば、ゲーム機100は、表示部104上に重みを表す数値を表示してもよい。代替として、ゲーム機100は、表示部104上で、それぞれの領域を、重みを表す数値に対応する色で塗りつぶしてもよい。例えば、ゲーム機100は、領域201,202,203を、重み5.0に対応する赤、重み3.0に対応するオレンジ、重み2.0に対応する黄でそれぞれ塗りつぶしてもよい。
【0053】
飛翔体キャラクタが選択領域のうちのいずれかに到達すると、ゲーム機100は、飛翔体キャラクタが到達した領域に割り当てられた重みに基づいて、飛翔体キャラクタの作用力を求める。典型的には、ゲーム機100は、飛翔体キャラクタの作用力を
(i)飛翔体キャラクタ(例えばボールキャラクタ)が到達した領域に割り当てられた重み、および
(ii)飛翔体キャラクタと、人的キャラクタ(例えば打者キャラクタ)が飛翔体キャラクタに作用を及ぼす物体(例えばバット)との近接度(例えば距離に反比例する値など、距離が小さいほど大きい値)
の積として計算する。しかし重みと近接度との積には限定されず、ゲーム機100は、飛翔体キャラクタの作用力が、飛翔体キャラクタが到達した領域に割り当てられた重みを反映するような、任意の方法によって作用力を決定できる。
【0054】
本明細書において「作用力の大きさ」とは、人的キャラクタによって飛翔体キャラクタに与えられる作用力の大きさを意味し、典型的には打撃力の大きさである。したがって野球ゲームにおいては、作用力の大きさは、ヒット性、およびヒットになる確率と相関がある。このヒット性を決めるパラメータの例には、打球速度、打球角度などがある。作用力が大きいほど、飛翔体キャラクタは、例えば遠くまで飛ぶ。
【0055】
ある具体例では、投手キャラクタがボールキャラクタを投球する(すなわちリリースする)までの間に、プレイヤは、領域201,202,203を選択する。もしボールキャラクタが領域201内に到達し、かつプレイヤがタイミングよく、例えばボタン108を押すと、ボールキャラクタは打者キャラクタ220によって打たれる。このときの打撃判定には、領域201に割り当てられた重みが反映された作用力が用いられる。そのため非選択領域内に到達したボールキャラクタを打つ場合に比べて、領域201内における打撃のほうがヒットになる率が高く、同じヒットの中でも例えば飛距離が伸びる。この例では、後述するミートカーソルを用いることなく、ボールキャラクタが選択領域内に到達したかに基づいて、打者キャラクタ220がボールキャラクタを打撃したかを決定する。
【0056】
他の具体例では、ゲーム機100は、ミートカーソル500を表示部104上に表示する。ミートカーソル500は、バットキャラクタのうちボールキャラクタを打撃できる部分に対応する。プレイヤは、例えば表示部104上に表示された十字キー106を操作することによって、ミートカーソル500をストライクゾーン200内で移動させることができる。しかしミートカーソル500の移動はこれには限定されず、ゲーム機100が備えるジャイロセンサを用いてミートカーソル500を移動してもよい。この場合は、ゲーム機100をプレイヤが傾けることによってミートカーソル500を移動させることができる。上の例と同様、投手キャラクタがボールキャラクタを投球する(すなわちリリースする)までの間に、プレイヤは、領域201,202,203を選択する。もしボールキャラクタが領域201内に到達し、かつプレイヤがタイミングよく、例えばボタン108を押し、かつミートカーソル500とボールキャラクタとの距離が十分に近いと、ボールキャラクタは打者キャラクタ220によって打たれる。上の例と同様、打撃判定には、領域201に割り当てられた重みが反映された作用力が用いられる。そのため非選択領域内に到達したボールキャラクタを打つ場合に比べて、領域201内における打撃のほうがヒットになる率が高く、同じヒットの中でも例えば飛距離が伸びる。
【0057】
上のいずれの具体例でも、ボールキャラクタが打たれると、選択領域201に割り当てられた、より大きい重み(ここでは5.0)に応じて作用力が増す。これによりヒットになる確率が増す。
【0058】
(非選択領域およびその重み)
プレイヤによって選択されていない領域、すなわち非選択領域の重みの計算例を説明する。飛翔体キャラクタが到達すると予想した選択領域201,202,203に比べて、非選択領域204〜209の重みは低くなるように計算される。例えば選択領域が3つの場合は、
(最初に触れた選択領域の重み)>(次に触れた選択領域の重み)>(最後に触れた選択領域の重み)>(通常の打撃の重み)=1.0>(非選択領域の重み) −−式1
という関係が満たされるように、ゲーム機100は重み付けを行う。ここで「通常の打撃の重み」とは、ボールが到達する領域をプレイヤが予想しなかった(すなわち選択領域が存在しない)場合の重みに対応する。重み1.0は、作用力を変化させないことから、デフォールトの打撃に対応する。式1の関係を満たす重みを付けることによって、プレイヤは、選択領域にボールが来た(すなわち読みが当たった)場合には打撃力が増すので有利になるが、逆に非選択領域にボールが来た(すなわち読みがはずれた)場合には打撃力が減るので不利になる。本実施形態では、ボールが到達する領域を選択しないという選択肢もプレイヤにはある。
【0059】
非選択領域204〜209は、以下のルールに従ってそれぞれ重み付けされる。一般に、ある非選択領域の重みは、非選択領域と選択領域との距離の増加に応じて、選択領域の重みを減少させた値の総和に対応するよう設定される。例えば、ある非選択領域の重みは、選択領域の重みを、その非選択領域と選択領域との距離によって除した値の総和に適当な係数をかけることによって得られる。この係数は、非選択領域の重みを、通常の打撃の重み1.0よりも小さくするためである。非選択領域の1.0よりも小さい重みは、読みがはずれた場合にプレイヤに課せられる一種のペナルティを意味する。つまり、プレイヤの読みに反して打者キャラクタが非選択領域でボールキャラクタを打つことになった場合には、通常の打撃に比べて、打撃力が減る。このように読みが当たると打撃力を増し、読みがはずれると打撃力を減らすことによって、ゲーム機100はその遊戯性を高めることができる。
【0060】
具体的な例として、非選択領域の重みは、例えば下の式2のように表せる。
【0061】
(非選択領域の重み)=(Σ(選択領域の重み/非選択領域との距離))×係数 (ただしΣはそれぞれの選択領域についての総和) −−式2
例えば非選択領域204の重みを例に挙げる。係数を0.1とすると、
(非選択領域204の重み)=(5.0/1+3.0/2+2.0/3)×0.1≒0.7
と計算できる。ここで距離とは、その非選択領域から選択領域までを縦および横に進んだときの「歩数」である。例えば、非選択領域204から選択領域203まで移動するには、上に1マス、右に2マスの合計3マス移動しなければならない。よって非選択領域204と選択領域203との距離は3である。非選択領域204と同様にして、非選択領域205〜209の重みは、図5に示されるように計算される。
【0062】
しかし距離は、上記には限定されずに、任意のやり方で定義され得る。例えば数学における距離の定義を用いてもよい。この場合、非選択領域204と選択領域203との距離は、領域の縦の長さ=1、領域の横の長さ=1とすれば√5である。
【0063】
図6は、プレイヤによって選択された選択領域601,605,609と、選択されなかった非選択領域602〜604,および606〜608と、それらに割り当てられた重みを示す図である。図5の例では、プレイヤは操作部150上で横に指を移動させたが、図6の例では、プレイヤは操作部150上で斜めに(例えば内角高めから外角低め)に指を移動させる。これによりストライクゾーン600内で斜めに位置する選択領域601,605,609がゲーム機100によって特定される。図5を用いて説明したのと同様に、選択領域および非選択領域について重みを計算することによって、図6に示される重みの分布が得られる。
【0064】
図7は、プレイヤによって選択された選択領域705,706と、選択されなかった非選択領域701〜704,および707〜709と、それらに割り当てられた重みを示す図である。図5および図6の例では、プレイヤは3つの領域を選択した。図6の例では、プレイヤはストライクゾーン700の中の2つの領域を選択する。本実施形態では、選択領域における重みの総和は一定である。具体的には、図5および図6の例で、選択領域における重み5.0+3.0+2.0=10.0であり一定である。図7では選択領域が2つであるが、同じルールがあてはまり、最初に触れた領域に6.0が、次に触れた領域に4.0が割り当てられ、これらの総和はやはり10.0である。図5を用いて説明したのと同様に、選択領域および非選択領域について重みを計算することによって、図7に示される重みの分布が得られる。
【0065】
図8は、プレイヤによって選択された選択領域801,803,805と、選択されなかった非選択領域802,804,806〜809と、それらに割り当てられた重みを示す図である。図5〜図7の例では、プレイヤは操作部150上を指でなぞることによって、領域を選択した。図8の例では、プレイヤは3つの領域を別々に触れることによって選択する。別々に触れることによって選択する場合は、選択された領域の互いの距離に応じて、重みの減りが大きくなる。その結果、別々に触れることによって選択する場合は、選択領域の重みの総和が、なぞることによって選択する場合よりも少なくなる。例えば、図8の例では、領域801への接触811、領域805への接触812、および領域803への接触813が、この順で別々に操作部150に対してなされる。その結果、領域801,805,803の重みはそれぞれ5.0,2.0,1.5である。図6に示される5.0,3.0,2.0に比べて、これら重みは、距離に応じて、より急に減る。図5を用いて説明したのと同様に、選択領域および非選択領域について重みを計算することによって、図8に示される重みの分布が得られる。1領域ずつ選択するこの例では、ボールを狙う位置を独立して選択できるので、プレイヤが領域を選択する自由度が増す。一方で、2番目、3番目に選択される領域に割り当てられる重みが大きく減るというペナルティがプレイヤへ課せられる。その結果、遊戯性が向上する。
【0066】
図8の例をより一般的に表現すれば、空間的に連続でない2つの選択領域に割り当てられた重みの差分は、空間的に連続である2つの選択領域に割り当てられた重みの差分よりも大きいと言える。例えば、空間的に連続でない領域801,805の重みの差分は3.0であり、これは、空間的に連続である領域201,202の重みの差分である2.0より大きい。このように重みを設定することによって、プレイヤが離散した領域を選択すると、それに応じたペナルティが課せられる。
【0067】
図9は、プレイヤによって選択された選択領域901,903と、選択されなかった非選択領域902,904〜909と、それらに割り当てられた重みを示す図である。図8の例では、プレイヤは3つの領域を別々に触れることによって選択した。図9の例では、プレイヤは2つの領域を別々に触れることによって選択する。図8の例では選択領域の重みの総和は5.0+2.0+1.5=8.5である。図9の例も選択領域の重みの総和が5.0+3.5=8.5と同じになるよう、ゲーム機100は重み付けを行う。図5を用いて説明したのと同様に、選択領域および非選択領域について重みを計算することによって、図9に示される重みの分布が得られる。2領域しか選択しないこの例では、2番目に選択される領域の重みが、3領域を選択する場合に比べて大きい。具体的には領域805の重みが2.0であり、領域803の重みが1.5であるのに対して、領域903の重みは3.5と、1つの領域に重みが集中する。これにより領域903にボールが来るという読みが当たった場合は、領域805や領域803の場合よりも打撃力が増す。このような重み付けにより、遊戯性が向上する。図8および図9の例と同様に、プレイヤは1つの領域だけを選択することもできる。この場合、1つの領域に8.5の重みが割り当てられる。その結果、複数の領域を選択した場合と比べて、読みが当たった場合の打撃力がさらに増し、遊戯性が向上する。
【0068】
(同じ領域の連続選択)
図10は、同じ領域を連続して選択した例を示す図である。ある実施形態では、1打席中の1球目および2球目など連続して同じ領域を選択すると、選択領域の重みが増すようゲーム機100は重み付けを行う。例えば、1球目で図5に示すように領域を選択し、2球目でも同じように領域を選択すると仮定する。このとき2球目では図10に示されるように選択領域それぞれの重みが1.0ずつ増す。具体的には領域1001,1002,1003には、それぞれ6.0,4.0,3.0が割り当てられる。例えば1球目では式2において係数=0.1が用いられ、2球目では式2において係数=0.07が用いられる。選択領域それぞれの重みが増すので、非選択領域についてはその分だけ重みが減らされるよう、係数が設定される。図5を用いて説明したのと同様に、選択領域および非選択領域について重みを計算することによって、図10に示される重みの分布が得られる。
【0069】
(打者キャラクタに依存する重みの総和)
ある実施形態では、選択領域に割り当てられた重みの総和は、打者キャラクタに依存する。例えば、大打者(能力の高い打者)は、重みの総和が15.0であり、普通の打者は、重みの総和が10.0であり、能力の低い打者は、重みの総和が7.0である。このように重みの総和を選手キャラクタに依存して設定することによって、打者キャラクタに応じたヒット率が実現できる。例えば、能力が低い打者が1つの領域を選択しても7.0にしかならないが、大打者が1つの領域を選択すると15.0にもなり、これは打者の能力によって打撃力がほぼ2倍になることを意味する。これにより実際の野球で起こるように、大打者の読みが当たると、大きなヒットにつながるという傾向を作ることができる。これによりゲームの興趣性が高まる。
【0070】
ある実施形態では、選択領域に割り当てられた重みと、非選択領域に割り当てられた重みとの和が所定の一定値をとるように、個々の重みが設定され得る。これにより、ボールキャラクタが到達すると予想する領域(すなわち選択領域)の個数が少ないほど、読みが当たれば大きなヒットにつながる。逆に選択領域の個数が多いほど、読みが当たってもあまり大きなヒットにはならない。このような重み付けによって、ゲームの興趣性が高まる。
【0071】
さらにある実施形態では、選択領域に割り当てられた重みと、非選択領域に割り当てられた重みとの和は、打者キャラクタに依存して異なる値をとるように、個々の重みが設定され得る。これにより、ヒットの確率などは打者キャラクタに依存することとなり、ゲームの興趣性が高まる。
【0072】
(連続的な重みの割り当て)
図11は、ストライクゾーン1100に連続的な重み1101を割り当てる重み付け機能を示す図である。図11において、x軸はストライクゾーンの横方向を、y軸はストライクゾーンの横方向を表し、z軸は重みを表す。上で説明された例ではストライクゾーン200は9個の領域に分割され、それぞれの領域に重みが割り当てられる。したがって上の例では、9個の離散的な重みが用いられる。しかしこれには限定されず、さらに多い個数の領域を設け、それらのそれぞれに重みを割り当ててもよい。代替として、ストライクゾーンを分割せずに、ストライクゾーン全面にわたって連続的に重みを割り当ててもよい。例えば図11において、プレイヤが軌跡1102のように操作部150をなぞると、ストライクゾーン1100には、連続的な重み1101が割り当てられる。プレイヤがなぞった軌跡1102から、図11のような2次元の連続的な重みの分布を生成するためには、2次元スプライン補間のような任意の適切な補間方法が利用され得る。連続的な重み分布を生成し、作用力計算に利用するためには、計算のためのリソースが要求される。そのため、適度な間隔を置いて離散された重み値の分布を用いてもよい。

図11の例では、ゲーム機100は、重み1101に対応するグラデーションを施したストライクゾーンを表示部104上に表示してもよい。例えば、重みが大きい部分は赤で表示し、重みが小さい部分は青で表示し、それらの中間部分は黄で表示すればよい。逆に、ゲーム機100は、重みを表すグラデーションを表示しないで、プレイヤがなぞった軌跡1102だけを表示部104上に表示してもよい。
【0073】
(空振りになる非選択領域)
図5〜図11に示した実施形態では、非選択領域の重みはゼロではない。すなわち非選択領域であってもヒットになる可能性はあった。これに対して、ある実施形態では、非選択領域に割り当てられた重みは、打者キャラクタが空振りするような値に設定される。例えば、上述のように飛翔体キャラクタの作用力が(i)飛翔体キャラクタが到達した領域に割り当てられた重みと、(ii)飛翔体キャラクタと、人的キャラクタが飛翔体キャラクタに作用を及ぼす物体との近接度との積として計算されると仮定する。この場合、非選択領域の重みをゼロにすると、結果として得られる積もゼロとなり、すなわち作用力がゼロとなる。その結果、後述する打撃結果判定においては、空振りとなる。読みがはずれた場合、すなわちボールキャラクタが選択領域に到達しなかった場合、空振りになる。このようにプレイヤに領域選択に対するペナルティを課すことによって、ゲームに緊張感が出る。
【0074】
(ゲームプログラムのフロー)
図12は、本発明のある実施形態によるゲームプログラムのフロー1200を示す図である。フロー1200は、投手キャラクタが1投するあいだの、打者キャラクタ220の処理に対応する。したがってフロー1200は、野球ゲームを実行するゲームプログラムのうちの一部である。打者キャラクタ220がバッターボックスに入ると、フロー1200が開始される。
【0075】
本明細書のフロー図は、所望のデータ処理を行うプロセスを表す。そのようなプロセスは、典型的には複数のステップ群(すなわち機能群)を含む。ステップ群は、プロセスを実現するためのアクト(行為)に対応する。このようなステップは、典型的にはソフトウェアで実現される。代替としてブロックは、ハードウェアによって、またはソフトウェアおよびハードウェアの組み合わせによって実現されてもよい。図12のフロー1200は、ゲーム装置100が備えるCPUが、CPUに関連付けられたメモリに記憶されるゲームプログラムを実行することによって実現される。
【0076】
図12に示すさまざまなステップは、ゲーム装置100のデータ処理部1300(図13を参照して後述する)によって実行される。具体的には、データ処理部1300によって実行されるステップは、ゲーム装置100が備えるCPU1302が、RAM1304やCPU1302のキャッシュに記憶された命令群を実行することによって実現される。
【0077】
ステップ1202において、ストライクゾーン200を表示する。このとき他の人的キャラクタ、すなわち打者キャラクタ220や、図示されない投手キャラクタなどを表示部104上に表示してもよい。
【0078】
ステップ1204において、ゲーム機100のデータ処理部1300は、プレイヤが選択した領域を表す情報(領域情報と呼ぶ)を操作部150から受け取ることによって、選択領域を特定する。例えば、ゲーム機100のデータ処理部1300は、操作部150から受け取られた領域情報を、受け取られる順番を保ったままで、メモリ上に構成されたバッファに記憶する。これにより、ゲーム機100のデータ処理部1300は、後述する重み付けを実行するときに、特定された順に、選択領域に単調減少する重みを割り当てることができる。後述のデータ処理部1300は、ステップ1204を実行することによって、領域特定機能を実現する。換言すればデータ処理部1300は、ハードウェアおよびソフトウェアによって領域特定手段を構成する。
【0079】
ステップ1206において、ゲーム機100のデータ処理部1300は、例えば式1および式2を満たすように、選択領域および非選択領域に重みを割り当てる。選択領域および非選択領域の重みが満たすべき関係は、式1および式2には限定されない。より一般的には、選択領域のそれぞれには、特定された順に単調減少する重みを割り当て、かつ、非選択領域のそれぞれには、選択領域に割り当てられる重みよりも小さい重みを割り当てればよい。後述のデータ処理部1300は、ステップ1206を実行することによって、重み付け機能を実現する。換言すればデータ処理部1300は、ハードウェアおよびソフトウェアによって重み付け手段を構成する。
【0080】
ステップ1208において、ゲーム機100のデータ処理部1300は、所定の条件を満たすときには、プレイヤによる再選択を許可する。具体的には、プレイヤが既に行われた選択と同じように、再び選択を行うときだけ、既に行われた選択を取り消して再選択することを許可する。例えば、プレイヤが既に選択した領域と同じ領域を再び選択したとき、再選択を許可する。このような再選択は、意図しない領域をプレイヤが選択したとき(例えばまちがった領域に触れたとき)や、プレイヤが考えを変えたときに、プレイヤにもう一度、領域を選択する機会を与える。
【0081】
例として、プレイヤが操作部150をなぞることによって3つの領域を選択した場合は、プレイヤは、既に選択された3つの領域を通るように再び操作部150をなぞらなければならない。ゲーム機100のデータ処理部1300は、プレイヤが同じようになぞることによって、同一の3つの領域が再び選択されたことを認識する。これを認識したときだけ、ゲーム機100のデータ処理部1300は、プレイヤに再選択を許可する。したがってプレイヤが再選択をしたい場合は、選択の取り消しのために1回と、再選択のために1回と、合わせて2回、操作部150上でなぞるなどの入力を行う。
【0082】
さらに具体的な例では、ゲーム機100のデータ処理部1300は、既に行われた選択から所定時間が経過したときだけ、上の再選択を許可する。これはプレイヤに対する一種のペナルティとしてはたらく。すなわち所定時間が経過する間に、投手キャラクタがボールキャラクタを投球する時刻が迫ってくるので、再選択には迅速な操作が要求される。もし所定時間が経過してから、投手キャラクタがボールキャラクタを投球する時刻までに、再選択ができなければ、結局、いずれの領域も選択されずに、通常の打撃の重みが適用される。
【0083】
この所定時間の経過は、例えば、所定時間の間だけ、既に選択された領域を、より明るいハイライト(例えば通常のハイライトより明度が高いハイライト)で表示することによって実現できる。所定時間が経過した後は、通常のハイライトで選択された領域を表示する。これにより、選択領域が明るいハイライトで表示される間は再選択が受け付けられないことがプレイヤにはわかる。所定時間が経過し、選択領域が通常のハイライトで表示されようになると、再選択が可能であるとわかる。
【0084】
プレイヤが行った再選択が上述の条件を満たすとゲーム機100のデータ処理部1300が判断するとき(YESの枝)は、ステップ1204に戻る。プレイヤが行った再選択が上述の条件を満たさないとゲーム機100のデータ処理部1300が判断するとき(NOの枝)は、ステップ1210に進む。後述のデータ処理部1300は、ステップ1208を実行することによって、再選択許可機能を実現する。換言すればデータ処理部1300は、ハードウェアおよびソフトウェアによって再選択許可手段を構成する。
【0085】
ステップ1210において、ゲーム機100のデータ処理部1300は、
(i)飛翔体キャラクタ(例えばボールキャラクタ)が到達した領域に割り当てられた重み、および
(ii)飛翔体キャラクタと、人的キャラクタ(例えば打者キャラクタ)が飛翔体キャラクタに作用を及ぼす物体(例えばバット)との近接度(例えば距離に反比例する値など、距離が小さいほど大きい値)
とから飛翔体キャラクタに対する作用力を求める。後述のデータ処理部1300は、ステップ1210を実行することによって、作用力計算機能を実現する。換言すればデータ処理部1300は、ハードウェアおよびソフトウェアによって作用力計算手段を構成する。
【0086】
ステップ1212において、ゲーム機100のデータ処理部1300は、ステップ1210によって求められた作用力に基づいて、飛翔体キャラクタ(例えばボールキャラクタ)の打撃結果を判定する。具体的には、作用力(例えば打撃力)の大きさに応じて、打者キャラクタ220が打った結果を決定する。例えば作用力が所定の閾値よりも大きいときは、ホームランなどの長打を結果として出力する。逆に作用力が所定の閾値よりも小さいときは、ゴロやフライなどを結果として出力する。この出力は、ゲームプログラムの本体でゲームの進行のために利用される。後述のデータ処理部1300は、ステップ1212を実行することによって、打撃結果判定機能を実現する。換言すればデータ処理部1300は、ハードウェアおよびソフトウェアによって打撃結果判定手段を構成する。
【0087】
(ハードウェア)
図13は、ゲーム機100のハードウェアを示すブロック図である。ゲーム機100は、さまざまなハードウェア要素を含む筐体102を備える。筐体102には、表示部104、スピーカ120、および操作部150が設けられる。
【0088】
CPU1302は、ゲーム装置110の各構成要素と接続され、制御信号やデータをやりとりすることによって、その全体の動作を制御する。CPU1302は、RAM1304に記憶されたゲームプログラムを構成するステップ群を実行することによって、所望の機能を実現する。具体的にはCPU1302は、図12に示されるステップ群を実行することによって、ステップ群が規定する所望の機能群を実現する。
【0089】
CPU1302は、レジスタに対してALU(Arithmetic Logic Unit)を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。CPU1302は、マルチメディア処理のための加減乗除などの飽和演算、および三角関数などベクトル演算を高速に行えるように構成されてもよい。CPU1302は、演算を高速に行うためにコプロセッサを備えてもよい。
【0090】
RAM1304は、データやプログラムを一時的に記憶する。RAM1304は、ゲームプログラム、ゲームプログラムに付随するデータ、ネットワーク対戦モードにおける他のプレイヤに関連するデータ、通信に関連するデータなどを記憶する。CPU1302は、RAM1304に変数領域を設け、変数領域に格納された値に対して直接に演算を行ってもよい。CPU1302は、RAM1304に記憶された値をいったんレジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻してもよい。
【0091】
ROM1308は、電源投入直後に実行されるIPL(initial program loader)を記憶する。CPU1302は、IPLを実行することによって、記録媒体120に記録されたゲームプログラムを読み出す。CPU1302は、読み出されたゲームプログラムをRAM1304に記憶させ、ゲームプログラムの実行に必要な処理を行う。ROM1308は、ゲーム機100の制御に必要なオペレーティングシステムのプログラムおよび各種データを記録する。
【0092】
インタフェース1310は、操作部150によって検出されたプレイヤの指の動きに関連付けられたデータをバス1306を介してCPU1302などに送る。信号処理プロセッサ1312および画像処理プロセッサ1314は、バス1306を通してCPU1302と接続される。CPU1302は、ゲームプログラムからの命令を解釈し、各種のデータ処理および制御を行う。例えば、CPU1302は、信号処理プロセッサ1312に対して、画像データを画像処理プロセッサに供給するように命令する。信号処理プロセッサ1312は、例えばゲーム空間内におけるさまざまなキャラクタの計算、ゲーム空間からディスプレイ画面への座標変換計算、光源計算、および画像および音声データの生成を行う。
【0093】
画像処理プロセッサ1314は、2次元画像の重ね合わせ演算、αブレンディングなどの透過演算、各種の飽和演算などを高速に実行する。仮想3次元空間であるゲーム空間内には、各種のテクスチャ情報が付加されたポリゴンとして表現される、さまざまなキャラクタが配置される。画像処理プロセッサ1314は、このポリゴンをZバッファ法によってレンダリングする。画像処理プロセッサ1314は、ゲーム空間内に配置されたポリゴンを、所定の視点位置から所定の視線方向へ俯瞰したレンダリング画像を得るための演算を高速に実行できる。
【0094】
CPU1302は、画像演算プロセッサ1314と協調して、文字の形状を定義するフォント情報にしたがって、文字列を2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画したりする。
【0095】
データ処理部1300は、典型的にはCPU1302、RAM1304、ROM1308、信号処理プロセッサ1312、および画像処理プロセッサ1314によって構成される。データ処理部1300は、図5を参照して説明したさまざまなステップをCPU1302によって実行することにより、それぞれのステップに対応する機能をゲーム機100に実現させる。具体的には、データ処理部1300は、ステップ1204に対応する領域特定手段、ステップ1206に対応する重み付け手段、およびステップ1210に対応する作用力計算手段を少なくとも構成する。
【0096】
データ処理部1300は、上述の構成要素に加えて他のハードウェアまたはソフトウェアの要素をさらに備えてもよい。例えばデータ処理部1300は、単一のCPU1302の代わりに複数のCPUを用いることによって並列処理を行い、計算速度を高速化してもよい。
【0097】
逆に、データ処理部1300は、上述の構成要素の一部を含まなくてもよい。例えば、CPU1302の性能が十分に高いときは、信号処理プロセッサ1312を用いることなく、図12のステップを実行してもよい。この場合、データ処理部1300は、CPU1302、RAM1304、ROM1308、および画像処理プロセッサ1314によって構成されることになる。
【0098】
画像出力部1316は、典型的にはデジタルアナログ変換器、フレームメモリを有する。このフレームメモリは、例えば画像処理プロセッサ1314によって処理された画像データを記憶する。画像出力部1316は、画像データを表示部104へ出力する。
【0099】
音声出力部1318は、典型的にはデジタルアナログ変換器を有する。音声出力部1318は、ゲームプログラムなどによって生成された音声データをアナログ信号に変換し、スピーカ120に出力する。
【0100】
CPU1302は、ゲームの実行中において、効果音および楽曲データを生成し、音声信号として出力してもよい。音声出力部1318は、ROM1308に記録された音声データがMIDI(musical instrument digital interface)データである時は、関連付けられた音源データを参照することによって、MIDIデータをPCMデータに変換する。音声出力部1318は、音声データがADPCM(adaptive differential pulse code modulation)形式やOgg Vorbis形式などで圧縮されている時には、圧縮されたデータを展開してPCMデータに変換する。音声出力部1318は、PCMデータに対して、そのサンプリング周波数に応じたタイミングでデジタルアナログ変換を行って、出力する。
【0101】
本発明によるゲームプログラムは、典型的には外部の記録媒体から、またはインターネットを通してゲーム機100にロードされる。
【0102】
(領域選択の変形例)
上述の例においてプレイヤは、領域を選択するときに、指で操作部150を直線的になぞる。しかし領域選択の方法は、これには限定されない。例えば軌跡が曲線や多角形を描くように指で操作部150をなぞってもよい。
【0103】
図14は、プレイヤによる領域選択の例を示す図である。表示部103上に表示されるストライクゾーン1400は、9つの領域1401〜1409に分割されている。プレイヤが領域1409,1408,1405,1406をこの順で選択したいときは、始点1450から終点1452まで図14に示すように操作部150をなぞればよい。このときゲーム機100は、選択領域1409,1408,1405,1406を特定し、上述の方法で、それぞれに単調減少する重みを割り当てる。
【0104】
図15は、プレイヤによる領域選択の例を示す図である。表示部103上に表示されるストライクゾーン1500は、9つの領域1501〜1509に分割されている。プレイヤが領域1509,1506,1508をこの順で選択したいときは、始点1550から中間点1551を経由して終点1552まで図15に示すように操作部150をなぞればよい。このときゲーム機100は、選択領域1509,1506,1508を特定し、上述の方法で、それぞれに単調減少する重みを割り当てる。
【0105】
他の具体例では、ゲーム機100は、プレイヤが操作部150上をなぞった軌跡が、L字、U字、Z字、S字などの形状であるときには、それらの軌跡を含む領域を選択領域として特定する。
【0106】
(代替のハードウェア)
図16は、本発明のある実施形態によるゲームプログラムを実行可能なコンピュータの一例であるゲーム機1610を含むシステム1600の概略図である。システム1600は、典型的にはゲーム機1610、コントローラ1630、およびディスプレイ1640を含む。ゲーム機1610がゲーム機100と異なるのは、ゲーム機1610が携帯ゲーム機ではなく、据え置き型のゲーム機である点である。具体的にはシステム1600では、表示部104の代わりにディスプレイ1640が画像および音声を出力する。操作部150の代わりに、コントローラ1630が用いられる。しかしゲーム機1610の基本的な動作は、上述したゲーム機100のそれと同様である。したがってゲーム機1610は、図13に示すデータ処理部1300、インタフェース1310、画像出力部1316、および音声出力部1318などを備える。
【0107】
ゲーム機1610は、記録媒体1620からデータを読み出すドライブ1612を備える。ゲーム機1610は、ゲーム機100と同様、ゲームプログラムを実行することによって、仮想的なゲーム空間内にキャラクタを生成し、ゲームのルールに従ってキャラクタを動かす。
【0108】
記録媒体1620は、本発明によるゲームプログラムを記録した任意の適切なコンピュータ読み取り可能な記録媒体であって、例えばDVD−ROM(read only memory)である。しかし記録媒体1620はこれには限られず、BD(Blu-ray disc)−ROM、CD(compact disc)−ROM、半導体メモリなどであってもよい。
【0109】
プレイヤは、コントローラ1630を操作することによって、ゲーム空間内のキャラクタを動かすことができる。例えば野球ゲームの場合は、ゲーム空間内に投手キャラクタ、打者キャラクタ、野手キャラクタなどが配置される。プレイヤは、コントローラ1630が備えるボタンを押すことによって、キャラクタを操作できる。例えばプレイヤは、打者キャラクタがバットを振る時の、バットの打撃部分の位置、バットを振る力の強さ、バットを振るタイミングなどをコントローラのボタンを押すことによって制御できる。このような制御によってプレイヤは、打者にボールを打たせる操作を行うことができる。
【0110】
コントローラ1630は、典型的には、L1ボタン1631、および十字キー1632を備えるが、これだけではなく他のさまざまなボタンを備えてもよい。コントローラ1630は、例えば有線でゲーム機1610と結合されるが、これには限られず無線で結合されてもよい。
【0111】
ゲーム機1610は、ゲームプログラムに基づいて、さまざまなゲームを実行する。典型的にはゲーム装置1610は、TVゲーム機と呼ばれる、ゲームプログラムを実行するための専用のハードウェアである。これには限られずゲーム機1610は、ゲームプログラムを実行することが可能なパーソナルコンピュータであり得る。
【0112】
ゲーム機1610は、記録媒体1620からゲームプログラムなどを読み込むためのドライブ1612を有する。ドライブ1612は、記録媒体1620に対応する任意のドライブであり、例えばDVDドライブ、BDドライブ、CDドライブであり得る。記録媒体1620として半導体メモリが用いられる時は、ドライブ1612の代わりに、メモリデバイスとゲーム装置1610とを電気的に結合するコネクタが用いられる。
【0113】
ディスプレイ1640は、ゲーム機1610によって生成されたゲーム空間内のさまざまなキャラクタをプレイヤに表示する。ディスプレイ1640は、液晶テレビ、プラズマテレビなどであり得る。ディスプレイ1640は、ゲーム装置1610とは、典型的には有線で結合され、例えばHDMI(high-definition multimedia interface)ケーブルが用いられる。システム1600においては、画像出力部1316から出力される画像信号と、音声出力部1318から出力される音声信号とがディスプレイ1640に与えられる。
【0114】
ゲーム機1610は、ネットワークインタフェースを備えてもよい。ネットワークインタフェースは、ネットワークを通して他のゲーム装置と通信するのに用いられる。例えばネットワーク対戦モードで自分が用いる、相手のチームに関連するさまざまなデータは、ネットワークインタフェースによって、ネットワークを通して受け取られる。逆に、ネットワーク対戦モードで相手が用いる、自分のチームに関連するさまざまなデータは、ネットワークインタフェースによって、ネットワークを通して相手のゲーム装置に送られる。これによりネットワーク対戦モードで、遠隔地におけるプレイヤどうしでゲームの対戦が可能になる。システム1600は、ネットワークに接続することなく、ゲーム装置1610単体でゲームプログラムを実行してもよい。
【0115】
この実施形態ではゲームプログラムは、典型的には記録媒体1620からゲーム装置1610にロードされる。しかしこれには限られず、本発明によるゲームプログラムの全部または一部が、ネットワークを介して、遠隔地にあるコンピュータ(例えばサーバ)からロードされてもよい。また本発明によるゲームプログラムに関連して用いられるデータの全部または一部が、ネットワーク715を介して、遠隔地にあるコンピュータ(例えばサーバ)からロードされてもよい。
【0116】
(代替の領域選択方法)
システム1600では、ディスプレイ1640はタッチパネルを有しない。そのためディスプレイ1640をなぞることによってプレイヤがボールが到達すると予想する領域を選択できない。システム1600ではタッチパネルの代わりにコントローラ1630を利用して、プレイヤは、領域を選択する。具体的にはプレイヤは、例えばコントローラ1630のL1ボタン1631を押しながら十字キー1632を動かすことによって、タッチパネルとなぞるのと同様に、ボールの到達領域を選択できる。
【0117】
当業者には理解されるように、上述のさまざまな要素(ハードウェアの要素、ソフトウェアのステップなど)は、その一部が省略されてもよい。逆に、付加的な要素を用いてもよい。
【産業上の利用可能性】
【0118】
本発明によれば、プレイヤのボールの読みを、打撃結果に反映させることができる。そのため興趣性が向上したゲームプログラム、ゲーム装置、およびゲーム制御方法を提供できる点で有用である。
【符号の説明】
【0119】
1200 ゲームプログラムのフロー
1202 ストライクゾーン表示ステップ
1204 領域特定ステップ
1206 重み付けステップ
1208 再選択条件判断ステップ
1210 作用力計算ステップ
1212 打撃結果判定ステップ

【特許請求の範囲】
【請求項1】
ゲーム空間内に設定された飛翔体キャラクタおよび前記飛翔体キャラクタに対して作用を及ぼす人的キャラクタを表示部に表示し、操作部を介してプレイヤが、前記ゲーム空間内に設けられた複数領域から構成される仮想的な作用面に向かって飛翔する前記飛翔体キャラクタに対し、前記人的キャラクタによって前記作用面上において作用を及ぼす操作を行うゲームを実行可能なコンピュータに、
前記飛翔体キャラクタが前記作用面に到達する前に、前記作用面を構成する複数の領域の中から、前記操作部を介して前記プレイヤによって選択される少なくとも1つの領域を選択領域として順次、特定する領域特定機能と、
前記選択領域のそれぞれに、前記特定の順に単調減少する重みを割り当て、かつ、前記複数の領域のうち前記プレイヤによって選択されなかった非選択領域のそれぞれには、前記選択領域に割り当てられる重みよりも小さい重みを割り当てる重み付け機能と、
前記飛翔体キャラクタが、前記選択領域のいずれかに到達した場合に、前記飛翔体キャラクタが到達した選択領域に割り当てられた重みに基づいて、前記飛翔体キャラクタの作用力を求める作用力計算機能と
を実現させるゲームプログラム。
【請求項2】
前記重み設定機能は、前記非選択領域のそれぞれにおける重みを、
前記非選択領域のそれぞれと前記選択領域のそれぞれとの距離の増加に応じて、前記選択領域のそれぞれの重みを減少させた値の総和に対応する値に設定する
請求項1に記載のゲームプログラム。
【請求項3】
空間的に連続でない2つの前記選択領域に割り当てられた前記重みの差分は、空間的に連続である2つの前記選択領域に割り当てられた前記重みの差分よりも大きい
請求項1に記載のゲームプログラム。
【請求項4】
前記ゲームは野球ゲームであり、
前記人的キャラクタは打者キャラクタであり、
前記飛翔体キャラクタは投手キャラクタによって送出され、
前記作用面はストライクゾーンを構成し、
前記送出の後には、前記コンピュータは前記選択を許可しない
請求項1に記載のゲームプログラム。
【請求項5】
既に行われた前記選択と同じように前記プレイヤが新たに選択するときだけ、前記選択を取り消して、再選択することを許可する機能
をさらに備える請求項4に記載のゲームプログラム。
【請求項6】
前記選択から所定時間が経過したときだけ、前記再選択することを許可する機能
をさらに備える請求項5に記載のゲームプログラム。
【請求項7】
前記選択領域に割り当てられた重みと、前記非選択領域に割り当てられた重みとの和は所定の一定値である請求項4に記載のゲームプログラム。
【請求項8】
前記選択領域に割り当てられた重みと、前記非選択領域に割り当てられた重みとの和は、前記打者キャラクタに依存して異なる値である請求項4に記載のゲームプログラム。
【請求項9】
前記非選択領域に割り当てられた重みは、前記打者キャラクタによる作用が空振りに対応するようゼロに設定される
請求項4に記載のゲームプログラム。
【請求項10】
前記操作部は、前記コンピュータに結合されたタッチパネルを含み、
前記選択は、前記プレイヤが前記タッチパネルを触わることによって行われる
請求項7に記載のゲームプログラム。
【請求項11】
ゲーム空間内に設定された飛翔体キャラクタおよび前記飛翔体キャラクタに対して作用を及ぼす人的キャラクタを表示部に表示し、操作部を介してプレイヤが、前記ゲーム空間内に設けられた複数領域から構成される仮想的な作用面に向かって飛翔する前記飛翔体キャラクタに対し、前記人的キャラクタによって前記作用面上において作用を及ぼす操作を行うゲームを実行するゲーム装置であって、
前記飛翔体キャラクタが前記作用面に到達する前に、前記作用面を構成する複数の領域の中から、前記操作部を介して前記プレイヤによって選択される少なくとも1つの領域を選択領域として順次、特定する領域特定手段と、
前記選択領域のそれぞれに、前記特定の順に単調減少する重みを割り当て、かつ、前記複数の領域のうち前記プレイヤによって選択されなかった非選択領域のそれぞれには、前記選択領域に割り当てられる重みよりも小さい重みを割り当てる重み付け手段と、
前記飛翔体キャラクタが、前記選択領域のいずれかに到達した場合に、前記飛翔体キャラクタが到達した選択領域に割り当てられた重みに基づいて、前記飛翔体キャラクタの作用力を求める作用力計算手段と
を備えるゲーム装置。
【請求項12】
ゲーム空間内に設定された飛翔体キャラクタおよび前記飛翔体キャラクタに対して作用を及ぼす人的キャラクタを表示部に表示し、操作部を介してプレイヤが、前記ゲーム空間内に設けられた複数領域から構成される仮想的な作用面に向かって飛翔する前記飛翔体キャラクタに対し、前記人的キャラクタによって前記作用面上において作用を及ぼす操作を行うゲームを制御する方法であって、
前記飛翔体キャラクタが前記作用面に到達する前に、前記作用面を構成する複数の領域の中から、前記操作部を介して前記プレイヤによって選択される少なくとも1つの領域を選択領域として順次、特定する領域特定ステップと、
前記選択領域のそれぞれに、前記特定の順に単調減少する重みを割り当て、かつ、前記複数の領域のうち前記プレイヤによって選択されなかった非選択領域のそれぞれには、前記選択領域に割り当てられる重みよりも小さい重みを割り当てる重み付けステップと、
前記飛翔体キャラクタが、前記選択領域のいずれかに到達した場合に、前記飛翔体キャラクタが到達した選択領域に割り当てられた重みに基づいて、前記飛翔体キャラクタの作用力を求める作用力計算ステップと
を備えるゲーム制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate