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

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

▶ 任天堂株式会社の特許一覧

特許7734265システム、情報処理装置、処理方法、およびプログラム
<>
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図1
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図2
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図3
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図4
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図5
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図6
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図7
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図8
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図9
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図10
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図11
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図12
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図13
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図14
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図15
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図16
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図17
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図18
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図19
  • 特許-システム、情報処理装置、処理方法、およびプログラム 図20
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-08-27
(45)【発行日】2025-09-04
(54)【発明の名称】システム、情報処理装置、処理方法、およびプログラム
(51)【国際特許分類】
   A63F 13/843 20140101AFI20250828BHJP
   A63F 13/211 20140101ALI20250828BHJP
   A63F 13/235 20140101ALI20250828BHJP
   A63F 13/52 20140101ALI20250828BHJP
   A63F 13/5372 20140101ALI20250828BHJP
   G06F 3/0481 20220101ALI20250828BHJP
【FI】
A63F13/843
A63F13/211
A63F13/235
A63F13/52
A63F13/5372
G06F3/0481
【請求項の数】 9
(21)【出願番号】P 2024500866
(86)(22)【出願日】2022-02-18
(86)【国際出願番号】 JP2022006691
(87)【国際公開番号】W WO2023157242
(87)【国際公開日】2023-08-24
【審査請求日】2024-08-07
(73)【特許権者】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(74)【代理人】
【識別番号】100130269
【弁理士】
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】片山 充
(72)【発明者】
【氏名】竹内 博是
(72)【発明者】
【氏名】瀬古 圭介
(72)【発明者】
【氏名】中野 喜崇
(72)【発明者】
【氏名】藤田 悠太
(72)【発明者】
【氏名】味水 達也
【審査官】宇佐田 健二
(56)【参考文献】
【文献】特開2015-052856(JP,A)
【文献】特表2012-529099(JP,A)
【文献】特開2006-051292(JP,A)
【文献】特開2005-198772(JP,A)
【文献】特開平07-222868(JP,A)
【文献】特開2013-205963(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-13/98,9/24
G06F 3/0346,3/048-3/04895
(57)【特許請求の範囲】
【請求項1】
ディスプレイと、
前記ディスプレイに対して複数のコントローラが存在するそれぞれの方向を測定する測定部と、
前記測定されたそれぞれの方向に応じて移動されることなく、コントローラに対するユーザ入力に応じてそれぞれ移動される複数の第1オブジェクトと、コントローラを操作するユーザおよび当該コントローラに対応する前記第1オブジェクトの少なくとも一方に関する情報を提示する複数の第2オブジェクトとを含む画像を、前記ディスプレイに表示する処理部とを備え、
前記処理部は、各コントローラに対応する前記第2オブジェクトの表示位置および向きの少なくとも一方を、当該コントローラについて測定された方向、および、当該コントローラとは別のコントローラについて測定された方向に応じて決定し
いずれかのコントローラについて決定された前記第2オブジェクトの表示位置が、当該コントローラに対応する前記第2オブジェクトの現在の表示位置とは異なるとき、所定条件の成立後に、当該コントローラに対応する前記第2オブジェクトの表示位置および向きの少なくとも一方を前記決定された表示位置および向きの少なくとも一方に変化させる、システム。
【請求項2】
前記所定条件は、いずれかのコントローラについて決定された前記第2オブジェクトの表示位置が当該コントローラに対応する第2オブジェクトの現在の表示位置とは異なる状態が所定時間継続することを含む、請求項1に記載のシステム。
【請求項3】
前記処理部は、
第1ユーザ、第2ユーザおよび第3ユーザにそれぞれ対応する3つの前記第2オブジェクトを表示する場合に、
前記第1ユーザが操作する第1コントローラ、前記第2ユーザが操作する第2コントローラ、および、前記第3ユーザが操作する第3コントローラの順で存在するそれぞれの方向が測定される第1状態から、前記第2コントローラ、前記第1コントローラ、および、前記第3コントローラの順で存在するそれぞれの方向が測定される第2状態を経て、前記第2コントローラ、前記第3コントローラ、および、前記第1コントローラの順で存在するそれぞれの方向が測定される第3状態に変化したときに、前記第2状態の時間が所定時間未満であれば、
前記ディスプレイの表示を、前記第1ユーザに対応する第2オブジェクト、前記第2ユーザに対応する第2オブジェクト、および前記第3ユーザに対応する第2オブジェクトの順に表示される第1表示状態から、前記第2ユーザに対応する第2オブジェクト、前記第1ユーザに対応する第2オブジェクト、および前記第3ユーザに対応する第2オブジェクトの順に表示される第2表示状態を経ずに、前記第2ユーザに対応する第2オブジェクト、前記第3ユーザに対応する第2オブジェクト、および前記第1ユーザに対応する第2オブジェクトの順に表示される第3表示状態に変化させる、請求項1または2に記載のシステム。
【請求項4】
前記コントローラは、動きを検出するセンサを含み、
前記処理部は、前記センサの検出値に基づいて前記所定条件の成立を判断する、請求項1に記載のシステム。
【請求項5】
前記所定条件は、前記コントローラの動きが所定範囲内にあることを含む、請求項4に記載のシステム。
【請求項6】
前記コントローラは、動きを検出するセンサを含み、
前記所定条件は、いずれかのコントローラについて決定された前記第2オブジェクトの表示位置が当該コントローラに対応する前記第2オブジェクトの現在の表示位置とは異なる状態が所定時間継続すること、および、当該コントローラの動きが所定範囲内にあることを含む、請求項1に記載のシステム。
【請求項7】
前記第1オブジェクトは、対応するコントローラの動きに応じて制御される、請求項3~5のいずれか1項に記載のシステム。
【請求項8】
ディスプレイに対して複数のコントローラが存在するそれぞれの方向を測定するステップと、
前記測定されたそれぞれの方向に応じて移動されることなく、コントローラに対するユーザ入力に応じてそれぞれ移動される複数の第1オブジェクトと、コントローラを操作するユーザおよび当該コントローラに対応する前記第1オブジェクトの少なくとも一方に関する情報を提示する複数の第2オブジェクトとを含む画像を前記ディスプレイに表示するステップと、
各コントローラに対応する前記第2オブジェクトの表示位置および向きの少なくとも一方を、当該コントローラについて測定された方向、および、当該コントローラとは別のコントローラについて測定された方向に応じて決定するステップと
いずれかのコントローラについて決定された前記第2オブジェクトの表示位置が、当該コントローラに対応する前記第2オブジェクトの現在の表示位置とは異なるとき、所定条件成立後に、当該コントローラに対応する前記第2オブジェクトの表示位置および向きの少なくとも一方を前記決定された表示位置および向きの少なくとも一方に変化させるステップを備え、処理方法。
【請求項9】
ディスプレイを有するコンピュータで実行されるプログラムであって、前記プログラムは前記コンピュータ
前記ディスプレイに対して複数のコントローラが存在するそれぞれの方向に関する情報を取得する手段と、
コントローラに対するユーザ入力に応じて、前記取得されたそれぞれの方向に応じて移動されない複数の第1オブジェクトをそれぞれ移動させる手段と、
前記取得された情報に応じて、各コントローラを操作するユーザおよび当該コントローラに対応する前記第1オブジェクトの少なくとも一方に関する情報を提示する複数の第2オブジェクトの表示位置および向きの少なくとも一方を決定す手段と
前記複数の第1オブジェクトおよび前記複数の第2オブジェクトを含む画像を生成する手段と、
いずれかのコントローラについて決定された前記第2オブジェクトの表示位置が、当該コントローラに対応する前記第2オブジェクトの現在の表示位置とは異なるとき、所定条件の成立後に、当該コントローラに対応する前記第2オブジェクトの表示位置および向きの少なくとも一方を前記決定された表示位置および向きの少なくとも一方に変化させる手段として機能させる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、システム、情報処理装置、処理方法、およびプログラムに関する。
【背景技術】
【0002】
従来から、メニュー画面やゲームに係る画面を表示する情報処理装置が知られている(例えば、特開2019-197585号公報など参照)。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2019-197585号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述した公知の装置に比較して、表示される画像の視認性を向上させる、および/または、コントローラの操作性を向上させることを目的とする。
【課題を解決するための手段】
【0005】
ある実施の形態に従うシステムは、ディスプレイと、ディスプレイに対してコントローラが存在する方向を測定する測定部と、測定された方向に応じて移動されることなく、コントローラに対するユーザ入力に応じて移動される第1オブジェクトと、コントローラを操作するユーザおよび第1オブジェクトの少なくとも一方に関する情報を提示する第2オブジェクトとを含む画像を、ディスプレイに表示する処理部とを含む。処理部は、測定された方向に応じて第2オブジェクトの表示位置および向きの少なくとも一方を変化させる。
【0006】
この構成によれば、ディスプレイに対してコントローラ(および、コントローラを操作するユーザ)が存在する方向に応じた表示位置および/または向きで、第2オブジェクトが表示されるので、ユーザに対して第2オブジェクトの視認性を向上させることができる。また、ユーザは、ディスプレイに対してコントローラ(および、コントローラを操作するユーザ)が存在する方向に応じた表示位置および/または向きで表示された第2オブジェクトを見ながら操作できるので、ユーザに対するコントローラの操作性を向上させることができる。
【0007】
処理部は、測定された方向に応じて、コントローラに対するユーザ入力と第1オブジェクトに対する操作内容との対応関係を変更するようにしてもよい。この構成によれば、ディスプレイに対してコントローラ(および、コントローラを操作するユーザ)が存在する方向に応じて、コントローラに対するユーザ入力に対応する第1オブジェクトの操作内容が変更されるので、ユーザに対するコントローラの操作性を向上させることができる。
【0008】
コントローラは、方向入力部を含んでいてもよい。処理部は、方向入力部に入力された方向と画面内における第1オブジェクトの移動方向との対応関係を変更するようにしてもよい。この構成によれば、方向入力部に対する同一のユーザ入力であっても、ディスプレイに対してコントローラ(および、コントローラを操作するユーザ)が存在する方向に応じて、第1オブジェクトに対する操作内容が変更されるので、ユーザに対するコントローラの操作性を向上させることができる。
【0009】
コントローラは、動きを検出するセンサを含んでいてもよい。処理部は、検出された動きの方向と画面内における第1オブジェクトの移動方向との対応関係を変更するようにしてもよい。この構成によれば、コントローラに対する同一の動きを与えるユーザ入力であっても、ディスプレイに対してコントローラ(および、コントローラを操作するユーザ)が存在する方向に応じて、第1オブジェクトに対する操作内容が変更されるので、ユーザに対するコントローラの操作性を向上させることができる。
【0010】
ディスプレイは、長方形であってもよい。処理部は、コントローラがディスプレイの一辺に対応する範囲内に存在していると測定されている限り対応関係を維持するとともに、コントローラがディスプレイの別の一辺に対応する範囲内に存在していると測定されると、対応関係を変更するようにしてもよい。この構成によれば、長方形のディスプレイの各辺に対応付けて、対応関係を維持および変更することで、ユーザの認識をより明確化するとともに、ユーザに対するコントローラの操作性を向上させることができる。
【0011】
処理部は、第2オブジェクトの表示位置または向きを変化させた後に、対応関係を変更するようにしてもよい。この構成によれば、第2オブジェクトの表示位置または向きを変化することで、ユーザは、ディスプレイに対してコントローラ(および、コントローラを操作するユーザ)が存在する方向が変化したことをシステムが検出したと認識できる。その上で、対応関係が変更されるので、ユーザがコントローラを操作する際の違和感を与える可能性を低減できる。
【0012】
処理部は、第2オブジェクトの表示位置として予め定められた複数の位置のうちから、測定された方向に応じて、第2オブジェクトの表示位置を選択するようにしてもよい。この構成によれば、第2オブジェクトは、予め定められた複数の位置のいずれかに表示されることになるので、コントローラ(および、コントローラを操作するユーザ)が移動した場合であっても、第2オブジェクトの表示位置が時間的に変化する可能性を低減できる。これによって、ユーザの視認性を低下させる可能性を抑制できる。
【0013】
処理部は、複数のユーザ毎に第2オブジェクトをそれぞれ表示する場合に、各ユーザに対応付けられたコントローラの方向に応じて、複数の位置のうちから、ユーザ毎の第2オブジェクトの表示位置を割り当てるようにしてもよい。この構成によれば、コントローラ間の相対的な位置関係あるいは配置順序に従って、第2オブジェクトの表示位置を決定できるので、限られた表示スペースであっても、ユーザに与える違和感を抑制できる。
【0014】
処理部は、測定された方向に対応する第2オブジェクトの表示位置が、現在の第2オブジェクトの表示位置とは異なるとき、所定条件成立後に、第2オブジェクトの表示位置を測定された方向に対応する表示位置に変化させるようにしてもよい。この構成によれば、コントローラ(および、コントローラを操作するユーザ)が頻繁に移動した場合であっても、第2オブジェクトの表示位置が頻繁に変化することを抑制できる。これによって、ユーザに与える違和感を抑制できる。
【0015】
所定条件成立は、所定時間の経過であってもよい。この構成によれば、時間を計測することで、所定条件が成立したか否かを判断できる。
【0016】
処理部は、3以上のユーザ毎に第2オブジェクトをそれぞれ表示する場合に、測定された方向に応じて、隣接する第2オブジェクトの並び替えだけではなく、任意の順序で第2オブジェクトの表示位置を変化させるようにしてもよい。この構成によれば、コントローラ(および、コントローラを操作するユーザ)の配置順序を反映した第2オブジェクトの表示を実現できる。
【0017】
第1オブジェクトは、測定された方向に応じて移動されないことに加えて、向きも変化しないようにしてもよい。この構成によれば、複数のユーザがディスプレイを見てゲームやアプリケーションをプレイする場合において、コントローラ(および、コントローラを操作するユーザ)が移動しても、第1オブジェクトの表示位置および向きは維持されるので、ユーザに与える違和感を低減しつつ、コントローラの操作性を維持できる。
【0018】
別の実施の形態に従う情報処理装置は、ディスプレイと、ディスプレイに対してコントローラが存在する方向を測定する測定部と、測定された方向に応じて移動されることなく、コントローラに対するユーザ入力に応じて移動される第1オブジェクトと、コントローラを操作するユーザおよび第1オブジェクトの少なくとも一方に関する情報を提示する第2オブジェクトとを含む画像を、ディスプレイに表示する処理部とを含む。処理部は、測定された方向に応じて第2オブジェクトの表示位置および向きの少なくとも一方を変化させる。
【0019】
さらに別の実施の形態に従う処理方法は、ディスプレイに対してコントローラが存在する方向を測定するステップと、測定された方向に応じて移動されることなく、コントローラに対するユーザ入力に応じて移動される第1オブジェクトと、コントローラを操作するユーザおよび第1オブジェクトの少なくとも一方に関する情報を提示する第2オブジェクトとを含む画像をディスプレイに表示するステップと、測定された方向に応じて第2オブジェクトの表示位置および向きの少なくとも一方を変化させるステップとを含む。
【0020】
さらに別の実施の形態に従えば、ディスプレイを有するコンピュータで実行されるプログラムが提供される。プログラムはコンピュータに、ディスプレイに対してコントローラが存在する方向を測定するステップと、測定された方向に応じて移動されることなく、コントローラに対するユーザ入力に応じて移動される第1オブジェクトと、コントローラを操作するユーザおよび第1オブジェクトの少なくとも一方に関する情報を提示する第2オブジェクトとを含む画像をディスプレイに表示するステップと、測定された方向に応じて第2オブジェクトの表示位置および向きの少なくとも一方を変化させるステップとを実行させる。
【発明の効果】
【0021】
本開示によれば、表示される画像の視認性、および/または、コントローラの操作性をさらに向上させることができる。
【図面の簡単な説明】
【0022】
図1】本実施の形態に従うシステムの構成例を示す模式図である。
図2】本実施の形態に従うシステムのゲーム装置のハードウェア構成例を示す模式図である。
図3】本実施の形態に従うシステムのコントローラのハードウェア構成例を示す模式図である。
図4】本実施の形態に従うシステムの方向測定の原理を説明するための図である。
図5】一方向に複数のアンテナ素子を配置したアンテナモジュールの一例を示す模式図である。
図6】二方向に複数のアンテナ素子を配置したアンテナモジュールの一例を示す模式図である。
図7】本実施の形態に従うシステムの近距離通信部の構成例を示す模式図である。
図8】本実施の形態に従うシステムのコントローラが送信するフレームの構成例を示す模式図である。
図9】本実施の形態に従うシステムのゲーム装置が出力する画面例を示す模式図である。
図10】本実施の形態に従うシステムのゲーム装置が出力する別の画面例を示す模式図である。
図11図10に示す画面例におけるコントローラに対するユーザ入力と操作に対する操作内容との対応関係の一例を説明するための図である。
図12図10に示す画面例におけるコントローラに対するユーザ入力と操作に対する操作内容との対応関係の一例を説明するための図である。
図13図10に示す画面例におけるコントローラに対するユーザ入力と操作に対する操作内容との対応関係の別の一例を説明するための図である。
図14】本実施の形態に従うシステムのゲーム装置が有しているユーザ操作定義の一例を示す模式図である。
図15】本実施の形態に従うシステムのゲーム装置が有しているユーザ操作定義の選択処理の一例を説明するための図である。
図16】本実施の形態に従うシステムにおいて予め定められた複数の位置に情報提示オブジェクトが表示される画面例を示す模式図である。
図17】本実施の形態に従うシステムにおける情報提示オブジェクトの表示を変化させる処理の一例を説明するための図である。
図18】本実施の形態に従うシステムにおいて情報提示オブジェクトが表示される予め定められた複数の位置の一例を示す模式図である。
図19】本実施の形態に従うシステムのゲーム装置が実行する処理手順を示すフローチャートである。
図20図19に示す方向測定の処理手順を示すフローチャートである。
【発明を実施するための形態】
【0023】
本実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
【0024】
[A.構成例]
まず、本実施の形態に従うシステム1の構成例について説明する。
【0025】
以下の説明においては、ゲーム装置を情報処理装置として一例にして説明するが、情報処理装置としては、ゲーム装置に限定されることなく、スマートフォン、タブレット、パーソナルコンピュータなどの任意のコンピュータを採用できる。また、情報処理装置としては、携帯型の装置に限らず、据置型の装置であってもよい。
【0026】
図1は、本実施の形態に従うシステム1の構成例を示す模式図である。図1を参照して、システム1は、ゲーム装置100と、1または複数のコントローラ200とを含む。
【0027】
本明細書において、「コントローラ」は、ユーザ入力を受け付ける装置を包含する用語であり、ゲーム用のコントローラに限定されることなく、例えば、キーボード、マウス、ペンダブレットなどの汎用的な入力装置や、特定の用途に用いられる操作装置を包含する。
【0028】
ゲーム装置100は、コントローラ200の各々と無線信号を用いてデータをやり取りする。すなわち、コントローラ200は、ユーザ入力に応じた無線信号を送信する。
【0029】
コントローラ200は、ゲーム装置100に装着可能であってもよい。本実施の形態では、ゲーム装置100の両側にコントローラ200がそれぞれ装着される。ゲーム装置100にコントローラ200が装着された状態では、ゲーム装置100は、コントローラ200と電気的に接続可能であってもよい。このとき、有線通信でデータをやり取りするようにしてもよい。なお、ゲーム装置100にコントローラ200が装着された状態でも、無線通信でデータをやり取りするようにしてもよい。
【0030】
説明の便宜上、コントローラ200間の構造および機能の差には言及しないが、ゲーム装置100に装着される側(左側/右側)に応じて、コントローラ200の構造および機能を異ならせてもよい。
【0031】
ゲーム装置100は、任意の画像を表示するディスプレイ106と、ユーザ入力を受け付けるタッチパネル108とを有している。
【0032】
ゲーム装置100は、コントローラ200からの無線信号を受信するためのアンテナモジュール124を有している。アンテナモジュール124は、ゲーム装置100のいずれの位置に配置されてもよいが、例えば、ディスプレイ106の表示面と平行となるように配置される。
【0033】
コントローラ200の各々は、ユーザ入力を受け付ける操作部210を有している。操作部210は、例えば、押ボタン、十字キー、操作レバーなどで構成される。図1に示す例において、操作部210は、方向入力部212と、操作ボタン214とを含む。
【0034】
方向入力部212は、一例として、アナログスティックである。なお、別の実施の形態では、方向入力部212は、スライドパッドやタッチパッド、十字キー、あるいは各方向に対応する4つボタンであってもよい。さらに別の実施の形態では、方向入力部212は、光学式センサであってもよい。例えば、マウスにおける光学式センサや、ペン式コントローラにおける光学式センサであってもよい。さらにまた別の実施の形態では、方向入力部212は、カメラまたはカメラに撮像される被写体であって、カメラにより撮像される被写体の画像認識によって方向入力を認識するものであってもよい。
【0035】
図2は、本実施の形態に従うシステム1のゲーム装置100のハードウェア構成例を示す模式図である。図2を参照して、ゲーム装置100は、プロセッサ102と、メモリ104と、ディスプレイ106と、タッチパネル108と、ストレージ110と、近距離通信部120と、アンテナモジュール124と、無線通信部126と、スピーカ128と、マイク130と、ジャイロセンサ132と、第1コントローラインターフェイス134と、第2コントローラインターフェイス136と、クレードルインターフェイス138と、メモリカードインターフェイス140とを含む。
【0036】
プロセッサ102は、ゲーム装置100が提供する処理を実行するための処理主体である。メモリ104は、プロセッサ102がアクセス可能な記憶装置であり、例えば、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)といった揮発性記憶装置である。ストレージ110は、例えば、フラッシュメモリなどの不揮発性記憶装置である。
【0037】
プロセッサ102は、ストレージ110に格納されているプログラムを読み込んでメモリ104に展開して実行することで、後述するような処理を実現する。ストレージ110には、例えば、任意の情報処理を実現するための命令コードからなるアプリケーションプログラム112と、プログラム実行に必要なライブラリなどを提供するシステムプログラム114とが格納されている。
【0038】
プロセッサ102は、ゲーム装置100において必要な処理を実行することになる。以下の説明では、このような処理のうち、特に、ディスプレイに表示あるいは出力される画像を生成する処理に着目する。すなわち、プロセッサ102は、画像をディスプレイ106に表示する処理部に相当する。
【0039】
アプリケーションプログラム112は、後述するような、コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係を定義するユーザ操作定義116を含む。ユーザ操作定義116は、複数種類の対応関係を含む。
【0040】
近距離通信部120は、1または複数のコントローラ200との間で無線信号を送受信する。近距離通信部120には、例えば、Bluetooth(登録商標)、ZigBee(登録商標)、無線LAN(IEEE802.11)、赤外線通信などの任意の無線方式を採用できる。以下の説明においては、近距離通信部120の無線方式として、Bluetoothを採用した例を示す。
【0041】
アンテナモジュール124は、1または複数のコントローラ200から送信される無線信号を受信する。なお、近距離通信部120が無線信号を送受信するためのアンテナとして、アンテナモジュール124を配置してもよいし、近距離通信部120が無線信号を送受信するための通常のアンテナに加えて、アンテナモジュール124を追加的に配置してもよい。
【0042】
近距離通信部120は、ディスプレイ106に対してコントローラ200が存在する方向(すなわち、ゲーム装置100から見てコントローラ200が存在する方向)を測定する方向測定部122を有している。より具体的には、方向測定部122は、アンテナモジュール124が受信するコントローラ200からの無線信号に基づいて、当該無線信号を送信したコントローラ200が存在する方向を測定する。なお、方向測定部122が提供する機能は、近距離通信部120により提供されてもよいし、近距離通信部120とプロセッサ102とが連係することで提供されてもよい。方向測定部122による測定処理の詳細については後述する。
【0043】
無線通信部126は、インターネットなどに接続された無線中継器と無線信号を用いてデータをやり取りする。無線通信部126には、例えば、無線LAN(IEEE802.11)、公衆無線回線(4Gや5Gなど)などの任意の無線方式を採用できる。
【0044】
スピーカ128は、ゲーム装置100の周囲に任意の音を発生させる。マイク130は、ゲーム装置100の周囲に生じている音を収集する。
【0045】
ジャイロセンサ132は、ゲーム装置100の姿勢を検出する。
第1コントローラインターフェイス134および第2コントローラインターフェイス136は、コントローラ200がゲーム装置100に装着された状態において、装着されたコントローラ200との間でデータをやり取りする。
【0046】
クレードルインターフェイス138は、ゲーム装置100がクレードル(図示しない)に載置された状態において、クレードルとの間でデータをやり取りする。
【0047】
メモリカードインターフェイス140は、着脱可能なメモリカード142からメモリカード142に格納されているデータを読み出すとともに、メモリカード142にデータを書き込む。メモリカード142には、アプリケーションプログラムなどが格納されていてもよい。
【0048】
図3は、本実施の形態に従うシステム1のコントローラ200のハードウェア構成例を示す模式図である。図3を参照して、コントローラ200は、プロセッサ202と、メモリ204と、操作部210と、加速度センサ206と、近距離通信部220と、本体通信部230とを含む。
【0049】
プロセッサ202は、プログラムをメモリ204に展開して実行することで、コントローラ200に必要な処理を実現する。
【0050】
操作部210は、ユーザ入力に応じた信号を生成する。加速度センサ206は、コントローラ200の動きを検出するセンサであり、コントローラ200に生じた加速度に応じた信号を生成する。
【0051】
近距離通信部220は、ゲーム装置100との間で無線信号を送受信する。
本体通信部230は、コントローラ200がゲーム装置100に装着された状態において、ゲーム装置100との間でデータをやり取りする。
【0052】
本明細書において、「プロセッサ」との用語は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、GPU(Graphics Processing Unit)などのプログラムに記述された命令コードに従って処理を実行する処理回路という通常の意味に加えて、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などのハードワイヤード回路も包含する。ASICやFPGAなどのハードワイヤード回路は、実行すべき処理に対応する回路が予め形成されている。さらに、本明細書の「プロセッサ」は、SoC(System on Chip)などの複数の機能が集約された回路も包含するし、狭義のプロセッサとハードワイヤード回路との組み合わせも包含する。
【0053】
[B.方向測定]
次に、本実施の形態に従うシステム1が実行可能な方向測定について説明する。
【0054】
本実施の形態に従うシステム1において、ゲーム装置100は、コントローラ200から受信する無線信号に基づいて、コントローラ200が存在する方向を測定する機能を有している。より具体的には、ゲーム装置100は、離れた位置に配置された複数のアンテナ素子で無線信号をそれぞれ受信したときに生じる位相差に基づいて、コントローラ200が存在する方向を算出する。
【0055】
図4は、本実施の形態に従うシステム1の方向測定の原理を説明するための図である。図4を参照して、アンテナモジュール124は、複数のアンテナ素子125-1,125-2(以下、「アンテナ素子125」と総称することもある。)を有している。
【0056】
ゲーム装置100とコントローラ200との間の距離は無線信号の波長に対して十分に長いので、コントローラ200から送信される無線信号は、平面波とみなすことができる。そのため、コントローラ200から送信される無線信号の等位相面240は、コントローラ200と、アンテナ素子125-1とアンテナ素子125-2との中心Oとを結ぶ直線(アンテナ素子125-1およびアンテナ素子125-2を結ぶ直線に対して角度θをなす直線)と直交する。なお、角度θは、アンテナモジュール124に対して無線信号が入射する角度であり、到来角とも称される。
【0057】
図4に示す例において、アンテナ素子125-1は、位相φ1の等位相面240と交わり、アンテナ素子125-2は、位相φ4の等位相面240と交わる。すなわち、アンテナ素子125-1で受信される無線信号とアンテナ素子125-2で受信される無線信号との間では、|位相φ1-位相φ4|の位相差Δφが生じることになる。この位相差Δφは、角度θおよび素子間距離dに依存することになる。
【0058】
より具体的には、無線信号の波長をλとすると、以下のような関係式が成立する。
Δφ=2π×(d×cos(θ)/λ)
この関係式を角度θ(到来角)について整理すると、以下のように表すことができる。
【0059】
θ=cos-1((Δφ×λ)/(2π×d))
ここで、無線信号の波長λおよび素子間距離dは既知であるので、2つのアンテナ素子125で受信された無線信号に生じる位相差Δφに基づいて、コントローラ200が存在する方向(角度θ)を算出できる。
【0060】
アンテナモジュール124は、2つ以上のアンテナ素子125は有していればよいが、より多くのアンテナ素子125を用いることで、測定精度を高めることができる。
【0061】
図5は、一方向に複数のアンテナ素子125を配置したアンテナモジュール124の一例を示す模式図である。図5に示すアンテナモジュール124は、X軸に沿って一列に配置された4つのアンテナ素子125-1~125-4を有している。このようなアンテナ素子125の配置においては、X軸に対する到来角(1次元)を測定できる。より具体的には、2つのアンテナモジュール124を用いることで、当該2つのアンテナモジュール124の中心から見たコントローラ200から送信された無線信号の到来角を測定できる。なお、任意の隣接する2つのアンテナ素子125を選択してもよいし、隣接する2つのアンテナ素子125を順次選択するようにしてもよい。あるいは、他の実施の形態では、互いに隣接しない2つのアンテナ素子を任意に選択してもよい。
【0062】
図5に示す例において、アンテナ素子125-1とアンテナ素子125-2とを選択することで角度θ1を測定でき、アンテナ素子125-2とアンテナ素子125-3とを選択することで角度θ2を測定でき、アンテナ素子125-3とアンテナ素子125-4とを選択することで角度θ3を測定できる。
【0063】
測定されたそれぞれの角度から無線信号を送信したコントローラ200の方向に加えて、コントローラ200の位置(あるいは、距離)を測定できる。なお、測定される方向および位置は、いずれもディスプレイ106に対する相対的な値となる。そのため、本明細書において、「方向」を測定するという処理は、「位置」を測定するという処理を含み得る。
【0064】
図6は、二方向に複数のアンテナ素子125を配置したアンテナモジュール124の一例を示す模式図である。図6に示すアンテナモジュール124は、X軸およびY軸にそれぞれ沿って配置された4×4のアンテナ素子125-11~125-44を有している。このようなアンテナ素子125の配置においては、X軸およびY軸に対する到来角(2次元)を測定できる。
【0065】
より具体的には、X軸の同一列に配置された2つのアンテナモジュール124を用いることで、コントローラ200から送信された無線信号の到来角をX軸に対する成分を測定できる。同様に、Y軸の同一列に配置された2つのアンテナモジュール124を用いることで、コントローラ200から送信された無線信号の到来角をY軸に対する成分を測定できる。
【0066】
図6に示す例において、アンテナ素子125-11とアンテナ素子125-12とを選択することで、到来角のX軸に対する成分である角度θxを測定でき、アンテナ素子125-34とアンテナ素子125-44とを選択することで、到来角のY軸に対する成分である角度θyを測定できる。
【0067】
図5と同様に、アンテナ素子125の組み合わせを異ならせて複数回の測定を行うことで、コントローラ200の方向に加えて、コントローラ200の位置(あるいは、距離)を測定できる。
【0068】
上述したような方向測定には、同一の無線信号を複数のアンテナ素子125で受信する必要がある。複数の受信回路を用意してもよいが、共通の受信回路に対して、複数のアンテナ素子125のうち受信に用いるアンテナ素子125を順次切り替えるようにしてもよい。
【0069】
図7は、本実施の形態に従うシステム1の近距離通信部120の構成例を示す模式図である。図7には、方向測定部122が近距離通信部120の構成の一部として実装されている例を示す。
【0070】
図7を参照して、近距離通信部120は、マルチプレクサ1221と、検波器1222と、差分器1223と、遅延素子1224と、角度算出部1225と、制御部1226と、デコーダ1227とを含む。方向測定部122は、主として、差分器1223と、遅延素子1224と、角度算出部1225と、制御部1226とからなる。
【0071】
マルチプレクサ1221は、制御部1226からの選択指令に従って、複数のアンテナ素子125のうち1つのアンテナ素子125を選択する。
【0072】
検波器1222は、マルチプレクサ1221を介して接続されているアンテナ素子125で受信された無線信号を復号して、復号された信号を出力する。
【0073】
差分器1223は、検波器1222から出力された信号間の位相差を算出する。差分器1223の一方には、検波器1222から出力される信号が直接入力され、差分器1223の他方には、検波器1222から出力される信号が遅延素子1224を経て入力される。遅延素子1224の遅延時間は、マルチプレクサ1221による選択時間に応じて設定される。すなわち、差分器1223には、現在選択されているアンテナ素子125で受信された無線信号を復号して得られた信号と、1つ前に選択されていたアンテナ素子125で受信された無線信号を復号して得られた信号とが入力される。
【0074】
角度算出部1225は、差分器1223が算出する位相差から角度(到来角)を算出する。角度算出部1225には、素子間距離dおよび波長λが予め設定されている。
【0075】
制御部1226は、マルチプレクサ1221に対して選択指令を出力するとともに、選択指令に応じて角度算出部1225が順次算出する角度を統計処理(例えば、平均処理や外れ値除外処理など)することで、コントローラ200が存在する方向を示す測定結果を出力する。測定結果は、コントローラ200が存在する方向を示す1次元の角度または2次元の角度に加えて、コントローラ200までの距離を含んでいてもよい。
【0076】
デコーダ1227は、検波器1222から出力された信号からフレームを再構成する。また、デコーダ1227は、フレームに含まれる情報に基づいて、無線信号の送信元を特定するための識別情報を制御部1226へ出力する。
【0077】
図8は、本実施の形態に従うシステム1のコントローラ200が送信するフレームの構成例を示す模式図である。
【0078】
図8を参照して、フレーム250は、プリアンブル251と、宛先アドレス252と、データ253と、CRC254と、方向測定用データ256とを含む。プリアンブル251、宛先アドレス252、データ253、およびCRC254が実体的なフレーム255に相当する。
【0079】
方向測定用データ256は、複数の一定値(通常は、「1」)を含む。方向測定用データ256に含まれる値は時間的に変化しないので、無線信号としては、位相および振幅が時間的に変化しない正弦波となる。この正弦波を用いて、上述したような方向測定が行われる。
【0080】
宛先アドレス252は、無線信号を送信したコントローラ200を特定するための識別情報を含んでいるので、ゲーム装置100に複数のコントローラ200が接続されている場合において、コントローラ200毎に方向を測定できる。すなわち、宛先アドレス252に含まれる情報に基づいて、いずれのコントローラ200からの無線信号であるかを特定した上で、特定したコントローラ200が存在する方向を測定する。
【0081】
[C.方向測定の測定結果を用いた画面表示例]
次に、上述した方向測定の測定結果を用いたいくつかの画面表示例について説明する。
【0082】
本実施の形態に従うシステム1において、ゲーム装置100は、ディスプレイ106に対してコントローラ200が存在する方向に基づいた画像の生成が可能である。
【0083】
図9は、本実施の形態に従うシステム1のゲーム装置100が出力する画面例を示す模式図である。図9には、ゲーム装置100をスタンド144で支持して、ディスプレイ106が横向きまたは斜め上向きになるように載置した状態で、1または複数のユーザがディスプレイ106に表示される画像を見ながら、コントローラ200を操作する例を示す。なお、図9に示すような使用形態を、以下では、「立脚モード」と称することもある。
【0084】
図9(A)を参照して、ゲーム装置100のディスプレイ106に表示される画像450は、コントローラ200に対するユーザ入力に応じて移動させる操作オブジェクト401~404を含む。すなわち、ユーザAは、コントローラ200Aを用いて操作オブジェクト401を操作し、ユーザBは、コントローラ200Bを用いて操作オブジェクト402を操作し、ユーザCは、コントローラ200Cを用いて操作オブジェクト403を操作し、ユーザDは、コントローラ200Dを用いて操作オブジェクト404を操作している。
【0085】
画像450は、ユーザおよび/または操作オブジェクトの少なくとも一方に関する情報を提示する情報提示オブジェクト411~414をさらに含む。図9に示す例において、情報提示オブジェクト411~414は、対応するユーザが操作する操作オブジェクト401~404のプレイヤ名およびスコアを含む。
【0086】
このように、ゲーム装置100(プロセッサ102)は、操作オブジェクトおよび情報提示オブジェクトを含む画像をディスプレイ106に表示する。
【0087】
本明細書において、「操作オブジェクト」は、第1オブジェクトに相当し、コントローラ200(あるいは、タッチパネル108など)に対するユーザ入力に応じて操作されるオブジェクトを意味する。操作オブジェクトは、プレイヤキャラクタと称されてもよい。なお、操作オブジェクトは、コントローラ200に対するユーザ入力に応じて移動されるが、測定された方向に応じて移動されない。但し、操作オブジェクトは、測定された方向に応じて表示位置および/または向きを変化させないようにしてもよいし、変化させるようにしてもよい。このように、操作オブジェクトは、測定された方向に応じて移動されないことに加えて、向きも変化しないようにしてもよい。
【0088】
本明細書において、「情報提示オブジェクト」は、第2オブジェクトに相当し、コントローラ200を操作するユーザおよび操作オブジェクトの少なくとも一方に関する情報を提示するオブジェクトを意味する。すなわち、情報提示オブジェクトは、ゲーム装置100がアプリケーションを進行する際に、ユーザに対して必要な情報を提供するためのオブジェクトを包含する。情報提示オブジェクトは、例えば、ユーザ名、ユーザに割り当てられているプレイヤ名、コントローラ200(あるいは、コントローラ200を操作するユーザ)が存在する方向を示す矢印、操作オブジェクトの状態値(例えば、体力値や経験値など)を含む。このように、情報提示オブジェクトは、実行されているゲームやアプリケーションの進行に影響を与えるオブジェクトではなく、単なる情報を提供するためのオブジェクトともみなすことができる。
【0089】
なお、情報提示オブジェクトは、ユーザ入力に応じて表示位置および/または向きは変化されない。但し、別の実施の形態では、情報提示オブジェクトは、ユーザ入力に応じて表示位置および/または向きが変化されてもよい。なお、ユーザ入力に応じて表示位置および/または向きが変化されるとは、情報提示オブジェクトの表示位置および/または向きが操作オブジェクトに関連付けられており、ユーザ入力に応じて操作オブジェクトの表示位置および/または向きが変化されるのに応じて、情報提示オブジェクトの表示位置および/または向きが変化される場合や、情報提示オブジェクトの表示位置および/または向きが、操作オブジェクトとは独立して変化される場合を含む。前者に関して、例えば、操作オブジェクトに対して所定の表示位置および/または向きで表示される、ユーザが操作する操作オブジェクトを示す矢印を含む。
【0090】
本実施の形態では、ディスプレイ106に表示される画像は、操作オブジェクトおよび情報提示オブジェクトを含み得るが、情報提示オブジェクトの表示位置および/または向きは、測定された方向に応じて変化する。
【0091】
図9(A)に示す例において、情報提示オブジェクト411~414の表示位置は、ディスプレイ106に対する、ユーザA~D(コントローラ200A~200D)が存在する方向を反映した画像450となっている。すなわち、ディスプレイ106に向かって左側から、コントローラ200A、コントローラ200B、コントローラ200C、コントローラ200Dの順に存在しており、この位置関係に対応して、ディスプレイ106には、左側から、情報提示オブジェクト411、情報提示オブジェクト412、情報提示オブジェクト413、情報提示オブジェクト414の順で表示されている。
【0092】
図9(B)には、一例として、ユーザBとユーザCとの間で位置が入れ替わった状態を示している。この結果、コントローラ200Bおよびコントローラ200Cが存在する方向が変化するので、ゲーム装置100は、情報提示オブジェクト412および情報提示オブジェクト413の表示位置を変化させた画像451をディスプレイ106に表示する。
【0093】
このように、ゲーム装置100は、測定されたコントローラ200が存在する方向に応じて、情報提示オブジェクトの表示位置を変化させる。
【0094】
図10は、本実施の形態に従うシステム1のゲーム装置100が出力する別の画面例を示す模式図である。図10には、ディスプレイ106が上向きになるように載置した状態で、1または複数のユーザがディスプレイ106に表示される画像を見ながら、コントローラ200を操作する例を示す。なお、図10に示すような使用形態を、以下では、「平置きモード」と称することもある。
【0095】
図10に示すような使用形態では、ディスプレイ106の周囲にユーザが存在することになる。図10に示す例において、ディスプレイ106の周囲にユーザA~Dが存在しており、各ユーザがコントローラ200を操作して、ゲームなどをプレイする場合を想定する。
【0096】
図10を参照して、ゲーム装置100のディスプレイ106に表示される画像452は、コントローラ200に対するユーザ入力に応じて操作させる操作オブジェクト421~424を含む。画像452は、ユーザおよび/または操作オブジェクトの少なくとも一方に関する情報を提示する情報提示オブジェクト431~434をさらに含む。図10に示す例において、情報提示オブジェクト431~434は、対応するユーザに割り当てられているプレイヤ名および対応するユーザのスコアを含む。
【0097】
情報提示オブジェクト431~434の表示位置および向きは、ディスプレイ106に対するユーザA~D(コントローラ200A~200D)の存在位置に応じたものとなっている。
【0098】
より具体的には、ユーザA向けの情報を含む情報提示オブジェクト431は、コントローラ200Aが存在する方向に対応する表示位置および向きに配置されている。同様に、ユーザB向けの情報を含む情報提示オブジェクト432は、コントローラ200Bが存在する方向に対応する表示位置および向きに配置されており、ユーザC向けの情報を含む情報提示オブジェクト433は、コントローラ200Cが存在する方向に対応する表示位置および向きに配置されており、ユーザD向けの情報を含む情報提示オブジェクト434は、コントローラ200Dが存在する方向に対応する表示位置および向きに配置されている。
【0099】
なお、ディスプレイ106に表示される全体としてのゲーム画面自体は、コントローラ200が存在する方向に応じて位置および向きは変更されない。
【0100】
このように、ゲーム装置100は、測定されたコントローラ200が存在する方向に応じて、情報提示オブジェクトの表示位置および向きを変化させる。
【0101】
なお、図9には、測定された方向に応じて、情報提示オブジェクトの表示位置を変化させる例を示し、図10には、測定された方向に応じて、情報提示オブジェクトの表示位置および向きを変化させる例を示したが、測定された方向に応じて、情報提示オブジェクトの(表示位置を維持したまま)向きのみを変化させるようにしてもよいし、情報提示オブジェクトの向きを維持したまま表示位置のみを変化させるようにしてもよい。
【0102】
このように、測定されたコントローラ200が存在する方向に応じて、情報提示オブジェクトの表示位置および/または向きが変化するため、当該コントローラ200を操作するユーザにとっても、当該情報提示オブジェクトの視認性を向上できる。また、ユーザは、当該情報提示オブジェクトを参照しながらコントローラ200を操作するため、操作性を向上できる。
【0103】
[D.方向測定の測定結果に応じた操作内容の変更]
次に、上述した方向測定の測定結果に応じたユーザ操作に対応する操作オブジェクトの操作内容を変更するいくつかの例について説明する。
【0104】
ゲーム装置100は、測定された方向に応じて、コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係を変更してもよい。すなわち、ゲーム装置100は、測定された方向に応じて、コントローラ200に対するユーザ入力に対応するユーザ操作の解釈を変更してもよい。より具体的には、コントローラ200(あるいは、コントローラ200を操作するユーザ)が存在する位置とディスプレイ106との相対関係を反映して、コントローラ200に対する同一のユーザ操作に対応する操作オブジェクトの操作を異ならせてもよい。
【0105】
図11および図12は、図10に示す画面例におけるコントローラ200に対するユーザ入力と操作に対する操作内容との対応関係の一例を説明するための図である。図11を参照して、例えば、画像452に含まれる操作オブジェクト421は、コントローラ200Aから操作可能であるとする。
【0106】
図11に示す例において、コントローラ200Aを持ったユーザAは、ディスプレイ106の下側(方向指標10に示される「下」側)の辺に対応する範囲内に存在している。
【0107】
ユーザAは、コントローラ200Aを横長方向に把持する。この状態で、ユーザAがコントローラ200Aの方向入力部212を上方向(操作方向261)に押し込む入力操作を行うと、ゲーム装置100は、操作オブジェクト421を方向426に移動させる操作として解釈する。また、図11に示す例において、操作オブジェクト421を方向427に移動させるためには、ユーザAはコントローラ200Aの方向入力部212を右方向(操作方向262)に押し込む入力操作を行う必要がある。
【0108】
一方、図12に示すように、コントローラ200Aを持ったユーザAがディスプレイ106の左側の辺(方向指標10に示される「左」側)に対応する範囲内に移動した場合を想定する。ユーザAの移動に応じて、ユーザAに対応する情報提示オブジェクト431の表示位置および向きが変化する。
【0109】
この状態において、ユーザAがコントローラ200Aの方向入力部212を上方向(操作方向261)に押し込む入力操作を行うと、ゲーム装置100は、操作オブジェクト421を方向426ではなく、方向427に移動させる操作として解釈する。また、図12に示す例において、操作オブジェクト421を方向426に移動させるためには、ユーザAはコントローラ200Aの方向入力部212を左方向(操作方向263)に押し込む入力操作を行う必要がある。
【0110】
このように、ゲーム装置100は、コントローラ200の方向入力部212に対する同一のユーザ入力に対して、操作オブジェクトに対して異なる操作内容を決定する。すなわち、ゲーム装置100は、方向入力部212に入力された方向と画面内における操作オブジェクトの移動方向との対応関係を変更する。
【0111】
図13は、図10に示す画面例におけるコントローラ200に対するユーザ入力と操作に対する操作内容との対応関係の別の一例を説明するための図である。図13を参照して、例えば、画像452に含まれる操作オブジェクト421は、コントローラ200Aから操作可能であるとする。
【0112】
図13(A)に示す例において、コントローラ200Aを持ったユーザAは、ディスプレイ106の下側(方向指標10に示される「下」側)の辺に対応する範囲内に存在している。ユーザAがコントローラ200Aを前方にスイングする入力操作を行うと、コントローラ200Aの加速度センサ206がユーザAによるユーザ入力に応じた信号を出力する。そして、ゲーム装置100は、当該ユーザ入力を、操作オブジェクト421を方向426に移動させる操作として解釈する。
【0113】
一方、図13(B)に示すように、コントローラ200Aを持ったユーザAがディスプレイ106の左側(方向指標10に示される「左」側)の辺に対応する範囲内に移動した場合を想定する。ユーザAの移動に応じて、ユーザAに対応する情報提示オブジェクト431の表示位置および向きが変化する。
【0114】
この状態において、ユーザAがコントローラ200Aを前方にスイングする入力操作を行うと、コントローラ200Aの加速度センサ206がユーザAによるユーザ入力に応じた信号を出力する。そして、ゲーム装置100は、当該ユーザ入力を、操作オブジェクト421を方向426ではなく、方向427に移動させる操作として解釈する。
【0115】
このように、コントローラ200に対する同一のユーザ入力に対して、操作オブジェクトに対して異なる操作内容を決定する。すなわち、ゲーム装置100は、検出されたコントローラ200の動きの方向と画面内における操作オブジェクトの移動方向との対応関係を変更する。
【0116】
図14は、本実施の形態に従うシステム1のゲーム装置100が有しているユーザ操作定義116の一例を示す模式図である。図14を参照して、ユーザ操作定義116は、例えば、ディスプレイ106の各辺に応じて、4種類の定義が用意されていてもよい。各定義は、方向入力部212に対して入力可能な複数の方向(例えば、上方向、下方向、左方向、右方向)にそれぞれ割り当たられた操作オブジェクトに対する操作内容と、操作ボタン214(例えば、Aボタン、Bボタン、Xボタン、Yボタン)にそれぞれ割り当たられた操作オブジェクトに対する操作内容と、加速度センサ206による検出信号(例えば、前方向スイング、後方向スイング)にそれぞれ割り当たられた操作オブジェクトに対する操作内容とを含む。
【0117】
ゲーム装置100は、コントローラ200の測定された方向に応じて、複数の定義のうちいずれかの定義を選択する。
【0118】
図15は、本実施の形態に従うシステム1のゲーム装置100が有しているユーザ操作定義116の選択処理の一例を説明するための図である。図15を参照して、長方形のディスプレイ106の各辺に対応付けて、ユーザ操作定義116に含まれる各定義を割り当ててもよい。
【0119】
例えば、ユーザがディスプレイ106の下側(方向指標10に示される「下」側)の辺に対応する範囲内に存在する場合には、定義1が選択され、ユーザがディスプレイ106の右側(方向指標10に示される「右」側)の辺に対応する範囲内に存在する場合には、定義2が選択され、ユーザがディスプレイ106の上側(方向指標10に示される「上」側)の辺に対応する範囲内に存在する場合には、定義3が選択され、ユーザがディスプレイ106の左側(方向指標10に示される「左」側)の辺に対応する範囲内に存在する場合には、定義4が選択されるようにしてもよい。
【0120】
このように、ゲーム装置100は、測定された方向に応じて、コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係を変更するようにしてもよい。すなわち、ゲーム装置100は、コントローラ200がディスプレイ106の一辺に対応する範囲内に存在していると測定されている限り対応関係を維持するとともに、コントローラ200がディスプレイ106の別の一辺に対応する範囲内に存在していると測定されると、対応関係を変更するようにしてもよい。測定された方向に応じて、コントローラ200に対するユーザ入力に対応するユーザ操作の意図の解釈を変更することで、ユーザは直感に沿った操作を行うことができる。
【0121】
なお、コントローラ200が移動することで対応関係を変更する場合には、先に、情報提示オブジェクトの表示位置および/または向きを変更させてもよい。すなわち、ゲーム装置100は、情報提示オブジェクトの表示位置および/または向きを変更させた後に、コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係を変更するようにしてもよい。
【0122】
情報提示オブジェクトの表示位置および/または向きを変更させた後に対応関係を変更することで、ユーザの位置が変わったとシステム1が認識したことをユーザに暗黙的に通知した上で、コントローラ200に対するユーザ入力の解釈が変更されることになる。そのため、ユーザは、ユーザ入力の解釈が変更されることを予見できるので、直感に沿った操作を継続して行うことができる。
【0123】
別の実施の形態では、情報提示オブジェクトの位置および/または向きの変更と同時に、または、当該変更の前から、測定された方向に応じて、コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係を変更してもよい。
【0124】
コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係は、コントローラ200に対するユーザ入力(方向入力部212を上方向に押し込む入力操作や、コントローラ200をスイングする操作など)が、ディスプレイ106に表示されている画面に対してどの方向を指し示すのかを決定するための規則を意味する。すなわち、ディスプレイ106とコントローラ200との相対関係が変化し得るので、コントローラ200に対する任意のユーザ入力が、表示されている画面において、対象の操作オブジェクトをいずれの方向へ移動させるべき意味を持つのかについて、状況に応じて決定するようにしてもよい。
【0125】
また、図14に示すように、操作ボタン214については、コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係を維持するようにしてもよい。すなわち、コントローラ200の測定された方向にかかわらず、方向入力部212および加速度センサ206以外の操作ボタン214については、対応関係を変更しないようにしてもよい。
【0126】
図14には、方向入力部212に対して入力可能な複数の方向(例えば、上方向、下方向、左方向、右方向)にそれぞれ割り当たられた操作オブジェクトに対する操作内容を定義する例を示したが、ゲーム装置100による方向入力部212に対する入力方向の解釈を変更してもよい。すなわち、方向入力部212から出力されるユーザ操作に応じた信号が示す意味を、例えば、ゲーム装置100側で変更するようにしてもよい。
【0127】
例えば、定義1においては、方向入力部212が上方向に押し込まれると当該操作を上方向と解釈し、方向入力部212が下方向に押し込まれると当該操作を下方向と解釈する一方で、別の定義2においては、方向入力部212が上方向に押し込まれると当該操作を左方向と解釈し、方向入力部212が下方向に押し込まれると当該操作を右方向と解釈するようにしてもよい。この場合には、解釈される操作方向(上方向、下方向、左方向、右方向)と操作オブジェクトに対する移動方向との対応関係は一意に定められてもよい。結果的に、コントローラ200に対する操作入力と、操作オブジェクトに対する操作内容との対応関係は、測定されたコントローラ200の方向に応じて変化する。
【0128】
また、方向入力部212に対する操作が完了した状態(押し込まれた状態)における操作方向の解釈を変更するだけではなく、方向入力部212に対する操作がなされている過程についての操作方向の解釈についても同様に変更してもよい。
【0129】
また別の実施の形態では、コントローラ200が存在する位置毎に、コントローラ200が存在する位置に応じた補正量を加えた上で、方向入力部212に対する入力方向の解釈を行うようにしてもよい。例えば、方向入力部212から出力されるユーザ操作に応じた信号がユーザ操作の行われた角度を示す場合には、補正量として、0°(補正無し),+90°,+180°,+270°(あるいは、-90°)の4種類を用意しておいてもよい。この場合、コントローラ200が存在する位置に応じて、対応する補正量が選択され、方向入力部212から出力される信号が選択された補正量で補正された上で、入力方向が解釈されてもよい。
【0130】
本実施の形態では、コントローラ200がディスプレイ106のある辺に対応する範囲から別の辺に対応する範囲へ移動した場合に、コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係を変更する例を示したが、別の実施の形態では、コントローラ200がディスプレイ106の同じ辺に対応する範囲に存在している場合であっても、コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係を変更するようにしてもよい。例えば、ユーザ(コントローラ200)がディスプレイ106正面の左側に存在する場合には、方向入力部212が上方向に押し込まれると、画面右上方向への移動の指示となり、ユーザがディスプレイ106正面に向かって右側に存在する場合には、方向入力部212が上方向に押し込まれると、画面左上方向への移動の指示となるようにしてもよい。
【0131】
さらに別の実施の形態では、コントローラ200に対するユーザ入力と操作オブジェクトに対する操作内容との対応関係を測定された方向に応じて変更しなくてもよい。
【0132】
[E.情報提示オブジェクトの表示位置]
上述したように、情報提示オブジェクトの表示位置は、測定された方向に応じて変化するようにしてもよい。このとき、情報提示オブジェクトの表示位置は、測定された方向に応じて動的に決定されてもよいし、予め定められた複数の位置のうちから適宜選択されてもよい。
【0133】
図16は、本実施の形態に従うシステム1において予め定められた複数の位置に情報提示オブジェクトが表示される画面例を示す模式図である。図16に示す例において、4つコントローラ200が存在する方向がそれぞれ測定されており、これらの測定結果に応じて、4つの情報提示オブジェクト(情報提示オブジェクト411~414)が表示されている。
【0134】
4つの情報提示オブジェクトは、予め定められた位置にそれぞれ表示されてもよい。すなわち、情報提示オブジェクトを表示する位置として、4つの位置が予め定められていてもよい。情報提示オブジェクトを表示する位置を予め定めておくことで、測定された方向に応じて、情報提示オブジェクトの表示位置が揺らぐといった事態を防止できるので、視認性の低下を抑制できる。
【0135】
予め定められた位置に情報提示オブジェクトを表示する場合には、方向が測定されたコントローラ200間の相対的な位置関係に応じて、各コントローラ200に対応する情報提示オブジェクトが表示される位置が決定されてもよい。
【0136】
このように、ゲーム装置100は、情報提示オブジェクトの表示位置として予め定められた複数の位置のうちから、測定された方向に応じて、情報提示オブジェクトの表示位置を選択するようにしてもよい。なお、図16に示す例においては、4つの位置に対して、4つの情報提示オブジェクト411~414が表示されている例を示すが、より少ない情報提示オブジェクトを表示する場合には、4つの位置のうちから表示すべき情報提示オブジェクトの数と同数の位置が選択されてもよい。
【0137】
例えば、図16に示す例においては、ユーザA~CとユーザDとは離れて存在しているが、画像450に含まれる情報提示オブジェクト411~414は、等間隔で配置されている。このように、ゲーム装置100は、複数のユーザ毎に情報提示オブジェクトをそれぞれ表示する場合に、各ユーザに対応付けられたコントローラ200の方向に応じて、複数の位置のうちから、ユーザ毎の情報提示オブジェクトの表示位置を割り当てる。
【0138】
より具体的には、ゲーム装置100は、複数のコントローラ200がそれぞれ存在する方向を測定し、測定された方向に基づいて、コントローラ200の配置順序を推定し、当該推定した配置順序に従って、コントローラ200(ユーザ)毎に対応する情報提示オブジェクトの表示位置を決定する。
【0139】
複数のコントローラ200(ユーザ)が存在している場合においても、コントローラ200の配置順序に基づいて情報提示オブジェクトを表示する位置を決定することで、複数のユーザに対する視認性を維持できる。
【0140】
情報提示オブジェクトの表示位置は、測定された方向に対応する情報提示オブジェクトの表示位置が、現在の情報提示オブジェクトの表示位置とは異なるとき、所定条件成立後に、測定された方向に対応する表示位置に変化させるようにしてもよい。すなわち、測定された方向が変化するたびに、情報提示オブジェクトの表示位置を変化させるようにしてもよいが、ある程度のバッファ時間を設けておいてもよい。これにより、コントローラ200を少しの期間だけ元の位置から動かしただけで、情報提示オブジェクトの表示位置が頻繁に変化するといった視認性の低下を抑制できる。
【0141】
このように、ゲーム装置100は、測定された方向が情報提示オブジェクトの表示位置を変化させるための条件を満たした後、所定条件成立後に、情報提示オブジェクトの表示位置を変化させるようにしてもよい。情報提示オブジェクトの表示位置を変化させるための条件としては、測定された方向に対応するディスプレイ106の対応する辺と、現在選択されているディスプレイ106の対応する辺とが異なる場合や、ディスプレイ106の同一の辺に複数のコントローラ200が対応していて、当該複数のコントローラ200の間の相対関係が変化した場合などが挙げられる。
【0142】
所定条件の成立は、後述するように、所定時間の経過で判断してもよいし、コントローラ200の動きなどで判断してもよい。
【0143】
図17は、本実施の形態に従うシステム1における情報提示オブジェクトの表示を変化させる処理の一例を説明するための図である。図17(A)に示す例において、ディスプレイ106に向かって左側から、コントローラ200A、コントローラ200B、コントローラ200C、コントローラ200Dの順に存在しており、この位置関係に対応して、ディスプレイ106には、左側から、情報提示オブジェクト411、情報提示オブジェクト412、情報提示オブジェクト413、情報提示オブジェクト414の順で表示されている。
【0144】
例えば、図17(B)に示すように、コントローラ200Aを持ったユーザAが、コントローラ200Dを持ったユーザDより右側(方向指標10に示される「右」側)に移動したとする。ユーザA(コントローラ200A)とユーザB~D(コントローラ200B~200D)との相対関係が変化したことで、情報提示オブジェクトの表示位置を変化させるための条件が満たされたと判断することができる。すなわち、図17(B)においては、測定された方向に対応する情報提示オブジェクトの表示位置が、現在の情報提示オブジェクトの表示位置とは異なった状態になっている。
【0145】
図17(B)に示す状態になってから所定時間経過後に、図17(C)に示すように、情報提示オブジェクト411~414の表示順が変更される。すなわち、ディスプレイ106に向かって左側から、コントローラ200B、コントローラ200C、コントローラ200D、コントローラ200Aの順に存在しており、この位置関係に対応して、ディスプレイ106には、左側から、情報提示オブジェクト412、情報提示オブジェクト413、情報提示オブジェクト414、情報提示オブジェクト411の順で表示されている。
【0146】
なお、ユーザAが移動する過程においては、例えば、ユーザAがユーザBとユーザCとの間に存在している状態も存在し得るが、当該状態が所定時間に亘って継続しなければ、情報提示オブジェクトの位置変更には反映されない。
【0147】
状態が所定時間に亘って継続しているか否かの判断を開始する時点は任意に設定できる。例えば、コントローラ200Aが存在している位置が変化し始めた時点から判断を開始してもよいし、コントローラ200Aがコントローラ200Bとコントローラ200Cとの間に存在していると判断された時点(すなわち、コントローラ200の並び順が変化した時点)から判断を開始してもよい。
【0148】
また、所定時間の長さは、固定値であってもよいし、変動値であってもよい。変動値を採用した場合には、例えば、ゲームの進行状況やコントローラ200の動きの頻度などに応じて、動的に変更してもよい。
【0149】
3以上のユーザがゲームやアプリケーションをプレイする場合において、ユーザの位置の変化に応じて情報提示オブジェクトの表示位置を逐次変化させると、視認性の低下が生じ得る。しかしながら、このようにある程度のバッファ時間を設けておくことで、ユーザの移動が落ち着いた状態が画面に反映されることになり、視認性の低下を抑制できる。
【0150】
なお、情報提示オブジェクトの表示位置を変化させるための条件として、時間ではなく、別の要素を用いてもよい。例えば、コントローラ200が存在する方向または位置の測定値の時間的な変動(ばらつき)が所定範囲内に収まったことを条件としてもよい。別の実施の形態では、コントローラ200の加速度センサ206(あるいは、図示しないジャイロセンサ)の検出値に基づいて、コントローラ200の動きが所定範囲内に収まった(例えば、コントローラ200が静止しているとみなせる)ことを条件としてもよい。さらに別の実施の形態では、上述した複数の条件を組み合わせてもよい。例えば、ある状態が所定時間に亘って継続し、かつ、コントローラ200が静止しているとみなせる状態において、情報提示オブジェクトの表示位置を変化させてもよい。
【0151】
図18は、本実施の形態に従うシステム1において情報提示オブジェクトが表示される予め定められた複数の位置の一例を示す模式図である。図18に示す例において、平置きモードにおいて表示される画像内に、情報提示オブジェクトが表示可能な位置(破線で示されている)が複数設定されていてもよい。
【0152】
図18に示す例において、ディスプレイ106の各辺について、複数の位置が予め定められており、同一の辺に対応する範囲に複数のユーザ(コントローラ200)が存在している場合であっても、ユーザ(コントローラ200)毎に情報提示オブジェクトを表示することができる。
【0153】
なお、別の実施の形態として、情報提示オブジェクトを表示する領域のみが設定されていてもよい。例えば、図18に示す例において、各辺の画面端側であれば、コントローラ200が存在する位置に応じて、情報提示オブジェクトの位置が自由に設定されてもよい。また、さらに別の実施の形態として、情報提示オブジェクトは画面内の任意の位置に表示されてもよい。
【0154】
[F.操作オブジェクトの表示位置および向き]
上述の説明においては、ディスプレイ106に表示される画像に含まれる操作オブジェクトの表示位置および向きは、コントローラ200が存在する方向に依存して変化しない例を示した。
【0155】
すなわち、ゲーム装置100は、測定された方向とは独立して、操作オブジェクトの表示位置および向きを維持するようにしてもよい。操作オブジェクトの表示位置および向きが維持されることで、複数のユーザがゲームやアプリケーションをプレイする場合において、ユーザに対して違和感を与える可能性を排除できる。
【0156】
別の実施の形態では、コントローラ200が存在する方向に応じて、操作オブジェクトの表示位置を維持したまま、向きのみを変化させるようにしてもよい。状況に応じて、操作オブジェクトの向きのみを変化させることで、ユーザの視認性を向上させることができる。
【0157】
さらに別の実施の形態では、コントローラ200が存在する方向に応じて、操作オブジェクトへの移動操作がなされ、および/または、操作オブジェクトへの向き変更操作がなされてもよい。
【0158】
[G.処理手順]
次に、本実施の形態に従うシステム1が実行する処理手順の一例について説明する。
【0159】
図19は、本実施の形態に従うシステム1のゲーム装置100が実行する処理手順を示すフローチャートである。図19に示す各ステップは、典型的には、ゲーム装置100のプロセッサ102がアプリケーションプログラム112を実行することで実現される。
【0160】
図19を参照して、ゲーム装置100は、実行中のアプリケーションプログラム112が方向に基づいた画像の生成に対応しているか否かを判断する(ステップS100)。方向に基づいた画像の生成に対応していなければ(ステップS100においてNO)、ゲーム装置100は、コントローラ200の方向測定を行わず、所定の設定に従って、操作オブジェクトおよび情報提示オブジェクトを含む画像を生成する(ステップS102)。生成された画像は、ディスプレイ106に出力される。
【0161】
ゲーム装置100は、アプリケーションプログラムの終了が指示されたか否かを判断する(ステップS104)。アプリケーションプログラムの終了が指示されていなければ(ステップS104においてNO)、ステップS102以下の処理が繰り返される。アプリケーションプログラムの終了が指示されていれば(ステップS104においてYES)、処理は終了する。
【0162】
方向に基づいた画像の生成に対応していれば(ステップS100においてYES)、ゲーム装置100は、実行中のアプリケーションプログラム112が方向に基づいて画像を生成することを要求しているか否かを判断する(ステップS106)。実行中のアプリケーションプログラム112が方向に基づいた画像を生成することを要求していなければ(ステップS106においてNO)、ステップS126以下の処理が実行される。
【0163】
実行中のアプリケーションプログラム112が方向に基づいて画像を生成することを要求していれば(ステップS106においてYES)、ゲーム装置100は、ゲーム装置100は、コントローラ200の方向測定を実行する(ステップS108)。そして、ゲーム装置100は、測定された方向に対応して情報提示オブジェクトを表示させるべき位置(以下、「情報提示オブジェクトの表示予定位置」とも称す。)が、現在の情報提示オブジェクトの表示位置とは異なっているか否かを判断する(ステップS110)。すなわち、ゲーム装置100は、測定された方向に基づいて決定される情報提示オブジェクトを表示すべき位置が、現時点において、情報提示オブジェクトが現在表示されている位置と一致しているか否かを判断する。
【0164】
情報提示オブジェクトの表示予定位置が、現在の情報提示オブジェクトの表示位置と一致していなれば(ステップS110においてNO)、ゲーム装置100は、情報提示オブジェクトの表示予定位置が所定時間に亘って同じに維持されているか否かを判断する(ステップS112)。
【0165】
情報提示オブジェクトの表示予定位置が所定時間に亘って同じに維持されていれば(ステップS112においてYES)、ゲーム装置100は、ゲーム装置100は、測定されたコントローラ200毎の方向に基づいて、情報提示オブジェクト毎に表示位置および向きを決定する(ステップS114)とともに、ユーザ入力に応じて操作オブジェクト毎の表示位置および向きを決定する(ステップS116)。そして、操作オブジェクトならびに情報提示オブジェクトを含む画像を生成する(ステップS118)。生成された画像は、ディスプレイ106に出力される。そして、ステップS126以下の処理が実行される。
【0166】
情報提示オブジェクトの表示予定位置が、現在の情報提示オブジェクトの表示位置と一致していれば(ステップS110においてYES)、ゲーム装置100は、情報提示オブジェクト毎の現在の表示位置および向きを維持する(ステップS120)とともに、ユーザ入力に応じて操作オブジェクト毎の表示位置および向きを決定する(ステップS122)。そして、操作オブジェクトならびに情報提示オブジェクトを含む画像を生成する(ステップS124)。生成された画像は、ディスプレイ106に出力される。そして、ステップS126以下の処理が実行される。
【0167】
情報提示オブジェクトの表示予定位置が所定時間に亘って同じに維持されていなければ(ステップS112においてNO)、ステップS120以下の処理が実行される。
【0168】
ゲーム装置100は、アプリケーションプログラムの終了が指示されたか否かを判断する(ステップS126)。アプリケーションプログラムの終了が指示されていなければ(ステップS126においてNO)、ステップS106以下の処理が繰り返される。アプリケーションプログラムの終了が指示されていれば(ステップS126においてYES)、処理は終了する。
【0169】
図20は、図19に示す方向測定の処理手順を示すフローチャートである。図20を参照して、ゲーム装置100は、使用対象のアンテナ素子125のうち隣接する2つのアンテナ素子125を抽出する(ステップS200)。ゲーム装置100は、抽出した2つのアンテナ素子125のうち一方を選択し(ステップS202)、当該選択したアンテナ素子125で無線信号を受信する(ステップS204)。続いて、ゲーム装置100は、抽出した2つのアンテナ素子125のうち他方を選択し(ステップS206)、当該選択したアンテナ素子125で同じフレームに対応する無線信号を受信する(ステップS208)。
【0170】
そして、ゲーム装置100は、ステップS204において受信した無線信号とステップS208において受信した無線信号との位相差を算出し(ステップS210)、算出した位相差に基づいて、コントローラ200が存在する方向を示す角度を算出する(ステップS212)。さらに、ゲーム装置100は、2つのアンテナ素子125で受信した無線信号の送信元であるコントローラ200を特定するための識別情報を付加して、算出した角度を格納する(ステップS214)。
【0171】
ゲーム装置100は、所定の測定完了条件が満たされているか否かを判断する(ステップS216)。所定の測定完了条件は、所定時間に亘る測定や所定回数の測定などの条件を含む。
【0172】
所定の測定完了条件が満たされていなければ(ステップS216においてNO)、ステップS200以下の処理が繰り返される。
【0173】
所定の測定完了条件が満たされていれば(ステップS216においてYES)、ゲーム装置100は、格納されたコントローラ200毎に算出された1または複数の角度を統計処理することで、コントローラ200毎の方向を算出する(ステップS218)。そして、処理はリターンする。
【0174】
[H.その他の形態]
各種処理の実行主体の分担は、上述の説明に限られない。例えば、画像を生成する処理は、ゲーム装置100のプロセッサ102が担当してもよいし、ゲーム装置100以外のコンピューティングリソースを用いてもよい。典型的には、ゲーム装置100と通信可能なクラウド上のコンピューティングリソースが画像を生成するようにしてもよい。この場合には、ゲーム装置100は、コントローラ200から受信したユーザ操作を示す信号およびコントローラ200の方向を示す情報をコンピューティングリソースに送信し、コンピューティングリソースから画像を受信して、ディスプレイ106または外部ディスプレイに出力する。さらに、クラウド上のコンピューティングリソースではなく、ローカルネットワークで通信可能な任意のコンピューティングリソースを用いてもよい。
【0175】
上述の説明においては、コントローラ200が送信する無線信号を用いて、コントローラ200の方向を測定する例について説明したが、他の方法を用いて方向を測定するようにしてもよい。例えば、赤外線などを用いてもよいし、超音波などを用いてもよい。
【0176】
また、コントローラ200が送信する無線信号をゲーム装置100が受信して方向を測定する構成ではなく、ゲーム装置100が送信する無線信号をコントローラ200が受信して方向を測定する構成を採用してもよい。この場合には、コントローラ200で測定された方向を示す情報をゲーム装置100へ送信することで、画像の生成に方向の情報を反映できる。
【0177】
上述の説明では、ディスプレイ106に表示される全体としてのゲーム画面自体は、コントローラ200が存在する方向に応じて位置および向きを変更されない例について説明したが、別の実施の形態では、位置および向きが変更されてもよい。例えば、平置きモードにあるゲーム装置100を挟んで2人のユーザ(2つのコントローラ200)が存在している場合、ゲームの進行に応じて、ゲーム画面が回転表示されてもよい。一例として、各ユーザの操作する順番(ターン)に応じて、当該ターンのユーザが操作しやすいように、ゲーム画面自体(実質的なゲーム画面であり、例えばゲーム画面を囲む各種インターフェース表示などは除いてもよい)を、例えば上下反転するように回転して表示してもよい。あるいは、ゲーム装置100を4方向にユーザ(4つのコントローラ200)が囲んで存在している場合には、ゲーム画面を4方向に回転して表示してもよい。なお、ゲーム画面に情報提示オブジェクトが含まれる場合、当該ゲーム画面に対する情報提示オブジェクトの相対位置および姿勢は変えずにゲーム画面とともに回転表示してもよいし、ゲーム画面の回転表示に伴ってゲーム画面に対する情報提示オブジェクトの相対位置および姿勢は変化されてもよい。
【0178】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0179】
1 システム、10 方向指標、100 ゲーム装置、102,202 プロセッサ、104,204 メモリ、106 ディスプレイ、108 タッチパネル、110 ストレージ、112 アプリケーションプログラム、114 システムプログラム、116 ユーザ操作定義、120,220 近距離通信部、122 方向測定部、124 アンテナモジュール、125 アンテナ素子、126 無線通信部、128 スピーカ、130 マイク、132 ジャイロセンサ、134 第1コントローラインターフェイス、136 第2コントローラインターフェイス、138 クレードルインターフェイス、140 メモリカードインターフェイス、142 メモリカード、144 スタンド、200,200A,200B,200C,200D コントローラ、206 加速度センサ、210 操作部、212 方向入力部、214 操作ボタン、230 本体通信部、240 等位相面、250,255 フレーム、251 プリアンブル、252 宛先アドレス、253 データ、256 方向測定用データ、261,262,263 操作方向、300 外部ディスプレイ、401,402,403,404,421,422,423,424 操作オブジェクト、411,412,413,414,431,432,433,434 情報提示オブジェクト、426,427 方向、450,451,452 画像、1221 マルチプレクサ、1222 検波器、1223 差分器、1224 遅延素子、1225 角度算出部、1226 制御部、1227 デコーダ、d 素子間距離。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20