IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

<>
  • -ゲームシステムおよびゲーム処理方法 図1
  • -ゲームシステムおよびゲーム処理方法 図2
  • -ゲームシステムおよびゲーム処理方法 図3
  • -ゲームシステムおよびゲーム処理方法 図4
  • -ゲームシステムおよびゲーム処理方法 図5
  • -ゲームシステムおよびゲーム処理方法 図6
  • -ゲームシステムおよびゲーム処理方法 図7
  • -ゲームシステムおよびゲーム処理方法 図8
  • -ゲームシステムおよびゲーム処理方法 図9
  • -ゲームシステムおよびゲーム処理方法 図10
  • -ゲームシステムおよびゲーム処理方法 図11
  • -ゲームシステムおよびゲーム処理方法 図12
  • -ゲームシステムおよびゲーム処理方法 図13
  • -ゲームシステムおよびゲーム処理方法 図14
  • -ゲームシステムおよびゲーム処理方法 図15
  • -ゲームシステムおよびゲーム処理方法 図16
  • -ゲームシステムおよびゲーム処理方法 図17
  • -ゲームシステムおよびゲーム処理方法 図18
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2025120899
(43)【公開日】2025-08-18
(54)【発明の名称】ゲームシステムおよびゲーム処理方法
(51)【国際特許分類】
   A63F 13/31 20140101AFI20250808BHJP
   A63F 13/25 20140101ALI20250808BHJP
   A63F 13/52 20140101ALI20250808BHJP
   A63F 13/95 20140101ALI20250808BHJP
