(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022067117
(43)【公開日】2022-05-02
(54)【発明の名称】プログラム、情報処理装置、及び情報処理方法
(51)【国際特許分類】
A63F 13/573 20140101AFI20220422BHJP
A63F 13/812 20140101ALN20220422BHJP
【FI】
A63F13/573
A63F13/812 A
【審査請求】未請求
【請求項の数】1
【出願形態】OL
(21)【出願番号】P 2022031970
(22)【出願日】2022-03-02
(62)【分割の表示】P 2020028601の分割
【原出願日】2020-02-21
(71)【出願人】
【識別番号】506113602
【氏名又は名称】株式会社コナミデジタルエンタテインメント
(72)【発明者】
【氏名】曽我部 大介
(57)【要約】
【課題】ゲーム内における移動体の移動を、当該ゲームの内容により即した態様で制御可能とする。
【解決手段】本発明に係るプログラムは、コンピュータに、仮想空間内において移動体を移動させる目標の位置を設定することと、前記仮想空間内に予め設定された基準位置と前記目標の位置との位置関係を、所定のパラメータに基づいて定めることにより、前記目標の位置を更新することと、前記更新された前記目標の位置に応じて、前記仮想空間内における前記移動体の移動を制御することと、を実行させる。
【選択図】
図8
【特許請求の範囲】
【請求項1】
コンピュータに、
仮想空間内において移動体を移動させる目標の位置を設定することと、
前記仮想空間内に予め設定された基準位置と前記目標の位置との位置関係を、所定のパラメータに基づいて定めることにより、前記目標の位置を更新することと、
前記更新された前記目標の位置に応じて、前記仮想空間内における前記移動体の移動を制御することと、
を実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、プログラム、情報処理装置、及び情報処理方法に関する。
【背景技術】
【0002】
一般的に知られているゲームとして、ユーザからの操作に応じてゲーム内における所定の移動体(オブジェクト)の移動の制御が行われるものが知られている。このようなゲームの一例として、投手キャラクタが投げたボールオブジェクトをミートカーソルで位置決めし、打者キャラクタにボールオブジェクトを打撃させる野球ゲームが挙げられる。このような野球ゲームでは、例えば、投手キャラクタに投球を行わせる状況下において、ユーザの操作に応じて球種やコースの指定が行われ、当該球種や当該コースの指定に応じて、ボールオブジェクトの移動の制御(例えば、ボールオブジェクトの軌道や到達点の制御)が行われる。例えば、特許文献1には、野球ゲームにおいて、投手キャラクタに投球を行わせる状況下において、投手キャラクタから送出されたボールの移動の制御に係る技術の一例が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方で、現実の野球では、投手は必ずしも狙い通りのコース(目標)にボールを投げることができるとは限らず、投球ごとにずれが生じる場合がある。このようなずれが生じることで、打者側に有利に働くような状況も想定され得る。このような背景から、例えば、現実において生じ得る移動体の移動に係るずれが、ゲーム内においてユーザに有利または不利に働く態様で模擬されるように、移動体の移動の制御が行われることで、ゲーム性をより向上させる効果の実現が期待されている。
【0005】
本発明は上記を鑑み、ゲーム内における移動体の移動を、当該ゲームの内容により即した態様で制御可能とすることを目的とする。
【課題を解決するための手段】
【0006】
本発明に係るプログラムは、コンピュータに、仮想空間内において移動体を移動させる目標の位置を設定することと、前記仮想空間内に予め設定された基準位置と前記目標の位置との位置関係を、所定のパラメータに基づいて定めることにより、前記目標の位置を更新することと、前記更新された前記目標の位置に応じて、前記仮想空間内における前記移動体の移動を制御することと、を実行させる。
【図面の簡単な説明】
【0007】
【
図1】本実施形態に係るシステムの構成の一例を示した図である。
【
図2】ゲーム装置のハードウェア構成の一例を示した図である。
【
図3】サーバ装置のハードウェア構成の一例を示した図である。
【
図4】投手側から打者側を見た状態の画面の一例を示した図である。
【
図5】打者側から投手側を見た状態の画面の一例を示した図である。
【
図6】ゲーム空間の一例を模式的に示した図である。
【
図7】移動体の移動に係る制御の一例について説明するための説明図である。
【
図8】移動体の移動の制御の技術思想について説明するための説明図である。
【
図9】目標の位置の更新に係る制御の指標の一例について概要を示した図である。
【
図10】ゲーム装置の機能構成の一例を示した機能ブロック図である。
【
図11】ゲーム装置の処理の一例を示したフローチャートである。
【
図12】目標の位置の更新に係る制御の指標の一例について概要を示した図である。
【
図13】目標の位置の更新に係る制御の一例について説明するための説明図である。
【発明を実施するための形態】
【0008】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0009】
<システム構成>
図1を参照して、本開示の一実施形態に係るシステム1の構成の一例について概要を説明する。システム1は、複数のゲーム装置10-n(nは正の整数)と、サーバ装置30とを含む。サーバ装置30とゲーム装置10-nとは、所定のネットワークNを介して各種情報や各種データを送受信可能に接続されている。複数のゲーム装置10-n(例えば、ゲーム装置10-1、10-2、・・・)は、実質的に同様の構成を適用することが可能である。そのため、以降では、複数のゲーム装置10-nそれぞれを特に区別しない場合には、単に「ゲーム装置10」と称する場合がある。
【0010】
また、ネットワークNは、サーバ装置30とゲーム装置10との間を接続することが可能であれば、その種別は特に限定されない。具体的な一例として、ネットワークNとして、インターネット、専用線、公衆回線(例えば、電話回線、移動体通信回線等)、LAN(Local Area Network)、WAN(Wide Area Network)等が適用されてもよい。また、ネットワークNは、無線のネットワークであってもよく、有線のネットワークであってもよい。また、ネットワークNは、複数種類の異なるネットワークを含んでもよい。具体的な一例として、サーバ装置30とゲーム装置10との間の通信が、他の通信装置により中継されてもよい。この場合において、当該他の通信装置と、サーバ装置30及びゲーム装置10それぞれとの間の通信に対して、互いに異なる種別のネットワークが適用されてもよい。
【0011】
ゲーム装置10として、例えば、家庭用のゲーム専用機(据置型または携帯型)、パーソナルコンピュータ、多機能型テレビジョン受像機(いわゆるスマートテレビ)、業務用(商業用)ゲーム機等が適用されてもよい。また、他の一例として、ゲーム装置10として、スマートフォン、携帯電話端末、PHS(Personal Handy-phone System)端末、携帯情報端末(PDA:Personal Digital Assistant)、タブレット型コンピュータ等が適用されてもよい。
【0012】
サーバ装置30は、各ユーザを一意に識別するためのユーザIDと対応付けて、ユーザのゲームに関する情報を、データベース等のような所定の記憶領域に記憶して管理する。また、サーバ装置30は、通信対戦を行う場合の対戦相手決定処理(いわゆるマッチング処理)等を実行する。通信対戦では、例えば、ゲーム装置10-1を操作するユーザAと、ゲーム装置10-2を操作するユーザBとが、ネットワークNを介して対戦ゲームを行うことができる。通信対戦の場合には、サーバ装置30によってマッチングされたゲーム装置10-1とゲーム装置10-2との間で、P2P(Peer to Peer)接続等により直接通信して対戦する方法がある。また、他の一例として、ゲーム装置10-1とゲーム装置10-2との間のデータのやり取りを、サーバ装置30を経由して対戦する方法もある。何れの方法で通信対戦が行われてもよい。
【0013】
なお、通信対戦の対象となるゲーム装置10-1とゲーム装置10-2との間の通信については、互いにデータのやり取りが可能であれば、適用される通信方式や利用されるプロトコルは特に限定されない。
具体的な一例として、ゲーム装置10-1とゲーム装置10-2との間の通信が、OSI参照モデルのトランスポート層上の通信規約であって主にIPプロトコル上に実装されるUDP(User Datagram Protocol)によって実現されてもよい。もちろん、UDP以外の他のプロトコルが利用されてもよい。
また、通信対戦の対象となるゲーム装置10が所定の周波数帯(例えば2.4GHzの周波数帯)を用いた近距離無線通信機能を有している場合には、サーバ装置30を介さずに、複数台のゲーム装置10間で直接通信を行うことで、通信対戦が実現されてもよい。
【0014】
<ハードウェア構成>
本開示の一実施形態にシステム1を構成する各装置のハードウェア構成の一例について以下に説明する。
【0015】
(ゲーム装置のハードウェア構成)
まず、
図2を参照して、ゲーム装置10のハードウェア構成の一例について説明する。ゲーム装置10は、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、通信装置104と、入力装置105と、出力装置106と、記憶装置107とを含む。これらの構成要素は、アドレスバス、データバス、及びコントロールバス等を含むバス108を介して相互に接続されている。なお、バス108と各構成要素との間には、必要に応じてインタフェース回路が介在してもよいが、
図2では、当該インタフェース回路の図示を省略している。
【0016】
CPU101は、ROM102に記憶された制御プログラムをRAM103に展開し、展開された当該制御プログラムを実行することでゲーム装置10の各種機能を実現する。ROM102は、ゲーム装置10の各種機能を実現するためのプログラム(例えば、OS:Operation System等)やデータ等を記憶する。RAM103は、CPU101の主記憶領域や、ワークエリア等のような各種情報や各種データを一時的に記憶する記憶領域として用いられる。
【0017】
通信装置104は、ネットワークNを介してサーバ装置30や他のゲーム装置10との間の通信に係る各種処理を実行する。通信装置104として適用されるデバイスは、通信経路の種別や適用される通信方式に応じて適宜変更されてもよい。
【0018】
入力装置105は、ユーザからの各種指示の受け付けに利用される。入力装置105としては、例えば、タッチパネル、物理的なボタン、コントローラ、アナログスティック、キーボード、ポインティングデバイス等が適用され得る。
また、入力装置105として適用される装置は、ユーザからの指示を認識する方法に応じて適宜変更されてもよい。具体的な一例として、入力装置105として、マイクロフォン等の集音デバイスが適用され、当該集音デバイスによりユーザが発話した音声が集音されてもよい。この場合には、集音された音声に対して音響解析や自然言語処理等の各種解析処理が施されることで、当該音声が示す内容がユーザからの指示として認識されてもよい。また、入力装置105として、複数種類の装置が適用されてもよい。
【0019】
出力装置106は、各種情報を出力する装置であり、ユーザに対する各種情報の提示(例えば、報知情報の報知等)に利用される。本実施形態では、出力装置106として、少なくとも液晶ディスプレイや有機EL(Electro-Luminescence)ディスプレイ等の既知の種々の表示装置が適用され、各種表示情報(例えば、ゲーム画面等)を表示させることで、ユーザに対して情報が提示される。また、この場合には、出力装置106として適用される表示装置と、入力装置105として適用されるタッチパネルと、が協働することで、タッチインタフェースを備えたディスプレイが実現されてもよい。なお、出力装置106として適用される表示装置が、ゲーム画面等の各種表示情報を表示させる領域が、「表示領域」の一例に相当する。
また、出力装置106として、ユーザに対して情報を提示するために利用する媒体に応じた他の装置が適用されてもよい。具体的な一例として、出力装置106としてスピーカ等の音響出力デバイスが適用され、当該音響出力デバイスから音声や電子音等の音響が出力されることでユーザに情報が提示されてもよい。また、出力装置106として、複数種類の装置が適用されてもよい。
【0020】
記憶装置107は、各種データや各種プログラムを記憶する記憶装置である。具体的な一例として、記憶装置107は、後述するゲームに関するゲームプログラムや、当該ゲームに関連する各種データを記憶してもよい。記憶装置107は、例えば、HDD(Hard Disk Drive)や、SSD(Solid State Drive)に代表される不揮発性メモリ等のような、各種データを一時的または持続的に記憶可能な記憶装置により実現される。
【0021】
なお、後述するゲーム装置10の機能や処理は、例えば、CPU101がROM102または記憶装置107に記憶されているプログラムを読み出し、当該プログラムをRAM103に展開して実行することにより実現される。
また、CPU101がゲーム装置10の機能や処理を実現するためのプログラムを読み出すことが可能であれば、当該プログラムが記憶されている場所や、CPU101が当該プログラムを読み出す方法は特に限定されない。具体的な一例として、CPU101は、ゲーム装置10に対して着脱可能な記録媒体に記憶されたプログラムを読み出してもよい。また、他の一例として、CPU101は、ゲーム装置10に対してネットワークを介して他の装置から伝送されたプログラムを読み出してもよい。
【0022】
(サーバ装置のハードウェア構成)
次いで、
図3を参照して、サーバ装置30のハードウェア構成の一例について説明する。サーバ装置30は、CPU301と、ROM302と、RAM303と、通信装置304と、記憶装置305とを含む。これらの構成要素は、アドレスバス、データバス、及びコントロールバス等を含むバス306を介して相互に接続されている。なお、バス306と各構成要素との間には、必要に応じてインタフェース回路が介在してもよいが、
図3では、当該インタフェース回路の図示を省略している。
【0023】
CPU301は、ROM302に記憶された制御プログラムをRAM303に展開し、展開された当該制御プログラムを実行することでサーバ装置30の各種機能を実現する。ROM302は、サーバ装置30の各種機能を実現するためのプログラム(例えば、OS等)やデータ等を記憶する。RAM303は、CPU301の主記憶領域や、ワークエリア等のような各種情報や各種データを一時的に記憶する記憶領域として用いられる。
【0024】
通信装置304は、ネットワークNを介して各ゲーム装置10との間の通信に係る各種処理を実行する。通信装置304として適用されるデバイスは、通信経路の種別や適用される通信方式に応じて適宜変更されてもよい。
【0025】
記憶装置305は、各種データや各種プログラムを記憶する記憶装置である。具体的な一例として、記憶装置305は、後述するゲームに関するゲームプログラム、当該ゲームに関連する各種データ、ゲーム装置10を操作するユーザに関する情報、及び当該ゲームで使用されるユーザごとの情報等を記憶してもよい。記憶装置307は、例えば、HDDや、SSDに代表される不揮発性メモリ等のような、各種データを一時的または持続的に記憶可能な記憶装置により実現される。また、上述したデータや情報のうち、少なくともと一部が、不図示のデータベース等に記憶されてもよい。
【0026】
<適用対象の一例>
ここで、本開示の一実施形態に係る技術の特徴をよりわかりやすくするために、当該技術の適用対象の一例であるゲームについて概要を説明する。本実施形態に係るシステム1において実行されるゲームとしては、例えば、野球、サッカー、テニス等の各種スポーツを題材としたスポーツゲーム、戦闘を題材とした戦闘ゲーム、虫等を捕獲するゲーム等、様々なゲームを挙げることができる。その一例として、ここでは、主に、投手キャラクタが投球したボールオブジェクト(移動体の一例)を打者キャラクタが打撃(作用の一例)する野球ゲームについて説明し、必要に応じてその他のゲームについても言及する。
【0027】
(投手側の画面及び操作)
図4は、野球ゲームの画面のうち、投手側から打者側を見た状態の画面D10の一例を示している。投手キャラクタPCを操作するユーザは、画面D10を見ながら野球ゲームに関する各種操作(例えば、投球に係る操作)を行う。画面D10には、ユーザによって操作される投手キャラクタPC、ストライクゾーンSZ、対戦相手の打者キャラクタBC、投球コースを指定するためのコース指定カーソルAC等が表示される。また、画面D10には、図示しない球種選択用アイコンが表示されてもよく、この場合には、投手側のユーザは、投手キャラクタPCの手持ちの1以上の球種の中から、これから投球する球種を決定することが可能である。
球種が決定されると、投手キャラクタPCが投球モーションに入る。例えば、その後、投手キャラクタPCがボールをリリースするまでの間に、投手側のユーザは、投球コースを指定することが可能である。具体的な一例として、投手側のユーザは、コントローラ(アナログスティックまたは方向キー等)を操作してコース指定カーソルACを移動させ、投球コースを指定することが可能である。
なお、球種の決定及び投球コースの指定が行われた後に、投手キャラクタPCが投球モーションに入るような制御が適用されてもよい。この場合には、例えば、球種を決定した後に、投球コースを指定することができ、投球コースを指定した後に、投球開始の指示をしたことに応じて、投手キャラクタPCが投球モーションに入ることとなる。
また、画面一体型等のゲーム装置10において、画面がタッチパネルになっている場合には、ユーザが指またはスタイラスペン等の操作体で画面に接触することにより、接触位置を投球コースとして指定できるようにしてもよい。また、他の一例として、接触位置の移動に応じてコース指定カーソルACを移動させる制御が適用されてもよい。
【0028】
上記のようにして投球コースが指定された後は、投手側のユーザがコントローラを介して投球の開始に係る操作(例えば、投球開始ボタンの押下)を行うことで、投手キャラクタPCが投球を開始し、ボールオブジェクトBLをリリースする。また、他の一例として、投手キャラクタPCが自動で投球を開始し、ボールオブジェクトBLをリリースしてもよい。なお、
図4では、便宜上、ストライクゾーンSZ及びコース指定カーソルACが表示されているが、例えば、投手キャラクタPCがボールオブジェクトBLをリリースした後は、これらの表示が抑制(例えば、消去)されてもよい。
【0029】
ゲーム装置10は、投手側のユーザによって選択された球種および投球コースに基づいて、投手キャラクタPCからリリースされたボールオブジェクトBLの軌道を算出し、ボールオブジェクトBLをホームベースHBの方向へと移動させる。なお、ゲーム装置10は、球種および投球コースだけではなく、投手キャラクタPCの能力パラメータ(例えば、球速、コントロール、変化レベル等)に基づいて、投手キャラクタPCからリリースされたボールオブジェクトBLの軌道を算出してもよい。ボールオブジェクトBLの軌道の算出については、例えば、既知のアルゴリズムが適用されてもよい。
【0030】
なお、上記では投手側のユーザが球種および投球コースを選択する例を示したが、投球コースのみを選択することにより、投手キャラクタPCが投球を開始するような、より簡易的な野球ゲームとすることも可能である。
【0031】
なお、打者キャラクタBCを操作するユーザ(すなわち、打者側のユーザ)には、投手側のゲーム装置10の画面(
図4の画面)は見えないので、相手がどの球種や投球コースを選択したのかは分からない。また、CPU対戦モードの場合においても、打者側のユーザには、ゲーム装置10のCPUによって、どの球種や投球コースが自動選択されたかは分からない。
【0032】
(打者側の画面及び操作)
図5は、野球ゲームの画面うち、打者側から投手側を見た状態の画面D20の一例を示している。打者キャラクタBCを操作するユーザは、画面D20を見ながら野球ゲームに関する各種操作(例えば、打撃に係る操作)を行う。画面D20には、打者側のユーザによって操作される打者キャラクタBC、バットオブジェクトBO、対戦相手の投手キャラクタPC、ミートカーソルMC、ストライクゾーンSZ、及びホームベースHB等が表示される。
【0033】
ミートカーソルMCは、打撃カーソル等とも称される。ミートカーソルMCは、投手キャラクタPCが投球動作に入る前に(1球毎に)、例えば、ホームベースHBの上方のストライクゾーンSZに対して所定の位置(例えば、中央)に初期表示される。ユーザは、ミートカーソルMCを移動させることにより、バットオブジェクトBOのスイングの位置を調整できる。例えば、ユーザがコントローラのアナログスティックを任意の方向に倒す等の操作を行うことにより、ミートカーソルMCを、任意の位置に移動させることが可能である。ミートカーソルMCの移動操作は、アナログスティックによる操作以外にも、方向キーによる操作、マウス等のポインティングデバイスによる操作、タッチパネルに対するタッチ操作等により行うことが可能である。ミートカーソルMCの移動可能な領域は、ストライクゾーンSZ、またはストライクゾーンSZを含む領域であって、打撃可能な範囲(バットの届く範囲)の領域(以下、「打撃ゾーンSF」とも称する)である。
【0034】
打者キャラクタBCを操作するユーザは、投手キャラクタPCが投げたボールオブジェクトBLがストライクゾーンSZと略一致する平面を通過するタイミングにあわせて、当該ボールオブジェクトBLに重なるようにミートカーソルMCを移動させると共に、打者キャラクタBCに対してスイング動作を指示する操作(例えば、スイングボタンの押下)を行うことにより、ボールオブジェクトBLを打ち返すことができる。言い換えると、ボールオブジェクトBLが上記平面の前後に所定の距離を有するように規定される範囲の内側に存在するタイミングにおいて、ボールオブジェクトBLとミートカーソルMCとが重なっている状態で、上記スイング動作が指示された場合に、ボールオブジェクトBLを打ち返す(打撃する)ことができる。
【0035】
なお、3次元的なゲーム空間内を移動するボールオブジェクトBLにミートカーソルMCを重ねる操作は困難を伴うことから、ストライクゾーンSZの存在する平面上に、ボールオブジェクトBLが到達する予定位置を示す到達点領域APが表示されるようにしてもよい。具体的な一例として、投手キャラクタPCがボールオブジェクトBLを投球した直後から、または投球から所定時間が経過した後から、ストライクゾーンSZの存在する平面上に、到達点領域APが表示されるようにしてもよい。到達点領域APは、着弾点や打撃ポイント等とも称される。
【0036】
ミートカーソルMC、ストライクゾーンSZ、及び到達点領域APは、いずれも移動するボールオブジェクトBLの表示を遮ることがないように表示されることが望ましく、例えば、半透明表示となっているとよい。ストライクゾーンSZについては、投手キャラクタPCが投球動作を開始した後、または投手キャラクタPCがボールオブジェクトBLを送出した後に、消去されるようにしてもよい。このような制御が適用されることで、投球中において、ストライクゾーンSZと重畳表示される他のオブジェクトを見え易くすることが可能となる。
【0037】
ボールオブジェクトBLを打撃する(打ち返す)ためには、基本的に、以下(a)及び(b)として示す条件が要求されてもよい。
(a)ボールオブジェクトBLが、ミートカーソルMCと重なっている。または、ボールオブジェクトBLとミートカーソルMCが重なっていなかったとしても、ボールオブジェクトBLとミートカーソルMCとが所定の距離範囲内にある。
(b)ボールオブジェクトBLが打者キャラクタBCの近傍を通過するタイミングにおいて、ユーザによって所定のバットスイング操作が行われる。ボールオブジェクトBLが打者キャラクタBCの近傍を通過するタイミングとは、具体的には、ボールオブジェクトBLが上記平面の前後に所定の距離を有するように規定される範囲の内側に存在するタイミングである。
【0038】
上記(b)の条件を換言すれば、ストライクゾーンSZまたはその近傍にボールオブジェクトBLが到達した(到達点領域APとボールオブジェクトBLとが略重なった)タイミングで、バットスイング操作が行われることである。
【0039】
上記(a)の条件に関し、ボールオブジェクトBLとミートカーソルMCとが単に離間している、または所定の距離以上離間していると、バットスイングしても空振りとなる。また、上記(b)の条件に関し、現実の野球の打撃と同様、バットスイングのタイミングが上記所定のボールオブジェクトBLが打者キャラクタBCの近傍を通過するタイミングから外れて、早過ぎたり遅すぎたりすると、空振りとなる。
【0040】
打撃に成功した場合には、ボールオブジェクトBLとミートカーソルMCとの位置関係に基づいて、打撃の内容または打撃に対する結果が決定される。具体的な一例として、ミートカーソルMCの上側がボールオブジェクトBLの下側に重なった場合には、打球の角度が上がり、打撃結果は飛球(フライまたはライナー)となるように制御されてもよい。また、他の一例として、ミートカーソルMCの下側がボールオブジェクトBLの上側に重なった場合には、打球の角度が下がり、打撃結果はゴロとなるように制御されてもよい。また、ミートカーソルMCの中心とボールオブジェクトBLの中心との距離が近いほど、より強い打球となり、ヒットやホームランとなる確率が高まる。
【0041】
また、例えば、バットスイング操作のタイミングが、ボールオブジェクトBLが打者キャラクタBCの近傍を通過するタイミングの中間付近(ボールオブジェクトBLがストライクゾーンSZの平面を通過するタイミング)ならばセンター方向の打撃、それよりも早ければ、所謂、引っ張る打撃、それよりも遅ければ、所謂、流し打ちの打撃となるようにしてもよい。このように、打球の方向は、バットスイング操作のタイミングの影響を受けてもよい。
【0042】
さらに、ゲーム装置10は、打者キャラクタBCの能力パラメータ(例えば、パワー、弾道等)をも考慮して、打ち返されたボールオブジェクトBLの軌道を制御してもよい。打撃されたボールオブジェクトBLの軌道の算出については、例えば、既知のアルゴリズムが適用されてもよい。
【0043】
(ゲーム空間)
図6は、野球ゲームが実行されるゲーム空間(3次元的な仮想空間)の一例を模式的に示した図である。本実施形態では、ゲーム空間として、x軸、y軸、及びz軸の相互に直行する3軸によって規定される3次元空間が採用されるものとする。
【0044】
z軸は、仮想的な3次元空間内におけるピッチャーマウンドの中心O2とホームベースHBの中心O3とを結ぶ直線L3と平行な方向に設定される。また、y軸は、仮想的な3次元空間における鉛直方向と略一致するように設定される。また、x軸は、仮想的な3次元空間における水平方向のうち、z軸と直交する方向と略一致するように設定される。また、仮想的な3次元空間の原点については、便宜上、後述する打撃ゾーンSFの中心に設定されているものとする。
【0045】
打撃ゾーンSFは、例えば、ホームベースHBの中心O3を通り、且つx-y平面と平行な平面である。ストライクゾーンSZは打撃ゾーンSF内に設定された方形状の領域である。なお、ストライクゾーンSZの中心は、便宜上、打撃ゾーンSFの中心と略位置するものとする。
【0046】
コース指定カーソルACは、例えば、ストライクゾーンSZと略一致する平面上に位置し、例えば、所定の入力装置105を介した投手側のユーザからの操作に基づき当該平面上を移動する。具体的には、ストライクゾーンSZと略一致する平面上に目標OP1が設定され、当該目標OP1の位置を基準点(例えば、中心)として、コース指定カーソルACが提示される。そのうえで、投手側のユーザからの操作に応じて目標OP1の位置が上記平面上で移動することで、当該目標OP1の移動に連動してコース指定カーソルACが移動する。以上のような制御に基づき、投手側のユーザは、コース指定カーソルACの位置を確認しながら目標OP1の位置を指定することが可能となり、当該指定の結果に基づき、上記平面上における当該目標OP1の位置が決定される。目標OP1は、ゲーム装置10によりボールオブジェクトBLの軌道の算出が行われる際に、ストライクゾーンSZ(または打撃ゾーンSF)と略一致する平面上における当該ボールオブジェクトBLの到達点として考慮される。
【0047】
投手キャラクタPCは、ピッチャーマウンドの中心O2に配置される。また、打者キャラクタBCは、ホームベースHBに対してx方向のいずれかに配置されたバッターボックスBXに配置される。具体的には、打者キャラクタBCが右打ちとして設定されている場合には、ホームベースHBを基準として投手キャラクタPC側から見て右側に位置するバッターボックスBXに配置される。また、打者キャラクタBCが左打ちとして設定されている場合には、ホームベースHBを基準として投手キャラクタPC側から見て左側に位置するバッターボックスBXに配置されることとなる。
【0048】
投手側のユーザの操作に応じてボールオブジェクトBLの移動に係る目標OP1の位置が制御され、その後、当該ユーザによる投球に係る操作が受け付けられると、当該目標OP1が決定される。そのうえで、ボールオブジェクトBLが、移動開始位置PSから当該目標OP1を通過して移動終了位置PEまで到達するように、当該ボールオブジェクトBLの移動が制御される。なお、移動開始位置PSは、中心O2の鉛直方向上方に設定されている。また、移動終了位置PEは、ホームベースHBを基準として移動開始位置PSとは逆側の方向(換言すると、ホームベースHBの後方)に設定されている。
【0049】
<移動体の移動に係る制御例>
続いて、本実施形態に係る技術の特徴をよりわかりやすくするために、野球ゲームにおけるボールオブジェクトBL(移動体)の移動に係る制御の一例について説明する。
【0050】
前述したように、現実の野球では、投手は必ずしも狙い通りのコース(目標)にボールを投げることができるとは限らず、投球ごとにずれが生じる場合がある。このような状況を模擬するために、例えば、近年では、投手キャラクタに対してコントロール等の能力パラメータが設定され、当該能力パラメータを投球に伴うボールオブジェクトの移動の制御に反映する技術も提案されている。具体的な一例として、ユーザの操作に応じて球種やコースの指定が行われた後に、投手キャラクタの能力パラメータに応じて、ボールオブジェクトの到達点の位置の制御が行われるゲームが知られている。
【0051】
例えば、
図7は、投手キャラクタに設定された能力パラメータに応じた、ボールオブジェクトBL(移動体)の移動に係る制御の一例について説明するための説明図である。なお、
図7を参照して以下に説明する、ボールオブジェクトBLの移動に係る制御例を、便宜上「比較例」とも称する。また、
図7においては、
図4~
図6と同様の符号は、
図4~
図6において当該符号が付された対象と同様の対象を示すものとする。
【0052】
比較例に係る制御では、投手キャラクタに設定された能力パラメータ(例えば、ボールコントロールに係る能力パラメータ)が、コース指定カーソルACにより指定された目標OP1に対して、どれだけ正確に投球が行えるかの指標として利用される。具体的には、比較例に係る制御では、設定された目標OP1を中心として略円形状の領域BF1が設定され、当該領域BF1内においてランダムでボールオブジェクトBLの到達点OCが設定される。この際に、投手キャラクタのボールコントロールに係る能力パラメータがより高いほど、領域BF1のサイズがより小さくなるように(例えば、半径がより短くなるよう)に制御される。
【0053】
例えば、
図7では、投手キャラクタのボールコントロール能力がより高い場合と、当該ボールコントロール能力がより低い場合と、のそれぞれについて、領域BF1の設定結果と、当該領域BF1に応じた到達点OCの設定結果と、の一例を示している。なお、以降の説明では、便宜上、「ボールコントロール能力がより高い場合」とは、ボールコントロールに係る能力パラメータがより高い場合に相当するものとする。同様に、「ボールコントロール能力がより低い場合」とは、ボールコントロールに係る能力パラメータがより低い場合に相当するものとする。半径r1は、投手キャラクタのボールコントロール能力がより高い場合における、領域BF1の半径を示している。また、半径r2は、投手キャラクタのボールコントロール能力がより低い場合における、領域BF1の半径を示している。
図7に示す例では、半径r1及びr2は、r1<r2の関係にあるものとする。
【0054】
このように、
図7に示す例では、投手キャラクタの能力パラメータがゲームにおいてより優位性を示すパラメータであるほど、領域BF1がより小さくなるように(例えば、半径がより短くなるよう)に制御される。なお、「ゲームにおいてより優位性を示す」とは、ゲームにおいてより有利に働く状況や状態を示している。例えば、「ゲームにおいてより優位性を示すパラメータ」とは、当該パラメータを利用した判定が行われる場合に、ゲームにおいてより有利に働く判定結果が得られるパラメータに相当する。具体的な一例として、ボールコントロールの能力パラメータのパラメータ値がより高いほど、投手キャラクタのボールコントロール能力が高いことを示す場合には、当該パラメータ値がより高いほど、当該能力パラメータが、ゲームにおいてより優位性を示すこととなる。
【0055】
以上のような制御が適用されることで、投手キャラクタのボールコントロール能力が低いほど、目標OP1と到達点OCとの間のブレの程度(換言すると、制球の乱れ)がより大きくなる状況を模擬することが可能となる。すなわち、投手側のユーザの立場に立った場合には、投手キャラクタのボールコントロール能力が低いほど、想定通りの場所に投球を行うことがより困難となる。そのため、例えば、想定通りの場所に投球を行うことでゲームをより有利に進めることが可能である状況下においては、上記ボールコントロール能力の低さが上記ユーザに不利に働く状況を模擬することが可能となる。
【0056】
一方で、上述した比較例に係る制御は、打者側のユーザの立場に立った場合には、必ずしもゲームにおける当該ユーザの有利不利に影響を及ぼすとは限らない。具体的には、
図4~
図6を参照して説明した野球ゲームにおいては、打撃に係る操作とは、タイミングをあわせて打撃ゾーンSF中の位置を指定する操作に相当する。このような操作の特性により、打者(打者側のユーザ、または打者キャラクタ)の投球コース(到達点OCの位置)に対する得手不得手という概念は、打撃に係る操作や当該操作の結果に対して、ゲーム性に即した態様で反映されにくい傾向にある。これに対して、投球コースに対する得手不得手という概念の影響をゲーム上で模擬することが可能であれば、例えば、打者の苦手なコースに向けてより正確に投球が行われる場合に、投手側のユーザが打者側のユーザに対してより有利となる状況を模擬することが可能となる。
【0057】
以上のような状況を鑑み、本開示では、ゲーム内における移動体の移動を、当該ゲームの内容により即した態様で制御可能とする技術を提案する。具体的には、野球ゲームへの適用を想定した場合に、複数のユーザが投手側と打者側とに分かれてユーザ対戦が行われる状況下において、投手側に対応するパラメータがゲームにおいてより優位性を示すほど、当該ゲームにおいて投手側のユーザがより有利となる状況が模擬されるように、投球されたボールオブジェクトの移動を制御可能とする技術の一例について提案する。
【0058】
<技術思想>
図8を参照して、本開示の一実施形態に係るシステムにより実現される移動体の移動の制御の技術思想について、特に、同制御を野球ゲームにおける投球されたボールオブジェクトの移動の制御に適用する場合に着目して説明する。なお、
図8においては、
図4~
図6と同様の符号は、
図4~
図6において当該符号が付された対象と同様の対象を示すものとする。
【0059】
まず、前提として、
図8を参照して説明する野球ゲームでは、ボールオブジェクトBLに対して打撃が行われた場合に、ストライクゾーンSZと打撃位置との位置関係に応じて、ボールオブジェクトBLに付与される作用の効果が制御されるものとする。具体的には、打撃位置がストライクゾーンSZの外側に位置する場合には、打撃位置がストライクゾーンSZの内側に位置する場合に比べて、ボールオブジェクトBLに付与される作用の効果がより低くなるように制御される(例えば、打球の速度がより遅くなるように制御される)ものとする。
これにより、例えば、ボールオブジェクトBLがストライクゾーンSZの外側に到達する状況下では、例え打撃が成功したとしてもヒット性の当たりになり難くなるため、投手側のユーザがより有利となる状況を模擬することが可能となる。また、ボールオブジェクトBLがストライクゾーンSZの内側に到達する状況下では、打撃が成功することでヒット性の当たりになり易くなるため、投手側のユーザがより不利となる状況を模擬することが可能となる。なお、ストライクゾーンSZが、「第1の領域」の一例に相当する。
【0060】
以上を踏まえ、本実施形態では、投手側のユーザの操作に応じたコース指定カーソルACの移動に伴い目標OP1の位置の設定が行われた後に、当該ユーザに対応するパラメータ(例えば、投手キャラクタのボールコントロール能力)に応じて、当該目標OP1の位置を更新する制御が適用される。この際に、上記パラメータがゲームにおいてより優位性を示すほど、投手側のユーザが当該ゲームにおいてより優位となるように、目標OP1の位置の更新に係る制御内容(例えば、制御方向や制御量等)が決定される。例えば、
図8では、投手キャラクタのボールコントロール能力がより高い場合と、当該ボールコントロール能力がより低い場合と、のそれぞれについて、目標OP1の位置の更新結果について一例を示している。なお、以降の説明では、位置が更新された後の目標OP1を、位置が更新される前の目標OP1と明示的に区別するために、便宜上「目標OP2」と称する場合がある。
【0061】
具体的には、本実施形態では、ゲーム空間(3次元的な仮想空間)内に予め設定された基準位置O1と、目標OP1の位置と、の位置関係が、所定のパラメータに基づいて定められることで、当該目標OP1の位置の更新が行われる(すなわち、目標OP2の位置が決定される)。基準位置O1は、例えば、ストライクゾーンSZ内の所定の位置(例えば、ストライクゾーンSZの中心)に設定される。
【0062】
ここで、目標OP1の位置の更新に係る制御の内容について、さらに詳しく説明する。
例えば、
図8の左図は、投手キャラクタのボールコントロール能力が高い場合(例えば、パラメータ値が閾値を超える場合)における、目標OP1の位置の更新に係る制御の一例を示している。
図8の左図に示すように、投手キャラクタのボールコントロール能力が高い場合には、目標OP2の位置が、更新前の目標OP1の位置に比べて、基準位置O1から遠くなる位置となるように、目標OP1の位置が更新される。
これに対して、
図8の右図は、投手キャラクタのボールコントロール能力が低い場合(例えば、パラメータ値が閾値未満の場合)における、目標OP1の位置の更新に係る制御の一例を示している。
図8の右図に示すように、投手キャラクタのボールコントロール能力が低い場合には、目標OP2の位置が、更新前の目標OP1の位置に比べて、基準位置O1に近くなる位置となるように、目標OP1の位置が更新される。
このように、投手側のユーザに対応するパラメータ(例えば、投手キャラクタのボールコントロール能力)に応じて、目標OP1の位置の更新に係る制御の制御方向(すなわち、位置を移動させる方向)が決定される。
【0063】
また、投手側のユーザに対応するパラメータに応じて、目標OP1の位置の更新に係る制御の制御量が決定されてもよい。
具体的な一例として、投手キャラクタのボールコントロール能力がより高いほど、目標OP2の位置が、更新前の目標OP1の位置に比べて、基準位置O1からより遠くなる位置となるように(換言すると、より離間するように)、目標OP1の位置が更新されてもよい。
同様に、投手キャラクタのボールコントロール能力がより低いほど、目標OP2の位置が、更新前の目標OP1の位置に比べて、基準位置O1に近くなる位置となるように(換言すると、より近接するように)、目標OP1の位置が更新されてもよい。
【0064】
例えば、
図9は、目標OP1の位置の更新に係る制御における制御方向及び制御量の決定に適用される指標の一例について概要を示した図である。
図9において、図面の横方向に延伸するスケールは、目標OP1の位置の更新に係る制御の制御方向及び制御量を模式的に示している。当該スケールは、図面の右方向が、投手側がより有利となる制御の制御方向に対応しており、図面の左方向が、打者側がより有利となる制御の制御方向に対応している。具体的には、
図8に示す例と対応付けた場合には、図面の右方向が、ストライクゾーンSZの外側に向けた目標OP1の位置の更新に係る制御方向に相当し、図面の左方向が、ストライクゾーンSZの内側に向けた目標OP1の位置の更新に係る制御方向に相当する。
【0065】
また、
図9に示すスケールの各メモリに付された数値は、目標OP1の位置の更新に係る制御に適用されるパラメータのパラメータ値を模式的に示している。すなわち、
図9に示す例では、当該パラメータ(例えば、投手キャラクタのボールコントロールに係る能力パラメータ)のパラメータ値が、「-2」~「+2」の範囲で設定されている。なお、当該パラメータ値は、「±0」を基点として、+方向側がゲームにおいてより優位性を示す方向に相当するものとする。
【0066】
すなわち、
図9に示す例では、上記パラメータのパラメータ値が閾値(例えば、±0)を超える場合には、更新後の目標OP1の位置(目標OP2の位置)が、更新前のOP1の位置に比べて、ストライクゾーンSZの外側に位置するように、目標OP1の位置の更新に係る制御方向が決定される。また、この際に、当該パラメータのパラメータ値がより高いほど、更新後の目標OP1の位置(目標OP2の位置)が、更新前のOP1の位置からストライクゾーンSZの外側に向けてより移動した位置となるように、目標OP1の位置の制御量が決定される。
また、上記パラメータのパラメータ値が閾値(例えば、±0)未満の場合には、更新後の目標OP2の位置が、更新前のOP1の位置に比べて、ストライクゾーンSZの内側に位置するように、目標OP1の位置の更新に係る制御方向が決定される。また、この際に、当該パラメータのパラメータ値がより低いほど、更新後の目標OP2の位置が、更新前のOP1の位置からストライクゾーンSZの内側に向けてより移動した位置となるように、目標OP1の位置の制御量が決定される。
なお、上記パラメータが、「目標の位置の制御に係る優位性を示すパラメータ」の一例に相当する。
【0067】
以上のような制御が適用されることで、投手キャラクタのコントロール能力が高い場合には、ボールオブジェクトBLの到達点がストライクゾーンSZ外となる(所謂ボール球となる)可能性が高くなる。すなわち、打撃が成功したとしてもヒット性の当たりになり難くなるため、投手側のユーザがより有利となる状況(すなわち、打者側のユーザがより不利となる状況)を模擬することが可能となる。
また、投手キャラクタのコントロール能力が低い場合には、ボールオブジェクトBLの到達点がストライクゾーンSZ内となる可能性が高くなる。すなわち、打撃が成功した場合にはヒット性の当たりになり易くなるため、打者側のユーザがより有利となる状況(すなわち、投手側のユーザがより不利となる状況)を模擬することが可能となる。
【0068】
<機能構成>
図10を参照して、本実施形態に係るゲーム装置10の機能構成の一例について、特に、
図4~
図6を参照して説明した野球ゲームにおいて、
図8及び
図9を参照して説明した制御を実現するための構成に着目して説明する。
図10に示すように、ゲーム装置10は、UI110と、制御部130と、記憶部150とを含む。
【0069】
UI110は、所謂ユーザインタフェース(User Interface)に相当し、ユーザからの指示の受け付けに係る処理や、ユーザへの情報の提示に係る処理を実行する。UI110は、入力部111と、出力部112とを含む。
【0070】
入力部111は、所定の入力装置(例えば、入力装置105)により実現され、ユーザから受け付けた入力に基づく入力情報を、制御部130(後述する入力解析部131)に出力する。具体的な一例として、入力部111がタッチパネルにより実現されている場合には、指等の操作体によるタッチが受け付けられた位置(例えば、画面上の位置)に関する情報が、入力情報として制御部130に出力されてもよい。また、他の一例として、入力部111がアナログスティックや物理的なボタン等により実現されている場合には、当該アナログスティックや当該ボタン等が受け付けた操作に応じた情報が、入力情報として制御部130に出力されてもよい。もちろん上記はあくまで一例であり、入力部111の実現に利用される入力装置の種別に応じて、入力情報の内容が適宜変更されてもよい。
【0071】
出力部112は、所定の出力装置(例えば、出力装置106)により実現され、ユーザに対して各種の出力情報を提示する。なお、本実施形態に係る出力部112は、少なくとも一部の機能が所謂ディスプレイ等のような表示装置により実現され、提示対象となる情報を、画像等のような表示情報としてユーザに提示可能に構成されている。また、出力部112は、ユーザへの提示対象となる情報を、表示情報とは異なる種別の情報としてユーザに提示可能に構成されていてもよい。具体的な一例として、出力部112は、一部の機能が所謂スピーカ等のような音響出力装置により実現され、提示対象となる情報を、音声や電子音等のような音響としてユーザに提示可能に構成されていてもよい。もちろん、上記はあくまで一例であり、出力部112の実現に利用される出力装置の種別に応じて、出力情報の種別が適宜変更されてもよい。
【0072】
記憶部150は、後述する制御部130がゲームの実現に利用する各種データや各種プログラムを記憶する。具体的な一例として、記憶部150は、前述した投手キャラクタのボールコントロールに係る能力パラメータ等のような、ゲームをプレイするユーザに対応付けられたパラメータに関するパラメータ情報151を記憶する。また、記憶部150は、例えば、ゲームをプレイするユーザを識別するための識別情報や、当該ユーザに関する各種情報を記憶してもよい。記憶部150は、例えば、記憶装置107により実現され得る。
【0073】
制御部130は、ゲーム装置が提供する各種機能の実現に係る制御(特に、ゲームの実現に係る各種制御)を行う。制御部130は、入力解析部131と、目標位置設定部132と、目標位置更新部133と、移動体制御部134と、作用付与部135と、キャラクタ制御部136と、出力制御部137とを含む。
【0074】
入力解析部131は、入力部111から入力情報を取得し、当該入力情報に基づき入力部111を介したユーザからの指示を認識する。
例えば、入力解析部131は、入力部111がタッチパネルより実現されている場合には、入力情報が示すタッチが受け付けられた位置に応じて、ユーザからの指示を認識してもよい。
より具体的な一例として、
図4を参照して説明したように、野球ゲームにおいて投手キャラクタPCが投球を行う状況下では、入力解析部131は、タッチが受け付けられた位置を、指定された投球コースとして認識してもよい。
また、他の一例として、
図5を参照して説明したように、野球ゲームにおいて打者キャラクタBCが打撃を行う状況下では、入力解析部131は、タッチが受け付けられた位置を、指定された打撃位置として認識してもよい。
【0075】
また、他の一例として、入力解析部131は、入力部111がアナログスティックや物理的なボタン等により実現されている場合には、当該アナログスティックや当該ボタンに対する入力内容に応じて、ユーザからの指示を認識してもよい。
より具体的な一例として、
図4を参照して説明したように、野球ゲームにおいて投手キャラクタPCが投球を行う状況下では、入力解析部131は、アナログスティックが受け付けた入力に基づき、コース指定カーソルACの位置の更新を行ってもよい。また、この場合には、入力解析部131は、所定のボタンが入力を受け付けた際の当該コース指定カーソルACの位置を、指定された投球コースとして認識してもよい。
また、他の一例として、
図5を参照して説明したように、野球ゲームにおいて打者キャラクタBCが打撃を行う状況下では、入力解析部131は、アナログスティックが受け付けた入力に基づき、ミートカーソルMCの位置の更新を行ってもよい。また、この場合には、入力解析部131は、所定のボタンが入力を受け付けた際の当該ミートカーソルMCの位置を、指定された打撃位置として認識してもよい。
【0076】
もちろん、上記はあくまで一例であり、入力解析部131が入力情報に基づきユーザからの指示を認識する方法は、入力情報の種別、ゲームの内容、入力部111がユーザからの入力を受け付けた際の状況等に応じて適宜変更されてもよい。
【0077】
そして、入力解析部131は、ユーザからの指示の認識結果に応じた情報を、入力部111がユーザからの入力を受け付けた際の状況に応じて、所定の出力先に出力する。
例えば、
図4を参照して説明したように、野球ゲームにおいて投手キャラクタPCが投球を行う状況下では、入力解析部131は、ユーザからの指示の認識結果に応じた情報を、後述する目標位置設定部132に出力してもよい。
また、他の一例として、
図5を参照して説明したように、野球ゲームにおいて打者キャラクタBCが打撃を行う状況下では、ユーザからの指示の認識結果に応じた情報を、後述する作用付与部135に出力してもよい。
また、入力解析部131は、ユーザからの指示の認識結果に応じた情報を、後述する出力制御部137に通知してもよい。これにより、出力制御部137は、ユーザからの指示に応じた情報を、出力部112を介して当該ユーザにフィードバックすることが可能となる。
【0078】
目標位置設定部132は、所定の移動体の移動の制御に係る目標OP1の位置の設定を行う。この際に、目標位置設定部132は、例えば、ユーザからの指示の認識結果に応じた情報を入力解析部131から取得し、当該情報に基づき、目標OP1の位置を設定してもよい。この場合には、目標位置設定部132は、
図4に示すコース指定カーソルAC等によりユーザが直接指定した位置を、目標OP1の位置として設定してもよい。また、他の一例として、目標位置設定部132は、ユーザからの「内角」、「外角」、「高め」、「低め」等のような間接的なコースの指定に基づき、目標OP1の位置を設定してもよい。
【0079】
また、他の一例として、目標位置設定部132は、ゲームの進行状況等のような各種の情報を加味して、目標OP1の位置を設定してもよい。この際に、目標OP1の位置の設定に、ゲームの進行状況、コースの指定、及び投球の結果等に関する情報を教師データとした機械学習に基づき構築された判別器が利用されてもよい。
【0080】
そして、目標位置設定部132は、目標OP1の位置の設定結果に応じた情報を、目標位置更新部133に出力する。
【0081】
目標位置更新部133は、目標位置設定部132による目標OP1の位置の設定結果を受けて、
図8及び
図9を参照して説明したように、当該目標OP1の位置を、所定のパラメータに基づき更新する。具体的には、目標位置更新部133は、仮想空間内に予め設定された基準位置O1と目標OP1の位置との位置関係を、上記パラメータに基づいて定める(目標OP2の位置を決定する)ことにより、当該目標OP1の位置を更新する。この際に、目標位置更新部133は、上記パラメータに基づき、目標OP1の位置の更新に係る制御方向(例えば、目標OP1の位置を移動させる方向)や、制御量(例えば、目標OP1の位置を移動させる移動量)を決定してもよい。
【0082】
なお、目標位置更新部133が目標OP1の位置の更新に利用するパラメータの種別や当該パラメータに関する情報の取得方法は特に限定されない。
具体的な一例として、目標位置更新部133は、所定のキャラクタの能力パラメータを目標OP1の位置の更新に利用してもよい。この場合には、目標位置更新部133は、例えば、記憶部150に記憶されたパラメータ情報151を読み出すことで、上記能力パラメータに関する情報を取得してもよい。
また、他の一例として、目標位置更新部133は、ユーザによる所定の操作の結果に応じたパラメータを目標OP1の位置の更新に利用してもよい。具体的な一例として、ユーザから所定の操作が受け付けられたタイミングと、予め設定された基準となるタイミングと、の差の大きさに応じて決定されるパラメータが、目標OP1の位置の更新に利用されてもよい。なお、同制御の一例について、変形例として詳細を別途後述する。
【0083】
そして、目標位置更新部133は、目標OP1の位置の更新結果に応じた情報(例えば、
図8に示す目標OP2の位置に関する情報)を、移動体制御部134に出力する。また、目標位置更新部133は、目標OP1の位置の更新結果に応じた情報を、出力制御部137に出力してもよい。これにより、出力制御部137は、目標OP1の位置の更新結果を、出力部112を介してユーザに提示することも可能となる。
【0084】
移動体制御部134は、目標位置更新部133による目標OP1の位置の更新結果を受けて、所定の移動体(例えば、ボールオブジェクトBL)が、予め設定された移動開始位置PSから更新後の目標OP1(目標OP2)を通過して移動終了位置PEまで到達するように、当該移動体の移動を制御する。
また、この際に、移動体制御部134は、所定の条件に応じて、移動体の移動に係る経路を制御してもよい。具体的な一例として、移動体制御部134は、野球ゲームにおいて、投手キャラクタによる投球に関して指定された球種(例えば、ストレート、カーブ、シュート等)に応じて、当該投手キャラクタから送出されるボールオブジェクトBL(移動体)の移動に係る経路(軌道)を制御してもよい。
また、移動体制御部134は、移動体の移動に係る制御に関する情報を作用付与部135に通知してもよい。これにより、作用付与部135は、移動体の移動に係る経路や、当該移動体が当該経路上の各部(例えば、打撃ゾーンSFの一部)を通過するタイミングを認識することが可能となる。
【0085】
また、移動体制御部134は、後述する作用付与部135により移動体に対して作用が付与された場合には、移動体に付与された当該作用に応じて、当該移動体の移動を制御してもよい。具体的な一例として、移動体制御部134は、作用が付与された後の移動体の初速度の向きや大きさに応じて、当該移動体の移動に係る経路(軌道)を制御してもよい。また、この際に、移動体制御部134は、移動体の初速度を用いて質点の運動方程式を解くことにより、移動体の位置を繰り返し算出することで、当該移動体の移動に係る経路を特定してもよい。
【0086】
作用付与部135は、移動体制御部134による移動体の移動に係る制御に応じて、移動体に対して作用を付与することが可能なタイミング(以下、「作用付与タイミング」とも称する)を特定する。具体的な一例として、作用付与部135は、ボールオブジェクトBL(移動体)が移動開始位置PSから移動終了位置PEに到達するまでの間に打撃ゾーンSFの一部を通過するタイミングに基づき、当該ボールオブジェクトBLに対して打撃を行う(すなわち、作用を付与する)ことが可能な作用付与タイミングを特定してもよい。
【0087】
また、作用付与部135は、作用付与タイミングにおいて移動体への作用の付与に係る位置の指定が行われた場合に、当該作用の付与に係る位置と、移動体の位置と、の位置関係に応じて、当該移動体に対して作用を付与する。
具体的な一例として、作用付与部135は、ユーザからの指示の認識結果に応じた情報を入力解析部131から取得し、当該情報に基づきミートカーソルMCの位置を特定する。また、作用付与部135は、作用付与タイミングにおいて、ボールオブジェクトBLとミートカーソルMCとの少なくとも一部が重なっているか否かを判定する打撃判定処理を行う。そして、作用付与部135は、この打撃判定処理によりボールオブジェクトBLとミートカーソルMCとの少なくとも一部が重なっていると判定した場合には、当該ボールオブジェクトBLに対して作用を付与してもよい。
【0088】
また、作用付与部135は、移動体(例えば、ボールオブジェクトBL)への作用の付与に係る位置と、移動体の位置と、の位置関係に応じて、当該移動体に与える作用を制御してもよい。
具体的な一例として、作用付与部135は、ミートカーソルMCの中心(スイートスポット)と、ボールオブジェクトBLの重心と、位置関係に応じて、作用が付与された後の当該ボールオブジェクトBLの初速度の向きや大きさを決定してもよい。
【0089】
そして、作用付与部135は、移動体に対して作用を付与した場合には、移動体に対する作用の付与の結果に応じた情報(例えば、移動体の初速度の向きや大きさ等)を、移動体制御部134に出力する。
【0090】
キャラクタ制御部136は、仮想空間(例えば、ゲーム空間)内において、種々のキャラクタの動作を制御する。キャラクタ制御部136は、例えば、所定の記憶領域(例えば、記憶部150等)に記憶されたキャラクタのデータ(例えば、立体モデルや画像等)の動作を制御することで、仮想空間内におけるキャラクタの動作を制御する。なお、本実施形態では、便宜上、キャラクタのデータとして立体モデルが適用されるものとする。
具体的な一例として、キャラクタ制御部136は、投手キャラクタPCに対して、振りかぶる動作や、振りかぶった後にボールオブジェクトBLを投げる動作等を行わせてもよい。また、他の一例として、キャラクタ制御部136は、打者キャラクタBCに対して、バットオブジェクトBOを構えた後に当該バットオブジェクトBOをスイングする動作等を行わせてもよい。
【0091】
そして、キャラクタ制御部136は、キャラクタの動作の制御結果に応じた情報を、出力制御部137に出力する。これにより、出力制御部137は、キャラクタの動作を、出力部112を介してユーザに提示することも可能となる。
【0092】
出力制御部137は、出力部112に情報を出力させることで、各種情報をユーザに提示する。例えば、出力制御部137は、表示装置により実現された出力部112に、ゲームの画面を表示させることで、当該ゲームに関する各種情報(例えば、ゲームの進行状況等)をユーザに提示してもよい。
【0093】
具体的な一例として、出力制御部137は、表示装置により実現された出力部112に、
図4を参照して説明した画面D10や、
図5を参照して説明した画面D20を出力(表示)させてもよい。
この場合には、例えば、出力制御部137は、ゲーム空間に、野球場、打者キャラクタBC、及び投手キャラクタPCのオブジェクト、並びに仮想光源及び仮想カメラ等を配置し、立体モデルにテクスチャを張り付けてレンダリングを施すことで、ゲーム空間を表すレンダリング画像データを生成し、出力部112に表示させる。ここで、出力制御部137は、所定のフレームレートで、レンダリング画像データを生成して出力部112に表示させる(例えば、所定の描画RAMに書き込む)。これにより、出力部112において、打者キャラクタBC、投手キャラクタPC、及びボールオブジェクトBL等がアニメーション表示される。
また、この際に、出力制御部137は、移動体制御部134による当該移動体の移動の制御結果を受けて、ゲーム空間における移動体(例えば、ボールオブジェクトBL)の位置や、当該移動体の動き(例えば、移動方向や移動速度等)を認識してもよい。
【0094】
また、出力制御部137は、入力解析部131によるユーザからの指示の認識結果を受けて、コース指定カーソルACやミートカーソルMC等の画像データをレンダリング画像に重畳させてもよい。これにより、出力部112において、コース指定カーソルACやミートカーソルMCが表示される。
【0095】
また、出力制御部137は、目標位置更新部133による目標OP1の位置の更新結果(例えば、
図8に示す目標OP2の位置の決定結果)を受けて、到達点領域APの画像データをレンダリング画像に重畳させてもよい。これにより、出力部112において、到達点領域APが表示される。
【0096】
また、出力制御部137は、ゲームの画面等のような表示情報のみに限らず、出力部112の実現に利用される出力装置の種別に応じて、他の種別の情報の出力を制御してもよい。
【0097】
なお、
図10に示す機能構成はあくまで一例であり、上述した各構成要素の機能を実現することが可能であれば、必ずしも本実施形態に係るゲーム装置10の機能構成を限定するものではない。
例えば、上述した一連の構成要素のうち一部の構成要素が、サーバ装置30等のようなゲーム装置10とは異なる他の装置に設けられていてもよい。具体的な一例として、制御部130の各構成要素のうちの一部の構成要素(特に、目標位置更新部133以外の他の構成要素のうち少なくとも一部)が他の装置に設けられていてもよい。
【0098】
<処理>
図11を参照して、本実施形態に係るゲーム装置10の処理の一例について、特に、
図4~
図6を参照して説明した野球ゲームにおいて、
図8及び
図9を参照して説明した制御を実現するための処理に着目して説明する。なお、
図11に示す例では、便宜上、投手側のユーザが投手キャラクタPCによる投球に係る操作を行い、打者側のユーザが打者キャラクタBCによる打撃に係る操作を行うものとする。
【0099】
S101において、投手側のユーザからの指示に基づき投球に係る動作が開始されると、目標位置設定部132は、コース指定カーソルACにより指定された打撃ゾーンSF内の位置を、ボールオブジェクトBLの移動の制御に係る目標OP1の位置として設定する。
【0100】
次いで、S102及びS103において、目標位置更新部133により、設定された目標OP1の位置の更新(補正)が行われる。
具体的には、S102において、目標位置更新部133は、記憶部150に記憶された上記ユーザに対応するパラメータ情報151を参照し、投手キャラクタPCのボールコントロールに係る能力パラメータを取得する。
また、S103において、目標位置更新部133は、仮想空間内に予め設定された基準位置O1と目標OP1の位置との位置関係を、取得した上記能力パラメータに基づき定めることにより、当該目標OP1の位置を更新する。これにより、更新後の目標OP1(すなわち、目標OP2)の位置が決定される。
具体的な一例として、
図8を参照して説明した例のように、投手キャラクタのボールコントロール能力のパラメータ値が閾値を超える場合には、目標OP2の位置が、更新前の目標OP1の位置に比べて、基準位置O1から遠くなる位置となるように、目標OP1の位置が更新される。これに対して、投手キャラクタのボールコントロール能力のパラメータ値が閾値未満の場合には、目標OP2の位置が、更新前の目標OP1の位置に比べて、基準位置O1に近くなる位置となるように、目標OP1の位置が更新される。
また、この際に、出力制御部137は、目標OP1の位置の更新結果を受けて、打撃ゾーンSF中の対応する位置に到達点領域APが提示されるように、ゲーム空間を表すレンダリング画像に当該到達点領域APの画像データを重畳させてもよい。
【0101】
S104において、移動体制御部134は、目標OP2の位置(すなわち、目標OP1の位置の更新結果)に応じて、投手キャラクタPCから送出されるボールオブジェクトBLの移動を制御する。具体的には、移動体制御部134は、予め設定された移動開始位置PSから目標OP2を通過して移動終了位置PEまで到達するように、ボールオブジェクトBLの移動を制御する。また、この際に、移動体制御部134は、従前に投手側のユーザから指定された球種に応じて、ボールオブジェクトBLの移動に係る経路(軌道)を制御してもよい。
【0102】
次いで、S105において、作用付与部135は、打者側のユーザからの指示と、ボールオブジェクトBLの移動に係る制御の結果と、に基づき、打者キャラクタBCによるボールオブジェクトBLの打撃が成功したか否かに関する打撃判定処理を行う。
具体的には、作用付与部135は、移動体制御部134によるボールオブジェクトBLの移動に係る制御に応じて、ボールオブジェクトBLが打撃ゾーンSFの一部を通過するタイミングに基づき、作用付与タイミングを特定する。また、作用付与部135は、作用付与タイミングにおいて移動体への作用の付与に係る位置の指定が行われた場合に、打撃判定処理として、ボールオブジェクトBLとミートカーソルMCとの少なくとも一部が重なっているか否かの判定を行う。
【0103】
S106において、作用付与部135及び移動体制御部134により、S105における打撃判定の結果に応じて打撃処理が行われる。
具体的には、作用付与部135は、上記打撃判定処理によりボールオブジェクトBLとミートカーソルMCとの少なくとも一部が重なっていると判定した場合には、当該ボールオブジェクトBLに対して作用を付与する。この際に、作用付与部135は、ミートカーソルMCの中心(スイートスポット)と、ボールオブジェクトBLの重心と、位置関係に応じて、作用が付与された後の当該ボールオブジェクトBLの初速度の向きや大きさを決定してもよい。そして、移動体制御部134は、作用が付与された後のボールオブジェクトBL初速度の向きや大きさに応じて、当該ボールオブジェクトBLの移動の制御を行う。具体的な一例として、移動体制御部134は、ボールオブジェクトBLの初速度を用いて質点の運動方程式を解くことにより、ボールオブジェクトBLの位置を繰り返し算出することで、当該ボールオブジェクトBLの移動に係る経路を特定してもよい。
【0104】
以上のような一連の処理が、例えば、投球ごとに実行されてもよい。また、上記一連の処理のうち、投球に係る操作(特に、目標OP1の位置の指定)と、打撃に係る操作(特に、打撃位置や打撃タイミングの指定)と、のうち少なくともいずれかが、ゲーム装置10のCPUにより行われてもよい。
【0105】
<変形例>
以下に、本実施形態の変形例について説明する。
【0106】
(変形例1:目標の位置の更新に係る制御に適用される指標の一例)
変形例1として、目標OP1の位置の更新に係る制御の一例について、特に、同制御に適用される指標の一例に着目して説明する。例えば、
図12は、目標OP1の位置の更新に係る制御における制御方向及び制御量の決定に適用される指標の一例について概要を示した図である。なお、本変形例では、特徴をよりわかりやすくするために、野球ゲームにおいて投球されたボールオブジェクトの移動の制御が行われる場合に着目して説明を行うものとする。
【0107】
本変形例では、目標OP1の位置の更新に係る制御における制御方向及び制御量の決定に抽選の要素(換言すると、ランダム性を有する要素)を適用する点で、
図9を参照して説明した例と異なる。具体的には、投手キャラクタのボールコントロールに係る能力パラメータに応じて、目標OP1の位置の更新に係る制御の制御方向及び制御量の抽選区分が決定され、その後、抽選区分の決定結果に基づく抽選により当該制御方向及び当該制御量が決定される。
【0108】
図12において、図面の横方向に延伸するスケールは、目標OP1の位置の更新に係る制御の制御方向及び制御量を模式的に示している。当該スケールは、図面の左方向が、投手側がより有利となる制御の制御方向に対応しており、図面の右方向が、打者側がより有利となる制御の制御方向に対応している。具体的には、
図8に示す例と対応付けた場合には、図面の左方向が、ストライクゾーンSZの外側に向けた目標OP1の位置の更新に係る制御方向に相当し、図面の右方向が、ストライクゾーンSZの内側に向けた目標OP1の位置の更新に係る制御方向に相当する。
また、上記スケールが延伸する方向に沿って互いに異なる位置に対応付けるように、5つの抽選区分が設定されている。各抽選区分には、対応付けられたスケール上の位置に応じた制御方向及び制御量が割り当てられている。なお、便宜上、5つの抽選区分のうち、中心に位置する抽選区分に対して、左方向に位置する抽選区分に対して、ストライクゾーンSZの外側に向けた目標OP1の位置の更新に係る制御方向及び制御量が割り当てられ、右方向に位置する抽選区分に対して、ストライクゾーンSZの内側に向けた目標OP1の位置の更新に係る制御方向及び制御量が割り当てられるものとする。
そのうえで、投手キャラクタのボールコントロールに係る能力パラメータに応じた抽選区分が選択され、当該抽選区分を用いた抽選により目標OP1の位置の更新に係る制御方向及び制御量が決定される。
【0109】
例えば、
図12に示す例では、投手キャラクタのボールコントロールに係る能力パラメータのパラメータ値が、「-2」~「+2」の範囲で設定されている。なお、当該パラメータ値は、「±0」を基点として、+方向側がゲームにおいてより優位性を示す方向に相当するものとする。
そのうえで、上記パラメータ値がより優位性を示すほど、目標OP1の位置がストライクゾーンSZの外側に向けて移動した位置により更新されやすくなるように、当該パラメータ値ごとに抽選区分があらかじめ設定されている。
【0110】
具体的には、
図12に示す例では、投手キャラクタのボールコントロールに係る能力パラメータのパラメータ値が「±0」の場合には、5つの抽選区分それぞれが選択される確率が略等しくなるように、各抽選区分が選択される確率が設定されている。
そのうえで、上記能力パラメータのパラメータ値が「+1」、「+2」の場合には、目標OP1の位置がストライクゾーンSZの外側に向けて移動した位置に更新されるような制御方向が割り当てられた抽選区分に対して、より高い確率が設定されている。また、この際に、上記能力パラメータのパラメータ値がより高いほど、更新後の目標OP1の位置が、更新前のOP1の位置からストライクゾーンSZの外側に向けてより移動した位置となる制御量が割り当てられた抽選区分に対して、より高い確率が設定されている。
また、上記能力パラメータのパラメータ値が「-1」、「-2」の場合には、目標OP1の位置がストライクゾーンSZの内側に向けて移動した位置に更新されるような制御方向が割り当てられた抽選区分に対して、より高い確率が設定されている。また、この際に、上記能力パラメータのパラメータ値がより低いほど、更新後の目標OP1の位置が、更新前のOP1の位置からストライクゾーンSZの内側に向けてより移動した位置となる制御量が割り当てられた抽選区分に対して、より高い確率が設定されている。
すなわち、上記能力パラメータのパラメータ値に応じて、各抽選区分が選択される確率に対して重み付けが行われている。具体的には、上記能力パラメータのパラメータ値がより優位性を示すほど、投手側が有利となる制御がより適用されやすくなるように、各抽選区分が選択される確率に対して重み付けが行われている。
【0111】
以上のような制御が適用されることで、パラメータの優位性に応じたゲーム性(例えば、難易度等)の定量的な変化を模擬するとともに、当該ゲーム性の変化に対して、確率等のような抽選の要素や、重み付け等のような制御の偏りの要素を反映することが可能となる。
【0112】
(変形例2:目標の位置の更新に係る制御の制御内容の決定方法の一例)
変形例2として、目標OP1の位置の更新に係る制御の一例について、特に、同制御における制御内容(例えば、制御方向や制御量)の決定方法の一例に着目して説明する。具体的には、本変形例では、ユーザによる所定の操作の実行結果を、目標OP1の位置の更新に係る制御における制御内容の決定に反映する場合の一例について説明する。例えば、
図13は、目標OP1の位置の更新に係る制御における制御方向及び制御量の決定方法の一例について概要を説明するための図である。なお、本変形例では、特徴をよりわかりやすくするために、野球ゲームにおいて投球されたボールオブジェクトの移動の制御が行われる場合に着目して説明を行うものとする。
【0113】
本変形例では、投手側のユーザから受け付ける投球に係る操作の少なくとも一部として、目標OP1の位置の更新に係る制御の制御内容の決定に係る操作の受け付けが行われ、同操作の内容に応じて、目標OP1の位置の更新に係る制御の制御内容が決定される。具体的には、
図13に示す例では、「投球開始」及び「リリース」に係る操作が受け付けられ、「リリース」に係る操作が受け付けられたタイミングに応じて、目標OP1の位置の更新に係る制御の制御内容が決定される。
【0114】
具体的には、コース指定カーソルACにより設定される目標OP1を中心として、略円形状の判定領域MC2が設定されている。また、判定領域MC2と同心円となるように、略円形状のマーカーMC1が設定されている。投球開始に係る操作が受け付けられると、マーカーMC1が目標OP1に向けて収束を開始し、所定の期間の経過後に収束したマーカーMC1と目標OP1とが略重畳する。この期間内にリリースに係る操作が受け付けられると、当該操作が受け付けられたタイミングにおける判定領域MC2とマーカーMC1との間の位置関係に応じて、目標OP1の位置の更新に係る制御の制御内容が決定される。
【0115】
具体的な一例として、リリースに係る操作が受け付けられたタイミングにおいて、収束したマーカーMC1が判定領域MC2内に位置する場合に、目標OP1の位置がストライクゾーンSZの外側に向けて移動した位置に更新されるような制御が適用されてもよい。また、この際に、収束したマーカーMC1が目標OP1により近いほど(換言すると、マーカーMC1のサイズがより小さいほど)、目標OP1の位置がストライクゾーンSZの外側に向けてより移動した位置に更新されるような制御が適用されてもよい。すなわち、この場合には、投手側がより有利となる制御が適用されることとなる。
これに対して、リリースに係る操作が受け付けられたタイミングにおいて、収束したマーカーMC1が判定領域MC2外に位置する場合に、目標OP1の位置がストライクゾーンSZの内側に向けて移動した位置に更新されるような制御が適用されてもよい。また、この際に、収束したマーカーMC1が目標OP1により遠いほど(換言すると、マーカーMC1のサイズがより大きいほど)、目標OP1の位置がストライクゾーンSZの内側に向けてより移動した位置に更新されるような制御が適用されてもよい。すなわち、この場合には、投手側がより不利となる制御が適用されることとなる。
すなわち、この場合には、リリースに係る操作が受け付けられたタイミングに応じた情報が、目標OP1の位置の更新に利用されるパラメータの一例に相当することとなる。
また、収束したマーカーMC1と目標OP1とが略重畳するまでの期間内にリリースに係る操作が受け付けられなかった場合には、投球が失敗したものと判定されてもよいし、投球が失敗したものと判定せずに、マーカーMC1の目標OP1に向けての収束を再開させてもよい。投球が失敗したものと判定した場合には、投手側がより不利となるように、例えば、目標OP1の位置がストライクゾーンSZの内側に向けてより移動した位置に更新されるような制御が適用されてもよい。この場合には、目標OP1の位置の制御量については、マーカーMC1と目標OP1とが最も離間しているタイミングでリリースに係る操作が受け付けられた場合と同様の制御量が適用されてもよい。また、他の一例として、目標OP1の位置に関わらず、ボールオブジェクトBLがストライクゾーンSZから外れた位置を通過するような制御が適用されることで、所謂暴投が模擬されてもよい。
【0116】
以上のような制御が適用されることで、ユーザによる所定の操作の実行結果を、目標OP1の位置の更新に係る制御における制御内容の決定に反映することが可能となる。
なお、同制御については、上述した実施形態や他の変形例において説明した、所定のキャラクタの能力パラメータを利用した制御と組み合わせて利用されてもよい。この場合には、例えば、ユーザによる所定の操作の実行結果と、所定のキャラクタの能力パラメータと、のうちの一方により決定された制御内容が、他方に応じて補正されてもよい。具体的な一例として、ユーザにより実行された所定の操作の結果に応じて、目標OP1の位置をストライクゾーンSZの内側に向けて移動させる制御が適用された場合においても、投手キャラクタのボールコントロールに関する能力パラメータが高い場合には、目標OP1の位置の移動に係る制御量が制限されてもよい。また、他の一例として、投手キャラクタのボールコントロールに関する能力パラメータに応じて、目標OP1の位置をストライクゾーンSZの外側に向けて移動させる制御が適用された場合においても、ユーザにより実行された所定の操作が受け付けられたタイミングにおいてマーカーMC1と目標OP1とが重畳していない場合には、目標OP1の位置の移動に係る制御量が制限されてもよい。
【0117】
(変形例3:目標の位置の更新方法の一例)
変形例3として、目標OP1の位置の更新方法の一例について説明する。本変形例では、
図8を参照して説明した目標OP1の位置の更新に係る制御に対して、
図7を参照して説明した移動体の到達点OCの設定に係る制御を組み合わせる場合の一例について説明する。
【0118】
具体的には、目標位置更新部133は、
図8を参照して説明した制御により目標OP1の位置を更新した後に、更新後の目標OP1(すなわち、目標OP2)を中心として、
図7に示す略円形状の領域BF1を設定してもよい。そして、目標位置更新部133は、目標OP2の位置を、領域BF1内の位置にさらに更新してもよい。なお、この際に、目標位置更新部133は、領域BF1内の位置をランダムに決定してもよい。また、目標位置更新部133は、領域BF1の設定に際し、当該領域BF1の大きさ(換言すると、領域BF1の半径)を、移動体の移動の制御に係る所定のパラメータ(例えば、投手キャラクタのボールコントロールに係る能力パラメータ)に応じて決定してもよい。
なお、この場合における、更新後の目標OP1に基づき設定される領域BF1が「第2の領域」の一例に相当する。
【0119】
以上のような制御が適用されることで、所定のパラメータの優位性を、ゲームの内容により即した態様で移動体の移動に係る制御に反映可能とするとともに、当該制御に応じたゲーム性の変化に対して、ランダム性を有する要素を追加することが可能となる。具体的な一例として、野球における投手の能力に応じたボールコントロールの正確さをゲームの内容に即したゲーム性の変化として模擬するとともに、当該ゲーム性の変化に対して、制球の乱れのようなランダム性を有する要素を追加することが可能となる。
【0120】
<その他の適用例>
上記では、本実施形態に係る制御を、野球ゲームにおける投球の際のボールオブジェクトBLの移動の制御に適用する場合の一例について説明した。一方で、上述した野球ゲームの例に限らず、目標の位置の設定結果に応じて移動体の移動の制御が行われるような状況下であれば、本実施形態に係る制御を適用することが可能である。
具体的な一例として、サッカーゲームにおいて、キッカーによりボールのシュートが行われる状況下(例えば、PK戦等)において、キッカーにシュートされたボールの移動の制御に、本実施形態に係る制御を適用することも可能である。この場合には、例えば、キッカーの能力パラメータのうち、シュートのコントールに関連する能力パラメータに応じて、シュートされたボールの移動の制御に係る目標OP1の位置が更新されてもよい。
また、他の一例として、銃火器を使用した銃撃戦を模擬したゲームにおいて、銃火器から発射された弾丸の移動の制御に、本実施形態に係る制御を適用することも可能である。この場合には、例えば、銃火器を利用して銃撃を行うキャラクタの、銃撃の正確さに関連する能力パラメータに応じて、銃火器から発射された弾丸の移動の制御に係る目標OP1の位置が更新されてもよい。
また、本実施形態に係る制御が、ゲーム以外の他のプログラムにおける移動体の移動の制御に適用されてもよい。
【0121】
また、上述した実施形態では、3次元的な仮想空間内に目標OP1の位置が設定される場合の一例に着目して説明したが、目標OP1の位置が設定される領域は必ずしも3次元的な仮想空間のみには限定されない。例えば、目標OP1の位置が設定される領域は、2次元的な領域であってもよいし、必ずしも仮想空間を前提とした領域でなくてもよい。
具体的な一例として、ディスプレイ等の表示装置の表示面のように、ゲーム画面等の表示情報が表示される表示領域内に目標OP1の位置が設定されてもよい。この場合には、表示領域内に予め設定された基準位置と目標OP1の位置との位置関係が、所定のパラメータに基づいて定められることで、当該目標OP1の位置が更新されればよい。
【0122】
<付記>
上述した説明から、本発明は例えば以下のように把握される。
【0123】
(1)
本発明の一態様に係るプログラムは、コンピュータに、仮想空間内において移動体を移動させる目標の位置を設定することと、前記仮想空間内に予め設定された基準位置と前記目標の位置との位置関係を、所定のパラメータに基づいて定めることにより、前記目標の位置を更新することと、前記更新された前記目標の位置に応じて、前記仮想空間内における前記移動体の移動を制御することと、を実行させる、プログラムである。
【0124】
(9)
本発明の他の一態様に係るプログラムは、コンピュータに、情報が表示される表示領域内において移動体を移動させる目標の位置を設定することと、前記表示領域内に予め設定された基準位置と前記目標の位置との位置関係を、所定のパラメータに基づいて定めることにより、前記目標の位置を更新することと、前記更新された前記目標の位置に応じて、前記表示領域内における前記移動体の移動を制御することと、を実行させるプログラムである。
【0125】
(10)
本発明の一態様に係る情報処理装置は、仮想空間内において移動体を移動させる目標の位置を設定する設定手段と、前記仮想空間内に予め設定された基準位置と前記目標の位置との位置関係を、所定のパラメータに基づいて定めることにより、前記目標の位置を更新する更新手段と、前記更新された前記目標の位置に応じて、前記仮想空間内における前記移動体の移動を制御する制御手段と、を備える、情報処理装置である。
【0126】
(11)
本発明の一態様に係る情報処理方法は、仮想空間内において移動体を移動させる目標の位置を設定することと、前記仮想空間内に予め設定された基準位置と前記目標の位置との位置関係を、所定のパラメータに基づいて定めることにより、前記目標の位置を更新することと、前記更新された前記目標の位置に応じて、前記仮想空間内における前記移動体の移動を制御することと、を含む、情報処理方法である。
【0127】
上記(1)、(9)、(10)、または(11)に係る発明に依れば、ゲーム内におけるパラメータの優位性に応じたゲーム性の変化を、ゲームの内容に(例えば、ゲームのルール)により即した態様でユーザにフィードバックすることが可能となる。具体的な一例として、野球ゲームにおいて、投球されたボールオブジェクトがバットオブジェクトにより打撃される状況下で、投手キャラクタのボールコントロール能力の優位性を、打撃の難易度の変化(例えば、ボールの打ち難さや打ち易さ等)として打者側のユーザにフィードバックすることが可能となる。
【0128】
(2)
本発明の一態様では、上記(1)の態様において、上記所定のパラメータに基づいて、上記目標の位置を移動させる移動量を制御することにより、上記目標の位置が更新する。上記(2)の態様に依れば、ゲーム内におけるパラメータの優位性に応じたゲーム性の変化(例えば、上述した難易度の変化)を、よりゲームの内容に即した態様で定量的に表現することが可能となる。
【0129】
(3)
本発明の一態様では、上記(1)または(2)の態様において、上記所定のパラメータに基づいて、上記目標の位置を移動させる方向を制御することにより、上記目標の位置を更新する。上記(3)の態様に依れば、ゲーム内におけるパラメータの優位性に応じたゲーム性の変化(例えば、上述した難易度の変化)を、よりゲームの内容に即した態様で表現することが可能となる。
【0130】
(4)
本発明の一態様では、上記(1)~(3)のいずれかの態様において、上記プログラムは、上記仮想空間内において上記目標の位置に向けて上記移動体を移動させる制御と、当該移動体に対して作用を付与する制御と、を含むゲームのプログラムであり、上記目標の位置に向けて移動が制御される上記移動体が到達する位置が、上記基準位置に近いほど、上記移動体に付与される上記作用の効果が高くなるように制御する。
【0131】
(5)
本発明の一態様では、上記(4)の態様において、上記作用が付与されるときの上記移動体の位置が、上記基準位置に近いほど、当該作用を反映させた上記移動体の速度が速くなるように制御する。
【0132】
上記(4)または(5)の態様に依れば、移動体の移動の制御を行う側(例えば、投手側)のパラメータがより優位性を示すほど、移動体に対して作用を与える側(例えば、打者側)がゲームにおいてより不利となる状況を、上記目標の位置の更新結果により模擬することが可能となる。
【0133】
(6)
本発明の一態様では、上記(4)または(5)の態様において、上記所定のパラメータは、上記目標の位置の制御に係る優位性を示すパラメータであり、当該パラメータの示す優位性が高いほど、上記基準位置から遠くなる位置に上記目標の位置を更新する。上記(6)の態様に依れば、移動体の移動の制御を行う側のパラメータがより高いほど、移動体に対して作用を与える側がゲームにおいてより不利となる状況を、移動体の移動方向により模擬することが可能となる。具体的な一例として、野球ゲームにおいては、投手キャラクタのボールコントロールに係る能力パラメータがより優位性を示すほど、打者側のユーザがより不利となる状況を模擬することが可能となる。
【0134】
(7)
本発明の一態様では、上記(4)~(6)のいずれかの態様において、上記目標の位置に向けて移動が制御される移動体が、上記基準位置を含むように上記仮想空間内に予め設定された第1の領域内に到達する場合には、当該第1の領域外に上記移動体が到達する場合に比べて、上記移動体に付与される上記作用の効果がより高くなるように制御する。上記(7)の態様に依れば、上記(4)~(6)のいずれかの態様で示した移動体の制御が適用されることで、移動体が第1の領域内に到達する場合に、移動体に対して作用を与える側がゲームにおいてより有利となる状況を模擬することが可能となる。具体的な一例として、野球ゲームにおいては、ボールオブジェクトがストライクゾーン内に到達する場合に、当該ボールオブジェクトが当該ストライクゾーン外に到達する場合に比べて、打者側のユーザがより有利となる状況を模擬することが可能となる。
【0135】
(8)
本発明の一態様では、上記(4)~(7)のいずれかの態様において、上記更新された上記目標の位置に基づいて設定される第2の領域内に、上記目標の位置をさらに更新する。上記(8)の態様に依れば、上記(4)~(7)のいずれかの態様で示した目標の位置の制御に応じたゲーム性の変化に対して、ランダム性を有する要素を追加することが可能となる。
【符号の説明】
【0136】
1 システム
10 ゲーム装置
110 UI
111 入力部
112 出力部
130 制御部
131 入力解析部
132 目標位置設定部
133 目標位置更新部
134 移動体制御部
135 作用付与部
136 キャラクタ制御部
137 出力制御部
150 記憶部
30 サーバ装置