(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-22
(45)【発行日】2024-05-30
(54)【発明の名称】情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
(51)【国際特許分類】
A63F 13/803 20140101AFI20240523BHJP
A63F 13/56 20140101ALI20240523BHJP
A63F 13/69 20140101ALI20240523BHJP
A63F 13/5255 20140101ALI20240523BHJP
A63F 13/798 20140101ALI20240523BHJP
【FI】
A63F13/803
A63F13/56
A63F13/69
A63F13/5255
A63F13/798
(21)【出願番号】P 2020170975
(22)【出願日】2020-10-09
【審査請求日】2023-08-18
(73)【特許権者】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】100158780
【氏名又は名称】寺本 亮
(74)【代理人】
【識別番号】100121359
【氏名又は名称】小沢 昌弘
(74)【代理人】
【識別番号】100130269
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】木村 美由紀
(72)【発明者】
【氏名】緒方 亮介
(72)【発明者】
【氏名】阿部 恵里花
【審査官】前地 純一郎
(56)【参考文献】
【文献】特開2004-105671(JP,A)
【文献】特開2008-167825(JP,A)
【文献】特開2020-103398(JP,A)
【文献】特開2006-127547(JP,A)
【文献】特開2004-230113(JP,A)
【文献】特開2015-054190(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-13/98
A63F 9/24
(57)【特許請求の範囲】
【請求項1】
仮想ゲームステージを用いたレースゲームを制御する情報処理装置のコンピュータで実行される情報処理プログラムであって、
前記コンピュータを、
前記仮想ゲームステージでの前記レースゲームを第1モードで実行するか第2モードで実行するかをユーザの選択操作に基づいて決定するモード決定手段と、
前記第1モードにおいて、前記仮想ゲームステージにおけるプレイヤオブジェクトの移動をユーザの移動操作に基づいて制御し、当該仮想ゲームステージにおけるノンプレイヤオブジェクトの移動を自動で制御する第1制御手段と、
前記第2モードにおいて用いる、前記仮想ゲームステージにおける前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの相対的な位置関係が所定の位置関係となるように、当該仮想ゲームステージにおける当該プレイヤオブジェクトおよび当該ノンプレイヤオブジェクトの位置をユーザの位置変更操作に基づいて変更する位置変更手段と、
前記第2モードにおいて、前記所定の位置関係を保ちながら前記仮想ゲームステージにおける前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの移動を自動で制御する第2制御手段と、
前記第1モードおよび前記第2モードそれぞれにおいて、前記仮想ゲームステージでの前記レースゲーム経過および/または当該レースゲーム結果における前記プレイヤオブジェクトの位置に基づくゲームイベントに基づいて、ユーザに報酬を付与する報酬付与手段として機能させる、情報処理プログラム。
【請求項2】
前記第1制御手段は、前記第1モードにおける所定のユーザ操作を前記移動操作とし、
前記第2制御手段は、前記第2モードにおける前記所定のユーザ操作に応じて、前記レースゲーム画像を生成するための仮想カメラの位置および/または姿勢を仮想空間において変化させる、請求項1に記載の情報処理プログラム。
【請求項3】
前記報酬付与手段は、前記第1モードおよび前記第2モードのそれぞれにおいて、前記ゲームイベントとして前記仮想ゲームステージでの前記レースゲーム結果となるゴール順位に少なくとも基づいて前記報酬を決定する、請求項1または2に記載の情報処理プログラム。
【請求項4】
前記位置変更手段は、前記相対的な位置関係が前記所定の位置関係となるような位置であって、かつ、前記プレイヤオブジェクトの位置が進行方向に対し先頭となるような位置に、ユーザ操作に応じて前記プレイヤオブジェクトの位置を変化させる、請求項3に記載の情報処理プログラム。
【請求項5】
前記報酬付与手段は、前記第1モードにおいて、前記ゲームイベントとして前記仮想ゲームステージでの前記レースゲーム結果となるゴール順位に少なくとも基づいて前記報酬を決定し、前記第2モードにおいて当該ゴール順位に関わらず前記報酬を決定する、請求項1または2に記載の情報処理プログラム。
【請求項6】
前記報酬付与手段は、前記第1モードおよび前記第2モードの何れにおいても同じ評価基準を用いて、前記仮想ゲームステージでの前記レースゲーム経過および/または当該レースゲーム結果を評価し、当該評価結果に応じて前記報酬を付与する、請求項1乃至4の何れか1つに記載の情報処理プログラム。
【請求項7】
前記位置変更手段は、前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの相対的な位置関係を、予め定められた複数種類のパターンから前記位置変更操作に応じて選択された1つのパターンに設定する、請求項1乃至6の何れか1つに記載の情報処理プログラム。
【請求項8】
前記位置変更手段は、選択された前記パターン内における前記プレイヤオブジェクトの位置をユーザ操作に応じて変更する、請求項7に記載の情報処理プログラム。
【請求項9】
前記位置変更手段は、ユーザ操作に応じて、選択された前記パターン内における前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトのうち、仮想カメラの注視点に対応する位置に配置するオブジェクトを設定するとともに、当該パターン内における当該オブジェクトの位置を変化させる、請求項7または8に記載の情報処理プログラム。
【請求項10】
前記位置変更手段は、ユーザ操作に応じて、選択された前記パターン内における前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトのうち、指定されたオブジェクトの位置が進行方向に対し当該パターン内において先頭となるように当該オブジェクトの位置を変化させる、請求項7乃至9の何れか1つに記載の情報処理プログラム。
【請求項11】
前記位置変更手段は、前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの相対的な位置関係を、異なるパターンによる位置関係に変更する場合、所定の時間をかけて段階的に各オブジェクトの位置を変更する、請求項7乃至10の何れか1つに記載の情報処理プログラム。
【請求項12】
前記仮想ゲームステージをクリアしたか否かを判定するクリア判定手段として、さらに前記コンピュータを機能させ、
前記クリア判定手段は、前記第1モードにおけるゲームプレイと同様に前記第2モードにおけるゲームプレイを評価して、当該ゲームプレイされた前記仮想ゲームステージをクリアしたか否かを判定する、請求項1乃至11の何れか1つに記載の情報処理プログラム。
【請求項13】
仮想ゲームステージを用いたレースゲームを制御する情報処理装置であって、
前記仮想ゲームステージでの前記レースゲームを第1モードで実行するか第2モードで実行するかをユーザの選択操作に基づいて決定するモード決定手段と、
前記第1モードにおいて、前記仮想ゲームステージにおけるプレイヤオブジェクトの移動をユーザの移動操作に基づいて制御し、当該仮想ゲームステージにおけるノンプレイヤオブジェクトの移動を自動で制御する第1制御手段と、
前記第2モードにおいて用いる、前記仮想ゲームステージにおける前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの相対的な位置関係が所定の位置関係となるように、当該仮想ゲームステージにおける当該プレイヤオブジェクトおよび当該ノンプレイヤオブジェクトの位置をユーザの位置変更操作に基づいて変更する位置変更手段と、
前記第2モードにおいて、前記所定の位置関係を保ちながら前記仮想ゲームステージにおける前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの移動を自動で制御する第2制御手段と、
前記第1モードおよび前記第2モードそれぞれにおいて、前記仮想ゲームステージでの前記レースゲーム経過および/または当該レースゲーム結果における前記プレイヤオブジェクトの位置に基づくゲームイベントに基づいて、ユーザに報酬を付与する報酬付与手段とを備える、情報処理装置。
【請求項14】
仮想ゲームステージを用いたレースゲームを制御する情報処理システムであって、
前記仮想ゲームステージでの前記レースゲームを第1モードで実行するか第2モードで実行するかをユーザの選択操作に基づいて決定するモード決定手段と、
前記第1モードにおいて、前記仮想ゲームステージにおけるプレイヤオブジェクトの移動をユーザの移動操作に基づいて制御し、当該仮想ゲームステージにおけるノンプレイヤオブジェクトの移動を自動で制御する第1制御手段と、
前記第2モードにおいて用いる、前記仮想ゲームステージにおける前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの相対的な位置関係が所定の位置関係となるように、当該仮想ゲームステージにおける当該プレイヤオブジェクトおよび当該ノンプレイヤオブジェクトの位置をユーザの位置変更操作に基づいて変更する位置変更手段と、
前記第2モードにおいて、前記所定の位置関係を保ちながら前記仮想ゲームステージにおける前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの移動を自動で制御する第2制御手段と、
前記第1モードおよび前記第2モードそれぞれにおいて、前記仮想ゲームステージでの前記レースゲーム経過および/または当該レースゲーム結果における前記プレイヤオブジェクトの位置に基づくゲームイベントに基づいて、ユーザに報酬を付与する報酬付与手段とを備える、情報処理システム。
【請求項15】
仮想ゲームステージを用いたレースゲームを制御する情報処理方法であって、
前記仮想ゲームステージでの前記レースゲームを第1モードで実行するか第2モードで実行するかをユーザの選択操作に基づいて決定するモード決定ステップと、
前記第1モードにおいて、前記仮想ゲームステージにおけるプレイヤオブジェクトの移動をユーザの移動操作に基づいて制御し、当該仮想ゲームステージにおけるノンプレイヤオブジェクトの移動を自動で制御する第1制御ステップと、
前記第2モードにおいて用いる、前記仮想ゲームステージにおける前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの相対的な位置関係が所定の位置関係となるように、当該仮想ゲームステージにおける当該プレイヤオブジェクトおよび当該ノンプレイヤオブジェクトの位置をユーザの位置変更操作に基づいて変更する位置変更ステップと、
前記第2モードにおいて、前記所定の位置関係を保ちながら前記仮想ゲームステージにおける前記プレイヤオブジェクトおよび前記ノンプレイヤオブジェクトの移動を自動で制御する第2制御ステップと、
前記第1モードおよび前記第2モードそれぞれにおいて、前記仮想ゲームステージでの前記レースゲーム経過および/または当該レースゲーム結果における前記プレイヤオブジェクトの位置に基づくゲームイベントに基づいて、ユーザに報酬を付与する報酬付与ステップとを含む、情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法に関し、特に例えば、ユーザ操作に応じてプレイヤオブジェクトを移動させるゲーム処理を行う情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法に関する。
【背景技術】
【0002】
従来、仮想ゲームステージを用いたレースゲームを行うゲームプログラムがある(例えば、非特許文献1参照)。上記非特許文献1に記載されたゲームプログラムでは、ゲームステージにおいてプレイヤオブジェクトを用いてゲームプレイするためには、ユーザ自身がプレイヤオブジェクトを移動させる操作を行う必要があった。
【先行技術文献】
【非特許文献】
【0003】
【文献】”マリオカートツアー“、[online]、Nintendo of America Inc.、[令和2年9月18日検索]、インターネット(URL:https://mariokarttour.com/en-US)
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記非特許文献1に記載されたゲームプログラムにおけるレースゲームのゲームステージでは、ユーザ操作によってプレイヤオブジェクトを移動させることが必要となるため、当該ゲームステージを気軽にプレイすることについて改良の余地があった。
【0005】
それ故に、本発明の目的は、ゲームステージについてより気軽にゲームプレイすることを可能とする情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法を提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は例えば以下のような構成を採用し得る。
【0007】
本発明の情報処理プログラムの一構成例は、仮想ゲームステージを用いたレースゲームを制御する情報処理装置のコンピュータで実行される。情報処理プログラムは、モード決定手段、第1制御手段、位置変更手段、第2制御手段、および報酬付与手段として、コンピュータを機能させる。モード決定手段は、仮想ゲームステージでのレースゲームを第1モードで実行するか第2モードで実行するかをユーザの選択操作に基づいて決定する。第1制御手段は、第1モードにおいて、仮想ゲームステージにおけるプレイヤオブジェクトの移動をユーザの移動操作に基づいて制御し、当該仮想ゲームステージにおけるノンプレイヤオブジェクトの移動を自動で制御する。位置変更手段は、第2モードにおいて用いる、仮想ゲームステージにおけるプレイヤオブジェクトおよびノンプレイヤオブジェクトの相対的な位置関係が所定の位置関係となるように、当該仮想ゲームステージにおける当該プレイヤオブジェクトおよび当該ノンプレイヤオブジェクトの位置をユーザの位置変更操作に基づいて変更する。第2制御手段は、第2モードにおいて、所定の位置関係を保ちながら仮想ゲームステージにおけるプレイヤオブジェクトおよびノンプレイヤオブジェクトの移動を自動で制御する。報酬付与手段は、第1モードおよび第2モードそれぞれにおいて、仮想ゲームステージでのレースゲーム経過および/または当該レースゲーム結果におけるプレイヤオブジェクトの位置に基づくゲームイベントに基づいて、ユーザに報酬を付与する。
【0008】
上記によれば、1つの仮想ゲームステージを用いたレースゲームに対して、ユーザ操作に応じてプレイヤオブジェクトの移動が制御される第1モードと、プレイヤオブジェクトの移動が自動制御される第2モードとが用意されているため、1つの仮想ゲームステージについてより気軽にプレイすることができる。
【0009】
また、上記第1制御手段は、第1モードにおける所定のユーザ操作を移動操作としてもよい。上記第2制御手段は、第2モードにおける所定のユーザ操作に応じて、レースゲーム画像を生成するための仮想カメラの位置および/または姿勢を仮想空間において変化させてもよい。
【0010】
上記によれば、プレイヤオブジェクトの動作制御態様が異なる複数のモードを、操作体系が異なるモードとしても機能させることができるため、バリエーションに富んだ操作環境を提供することができる。
【0011】
また、上記報酬付与手段は、第1モードおよび第2モードのそれぞれにおいて、ゲームイベントとして仮想ゲームステージでのレースゲーム結果となるゴール順位に少なくとも基づいて報酬を決定してもよい。
【0012】
上記によれば、第1モードおよび第2モードの何れのモードを選択した場合であっても、同じ基準による報酬を得ることができる。
【0013】
また、上記位置変更手段は、相対的な位置関係が所定の位置関係となるような位置であって、かつ、プレイヤオブジェクトの位置が進行方向に対し先頭となるような位置に、ユーザ操作に応じてプレイヤオブジェクトの位置を変化させてもよい。
【0014】
上記によれば、ユーザが好むオブジェクトを先頭にして走行する様子を楽しむことができる。
【0015】
また、上記報酬付与手段は、第1モードにおいて、ゲームイベントとして仮想ゲームステージでのレースゲーム結果となるゴール順位に少なくとも基づいて報酬を決定し、第2モードにおいて当該ゴール順位に関わらず報酬を決定してもよい。
【0016】
上記によれば、モードの違いによる報酬の不釣り合いを低減することができる。
【0017】
また、上記報酬付与手段は、第1モードおよび第2モードの何れにおいても同じ評価基準を用いて、仮想ゲームステージでのレースゲーム経過および/または当該レースゲーム結果を評価し、当該評価結果に応じて報酬を付与してもよい。
【0018】
上記によれば、第2モードにおいても第1モードと同水準の報酬が得られるため、第2モードをユーザが選択しやすくなる。
【0019】
また、上記位置変更手段は、プレイヤオブジェクトおよびノンプレイヤオブジェクトの相対的な位置関係を、予め定められた複数種類のパターンから位置変更操作に応じて選択された1つのパターンに設定してもよい。
【0020】
上記によれば、第2モードにおいて完全に自動でプレイヤオブジェクトを走行させるだけでなく、ユーザが好む配置パターンによる位置関係で走行させることができるため、第2モードによるプレイがユーザによって選択されやすくなる。
【0021】
また、上記位置変更手段は、選択されたパターン内におけるプレイヤオブジェクトの位置をユーザ操作に応じて変更してもよい。
【0022】
上記によれば、位置関係の配置パターンだけでなく、当該配置パターン内におけるプレイヤオブジェクトの位置をユーザ操作に応じて変更可能であるため、第2モードによるプレイがユーザによってさらに選択されやすくなる。
【0023】
また、上記位置変更手段は、ユーザ操作に応じて、選択されたパターン内におけるプレイヤオブジェクトおよびノンプレイヤオブジェクトのうち、仮想カメラの注視点に対応する位置に配置するオブジェクトを設定するとともに、当該パターン内における当該オブジェクトの位置を変化させてもよい。
【0024】
上記によれば、ユーザが好む画像を表示することができる。
【0025】
また、上記位置変更手段は、ユーザ操作に応じて、選択されたパターン内におけるプレイヤオブジェクトおよびノンプレイヤオブジェクトのうち、指定されたオブジェクトの位置が進行方向に対し当該パターン内において先頭となるように当該オブジェクトの位置を変化させてもよい。
【0026】
上記によれば、ユーザが好むオブジェクトを先頭にして走行する様子を楽しむことができる。
【0027】
また、上記位置変更手段は、プレイヤオブジェクトおよびノンプレイヤオブジェクトの相対的な位置関係を、異なるパターンによる位置関係に変更する場合、所定の時間をかけて段階的に各オブジェクトの位置を変更してもよい。
【0028】
上記によれば、レース走行しながら隊列を変更する動作をリアルに表現することができるため、レースゲームならではの面白さを表現することができる。
【0029】
また、上記情報処理プログラムは、クリア判定手段として、さらにコンピュータを機能させてもよい。クリア判定手段は、仮想ゲームステージをクリアしたか否かを判定する。この場合、上記クリア判定手段は、第1モードにおけるゲームプレイと同様に第2モードにおけるゲームプレイを評価して、当該ゲームプレイされた仮想ゲームステージをクリアしたか否かを判定してもよい。
【0030】
上記によれば、第1モードと同様に第2モードでも仮想ゲームステージのクリアが可能であるため、第2モードによるプレイがユーザによって選択されやすくなる。
【0031】
また、本発明は、情報処理装置、情報処理システム、および情報処理方法の形態で実施されてもよい。
【発明の効果】
【0032】
本発明によれば、ユーザ操作に応じてプレイヤオブジェクトの移動が制御される第1モードと、プレイヤオブジェクトの移動が自動制御される第2モードとが用意されているため、より気軽にプレイすることができる。
【図面の簡単な説明】
【0033】
【
図1】本発明の一実施例に係る情報処理システム1の一例を示す図
【
図2】情報処理装置3の構成の一例を示すブロック図
【
図4】情報処理装置3の表示部35に表示されるツアーイベントに含まれるサブイベントを示すゲーム画像例を示す図
【
図5】情報処理装置3の表示部35に表示される第1モードにおけるゲーム画像例を示す図
【
図6】第1モードにおいてポイントが加算されるゲーム画像例を示す図
【
図7】第1モードにおけるレースゲームにおいてゴールしたゲーム画像例を示す図
【
図8】情報処理装置3の表示部35に表示される第2モードにおけるゲーム画像例を示す図
【
図9】ユーザ操作に応じて変更される隊列の一例を示す図
【
図10】第1モードにおけるレースゲームにおいてゴールしたゲーム画像例を示す図
【
図11】情報処理装置3の記憶部32に記憶される主なデータおよびプログラムの一例を示す図
【
図12】情報処理装置3において実行される処理の一例を示すフローチャート
【
図13】
図12のステップS104における第1モード処理の詳細な一例を示すサブルーチン
【
図14】
図12のステップS105における第2モード処理の詳細な一例を示すサブルーチン
【発明を実施するための形態】
【0034】
図1を参照して、本発明の一実施例に係る情報処理システムについて説明する。
図1に示すように、当該情報処理システムの一例である情報処理システム1は、情報処理装置3およびサーバ200が、ネットワーク100を介して接続されて構築される。なお、
図1においては、情報処理装置3が複数台図示されているが、情報処理システム1を構成する情報処理装置3は、1台であってもよい。
【0035】
情報処理装置3は、無線または有線通信を用いて、ネットワーク100に接続可能に構成され、サーバ200との間でクライアント-サーバシステムを構成している。例えば、情報処理装置3は、所定のアプリケーション(例えば、ゲームアプリケーション)の実行が可能である。また、情報処理装置3は、上記所定のアプリケーションを実行することによって、ネットワーク100を介して、サーバ200と接続を確立して、サーバ200との通信が可能となる。例えば、情報処理装置3は、交換可能なメモリカードや光ディスク等の記憶媒体内に記憶され、または、他の装置から受信した情報処理プログラムを実行可能である。情報処理装置3は、一般的なパーソナルコンピュータ、据置型ゲーム機、携帯電話機、携帯ゲーム機、PDA(Personal Digital Assistant)等のデバイスであってもかまわない。
【0036】
次に、
図2を参照して、情報処理装置3について説明する。なお、
図2は、情報処理装置3の構成の一例を示すブロック図である。
図2において、情報処理装置3は、制御部31、記憶部32、プログラム格納部33、入力部34、表示部35、通信部36、および慣性センサ37を備える。なお、情報処理装置3は、制御部31を少なくとも含む情報処理装置と他の装置とを含む1以上の装置によって構成されてもよい。
【0037】
制御部31は、各種の情報処理を実行するための情報処理手段(コンピュータ)であり、例えばCPUである。例えば、制御部31は、各種の情報処理として、上記アプリケーションを実行して、後述するゲーム処理やサーバ200を介したデータ送受信処理等を実行する機能を有し、CPUが所定のプログラムを実行することによって、制御部31における各機能が実現される。
【0038】
記憶部32は、制御部31が上記情報処理を実行する際に用いる各種のデータを記憶する。記憶部32は、例えばCPU(制御部31)がアクセス可能なメモリである。
【0039】
プログラム格納部33は、プログラムを記憶(格納)する。プログラム格納部33は、制御部31がアクセス可能な記憶装置(記憶媒体)であればどのようなものであってもよい。例えば、プログラム格納部33は、制御部31を含む情報処理装置内に設けられる記憶装置であってもよいし、制御部31を含む情報処理装置に着脱自在に装着される記憶媒体であってもよい。また、プログラム格納部33は、制御部31とネットワークを介して接続される記憶装置(サーバ等)であってもよい。制御部31(CPU)は、ゲームプログラムの一部または全部を適宜のタイミングで記憶部32に読み出し、読み出されたプログラムを実行するようにしてもよい。
【0040】
入力部34は、ユーザによって操作可能な入力装置である。入力部34はどのような入力装置であってもよい。一例として、入力部34は、表示部35の画面上に設けられるタッチパネルでもよい。例えば、タッチパネルは、任意の種類のものであってよく、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものやシングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
【0041】
表示部35は、制御部31の指示にしたがって画像を表示する。なお、情報処理装置3が据置型のゲーム装置やパーソナルコンピュータで構成される場合、表示部35が情報処理装置3と別体で構成されることもあり得る。本実施例においては、表示部35は、その表面にタッチパネル(入力部34)が設けられたタッチスクリーンで構成され、第1辺が第2辺より長い矩形の表示領域およびタッチ領域を有している。
【0042】
通信部36は、所定の通信モジュールによって構成され、ネットワーク100を介して他の機器(例えば、サーバ200)との間でデータを送受信したり、他の情報処理装置3との間でデータを送受信したりする。
【0043】
慣性センサ37は、情報処理装置3本体の姿勢や動きを検出するものであり、一例として加速度センサおよび/または角速度センサによって構成される。例えば、加速度センサは、情報処理装置3(表示部35)における互いに直交する3軸方向に沿った加速度の大きさを検出する。なお、加速度センサは、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。また、角速度センサは、上記3軸回りの角速度を検出する。なお、角速度センサは、1軸回りあるいは2軸回りの角速度を検出するものであってもよい。慣性センサ37は、制御部31に接続され、加速度センサおよび/または角速度センサの検出結果が制御部31へ出力される。制御部31は、上記の慣性センサ37の検出結果に基づいて、情報処理装置3(表示部35)の動きおよび/または姿勢に関する情報を算出することが可能であり、一例として実空間における重力方向に対する情報処理装置3(表示部35)の姿勢を算出することが可能である。
【0044】
次に、
図3を参照して、サーバ200について説明する。なお、
図3は、サーバ200の構成の一例を示すブロック図である。
【0045】
サーバ200は、通信部201、制御部202、および記憶部203を有している。通信部201は、通信パケットの送受信を行うことで、ネットワーク100を介して情報処理装置3等と通信を行う。一例として、制御部202は、情報処理装置3との間で行われるゲーム進行の管理、ユーザが購入するゲーム内通貨、ゲームアイテム(例えば、コイン)、ゲームオブジェクト(例えば、ゲーム内で使用される装備)等を管理する処理、スロット抽選に当選する確率を管理する処理、課金に関する情報を管理する処理のほか、通信部201を介して情報処理装置3等との通信リンクを確立し、ネットワーク100におけるデータ搬送制御や経路選択を行う。また、制御部202は、複数の情報処理装置3との間でゲームを行う場合、当該ゲームを行う情報処理装置3の組み合わせや当該情報処理装置3の間のデータ通信の管理を行う。記憶部203は、制御部202で実行されるプログラム、上記処理に必要な各種データ、情報処理装置3との通信に必要な各種データ等が記憶される。なお、ネットワーク100を用いたデータ送受信に所定のログイン処理が必要なシステムである場合、当該ログインしようとしているユーザが正規のユーザか否かを判別する認証処理をサーバ200において行ってもかまわない。また、サーバ200は、単一のサーバマシンから構成されてもいいし、複数のサーバマシンによって構成されてもよい。
【0046】
次に、情報処理装置3やサーバ200が行う具体的な処理を説明する前に、
図4~
図10を用いて情報処理システム1において行われるゲーム処理例の概要について説明する。なお、
図4は、情報処理装置3の表示部35に表示されるツアーイベントに含まれるサブイベントを示すゲーム画像例を示す図である。
図5は、情報処理装置3の表示部35に表示される第1モードにおけるゲーム画像例を示す図である。
図6は、第1モードにおいてポイントが加算されるゲーム画像例を示す図である。
図7は、第1モードにおけるレースゲームにおいてゴールしたゲーム画像例を示す図である。
図8は、情報処理装置3の表示部35に表示される第2モードにおけるゲーム画像例を示す図である。
図9は、ユーザ操作に応じて変更される隊列の一例を示す図である。
図10は、第1モードにおけるレースゲームにおいてゴールしたゲーム画像例を示す図である。なお、以下の説明では、情報処理装置3において実行するアプリケーションの一例としてゲームを用いているが、情報処理装置3において他のアプリケーションを実行してもかまわない。
【0047】
本実施例におけるゲーム処理では、複数のツアーイベントによって構成されるレースゲームの実行が可能である。そして、各ツアーイベントには、プレイ/実行可能となる獲得ポイント(スターポイント)の必要累積値がそれぞれ設定されており、ユーザが所有する獲得ポイントの累積値が当該必要累積値に到達することによって、ツアーイベントがプレイ/実行可能となる。また、各ツアーイベントは、それぞれ複数のサブイベントを含んでおり、サブイベントに設定されているコースを用いたレースゲームを実行した結果(レースゲーム経過や結果に応じて得られるポイント)に応じて、上記獲得ポイント(スターポイント)を獲得することができる。なお、各サブイベントに設定されているコースが、仮想ゲームステージの一例に相当する。
【0048】
例えば、
図4に示すように、各ツアーイベントのプレイ/実行を可能とする獲得ポイントは、ツアーイベントに含まれるサブイベント毎に獲得可能数が設定されており、ユーザがサブイベントの実行を繰り返すことによって、当該ユーザが当該獲得可能数まで獲得ポイントを累積取得することができる。例えば、
図4に示すゲーム画像では、ツアーイベントの一例であるCカップイベントの内容が表示されている。具体的には、Cカップイベントは、C1サーキットI1、C2マウンテンI2、C3チャレンジI3、およびC4アイランドI4を含む4つのサブイベントによって構成されていることが表示されている。そして、C1サーキットI1は、獲得可能数(5個)全ての獲得ポイントが既にユーザによって獲得されているコンプリート状態であることが示されている。C2マウンテンI2は、獲得可能数(5個)のうち、2個の獲得ポイントが既にユーザによって獲得され、3個の獲得ポイントが未獲得となったクリア状態であることが示されている。C3チャレンジI3は、獲得可能数(5個)の全ての獲得ポイントが未獲得となっているクリア状態であることが示されている。そして、C4アイランドI4は、獲得可能数(3個)の全ての獲得ポイントが未獲得であり、ユーザによってクリアされていない新コース(新イベント)であることが示されている。このようにプレイ可能なサブイベントのうち、獲得可能数に到達していないサブイベントをプレイすることによってユーザが獲得ポイントを獲得した場合、当該ユーザは、当該獲得ポイントを累積取得することができる。そして、ユーザの獲得ポイントの累積値が、あるツアーイベントの必要累積値に到達した場合、当該ツアーイベントがプレイ/実行可能であることがユーザに示される。
【0049】
本実施例では、レースゲームに登場する各オブジェクトの動作制御態様が異なる第1モードおよび第2モードが用意されており、ユーザ操作に応じて選択されて決定される。具体的には、第1モードは、プレイヤオブジェクトPOの移動をユーザの移動操作に基づいて制御し、ノンプレイヤオブジェクトNPOの移動を自動で制御してレースゲームを実行するモードである。また、第2モードは、プレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOの位置関係を保ちながらプレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOの移動を自動で制御してレースゲームを実行するモードである。
図5~
図7を用いた説明においては、第1モードによる動作制御例を用いて、ゲーム処理例の概要を説明する。
【0050】
図5において、情報処理装置3の表示部35には、情報処理装置3でプレイされているゲーム(例えば、ユーザが選択しているサブイベントのコースを用いたレースゲーム)に対応したゲーム画像が表示され、その一例としてプレイヤオブジェクトPOが第1モードで動作制御されてレースゲームを行う一場面が表示されている。例えば、上記ゲームにおいて、プレイヤオブジェクトPOは、仮想空間内に設けられたコース上をカートに乗車して走行する。また、上記コース上には、別のカートに乗車するノンプレイヤオブジェクトNPO(例えば、敵オブジェクト)も走行しており、当該コース上に設けられたゴールに到着するまでの順位が競われる。また、ゲーム画像を生成するための仮想カメラは、プレイヤオブジェクトPOの走行に応じてプレイヤオブジェクトPOの後方にコースに沿って配置される。なお、上記仮想カメラは、プレイヤオブジェクトPOがスピンしたりドリフトしたりするなど、コースの走行方向に対して異なる方向を向いた場合、当該プレイヤオブジェクトPOの後方からプレイヤオブジェクトPOを見る位置に常時配置されてもよいし、コースに沿った走行方向の後方からプレイヤオブジェクトPOを見る位置に配置されてもよい。
【0051】
図5に示すように、表示部35の画面上に設けられたタッチパネル(入力部34)をタッチ操作することによって、プレイヤオブジェクトPOの移動方向を制御することができる。一例として、プレイヤオブジェクトPOは、コースに沿って自動的に前進走行するように制御されているが、プレイヤオブジェクトPOの左右の移動方向に関してはユーザ操作によってハンドル操作が可能に構成されている。具体的には、表示部35のタッチパネルにタッチオンしたタッチ位置を基準として、右方向にスワイプするタッチ操作が行われた場合、プレイヤオブジェクトPOが右に移動方向を変化させる。また、表示部35のタッチパネルにタッチオンしたタッチ位置を基準として、左方向にスワイプするタッチ操作が行われた場合、プレイヤオブジェクトPOが左に移動方向を変化させる。例えば、
図5において、設定されている基準座標(例えば、タッチパネルにタッチオンしたタッチ位置)を示す基準位置Rと現在のタッチ位置を示すタッチ位置Tとが図示(実際には、基準位置および現在のタッチ位置を示す画像は表示部35に表示されないが、
図5では基準位置を示す基準位置Rおよびタッチ位置を示すタッチ位置Tをそれぞれ破線で便宜上図示している)されており、基準位置Rに対してタッチ位置Tが右方向に配置されているため、プレイヤオブジェクトPOが右に移動方向(図示a方向)を変化させている。なお、プレイヤオブジェクトPOは、コースに沿って自動的に前進走行するように制御されなくてもよく、ユーザのアクセル操作に応じて走行するものであってもよい。また、プレイヤオブジェクトPOは、コースに沿って自動的に左右にハンドル操作されるものであってもよい。例えば、コースが右に曲がっていれば、ユーザがハンドル操作しない場合であっても、プレイヤオブジェクトPOの移動方向がある程度は右に変化し、右ハンドル操作があった場合にさらにプレイヤオブジェクトPOの移動方向が右に変化するようなものであってもよい。
【0052】
また、表示部35のタッチパネルをタッチ操作することによって、プレイヤオブジェクトPOが所持しているアイテムIを発射する動作を制御することができる。例えば、プレイヤオブジェクトPOが発射可能なアイテムIは、プレイヤオブジェクトPOのカート後方に設けられている使用準備位置に表示されている。そして、表示部35のタッチパネルに対して上方向にスワイプするタッチ操作が行われると、プレイヤオブジェクトPOの使用準備位置に配置されているアイテムIが発射可能な種類である場合、プレイヤオブジェクトPOの前方に発射される。なお、使用準備位置に配置されているアイテムIの種類(例えば、バナナのアイテム)によって、表示部35のタッチパネルに対して下方向にスワイプするタッチ操作が行われた場合、プレイヤオブジェクトPOの後方に発射することもできる。なお、プレイヤオブジェクトPOの使用準備位置に配置されているアイテムIの発射方向が固定されている場合、表示部35のタッチパネルに対して上方向および下方向の何れの方向にスワイプするタッチ操作が行われたとしても、当該固定された発射方向に発射されてもかまわない。また、使用準備位置に配置されているアイテムIがプレイヤオブジェクトPOから発射されずにプレイヤオブジェクトPO自体によって使用される種類である場合、表示部35のタッチパネルに対して上方向または下方向にスワイプするタッチ操作が行われると、プレイヤオブジェクトPOの使用準備位置に配置されているアイテムIがプレイヤオブジェクトPOによって使用される。
【0053】
プレイヤオブジェクトPOがアイテムIを発射した場合、当該アイテムIの種類に応じて、プレイヤオブジェクトPOがレースを進める上で有利となる効果を得ることができる。例えば、甲羅を示すアイテムIがノンプレイヤオブジェクトNPOに衝突した場合、当該衝撃によってノンプレイヤオブジェクトNPOの走行を減速させたり停止させたりすることによる妨害を行うとともに、衝突状況に応じてノンプレイヤオブジェクトNPOが損傷することがある。また、バナナを示すアイテムIがノンプレイヤオブジェクトNPOに衝突した場合、ノンプレイヤオブジェクトNPOが路上で滑るような影響が与えられて、ノンプレイヤオブジェクトNPOの走行を減速させたり停止させたりする。
【0054】
また、アイテムIを使用することによって、プレイヤオブジェクトPO自体の能力が一定期間上昇する場合もある。例えば、キノコを示すアイテムIが使用された場合、プレイヤオブジェクトPOの速度が一定期間上昇する。なお、アイテムIを使用することによって、プレイヤオブジェクトPO自体のサイズが一定期間大きくなったり、プレイヤオブジェクトPOが所有するゲーム内コインが増えたりする効果が得られてもよい。
【0055】
また、プレイヤオブジェクトPOがアイテムIを使用した動作態様、効果、および回数等に応じて、プレイヤオブジェクトPOを操作しているユーザは、レースゲーム経過や結果に応じて得るポイントおよび当該ポイントに応じて得られる各ツアーイベントのプレイ/実行を可能とする獲得ポイントを獲得することができる。また、これらのポイントをユーザが得られる他の例として、レースゲーム経過におけるプレイヤオブジェクトPOの位置に基づくゲームイベントがある。一例として、
図6に示すように、仮想空間のコース上に設置されたダッシュ板B上をプレイヤオブジェクトPOが通過するイベントがレースゲーム経過中において発生した場合、プレイヤオブジェクトPOを操作しているユーザは、当該通過に応じたポイントを獲得することができる。他の例として、プレイヤオブジェクトPOにおけるレース途中の順位や走行態様(例えば、飛行、ジャンプ、水中走行、ドリフト走行、走行経緯等)に応じて、プレイヤオブジェクトPOを操作しているユーザは、ポイントを獲得することができる。また、ゲーム経過や結果に応じて得るポイントおよび/または当該ポイントに応じて得られる各ツアーイベントのプレイ/実行を可能とする獲得ポイントが、ユーザに付与する報酬の一例に相当する。
【0056】
なお、第1モードでは、敵オブジェクトを含めたノンプレイヤオブジェクトNPOの移動等の動作が自動で制御される。そして、第1モードにおいて、ノンプレイヤオブジェクトNPOがアイテムIを使用したり、レースゲーム経過におけるノンプレイヤオブジェクトNPOの位置に基づくゲームイベント(例えば、ノンプレイヤオブジェクトNPOのダッシュ板B上の通過)が発生したりしても、ユーザは、上記ポイントを獲得することはできない。
【0057】
第1モードにおいて、上記ポイントをユーザが得られる他の例として、レースゲーム結果におけるプレイヤオブジェクトPOの位置に基づくゲームイベントがある。例えば、
図7に示すように、レースゲーム結果となるプレイヤオブジェクトPOのゴール順位に基づいて、プレイヤオブジェクトPOを操作しているユーザは、上記ポイントを獲得することができる。一例として、上記レースゲームでは、第1モードにおいてサブイベントのコースを所定回数(例えば、2周)周回して走行することによってゴールとなり、当該ゴールしたプレイヤオブジェクトPOの順位が上位であるほど、高いポイントを獲得することができる。また、第1モードにおいては、プレイヤオブジェクトPOがゴールした場合、当該ゴールした順位に関わらず当該ゴールしたコースが設定されているサブイベントがユーザによってクリアされたとみなされる。
【0058】
次に、
図8~
図10を参照して、第2モードによる動作制御例を用いて、ゲーム処理例の概要を説明する。
【0059】
図8において、プレイヤオブジェクトPOが第2モードで動作制御されてレースゲームを行う一場面が表示されている。上述したように、第2モードにおいて、プレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOは、仮想空間内に設けられたコース上を、所定の隊列を組んで自動制御されて移動する。一例として、第2モードでも第1モードと同様にサブイベントのコースを所定回数(例えば、2周)周回して走行することによってレースゲームにおけるゴールとなる。例えば、
図8の例では、プレイヤオブジェクトPOを先頭とする逆V字型の隊列を保ちながら、1台のプレイヤオブジェクトPOと4台のノンプレイヤオブジェクトNPOとがコースに沿って自動制御されて走行している。第2モードにおいてゲーム画像を生成するための仮想カメラは、隊列の先頭に配置されているオブジェクト(
図8の例では、プレイヤオブジェクトPO)を注視点として、当該オブジェクトの前方にコースに沿って配置される。なお、上記仮想カメラは、プレイヤオブジェクトPOがスピンしたりドリフトしたりするなど、コースの走行方向に対して異なる方向を向いた場合、当該プレイヤオブジェクトPOの前方からプレイヤオブジェクトPOを注視点とする位置に常時配置されてもよいし、コースに沿った走行方向の前方からプレイヤオブジェクトPOを注視点とする位置に配置されてもよい。
【0060】
プレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOが取り得る上記隊列は、複数用意されており、ユーザ操作によって選択して変更することが可能である。
図8に示すように、第2モードによるレースゲームが行われているゲーム画像において、表示部35には、上記隊列の変更を指示するための隊列変更ボタンCBが表示されている。ここで、隊列変更ボタンCBは、プレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOが走行する隊列を選択するためのタッチ領域を示す画像である。そして、隊列変更ボタンCBが示す円形領域内部でタッチオンする操作が行われた場合、次の選択対象に設定されている隊列に変更して、プレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOが走行を継続する。なお、上記複数用意されている隊列が、予め定められた複数種類のパターンの一例に相当する。
【0061】
図9に示すように、隊列変更ボタンCBへのタッチ操作によって選択して変更可能な隊列は、複数設定されている。
図9は、1台のプレイヤオブジェクトPO(
図9においてPOで示す)と7台のノンプレイヤオブジェクトNPO(
図9において1~7で示す)との8台のオブジェクトによって形成される場合の隊列を例示しており、図面上方向が各隊列を組んで走行する方向となる。
【0062】
例えば、隊列Aは、プレイヤオブジェクトPOを先頭とするピラミッド型隊列であり、第2モードによるゲーム処理が開始された場合にデフォルトで設定される隊列である。隊列Bは、プレイヤオブジェクトPOを先頭とする縦列型隊列であり、隊列Aで走行している状態において、隊列変更ボタンCBが1回タッチ操作された場合に選択される隊列である。隊列Cは、プレイヤオブジェクトPOを中央先頭とするV字型隊列であり、隊列Bで走行している状態において、隊列変更ボタンCBが1回タッチ操作された場合に選択される隊列である。隊列Dは、プレイヤオブジェクトPOを中央とする横列型隊列であり、隊列Cで走行している状態において、隊列変更ボタンCBが1回タッチ操作された場合に選択される隊列である。隊列Eは、プレイヤオブジェクトPOを先頭とする円形型隊列であり、隊列Dで走行している状態において、隊列変更ボタンCBが1回タッチ操作された場合に選択される隊列である。隊列Fは、プレイヤオブジェクトPOを先頭とする逆V字型隊列であり、隊列Eで走行している状態において、隊列変更ボタンCBが1回タッチ操作された場合に選択される隊列である。そして、隊列Fで走行している状態において、隊列変更ボタンCBが1回タッチ操作された場合、隊列Aに戻って選択される。
【0063】
隊列が変更されて、当該隊列を組む各オブジェクトの相対的な位置関係を変更する場合、当該位置関係を瞬時に変更してもよいし、変更前の隊列から変更後の隊列が組まれるまで所定の時間をかけて段階的に(徐々に)位置関係を変更してもよい。後者の場合、レース走行しながら隊列を変更する動作をリアルに表現することができるため、レースゲームならではの面白さを表現することができる。
【0064】
なお、上述した隊列は、一例であって、他の形状の隊列が設定されていてもよいし、他の順番で選択されもよい。また、隊列を構成するオブジェクト数は、9台以上でもよいし、7台以下でもよい。また、選択可能な走行態様の中に、少なくとも1台のオブジェクトが隊列を組まずに自由に走行する自由走行が含まれていてもよい。また、上述では、プレイヤオブジェクトPOが隊列の先頭となる例を用いたが、他のノンプレイヤオブジェクトNPOが先頭となる隊列であってもよいし、ユーザ操作によって隊列内における各オブジェクトの位置が変更可能であってもよいし、ユーザ操作(例えば、後述する仮想カメラの姿勢/位置を変更する操作や他のユーザ操作)によって隊列の先頭となるオブジェクトが変更可能であってもよい。また、ユーザ操作による隊列の変更は、第2モード中であればいつでも可能にしてもよいし、第2モードに移行する直前であっても可能にしてもよい。
【0065】
また、選択可能な走行態様の中に、少なくとも1台のオブジェクトが隊列を組まずに自由に走行する自由走行が含まれる場合であっても、当該プレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOが相対的な位置関係や距離を維持しながら当該自由走行が行われてもよい。例えば、先頭または後尾のオブジェクトが他のオブジェクトに対して所定距離以上離れて自由走行している場合、当該所定距離以上離れて先頭を走行しているオブジェクトを減速、または当該所定距離以上離れて後尾を走行しているオブジェクトを加速させて、他のオブジェクトとの距離を縮めるように自由走行させてもよい。これによって、仮想カメラの視野外で走行するオブジェクトを少なくすることができ、相対的に多数のオブジェクトが表示された状態で自由走行するゲーム画像を生成することができる。
【0066】
第2モードでは、表示部35の画面上に設けられたタッチパネル(入力部34)をタッチ操作することによって、仮想カメラの姿勢および/または位置を制御することができる。一例として、表示部35のタッチパネルを上下左右にスワイプするタッチ操作に応じて、仮想カメラの注視点が当該スワイプ方向に変化するように仮想カメラの姿勢および/または位置を変化させることができる。具体的には、表示部35のタッチパネルにタッチオンしたタッチ位置を基準として、右方向にスワイプするタッチ操作が行われた場合、仮想カメラの注視点が右に移動するように仮想カメラの姿勢および/または位置を変化させる。また、表示部35のタッチパネルにタッチオンしたタッチ位置を基準として、左方向にスワイプするタッチ操作が行われた場合、仮想カメラの注視点が左に移動するように仮想カメラの姿勢および/または位置を変化させる。また、表示部35のタッチパネルにタッチオンしたタッチ位置を基準として、上方向にスワイプするタッチ操作が行われた場合、仮想カメラの注視点が上に移動するように仮想カメラの姿勢および/または位置を変化させる。さらに、表示部35のタッチパネルにタッチオンしたタッチ位置を基準として、下方向にスワイプするタッチ操作が行われた場合、仮想カメラの注視点が下に移動するように仮想カメラの姿勢および/または位置を変化させる。
【0067】
仮想カメラの注視点は、隊列の先頭に配置されているオブジェクト(
図8の例では、プレイヤオブジェクトPO)上に設定されてもよい。この場合、上述した隊列変更が行われることによって、仮想カメラの注視点は、変更前の隊列の先頭に配置されているオブジェクト上から、変更後の隊列の先頭に配置されているオブジェクト上に移動することになる。また、上述した仮想カメラの姿勢および/または位置を変化させるユーザ操作が行われて、当該仮想カメラの注視点が異なるオブジェクト上またはその近傍に移動した場合、当該オブジェクトが先頭となるように隊列内における相対的なオブジェクトの位置関係が変化する。つまり、仮想カメラの姿勢および/または位置を変化させるユーザ操作によって、隊列内におけるオブジェクトの位置を変化させることができるとともに、当該隊列内で先頭を走行させるオブジェクトを設定することができる。
【0068】
なお、上述した仮想カメラの姿勢および/または位置を変化させるユーザ操作が行われて、当該仮想カメラの注視点が異なるオブジェクト上に移動した場合、当該オブジェクトが隊列内における他の位置に移動するように隊列内における相対的なオブジェクトの位置関係が変化してもよい。例えば、上記オブジェクトは、隊列内における後尾に移動してもよいし、隊列内における中心位置(例えば、隊列の重心位置に最も近い位置)に移動してもよいし、隊列毎に設定されている基準位置に移動してもよい。
【0069】
第2モードにおいても、ユーザは、レースゲーム経過や結果に応じて得るポイントおよび当該ポイントに応じて得られる各ツアーイベントのプレイ/実行を可能とする獲得ポイントを獲得することができる。第2モードにおいて、これらのポイントをユーザが得られる一例として、レースゲーム経過におけるプレイヤオブジェクトPOの位置に基づくゲームイベントがある。一例として、隊列を組んで自動走行するプレイヤオブジェクトPOが仮想空間のコース上に設置されたダッシュ板B上を通過するイベントが、第2モードにおけるレースゲーム経過中において発生した場合、ユーザは、当該通過に応じたポイントを獲得することができる。他の例として、隊列を組んで自動走行するプレイヤオブジェクトPOにおけるレース途中の順位や走行態様(例えば、飛行、ジャンプ、水中走行、ドリフト走行、走行経緯等)に応じて、ユーザは、上記ポイントを獲得することができる。
【0070】
なお、第2モードでも、敵オブジェクトを含めたノンプレイヤオブジェクトNPOの移動等の動作が自動で制御される。そして、第2モードにおいて、レースゲーム経過におけるノンプレイヤオブジェクトNPOの位置に基づくゲームイベント(例えば、ノンプレイヤオブジェクトNPOのダッシュ板B上の通過)が発生しても、ユーザは、上記ポイントを獲得することはできない。
【0071】
第2モードにおいて、上記ポイントをユーザが得られる他の例として、レースゲーム結果におけるプレイヤオブジェクトPOの位置に基づくゲームイベントがある。例えば、
図10に示すように、第2モードにおいてプレイヤオブジェクトPOがゴールした場合、当該ゴールしたことに基づいて、ユーザが上記ポイントを獲得することができる。ここで、第2モードにおいてプレイヤオブジェクトPOがゴールしたことによって得られるポイントは、ゴール順位に関わらず決定される。つまり、第2モードでは、プレイヤオブジェクトPOがどのような順位でゴールしたとしても、同じポイント(例えば、ゴール順位が4位相当のポイント)が得られるように設定されている。そして、第2モードによるレースゲームが実行される場合であっても、プレイヤオブジェクトPOがゴールすることに応じて、当該ゴールした順位に関わらず当該ゴールしたコースが設定されているサブイベントがユーザによってクリアされたとみなされる。この場合、第1モードによるプレイと第2モードによるプレイとの違いによるポイント(報酬)の不釣り合いを低減することができる。なお、第1モードと同様に、第2モードにおいてもゴールしたプレイヤオブジェクトPOの順位が上位であるほど、高いポイントが獲得可能に設定してもよい。この場合、第1モードおよび第2モードの何れのモードを選択した場合であっても、同じ評価基準によるポイント(報酬)を得ることができる。このように、本実施例では、何れの場合であっても、第2モードにおけるレースゲームでゴールしたとしても、第1モードと同様のポイントを獲得することが可能であり、他のサブイベントやツアーイベントのプレイ/実行を可能とすることができるため、第2モードによるプレイがユーザによって選択されやすくなる。
【0072】
なお、第2モードにおいて用いられる隊列は、レースゲーム途中において一時的に崩れることがあってもよい。第1の例として、隊列に含まれる少なくとも1つのオブジェクトが、走行中に他のオブジェクトと衝突したりコースアウトしたりすることによって、走行困難状態となって当該隊列から一時的に離脱してもよい。この場合、上記走行困難状態が解消した後に、離脱したオブジェクトを元の隊列内の位置に復帰させる回復走行を自動的に行わせることによって、離脱したオブジェクトが最終的に離脱前の隊列状態に戻るように動作させてもよい。第2の例として、レースゲームに用いられているコースに分岐ルートがある場合、隊列に含まれる少なくとも1つのオブジェクトが、当該隊列に含まれる他のオブジェクトが走行する本線ルートと異なる分岐ルートを走行してもよい。この場合、隊列から離れて異なる分岐ルートを走行するオブジェクトは、当該分岐ルートが本線ルートと合流することに伴って、一時的に分岐ルートを走行した後に本線ルートを走行する隊列における元の位置に復帰する回復走行を自動的に行うことによって、最終的に離脱前の隊列状態に戻って走行するように動作してもよい。
【0073】
また、上述した実施例では、スワイプするタッチ操作に応じて、第1モードにおいてプレイヤオブジェクトPOの移動方向が制御され、第2モードにおいて仮想カメラの姿勢および/または位置が制御される例を用いたが、他の操作によってこれらの制御が行われてもよい。一例として、情報処理装置3(表示部35)全体の姿勢を変化させる操作に応じて、第1モードにおいてプレイヤオブジェクトPOの移動方向が制御され、第2モードにおいて仮想カメラの姿勢および/または位置が制御されてもよい。このような情報処理装置3(表示部35)全体の姿勢を変化させる操作は、慣性センサ37からの出力を用いて情報処理装置3(表示部35)全体の姿勢を算出することによって検出可能である。他の例として、情報処理装置3に設けられた他の方向入力手段(例えば、十字キー、テンキー、マウス、トラックボール、ジョイスティック等)を用いた操作に応じて、第1モードにおいてプレイヤオブジェクトPOの移動方向が制御され、第2モードにおいて仮想カメラの姿勢および/または位置が制御されてもよい。
【0074】
また、隊列内におけるオブジェクトの位置を変化させる操作は、仮想カメラの姿勢および/または位置を変化させる操作でなくてもよい。一例として、スワイプ操作に応じて選択標識が移動して当該選択標識で指定されるオブジェクトが隊列内で先頭を走行するオブジェクトとして選択されてもよいし、タッチオンされた位置に表示されているオブジェクトが隊列内で先頭を走行するオブジェクトとして選択されてもよいし、ユーザ入力が行われる毎(例えば、ボタン操作が行われる毎やタッチオン/オフが繰り返される毎)に、順次隊列内で対象となるオブジェクトが切り替わって当該隊列内で先頭を走行させるオブジェクトとして選択されてもよい。
【0075】
また、第2モードにおいて、隊列を変更する操作および隊列内のオブジェクト配置位置を変更する操作以外の操作が可能であってもよい。一例として、所定のユーザ操作に応じて、隊列内の少なくとも1つのオブジェクトが所定のアクションを行ってもよい。他の例として、所定のユーザ操作に応じて、表示されている第2モードのゲーム画像が静止画像として撮像される処理が行われてもよい。この場合、表示部35に表示画像は、一時的にレースゲームの進行を止めて上記静止画像が表示されてもよいし、上記静止画像が記憶部32に格納されてもよい。なお、上記アクションや撮影は、上記ポイントの獲得対象としなくてもよい。
【0076】
次に、情報処理装置3において行われる処理の詳細を説明する。まず、
図11を参照して、情報処理装置3において行われる処理において用いられる主なデータについて説明する。なお、
図11は、情報処理装置3の記憶部32に記憶される主なデータおよびプログラムの一例を示す図である。
【0077】
図11に示すように、記憶部32のデータ記憶領域には、操作データDa、モードデータDb、隊列データDc、プレイヤオブジェクト動作データDd、ノンプレイヤオブジェクト動作データDe、アイテム位置データDf、仮想カメラ設定データDg、ポイントデータDh、および画像データDi等が記憶される。なお、記憶部32には、
図11に示すデータの他、実行するアプリケーションで用いるデータ等、処理に必要なデータが記憶される。また、記憶部32のプログラム記憶領域には、情報処理プログラム(ゲームプログラム)等を構成する各種プログラム群Paが記憶される。
【0078】
操作データDaは、ユーザが情報処理装置3を操作した操作情報を示すデータである。例えば、タッチパネルを含む入力部34を操作したことを示す操作データは、情報処理装置3が処理する時間単位(例えば、1/60秒)毎に取得され、当該取得に応じて操作データDaに格納されて更新される。また、情報処理装置3(表示部35)を動かす操作によって慣性センサ37が検出した操作データも、情報処理装置3が処理する時間単位毎に取得され、当該取得に応じて操作データDaに格納されて更新される。なお、操作データDaは、入力部34を用いて操作した最新のユーザ入力を示すデータの他に、所定時間前までのユーザ入力の履歴(例えば、タッチパネルがタッチ操作されたタッチ位置の履歴)を少なくとも含んでいる。
【0079】
モードデータDbは、オブジェクトの動作制御態様を示すデータであり、具体的には現時点の動作制御態様が第1モードおよび第2モードの何れであるのかを示すデータである。
【0080】
隊列データDcは、第2モードにおいて設定されるプレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOが走行する隊列および当該隊列中において先頭および他の位置のオブジェクトの配置位置を示すデータである。
【0081】
プレイヤオブジェクト動作データDdは、プレイヤオブジェクトPOの動作を示すデータであり、レース中のプレイヤオブジェクトPOの位置、速度、姿勢、周回回数、順位等を示すデータも含んでいる。ノンプレイヤオブジェクト動作データDeは、ノンプレイヤオブジェクトNPOそれぞれの動作を示すデータであり、レース中のノンプレイヤオブジェクトNPOそれぞれの位置、速度、姿勢、周回回数、順位等を示すデータも含んでいる。アイテム位置データDfは、使用準備位置や発射されたアイコンIの種別および位置を示すデータである。
【0082】
仮想カメラ設定データDgは、仮想カメラの位置、姿勢、および画角等を示すデータである。
【0083】
ポイントデータDhは、レースゲームにおいてユーザが獲得したポイント値を示すデータである。
【0084】
画像データDiは、ゲームの際に情報処理装置3の表示部35にゲーム画像(例えば、プレイヤオブジェクトPOの画像、ノンプレイヤオブジェクトNPOの画像、アイテムIの画像、他の仮想オブジェクトの画像、コース等のフィールド画像、背景画像等)を表示するためのデータである。
【0085】
次に、
図12~
図14を参照して、情報処理装置3において行われる処理の詳細を説明する。なお、
図12は、情報処理装置3において実行される処理の一例を示すフローチャートである。
図13は、
図12のステップS104における第1モード処理の詳細な一例を示すサブルーチンである。
図14は、
図12のステップS105における第2モード処理の詳細な一例を示すサブルーチンである。ここで、
図12~
図14に示すフローチャートにおいては、情報処理システム1における処理のうち、一例としてプレイヤオブジェクトPOに対する制御に関連するゲーム処理について主に説明し、これらの処理と直接関連しない他の処理については詳細な説明を省略する。また、
図12~
図14では、制御部31が実行する各ステップを「S」と略称する。
【0086】
本実施例においては、
図12~
図14に示す一連の処理は、制御部31(CPU)が、プログラム記憶部33に記憶されるゲームプログラム等を実行することによって行われる。なお、
図12~
図14に示す処理が開始されるタイミングは任意である。このとき、ゲームプログラムは、適宜のタイミングでその一部または全部が記憶部32に読み出され、制御部31によって実行される。これによって、
図12~
図14に示す一連の処理が開始される。なお、ゲームプログラムは、プログラム記憶部33に予め記憶されているものとする。ただし、他の実施例においては、情報処理装置3に着脱可能な記憶媒体から取得されて記憶部32に記憶されてもよいし、インターネット等のネットワークを介して他の装置から取得されて記憶部32に記憶されてもよい。
【0087】
また、
図12~
図14に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えておよび/または代えて別の処理が実行されてもよい。また、本実施例では、上記フローチャートの各ステップの処理を制御部31が実行するものとして説明するが、上記フローチャートにおける一部または全部のステップの処理を、上記制御部31のCPU以外のプロセッサや専用回路が実行するようにしてもよい。
【0088】
図12において、制御部31は、初期設定を行い(ステップS101)、次のステップに処理を進める。例えば、制御部31は、以降の処理に用いる各パラメータを初期化する。例えば、第2モードにおいてプレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOが走行する隊列および各オブジェクトの配置位置をデフォルトの隊列(例えば、隊列A)および配置位置(例えば、プレイヤオブジェクトPOが先頭の位置)に初期設定して、隊列データDcを更新する。また、制御部31は、オブジェクトの動作制御態様(第1モードまたは第2モード)を初期設定してモードデータDbを更新する。一例として、ユーザ操作に応じてオブジェクトの動作制御態様を初期設定する場合、制御部31は、入力部34から取得される操作データが示すモードに基づいて第1モードまたは第2モードを初期設定し、モードデータDbを更新する。このモード設定は、レースゲームの初期設定を行う期間中に限って可能であってもよいし、レースゲーム開始後において変更可能であってもよい。なお、モード決定手段は、仮想ゲームステージでのレースゲームを第1モードで実行するか第2モードで実行するかをユーザの選択操作に基づいて決定する処理を行うものであり、一例として上記ステップS101における処理を行う制御部31に相当する。
【0089】
次に、制御部31は、入力部34および慣性センサ37から操作データを取得して操作データDaの最新データを更新するとともに操作データの履歴を更新し(ステップS102)、次のステップに処理を進める。
【0090】
次に、制御部31は、モードデータDbを参照して、レースゲームの動作制御が第1モードであるか否かを判定する(ステップS103)。そして、制御部31は、動作制御が第1モードである場合、ステップS104に処理を進める。一方、制御部31は、動作制御が第2モードである場合、ステップS105に処理を進める。
【0091】
ステップS104において、制御部31は、第1モード処理を行い、ステップS106に処理を進める。以下、
図13を参照して、上記ステップS104において行われる第1モード処理について説明する。なお、第1制御手段は、第1モードにおいて、仮想ゲームステージにおけるプレイヤオブジェクトの移動をユーザの移動操作に基づいて制御し、当該仮想ゲームステージにおけるノンプレイヤオブジェクトの移動を自動で制御する処理を行うものであり、一例として上記ステップS104における処理を行う制御部31に相当する。
【0092】
図13において、制御部31は、プレイヤオブジェクトPOの動作を設定する処理を行い(ステップS121)、次のステップに処理を進める。例えば、制御部31は、算出されたハンドル角度や他のノンプレイヤオブジェクトNPOからの影響等を考慮して、プレイヤオブジェクトPOの位置および姿勢を設定するとともに、プレイヤオブジェクト動作データDdに設定されているプレイヤオブジェクトPOの状態を考慮してプレイヤオブジェクトPOの動作、位置、姿勢等を決定して、プレイヤオブジェクト動作データDdを更新する。一例として、プレイヤオブジェクトPOがコース上を通常走行している場合、ハンドル角度が示すコース上の方向に移動速度に応じた距離だけ進んだ位置がプレイヤオブジェクトPOの位置として算出される。例えば、ハンドル角度は、操作データDaが示すタッチパネルに対するタッチ入力位置の履歴に基づいて算出され、タッチパネルに対するスワイプ入力の左右方向成分が右方向へのスワイプ入力を示している場合、当該左右方向成分の絶対値に応じて右方向のハンドル角度が算出され、左右方向成分が左方向へのスワイプ入力を示している場合、当該左右方向成分の絶対値に応じて左方向のハンドル角度が算出される。そして、操作データDaがタッチパネルからタッチオフされていることを示す場合、ハンドル角度は、所定の速度で中立位置に戻るように変化させて算出される。なお、プレイヤオブジェクトPOの移動速度は、ユーザ操作やゲーム状況(プレイヤオブジェクトPOの挙動、路面状況、他のノンプレイヤオブジェクトNPOからの影響等)に応じて変化してもよいし、ハンドル角度も当該ゲーム状況に応じて変化が加えられてもかまわない。
【0093】
次に、制御部31は、ノンプレイヤオブジェクトNPOの動作を設定する処理を行い(ステップS122)、次のステップに処理を進める。一例として、制御部31は、プレイヤオブジェクトPOからの影響等を考慮しながら、所定のアルゴリズムに基づいてノンプレイヤオブジェクトNPOそれぞれを動作させ、当該動作に基づいてノンプレイヤオブジェクト動作データDeを更新する。
【0094】
次に、制御部31は、アイテムIの動作を設定する処理を行い(ステップS123)、次のステップに処理を進める。例えば、制御部31は、プレイヤオブジェクトPOから発射されたアイテムIを、算出された発射方向に基づいて移動速度に基づいた距離だけ移動させる処理を行って、当該移動後の位置や姿勢に基づいてアイテム位置データDfを更新する。例えば、発射方向は、操作データDaが示すタッチパネルに対するタッチ入力位置の履歴(例えば、タッチパネルに対するスワイプ入力の上下方向成分)に基づいて算出される。具体的には、現タッチ位置に向かう入力ベクトルの長さが所定の長さ以上、かつ、当該入力ベクトルが示す方向が上方向を中心とする所定範囲内に設定されている前方判定領域内である場合、プレイヤオブジェクトPOの真正面方向が発射方向として設定される。また、現タッチ位置に向かう入力ベクトルの長さが所定の長さ以上、かつ、当該入力ベクトルが示す方向が下方向を中心とする所定範囲内に設定されている後方判定領域内である場合、プレイヤオブジェクトPOの真後ろ方向が発射方向として設定される。なお、上記入力ベクトルが所定の長さ以上でない場合や上記入力ベクトルの方向が前方判定領域内にも後方判定領域内にもない場合、アイテムIがプレイヤオブジェクトPOの使用準備位置に配置された状態とされる。
【0095】
次に、制御部31は、仮想カメラを設定する処理を行い(ステップS124)、次のステップに処理を進める。例えば、制御部31は、表示画像を生成するための仮想カメラの位置をプレイヤオブジェクトPOの位置に基づいて移動させ、当該移動後の仮想カメラの位置および姿勢に基づいて、仮想カメラ設定データDgを更新する。例えば、制御部31は、プレイヤオブジェクトPOが含まれる表示画像が生成されるようにプレイヤオブジェクトPOの後方にコースに沿って仮想カメラを設定して、仮想カメラ設定データDgを更新する。なお、仮想カメラは、プレイヤオブジェクトPOがスピンしたりドリフトしたりするなど、コースの走行方向に対して異なる方向を向いた場合、コースとは無関係に当該プレイヤオブジェクトPOの後方からプレイヤオブジェクトPOを見る位置に常時配置されてもよいし、コースに沿った走行方向の後方からプレイヤオブジェクトPOを見る位置に配置されてもよい。
【0096】
次に、制御部31は、ポイントを算出する処理を行い(ステップS125)、当該サブルーチンによる処理を終了する。例えば、制御部31は、プレイヤオブジェクトPOがポイント加算対象の動作を行った場合、当該動作に応じて設定されているポイントを加算してポイントデータDhが示すポイント値を更新する。例えば、制御部31は、プレイヤオブジェクトPOがアイテムIを使用した動作態様、効果、および回数等に応じて、ポイントを加算する。また、制御部31は、仮想空間のコース上に設置されたダッシュ板B上をプレイヤオブジェクトPOが通過したことに応じて、ポイントを加算する。また、制御部31は、プレイヤオブジェクトPOの現時点の順位や走行態様(例えば、飛行、ジャンプ、水中走行、ドリフト走行、走行経緯等)に応じて、ポイントを加算する。
【0097】
一方、ステップS105において、制御部31は、第2モード処理を行い、ステップS106に処理を進める。以下、
図14を参照して、上記ステップS105において行われる第2モード処理について説明する。なお、第2制御手段は、第2モードにおいて、所定の位置関係を保ちながら仮想ゲームステージにおけるプレイヤオブジェクトおよびノンプレイヤオブジェクトの移動を自動で制御する処理を行うものであり、一例として上記ステップS105における処理を行う制御部31に相当する。
【0098】
制御部31は、操作データDaを参照して、隊列を変更する操作が行われたか否かを判定する(ステップS131)。例えば、制御部31は、隊列変更ボタンCB(
図8参照)上でタッチオンするユーザ操作が行われたことを操作データDaが示す場合、上記ステップS131において肯定判定する。そして、制御部31は、隊列を変更する操作が行われた場合、ステップS132に処理を進める。一方、制御部31は、隊列を変更する操作が行われていない場合、ステップS133に処理を進める。
【0099】
ステップS132において、制御部31は、隊列を変更する処理を行い、ステップS133に処理を進める。例えば、制御部31は、隊列データDcが示す隊列を、次の選択肢として設定されている隊列(
図9参照)に変更して、隊列データDcを更新する。なお、新たに設定された隊列中において先頭および他の位置に配置されるオブジェクトの配置位置については、当該隊列においてデフォルト設定されているオブジェクト配置位置(例えば、プレイヤオブジェクトPOが先頭の配置位置)に設定してもよいし、変更前の隊列において設定されているオブジェクト配置位置を継続して設定してもよい。なお、位置変更手段は、第2モードにおいて用いる、仮想ゲームステージにおけるプレイヤオブジェクトおよびノンプレイヤオブジェクトの相対的な位置関係が所定の位置関係となるように、当該仮想ゲームステージにおける当該プレイヤオブジェクトおよび当該ノンプレイヤオブジェクトの位置をユーザの位置変更操作に基づいて変更する処理を行うものであり、一例として上記ステップS132における処理を行う制御部31に相当する。
【0100】
ステップS133において、制御部31は、仮想カメラの位置および/または姿勢を変化させる操作が行われたか否かを判定する。例えば、制御部31は、タッチパネルに対してスワイプする操作が行われていることを操作データDaが示す場合、上記ステップS133において肯定判定する。そして、制御部31は、仮想カメラの位置および/または姿勢を変化させる操作が行われた場合、ステップS134に処理を進める。一方、制御部31は、仮想カメラの位置および/または姿勢を変化させる操作が行われていない場合、ステップS136に処理を進める。
【0101】
ステップS134において、制御部31は、仮想カメラの設定を変更する処理を行い、次のステップに処理を進める。例えば、制御部31は、仮想カメラの位置および/または姿勢を変化させるスワイプ操作に応じて、当該スワイプ方向に仮想カメラの注視点を移動させ、当該移動後の仮想カメラの注視点、位置、および姿勢を用いて仮想カメラ設定データDgを更新する。
【0102】
次に、制御部31は、オブジェクト配置位置を変更する処理を行い(ステップS135)、ステップS136に処理を進める。例えば、制御部31は、上記ステップS134における仮想カメラの設定変更によって、当該仮想カメラの注視点が隊列内における異なるオブジェクト上に移動した場合、当該隊列内において当該注視点上のオブジェクトを先頭とするオブジェクト配置位置に変更して、隊列データDcを更新する。
【0103】
ステップS136において、制御部31は、プレイヤオブジェクトPOの動作を設定する処理を行い、次のステップに処理を進める。第1の例として、制御部31は、隊列データDcが示す隊列全体を所定のアルゴリズムに基づいてコース上を移動させるとともに、当該隊列におけるオブジェクト配置位置を目標にプレイヤオブジェクトPOが移動するようにプレイヤオブジェクトPOの動作、位置、姿勢等を決定して、プレイヤオブジェクト動作データDdを更新する。第2の例として、制御部31は、上記ステップS132における隊列変更処理によって、新たな隊列に変更中である場合、変更前の隊列におけるプレイヤオブジェクトPOの配置位置から、変更後の隊列におけるプレイヤオブジェクトPOの配置位置まで所定の時間をかけて段階的にプレイヤオブジェクトPOが移動するようにプレイヤオブジェクトPOの動作、位置、姿勢等を決定して、プレイヤオブジェクト動作データDdを更新する。第3の例として、制御部31は、上記ステップS135におけるオブジェクト配置位置変更処理によって、新たな配置位置へプレイヤオブジェクトPOが移動中である場合、配置位置変更前におけるプレイヤオブジェクトPOの配置位置から、配置位置変更後におけるプレイヤオブジェクトPOの配置位置まで所定の時間をかけて段階的にプレイヤオブジェクトPOが移動するようにプレイヤオブジェクトPOの動作、位置、姿勢等を決定して、プレイヤオブジェクト動作データDdを更新する。なお、上記第1~第3の例におけるプレイヤオブジェクトPOの移動速度や移動方向は、ゲーム状況(プレイヤオブジェクトPOの挙動、路面状況、他のノンプレイヤオブジェクトNPOからの影響等)に応じて変化してもよい。
【0104】
次に、制御部31は、ノンプレイヤオブジェクトNPOの動作を設定する処理を行い(ステップS137)、次のステップに処理を進める。第1の例として、制御部31は、隊列データDcが示す隊列全体を所定のアルゴリズムに基づいてコース上を移動させるとともに、当該隊列におけるオブジェクト配置位置を目標にノンプレイヤオブジェクトNPOがそれぞれ移動するようにノンプレイヤオブジェクトNPOの動作、位置、姿勢等をそれぞれ決定して、ノンプレイヤオブジェクト動作データDeを更新する。第2の例として、制御部31は、上記ステップS132における隊列変更処理によって、新たな隊列に変更中である場合、変更前の隊列におけるノンプレイヤオブジェクトNPOそれぞれの配置位置から、変更後の隊列におけるノンプレイヤオブジェクトNPOそれぞれの配置位置まで所定の時間をかけて段階的にノンプレイヤオブジェクトNPOがそれぞれ移動するようにノンプレイヤオブジェクトNPOの動作、位置、姿勢等をそれぞれ決定して、ノンプレイヤオブジェクト動作データDeを更新する。第3の例として、制御部31は、上記ステップS135におけるオブジェクト配置位置変更処理によって、新たな配置位置へノンプレイヤオブジェクトNPOが移動中である場合、配置位置変更前におけるノンプレイヤオブジェクトNPOの配置位置から、配置位置変更後におけるノンプレイヤオブジェクトNPOの配置位置まで所定の時間をかけて段階的にノンプレイヤオブジェクトNPOが移動するようにノンプレイヤオブジェクトNPOの動作、位置、姿勢等を決定して、ノンプレイヤオブジェクト動作データDeを更新する。なお、上記第1~第3の例におけるノンプレイヤオブジェクトNPOそれぞれの移動速度や移動方向は、ゲーム状況(ノンプレイヤオブジェクトNPOの挙動、路面状況、プレイヤオブジェクトPOおよび他のノンプレイヤオブジェクトNPOからの影響等)に応じて変化してもよい。
【0105】
次に、制御部31は、仮想カメラを設定する処理を行い(ステップS138)、次のステップに処理を進める。例えば、制御部31は、表示画像を生成するための仮想カメラの位置をプレイヤオブジェクトPOやノンプレイヤオブジェクトNPO等の位置に基づいて移動させ、当該移動後の仮想カメラの位置および姿勢に基づいて、仮想カメラ設定データDgを更新する。例えば、制御部31は、隊列を組んでプレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOが走行している場合、当該隊列の先頭に配置されているオブジェクト上を注視点として当該オブジェクトを前方から見た画像が生成されるように、当該オブジェクトの走行方向のコースに沿った前方に仮想カメラを移動して、当該移動後の仮想カメラの位置および姿勢に基づいて、仮想カメラ設定データDgを更新する。また、制御部31は、上記ステップS134における仮想カメラ設定変更処理中である場合、当該処理に基づいた仮想カメラの設定を維持する。また、制御部31は、上記ステップS132における隊列変更処理によって隊列が変更中である場合や、上記ステップS135におけるオブジェクト配置位置変更処理によって隊列内におけるオブジェクトの配置位置が変更中である場合、注視点に位置しているオブジェクトが当該変更中も常に注視点に配置されるように仮想カメラを移動させ、当該移動後の仮想カメラの位置および姿勢に基づいて、仮想カメラ設定データDgを更新する。
【0106】
次に、制御部31は、ポイントを算出する処理を行い(ステップS139)、当該サブルーチンによる処理を終了する。例えば、制御部31は、隊列を組んで移動するプレイヤオブジェクトPOがポイント加算対象の動作を行った場合、当該動作に応じて設定されているポイントを加算してポイントデータDhが示すポイント値を更新する。例えば、制御部31は、仮想空間のコース上に設置されたダッシュ板B上をプレイヤオブジェクトPOが通過したことに応じて、ポイントを加算する。また、制御部31は、プレイヤオブジェクトPOの走行態様(例えば、飛行、ジャンプ、水中走行、ドリフト走行、走行経緯等)に応じて、ポイントを加算する。
【0107】
図12に戻り、ステップS106において、制御部31は、プレイヤオブジェクトPOがゴールしたか否かを判定する。そして、制御部31は、プレイヤオブジェクトPOがゴールした場合、ステップS107に処理を進める。一方、制御部31は、プレイヤオブジェクトPOがまだゴールしていない場合、ステップS108に処理を進める。
【0108】
ステップS107において、制御部31は、ポイントを評価する処理を行い、ステップS108に処理を進める。例えば、制御部31は、プレイヤオブジェクトPOがゴールしたことにより獲得するポイントを算出して加算し、ポイントデータDhが示すポイント値を更新する。例えば、制御部31は、第1モードではプレイヤオブジェクトPOがゴールした順位が上位であるほど高いポイントを算出し、第2モードではプレイヤオブジェクトPOがゴールした順位に関わらず(例えば、第1モードにおけるゴール順位が4位相当のポイント)にポイントを算出する。また、制御部31は、第1モードおよび第2モードにおいて、レースゲームに用いられたプレイヤオブジェクトPOの車両(マシン)、装備、パーツ等の種類やレベルに基づいて、ゴール時のポイントを算出する。さらに、制御部31は、ゴールしたレースゲーム(サブイベント)の結果(順位、ポイント獲得数、完走成否等)に基づいて、サブイベントの状況(クリア、獲得ポイントの加算、コンプリート等)を設定する。また、制御部31は、ユーザが所有する獲得ポイント数や終了したサブイベントの状況変化に基づいて、プレイ/実行不可能なイベント(
図4参照)をプレイ/実行可能に変化させてもよい。なお、報酬付与手段は、第1モードおよび第2モードそれぞれにおいて、仮想ゲームステージでのレースゲーム経過および/または当該レースゲーム結果におけるプレイヤオブジェクトの位置に基づくゲームイベントに基づいて、ユーザに報酬を付与する処理を行うものであり、一例として上記ステップS107、S125、およびS139における処理を行う制御部31に相当する。また、クリア判定手段は、仮想ゲームステージをクリアしたか否かを判定する処理を行うものであり、一例として上記ステップS107における処理を行う制御部31に相当する。
【0109】
ステップS108において、制御部31は、表示画像を生成して表示部35に表示する表示制御処理を行い、次のステップに処理を進める。例えば、制御部31は、プレイヤオブジェクト動作データDd、ノンプレイヤオブジェクト動作データDe、およびアイテム位置データDj等に応じて、上述した各ステップにおける処理結果に応じた表示画像を生成して、当該表示画像を表示部35に表示する処理を行う。また、制御部31は、仮想カメラ設定データDgに応じて、表示画像を生成するための仮想カメラを設定する。なお、制御部31は、現時点がモード変更可能なゲーム状況である場合、モード変更操作を受け付ける画像(例えば、操作ボタン画像)を表示画像の少なくとも一部に表示してもよい。また、制御部31は、操作データDaが表示画像を撮影するユーザ操作を示す場合、当該表示画像を一時的に静止画像にして表示するとともに、当該静止画像を記憶部32に格納してもよい。また、制御部31は、レースゲームの結果を表示するゲーム状況である場合、レース順位を表示するとともに、上記ステップS107において算出された獲得ポイントやサブイベントの状況等を報知する表示画像を生成してもよい。
【0110】
次に、制御部31は、ゲーム処理を終了するか否かを判断する(ステップS109)。ゲーム処理を終了する条件としては、例えば、ゲーム処理を終了させる条件が満たされたことや、ユーザがゲーム処理を終了する操作を行ったこと等がある。制御部31は、ゲーム処理を継続する場合に上記ステップS102に戻って処理を繰り返し、ゲーム処理を終了する場合に当該フローチャートによる処理を終了する。
【0111】
このように、上記ゲーム処理を行う情報処理システム1によれば、1つのゲームステージを用いたレースゲームに対して、ユーザ操作に応じてプレイヤオブジェクトPOの動作が制御される第1モードと、プレイヤオブジェクトPOの動作が自動制御される第2モードとが用意されているため、1つのゲームステージについてより気軽にプレイすることができる。
【0112】
なお、上述した実施例では、タッチ操作を検出する入力部34の一例として、表示部35の表示画面を覆うタッチパネルを用いたが、タッチパッド等の他のデバイスであってもよい。一例として、据置型モニターに表示されたゲーム画像を見ながら別体のコントローラを用いて操作するゲームシステムを用いる場合、当該コントローラに備えられたタッチパッドを用いてタッチ操作される態様であってもよい。
【0113】
また、上述した実施例では、第2モードにおいてプレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOの相対的な位置関係を保つためのパターンとして、隊列を組んでプレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOが走行する例を用いたが、他の態様のパターンを用いて位置関係が設定されてもよい。例えば、隊形、陣形、フォーメーション、編隊等の配置パターンによって、プレイヤオブジェクトPOおよびノンプレイヤオブジェクトNPOの相対的な位置関係が管理されてもよい。
【0114】
また、上述した実施例では、ユーザに付与される報酬の一例として、各ツアーイベントのプレイ/実行を可能とするポイントを用いたが、他の報酬であってもよい。例えば、ユーザに付与される報酬は、ユーザやプレイヤオブジェクトPOの経験値、ユーザが上記レースゲームや他のゲームで使用可能となるゲームアイテム、ユーザが利用可能なゲームパラメータ等であってもよい。
【0115】
なお、上述した情報処理システム1は、情報処理装置3と通信可能なサーバ200が含まれているが、サーバ200と接続されることなく情報処理装置3単独でゲーム処理を行ってもかまわない。特に、ユーザがプレイヤオブジェクトPOを操作してレースゲームを行う処理では、サーバ200が介在することなく実行可能であるため、情報処理装置3の内部処理だけで実現することができる。また、複数の情報処理装置3が参加するレースゲームを行う場合であっても、サーバ200を介さずに情報処理装置3同士や他の装置と通信が行われて上記ゲーム処理が実現されてもよい。また、ユーザがプレイヤオブジェクトPOを操作してレースゲームを行う処理の一部をサーバ200が実行してもかまわない。これにより、複数の情報処理装置3における処理をサーバ200において集中して管理することができる。
【0116】
また、上述した説明では情報処理や通信処理を情報処理装置3で行う例を用いたが、上記処理における処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、情報処理装置3と通信可能なサーバ200や他の装置(例えば、別のサーバ、他のゲーム装置、他の携帯端末)が協働することによって、上記処理における処理ステップが実行されてもよい。このように、上記処理における処理ステップの少なくとも一部をサーバ200や他の装置で行うことによって、上述した処理と同様の処理が可能となる。また、上述した処理は、少なくとも1つの情報処理装置により構成される情報処理システムに含まれる1つのプロセッサまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施例においては、情報処理装置3の制御部31が所定のプログラムを実行することによって、上述したフローチャートによる処理が行われたが、情報処理装置3が備える専用回路によって上記処理の一部または全部が行われてもよい。
【0117】
ここで、上述した変形例によれば、いわゆるクラウドコンピューティングのシステム形態や分散型の広域ネットワークおよびローカルネットワークのシステム形態でも本発明を実現することが可能となる。例えば、分散型のローカルネットワークのシステム形態では、据置型の情報処理装置(据置型のゲーム装置)と携帯型の情報処理装置(携帯型のゲーム装置)との間で上記処理を協働により実行することも可能となる。なお、これらのシステム形態では、上述した処理の各ステップの処理をどの装置で行うかについては特に限定されず、どのような処理分担をしたとしても本発明を実現できることは言うまでもない。
【0118】
また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる条件等は、単なる一例に過ぎず他の順序、値、条件であっても、本実施例を実現できることは言うまでもない。
【0119】
また、上記各プログラムは、外部メモリ等の外部記憶媒体を通じて情報処理装置3に供給されるだけでなく、有線または無線の通信回線を通じて情報処理装置3に供給されてもよい。また、上記プログラムは、情報処理装置3内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、CD-ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、これらの記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
【0120】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。また、当業者は、本発明の具体的な実施例の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。
【産業上の利用可能性】
【0121】
以上のように、本発明は、ゲームステージについてより気軽にゲームプレイすることを可能とする等を目的として、例えば情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法等として有用である。
【符号の説明】
【0122】
1…情報処理システム
3…情報処理装置
31、202…制御部
32、203…記憶部
33…プログラム格納部
34…入力部
35…表示部
36、201…通信部
200…サーバ