【FI】
A63F13/31
A63F13/25
A63F13/52
A63F13/95 Z
【審査請求】未請求
【請求項の数】20
【出願形態】OL
【公開請求】
(21)【出願番号】P 2024061969
(22)【出願日】2024-04-08
(71)【出願人】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】100158780
【弁理士】
【氏名又は名称】寺本 亮
(74)【代理人】
【識別番号】100121359
【弁理士】
【氏名又は名称】小沢 昌弘
(74)【代理人】
【識別番号】100130269
【弁理士】
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】正岡 隆史
(57)【要約】
【課題】親機から子機に画像を配信する機能を有し、新規で多様な方法でゲームを行うことが可能なゲームシステムおよびゲーム処理方法を提供する。
【解決手段】親機は、少なくとも1つの子機と通信を行い、親機に備えられた、または接続された操作装置への入力に基づいた第1の操作データを取得し、少なくとも第1の操作データに基づいてゲーム処理を行い、ゲーム処理に基づいた第1の画像および少なくとも1つの第2の画像を生成し、第1の画像を、親機に備えられた、または接続された表示装置へ出力し、第2の画像をそれぞれ少なくとも1つの子機へ送信する。それぞれの子機は、親機と通信を行い、親機から受信された第2の画像を、当該子機に備えられた、または接続された表示装置へ出力する。
【選択図】図6
【特許請求の範囲】
【請求項1】
プロセッサを備える複数の情報処理装置と、
少なくとも1つの前記情報処理装置を所定の配置で固定するアタッチメントとを含み、
前記複数の情報処理装置のうち、少なくともいずれかの情報処理装置を親機、他の情報処理装置を子機とし、
前記親機のプロセッサは、
少なくとも1つの前記子機と通信を行い、
前記親機に備えられた、または接続された操作装置への入力に基づいた第1の操作データを取得し、
少なくとも前記第1の操作データに基づいてゲーム処理を行い、
前記ゲーム処理に基づいた第1の画像および少なくとも1つの第2の画像を生成し、
前記第1の画像を、前記親機に備えられた、または接続された表示装置へ出力し、
前記第2の画像をそれぞれ前記少なくとも1つの前記子機へ送信し、
それぞれの前記子機のプロセッサは、
前記親機と通信を行い、
前記親機から受信された前記第2の画像を、当該子機に備えられた、または接続された表示装置へ出力する、ゲームシステム。
【請求項2】
前記所定の配置は、複数の前記情報処理装置に備えられた表示装置が横方向に並ぶ配置であり、
前記アタッチメントは、前記横方向に隣接する前記情報処理装置同士を固定するアタッチメントである、請求項1記載のゲームシステム。
【請求項3】
前記情報処理装置は、前記操作装置を一体的に固定可能な溝部を備え、
前記アタッチメントは、前記隣接する前記情報処理装置においてそれぞれ前記操作装置が固定されていない両方の前記溝部に固定される、請求項2記載のゲームシステム。
【請求項4】
前記親機のプロセッサは、
仮想空間内において、複数の前記情報処理装置の配置に基づいた位置に配置される仮想カメラに基づいた画像を前記第1の画像およびそれぞれの前記第2の画像として生成し、
かつ前記仮想空間内の前記第2の画像に含まれる範囲について、前記第1の画像に含まれる範囲よりも所定時間分先となる前記ゲーム処理を行う、請求項1記載のゲームシステム。
【請求項5】
前記所定の配置は、複数の前記情報処理装置に備えられた表示装置が縦方向に並ぶ配置であり、
前記アタッチメントは、前記縦方向に隣接する前記情報処理装置同士を固定するアタッチメントである、請求項1記載のゲームシステム。
【請求項6】
前記所定の配置は、2つの前記情報処理装置に備えられた表示装置が縦方向に並ぶ配置であり、
前記アタッチメントは、
前記2つの前記情報処理装置をそれぞれ支える第1支持部材および第2支持部材と、
前記第1および第2支持部材を接続し、当該接続箇所を折り曲げ可能なヒンジ部とを備える、請求項5記載のゲームシステム。
【請求項7】
前記所定の配置は、前記親機に接続された表示装置に対して前記子機の表示装置が固定される配置であり、
前記アタッチメントは、前記親機に接続された表示装置に前記子機の表示装置を固定するアタッチメントである、請求項1記載のゲームシステム。
【請求項8】
前記第1の画像は、仮想空間内の第1の仮想カメラに基づいた画像であり、
前記第2の画像は、前記第1の仮想カメラの視野に含まれる所定の位置を拡大して撮影する第2の仮想カメラに基づいた画像である、請求項7記載のゲームシステム。
【請求項9】
前記第1の画像は、仮想空間内の第1の仮想カメラに基づいた画像であり、
前記第2の画像は、前記第1の仮想カメラと逆方向を向いた第2の仮想カメラに基づいた画像である、請求項7記載のゲームシステム。
【請求項10】
前記子機のプロセッサは、さらに、前記子機に備えられた、または接続された操作装置への入力に基づいた第2の操作データを前記親機へ送信し、
前記親機のプロセッサは、さらに、前記第2の操作データに基づいてゲーム処理を行う、請求項1から9のいずれか記載のゲームシステム。
【請求項11】
情報処理システムによって実行されるゲーム処理方法であって、
前記情報処理システムは、
複数の情報処理装置と、
少なくとも1つの前記情報処理装置を所定の配置で固定するアタッチメントとを含み、
前記複数の情報処理装置のうち、少なくともいずれかの情報処理装置を親機、他の情報処理装置を子機とし、
前記親機は、
少なくとも1つの前記子機と通信を行い、
前記親機に備えられた、または接続された操作装置への入力に基づいた第1の操作データを取得し、
少なくとも前記第1の操作データに基づいてゲーム処理を行い、
前記ゲーム処理に基づいた第1の画像および少なくとも1つの第2の画像を生成し、
前記第1の画像を、前記親機に備えられた、または接続された表示装置へ出力し、
前記第2の画像をそれぞれ前記少なくとも1つの前記子機へ送信し、
それぞれの前記子機は、
前記親機と通信を行い、
前記親機から受信された前記第2の画像を、当該子機に備えられた、または接続された表示装置へ出力する、ゲーム処理方法。
【請求項12】
前記所定の配置は、複数の前記情報処理装置に備えられた表示装置が横方向に並ぶ配置であり、
前記アタッチメントによって、前記横方向に隣接する前記情報処理装置同士を固定する、請求項11記載のゲーム処理方法。
【請求項13】
前記情報処理装置は、前記操作装置を一体的に固定可能な溝部を備え、
前記隣接する前記情報処理装置においてそれぞれ前記操作装置が固定されていない両方の前記溝部に固定される前記アタッチメントによって、当該情報処理装置を固定する、請求項12記載のゲーム処理方法。
【請求項14】
前記親機は、
仮想空間内において、複数の前記情報処理装置の配置に基づいた位置に配置される仮想カメラに基づいた画像を前記第1の画像およびそれぞれの前記第2の画像として生成し、
かつ前記仮想空間内の前記第2の画像に含まれる範囲について、前記第1の画像に含まれる範囲よりも所定時間分先となる前記ゲーム処理を行う、請求項11記載のゲーム処理方法。
【請求項15】
前記所定の配置は、複数の前記情報処理装置に備えられた表示装置が縦方向に並ぶ配置であり、
前記アタッチメントによって、前記縦方向に隣接する前記情報処理装置同士を固定する、請求項11記載のゲーム処理方法。
【請求項16】
前記所定の配置は、2つの前記情報処理装置に備えられた表示装置が縦方向に並ぶ配置であり、
前記2つの前記情報処理装置をそれぞれ支える第1支持部材および第2支持部材と、当該第1および第2支持部材を接続し、当該接続箇所を折り曲げ可能なヒンジ部とを備える前記アタッチメントによって当該情報処理装置を固定する、請求項15記載のゲーム処理方法。
【請求項17】
前記所定の配置は、前記親機に接続された表示装置に対して前記子機の表示装置が固定される配置であり、
前記アタッチメントによって、前記親機に接続された表示装置に前記子機の表示装置を固定する、請求項11記載のゲーム処理方法。
【請求項18】
前記第1の画像は、仮想空間内の第1の仮想カメラに基づいた画像であり、
前記第2の画像は、前記第1の仮想カメラの視野に含まれる所定の位置を拡大して撮影する第2の仮想カメラに基づいた画像である、請求項17記載のゲーム処理方法。
【請求項19】
前記第1の画像は、仮想空間内の第1の仮想カメラに基づいた画像であり、
前記第2の画像は、前記第1の仮想カメラと逆方向を向いた第2の仮想カメラに基づいた画像である、請求項17記載のゲーム処理方法。
【請求項20】
前記子機は、さらに、当該子機に備えられた、または接続された操作装置への入力に基づいた第2の操作データを前記親機へ送信し、
前記親機は、さらに、前記第2の操作データに基づいてゲーム処理を行う、請求項11から19のいずれか記載のゲーム処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の情報処理装置を用いてゲームを行うゲームシステムおよびゲーム処理方法に関する。
【背景技術】
【0002】
従来、複数の情報処理装置のうちの1つの装置が親機として設定され、他の装置が子機として設定され、親機から子機に画像を配信することにより、複数の情報処理装置間でゲームを行う技術がある(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第6646991号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、親機から子機に画像を配信する機能を有する情報処理システムを用いて、より多様な方法でゲームを行うには改善の余地があった。
【0005】
それ故、本発明の目的は、親機から子機に画像を配信する機能を有し、新規で多様な方法でゲームを行うことが可能なゲームシステムおよびゲーム処理方法を提供することである。
【課題を解決するための手段】
【0006】
上記目的を達成するために、本発明は例えば以下の(1)~(10)のような構成を採用し得る。
【0007】
(1)
本発明のゲームシステムの一構成例は、プロセッサを備える複数の情報処理装置と、少なくとも1つの情報処理装置を所定の配置で固定するアタッチメントとを含む。複数の情報処理装置のうち、少なくともいずれかの情報処理装置を親機、他の情報処理装置を子機とする。親機のプロセッサは、少なくとも1つの子機と通信を行い、親機に備えられた、または接続された操作装置への入力に基づいた第1の操作データを取得し、少なくとも第1の操作データに基づいてゲーム処理を行い、ゲーム処理に基づいた第1の画像および少なくとも1つの第2の画像を生成し、第1の画像を、親機に備えられた、または接続された表示装置へ出力し、第2の画像をそれぞれ少なくとも1つの子機へ送信する。それぞれの子機のプロセッサは、親機と通信を行い、親機から受信された第2の画像を、当該子機に備えられた、または接続された表示装置へ出力する。
【0008】
上記(1)の構成によれば、親機から子機に画像を送信する機能を有するゲームシステムにおける少なくとも1つ情報処理装置が、アタッチメントによって所定の配置に固定されることにより、新規で多様な方法でゲームを行うことが可能となる。
【0009】
(2)
上記(1)の構成において、上記所定の配置は、複数の情報処理装置に備えられた表示装置が横方向に並ぶ配置でもよい。この場合、上記アタッチメントは、横方向に隣接する情報処理装置同士を固定するアタッチメントでもよい。
【0010】
上記(2)の構成によれば、アタッチメントによって複数の情報処理装置が横方向に隣接する所定の配置に固定されることにより、新規で多様な方法でゲームを行うことが可能となる。
【0011】
(3)
上記(2)の構成において、上記情報処理装置は、操作装置を一体的に固定可能な溝部を備えてもよい。この場合、上記アタッチメントは、隣接する情報処理装置においてそれぞれ操作装置が固定されていない両方の溝部に固定されてもよい。
【0012】
上記(3)の構成によれば、情報処理装置に操作装置を装着する際に用いられる溝部を利用して、アタッチメントを固定することができる。
【0013】
(4)
上記(1)乃至(3)の何れか1つの構成において、上記親機のプロセッサは、仮想空間内において、複数の情報処理装置の配置に基づいた位置に配置される仮想カメラに基づいた画像を第1の画像およびそれぞれの第2の画像として生成し、かつ仮想空間内の第2の画像に含まれる範囲について、第1の画像に含まれる範囲よりも所定時間分先となるゲーム処理を行ってもよい。
【0014】
上記(4)の構成によれば、親機から子機への通信遅延による影響を低減することができる。
【0015】
(5)
上記(1)または(4)の構成において、上記所定の配置は、複数の情報処理装置に備えられた表示装置が縦方向に並ぶ配置でもよい。この場合、上記アタッチメントは、縦方向に隣接する情報処理装置同士を固定するアタッチメントでもよい。
【0016】
上記(5)の構成によれば、アタッチメントによって複数の情報処理装置が縦方向に隣接する所定の配置に固定されることにより、新規で多様な方法でゲームを行うことが可能となる。
【0017】
(6)
上記(5)の構成において、上記所定の配置は、2つの情報処理装置に備えられた表示装置が縦方向に並ぶ配置でもよい。この場合、上記アタッチメントは、第1支持部材および第2支持部材と、ヒンジ部とを備えてもよい。第1支持部材および第2支持部材は、2つの情報処理装置をそれぞれ支える。ヒンジ部は、第1および第2支持部材を接続し、当該接続箇所を折り曲げ可能である。
【0018】
上記(6)の構成によれば、縦方向に隣接する情報処理装置同士を合わせて折りたたむことができるため、コンパクトな持ち運びや保管等を可能とする。
【0019】
(7)
上記(1)または(4)の構成において、上記所定の配置は、親機に接続された表示装置に対して子機の表示装置が固定される配置でもよい。この場合、上記アタッチメントは、親機に接続された表示装置に子機の表示装置を固定するアタッチメントでもよい。
【0020】
上記(7)の構成によれば、親機に接続された表示装置のサブ画面として子機の表示装置を利用するゲームプレイが可能となる。
【0021】
(8)
上記(7)の構成において、上記第1の画像は、仮想空間内の第1の仮想カメラに基づいた画像でもよい。上記第2の画像は、第1の仮想カメラの視野に含まれる所定の位置を拡大して撮影する第2の仮想カメラに基づいた画像でもよい。
【0022】
上記(8)の構成によれば、子機の表示装置に表示される遠距離の仮想空間の状況を確認しながら、親機に接続された表示装置に表示される仮想空間を主に見るゲームプレイが可能となる。
【0023】
(9)
上記(7)の構成において、上記第1の画像は、仮想空間内の第1の仮想カメラに基づいた画像でもよい。上記第2の画像は、第1の仮想カメラと逆方向を向いた第2の仮想カメラに基づいた画像でもよい。
【0024】
上記(9)の構成によれば、子機の表示装置に表示される後方の仮想空間の状況を確認しながら、親機に接続された表示装置に表示される前方の仮想空間を主に見るゲームプレイが可能となる。
【0025】
(10)
上記(1)乃至(9)の何れか1つの構成において、上記子機のプロセッサは、さらに、子機に備えられた、または接続された操作装置への入力に基づいた第2の操作データを親機へ送信してもよい。この場合、上記親機のプロセッサは、さらに、第2の操作データに基づいてゲーム処理を行ってもよい。
【0026】
上記(10)の構成によれば、さらに、子機に備えられた、または接続された操作装置への入力を加えたゲーム処理が可能となる。
【0027】
また、本発明は、ゲーム処理方法の形態で実施されてもよい。
【発明の効果】
【0028】
本発明によれば、少なくとも1つ情報処理装置が、アタッチメントによって所定の配置に固定されることにより、新規で多様な方法でゲームを行うことが可能となる。
【図面の簡単な説明】
【0029】
図1】本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図
図2】本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図
図3】本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図
図4】複数の情報処理装置1がローカル通信を行うことにより構成されるゲームシステム10の概要を示す図
図5】複数の情報処理装置1がインターネット通信を行うことにより構成されるゲームシステム10の概要を示す図
図6】本体装置2aおよび2bがアタッチメント8aにより固定された状態の一例を示す図
図7】第1のシステム構成において表示されるゲーム画像の一例を示す図
図8】第1のシステム構成において用いられるゲーム空間の一例を示す図
図9】本体装置2a~2cがアタッチメント8aおよび8bにより固定された状態の一例を示す図
図10】本体装置2aおよび2bがアタッチメント8cにより固定された状態の一例を示す図
図11】本体装置2bがアタッチメント8dにより据置型モニタ5に固定された状態の一例を示す図
図12】第3のシステム構成において表示されるゲーム画像の一例を示す図
図13】第3のシステム構成において表示されるゲーム画像の他の例を示す図
図14】第3のシステム構成において用いられるゲーム空間の一例を示す図
図15】親機に設定されるデータ領域の一例を示す図
図16】子機に設定されるデータ領域の一例を示す図
図17】親機で実行される親機処理の一例を示すフローチャート
図18】子機で実行される子機処理の一例を示すフローチャート
【発明を実施するための形態】
【0030】
(情報処理装置の説明)
以下、本実施形態の一例において用いられる情報処理装置について説明する。情報処理装置1の一例は、本体装置2と左コントローラ3および右コントローラ4とを含む。本体装置2に対して、左コントローラ3および右コントローラ4をそれぞれ着脱可能に構成される。つまり、情報処理装置1は、左コントローラ3および右コントローラ4を本体装置2に装着して一体化された装置として利用できる。また、情報処理装置1は、左コントローラ3および右コントローラ4を本体装置2から取り外して利用されることもできる。以下では、本実施形態の情報処理装置1の構成について説明した後、複数の情報処理装置1を含むゲームシステムについて説明する。
【0031】
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の情報処理装置1の一例を示す図である。図2は、本体装置2から左コントローラ3および右コントローラ4を取り外した状態の情報処理装置1の一例を示す図である。図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、情報処理装置1における各種の処理(例えば、ゲーム処理)を実行する装置である。
【0032】
本体装置2は、ディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。ディスプレイ12は任意の種類の表示装置であってよい。例えば、ディスプレイ12は、液晶表示装置(LCD)でもあってもよいし、有機EL表示装置であってもよい。
【0033】
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
【0034】
左コントローラ3および右コントローラ4は、縦長の形状(すなわち、図1に示すy軸方向に長い形状)である。左コントローラ3および右コントローラ4は、本体装置2から取り外された状態において、縦長となる向きで把持されることも可能であるし、横長となる向きで把持されることも可能である。
【0035】
左コントローラ3は、ユーザが方向入力を行うためのアナログスティック31と、押下操作を行うための複数の操作ボタン32とを備える。右コントローラ4は、ユーザが方向入力を行うためのアナログスティック41と、押下操作を行うための複数の操作ボタン42とを備える。また、左コントローラ3および右コントローラ4は、その内部に加速度センサや角速度センサを備え、動きや姿勢を検出することが可能であってもよい。なお、以下では、左コントローラ3および右コントローラ4を総称して、「第1のコントローラ」と記載することがある。
【0036】
左コントローラ3および右コントローラ4が装着された本体装置2(情報処理装置1)は、ユーザが携帯可能な大きさである。例えば、ユーザは、本体装置2と一体化された左コントローラ3を左手で把持し、本体装置2と一体化された右コントローラ4を右手で把持して、当該左コントローラ3および右コントローラ4を用いてゲーム操作を行い、正面のディスプレイ12に表示されるゲーム画像を見ながらゲームをプレイする。このように、左コントローラ3および右コントローラ4が本体装置2に装着された状態で、ユーザが当該左コントローラ3および右コントローラ4を用いてゲーム操作を行い、ディスプレイ12に表示されるゲーム画像を見ながらゲームをプレイするプレイ態様を、以下では「携帯モード」と記載することがある。
【0037】
また、図2に示されるように、左コントローラ3および右コントローラ4を本体装置2から取り外すことができる。左コントローラ3および右コントローラ4が本体装置2から取り外された状態では、左コントローラ3および右コントローラ4は、本体装置2と無線で接続される。例えば、本体装置2の背面には、本体装置2を立たせるためのスタンドが設けられる。ユーザは、当該スタンドを用いて、ディスプレイ12の画面がテーブルとほぼ垂直になるように、本体装置2をテーブル上に立たせた状態で載置させることができる。あるいは、ユーザは、本体装置2のディスプレイ12の画面が上向きになるように本体装置2をテーブル上に載置してもよい。ユーザは、左コントローラ3および右コントローラ4を本体装置2から取り外し、左コントローラ3および/または右コントローラ4を用いてゲーム操作を行い、テーブル上に載置された本体装置2のディスプレイ12に表示されるゲーム画像を見ながらゲームをプレイすることができる。このように、左コントローラ3および右コントローラ4が本体装置2と無線で接続され、ユーザが、当該左コントローラ3および/または右コントローラ4を用いてゲーム操作を行い、ディスプレイ12に表示されるゲーム画像を見ながらゲームをプレイするプレイ態様を、以下では「テーブルモード」と記載することがある。なお、本体装置2には、左コントローラ3および右コントローラ4とは異なる第2のコントローラ7(図5参照)を無線で接続することができてもよい。第2のコントローラは、ユーザが両手で把持して操作することが可能なコントローラであってもよい。このような、第2のコントローラが本体装置2と無線で接続され、ユーザが、第2のコントローラを用いてゲーム操作を行い、ディスプレイ12に表示されるゲーム画像を見ながらゲームをプレイするプレイ態様も、「テーブルモード」という。なお、以下では、第1のコントローラおよび第2のコントローラを総称して、「コントローラ」と記載することがある。
【0038】
また、ユーザは、本体装置2をクレードル6を介して据置型モニタ(例えば、テレビ)5に接続し、当該据置型モニタ5に表示されるゲーム画像を見ながらゲームをプレイすることもできる(図5参照)。本体装置2には、クレードル6と接続するための下側端子27(図3参照)が設けられる。本体装置2は、クレードル6を介して据置型モニタ5に有線で接続される。このように、ユーザがディスプレイ12とは異なる外部の据置型モニタ5に表示された画像を見ながらゲームをプレイするプレイ態様を、「据置モード」と記載することがある。情報処理装置1が据置モードで動作する場合、第1のコントローラ(左コントローラ3および右コントローラ4)は本体装置2から取り外されて無線で接続され、ユーザは当該第1のコントローラを用いてゲーム操作を行ってもよい。あるいは、情報処理装置1が据置モードで動作する場合、左コントローラ3および右コントローラ4が本体装置2に装着された状態で、別の第1のコントローラまたは第2のコントローラが本体装置2に無線で接続され、ユーザは当該第1のコントローラまたは第2のコントローラを用いてゲーム操作を行ってもよい。
【0039】
次に、情報処理装置1の内部構成について説明する。図3は、情報処理装置1の内部構成の一例を示すブロック図である。
【0040】
図3に示されるように、本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部である。プロセッサ81は、例えば、1または複数のCPU(Central Processing Unit)から構成されてもよいし、1または複数のCPUと、1または複数のGPU(Graphics Processing Unit)とを含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
【0041】
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
【0042】
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
【0043】
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
【0044】
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、所定の通信方式(例えば、独自プロトコルによる通信方式やWi-Fiの規格に準拠した方式)により、自機の通信範囲に存在する他の本体装置2との間で直接的に無線通信を行うことが可能である。また、ネットワーク通信部82は、Wi-Fiの規格に準拠した方式により、自機の通信範囲に存在する無線LANアクセスポイントを介して、当該アクセスポイントを含むローカルエリアネットワークに接続された他の本体装置2との間で通信を行うことが可能であってもよい。このような他の本体装置2との直接的な通信および無線LANアクセスポイントを介したローカルエリアネットワーク内での通信を、ここでは「ローカル通信」という。また、ネットワーク通信部82は、Wi-Fiの規格に準拠した方式により、無線LANに接続してインターネットに接続可能であり、インターネットに接続された他の装置と通信を行うことが可能である。なお、本体装置2は、有線LANに接続可能であり、有線LANを介してインターネットに接続可能であってもよい。例えば、本体装置2は、クレードル6を介して有線LANに接続可能であってもよい。このような他の装置とのインターネットを介した通信を、ここでは「インターネット通信」という。
【0045】
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。また、コントローラ通信部83は、第2のコントローラと無線通信を行うことが可能である。本体装置2と左コントローラ3および右コントローラ4(または第2のコントローラ)との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
【0046】
プロセッサ81は、左側端子20、右側端子21、および下側端子27に接続される。プロセッサ81は、左コントローラ3と有線通信を行う場合、左側端子20を介して左コントローラ3へデータを送信するとともに、左側端子20を介して左コントローラ3から操作データを受信する。また、プロセッサ81は、右コントローラ4と有線通信を行う場合、右側端子21を介して右コントローラ4へデータを送信するとともに、右側端子21を介して右コントローラ4から操作データを受信する。また、プロセッサ81は、クレードル6と通信を行う場合、下側端子27を介してクレードル6へデータを送信する。このように、本実施形態においては、本体装置2は、左コントローラ3および右コントローラ4との間で、それぞれ有線通信と無線通信との両方を行うことができる。また、左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置または本体装置2単体がクレードル6に装着された場合、本体装置2は、クレードル6を介してデータ(例えば、画像データや音声データ)を据置型モニタ5に出力することができる。
【0047】
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、複数のユーザは、左コントローラ3および右コントローラ4のセットをそれぞれ用いて、本体装置2に対する入力を同時に行うことができる。一例として、第1ユーザが左コントローラ3および右コントローラ4の第1セットを用いて本体装置2に対して入力を行うと同時に、第2ユーザが左コントローラ3および右コントローラ4の第2セットを用いて本体装置2に対して入力を行うことが可能となる。
【0048】
本体装置2は、タッチパネル13の制御を行う回路であるタッチパネルコントローラ86を備える。タッチパネルコントローラ86は、タッチパネル13とプロセッサ81との間に接続される。タッチパネルコントローラ86は、タッチパネル13からの信号に基づいて、例えばタッチ入力が行われた位置を示すデータを生成して、プロセッサ81へ出力する。
【0049】
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
【0050】
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、プロセッサ81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。
【0051】
また、本体装置2は、加速度センサ89を備える。本実施形態においては、加速度センサ89は、所定の3軸(例えば、図1に示すxyz軸)方向に沿った加速度の大きさを検出する。なお、加速度センサ89は、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。
【0052】
また、本体装置2は、角速度センサ90を備える。本実施形態においては、角速度センサ90は、所定の3軸(例えば、図1に示すxyz軸)回りの角速度を検出する。なお、角速度センサ90は、1軸回りあるいは2軸回りの角速度を検出するものであってもよい。
【0053】
加速度センサ89および角速度センサ90は、プロセッサ81に接続され、加速度センサ89および角速度センサ90の検出結果は、プロセッサ81へ出力される。プロセッサ81は、上記の加速度センサ89および角速度センサ90の検出結果に基づいて、本体装置2の動きおよび/または姿勢に関する情報を算出することが可能である。
【0054】
本体装置2は、電源ボタン24と、電力制御部97と、バッテリ98とを備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子20、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
【0055】
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル6)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
【0056】
左コントローラ3は、本体装置2の左側端子20と接続される端子35を備える。また、左コントローラ3は、制御部30を備える。制御部30は、端子35を含む各構成要素に接続される。制御部30は、左コントローラ3が本体装置2に対して行う通信方法を制御する。本実施形態においては、制御部30は、端子35を介した有線通信と、図示しないアンテナを介した無線通信との両方で本体装置2と通信を行うことが可能である。すなわち、左コントローラ3が本体装置2に装着されている場合、制御部30は、端子35を介して本体装置2と通信を行う。また、左コントローラ3が本体装置2から取り外されている場合、制御部30は、本体装置2(具体的には、コントローラ通信部83)との間で無線通信を行う。コントローラ通信部83と制御部30との間の無線通信は、例えばBluetooth(登録商標)の規格に従って行われる。
【0057】
また、左コントローラ3は、例えばフラッシュメモリ等のメモリ33を備える。制御部30は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ33に記憶されるファームウェアを実行することによって各種の処理を実行する。
【0058】
左コントローラ3は、アナログスティック(図3では「スティック」と記載する)31と複数の操作ボタン32とを備える。アナログスティック31および各操作ボタン32に対して行われた操作に関する情報は、適宜のタイミングで繰り返し制御部30に出力される。
【0059】
また、左コントローラ3は、センサ34を備える。センサ34は、加速度センサと角速度センサとを含む。加速度センサは、図1に示すxyz各軸方向に沿った加速度の大きさを検出し、角速度センサは、xyz各軸回りの角速度を検出する。加速度センサおよび角速度センサの検出結果は、適宜のタイミングで繰り返し制御部30へ出力される。
【0060】
制御部30は、各操作ボタン32、アナログスティック31、センサ34から、入力に関する情報(具体的には、アナログスティック31や各操作ボタン32に対する操作に関する情報、センサ34による検出結果に関する情報)を取得する。制御部30は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
【0061】
上記操作データが本体装置2へ送信されることによって、本体装置2は、アナログスティック31や各操作ボタン32に対する操作を、操作データに基づいて判別することができる。また、本体装置2は、操作データ(具体的には、センサ34の検出結果)に基づいて、左コントローラ3の動きおよび/または姿勢に関する情報を取得することができる。
【0062】
また、図示は省略するが、左コントローラ3は、上記各部に電力を供給するバッテリを備える。また、左コントローラ3は、バイブレータを備えてもよい。
【0063】
また、図3に示されるように、右コントローラ4は、本体装置2の右側端子21と接続される端子45と、制御部40と、メモリ43と、スティック41と、複数の操作ボタン42と、センサ44とを備える。これら各部は、左コントローラ3の上記各部と同様の機能を有するため、説明を省略する。
【0064】
(複数の情報処理装置を含むゲームシステムの説明)
以下、後述する本実施形態に係るゲームを行うためのゲームシステム10の一例について説明する。ゲームシステム10は、複数の情報処理装置1が相互に通信することにより構成されるシステムである。図4は、ゲームシステム10の一例を示す図であって、複数の情報処理装置1がローカル通信を行うことにより構成されるゲームシステム10の概要を示す図である。図5は、ゲームシステム10の一例を示す図であって、複数の情報処理装置1がインターネット通信を行うことにより構成されるゲームシステム10の概要を示す図である。
【0065】
図4および図5に示されるように、ゲームシステム10は、複数の情報処理装置1を含む。例えば、ゲームシステム10は、情報処理装置1aと、情報処理装置1bと、情報処理装置1cと、情報処理装置1dとを含む。
【0066】
なお、図4および図5では、ゲームシステム10は4つの情報処理装置1を含む場合が例示されているが、ゲームシステム10に含まれる情報処理装置1の数は任意でよい。また、図4および図5に示す何れの通信態様においても、ゲームシステム10に含まれる複数の情報処理装置1は、携帯モードで動作してもよいし、据置モードで動作してもよいし、テーブルモードで動作してもよいし、これらが混在してもよい。例えば、図4に示す通信態様において、情報処理装置1a~1dは、何れも携帯モードで動作してもよいし、据置モードで動作してもよいし、テーブルモードで動作してもよいし、携帯モードと据置モードとテーブルモードとが混在してもよい。また、図5に示すゲームシステム10では、据置モードの情報処理装置(1aおよび1b)と携帯モードの情報処理装置(1cおよび1d)とが混在しているが、テーブルモードの情報処理装置を含んでもよいし、情報処理装置1a~1dは、何れも携帯モードであってもよいし、据置モードであってもよいし、テーブルモードであってもよい。
【0067】
図4および図5において、情報処理装置1aは、親機として機能する。親機である情報処理装置1aは、ゲームプログラムを実行する。情報処理装置1aのプロセッサ81は、ゲームプログラムを実行することにより、所定のゲームに関するゲーム処理を実行する。例えば、情報処理装置1aのスロット23には、ゲームプログラムを記憶した外部記憶媒体が装着され、情報処理装置1aのプロセッサ81は、当該外部記憶媒体に記憶されたゲームプログラムをDRAM85に読み込んで実行することができる。なお、ゲームプログラムは、情報処理装置1aのフラッシュメモリ84に記憶されてもよいし、情報処理装置1aが読み取り可能な他の記憶装置に記憶されてもよい。所定のゲームは、例えば、レースゲーム、カードゲーム、テーブルゲーム、スポーツゲーム、格闘ゲーム、シューティングゲーム、ロールプレイングゲーム、音楽ゲーム等の任意のゲームであってもよい。
【0068】
一方、図4および図5において、情報処理装置1b~1dは、子機として機能する。子機である情報処理装置1b~1dは、上記所定のゲームを実行するためのゲームプログラムを記憶せずに、当該ゲームプログラムを実行不可能であってもよい。すなわち、子機のスロット23には、ゲームプログラムを記憶した外部記憶媒体は装着されず、また、子機のフラッシュメモリ84にも当該ゲームプログラムは記憶されていない。
【0069】
なお、子機もゲームプログラムを記憶しているが、複数の情報処理装置1のうちの何れか1つが親機として機能し、残りの情報処理装置1が子機として機能し、親機のみでゲーム処理が実行されてもよい。
【0070】
また、複数の子機のうち、子機としてのみ機能する装置が含まれてもよい。
【0071】
また、親機と各子機とは、同じ種類の情報処理装置(例えば、同じ種類のゲーム装置)であってもよい。また、親機と各子機とは、異なる種類の情報処理装置であってもよい。また、複数の子機は、親機と同じ種類の情報処理装置と、親機とは異なる種類の情報処理装置とを含んでもよい。
【0072】
図4に示されるように、親機と各子機とは、ローカル通信(例えば、独自プロトコルによる通信方式やWi-Fiの規格に準拠した方式)により直接通信を行ってもよい。また、図5に示されるように、親機と各子機とは、インターネット8を介して通信を行ってもよい。本実施形態では、親機および子機を用いて所定のゲームが実行される。親機と各子機とは、所定のゲームの開始前に、接続を確立する。
【0073】
具体的には、親機は、親機のコントローラ(第1のコントローラまたは第2のコントローラ)に対する操作に応じた操作データや本体装置2のタッチパネル13や加速度センサ89および角速度センサ90によって検出された操作データを取得する。ここで、親機のコントローラに対する操作に応じた操作データを、「親機操作データ」という。また、子機は、子機のコントローラ(第1のコントローラまたは第2のコントローラ)に対する操作に応じた操作データや本体装置2のタッチパネル13や加速度センサ89および角速度センサ90によって検出された操作データを、親機に送信する。ここでは、子機から親機に送信される操作データを、「子機操作データ」という。
【0074】
親機は、親機操作データに基づいて、ゲーム処理を行う。また、親機は、子機から送信された子機操作データを受信し、当該子機操作データに基づいて、ゲーム処理を行う。ゲーム処理の内容は、ゲームの種類によって異なる。
【0075】
次に、親機は、ゲーム処理の結果に基づいて、画像データを生成する。具体的には、親機は、親機用の画像データと、子機用の画像データとを生成する。
【0076】
親機は、生成した親機用の画像データをディスプレイ12または据置型モニタ5に出力する。これにより、親機用のゲーム画像が、親機のディスプレイ12または据置型モニタ5に表示される。また、親機は、生成した子機用の画像データを子機に送信する。子機は、親機から送信された子機用の画像データを受信し、当該子機用の画像データをディスプレイ12または据置型モニタ5に出力する。これにより、子機用のゲーム画像が、各子機のディスプレイ12または据置型モニタ5に表示される。なお、親機は、親機用の音声データを生成し、当該音声データに基づく音声を出力してもよい。また、親機は、子機用の音声データを生成して子機に送信し、子機において当該子機用の音声データに基づく音声が出力されてもよい。
【0077】
このように、本実施形態に係るゲームを行うためのゲームシステム10は、複数の情報処理装置1を含み、複数の情報処理装置1のうちの何れか1つは親機として機能し、他の情報処理装置1は子機として機能する。親機において行われた操作に応じた親機操作データに基づいてゲーム処理が行われる。また、子機において行われた操作に応じた子機操作データが子機から親機に送信され、親機において子機操作データに基づくゲーム処理が行われる。親機は、ゲーム処理の結果に応じたゲーム画像を生成し、自機のディスプレイ12または据置型モニタ5に当該ゲーム画像を表示させる。また、親機は、ゲーム処理の結果に応じたゲーム画像を子機に送信し、子機において当該ゲーム画像が表示される。これにより、親機および子機を含むゲームシステム10においてゲームが行われる。
【0078】
次に、上述のようなゲームシステム10におけるシステム構成およびゲームシステム10を用いて行われるゲーム例について説明する。
【0079】
(第1のシステム構成およびゲーム例の説明)
本実施例におけるシステム構成では、複数の情報処理装置1のうち、少なくとも何れかの情報処理装置1を親機とし、他の情報処理装置1を子機として、これらの情報処理装置1の少なくとも1つを所定の配置で固定するアタッチメント8を含んでいる。
【0080】
図6に示すように、第1のシステム構成において用いられるアタッチメント8は、横方向に隣接する複数の本体装置2同士を固定する。図6に示す一例では、親機に設定されている情報処理装置1aの本体装置2aと子機に設定されている情報処理装置1bの本体装置2bとを、横方向に隣接させた状態でアタッチメント8aによって互いの位置関係を固定している。
【0081】
図1において例示しているように、情報処理装置1の本体装置2は、左右方向(図示X軸方向)が上下方向(図示Y軸方向)より長い横長形状の筐体を有しており、当該筐体に横長形状のディスプレイ12が設けられている。そして、本体装置2の左右側面にそれぞれ左コントローラ3および右コントローラ4を装着可能となっている。本実施例における「横方向」は、本体装置2の筐体やディスプレイ12における横長形状の長軸方向となる図示X軸方向とし、その左右に左コントローラ3および右コントローラ4がそれぞれ装着可能となる方向とする。
【0082】
アタッチメント8aは、横方向に隣接する本体装置2の左側面と右側面とを固定することにより、本体装置2同士を固定する。例えば、図6に示す例では、親機の本体装置2aの右側面(すなわち、情報処理装置1aの右コントローラ4aが装着可能な側面)と、子機の本体装置2bの左側面(すなわち、情報処理装置1bの左コントローラ3bが装着可能な側面)とが、所定の距離を開けて対向する位置関係で、本体装置2aと本体装置2bとがアタッチメント8aにより固定されている。
【0083】
本体装置2の左側面には、左コントローラ3を着脱可能な着脱機構が備えられている。例えば、本体装置2の左側面には、左コントローラ3を一体的に固定可能な溝部が、上記着脱機構として備えられている。一例として、上記溝部は、本体装置2の左側面に設けられたレール部材(レール溝)により構成される。上記レール部材は、左コントローラ3を本体装置2に着脱可能に装着するための部材であり、上記左側面において上下方向(図1に示すY軸方向)に沿って延びるように設けられる。レール部材は、左コントローラ3の右側面に設けられたスライダと係合可能な形状を有しており、レール部材とスライダとによって形成されるスライド機構により、上記着脱機構が構成される。他の例として、上記溝部は、左側面の一部が凹んだ溝により形成される。上記溝は、本体装置2の左側面において上下方向に沿って延びる凹み形状により形成され、当該左側面付近に磁性部材が備えられる。そして、左コントローラ3の右側面に形成された凸部が上記溝に嵌まる状態で、上記磁性部材による磁力を吸着力として左コントローラ3を本体装置2の左側面に吸着させることにより、本体装置2に左コントローラ3が装着される。なお、本体装置2の右側面にも、本体装置2の左側面の上記溝部と同様に、右コントローラ4を着脱可能な溝部が備えられている。
【0084】
アタッチメント8aは、アタッチメント8aの左右側面において、それぞれ上記溝部と係合や嵌合することにより、当該溝部と着脱可能な形状を有している。そして、図6の例では、アタッチメント8aは、本体装置2aにおいて右コントローラ4aが固定されていない右側面の上記溝部と、本体装置2bにおいて左コントローラ3bが固定されていない左側面の上記溝部とに、それぞれ着脱可能に固定される。これにより、横長形状のディスプレイ12が横方向に隣接した2画面を用いて、以下の操作態様によるゲームプレイが可能となる。第1の例では、アタッチメント8aによって固定された本体装置2aおよび本体装置2bをテーブル等の上に表示画面を起立させて載置し、本体装置2aに無線接続された左コントローラ3aおよび/または右コントローラ4aを操作してゲームプレイする。第2の例では、第1のシステム構成では、アタッチメント8aによって固定された本体装置2aおよび本体装置2bをテーブル等の上に表示画面が載置面とほぼ平行となるように寝かせて載置し、本体装置2aのタッチパネル13aをタッチ操作、または本体装置2aに無線接続された左コントローラ3aおよび/または右コントローラ4aを操作してゲームプレイする。第3の例では、アタッチメント8aによって固定された本体装置2aおよび本体装置2bを一方の手で把持した状態で、本体装置2aのタッチパネル13aを他方の手でタッチ操作してゲームプレイする。第4の例では、左コントローラ3aおよび右コントローラ4aの一方が装着された本体装置2aにおけるコントローラが装着されていない側面に本体装置2bをタッチメント8aによって固定し、当該装着された一方のコントローラと本体装置2bの側部とを両手で把持した状態で、当該装着された一方のコントローラを操作してゲームプレイする。
【0085】
第1のシステム構成における親機(本体装置2a)と子機(本体装置2b)とは、上記ローカル通信により直接通信し、当該親機および子機を用いてゲーム処理が行われる。具体的には、上記親機は、当該親機のコントローラ(第1のコントローラまたは第2のコントローラ)に対する操作に応じた親機操作データを取得する。そして、上記親機は、上記親機操作データに基づいてゲーム処理を行い、当該ゲーム処理により生成された親機用のゲーム画像データを親機のディスプレイ12aに出力することにより、親機用のゲーム画像がディスプレイ12aに表示される。また、上記親機は、上記ゲーム処理により生成された子機用のゲーム画像データを、上記子機に送信する。上記子機は、上記子機用のゲーム画像データを受信し、当該子機用のゲーム画像データを子機のディスプレイ12bに出力することにより、子機用のゲーム画像がディスプレイ12bに表示される。
【0086】
本実施例におけるゲーム処理では、同じゲーム空間を示すゲーム画像が親機および子機それぞれのディスプレイ12に表示されてもよい。例えば、図7および図8に示すように、第1のシステム構成におけるゲーム処理では、ゲーム空間において本体装置2aおよび2bの配置に基づいた位置に、親機用の仮想カメラと子機用の仮想カメラとをそれぞれ配置する。そして、親機用の仮想カメラに基づく画像を親機用のゲーム画像とし、子機用の仮想カメラに基づく画像を子機用のゲーム画像として、それぞれ表示される。本実施例において用いられる複数の本体装置2は、アタッチメント8によってそれぞれの本体装置2の配置位置が所定の物理的な位置関係に固定することができるため、親機用および子機用の仮想カメラをそれぞれ予め定められた位置関係でゲーム空間に配置することができる。
【0087】
例えば、図7および図8に示す例では、ゲーム空間において、親機操作データに基づいて動作制御されるプレイヤキャラクタPCと複数の敵キャラクタECとが配置されている。そして、上記ゲーム空間において、プレイヤキャラクタPCを含む表示範囲の親機用のゲーム画像が、親機用の仮想カメラに基づいて生成される。そして、同じゲーム空間において、親機の上記表示範囲よりプレイヤキャラクタPCの進行方向の先となる表示範囲の子機用のゲーム画像が、子機用の仮想カメラに基づいて生成される。このように2つのゲーム画像を構成することにより、隣接する2画面を用いてプレイヤキャラクタPCの行き先となるゲーム空間の視界がより広がったゲーム画像を表示することができる。なお、上述した親機の上記表示範囲よりプレイヤキャラクタPCの進行方向の先となる子機の表示範囲の位置は、実世界における本体装置2aおよび2bの配置位置に基づいて、親機用の仮想カメラと子機用の仮想カメラとがゲーム空間に配置されることにより設定される。親機の表示範囲と子機の表示範囲とは、上記ゲーム空間において一部が重複する範囲でもよいし、上記ゲーム空間において互いに重複しない範囲(例えば、互いに接する範囲や互いに離れた範囲)でもよい。
【0088】
なお、本実施例においては、子機用の仮想カメラに基づいて生成される子機用のゲーム画像の表示範囲について、親機用の仮想カメラに基づいて生成される親機用のゲーム画像の表示範囲よりも所定時間先となるゲーム処理が行われてもよい。例えば、子機に表示されるゲーム画像は、親機から子機への画像データを送受信する処理を経てディスプレイ12bに表示されるため、当該送受信におけるデータ通信による遅延が生じることが考えられる。この場合、プレイヤキャラクタPCが移動できる範囲を、親機用のゲーム画像の表示範囲内に制限する。そして、親機と子機との間のデータ通信においてかかる時間RTT(親機から子機へリクエストを開始してから、当該子機からのレスポンスを当該親機が得るまでにかかるラウンドトリップタイム)を計測し、子機用のゲーム画像では時間RTT/2だけ先のゲーム空間の状況(すなわち、親機用のゲーム画像において表示されているゲーム空間よりRTT/2だけ未来のゲーム空間の状況)を表示することにより、ユーザに通信遅延を感じさせないようにすることができる。例えば、プレイヤキャラクタPCによるシューティングゲーム等を実行する場合は、敵キャラクタECの出現パターンやプレイヤキャラクタPCから発射された弾の軌道が一意に決めやすいため、未来のゲーム空間の状況を予測することが容易となる。
【0089】
また、第1のシステム構成においては、アタッチメント8を用いて、3つ以上の本体装置2や異なる種類の装置が混在する状態で、横方向に隣接する装置同士を固定してもよい。例えば、図9に示すように、アタッチメント8aにより本体装置2aおよび2bが横方向に隣接して固定されており、さらに当該本体装置2bの右側に隣接する本体装置2cがアタッチメント2bにより固定されている。ここで、本体装置2aが親機として機能し、本体装置2bおよび2cが子機として機能する。そして、本体装置2aおよび2bが同じ種類の装置であり、本体装置2cが本体装置2aおよび2bと異なる種類の装置である。
【0090】
アタッチメント8aは、隣接する同じ種類の本体装置2同士を固定するタイプ(例えば、横方向に隣接するA種の装置同士を固定するAタイプ)である。これに対して、アタッチメント8bは、隣接する異なる種類の本体装置2同士を固定するタイプ(例えば、横方向に隣接するA種の装置とB種の装置とを固定するBタイプ)であり、アタッチメント8aとは形状が異なっている。例えば、本体装置2の種類が異なる場合、筐体サイズや形状が異なっていたり、左右側面の溝部の構造が異なっていたりすることがあり、アタッチメント8bは、このような固定対象の形状に対応して構成されている。一例として、A種の装置の上記溝部がレール部材によって構成され、B種の装置の上記溝部が凹んだ溝によって構成されて磁力による吸着力が生じる構造である場合、アタッチメント8bの一方側面が当該レール部材と係合可能な形状で構成され、他方側面が当該凹んだ溝と嵌合可能な形状で磁力による吸着力を受ける性質の部材で構成される。
【0091】
なお、アタッチメント8bは、筐体サイズや形状が異なる装置同士を固定する場合、図9に例示するように当該装置それぞれの下側面の位置が揃うように当該装置を支える形状で構成されてもよい。このように下側面が揃うように複数の装置が固定されることによって、アタッチメント8bを介して固定された複数の本体装置2をテーブル等の上に表示画面を起立させて載置した状態でゲームプレイすることが可能となる。なお、このような操作態様を想定しない場合、アタッチメント8bは、筐体サイズや形状が異なる装置それぞれにおける水平方向の中心線が揃うように当該装置を支える形状で構成されてもよいし、当該装置それぞれの上側面の位置が揃うように当該装置を支える形状で構成されてもよい。
【0092】
このように3つ以上の本体装置2が横方向に隣接して固定される場合であっても、親機と複数の子機とは、上記ローカル通信により直接通信し、当該親機および複数の子機を用いてゲーム処理が行われる。具体的には、上記親機は、ゲーム処理により複数の子機それぞれのゲーム画像データを生成して、上記複数の子機にそれぞれ送信する。そして、上記複数の子機は、それぞれ自機用のゲーム画像データを受信し、当該自機用のゲーム画像データをディスプレイ12bおよび12cにそれぞれ出力することにより、自機用のゲーム画像がディスプレイ12bおよび12cにそれぞれ表示される。
【0093】
3つ以上の本体装置2が横方向に隣接して固定される場合におけるゲーム処理でも、同じゲーム空間を示すゲーム画像が親機および複数の子機それぞれのディスプレイ12に表示されてもよい。例えば、ゲーム空間において本体装置2a、2b、および2cの配置に基づいた位置に、親機用の仮想カメラと複数の子機用の仮想カメラとをそれぞれ配置する。そして、親機用の仮想カメラに基づく画像を親機用のゲーム画像とし、複数の子機用の仮想カメラそれぞれに基づく画像を子機用のゲーム画像として、それぞれ表示される。3つ以上の本体装置2が固定される場合であっても、複数の本体装置2は、アタッチメント8によってそれぞれの本体装置2の配置位置が所定の物理的な位置関係に固定することができるため、親機用および複数の子機用の仮想カメラをそれぞれ予め定められた位置関係でゲーム空間に配置することができる。
【0094】
具体的には、上記ゲーム空間において、プレイヤキャラクタPCを含む表示範囲の親機用のゲーム画像が、親機用の仮想カメラに基づいて生成され、当該親機の表示範囲よりプレイヤキャラクタPCの進行方向の先となる表示範囲の子機用のゲーム画像、およびさらに先となる表示範囲の子機用のゲーム画像が、複数の子機用の仮想カメラに基づいてそれぞれ生成される。このように3つ以上のゲーム画像を構成することにより、隣接する3画面以上を用いてプレイヤキャラクタPCの行き先となるゲーム空間の視界がさらに広がったゲーム画像を表示することができる。なお、上述した親機の上記表示範囲よりプレイヤキャラクタPCの進行方向の先となる複数の子機の表示範囲の位置は、実世界における本体装置2a、2b、および3bの配置位置に基づいて、親機用の仮想カメラと複数の子機用の仮想カメラとがゲーム空間に配置されることにより設定される。親機の表示範囲と複数の子機の表示範囲とは、上記ゲーム空間において一部が重複する範囲でもよいし、上記ゲーム空間において互いに重複しない範囲(例えば、互いに接する範囲や互いに離れた範囲)でもよい。
【0095】
なお、3つ以上の本体装置2が固定される場合においても、複数の子機用の仮想カメラに基づいて生成される子機用のゲーム画像それぞれの表示範囲について、親機用の仮想カメラに基づいて生成される親機用のゲーム画像の表示範囲よりも所定時間先となるゲーム処理が行われてもよい。例えば、親機と複数の子機それぞれとの間のデータ通信においてかかる時間RTTをそれぞれ計測し、子機毎の時間RTTに応じて、時間RTT/2だけ先のゲーム空間の状況をそれぞれ表示する。
【0096】
また、アタッチメント8aおよび8bは、上記溝部と係合や嵌合することなく、隣接する本体装置2の端部を挟持して固定する形状を有していてもよい。ここで、「挟持」とは、本体装置2の端部(第1のシステム構成では左側端部や右側端部)を前後から挟んで支える構造により、当該端部にアタッチメントが固定されることを示している。例えば、アタッチメント8aおよび8bは、一方の本体装置2の右側端部を前後から挟んで挟持する構造と、他方の本体装置2の左側端部を前後から挟んで挟持する構造とを有することにより、これらの本体装置2に着脱可能に固定されてもよい。
【0097】
また、第1のシステム構成においては、親機に備えられた操作装置(例えば、タッチパネル13、加速度センサ89、角速度センサ90)、または親機に接続された操作装置(例えば、左コントローラ3、右コントローラ4)への入力に基づいた親機の操作データに基づいてゲーム処理が行われている。他の実施例において、子機に備えられた操作装置、または子機に接続された操作装置への入力に基づいた子機の操作データにも基づいてゲーム処理が行われてもよい。例えば、親機の操作データに基づいて動作する親機のプレイヤキャラクタが配置されているゲーム空間に、子機の操作データに基づいて動作する子機のプレイヤキャラクタを登場させてもよい。一例として、隣接する複数のディスプレイ12に上記ゲーム空間を表示して、親機のプレイヤキャラクタが移動できる範囲を親機用のゲーム画像の表示範囲内に制限し、子機のプレイヤキャラクタが移動できる範囲を子機用のゲーム画像の表示範囲内に制限することにより、それぞれの操作データに基づいたゲーム処理が可能となる。この場合、子機用のゲーム画像の表示範囲について、親機用のゲーム画像の表示範囲よりも所定時間先とするゲーム処理が行われなくてもよい。
【0098】
(第2のシステム構成およびゲーム例の説明)
図10に示すように、第2のシステム構成において用いられるアタッチメント8は、縦方向に隣接する複数の本体装置2同士を固定する。図10に示す一例では、親機に設定されている情報処理装置1aの本体装置2aと子機に設定されている情報処理装置1bの本体装置2bとを、縦方向に隣接させた状態でアタッチメント8cによって互いの位置関係を固定している。本実施例における「縦方向」は、本体装置2の筐体やディスプレイ12における横長形状の短軸方向となる図1に示すY軸方向とし、左コントローラ3および右コントローラ4が装着される左右側面とは異なる上下側面を利用して固定される方向とする。
【0099】
アタッチメント8cは、縦方向に隣接する本体装置2の上側部と下側部とを固定することにより、本体装置2同士を固定する。例えば、図10に示す例では、親機の本体装置2aの上側部と、子機の本体装置2bの下側部とが、所定の距離を開けて対向する位置関係で、本体装置2aと本体装置2bとがアタッチメント8cにより固定されている。
【0100】
アタッチメント8cは、第1支持部材8c1、第2支持部材8c2、およびヒンジ部8c3を備えている。第1支持部材8c1は、アタッチメント8cによって固定する一方の本体装置2における上端部または下端部を、着脱可能に支える。第2支持部材8c2は、アタッチメント8cによって固定する他方の本体装置2における上端部または下端部を、着脱可能に支える。第1支持部材8c1および第2支持部材8c2は、それぞれ本体装置2の上端部または下端部に係合、嵌合、または挟持等することにより、当該上端部または下端部に着脱可能な形状を有している。
【0101】
ヒンジ部8c3は、第1支持部材8c1および第2支持部材8c2を接続し、当該接続箇所を折り曲げ可能に支持する。ヒンジ部8c3は、第1支持部材8c1および第2支持部材8c2によって支えている2つの本体装置2を開閉可能に支える蝶番(丁番)である。例えば、ヒンジ部8c3は、アタッチメント8cによって固定されている2つの本体装置2それぞれのディスプレイ12が同じ平面上に配置される開いた状態(図10に例示する状態)と、当該2つのディスプレイ12が対向して配置される閉じた状態とに開閉することができる。
【0102】
第2のシステム構成における親機(本体装置2a)と子機(本体装置2b)とにおいても、上記ローカル通信により直接通信し、当該親機および子機を用いてゲーム処理が行われる。具体的には、上記親機は、上記親機操作データに基づいてゲーム処理を行い、当該ゲーム処理により生成された親機用のゲーム画像データを親機のディスプレイ12aに出力することにより、親機用のゲーム画像がディスプレイ12aに表示される。また、上記親機は、上記ゲーム処理により生成された子機用のゲーム画像データを、上記子機に送信する。上記子機は、上記子機用のゲーム画像データを受信し、当該子機用のゲーム画像データを子機のディスプレイ12bに出力することにより、子機用のゲーム画像がディスプレイ12bに表示される。
【0103】
第1の例として、第2のシステム構成のゲーム処理でも、上記第1のシステム構成と同様に同じゲーム空間を示すゲーム画像が親機および子機それぞれのディスプレイ12に表示されてもよい。例えば、第2のシステム構成におけるゲーム処理でも、上記第1のシステム構成と同様にゲーム空間において本体装置2aおよび2bの物理的な位置関係に基づいた位置に、親機用の仮想カメラと子機用の仮想カメラとをそれぞれ配置して、親機用の仮想カメラに基づく画像を親機用のゲーム画像とし、子機用の仮想カメラに基づく画像を子機用のゲーム画像として、それぞれ表示してもよい。なお、上記第1の例においては、子機用の仮想カメラに基づいて生成される子機用のゲーム画像の表示範囲について、親機用の仮想カメラに基づいて生成される親機用のゲーム画像の表示範囲よりも所定時間先となるゲーム処理が行われてもよい。第2の例として、第2のシステム構成のゲーム処理では、ユーザのタッチ操作を受け付ける操作画面を親機のディスプレイ12に表示して、当該操作画面を用いたタッチ操作に基づいたゲーム空間を子機のディスプレイ12に表示してもよい。
【0104】
このように、第2のシステム構成においては、横長形状のディスプレイ12が縦方向に隣接した2画面を用いて、以下の操作態様によるゲームプレイが可能となる。第1の例では、アタッチメント8cによって固定された本体装置2aおよび本体装置2bをテーブル等の上に載置し、本体装置2aのタッチパネル13aをタッチ操作してゲームプレイする。第2の例では、アタッチメント8cによって固定された本体装置2aおよび本体装置2bを一方の手で把持した状態で、本体装置2aのタッチパネル13aを他方の手でタッチ操作してゲームプレイする。第3の例では、アタッチメント8cによって固定された本体装置2aおよび本体装置2bをテーブル等の上に載置し、本体装置2aに無線接続された左コントローラ3aおよび/または右コントローラ4aを操作してゲームプレイする。第4の例では、左コントローラ3aおよび右コントローラ4aが装着された本体装置2aに本体装置2bをアタッチメント8cによって固定し、当該左コントローラ3aおよび当該右コントローラ4aを両手で把持した状態で、当該左コントローラ3aおよび当該右コントローラ4aを操作してゲームプレイする。
【0105】
なお、第2のシステム構成においても、アタッチメント8cを用いて、縦方向に隣接する異なる種類の装置同士を固定してもよい。また、2つ以上のアタッチメント8cを用いて、3つ以上の本体装置2同士を固定してもよい。異なる種類の装置や3つ以上の装置が縦方向に隣接して固定される場合であっても、設定された親機と複数の子機とが上記ローカル通信により直接通信して上記ゲーム処理が行われる。
【0106】
また、第2のシステム構成においても、第1のシステム構成と同様に、親機の操作データに加えて、子機に備えられた操作装置(例えば、タッチパネル13、加速度センサ89、角速度センサ90)、または子機に接続された操作装置(例えば、左コントローラ3、右コントローラ4)への入力に基づいた子機の操作データに基づいてゲーム処理が行われてもよい。
【0107】
(第3のシステム構成およびゲーム例の説明)
図11に示すように、第3のシステム構成において用いられるアタッチメント8は、据置モードで動作する親機が画像を表示する据置型モニタ5に本体装置2を固定する。図11に示す一例では、親機に設定されている情報処理装置1aの本体装置2aに接続された据置型モニタ5の上部に、子機に設定されている情報処理装置1bの本体装置2bを、アタッチメント8dによって固定している。
【0108】
本実施例では、アタッチメント8dは、本体装置2bを着脱可能に据置型モニタ5に支えるが、本体装置2bを支持する状態では据置型モニタ5と本体装置2bとの位置関係が変化しないように本体装置2bを支える。他の実施例では、アタッチメント8dは、据置型モニタ5と本体装置2bとを複数の関節部を有するアーム機構等によって支持することにより、据置型モニタ5に対して本体装置2bが上下左右前後に可動するともに、ロール・ピッチ・ヨー方向に回転可能に支えてもよい。なお、何れの例であっても、アタッチメント8dは、本体装置2や据置型モニタ5の上下左右端部、背面等に固定可能であってもよい。アタッチメント8dは、一端を据置型モニタ5の端部や背面と係合、嵌合、または挟持等し、他端を本体装置2の端部や背面と係合、嵌合、または挟持等して、据置型モニタ5および本体装置2にそれぞれ着脱可能な形状を有している。
【0109】
第3のシステム構成における親機(本体装置2a)と子機(本体装置2b)とにおいても、上記ローカル通信により直接通信し、当該親機および子機を用いてゲーム処理が行われる。具体的には、据置モードにより動作している上記親機は、本体装置2aから取り外された左コントローラ3aおよび/または右コントローラ4aによる親機操作データに基づいてゲーム処理を行い、当該ゲーム処理により生成された親機用のゲーム画像データをクレードル6を介して当該親機に接続された据置型モニタ5に出力することにより、親機用のゲーム画像が据置型モニタ5に表示される。また、上記親機は、上記ゲーム処理により生成された子機用のゲーム画像データを、上記子機に送信する。上記子機は、上記子機用のゲーム画像データを受信し、当該子機用のゲーム画像データを子機のディスプレイ12bに出力することにより、子機用のゲーム画像がディスプレイ12bに表示される。
【0110】
第3のシステム構成におけるゲーム処理でも、同じゲーム空間を示すゲーム画像が親機および子機それぞれのディスプレイ12に表示されてもよい。第1の例として、図12に示すように、第3のシステム構成における親機用のゲーム画像は、ゲーム空間内に配置された親機用の仮想カメラに基づいた画像である。子機用のゲーム画像は、当該親機用の仮想カメラの視野に含まれる所定の位置を拡大して撮影する子機用の仮想カメラに基づいた画像である。
【0111】
例えば、図12に示す第1の例では、ゲーム空間において、敵キャラクタECが配置されている。そして、上記ゲーム空間において、親機操作データに基づいて動作するプレイヤキャラクタPCが敵キャラクタECを遠方から見た親機用のゲーム画像(例えば、一人称視点の画像)が、親機用の仮想カメラに基づいて生成される。そして、同じゲーム空間において、上記親機用のゲーム画像に含まれる所定の位置を拡大した子機用のゲーム画像が、子機用の仮想カメラに基づいて生成される。例えば、子機用の仮想カメラは、プレイヤキャラクタPCが所持する武器のスコープにより見た拡大画像を生成する。上記スコープは、親機操作データに基づいて動作するプレイヤキャラクタPCの移動と連動してゲーム空間を移動するとともに、親機操作データに基づいて視線方向および拡大倍率を変化させることが可能であり、当該移動および変化に連動する子機用の仮想カメラは、その視界の中央に照準Mを付与して子機用のゲーム画像を生成する。そして、ユーザは、左コントローラ3aおよび/または右コントローラ4aを操作することにより、照準Mが示す位置を変化させるとともに、照準Mが示すゲーム空間における位置に向かって弾オブジェクトを発射することにより、敵キャラクタECを攻撃することができる。
【0112】
他の実施例において、子機用のゲーム画像は、親機用の仮想カメラの視野よりも広い範囲を縮小して撮影する子機用の仮想カメラに基づいた画像でもよい。例えば、ゲーム空間の俯瞰視点の親機用のゲーム画像が、親機用の仮想カメラに基づいて生成される。そして、上記ゲーム空間の一部(例えば、プレイヤキャラクタPCの位置を中心とする所定範囲)を縮小したマップ画像が子機用のゲーム画像として子機用の仮想カメラに基づいて生成される。この場合、子機の本体装置2bに表示されたマップ画像を必要に応じて参照しながら、据置型モニタ5に表示されたメインのゲーム画像を見てゲームプレイすることができる。何れのゲーム処理が行われる場合であっても、子機用の仮想カメラに基づいて生成される子機用のゲーム画像の表示範囲について、親機用の仮想カメラに基づいて生成される親機用のゲーム画像の表示範囲よりも所定時間先となるゲーム処理が行われてもよい。
【0113】
第2の例として、図13および図14に示すように、第3のシステム構成における親機用のゲーム画像は、ゲーム空間内に配置された親機用の仮想カメラに基づいた画像である。子機用のゲーム画像は、当該親機用の仮想カメラと逆方向を向いた子機用の仮想カメラに基づいた画像である。
【0114】
例えば、図13および図14に示す第2の例では、ゲーム空間において、プレイヤキャラクタPCが乗車しているオブジェクトOBJpと他のオブジェクトOBJ1およびOBJ2とが配置されている。オブジェクトOBJpは、親機操作データに基づいてゲーム空間内を走行する車である。他のオブジェクトOBJ1は、オブジェクトOBJpの前方を同じ方向に走行する車であり、他のオブジェクトOBJ2は、オブジェクトOBJpの後方を同じ方向に走行する車である。そして、上記ゲーム空間において、オブジェクトOBJpの進行方向を撮像する親機用の仮想カメラに基づいて、オブジェクトOBJpに乗車するプレイヤキャラクタPCからオブジェクトOBJpの前方を見たゲーム空間の風景が親機用のゲーム画像として生成される。これにより、図13に示す一例では、オブジェクトOBJpの前方を走行する他のオブジェクトOBJ1を含む風景を示す親機用のゲーム画像が据置型モニタ5に表示されている。そして、同じゲーム空間において、上記親機用の仮想カメラの逆方向を撮像する子機用の仮想カメラに基づいて、子機用のゲーム画像が生成される。例えば、子機用の仮想カメラは、オブジェクトOBJpの進行方向の逆方向をオブジェクトOBJp内(例えば、オブジェクトOBJp内のルームミラー)から撮像した風景が子機用のゲーム画像として生成される。これによって、オブジェクトOBJpの後方の風景が本体装置2bに表示される。図13に示す例では、ルームミラーに映るオブジェクトOBJpの後方の視界を示し、オブジェクトOBJpの後方を走行する他のオブジェクトOBJ2を含む風景が子機用のゲーム画像として本体装置2bに表示されている。この場合、子機の本体装置2bに表示された後方の画像を必要に応じて参照しながら、据置型モニタ5に表示された前方の画像を見てゲームプレイすることができる。なお、当該ゲーム処理が行われる場合であっても、子機用の仮想カメラに基づいて生成される子機用のゲーム画像の表示範囲について、親機用の仮想カメラに基づいて生成される親機用のゲーム画像の表示範囲よりも所定時間先となるゲーム処理が行われてもよい。
【0115】
第3のシステム構成におけるゲーム処理においては、子機から送信された子機操作データも用いて、親機のゲーム処理が行われてもよい。例えば、アタッチメント8dによって据置型モニタ5に固定された本体装置2bが、据置型モニタ5に対してロール・ピッチ・ヨー方向に回転可能に支えられている場合、当該回転による姿勢に応じた子機操作データに基づいたゲーム処理が行われてもよい。例えば、子機(本体装置2b)のプロセッサは、子機のコントローラ(第1のコントローラまたは第2のコントローラ)に対する操作に応じた操作データの他に、本体装置2bのタッチパネル13bへタッチ入力が行われた位置を示す操作データや、本体装置2bの加速度センサ89bおよび角速度センサ90bの検出結果を示す操作データも、子機操作データとして親機に送信する。そして、親機では、本体装置2bの加速度センサ89bおよび角速度センサ90bの検出結果に基づいて、本体装置2bの動きおよび/または姿勢に関する情報を算出することが可能である。つまり、据置型モニタ5に対してロール・ピッチ・ヨー方向に本体装置2bが回転することによって姿勢が変化した場合、親機では当該姿勢の変化に関する情報を算出することが可能である。
【0116】
このように算出された本体装置2bの姿勢の変化に関する情報を用いて、上記親機は、子機用の仮想カメラの姿勢を変化させて子機用のゲーム画像を生成してもよい。例えば、本体装置2bの姿勢の変化に基づいて子機用の仮想カメラの姿勢を変化させることにより、子機用のゲーム画像を表示している画面(本体装置2bのディスプレイ12b)の向きに合うように当該画面に表示される画像を変化させることができる。具体的には、本体装置2bの姿勢の変化と同じように子機用の仮想カメラの姿勢を変化させることにより、オブジェクトOBJpの後方の画像を映しているルームミラーの姿勢が変わって、当該ルームミラーが映す風景が変化するような画像を本体装置2bに表示することができる。このような子機操作データも用いて、親機のゲーム処理が行われる場合であっても、子機用の仮想カメラに基づいて生成される子機用のゲーム画像の表示範囲について、親機用の仮想カメラに基づいて生成される親機用のゲーム画像の表示範囲よりも所定時間先となるゲーム処理が行われてもよい。
【0117】
なお、上記第3のシステム構成においては、子機(本体装置2b)をアタッチメント8dによって据置型モニタ5に固定しているが、アタッチメント8a~8dや他のアタッチメントを介して、他の家財、構築物、道具等(例えば、据置型モニタ5を載置するテレビ台、テーブルモードで動作する親機(本体装置2a)が載置されたテーブル)に子機(本体装置2b)が固定されてもよい。また、上記第3のシステム構成においては、親機(本体装置2a)自体にはアタッチメント8dが固定されていないが、アタッチメント8a~8dや他のアタッチメントを介して、テーブルモードまたは携帯モードで動作する親機(本体装置2a)自体に子機が固定されてもよい。
【0118】
また、上述した第1~第3のシステム構成において例示した親機と子機との物理的な配置関係は、逆であってもよい。すなわち、上述した第1~第3のシステム構成において、本体装置2bが親機に設定され、本体装置2a(および2c)が子機に設定されてもよい。この場合、親機の本体装置2bに備えられた操作装置(例えば、タッチパネル13b、加速度センサ89b、角速度センサ90b)、または親機の本体装置2bに接続された操作装置(例えば、左コントローラ3b、右コントローラ4b)への入力に基づいた操作データに基づいたゲーム処理が行われてもよい。また、この場合、上述した第3のシステム構成においては、親機(本体装置2b)をアタッチメント8dによって据置型モニタ5等に固定して、子機(本体装置2a)自体にはアタッチメント8dが固定されていない構成であってもよい。
【0119】
また、上述した第1~第3のシステム構成における子機用画像データの画像サイズ(解像度)は、可変であってもよい。例えば、親機に接続される子機の数に応じて、子機用画像データの画像サイズが変化してもよい。また、親機用画像データの画像サイズと、子機用画像データの画像サイズとは、異なってもよい。
【0120】
また、上述した第1~第3のシステム構成における親機と子機とは、インターネット8を介して通信を行ってもよい。
【0121】
(親機および子機における処理の詳細)
次に、親機および子機において行われる処理の詳細について説明する。まず、親機および子機において記憶されるデータについて説明する。図15は、親機に記憶されるデータの一例を示す図である。図16は、子機に記憶されるデータの一例を示す図である。図15および図16に示される各データは、各本体装置2のメモリ(外部記憶媒体、フラッシュメモリ26、DRAM27の何れか)に記憶される。
【0122】
図15に示されるように、親機には、ゲームプログラムと、子機データと、親機操作データと、子機操作データと、親機用画像データと、子機用画像データと、ゲームデータとが記憶される。
【0123】
ゲームプログラムは、所定のゲームを実行するためのプログラムであり、後述するゲーム処理を実行するためのプログラムである。
【0124】
子機データは、親機に接続された子機に関するデータである。子機データは、例えば、子機を特定する情報(例えば、装置IDやMACアドレス等)を含む。親機に接続された子機毎に、子機データが記憶される。
【0125】
親機操作データは、親機のコントローラ(第1のコントローラまたは第2のコントローラ)や本体装置2(タッチパネル13、加速度センサ89、および角速度センサ90)において行われた操作に応じたデータである。親機の本体装置2は、親機のコントローラ、タッチパネル13、加速度センサ89、および角速度センサ90から所定の時間間隔(例えば、1/200秒間隔)で親機操作データを取得する。
【0126】
子機操作データは、子機のコントローラ(第1のコントローラまたは第2のコントローラ)や本体装置2(タッチパネル13、加速度センサ89、および角速度センサ90)において行われた操作に応じたデータであり、子機から送信される。子機は、親機に対して子機操作データを所定の時間間隔(例えば、1/60秒間隔)で送信する。複数の子機が親機に接続される場合、各子機から受信した子機操作データがそれぞれ記憶される。なお、子機操作データを用いないシステム構成の場合は、親機のメモリに子機操作データが記憶されなくてもかまわない。
【0127】
親機用画像データは、親機の画面(ディスプレイ12または据置型モニタ5の画面)に表示されるゲーム画像を示す画像データであり、親機において生成される。
【0128】
子機用画像データは、子機の画面(ディスプレイ12または据置型モニタ5の画面)に表示されるゲーム画像を示す画像データであり、親機において生成されて子機に送信されるデータである。複数の子機が親機に接続される場合、それぞれの子機用画像データが生成されて記憶される。
【0129】
ゲームデータは、親機用ゲーム空間データ、子機用ゲーム空間データ、および通信遅延データを含む。親機用ゲーム空間データは、親機用の仮想カメラが配置されて親機用のゲーム画像を生成するためのゲーム空間の状態を示すデータである。子機用ゲーム空間データは、子機用の仮想カメラが配置されて子機用のゲーム画像を生成するためのゲーム空間の状態を示すデータであり、子機用のゲーム画像の表示範囲について、親機用のゲーム空間よりも所定時間先となる子機用のゲーム空間を示すデータである。通信遅延データは、親機からそれぞれの子機へリクエストを開始してから、当該子機からのレスポンスを当該親機が得るまでにかかるラウンドトリップタイム(RTT)を示すデータである。
【0130】
一方、図16に示されるように、子機には、親機データと、子機操作データと、子機用画像データとが記憶される。
【0131】
親機データは、子機と接続された親機に関するデータである。親機データは、例えば、親機を特定する情報(例えば、装置IDやMACアドレス等)を含む。
【0132】
子機操作データは、子機のコントローラ(第1のコントローラまたは第2のコントローラ)や本体装置2(タッチパネル13、加速度センサ89、および角速度センサ90)において行われた操作に応じたデータである。本体装置2は、子機のコントローラ、タッチパネル13、加速度センサ89、および角速度センサ90から所定の時間間隔(例えば、1/200秒間隔)で子機操作データを取得する。また、子機は、取得した子機操作データを所定の時間間隔(例えば、1/60秒間隔)で親機に送信する。なお、子機操作データを用いないシステム構成の場合は、子機のメモリに子機操作データが記憶されなくてもかまわない。
【0133】
子機用画像データは、子機の画面(ディスプレイ12または据置型モニタ5の画面)に表示されるゲーム画像を示す画像データであり、親機から受信したデータである。
【0134】
なお、子機には、上記ゲームプログラムは記憶されないが、親機において行われるゲームに参加するためのプログラム(親機に接続するためのプログラム、親機に参加要請を行うためのプログラム等)が記憶される。
【0135】
次に、親機および子機において行われる処理について説明する。なお、以下では、親機と各子機とが、図4に示す通信態様で接続されるものとして説明する。なお、親機と各子機とが、図5に示す通信態様で接続されてもよい。また、以下に説明する各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて(または代えて)別の処理が実行されてもよい。また、本実施例では、上記フローチャートの各ステップの処理を親機または子機のプロセッサ81が実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を、プロセッサ81以外のプロセッサや専用回路が実行するようにしてもよい。また、本体装置2において実行される処理の一部は、本体装置2と通信可能な他の情報処理装置(例えば、本体装置2とネットワークを介して通信可能なサーバ)によって実行されてもよい。すなわち、以下に説明する各処理は、本体装置2を含む複数の情報処理装置が協働することによって実行されてもよい。
【0136】
(親機処理)
図17は、ゲームシステム10において所定のゲームが行われるときの親機において行われる親機処理の一例を示すフローチャートである。図17に示す一連の処理は、親機の本体装置2のプロセッサ81が所定のアプリケーションプログラム(ゲームプログラム)を実行することによって行われる。図17に示す親機処理が開始されるタイミングは任意である。
【0137】
図17に示されるように、親機は、まず、初期処理を行う(ステップS10)。初期処理では、ユーザの操作に基づいて、実行するゲームを決定する処理、通信態様(ローカル通信またはインターネット通信)を選択する処理、情報処理装置1を親機として設定する処理、親機と子機とを接続する処理、ゲームに参加するユーザ(子機)を募集するための処理、参加要請があった子機をゲームに参加させるための処理、参加が許可された子機との間の通信遅延時間(ラウンドトリップタイム(RTT))を計測する処理等が行われる。ユーザが選択可能な通信態様は、実行されるゲームに応じて異なる。初期処理が終了した場合、親機は、ゲームを開始し、以後、ステップS11~ステップS17の処理を所定の時間間隔(例えば、1/60秒間隔)で繰り返し実行する。
【0138】
ステップS10の処理の後、親機は、親機操作データを取得する(ステップS11)。具体的には、親機は、携帯モードで動作する場合、本体装置2や自機に装着された第1のコントローラ(左コントローラ3および右コントローラ4)から親機操作データを取得する。また、親機は、据置モードまたはテーブルモードで動作する場合、本体装置2や自機に無線で接続された第1のコントローラまたは第2のコントローラから親機操作データを取得する。
【0139】
次に、親機は、各子機から子機操作データを受信する(ステップS12)。具体的には、親機のネットワーク通信部82は、子機から送信された子機操作データを受信する。なお、親機が各子機から子機操作データを受信するタイミングはそれぞれ異なってもよい。また、子機操作データを用いないシステム構成の場合、親機は、上記ステップS12における処理をスキップしてもかまわない。
【0140】
次に、親機は、親機操作データに基づいて、ゲーム処理を行う(ステップS13)。また、ステップS13において、親機は、子機操作データを用いるシステム構成の場合は、受信した子機操作データに基づいて、ゲーム処理を行う。
【0141】
例えば、ステップS13において、親機は、受信した親機操作データに基づいて、親機用のゲーム空間データを設定する。一例として、親機は、親機操作データに基づいて、親機のユーザによって操作されるプレイヤキャラクタの動作、位置、方向、姿勢、状態等を設定して、ゲーム空間における仮想的な物理演算等に基づいてプレイヤキャラクタを動作させて親機用のゲーム空間データを設定する。また、親機は、プレイヤキャラクタPCの動作やゲーム空間における仮想的な物理演算等に基づいて、敵キャラクタや他のオブジェクトの動作、位置、方向、姿勢、状態等を設定して、ゲーム空間において動作させて親機用のゲーム空間データを設定する。
【0142】
また、ステップS13において、親機は、設定された親機用のゲーム空間データに基づいて、子機用のゲーム空間データを設定する。一例として、親機は、子機用のゲーム画像の表示範囲について、上記設定した親機用のゲーム空間に対して、時間RTT/2だけ先のゲーム空間の状況を予測し、当該予測結果に基づいて子機用のゲーム空間データを設定する。
【0143】
次に、親機は、ゲーム処理の結果に基づいて、画像生成処理を行う(ステップS14)。具体的には、親機は、画像生成処理において、親機用画像データと子機用画像データとを生成する。また、親機は、親機用の音声データと子機用の音声データとを生成してもよい。
【0144】
例えば、ステップS14において、親機は、親機用のゲーム空間に親機用の仮想カメラを配置して、当該親機用の仮想カメラから見たゲーム空間の画像データを親機用ゲーム画像データとして生成する。なお、ゲーム空間における親機用の仮想カメラの位置および姿勢は、親機のユーザによって操作されるプレイヤキャラクタの位置、方向、姿勢等に基づいて設定してもよい。
【0145】
また、ステップS14において、親機は、子機用のゲーム空間に子機用の仮想カメラを配置して、当該子機用の仮想カメラから見たゲーム空間の画像データを子機用ゲーム画像データとして生成する。上述した第1および第2のシステム構成の場合、子機用の仮想カメラの位置および姿勢は、親機用の仮想カメラの位置を基準として、親機のディスプレイ12と子機のディスプレイ12との実世界における配置関係に基づいて設定されてもよい。上述した第3のシステム構成における第1の例(図12に示す例)の場合、子機用の仮想カメラの位置および姿勢は、プレイヤキャラクタの位置、方向、姿勢等(例えば、プレイヤキャラクタが所持するスコープの位置および方向)に基づいて設定してもよい。上述した第3のシステム構成における第2の例(図13および図14に示す例)の場合、子機用の仮想カメラの位置および視線方向は、親機用の仮想カメラの位置を基準とする位置および当該仮想カメラの視線方向の逆方向となる方向に設定されてもよい。この場合の子機用の仮想カメラの姿勢は、ステップS13において受信した子機操作データから算出される子機の本体装置2の姿勢変化に基づいて変化させてもよい。
【0146】
次に、親機は、ステップS14で生成した親機用画像データをディスプレイ12または据置型モニタ5に出力する(ステップS15)。また、親機は、ステップS14で生成した親機用の音声データに基づく音声をスピーカ88または据置型モニタ5のスピーカから出力させる。
【0147】
次に、親機は、ステップS14で生成した子機用画像データを子機に送信する(ステップS16)。具体的には、親機のネットワーク通信部82は、各子機に対して、生成した子機用画像データを送信する。また、親機のネットワーク通信部82は、必要に応じて、各子機に対して、生成した音声データを送信する。
【0148】
次に、親機は、ゲームを終了するか否かを判定する(ステップS17)。親機は、例えば、ゲームが完了した場合、ゲーム中に親機のユーザによってゲームの強制終了が指示された場合、または、ゲーム中に子機からゲームの強制終了に関する子機操作データを受信した場合、ステップS17でYESと判定する。親機は、ステップS17でYESと判定した場合、ゲームを終了し、各子機にゲーム終了通知を送信する。ステップS17でNOと判定した場合、親機は、再びステップS11の処理を実行する。以上で親機処理の説明を終了する。
【0149】
なお、ステップS11~ステップS17の処理が繰り返し実行されている間、すなわち、親機および子機の間で所定のゲームが行われている間、新たな子機の参加が行われてもよい。
【0150】
(子機処理)
図18は、子機において行われる子機処理の一例を示すフローチャートである。
【0151】
図18に示されるように、子機は、まず、初期処理を行う(ステップS20)。初期処理では、ユーザの操作に基づいて、情報処理装置1を子機として設定する処理、接続する親機を選択する処理、親機において行われるゲームに参加するための参加要請を送信するための処理、参加が許可された親機から送信された通信遅延時間計測のためのリクエストに対して返信する処理等が行われる。親機においてゲームが開始された場合、子機において初期処理が終了する。以後、ステップS21~ステップS24の処理が所定の時間間隔(例えば、1/60秒間隔)で繰り返し実行される。
【0152】
ゲームが開始されると、子機は、子機操作データを親機に送信する(ステップS21)。具体的には、子機は、携帯モードで動作している場合、本体装置2や自機に装着された第1のコントローラ(左コントローラ3および右コントローラ4)から出力された操作データを取得する。また、子機は、据置モードやテーブルモードで動作している場合、本体装置2や自機に接続された第1のコントローラまたは第2のコントローラから出力された操作データを取得する。そして、子機のネットワーク通信部82は、取得した操作データを子機操作データとして親機に送信する。なお、子機のコントローラから出力された操作データが、子機操作データとして親機に送信されてもよいし、子機のコントローラから出力された操作データに所定の処理を行うことによって得られたデータが、子機操作データとして親機に送信されてもよい。また、子機は、何れのモードの場合であっても、自機のタッチパネル13、加速度センサ89、および角速度センサ90から得られたデータ、または当該データに所定の処理を行うことによって得られたデータも、子機操作データとして親機に送信してもよい。また、子機操作データを用いないシステム構成の場合、子機は、ステップS21における処理をスキップしてもかまわない。
【0153】
次に、子機は、子機用画像データを親機から受信する(ステップS22)。また、必要に応じて、子機は、子機用の音声データも親機から受信してもよい。
【0154】
なお、子機による子機操作データの送信頻度と子機用画像データの受信頻度(フレームレート)とが異なってもよい。例えば、子機操作データの送信頻度よりも、子機用画像データの受信頻度が低くてもよい。また、例えば、親機に接続される子機の数に応じて、各子機の子機用画像データの受信頻度が下げられてもよい。この場合、各子機の子機用操作データの送信頻度は、親機に接続される子機の数にかかわらず同じであってもよい。
【0155】
次に、子機は、受信した子機用画像データを出力する(ステップS23)。具体的には、子機は、携帯モードまたはテーブルモードで動作している場合、受信した子機用画像データをディスプレイ12に出力する。また、子機は、据置モードで動作している場合、受信した子機用画像データを据置型モニタ5に出力する。なお、子機は、受信した音声データに基づく音声を出力してもよい。
【0156】
次に、子機は、ゲームを終了するか否かを判定する(ステップS24)。例えば、子機は、親機からゲーム終了通知を受信した場合、または、ゲーム中に子機においてゲームの強制終了が指示された場合、ゲームを終了する。ゲームが終了されない場合、子機は、再びステップS21の処理を実行する。以上で子機処理の説明を終了する。
【0157】
このように、本実施例においては、親機から子機に画像を配信する機能を有するゲームシステムにおける情報処理装置が、アタッチメントによって所定の配置に固定されることにより、新規で多様な方法でゲームを行うことが可能となる。
【0158】
なお、情報処理装置1は、どのような装置であってもよく、携帯型のゲーム装置、任意の携帯型電子機器(PDA(Personal Digital Assistant)、携帯電話、スマートフォン、パーソナルコンピュータ、カメラ、タブレット等)等であってもよい。
【0159】
また、上述した説明では情報処理(ゲーム処理)を情報処理装置1で行われる例を用いたが、上記処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、情報処理装置1がさらに他の装置(例えば、サーバ、他の情報処理装置、他の画像表示装置、他のゲーム装置、他の携帯端末)と通信可能に構成されている場合、上記処理ステップは、さらに当該他の装置が協働することによって実行してもよい。このように、上記処理ステップの少なくとも一部を他の装置で行うことによって、上述した処理と同様の処理が可能となる。また、上述した情報処理は、少なくとも1つの情報処理装置により構成される情報処理システムに含まれる1つのプロセッサまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施例においては、情報処理装置1のプロセッサ81が所定のプログラムを実行することによって情報処理を行うことが可能であるが、情報処理装置1が備える専用回路によって上記処理の一部または全部が行われてもよい。
【0160】
ここで、上述した変形例によれば、いわゆるクラウドコンピューティングのシステム形態や分散型の広域ネットワークおよびローカルネットワークのシステム形態でも本発明を実現することが可能となる。例えば、分散型のローカルネットワークのシステム形態では、据置型の情報処理装置(据置型のゲーム装置)と携帯型の情報処理装置(携帯型のゲーム装置)との間で上記処理を協働により実行することも可能となる。なお、これらのシステム形態では、上述した処理をどの装置で行うかについては特に限定されず、どのような処理分担をしたとしても本発明を実現できることは言うまでもない。
【0161】
また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる条件等は、単なる一例に過ぎず他の順序、値、条件であっても、本実施例を実現できることは言うまでもない。
【0162】
また、上記プログラムは、外部メモリ等の外部記憶媒体を通じて情報処理装置1に供給されるだけでなく、有線または無線の通信回線を通じて当該装置に供給されてもよい。また、上記プログラムは、当該装置内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、CD-ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、これらの記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
【0163】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。また、当業者は、本発明の具体的な実施例の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。
【産業上の利用可能性】
【0164】
以上のように、本発明は、新規で多様な方法でゲーム等を行うことが可能なゲームシステムおよびゲーム処理方法等として利用することができる。
【符号の説明】
【0165】
1…情報処理システム
2…本体装置
3…左コントローラ
4…右コントローラ
12…ディスプレイ
13…タッチパネル
31、41…アナログスティック
32、42…操作ボタン
34、44…センサ
81…プロセッサ
82…ネットワーク通信部
83…コントローラ通信部
84…フラッシュメモリ
85…DRAM
89…加速度センサ
90…角速度センサ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18