JP2012161348A - ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法 - Google Patents

ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法 Download PDF

Info

Publication number
JP2012161348A
JP2012161348A JP2011021574A JP2011021574A JP2012161348A JP 2012161348 A JP2012161348 A JP 2012161348A JP 2011021574 A JP2011021574 A JP 2011021574A JP 2011021574 A JP2011021574 A JP 2011021574A JP 2012161348 A JP2012161348 A JP 2012161348A
Authority
JP
Japan
Prior art keywords
game
image
player
data
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011021574A
Other languages
English (en)
Other versions
JP5756299B2 (ja
Inventor
Atsushi Ito
惇 伊藤
Kenta Sato
賢太 佐藤
Keizo Ota
敬三 太田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2011021574A priority Critical patent/JP5756299B2/ja
Priority to US13/333,037 priority patent/US8870650B2/en
Publication of JP2012161348A publication Critical patent/JP2012161348A/ja
Application granted granted Critical
Publication of JP5756299B2 publication Critical patent/JP5756299B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • A63F13/26Output arrangements for video game devices having at least one additional display device, e.g. on the game controller or outside a game booth
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5255Changing parameters of virtual cameras according to dedicated instructions from a player, e.g. using a secondary joystick to rotate the camera around a player's character
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/843Special adaptations for executing a specific game genre or game mode involving concurrently two or more players on the same game device, e.g. requiring the use of a plurality of controllers or of a specific view of game data for each player
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/90Constructional details or arrangements of video game devices not provided for in groups A63F13/20 or A63F13/25, e.g. housing, wiring, connections or cabinets
    • A63F13/92Video game devices specially adapted to be hand-held while playing
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/23Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
    • A63F13/235Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console using a wireless connection, e.g. infrared or piconet
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/30Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers
    • A63F13/32Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections
    • A63F13/323Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections between game devices with different hardware characteristics, e.g. hand-held game devices connectable to game consoles or arcade machines
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/837Shooting of targets
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1025Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals details of the interface with the game device, e.g. USB version detection
    • A63F2300/1031Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals details of the interface with the game device, e.g. USB version detection using a wireless connection, e.g. Bluetooth, infrared connections
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/301Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device using an additional display connected to the game console, e.g. on the controller
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8088Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game involving concurrently several players in a non-networked game, e.g. on the same game console

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】複数のゲーム画像を表示する場合に、表示装置の表示領域の分割数を抑え、見やすいゲーム画像を表示する。
【解決手段】ゲームシステムは、複数の操作装置と、ゲーム装置と、少なくとも1つの可搬型の表示装置とを含む。ゲーム装置は、操作装置に対する操作に基づいて出力される操作データを複数の操作装置からそれぞれ取得し、各操作データに基づいてゲーム処理を実行する。さらに、ゲーム装置は、複数のプレイヤのうちの所定の第1プレイヤのための第1ゲーム画像をゲーム処理に基づいて生成する。また、第1プレイヤ以外の他のプレイヤのための第2ゲーム画像をゲーム処理に基づいて生成する。第1ゲーム画像は、可搬型の表示装置へ出力されて表示される。第2ゲーム画像は、可搬型の表示装置とは異なる所定の表示装置へ出力されて表示される。
【選択図】図14

Description

本発明は、複数人のプレイヤが同時にゲームを行うことが可能なゲームシステム等に関する。
従来、複数人のプレイヤが同時にゲームを行うことが可能なゲームシステムがある。例えば、特許文献1に記載のゲームシステムにおいては、複数人のプレイヤがゲームを行う場合、表示装置の画面をプレイヤの人数分の領域に分割し、分割した各領域に各プレイヤのためのゲーム画像がそれぞれ表示される(図4および図12参照)。このように、従来においては、複数人プレイのゲームにおいては、1つの表示装置の表示領域を分割してプレイヤ毎のゲーム画像をそれぞれ表示していた。
特開2006−081753号公報
従来のゲームシステムでは、1つの表示装置の表示領域を分割して複数のゲーム画像を表示するので、あるプレイヤ用のゲーム画像が表示される表示装置に、他のプレイヤ用のゲーム画像も表示されることになる。したがって、各プレイヤにとっては自分用のゲーム画像がどれかわかりにくく、自分用のゲーム画像を見間違うこともある。また、自分用のゲーム画像の隣に他のゲーム画像が表示され、自分には関係のない(見る必要のない)ゲーム画像が周りに表示されることによって、窮屈に感じられる。これらの問題は、表示装置の表示領域を分割する数が増えるほど顕著になるので、複数人でゲームを行う場合であっても、表示領域は分割されないことが好ましく、また、表示領域が分割される場合であっても分割数はできるだけ少ないことが好ましい。
また、対戦型のゲームの場合については、1つの表示装置の表示領域を分割して複数のゲーム画像を表示すると、自分用のゲーム画像が相手側のプレイヤにも見えてしまうので、ゲームの戦略性が低くなり、ゲームの興趣性を低下させてしまうという問題もある。
それ故、本発明の目的は、表示装置の表示領域の分割数を抑え、見やすいゲーム画像を表示することが可能なゲームシステム等を提供することである。
本発明は、上記の課題を解決するために、以下の(1)〜(10)の構成を採用した。
(1)
本発明の一例は、複数のプレイヤによってゲームを行うためのゲームシステムである。ゲームシステムは、複数の操作装置と、ゲーム装置と、少なくとも1つの可搬型の表示装置とを含む。
ゲーム装置は、操作データ取得部と、ゲーム処理部と、第1画像生成部と、第2画像生成部と、第1画像出力部と、第2画像出力部とを備える。操作データ取得部は、操作装置に対する操作に基づいて出力される操作データを複数の操作装置からそれぞれ取得する。ゲーム処理部は、各操作データに基づいてゲーム処理を実行する。第1画像生成部は、複数のプレイヤのうちの所定の第1プレイヤのための第1ゲーム画像をゲーム処理に基づいて生成する。第2画像生成部は、第1プレイヤ以外の他のプレイヤのための第2ゲーム画像をゲーム処理に基づいて生成する。第1画像出力部は、第1ゲーム画像を可搬型の表示装置へ出力する。第2画像出力部は、第2ゲーム画像を可搬型の表示装置とは異なる所定の表示装置へ出力する。
可搬型の表示装置は、ゲーム画像受信部と、表示部とを備える。ゲーム画像受信部は、第1ゲーム画像を受信する。表示部は、第1ゲーム画像を表示する。
上記「ゲームシステム」は、操作装置とゲーム装置と可搬型の操作装置とを含んでいればよく、上記「所定の表示装置」を含んでいなくともよいし、含んでいてもよい。すなわち、ゲームシステムは、当該所定の表示装置を含まない形態で提供されてもよいし、含む形態で提供されてもよい。
上記「操作装置」は、後述する実施形態におけるコントローラ5の他、任意の操作装置を含む概念である。
上記「ゲーム装置」は、ゲーム処理を実行し、ゲーム処理に基づいてゲーム画像を生成する情報処理装置であればどのようなものであってもよい。上記ゲーム装置は、ゲーム専用の情報処理装置であってもよいし、一般的なパーソナルコンピュータのような多用途の情報処理装置であってもよい。
上記「可搬型の表示装置」は、後述する実施形態においては端末装置7のように、ゲーム画像を表示する表示部を備える装置であればどのようなものであってもよい。なお、上記「可搬型」とは、プレイヤが手に持って動かしたり、任意の位置に配置を変更したりすることができる程度の大きさである意味である。
上記「他のプレイヤ」は、1人でも複数人でもよい。
上記「(第1)プレイヤのための(第1)ゲーム画像」とは、当該プレイヤがゲーム操作を行うのに適したゲーム画像であればどのようなゲーム画像であってもよい。「プレイヤのためのゲーム画像」としては、例えば、プレイヤの操作に応じて視点や視線方向が変化するゲーム画像や、プレイヤの操作対象を含むように視点位置や視線方向が設定されるゲーム画像や、プレイヤの操作対象の位置あるいはその近傍に視点位置が設定されるゲーム画像等が考えられる。
上記「他のプレイヤのための第2ゲーム画像」とは、当該他のプレイヤがゲーム操作を行うのに適したゲーム画像である。他のプレイヤが複数人である場合には、上記第2ゲーム画像は、各プレイヤのための複数のゲーム画像からなる画像であってもよいし、例えば各プレイヤの操作対象を含む1つのゲーム画像でもよい。
上記(1)の構成によれば、2つの表示装置にそれぞれゲーム画像が表示される。すなわち、可搬型の表示装置には第1プレイヤのためのゲーム画像が表示され、所定の表示装置には他のプレイヤのためのゲーム画像が表示される。したがって、プレイヤが2人の場合であれば、表示装置の表示領域を分割することなくゲーム画像を表示することができるので、他のプレイヤのゲーム画像を自己のゲーム画像と見間違えたり、プレイヤが窮屈に感じたりすることなく、各プレイヤに見やすいゲーム画像を提供することができる。また、プレイヤが3人以上であっても、所定の表示装置のみを用いる場合に比べて、表示領域の分割数を減らすことができるので、見間違える可能性を減らし、窮屈感を減らすことができる。さらに、一方の表示装置は可搬型であるので、必要に応じて、自分のゲーム画像が表示される画面を他のプレイヤが見えないように表示装置を配置することも可能である。これによれば、互いに相手のゲーム画像が見えないような位置関係となるように可搬型の表示装置を配置することでゲームの戦略性を向上し、ゲームの興趣性を高めることができる。
また、上記(1)の構成によれば、各ゲーム画像はゲーム装置側で生成されるので、可搬型の表示装置はゲーム画像を受信して表示する機能を有すれば足りる。例えば、ゲーム装置と可搬型の表示装置との両方でゲーム処理が実行される場合には、双方のゲーム処理を同期させる必要があり、ゲーム処理が複雑になってしまう。一方、上記(1)の構成によれば、ゲーム処理は一方の装置(ゲーム装置側)のみで実行されるので、ゲーム処理の同期をとる必要がなく、ゲーム処理を簡易化することができる。
(2)
ゲーム処理部は、第1仮想カメラ制御部と、第2仮想カメラ制御部とを含んでいてもよい。第1仮想カメラ制御部は、第1プレイヤが操作する操作装置に対する操作を表す操作データに基づいて、ゲーム空間に設定される第1仮想カメラを制御する。第2仮想カメラ制御部は、他のプレイヤが操作する操作装置に対する操作を表す操作データに基づいて、ゲーム空間に設定される第2仮想カメラを制御する。このとき、第1画像生成部は、第1仮想カメラに基づいて第1ゲーム画像を生成する。第2画像生成部は、第2仮想カメラに基づいて第2ゲーム画像を生成する。
上記(2)の構成によれば、第1プレイヤは第1仮想カメラを制御することによって第1ゲーム画像の視点や視線方向を操作することができ、他のプレイヤは第2仮想カメラを制御することによって第2ゲーム画像の視点や視線方向を操作することができる。
(3)
複数の操作装置はそれぞれ、自機の姿勢を算出するための物理量を検出するセンサ部を備えていてもよい。このとき、操作データにはそれぞれ、センサ部から取得されるデータが含まれる。ゲーム処理部は、各操作データにそれぞれ含まれる物理量に基づいて各操作装置の姿勢を算出する姿勢算出処理部を含み、当該各操作装置の姿勢に基づいてゲーム処理を実行する。
上記「姿勢を算出するための物理量」とは、それに基づいて操作装置の姿勢を算出(推測)することができればどのようなものであってもよい。また、上記「センサ部」は、このような「物理量」を検出することができればどのようなものであってもよい。例えば、「センサ部」は、後述する実施形態におけるジャイロや加速度センサといった慣性センサの他、磁気センサであってもよいし、カメラであってもよい。なお、センサ部が磁気センサである場合には、磁気センサによって検出される方位の情報が上記物理量に相当する。また、センサ部がカメラである場合には、撮像された画像に関する数値(例えば各画素値)、あるいは、当該画像から得られる数値(例えば、撮像された画像内における所定の撮像対象の位置座標)が上記物理量に相当する。
上記(3)の構成によれば、操作装置の姿勢に応じたゲーム処理が実行されるので、各プレイヤは、操作装置を傾ける操作によって直感的かつ容易なゲーム操作を行うことができる。
(4)
複数の操作装置はそれぞれ、自機の動きを算出するための物理量を検出するセンサ部を備えていてもよい。操作データにはそれぞれ、センサ部から取得されるデータが含まれる。ゲーム処理部は、各操作データにそれぞれ含まれる物理量に基づいて各操作装置の動きを算出する姿勢算出処理部を含み、当該各操作装置の動きに基づいてゲーム処理を実行する。
上記「動きを算出するための物理量」とは、それに基づいて操作装置の動きを算出(推測)することができればどのようなものであってもよい。また、上記「センサ部」は、このような「物理量」を検出することができればどのようなものであってもよい。例えば、「センサ部」は、後述する実施形態におけるジャイロや加速度センサといった慣性センサの他、磁気センサであってもよいし、カメラであってもよい。なお、センサ部が磁気センサである場合には、磁気センサによって検出される方位(あるいは方位の変化)の情報が上記物理量に相当する。また、センサ部がカメラである場合には、撮像された画像に関する数値(例えば各画素値)、あるいは、当該画像から得られる数値(例えば、撮像された画像内における所定の撮像対象の位置座標)が上記物理量に相当する。
上記(4)の構成によれば、操作装置の動きに応じたゲーム処理が実行されるので、各プレイヤは、操作装置を動かす操作によって直感的かつ容易なゲーム操作を行うことができる。
(5)
ゲーム処理部は、第1指定処理部と、第2指定処理部とを含んでいてもよい。第1指定処理部は、第1プレイヤが操作する操作装置の操作データに基づいて可搬型の表示装置の表示領域における位置を指定し、指定した位置に応じた処理を実行する。第2指定処理部は、他のプレイヤが操作する操作装置の操作データに基づいて所定の表示装置の表示領域における位置を指定し、指定した位置に応じた処理を実行する。
上記(5)の構成によれば、操作装置によって指定される表示装置の画面上の位置に応じたゲーム処理が実行されるので、プレイヤは、表示装置の画面上の位置を指定する操作によって直感的かつ容易なゲーム操作を行うことができる。なお、表示装置の表示領域(画面)における分割数が多くなると、画面上の位置を指定する操作が行いにくくなる。これに対して、(1)〜(10)の構成では、分割数を減らすことができるので、画面上の位置を指定する操作を行いやすくすることができ、当該操作の操作性を向上することができる。
(6)
ゲームシステムは、所定の表示装置の近傍に配置可能な発光装置をさらに含んでいてもよい。また、可搬型の表示装置は、発光部をさらに備える。複数の操作装置はそれぞれ、発光装置および発光部による光を撮像可能な撮像部をさらに備える。各操作データには、撮像部の撮像画像に関する撮像データが含まれる。ゲーム処理部は、撮像画像内における所定の撮像対象の位置に基づくゲーム処理を撮像データを用いて実行する。
上記「撮像データ」は、撮像部による撮像画像の画像データ自体であってもよいし、撮像画像から得られる情報(例えば、後述する実施形態におけるマーカ座標のような、撮像画像内における所定の撮像対象の位置を示す情報)を表すデータであってもよい。
上記「撮像画像内における所定の撮像対象の位置に基づくゲーム処理」とは、例えば、上記(3)における姿勢を当該位置に基づいて算出する処理でもよいし、上記(5)における画面上の位置を当該位置に基づいて算出する処理でもよい。
上記(6)の構成によれば、撮像画像内における撮像対象の位置に基づくゲーム処理が実行される。したがって、操作装置の位置や姿勢や動きを用いてゲーム操作を行うことができ、直感的かつ容易なゲーム操作が可能となる。また、上記撮像データによって操作装置と撮像対象との位置関係を精度良く算出することができるので、操作性の良いゲーム操作を提供することができる。
(7)
ゲームシステムは、少なくとも3つの操作装置を含んでいてもよい。このとき、第2画像生成部は、第1プレイヤとは別の第2プレイヤのためのゲーム画像と、第1プレイヤとは別の第3プレイヤのためのゲーム画像とを含むゲーム画像を第2ゲーム画像として生成する。
上記(7)の構成によれば、プレイヤの人数が3人以上であっても各プレイヤのためのゲーム画像をそれぞれ提供することができる。
(8)
所定の表示装置は、横長の表示領域を有していてもよい。このとき、第2画像生成部は、第2プレイヤのための縦長のゲーム画像と、第3プレイヤのための縦長のゲーム画像とが横に並んで配置された画像を第2ゲーム画像として生成する。
上記(8)の構成によれば、所定の表示装置の画面に、複数のゲーム画像を横に並べて表示することで、縦長のゲーム画像を提供することができる。また、可搬型の表示装置については、縦長となるように配置することが可能であるので、可搬型の表示装置をそのように配置することで、縦長のゲーム画像を提供することができる。したがって、上記(8)の構成によれば、各ゲーム画像は全て縦長のゲーム画像となり、3人以上の各プレイヤに対して縦長のゲーム画像を提供することができる。これによれば、各ゲーム画像の比率を揃えることができるので、プレイヤ毎の有利不利を無くすことができ、公平なゲーム画像を提供することができる。
また、一般的な表示装置の表示領域は横長であるので、縦長のゲーム画像を表示する場合には、縦長のゲーム画像の横に本来不要な画像を追加して表示するため、プレイヤに違和感を与えるおそれがある。これに対して、上記(8)の構成によれば、所定の表示装置の画面に複数の縦長のゲーム画像を表示するので、当該所定の表示装置に不要な画像を追加して表示する必要がない。したがって、プレイヤが違和感を抱いたり不自然に感じたりすることがなく、見やすいゲーム画像を提供することができる。
(9)
操作データ取得部は、1個から所定個数までの操作装置から操作データを取得することが可能であってもよい。このとき、ゲーム処理部は、ゲームを行うプレイヤの人数が所定の条件を満たすか否かを判定する判定部を含む。第1画像生成部は、プレイヤの人数が所定の条件を満たす場合、第1プレイヤのための第1ゲーム画像を生成する。第2画像生成部は、プレイヤの人数が所定の条件を満たす場合、他のプレイヤのためのゲーム画像を第2ゲーム画像として生成し、プレイヤの人数が所定の条件を満たさない場合、ゲームを行う各プレイヤのためのゲーム画像を第2ゲーム画像として生成する。
上記(9)の構成によれば、プレイヤの人数が所定の条件を満たす場合には、第1プレイヤのための第1ゲーム画像が可搬型の表示装置に表示され、他のプレイヤのための第2ゲーム画像が所定の表示装置に表示される。また、プレイヤの人数が所定の条件を満たさない場合には、(第1プレイヤおよび他のプレイヤを含む)各プレイヤのための第2ゲーム画像が所定の表示装置に表示される。すなわち、上記(9)の構成によれば、2つの表示装置を用いてゲーム画像を表示するか、所定の表示装置を用いてゲーム画像を表示するかがプレイヤの人数に応じて変更される。したがって、上記(9)の構成によれば、プレイヤの人数に応じて適切な表示形態でゲーム画像を提供することができる。
(10)
第1画像生成部は、ゲーム処理によって所定のゲーム条件が満たされる場合、第1プレイヤのための第1ゲーム画像を生成してもよい。このとき、第2画像生成部は、ゲーム処理によって所定のゲーム条件が満たされる場合、他のプレイヤのためのゲーム画像を第2ゲーム画像として生成し、ゲーム処理によって所定のゲーム条件が満たされない場合、複数のプレイヤのためのゲーム画像を第2ゲーム画像として生成する。
上記「ゲーム条件」とは、ゲームに関する条件であればどのようなものであってもよく、例えば、プレイヤオブジェクトの位置や状態に関する条件(より具体的には、プレイヤオブジェクトが所定範囲のゲームフィールドに存在すること、あるいは、プレイヤオブジェクトが所定のアイテムを取得したこと等)や、ゲームの進行状況に関する条件(より具体的には、所定のゲームステージとなったこと等)である。
上記(10)の構成によれば、ゲーム条件が満たされる場合には、第1プレイヤのための第1ゲーム画像が可搬型の表示装置に表示され、他のプレイヤのための第2ゲーム画像が所定の表示装置に表示される。また、ゲーム条件が満たさない場合には、(第1プレイヤおよび他のプレイヤを含む)各プレイヤのための第2ゲーム画像が所定の表示装置に表示される。すなわち、上記(10)の構成によれば、2つの表示装置を用いてゲーム画像を表示するか、所定の表示装置を用いてゲーム画像を表示するかがゲーム状況に応じて変更される。したがって、上記(10)の構成によれば、ゲーム状況に応じて適切な表示形態でゲーム画像を提供することができる。これによれば、例えば、2つのプレイヤオブジェクトが一緒に行動するシーンにおいては1つの表示装置に2つのプレイヤオブジェクトを表示し、2つのプレイヤオブジェクトが離れて行動するシーンにおいては2つの表示装置に別々にプレイヤオブジェクトを表示することも可能となる。これによって、ゲームの臨場感を高めることができ、興趣性の高いゲームを提供することができる。
なお、本発明の別の一例は、上記(1)〜(10)のゲームシステムにおけるゲーム装置の形態であってもよい。また、本発明の別の一例は、ゲーム装置のコンピュータを上記ゲーム装置における各部(画像出力部が含まれなくてもよい)と同等の手段として機能させるゲームプログラムの形態であってもよい。さらに、本発明の別の一例は、上記(1)〜(10)のゲームシステムまたはゲーム装置において行われるゲーム処理方法の形態であってもよい。
本発明によれば、複数のプレイヤのための複数のゲーム画像を2つの表示装置に表示することによって、表示装置の表示領域の分割数を抑えることができ、見やすいゲーム画像を各プレイヤに提供することができる。
ゲームシステム1の外観図 ゲーム装置3の内部構成を示すブロック図 メインコントローラ8の外観構成を示す斜視図 メインコントローラ8の外観構成を示す斜視図 メインコントローラ8の内部構造を示す図 メインコントローラ8の内部構造を示す図 サブコントローラ9の外観構成を示す斜視図 コントローラ5の構成を示すブロック図 端末装置7の外観構成を示す図 ユーザが端末装置7を把持した様子を示す図 端末装置7の内部構成を示すブロック図 端末装置7に表示される端末用ゲーム画像の一例を示す図 テレビ2に表示されるテレビ用ゲーム画像の一例を示す図 テレビ2と端末装置7とを反対に向けて配置した配置例を示す テレビ2の画面と端末装置7の画面とが略直角となるように配置した配置例を示す図 テレビ2と端末装置7とを横に並べた配置例を示す図 ゲーム処理において用いられる各種データを示す図 ゲーム装置3において実行されるゲーム処理の流れを示すメインフローチャート 図18に示すゲーム制御処理(ステップS3)の詳細な流れを示すフローチャート 図19に示す姿勢算出処理(ステップS12)の詳細な流れを示すフローチャート 本実施形態の第1変形例における端末用ゲーム画像の一例を示す図 第1変形例におけるテレビ用ゲーム画像の一例を示す図 本実施形態の第2変形例における端末用ゲーム画像の一例を示す図 第2変形例におけるテレビ用ゲーム画像の一例を示す図 第2変形例において2人でゲームが行われる場合におけるテレビ用ゲーム画像の一例を示す図 第2変形例において実行される画像生成処理の流れを示すフローチャート 本実施形態の第3変形例におけるゲーム画像の一例を示す図 第3変形例において実行される画像生成処理の流れを示すフローチャート
[1.ゲームシステムの全体構成]
以下、図面を参照して、本発明の一実施形態に係るゲームシステム1について説明する。図1は、ゲームシステム1の外観図である。図1において、ゲームシステム1は、テレビジョン受像器等に代表される据置型のディスプレイ装置(以下、「テレビ」と記載する)2、据置型のゲーム装置3、光ディスク4、コントローラ5、マーカ装置6、および、端末装置7を含む。ゲームシステム1は、コントローラ5を用いたゲーム操作に基づいてゲーム装置3においてゲーム処理を実行し、ゲーム処理によって得られるゲーム画像をテレビ2および/または端末装置7に表示するものである。
ゲーム装置3には、当該ゲーム装置3に対して交換可能に用いられる情報記憶媒体の一例である光ディスク4が脱着可能に挿入される。光ディスク4には、ゲーム装置3において実行されるための情報処理プログラム(典型的にはゲームプログラム)が記憶されている。ゲーム装置3の前面には光ディスク4の挿入口が設けられている。ゲーム装置3は、挿入口に挿入された光ディスク4に記憶されている情報処理プログラムを読み出して実行することによってゲーム処理を実行する。
ゲーム装置3には、テレビ2が接続コードを介して接続される。テレビ2は、ゲーム装置3において実行されるゲーム処理によって得られるゲーム画像を表示する。テレビ2はスピーカ2a(図2)を有しており、スピーカ2aは、上記ゲーム処理の結果得られるゲーム音声を出力する。なお、他の実施形態においては、ゲーム装置3と据置型の表示装置とは一体となっていてもよい。また、ゲーム装置3とテレビ2との通信は無線通信であってもよい。
テレビ2の画面の周辺(図1では画面の上側)には、マーカ装置6が設置される。詳細は後述するが、ユーザ(プレイヤ)はコントローラ5を動かすゲーム操作を行うことができ、マーカ装置6は、コントローラ5の動きや位置や姿勢等をゲーム装置3が算出するために用いられる。マーカ装置6は、その両端に2つのマーカ6Rおよび6Lを備えている。マーカ6R(マーカ6Lも同様)は、具体的には1以上の赤外LED(Light Emitting Diode)であり、テレビ2の前方に向かって赤外光を出力する。マーカ装置6はゲーム装置3に接続されており、ゲーム装置3はマーカ装置6が備える各赤外LEDの点灯を制御することが可能である。なお、マーカ装置6は可搬型であり、ユーザはマーカ装置6を自由な位置に設置することができる。図1ではマーカ装置6がテレビ2の上に設置された態様を表しているが、マーカ装置6を設置する位置および向きは任意である。
コントローラ5は、自機に対して行われた操作の内容を表す操作データをゲーム装置3に与えるものである。本実施形態では、コントローラ5は、メインコントローラ8とサブコントローラ9とを有し、サブコントローラ9がメインコントローラ8に着脱可能に装着される構成である。コントローラ5とゲーム装置3とは無線通信によって通信可能である。本実施形態では、コントローラ5とゲーム装置3との間の無線通信には例えばBluetooth(ブルートゥース)(登録商標)の技術が用いられる。なお、他の実施形態においてはコントローラ5とゲーム装置3とは有線で接続されてもよい。また、図1では、ゲームシステム1に含まれるコントローラ5は1つとするが、本実施形態においては、ゲームシステム1は複数のコントローラ5を含むものとする。ゲーム装置3は複数のコントローラと通信可能であり、所定台数のコントローラを同時に使用することによって複数人でゲームをプレイすることが可能である。コントローラ5の詳細な構成については後述する。
端末装置7は、ユーザが把持可能な程度の大きさであり、ユーザは端末装置7を手に持って動かしたり、あるいは、端末装置7を自由な位置に配置したりして使用することが可能である。詳細な構成は後述するが、端末装置7は、表示手段であるLCD(Liquid Crystal Display:液晶表示装置)51、および、入力手段(後述するタッチパネル52やジャイロセンサ64等)を備える。端末装置7とゲーム装置3とは無線(有線であってもよい)によって通信可能である。端末装置7は、ゲーム装置3で生成された画像(例えばゲーム画像)のデータをゲーム装置3から受信し、画像をLCD51に表示する。なお、本実施形態では表示装置としてLCDを用いているが、端末装置7は、例えばEL(Electro Luminescence:電界発光)を利用した表示装置等、他の任意の表示装置を有していてもよい。また、端末装置7は、自機に対して行われた操作の内容を表す操作データをゲーム装置3に送信する。
[2.ゲーム装置3の内部構成]
次に、図2を参照して、ゲーム装置3の内部構成について説明する。図2は、ゲーム装置3の内部構成を示すブロック図である。ゲーム装置3は、CPU(Central Processing Unit)10、システムLSI11、外部メインメモリ12、ROM/RTC13、ディスクドライブ14、およびAV−IC15等を有する。
CPU10は、光ディスク4に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。CPU10は、システムLSI11に接続される。システムLSI11には、CPU10の他、外部メインメモリ12、ROM/RTC13、ディスクドライブ14およびAV−IC15が接続される。システムLSI11は、それに接続される各構成要素間におけるデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。なお、システムLSI11の内部構成については後述する。揮発性の外部メインメモリ12は、光ディスク4から読み出されたゲームプログラムや、フラッシュメモリ17から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、CPU10のワーク領域やバッファ領域として用いられる。ROM/RTC13は、ゲーム装置3の起動用のプログラムが組み込まれるROM(いわゆるブートROM)と、時間をカウントするクロック回路(RTC:Real Time Clock)とを有する。ディスクドライブ14は、光ディスク4からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ11eまたは外部メインメモリ12に読み出したデータを書き込む。
システムLSI11には、入出力プロセッサ(I/Oプロセッサ)11a、GPU(Graphics Processor Unit)11b、DSP(Digital Signal Processor)11c、VRAM(Video RAM)11d、および内部メインメモリ11eが設けられる。図示は省略するが、これらの構成要素11a〜11eは内部バスによって互いに接続される。
GPU11bは、描画手段の一部を形成し、CPU10からのグラフィクスコマンド(作画命令)に従って画像を生成する。VRAM11dは、GPU11bがグラフィクスコマンドを実行するために必要なデータ(ポリゴンデータやテクスチャデータ等のデータ)を記憶する。画像が生成される際には、GPU11bは、VRAM11dに記憶されたデータを用いて画像データを作成する。なお、本実施形態においては、ゲーム装置3は、テレビ2に表示するゲーム画像と、端末装置7に表示するゲーム画像との両方を生成する。以下では、テレビ2に表示されるゲーム画像を「テレビ用ゲーム画像」と呼び、端末装置7に表示されるゲーム画像を「端末用ゲーム画像」と呼ぶことがある。
DSP11cは、オーディオプロセッサとして機能し、内部メインメモリ11eや外部メインメモリ12に記憶されるサウンドデータや音波形(音色)データを用いて、音声データを生成する。なお、本実施形態においては、ゲーム音声についてもゲーム画像と同様、テレビ2のスピーカから出力するゲーム音声と、端末装置7のスピーカから出力するゲーム音声との両方が生成される。以下では、テレビ2から出力されるゲーム音声を「テレビ用ゲーム音声」と呼び、端末装置7から出力されるゲーム音声を「端末用ゲーム音声」と呼ぶことがある。
上記のようにゲーム装置3において生成される画像および音声のうちで、テレビ2において出力される画像および音声のデータは、AV−IC15によって読み出される。AV−IC15は、読み出した画像データをAVコネクタ16を介してテレビ2に出力するとともに、読み出した音声データを、テレビ2に内蔵されるスピーカ2aに出力する。これによって、テレビ2に画像が表示されるとともにスピーカ2aから音が出力される。
また、ゲーム装置3において生成される画像および音声のうちで、端末装置7において出力される画像および音声のデータは、入出力プロセッサ11a等によって端末装置7へ送信される。入出力プロセッサ11a等による端末装置7へのデータの送信については後述する。
入出力プロセッサ11aは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ11aは、フラッシュメモリ17、ネットワーク通信モジュール18、コントローラ通信モジュール19、拡張コネクタ20、メモリカード用コネクタ21、コーデックLSI27に接続される。また、ネットワーク通信モジュール18にはアンテナ22が接続される。コントローラ通信モジュール19にはアンテナ23が接続される。コーデックLSI27は端末通信モジュール28に接続され、端末通信モジュール28にはアンテナ29が接続される。
ゲーム装置3は、インターネット等のネットワークに接続して外部情報処理装置(例えば他のゲーム装置や、各種サーバ等)と通信を行うことが可能である。すなわち、入出力プロセッサ11aは、ネットワーク通信モジュール18およびアンテナ22を介してインターネット等のネットワークに接続し、ネットワークに接続される外部情報処理装置と通信することができる。入出力プロセッサ11aは、定期的にフラッシュメモリ17にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、ネットワーク通信モジュール18およびアンテナ22を介してネットワークに送信する。また、入出力プロセッサ11aは、外部情報処理装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ22およびネットワーク通信モジュール18を介して受信し、受信したデータをフラッシュメモリ17に記憶する。CPU10はゲームプログラムを実行することにより、フラッシュメモリ17に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ17には、ゲーム装置3と外部情報処理装置との間で送受信されるデータの他、ゲーム装置3を利用してプレイしたゲームのセーブデータ(ゲームの結果データまたは途中データ)が記憶されてもよい。また、フラッシュメモリ17にはゲームプログラムが記憶されてもよい。
また、ゲーム装置3は、コントローラ5からの操作データを受信することが可能である。すなわち、入出力プロセッサ11aは、コントローラ5から送信される操作データをアンテナ23およびコントローラ通信モジュール19を介して受信し、内部メインメモリ11eまたは外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
また、ゲーム装置3は、端末装置7との間で画像や音声等のデータを送受信することが可能である。入出力プロセッサ11aは、端末装置7へゲーム画像(端末用ゲーム画像)を送信する場合、GPU11bが生成したゲーム画像のデータをコーデックLSI27へ出力する。コーデックLSI27は、入出力プロセッサ11aからの画像データに対して所定の圧縮処理を行う。端末通信モジュール28は、端末装置7との間で無線通信を行う。したがって、コーデックLSI27によって圧縮された画像データは、端末通信モジュール28によってアンテナ29を介して端末装置7へ送信される。なお、本実施形態では、ゲーム装置3から端末装置7へ送信される画像データはゲームに用いるものであり、ゲームにおいては表示される画像に遅延が生じるとゲームの操作性に悪影響が出る。そのため、ゲーム装置3から端末装置7への画像データの送信に関しては、できるだけ遅延が生じないようにすることが好ましい。したがって、本実施形態では、コーデックLSI27は、例えばH.264規格といった高効率の圧縮技術を用いて画像データを圧縮する。なお、それ以外の圧縮技術を用いてもよいし、通信速度が十分である場合には無圧縮で画像データを送信する構成であってもよい。また、端末通信モジュール28は、例えばWi−Fiの認証を受けた通信モジュールであり、例えばIEEE802.11n規格で採用されるMIMO(Multiple Input Multiple Output)の技術を用いて端末装置7との間の無線通信を高速に行うようにしてもよいし、他の通信方式を用いてもよい。
また、ゲーム装置3は、画像データの他、音声データを端末装置7へ送信する。すなわち、入出力プロセッサ11aは、DSP11cが生成した音声データを、コーデックLSI27を介して端末通信モジュール28へ出力する。コーデックLSI27は、音声データに対しても画像データと同様に圧縮処理を行う。音声データに対する圧縮の方式は、どのような方式であってもよいが、圧縮率が高く、音声の劣化が少ない方式が好ましい。また、他の実施形態においては、音声データは圧縮されずに送信されてもよい。端末通信モジュール28は、圧縮された画像データおよび音声データを、アンテナ29を介して端末装置7へ送信する。
さらに、ゲーム装置3は、上記画像データおよび音声データの他に、必要に応じて各種の制御データを端末装置7へ送信する。制御データは、端末装置7が備える構成要素に対する制御指示を表すデータであり、例えばマーカ部(図10に示すマーカ部55)の点灯を制御する指示や、カメラ(図10に示すカメラ56)の撮像を制御する指示等を表す。入出力プロセッサ11aは、CPU10の指示に応じて制御データを端末装置7へ送信する。なお、この制御データに関して、本実施形態ではコーデックLSI27はデータの圧縮処理を行わないが、他の実施形態においては圧縮処理を行うようにしてもよい。なお、ゲーム装置3から端末装置7へ送信される上述のデータは、必要に応じて暗号化がされていてもよいし、されていなくともよい。
また、ゲーム装置3は、端末装置7から各種データを受信可能である。詳細は後述するが、本実施形態では、端末装置7は、操作データ、画像データ、および音声データを送信する。端末装置7から送信される各データはアンテナ29を介して端末通信モジュール28によって受信される。ここで、端末装置7からの画像データおよび音声データは、ゲーム装置3から端末装置7への画像データおよび音声データと同様の圧縮処理が施されている。したがって、これら画像データおよび音声データについては、端末通信モジュール28からコーデックLSI27に送られ、コーデックLSI27によって伸張処理が施されて入出力プロセッサ11aに出力される。一方、端末装置7からの操作データに関しては、画像や音声に比べてデータ量が少ないので、圧縮処理が施されていなくともよい。また、必要に応じて暗号化がされていてもよいし、されていなくともよい。したがって、操作データは、端末通信モジュール28で受信された後、コーデックLSI27を介して入出力プロセッサ11aに出力される。入出力プロセッサ11aは、端末装置7から受信したデータを、内部メインメモリ11eまたは外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
また、ゲーム装置3は、他の機器や外部記憶媒体に接続することが可能である。すなわち、入出力プロセッサ11aには、拡張コネクタ20およびメモリカード用コネクタ21が接続される。拡張コネクタ20は、USBやSCSIのようなインターフェースのためのコネクタである。拡張コネクタ20に対しては、外部記憶媒体のようなメディアを接続したり、他のコントローラ等の周辺機器を接続したり、有線の通信用コネクタを接続することによってネットワーク通信モジュール18に替えてネットワークとの通信を行ったりすることができる。メモリカード用コネクタ21は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ11aは、拡張コネクタ20やメモリカード用コネクタ21を介して外部記憶媒体にアクセスし、外部記憶媒体にデータを保存したり、外部記憶媒体からデータを読み出したりすることができる。
ゲーム装置3には、電源ボタン24、リセットボタン25、およびイジェクトボタン26が設けられる。電源ボタン24およびリセットボタン25は、システムLSI11に接続される。電源ボタン24がオンされると、図示しないACアダプタによって外部の電源からゲーム装置3の各構成要素に対して電力が供給される。リセットボタン25が押されると、システムLSI11は、ゲーム装置3の起動プログラムを再起動する。イジェクトボタン26は、ディスクドライブ14に接続される。イジェクトボタン26が押されると、ディスクドライブ14から光ディスク4が排出される。
なお、他の実施形態においては、ゲーム装置3が備える各構成要素のうちでいくつかの構成要素は、ゲーム装置3とは別体の拡張機器として構成されてもよい。このとき、拡張機器は、例えば上記拡張コネクタ20を介してゲーム装置3と接続されるようにしてもよい。具体的には、拡張機器は、例えば上記コーデックLSI27、端末通信モジュール28およびアンテナ29の各構成要素を備えており、拡張コネクタ20に対して着脱可能であってもよい。これによれば、上記各構成要素を備えていないゲーム装置に対して上記拡張機器を接続することによって、当該ゲーム装置を端末装置7と通信可能な構成とすることができる。
[3.コントローラ5の構成]
次に、図3〜図7を参照して、コントローラ5について説明する。上述のように、コントローラ5は、メインコントローラ8とサブコントローラ9とによって構成される。図3は、メインコントローラ8の外観構成を示す斜視図である。図4は、メインコントローラ8の外観構成を示す斜視図である。図3は、メインコントローラ8の上側後方から見た斜視図であり、図4は、メインコントローラ8を下側前方から見た斜視図である。
図3および図4において、メインコントローラ8は、例えばプラスチック成型によって形成されたハウジング31を有している。ハウジング31は、その前後方向(図3に示すZ軸方向)を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。ユーザは、メインコントローラ8に設けられたボタンを押下すること、および、メインコントローラ8自体を動かしてその位置や姿勢(傾き)を変えることによってゲーム操作を行うことができる。
ハウジング31には、複数の操作ボタンが設けられる。図3に示すように、ハウジング31の上面には、十字ボタン32a、1番ボタン32b、2番ボタン32c、Aボタン32d、マイナスボタン32e、ホームボタン32f、プラスボタン32g、および電源ボタン32hが設けられる。本明細書では、これらのボタン32a〜32hが設けられるハウジング31の上面を「ボタン面」と呼ぶことがある。一方、図4に示すように、ハウジング31の下面には凹部が形成されており、当該凹部の後面側傾斜面にはBボタン32iが設けられる。これらの各操作ボタン32a〜32iには、ゲーム装置3が実行する情報処理プログラムに応じた機能が適宜割り当てられる。また、電源ボタン32hは遠隔からゲーム装置3本体の電源をオン/オフするためのものである。ホームボタン32fおよび電源ボタン32hは、その上面がハウジング31の上面に埋没している。これによって、ユーザがホームボタン32fまたは電源ボタン32hを誤って押下することを防止することができる。
ハウジング31の後面にはコネクタ33が設けられている。コネクタ33は、メインコントローラ8に他の機器(例えば、サブコントローラ9や他のセンサユニット等)を接続するために利用される。また、ハウジング31の後面におけるコネクタ33の両側には、上記他の機器が容易に離脱することを防止するために係止穴33aが設けられている。
ハウジング31上面の後方には複数(図3では4つ)のLED34a〜34dが設けられる。ここで、コントローラ5(メインコントローラ8)には、他のコントローラと区別するためにコントローラ種別(番号)が付与される。各LED34a〜34dは、コントローラ5に現在設定されている上記コントローラ種別をユーザに通知したり、コントローラ5の電池残量をユーザに通知したりする等の目的で用いられる。具体的には、コントローラ5を用いてゲーム操作が行われる際、上記コントローラ種別に応じて複数のLED34a〜34dのいずれか1つが点灯する。
また、メインコントローラ8は撮像情報演算部35(図6)を有しており、図4に示すように、ハウジング31前面には撮像情報演算部35の光入射面35aが設けられる。光入射面35aは、マーカ6Rおよび6Lからの赤外光を少なくとも透過する材質で構成される。
ハウジング31上面における1番ボタン32bとホームボタン32fとの間には、メインコントローラ8に内蔵されるスピーカ47(図5)からの音を外部に放出するための音抜き孔31aが形成されている。
次に、図5および図6を参照して、メインコントローラ8の内部構造について説明する。図5および図6は、メインコントローラ8の内部構造を示す図である。なお、図5は、メインコントローラ8の上筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6は、メインコントローラ8の下筐体(ハウジング31の一部)を外した状態を示す斜視図である。図6に示す斜視図は、図5に示す基板30を裏面から見た斜視図となっている。
図5において、ハウジング31の内部には基板30が固設されており、当該基板30の上主面上に各操作ボタン32a〜32h、各LED34a〜34d、加速度センサ37、アンテナ45、およびスピーカ47等が設けられる。これらは、基板30等に形成された配線(図示せず)によってマイクロコンピュータ(Micro Computer:マイコン)42(図6参照)に接続される。本実施形態では、加速度センサ37は、X軸方向に関してメインコントローラ8の中心からずれた位置に配置されている。これによって、メインコントローラ8をZ軸回りに回転させたときのメインコントローラ8の動きが算出しやすくなる。また、加速度センサ37は、長手方向(Z軸方向)に関してメインコントローラ8の中心よりも前方に配置されている。また、無線モジュール44(図6)およびアンテナ45によって、コントローラ5(メインコントローラ8)がワイヤレスコントローラとして機能する。
一方、図6において、基板30の下主面上の前端縁に撮像情報演算部35が設けられる。撮像情報演算部35は、メインコントローラ8の前方から順に赤外線フィルタ38、レンズ39、撮像素子40、および画像処理回路41を備えている。これらの部材38〜41はそれぞれ基板30の下主面に取り付けられる。
さらに、基板30の下主面上には、上記マイコン42およびバイブレータ46が設けられている。バイブレータ46は、例えば振動モータやソレノイドであり、基板30等に形成された配線によってマイコン42と接続される。マイコン42の指示によりバイブレータ46が作動することによってメインコントローラ8に振動が発生する。これによって、メインコントローラ8を把持しているユーザの手にその振動が伝達される、いわゆる振動対応ゲームを実現することができる。本実施形態では、バイブレータ46は、ハウジング31のやや前方寄りに配置される。つまり、バイブレータ46がメインコントローラ8の中心よりも端側に配置することによって、バイブレータ46の振動によりメインコントローラ8全体を大きく振動させることができる。また、コネクタ33は、基板30の下主面上の後端縁に取り付けられる。なお、図5および図6に示す他、メインコントローラ8は、マイコン42の基本クロックを生成する水晶振動子、スピーカ47に音声信号を出力するアンプ等を備えている。
図7は、サブコントローラ9の外観構成を示す斜視図である。サブコントローラ9は、例えばプラスチック成型によって形成されたハウジング80を有している。ハウジング80は、メインコントローラ8と同様に、全体として大人や子供の片手で把持可能な大きさである。このサブコントローラ9を用いることによっても、プレイヤは、ボタンやスティックを操作することと、コントローラ自体の位置や向きを変えることとによって、ゲーム操作を行うことができる。
図7に示すように、ハウジング80の上面(y’軸負方向側の面)の先端側(z’軸正側)には、アナログジョイスティック81が設けられる。また、図示されないが、ハウジング80の先端には、後方にやや傾斜する先端面が設けられており、この先端面には、上下方向(図3に示すy軸方向)に並べて、CボタンおよびZボタンが設けられる。アナログジョイスティック81および各ボタン(CボタンおよびZボタン)には、ゲーム装置3が実行するゲームプログラムに応じてそれぞれ適宜の機能が割り当てられる。なお、アナログジョイスティック81および各ボタンを包括的に「操作部82(図8参照)」と呼ぶことがある。
また、図7では示されないが、サブコントローラ9は、ハウジング80の内部に加速度センサ(図8に示す加速度センサ83)を有している。本実施形態においては、加速度センサ83は、メインコントローラ8の加速度センサ37と同様のものが用いられる。ただし、加速度センサ83は、加速度センサ37とは異なるものであってもよく、例えば所定の1軸または2軸の加速度を検出するものであってもよい。
また、図7に示すように、ハウジング80の後端にはケーブルの一端が接続されている。図7では示されないが、ケーブルの他端にはコネクタ(図8に示すコネクタ84)が接続される。このコネクタはメインコントローラ8のコネクタ33と接続可能である。つまり、コネクタ33とコネクタ84とを接続することによって、メインコントローラ8とサブコントローラ9とが接続される。
なお、図3〜図7に示したメインコントローラ8およびサブコントローラ9の形状や、各操作ボタンの形状、加速度センサやバイブレータの数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。また、本実施形態では、メインコントローラ8の撮像手段による撮像方向はZ軸正方向であるが、撮像方向はいずれの方向であってもよい。すなわち、コントローラ5における撮像情報演算部35の位置(撮像情報演算部35の光入射面35a)は、ハウジング31の前面でなくてもよく、ハウジング31の外部から光を取り入れることができれば他の面に設けられてもかまわない。
図8は、コントローラ5の構成を示すブロック図である。図8に示すように、メインコントローラ8は、操作部32(各操作ボタン32a〜32i)、撮像情報演算部35、通信部36、加速度センサ37、およびジャイロセンサ48を備えている。また、サブコントローラ9は、操作部82および加速度センサ83を備えている。コントローラ5は、自機に対して行われた操作内容を表すデータを操作データとしてゲーム装置3へ送信するものである。なお、以下では、コントローラ5が送信する操作データを「コントローラ操作データ」と呼び、端末装置7が送信する操作データを「端末操作データ」と呼ぶことがある。
操作部32は、上述した各操作ボタン32a〜32iを含み、各操作ボタン32a〜32iに対する入力状態(各操作ボタン32a〜32iが押下されたか否か)を表す操作ボタンデータを通信部36のマイコン42へ出力する。
撮像情報演算部35は、撮像手段が撮像した画像データを解析してその中で輝度が高い領域を判別してその領域の重心位置やサイズなどを算出するためのシステムである。撮像情報演算部35は、例えば最大200フレーム/秒程度のサンプリング周期を有するので、比較的高速なコントローラ5の動きでも追跡して解析することができる。
撮像情報演算部35は、赤外線フィルタ38、レンズ39、撮像素子40、および画像処理回路41を含んでいる。赤外線フィルタ38は、コントローラ5の前方から入射する光から赤外線のみを通過させる。レンズ39は、赤外線フィルタ38を透過した赤外線を集光して撮像素子40へ入射させる。撮像素子40は、例えばCMOSセンサやあるいはCCDセンサのような固体撮像素子であり、レンズ39が集光した赤外線を受光して画像信号を出力する。ここで、撮像対象となる端末装置7のマーカ部55およびマーカ装置6は、赤外光を出力するマーカで構成される。したがって、赤外線フィルタ38を設けることによって、撮像素子40は、赤外線フィルタ38を通過した赤外線だけを受光して画像データを生成するので、撮像対象(マーカ部55および/またはマーカ装置6)の画像をより正確に撮像することができる。以下では、撮像素子40によって撮像された画像を撮像画像と呼ぶ。撮像素子40によって生成された画像データは、画像処理回路41で処理される。画像処理回路41は、撮像画像内における撮像対象の位置を算出する。画像処理回路41は、算出された位置を示す座標を通信部36のマイコン42へ出力する。この座標のデータは、マイコン42によって操作データとしてゲーム装置3に送信される。以下では、上記座標を「マーカ座標」と呼ぶ。マーカ座標はコントローラ5自体の向き(傾斜角度)や位置に対応して変化するので、ゲーム装置3はこのマーカ座標を用いてコントローラ5の向きや位置を算出することができる。
なお、他の実施形態においては、コントローラ5は画像処理回路41を備えていない構成であってもよく、撮像画像自体がコントローラ5からゲーム装置3へ送信されてもよい。このとき、ゲーム装置3は、画像処理回路41と同様の機能を有する回路あるいはプログラムを有しており、上記マーカ座標を算出するようにしてもよい。
加速度センサ37は、コントローラ5の加速度(重力加速度を含む)を検出する、すなわち、コントローラ5に加わる力(重力を含む)を検出する。加速度センサ37は、当該加速度センサ37の検出部に加わっている加速度のうち、センシング軸方向に沿った直線方向の加速度(直線加速度)の値を検出する。例えば、2軸以上の多軸加速度センサの場合には、加速度センサの検出部に加わっている加速度として、各軸に沿った成分の加速度をそれぞれ検出する。なお、加速度センサ37は、例えば静電容量式のMEMS(Micro Electro Mechanical System)型加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。
本実施形態では、加速度センサ37は、コントローラ5を基準とした上下方向(図3に示すY軸方向)、左右方向(図3に示すX軸方向)および前後方向(図3に示すZ軸方向)の3軸方向に関してそれぞれ直線加速度を検出する。加速度センサ37は、各軸に沿った直線方向に関する加速度を検出するものであるため、加速度センサ37からの出力は3軸それぞれの直線加速度の値を表すものとなる。すなわち、検出された加速度は、コントローラ5を基準に設定されるXYZ座標系(コントローラ座標系)における3次元のベクトルとして表される。
加速度センサ37が検出した加速度を表すデータ(加速度データ)は、通信部36へ出力される。なお、加速度センサ37が検出した加速度は、コントローラ5自体の向き(傾斜角度)や動きに対応して変化するので、ゲーム装置3は取得された加速度データを用いてコントローラ5の向きや動きを算出することができる。本実施形態では、ゲーム装置3は、取得された加速度データに基づいてコントローラ5の姿勢や傾斜角度等を算出する。
なお、加速度センサ37(後述する加速度センサ63についても同様)から出力される加速度の信号に基づいて、ゲーム装置3のプロセッサ(例えばCPU10)またはコントローラ5のプロセッサ(例えばマイコン42)等のコンピュータが処理を行うことによって、コントローラ5に関するさらなる情報を推測または算出(判定)することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、加速度センサ37を搭載するコントローラ5が静止状態であることを前提としてコンピュータ側の処理が実行される場合(すなわち、加速度センサによって検出される加速度が重力加速度のみであるとして処理が実行される場合)、コントローラ5が現実に静止状態であれば、検出された加速度に基づいてコントローラ5の姿勢が重力方向に対して傾いているか否かまたはどの程度傾いているかを知ることができる。具体的には、加速度センサ37の検出軸が鉛直下方向を向いている状態を基準としたとき、1G(重力加速度)がかかっているか否かによって、コントローラ5が基準に対して傾いているか否かを知ることができるし、その大きさによって基準に対してどの程度傾いているかも知ることができる。また、多軸の加速度センサ37の場合には、さらに各軸の加速度の信号に対して処理を施すことによって、重力方向に対してコントローラ5がどの程度傾いているかをより詳細に知ることができる。この場合において、プロセッサは、加速度センサ37からの出力に基づいてコントローラ5の傾斜角度を算出してもよいし、当該傾斜角度を算出せずに、コントローラ5の傾斜方向を算出するようにしてもよい。このように、加速度センサ37をプロセッサと組み合わせて用いることによって、コントローラ5の傾斜角度または姿勢を判定することができる。
一方、コントローラ5が動的な状態(コントローラ5が動かされている状態)であることを前提とする場合には、加速度センサ37は重力加速度に加えてコントローラ5の動きに応じた加速度を検出するので、検出された加速度から重力加速度の成分を所定の処理により除去することによってコントローラ5の動き方向を知ることができる。また、コントローラ5が動的な状態であることを前提とする場合であっても、検出された加速度から、加速度センサの動きに応じた加速度の成分を所定の処理により除去することによって、重力方向に対するコントローラ5の傾きを知ることが可能である。なお、他の実施例では、加速度センサ37は、内蔵の加速度検出手段で検出された加速度信号をマイコン42に出力する前に当該加速度信号に対して所定の処理を行うための、組込み式の処理装置または他の種類の専用の処理装置を備えていてもよい。組込み式または専用の処理装置は、例えば、加速度センサ37が静的な加速度(例えば、重力加速度)を検出するために用いられる場合、加速度信号を傾斜角(あるいは、他の好ましいパラメータ)に変換するものであってもよい。
ジャイロセンサ48は、3軸(本実施形態では、XYZ軸)回りの角速度を検出する。本明細書では、コントローラ5の撮像方向(Z軸正方向)を基準として、X軸回りの回転方向をピッチ方向、Y軸回りの回転方向をヨー方向、Z軸回りの回転方向をロール方向と呼ぶ。ジャイロセンサ48は、3軸回りの角速度を検出することができればよく、用いるジャイロセンサの数および組み合わせはどのようなものであってもよい。例えば、ジャイロセンサ48は、3軸ジャイロセンサであってもよいし、2軸ジャイロセンサと1軸ジャイロセンサとを組み合わせて3軸周りの角速度を検出するものであってもよい。ジャイロセンサ48で検出された角速度を表すデータは、通信部36へ出力される。また、ジャイロセンサ48は1軸または2軸回りの角速度を検出するものであってもよい。
また、サブコントローラ9の操作部82は、上述したアナログジョイスティック81、CボタンおよびZボタンを含む。操作部82は、アナログジョイスティック81に対する傾倒方向および傾倒量を表すスティックデータ(サブスティックデータと呼ぶ)と、各ボタンに対する入力状態(各ボタンが押下されたか否か)を表す操作ボタンデータ(サブ操作ボタンデータと呼ぶ)とを、コネクタ84を介してメインコントローラ8へ出力する。
また、サブコントローラ9の加速度センサ83は、メインコントローラ8の加速度センサ37と同様のセンサであり、サブコントローラ9の加速度(重力加速度を含む)を検出する、すなわち、サブコントローラ9に加わる力(重力を含む)を検出する。加速度センサ83は、当該加速度センサ83の検出部に加わっている加速度のうち、所定の3軸方向に沿った直線方向の加速度(直線加速度)の値を検出する。検出された加速度を表すデータ(サブ加速度データと呼ぶ)は、コネクタ84を介してメインコントローラ8へ出力される。
以上のように、サブコントローラ9は、上記サブスティックデータ、サブ操作ボタンデータ、およびサブ加速度データを含むサブコントローラデータをメインコントローラ8へ出力する。
メインコントローラ8の通信部36は、マイコン42、メモリ43、無線モジュール44、およびアンテナ45を含んでいる。マイコン42は、処理を行う際にメモリ43を記憶領域として用いながら、マイコン42が取得したデータをゲーム装置3へ無線送信する無線モジュール44を制御する。
サブコントローラ9からのサブコントローラデータは、マイコン42に入力され、一時的にメモリ43に格納される。また、操作部32、撮像情報演算部35、加速度センサ37、およびジャイロセンサ48からマイコン42へ出力されたデータ(メインコントローラデータと呼ぶ)は、一時的にメモリ43に格納される。これらのメインコントローラおよびサブコントローラデータは、操作データ(コントローラ操作データ)としてゲーム装置3へ送信される。すなわち、マイコン42は、ゲーム装置3のコントローラ通信モジュール19への送信タイミングが到来すると、メモリ43に格納されている操作データを無線モジュール44へ出力する。無線モジュール44は、例えばBluetooth(ブルートゥース)(登録商標)の技術を用いて、所定周波数の搬送波を操作データで変調し、その微弱電波信号をアンテナ45から放射する。つまり、操作データは、無線モジュール44で微弱電波信号に変調されてコントローラ5から送信される。微弱電波信号はゲーム装置3側のコントローラ通信モジュール19で受信される。受信された微弱電波信号について復調や復号を行うことによって、ゲーム装置3は操作データを取得することができる。そして、ゲーム装置3のCPU10は、コントローラ5から取得した操作データを用いてゲーム処理を行う。なお、通信部36からコントローラ通信モジュール19への無線送信は所定の周期毎に逐次行われるが、ゲームの処理は1/60秒を単位として(1フレーム時間として)行われることが一般的であるので、この時間以下の周期で送信を行うことが好ましい。コントローラ5の通信部36は、例えば1/200秒に1回の割合で操作データをゲーム装置3のコントローラ通信モジュール19へ出力する。
以上のように、メインコントローラ8は、自機に対する操作を表す操作データとして、マーカ座標データ、加速度データ、角速度データ、および操作ボタンデータを送信可能である。サブコントローラ9は、自機に対する操作を表す操作データとして、加速度データ、スティックデータ、および操作ボタンデータを送信可能である。また、ゲーム装置3は、上記操作データをゲーム入力として用いてゲーム処理を実行する。したがって、上記コントローラ5を用いることによって、ユーザは、各操作ボタンを押下するという従来の一般的なゲーム操作に加えて、コントローラ5自体を動かすゲーム操作を行うことができる。例えば、メインコントローラ8および/またはサブコントローラ9を任意の姿勢に傾ける操作、メインコントローラ8によって画面上の任意の位置を指示する操作、および、メインコントローラ8および/またはサブコントローラ9自体を動かす操作等を行うことが可能となる。
また、本実施形態において、コントローラ5は、ゲーム画像を表示する表示手段を有しないが、例えば電池残量を表す画像等を表示するための表示手段を有していてもよい。
[4.端末装置7の構成]
次に、図9〜図11を参照して、端末装置7の構成について説明する。図9は、端末装置7の外観構成を示す図である。図9における(a)図は端末装置7の正面図であり、(b)図は上面図であり、(c)図は右側面図であり、(d)図は下面図である。また、図10は、ユーザが端末装置7を把持した様子を示す図である。
図9に示されるように、端末装置7は、大略的には横長の長方形の板状形状であるハウジング50を備える。ハウジング50は、ユーザが把持することができる程度の大きさである。したがって、ユーザは、端末装置7を持って動かしたり、端末装置7の配置位置を変更したりすることができる。
端末装置7は、ハウジング50の表面にLCD51を有する。LCD51は、ハウジング50の表面の中央付近に設けられる。したがって、ユーザは、図10に示すようにLCD51の両側部分のハウジング50を持つことによって、LCD51の画面を見ながら端末装置を持って動かすことができる。なお、図10ではユーザがLCD51の左右両側の部分のハウジング50を持つことで端末装置7を横持ちで(横に長い向きにして)持つ例を示しているが、端末装置7を縦持ちで(縦に長い向きにして)持つことも可能である。
図9の(a)図に示すように、端末装置7は、操作手段として、LCD51の画面上にタッチパネル52を有する。本実施形態では、タッチパネル52は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。また、タッチパネル52はシングルタッチ方式でもよいし、マルチタッチ方式であってもよい。本実施形態では、タッチパネル52として、LCD51の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル52の解像度とLCD51の解像度が一致している必要はない。タッチパネル52に対する入力は通常タッチペンを用いて行われるが、タッチペンに限らずユーザの指でタッチパネル52に対する入力をすることも可能である。なお、ハウジング50には、タッチパネル52に対する操作を行うために用いられるタッチペンを収納するための収納穴が設けられていてもよい。このように、端末装置7はタッチパネル52を備えるので、ユーザは、端末装置7を動かしながらタッチパネル52を操作することができる。つまりユーザは、LCD51の画面を動かしつつ、その画面に対して直接(タッチパネル52によって)入力を行うことができる。
図9に示すように、端末装置7は、操作手段として、2つのアナログスティック53Aおよび53Bと、複数のボタン54A〜54Lとを備えている。各アナログスティック53Aおよび53Bは、方向を指示するデバイスである。各アナログスティック53Aおよび53Bは、ユーザの指で操作されるスティック部がハウジング50の表面に対して任意の方向(上下左右および斜め方向の任意の角度)にスライド(または傾倒)することができるように構成されている。また、左アナログスティック53AはLCD51の画面の左側に、右アナログスティック53BはLCD51の画面の右側にそれぞれ設けられる。したがって、ユーザは、左右いずれの手でもアナログスティックを用いて方向を指示する入力を行うことができる。また、図10に示すように、各アナログスティック53Aおよび53Bは、ユーザが端末装置7の左右部分を把持した状態で操作可能な位置に設けられるので、ユーザは、端末装置7を持って動かす場合においても各アナログスティック53Aおよび53Bを容易に操作することができる。
各ボタン54A〜54Lは、所定の入力を行うための操作手段である。以下に示すように、各ボタン54A〜54Lは、ユーザが端末装置7の左右部分を把持した状態で操作可能な位置に設けられる(図10参照)。したがって、ユーザは、端末装置7を持って動かす場合においてもこれらの操作手段を容易に操作することができる。
図9の(a)図に示すように、ハウジング50の表面には、各操作ボタン54A〜54Lのうち、十字ボタン(方向入力ボタン)54Aと、ボタン54B〜54Hとが設けられる。つまり、これらのボタン54A〜54Hは、ユーザの親指で操作可能な位置に配置されている(図10参照)。
十字ボタン54Aは、LCD51の左側であって、左アナログスティック53Aの下側に設けられる。つまり、十字ボタン54Aはユーザの左手で操作可能な位置に配置されている。十字ボタン54Aは、十字の形状を有しており、上下左右の方向を指示することが可能なボタンである。また、ボタン54B〜54Dは、LCD51の下側に設けられる。これら3つのボタン54B〜54Dは、左右両方の手で操作可能な位置に配置されている。また、4つのボタン54E〜54Hは、LCD51の右側であって、右アナログスティック53Bの下側に設けられる。つまり、4つのボタン54E〜54Hはユーザの右手で操作可能な位置に配置されている。さらに、4つのボタン54E〜54Hは、(4つのボタン54E〜54Hの中心位置に対して)上下左右の位置関係となるように配置されている。したがって、端末装置7は、ユーザに上下左右の方向を指示させるためのボタンとして4つのボタン54E〜54Hを機能させることも可能である。
また、図9の(a)図、(b)図、および(c)図に示すように、第1Lボタン54Iおよび第1Rボタン54Jは、ハウジング50の斜め上部分(左上部分および右上部分)に設けられる。具体的には、第1Lボタン54Iは、板状のハウジング50における上側の側面の左端に設けられ、上側および左側の側面から露出している。また、第1Rボタン54Jは、ハウジング50における上側の側面の右端に設けられ、上側および右側の側面から露出している。このように、第1Lボタン54Iは、ユーザの左手人差し指で操作可能な位置に配置され、第1Rボタン54Jは、ユーザの右手人差し指で操作可能な位置に配置される(図10参照)。
また、図9の(b)図および(c)図に示すように、第2Lボタン54Kおよび第2Rボタン54Lは、板状のハウジング50の裏面(すなわちLCD51が設けられる表面の反対側の面)に突起して設けられる足部59Aおよび59Bに配置される。具体的には、第2Lボタン54Kは、ハウジング50の裏面の左側(表面側から見たときの左側)のやや上方に設けられ、第2Rボタン54Lは、ハウジング50の裏面の右側(表面側から見たときの右側)のやや上方に設けられる。換言すれば、第2Lボタン54Kは、表面に設けられる左アナログスティック53Aの概ね反対側の位置に設けられ、第2Rボタン54Lは、表面に設けられる右アナログスティック53Bの概ね反対側の位置に設けられる。このように、第2Lボタン54Kは、ユーザの左手中指で操作可能な位置に配置され、第2Rボタン54Lは、ユーザの右手中指で操作可能な位置に配置される(図10参照)。また、第2Lボタン54Kおよび第2Rボタン54Lは、図9の(c)図に示すように、上記足部59Aおよび59Bの斜め上方を向く面に設けられ、斜め上方を向くボタン面を有する。ユーザが端末装置7を把持した場合には中指は上下方向に動くと考えられるので、ボタン面を上方に向けることで、ユーザは第2Lボタン54Kおよび第2Rボタン54Lを押下しやすくなる。また、ハウジング50の裏面に足部が設けられることにより、ユーザはハウジング50を把持しやすくなり、かつ、足部にボタンが設けられることで、ハウジング50を把持したまま操作しやすくなる。
なお、図9に示す端末装置7に関しては、第2Lボタン54Kおよび第2Rボタン54Lが裏面に設けられるので、LCD51の画面(ハウジング50の表面)が上を向いた状態で端末装置7を載置させる場合、画面が完全に水平にはならない場合がある。そのため、他の実施形態においては、ハウジング50の裏面に3つ以上の足部が形成されてもよい。これによれば、LCD51の画面が上を向いた状態では足部が床面に接することで床面に載置できるので、画面が水平になるように端末装置7を載置することができる。また、着脱可能な足部を追加することで端末装置7を水平に載置するようにしてもよい。
各ボタン54A〜54Lには、ゲームプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン54Aおよびボタン54E〜54Hは方向指示操作や選択操作等に用いられてもよいし、各ボタン54B〜54Eは決定操作やキャンセル操作等に用いられてもよい。
なお、図示しないが、端末装置7は、端末装置7の電源をオン/オフするための電源ボタンを有している。また、端末装置7は、LCD51の画面表示をオン/オフするためのボタンや、ゲーム装置3との接続設定(ペアリング)を行うためのボタンや、スピーカ(図11に示すスピーカ67)の音量を調節するためのボタンを有していてもよい。
図9の(a)図に示すように、端末装置7は、マーカ55Aおよびマーカ55Bからなるマーカ部(図11に示すマーカ部55)をハウジング50の表面に備えている。マーカ部55は、LCD51の上側に設けられる。各マーカ55Aおよびマーカ55Bは、マーカ装置6の各マーカ6Rおよび6Lと同様、1以上の赤外LEDで構成される。マーカ部55は、上述のマーカ装置6と同様、コントローラ5(メインコントローラ8)の動き等をゲーム装置3が算出するために用いられる。また、ゲーム装置3はマーカ部55が備える各赤外LEDの点灯を制御することが可能である。
端末装置7は、撮像手段であるカメラ56を備えている。カメラ56は、所定の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。図9に示すように、本実施形態では、カメラ56はハウジング50の表面に設けられる。したがって、カメラ56は、端末装置7を持っているユーザの顔を撮像することができ、例えばLCD51を見ながらゲームを行っている時のユーザを撮像することができる。
なお、端末装置7は、音声入力手段であるマイク(図11に示すマイク69)を備えている。ハウジング50の表面には、マイクロフォン用孔60が設けられる。マイク69はこのマイクロフォン用孔60の奥のハウジング50内部に設けられる。マイクは、ユーザの音声等、端末装置7の周囲の音を検出する。
端末装置7は、音声出力手段であるスピーカ(図11に示すスピーカ67)を備えている。図9の(d)図に示すように、ハウジング50の下側側面にはスピーカ孔57が設けられる。スピーカ67の出力音はこのスピーカ孔57から出力される。本実施形態では、端末装置7は2つのスピーカを備えており、左スピーカおよび右スピーカのそれぞれの位置にスピーカ孔57が設けられる。
また、端末装置7は、他の装置を端末装置7に接続するための拡張コネクタ58を備えている。本実施形態においては、図9の(d)図に示すように、拡張コネクタ58は、ハウジング50の下側側面に設けられる。なお、拡張コネクタ58に接続される他の装置はどのようなものであってもよく、例えば、特定のゲームに用いるコントローラ(銃型のコントローラ等)やキーボード等の入力装置であってもよい。他の装置を接続する必要がなければ、拡張コネクタ58は設けられていなくともよい。
なお、図9に示した端末装置7に関して、各操作ボタンやハウジング50の形状や、各構成要素の数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。
次に、図11を参照して、端末装置7の内部構成について説明する。図11は、端末装置7の内部構成を示すブロック図である。図11に示すように、端末装置7は、図9に示した構成の他、タッチパネルコントローラ61、磁気センサ62、加速度センサ63、ジャイロセンサ64、ユーザインタフェースコントローラ(UIコントローラ)65、コーデックLSI66、スピーカ67、サウンドIC68、マイク69、無線モジュール70、アンテナ71、赤外線通信モジュール72、フラッシュメモリ73、電源IC74、および電池75を備える。これらの電子部品は、電子回路基板上に実装されてハウジング50内に収納される。
UIコントローラ65は、各種の入出力部に対するデータの入出力を制御するための回路である。UIコントローラ65は、タッチパネルコントローラ61、アナログスティック53(アナログスティック53Aおよび53B)、操作ボタン54(各操作ボタン54A〜54L)、マーカ部55、磁気センサ62、加速度センサ63、およびジャイロセンサ64に接続される。また、UIコントローラ65は、コーデックLSI66と拡張コネクタ58に接続される。また、UIコントローラ65には電源IC74が接続され、UIコントローラ65を介して各部に電力が供給される。電源IC74には内蔵の電池75が接続され、電力が供給される。また、電源IC74には、コネクタ等を介して外部電源から電力を取得可能な充電器76またはケーブルを接続することが可能であり、端末装置7は、当該充電器76またはケーブルを用いて外部電源からの電力供給と充電を行うことができる。なお、端末装置7は、図示しない充電機能を有するクレイドルに端末装置7を装着することで充電を行うようにしてもよい。
タッチパネルコントローラ61は、タッチパネル52に接続され、タッチパネル52の制御を行う回路である。タッチパネルコントローラ61は、タッチパネル52からの信号に基づいて所定の形式のタッチ位置データを生成してUIコントローラ65へ出力する。タッチ位置データは、タッチパネル52の入力面において入力が行われた位置の座標を表す。なお、タッチパネルコントローラ61は、タッチパネル52からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。また、UIコントローラ65からタッチパネルコントローラ61へは、タッチパネル52に対する各種の制御指示が出力される。
アナログスティック53は、ユーザの指で操作されるスティック部がスライドした(または傾倒した)方向および量を表すスティックデータをUIコントローラ65へ出力する。また、操作ボタン54は、各操作ボタン54A〜54Lに対する入力状況(押下されたか否か)を表す操作ボタンデータをUIコントローラ65へ出力する。
磁気センサ62は、磁界の大きさおよび方向を検知することで方位を検出する。検出された方位を示す方位データは、UIコントローラ65へ出力される。また、UIコントローラ65から磁気センサ62へは、磁気センサ62に対する制御指示が出力される。磁気センサ62に関しては、MI(磁気インピーダンス)素子、フラックスゲートセンサ、ホール素子、GMR(巨大磁気抵抗)素子、TMR(トンネル磁気抵抗)素子、あるいはAMR(異方性磁気抵抗)素子等を用いたセンサがあるが、方位を検出することができればどのようなものが用いられてもよい。なお、厳密には、地磁気以外に磁界が発生している場所においては、得られた方位データは方位を示さないことになるが、そのような場合であっても、端末装置7が動いた場合には方位データが変化するため、端末装置7の姿勢の変化を算出することができる。
加速度センサ63は、ハウジング50の内部に設けられ、3軸(図9の(a)図に示すxyz軸)方向に沿った直線加速度の大きさを検出する。具体的には、加速度センサ63は、ハウジング50の長辺方向をx軸、ハウジング50の短辺方向をy軸、ハウジング50の表面に対して垂直な方向をz軸として、各軸の直線加速度の大きさを検出する。検出された加速度を表す加速度データはUIコントローラ65へ出力される。また、UIコントローラ65から加速度センサ63へは、加速度センサ63に対する制御指示が出力される。加速度センサ63は、本実施形態では例えば静電容量式のMEMS型加速度センサであるとするが、他の実施形態においては他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ63は1軸または2軸方向を検出する加速度センサであってもよい。
ジャイロセンサ64は、ハウジング50の内部に設けられ、上記x軸、y軸およびz軸の3軸周りの角速度を検出する。検出された角速度を表す角速度データは、UIコントローラ65へ出力される。また、UIコントローラ65からジャイロセンサ64へは、ジャイロセンサ64に対する制御指示が出力される。なお、3軸の角速度を検出するために用いられるジャイロセンサの数および組み合わせはどのようなものであってもよく、ジャイロセンサ64はジャイロセンサ48と同様、2軸ジャイロセンサと1軸ジャイロセンサとで構成されてもよい。また、ジャイロセンサ64は1軸または2軸方向を検出するジャイロセンサであってもよい。
UIコントローラ65は、上記の各構成要素から受け取ったタッチ位置データ、スティックデータ、操作ボタンデータ、方位データ、加速度データ、および角速度データを含む操作データをコーデックLSI66に出力する。なお、拡張コネクタ58を介して端末装置7に他の装置が接続される場合には、当該他の装置に対する操作を表すデータが上記操作データにさらに含まれていてもよい。
コーデックLSI66は、ゲーム装置3へ送信するデータに対する圧縮処理、および、ゲーム装置3から送信されたデータに対する伸張処理を行う回路である。コーデックLSI66には、LCD51、カメラ56、サウンドIC68、無線モジュール70、フラッシュメモリ73、および赤外線通信モジュール72が接続される。また、コーデックLSI66はCPU77と内部メモリ78を含む。端末装置7はゲーム処理自体を行なわない構成であるが、端末装置7の管理や通信のための最小限のプログラムを実行する必要がある。電源投入時にフラッシュメモリ73に格納されたプログラムを内部メモリ78に読み出してCPU77が実行することで、端末装置7が起動する。また、内部メモリ78の一部の領域はLCD51のためのVRAMとして使用される。
カメラ56は、ゲーム装置3からの指示に従って画像を撮像し、撮像した画像データをコーデックLSI66へ出力する。また、コーデックLSI66からカメラ56へは、画像の撮像指示等、カメラ56に対する制御指示が出力される。なお、カメラ56は動画の撮影も可能である。すなわち、カメラ56は、繰り返し撮像を行って画像データをコーデックLSI66へ繰り返し出力することも可能である。
サウンドIC68は、スピーカ67およびマイク69に接続され、スピーカ67およびマイク69への音声データの入出力を制御する回路である。すなわち、コーデックLSI66から音声データを受け取った場合、サウンドIC68は当該音声データに対してD/A変換を行って得られる音声信号をスピーカ67へ出力し、スピーカ67から音を出力させる。また、マイク69は、端末装置7に伝わる音(ユーザの音声等)を検知して、当該音を示す音声信号をサウンドIC68へ出力する。サウンドIC68は、マイク69からの音声信号に対してA/D変換を行い、所定の形式の音声データをコーデックLSI66へ出力する。
コーデックLSI66は、カメラ56からの画像データ、マイク69からの音声データ、および、UIコントローラ65からの操作データを、端末操作データとして無線モジュール70を介してゲーム装置3へ送信する。本実施形態では、コーデックLSI66は、画像データおよび音声データに対して、コーデックLSI27と同様の圧縮処理を行う。上記端末操作データ、ならびに、圧縮された画像データおよび音声データは、送信データとして無線モジュール70に出力される。無線モジュール70にはアンテナ71が接続されており、無線モジュール70はアンテナ71を介してゲーム装置3へ上記送信データを送信する。無線モジュール70は、ゲーム装置3の端末通信モジュール28と同様の機能を有している。すなわち、無線モジュール70は、例えばIEEE802.11nの規格に準拠した方式により、無線LANに接続する機能を有する。送信されるデータは必要に応じて暗号化されていてもよいし、されていなくともよい。
以上のように、端末装置7からゲーム装置3へ送信される送信データには、操作データ(端末操作データ)、画像データ、および音声データが含まれる。なお、拡張コネクタ58を介して端末装置7に他の装置が接続される場合には、当該他の装置から受け取ったデータが上記送信データにさらに含まれていてもよい。また、赤外線通信モジュール72は、他の装置との間で例えばIRDAの規格に従った赤外線通信を行う。コーデックLSI66は、赤外線通信によって受信したデータを、必要に応じて上記送信データに含めてゲーム装置3へ送信してもよい。
また、上述のように、ゲーム装置3から端末装置7へは、圧縮された画像データおよび音声データが送信される。これらのデータはアンテナ71および無線モジュール70を介してコーデックLSI66に受信される。コーデックLSI66は、受信した画像データおよび音声データを伸張する。伸張された画像データはLCD51へ出力され、画像がLCD51に表示される。また、伸張された音声データはサウンドIC68へ出力され、サウンドIC68はスピーカ67から音を出力させる。
また、ゲーム装置3から受信されるデータに制御データが含まれる場合、コーデックLSI66およびUIコントローラ65は、制御データに従った制御指示を各部に行う。上述のように、制御データは、端末装置7が備える各構成要素(本実施形態では、カメラ56、タッチパネルコントローラ61、マーカ部55、各センサ62〜64、および赤外線通信モジュール72)に対する制御指示を表すデータである。本実施形態では、制御データが表す制御指示としては、上記各構成要素を動作させたり、動作を休止(停止)させたりする指示が考えられる。すなわち、ゲームで使用しない構成要素については電力消費を抑えるために休止させてもよく、その場合、端末装置7からゲーム装置3へ送信される送信データには、休止した構成要素からのデータが含まれないようにする。なお、マーカ部55は赤外LEDであるので、制御は単に電力の供給のON/OFFでよい。
以上のように、端末装置7は、タッチパネル52、アナログスティック53、および操作ボタン54といった操作手段を備えるが、他の実施形態においては、これらの操作手段に代えて、または、これらの操作手段とともに、他の操作手段を備える構成であってもよい。
また、端末装置7は、端末装置7の動き(位置や姿勢、あるいは、位置や姿勢の変化を含む)を算出するためのセンサとして、磁気センサ62、加速度センサ63、およびジャイロセンサ64を備えるが、他の実施形態においては、これらのセンサのうち1つまたは2つのみを備える構成であってもよい。また、他の実施形態においては、これらのセンサに代えて、または、これらのセンサとともに、他のセンサを備える構成であってもよい。
また、端末装置7は、カメラ56およびマイク69を備える構成であるが、他の実施形態においては、カメラ56およびマイク69を備えていなくてもよく、また、いずれか一方のみを備えていてもよい。
また、端末装置7は、端末装置7とメインコントローラ8との位置関係(メインコントローラ8から見た端末装置7の位置および/または姿勢等)を算出するための構成としてマーカ部55を備える構成であるが、他の実施形態ではマーカ部55を備えていない構成としてもよい。また、他の実施形態では、端末装置7は、上記位置関係を算出するための構成として他の手段を備えていてもよい。例えば、他の実施形態においては、メインコントローラ8がマーカ部を備え、端末装置7が撮像素子を備える構成としてもよい。さらにこの場合、マーカ装置6は赤外LEDに代えて、撮像素子を備える構成としてもよい。
[5.ゲーム処理の概要]
次に、本実施形態のゲームシステム1において実行されるゲーム処理の概要について説明する。本ゲーム処理によって実行されるゲームは、複数のコントローラ5を操作装置として用いて、複数人のプレイヤが対戦する形式のゲームである。また、本実施形態では端末装置7は表示装置として用いられ、テレビ2および端末装置7にゲーム画像が表示される。本実施形態においては、ゲームシステム1が2つのコントローラ5を含み、2つのコントローラ5が用いられる場合について説明する。つまり、本実施形態においては、2つのコントローラ5を1つずつ操作する2人のプレイヤによってゲームが行われる。なお、他の実施形態においては、コントローラ5の数は3つ以上であってもよい。
図12は、端末装置7に表示される端末用ゲーム画像の一例を示す図である。図12に示すように、端末用ゲーム画像としては、第1オブジェクト91の後方から第2オブジェクト93の方を見たときのゲーム空間を表す画像が端末装置7に表示される。第1オブジェクト91は、2人のプレイヤのうちの一方のプレイヤの操作対象となるオブジェクトである。また、第2オブジェクト93は、2人のプレイヤのうちの他方のプレイヤの操作対象となるオブジェクトである。以下では、第1オブジェクト91を操作するプレイヤを「第1プレイヤ」と呼び、第2オブジェクト93を操作するプレイヤを「第2プレイヤ」と呼ぶ。なお、本実施形態においては、第1プレイヤがゲーム空間の状況を把握しやすいように、端末装置7においては、第1オブジェクト91が半透明で(図12では点線で表す)表示される。
上記のように、端末装置7には、第1プレイヤのためのゲーム画像が表示される。すなわち、本実施形態においては、第1オブジェクト91を含むゲーム空間を表す画像が端末用ゲーム画像として表示される。なお、他の実施形態においては、端末用ゲーム画像は、第1オブジェクト91から見たゲーム空間を表す画像であってもよいし、視点の位置および/または視線方向が第1プレイヤの操作に応じて変化する画像であってもよい。また、詳細は後述するが、端末用ゲーム画像は、ゲーム空間に設定される第1仮想カメラを用いて生成される。
本ゲームにおいては、第1オブジェクト91は、第1プレイヤが操作するコントローラ5(第1コントローラと呼ぶ)に対する所定の移動操作に応じてゲーム空間を移動する。また、第1オブジェクト91は、ボウガン92を持っており、第1コントローラに対する所定の射撃操作に応じて射撃動作を行う。詳細は後述するが、ボウガン92の向きは、第1コントローラに含まれるメインコントローラ8(第1メインコントローラ)の姿勢に応じて変化するように制御される。つまり、第1プレイヤは、第1メインコントローラの姿勢を変化させる操作によって第1オブジェクト91の射撃方向を変化させることができる。
図13は、テレビ2に表示されるテレビ用ゲーム画像の一例を示す図である。図13に示すように、テレビ用ゲーム画像としては、第2オブジェクト93の後方から第1オブジェクト91の方を見たときのゲーム空間を表す画像がテレビ2に表示される。なお、本実施形態においては、第2プレイヤがゲーム空間の状況を把握しやすいように、テレビ2においては、第2オブジェクト93が半透明で(図13では点線で表す)表示される。
上記のように、テレビ2には、第2プレイヤのためのゲーム画像が表示される。すなわち、本実施形態においては、第2オブジェクト93を含むゲーム空間を表す画像がテレビ用ゲーム画像として表示される。なお、他の実施形態においては、テレビ用ゲーム画像は、第2オブジェクト93から見たゲーム空間を表す画像であってもよいし、視点の位置および/または視線方向が第2プレイヤの操作に応じて変化する画像であってもよい。また、詳細は後述するが、端末用ゲーム画像は、ゲーム空間に設定される第2仮想カメラを用いて生成される。
本ゲームにおいては、第2オブジェクト93は、第1オブジェクト91と同様の操作方法によって動作が制御される。すなわち、第2オブジェクト93は、第2プレイヤが操作するコントローラ5(第2コントローラと呼ぶ)に対する所定の移動操作に応じてゲーム空間を移動する。また、第2オブジェクト93は、ボウガン94を持っており、第2コントローラに対する所定の射撃操作に応じて射撃動作を行う。また、第2プレイヤは、第2コントローラに含まれるメインコントローラ8(第2メインコントローラ)の姿勢を変化させる操作によってボウガン94の向き(射撃方向)を変化させることができる。
本実施形態においてゲームシステム1を用いて行われるゲームは、2人のプレイヤがそれぞれオブジェクトを操作し、相手のオブジェクトを打ち合う射撃ゲームである。つまり、各プレイヤは、操作対象のオブジェクトをゲーム空間内において移動させつつ、当該オブジェクトに射撃動作を行わせ、相手のオブジェクトを撃って遊ぶ。
以上のように、本実施形態においては、第1プレイヤのためのゲーム画像が端末装置7に表示され、第2プレイヤのためのゲーム画像がテレビ2に表示される。したがって、各プレイヤのためのゲーム画像を2つの表示装置にそれぞれ表示するので、表示装置の表示領域を分割することなく、各プレイヤにとって見やすいゲーム画像を提供することができる。すなわち、1つの表示装置の表示領域を分割して複数のゲーム画像を表示する場合には、プレイヤは、他のプレイヤのゲーム画像を自己のゲーム画像と見間違えたり、窮屈に感じたりするという問題があるが、本実施形態によれば、このような問題を防止することができる。
また、本実施形態において行われるゲームは、2人のプレイヤが対戦する形式のゲームであるので、自分のためのゲーム画像が相手のプレイヤに見えてしまうと、ゲームの戦略性が低くなり、ゲームの興趣性が低下してしまう。具体的には、本実施形態においては、プレイヤは、自分のプレイヤオブジェクトを木等の後に移動することで相手から見えないように隠れさせることができるが、自分のためのゲーム画像を相手のプレイヤに見られてしまうと、自分のプレイヤオブジェクトの位置が相手のプレイヤにわかってしまう。これに関して、本実施形態によれば、端末装置7は可搬型の表示装置であるので、端末装置7を自由な位置に配置することができる。つまり、端末装置7を適切な位置に配置することによって、相手のプレイヤのためのゲーム画像が互いに見えないようにすることができる。これによって、ゲームの戦略性を高め、興趣性の高いゲームを提供することができる。
なお、本実施形態においては、上記のように、可搬型の表示装置である端末装置7を自由な位置に配置することができるので、プレイヤは、種々の配置態様でゲームを行うことができる。図14〜図16は、テレビ2と端末装置7との配置例を示す図である。図14は、テレビ2と端末装置7とを反対に向けて配置した配置例を示す。図14においては、テレビ2および端末装置7は、互いの正面方向が反対向きになるように配置される。このとき、第1プレイヤ96は端末装置7の正面に立ち、第2プレイヤ97はテレビ2の正面に立ってゲームを行う。図14に示す配置によれば、各プレイヤ96および97は、互いに相手のプレイヤのためのゲーム画像を見ることなくゲームを行うので、ゲームの戦略性を高めることができる。また、図14においては、各プレイヤ96および97が対面する向きとなるので、ゲーム空間における各オブジェクト91および93の位置関係と、現実の空間における各プレイヤ96および97の位置関係とが対応する。これによって、ゲームの臨場感をより高めることができる。
また、詳細は後述するが、本実施形態においては、各コントローラ5aおよび5bは、マーカ(マーカ装置6のマーカ6Rおよび6L、または、端末装置7が備えるマーカ部55のマーカ55Aおよびマーカ55B)を撮像した結果であるマーカ座標データを入力として用いてゲーム処理を実行する。つまり、第1プレイヤ96が操作する第1コントローラ5aは、第1プレイヤ96のためのゲーム画像が表示される端末装置7のマーカ部55に対応し、マーカ部55の撮像結果であるマーカ座標データに基づいてゲーム処理が実行される。また、第2プレイヤ97が操作する第2コントローラ5bは、第2プレイヤ97のためのゲーム画像が表示されるテレビ2に配置されるマーカ装置6に対応し、マーカ装置6の撮像結果であるマーカ座標データに基づいてゲーム処理が実行される。そのため、各プレイヤ96および97は、表示装置の方へコントローラを向けてゲーム操作を行う必要がある。一方、1つのコントローラがマーカ装置6とマーカ部55との両方のマーカを撮像してしまったり、対応しないマーカを撮像してしまったりすると、マーカが誤検出されるためにゲーム処理が正しく実行されず、ゲーム操作を正しく行うことができなくなる。したがって、マーカの撮像結果をゲーム処理に用いる場合には、1つのコントローラの撮像範囲にマーカ装置6とマーカ部55との両方のマーカが含まれたり、対応しないマーカをコントローラが撮像したりしないように、端末装置7を配置することが好ましい。
例えば図14に示すように、テレビ2と端末装置7とを反対に向けて配置する場合には、1つのコントローラの撮像範囲に両方のマーカが含まれず、対応しないマーカをコントローラが撮像するおそれもないので、好ましい。また、図15は、テレビ2の画面と端末装置7の画面とが略直角となるように配置した配置例を示す図である。図15に示すように、テレビ2の画面(マーカ装置6)と端末装置7の画面とのなす角を90°程度とすれば、1つのコントローラの撮像範囲に両方のマーカが含まれず、対応しないマーカをコントローラが撮像することもない。したがって、他の実施形態においては、プレイヤは、図15に示すように端末装置7を配置してもよい。このように、テレビ2の画面(マーカ装置6)と端末装置7の画面とのなす角を90°程度か、それよりも大きい角度とすれば、マーカが誤検出されることを防止することができる。
図16は、テレビ2と端末装置7とを横に並べた配置例を示す図である。図16に示すように、テレビ2の画面(マーカ装置6)と端末装置7の画面とを略水平に配置する場合には、1つのコントローラの撮像範囲に両方のマーカが含まれるおそれがあり、また、対応しないマーカをコントローラが撮像するおそれもある。したがって、端末装置7がこのように配置される場合には、マーカ装置6とマーカ部55とを時分割で発光させるようにしてもよい。また、図16に示すようにテレビ2と端末装置7とを横に並べて配置する場合には、いずれか一方のマーカのみを発光させるようにしてもよい。
[6.ゲーム処理の詳細]
次に、本ゲームシステムにおいて実行されるゲーム処理の詳細を説明する。まず、ゲーム処理において用いられる各種データについて説明する。図17は、ゲーム処理において用いられる各種データを示す図である。図17において、ゲーム装置3のメインメモリ(外部メインメモリ12または内部メインメモリ11e)に記憶される主なデータを示す図である。図17に示すように、ゲーム装置3のメインメモリには、ゲームプログラム100、コントローラ操作データ101、および処理用データ110が記憶される。なお、メインメモリには、図17に示すデータの他、ゲームに登場する各種オブジェクトの画像データやゲームに使用される音声データ等、ゲームに必要なデータが記憶される。
ゲームプログラム100は、ゲーム装置3に電源が投入された後の適宜のタイミングで光ディスク4からその一部または全部が読み込まれてメインメモリに記憶される。なお、ゲームプログラム100は、光ディスク4に代えて、フラッシュメモリ17やゲーム装置3の外部装置から(例えばインターネットを介して)取得されてもよい。また、ゲームプログラム100に含まれる一部(例えば、コントローラ5および/または端末装置7の姿勢を算出するためのプログラム)については、ゲーム装置3内に予め記憶されていてもよい。
コントローラ操作データ101は、コントローラ5に対するユーザ(プレイヤ)の操作を表すデータであり、コントローラ5に対する操作に基づいてコントローラ5から出力(送信)される。コントローラ操作データ101は、コントローラ5から送信されてゲーム装置3において取得され、メインメモリに記憶される。コントローラ操作データ101は、メイン操作ボタンデータ102、メイン加速度データ103、角速度データ104、マーカ座標データ105、サブスティックデータ106、サブ操作ボタンデータ107、および、サブ加速度データ108を含む。なお、ゲーム装置3は、4つのコントローラと通信可能であり、1〜4つのコントローラ5から操作データを取得することが可能であるが、本実施形態においては、2つのコントローラから操作データを取得するものとする。つまり、本実施形態においては、2つのコントローラ5からそれぞれ送信されてくる2つのコントローラ操作データ101がメインメモリにそれぞれ記憶される。メインメモリには、2つのコントローラ5毎に最新の(最後に取得された)ものから順に所定個数のコントローラ操作データが記憶されてもよい。
メイン操作ボタンデータ102は、メインコントローラ8に設けられる各操作ボタン32a〜32iに対する入力状態を表すデータである。具体的には、メイン操作ボタンデータ102は、各操作ボタン32a〜32iが押下されているか否かを表す。
メイン加速度データ103は、メインコントローラ8の加速度センサ37によって検出された加速度(加速度ベクトル)を表すデータである。ここでは、メイン加速度データ103は、図3に示すXYZの3軸の方向に関する加速度を各成分とする3次元の加速度を表すものであるが、他の実施形態においては、任意の1以上の方向に関する加速度を表すものであってもよい。
角速度データ104は、メインコントローラ8におけるジャイロセンサ48によって検出された角速度を表すデータである。ここでは、角速度データ104は、図3に示すXYZの3軸回りのそれぞれの角速度を表すものであるが、他の実施形態においては、任意の1軸以上の軸回り角速度を表すものであればよい。
マーカ座標データ105、撮像情報演算部35の画像処理回路41によって算出される座標、すなわち上記マーカ座標を表すデータである。マーカ座標は、撮像画像に対応する平面上の位置を表すための2次元座標系で表現され、マーカ座標データ105は、当該2次元座標系における座標値を表す。
サブスティックデータ106は、サブコントローラ9のアナログジョイスティック81に対する操作を表すデータである。具体的には、サブスティックデータ106は、アナログジョイスティック81に対する傾倒方向および傾倒量を表す。
サブ操作ボタンデータ107は、上記サブコントローラ9に設けられる各操作ボタンに対する入力状態を表すデータである。具体的には、サブ操作ボタンデータ107は、各操作ボタンが押下されているか否かを表す。
サブ加速度データ108は、サブコントローラ9の加速度センサ83によって検出された加速度(加速度ベクトル)を表すデータである。ここでは、サブ加速度データ108は、図7に示すx’y’z’の3軸の方向に関する加速度を各成分とする3次元の加速度を表すものであるが、他の実施形態においては、任意の1以上の方向に関する加速度を表すものであってもよい。
なお、コントローラ操作データ101は、コントローラ5に対するプレイヤの操作を表すものであればよく、上記各データ102〜108の一部のみを含むものであってもよい。また、コントローラ5が他の入力手段(例えば、タッチパネルやアナログスティック等)を有する場合には、コントローラ操作データ101は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。なお、本実施形態のようにコントローラ5自体の姿勢をゲーム操作として用いる場合には、コントローラ操作データ101は、メイン加速度データ103、角速度データ104、マーカ座標データ105、またはサブ加速度データ108のように、コントローラ5自体の姿勢に応じて値が変化するデータを含むようにする。
また、本実施形態では端末装置7が操作装置として用いられないので図示しないが、メインメモリには、端末装置7に対するプレイヤの操作を表す端末操作データが端末装置7から取得されて記憶されてもよい。
処理用データ110は、後述するゲーム処理(図18)において用いられるデータである。処理用データ110は、第1姿勢データ111、第2姿勢データ112、第1オブジェクトデータ113、第2オブジェクトデータ114、第1発射方向データ115、第2発射方向データ116、第1カメラデータ117、および、第2カメラデータ118を含む。なお、図17に示すデータの他、処理用データ110は、ゲームに登場する各種オブジェクトに設定される各種パラメータを表すデータ等、ゲーム処理において用いられる各種データを含む。
各姿勢データ111および112は、コントローラ5(より具体的にはメインコントローラ8)の姿勢を表すデータである。すなわち、第1姿勢データ111は第1コントローラ5aの姿勢を表し、第2姿勢データ112は第2コントローラ5bの姿勢を表す。コントローラ5の姿勢は、例えば、所定の基準姿勢から現在のコントローラ5の姿勢への回転を表す回転行列によって表現されてもよいし、3次のベクトルまたは3つの角度によって表現されてもよい。また、本実施形態においては、コントローラ5の姿勢として3次元空間における姿勢が用いられるが、他の実施形態においては、2次元平面における姿勢が用いられてもよい。各姿勢データ101および102は、対応するコントローラ5からのコントローラ操作データ101に含まれるメイン加速度データ103、角速度データ104、およびマーカ座標データ105に基づいて算出される。コントローラ5の姿勢の算出方法についてはステップS12で後述する。
各オブジェクトデータは、各オブジェクト91および93に設定される各種情報(ここでは、ゲーム空間における位置および向き)を表す。すなわち、第1オブジェクトデータ113は、第1オブジェクト91の位置および向きを表し、第2オブジェクトデータ114は、第2オブジェクト93の位置および向きを表す。本実施形態においては、各オブジェクト91および93の位置は、対応するコントローラ5からのサブスティックデータ106に基づいて算出される。
各発射方向データ115および116は、各オブジェクト91および93が持つボウガン92および94の発射方向(姿勢)を表す。すなわち、第1発射方向データ115は、第1オブジェクト91が持つボウガン92の発射方向を表し、第2発射方向データ116は、第2オブジェクト93が持つボウガン94の発射方向を表す。本実施形態においては、各ボウガン92および94の発射方向は、対応するコントローラ5に含まれるメインコントローラ8の姿勢(すなわち、各姿勢データ101および102)に基づいて算出される。
各カメラデータ117および118は、ゲーム空間に設定される各仮想カメラの位置および姿勢を表す。すなわち、第1カメラデータ117は上記第1仮想カメラの位置および姿勢を表し、第2カメラデータ118は上記第2仮想カメラの位置および姿勢を表す。本実施形態においては、各仮想カメラの位置および姿勢は、各オブジェクト91および93の位置に基づいて設定される。
次に、ゲーム装置3において実行されるゲーム処理の詳細を、図18〜図20を用いて説明する。図18は、ゲーム装置3において実行されるゲーム処理の流れを示すメインフローチャートである。ゲーム装置3の電源が投入されると、ゲーム装置3のCPU10は、図示しないブートROMに記憶されている起動プログラムを実行し、これによってメインメモリ等の各ユニットが初期化される。そして、光ディスク4に記憶されたゲームプログラムがメインメモリに読み込まれ、CPU10によって当該ゲームプログラムの実行が開始される。図18に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。なお、ゲーム装置3においては、電源投入後にゲームプログラムがすぐに実行される構成であってもよいし、電源投入後にまず所定のメニュー画面を表示する内蔵プログラムが実行され、その後ユーザによってゲームの開始が指示されたことに応じてゲームプログラムが実行される構成であってもよい。
なお、図18〜図20に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、変数の値や、判断ステップで利用される閾値も、単なる一例に過ぎず、必要に応じて他の値を採用してもよい。また、本実施形態では、上記フローチャートの各ステップの処理をCPU10が実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を、CPU10以外のプロセッサや専用回路が実行するようにしてもよい。
まずステップS1において、CPU10は初期処理を実行する。初期処理は、仮想のゲーム空間を構築し、ゲーム空間に登場する各オブジェクトを初期位置に配置したり、ゲーム処理で用いる各種パラメータの初期値を設定したりする処理である。なお、本実施形態においては、各オブジェクト91および93が所定の位置および所定の向きに配置される。すなわち、第1オブジェクト91の位置および向きを表すデータが第1オブジェクトデータ113としてメインメモリに記憶され、第2オブジェクト93の位置および向きを表すデータが第2オブジェクトデータ114としてメインメモリに記憶される。また、各オブジェクト91および92の位置に応じた初期位置および初期姿勢で各仮想カメラ(第1および第2仮想カメラ)がそれぞれ設定される。第1仮想カメラの初期位置および初期姿勢を表すデータは、第1カメラデータ117としてメインメモリに記憶され、第2仮想カメラの初期位置および初期姿勢を表すデータは、第2カメラデータ118としてメインメモリに記憶される。ステップS1の次にステップS2の処理が実行される。以降、ステップS2〜S8の一連の処理からなる処理ループが所定時間(1フレーム時間。例えば1/60秒)に1回の割合で繰り返し実行される。
ステップS2において、CPU10は、2つのコントローラ5から送信されてくるコントローラ操作データをそれぞれ取得する。各コントローラ5はコントローラ操作データをゲーム装置3へ繰り返し送信するので、ゲーム装置3においては、コントローラ通信モジュール19が各コントローラ操作データを逐次受信し、受信された各コントローラ操作データが入出力プロセッサ11aによってメインメモリに逐次記憶される。コントローラ5とゲーム装置3との間における送受信の間隔はゲームの処理時間よりも短い方が好ましく、例えば200分の1秒である。ステップS2においては、CPU10は、最新のコントローラ操作データ101をメインメモリから読み出す。ステップS2の次にステップS3の処理が実行される。
ステップS4において、CPU10はゲーム制御処理を実行する。ゲーム制御処理は、各プレイヤによるゲーム操作に従ってゲーム空間内のオブジェクトを動作させる処理等を実行し、ゲームを進行させる処理である。具体的には、本実施形態におけるゲーム制御処理においては、各オブジェクト91および93の動作を制御する処理、および、各仮想カメラを制御する処理等が実行される。以下、図19を参照して、ゲーム制御処理の詳細について説明する。
図19は、図18に示すゲーム制御処理(ステップS3)の詳細な流れを示すフローチャートである。ゲーム制御処理においてはまずステップS11において、CPU10は、第1オブジェクト91の移動を制御する。第1オブジェクト91の移動は、第1プレイヤが操作する第1コントローラの操作データ(第1操作データ)に基づいて制御される。具体的には、第1オブジェクト91は、アナログジョイスティック81に対する方向入力に応じて、第2オブジェクト93が正面に位置するように移動する。すなわち、アナログジョイスティック81に対する上下方向の入力に応じて、第1オブジェクト91は第2オブジェクト93に対して前進または後退する。また、アナログジョイスティック81に対する左右方向の入力に応じて、第1オブジェクト91は第2オブジェクト93を中心として左回りまたは右回りに回転移動する。これによって、第1オブジェクト91の正面に第2オブジェクト93が位置することになるので、ボウガン92で第2オブジェクト93を狙う操作が容易になる。なお、他の実施形態においては、第1オブジェクト91の移動の制御方法はどのような方法であってもよく、第2オブジェクト93の位置とは無関係に第1オブジェクト91の移動が制御されてもよい。
ステップS11の具体的な処理としては、CPU10は、メインメモリから各オブジェクトデータ113および114を読み出し、ステップS2で読み出されたサブスティックデータ106と、第1オブジェクト91の位置および向きと、第2オブジェクト93の位置とに基づいて、第1オブジェクト91の新たな位置および向きを算出する。そして、新たな位置および向きを表すデータを第1オブジェクトデータ113としてメインメモリに記憶する。以上のステップS11の次にステップS12の処理が実行される。
ステップS12において、CPU10は姿勢算出処理を実行する。ステップS12における姿勢算出処理は、コントローラの操作データに含まれる、姿勢を算出するための物理量に基づいて第1コントローラ(メインコントローラ8)の姿勢を算出する処理である。なお、本実施形態においては、姿勢を算出するための物理量として、ジャイロセンサ48が検出する角速度、加速度センサ37が検出する加速度、および、撮像情報演算部35が算出するマーカ座標が用いられる。以下、図20を参照して、姿勢算出処理の詳細について説明する。
図20は、図19に示す姿勢算出処理(ステップS12)の詳細な流れを示すフローチャートである。なお、ステップS12における姿勢算出処理と、後述するステップS16における姿勢算出処理とは、第1コントローラの姿勢を算出するか第2コントローラの姿勢を算出するかで異なるものの、姿勢の算出方法は同じである。したがって、以下の姿勢算出処理の説明では、第1コントローラと第2コントローラとを区別せずに説明を行う。
まずステップS21において、CPU10は、角速度データ104に基づいてコントローラ5の姿勢を算出する。角速度に基づく姿勢を算出する方法はどのような方法であってもよいが、当該姿勢は、前回の姿勢(前回に算出された姿勢)と、今回の角速度(今回の処理ループにおけるステップS2で取得された角速度)とを用いて算出される。具体的には、CPU10は、前回の姿勢を今回の角速度で単位時間分だけ回転させることによって姿勢を算出する。なお、前回の姿勢は、メインメモリに記憶されている第1姿勢データ111により表され、今回の角速度は、メインメモリに記憶されている角速度データ104により表される。したがって、CPU10は、第1姿勢データ111および角速度データ104をメインメモリから読み出して、コントローラ5の姿勢を算出する。以上のようにして算出された姿勢を表すデータはメインメモリに記憶される。ステップS21の次にステップS22の処理が実行される。
なお、上記ステップS21において角速度から姿勢を算出する場合、初期姿勢を定めておくのがよい。つまり、コントローラ5の姿勢を角速度から算出する場合には、CPU10は、最初にコントローラ5の初期姿勢を設定しておく。コントローラ5の初期姿勢は、メイン加速度データ103に基づいて算出されてもよいし、コントローラ5を特定の姿勢にした状態でプレイヤに所定の操作を行わせることで、所定の操作が行われた時点における特定の姿勢を初期姿勢として設定するようにしてもよい。なお、空間における所定方向を基準とした絶対的な姿勢としてコントローラ5の姿勢を算出する場合には上記初期姿勢を算出することが良いが、例えばゲーム開始時点におけるコントローラ5の姿勢を基準とした相対的な姿勢としてコントローラ5の姿勢を算出する場合には、上記初期姿勢は算出されなくても良い。
ステップS22において、CPU10は、ステップS21で算出された姿勢を、コントローラ5の加速度に基づいて補正する。ここで、コントローラ5がほぼ静止している状態では、コントローラ5に対して加えられる加速度は重力加速度に相当する。つまり、この状態では、コントローラ5に関するメイン加速度データ103が表す加速度ベクトルは、コントローラ5における重力方向を表す。したがって、CPU10は、ステップS21で算出された姿勢の下方向(重力方向)を、加速度ベクトルの表す重力方向へ近づける補正を行う。すなわち、上記下方向が加速度ベクトルの表す重力方向へ所定の割合で近づくように、上記姿勢を回転させる。これによって、角速度に基づく姿勢を、加速度に基づく重力方向を考慮した姿勢となるように補正することができる。なお、上記所定の割合は、予め定められた固定値であってもよいし、検出される加速度等に応じて設定されてもよい。例えば、CPU10は、検出される加速度の大きさが重力加速度の大きさに近い場合には、上記姿勢の下方向を加速度ベクトルの表す重力方向へ近づける割合を大きくし、検出される加速度の大きさが重力加速度の大きさから離れている場合には、当該割合を小さくするようにしてもよい。
ステップS22の具体的な処理としては、CPU10は、ステップS21で算出された姿勢を表すデータと、メイン加速度データ103とをメインメモリから読み出し、上記の補正を行う。そして、補正が行われた後の姿勢を表すデータをメインメモリに記憶する。上記ステップS22の次にステップS23の処理が実行される。
ステップS23において、CPU10は、マーカ(端末装置7が有するマーカ部55のマーカ55aおよび55b、あるいは、マーカ装置6のマーカ6Rおよび6L)がコントローラ5の撮像手段(撮像素子40)によって撮像されているか否かを判定する。ステップS23の判定は、メインメモリに記憶されているコントローラ5に関するマーカ座標データ105を参照することによって行うことができる。ここでは、マーカ座標データ105が2つのマーカ座標を表す場合、マーカが撮像されていると判定し、マーカ座標データ105が1つのマーカ座標のみを表す場合、または、マーカ座標がないことを表す場合、マーカが撮像されていないと判定する。ステップS23の判定結果が肯定である場合、以降のステップS24およびS25の処理が実行される。一方、ステップS23の判定結果が否定である場合、ステップ24およびS25の処理がスキップされ、CPU10は姿勢算出処理を終了する。このように、撮像素子40によってマーカが撮像されていない場合には、撮像素子40から得られるデータを用いてコントローラ5の姿勢(マーカ座標に基づく姿勢)を算出することができないので、この場合には当該姿勢を用いた補正は行われない。
ステップS24において、CPU10は、マーカ座標に基づいてコントローラ5の姿勢を算出する。マーカ座標は、撮像画像内における2つのマーカ(マーカ6Lおよび6R、または、マーカ55Aおよび55B)の位置を示すので、これらの位置からコントローラ5の姿勢を算出することができる。以下、マーカ座標に基づくコントローラ5の姿勢の算出方法について説明する。なお、以下におけるロール方向、ヨー方向、およびピッチ方向とは、コントローラ5の撮像方向(Z軸正方向)がマーカを指し示す状態(基準状態)にあるコントローラ5のZ軸回りの回転方向、Y軸回りの回転方向、およびX軸回りの回転方向を指す。
まず、ロール方向(Z軸回りの回転方向)に関する姿勢は、撮像画像内において2つのマーカ座標を結ぶ直線の傾きから算出することができる。すなわち、ロール方向に関する姿勢を算出する際、CPU10はまず、2つのマーカ座標を結ぶベクトルを算出する。このベクトルは、コントローラ5のロール方向の回転に応じて向きが変化するので、CPU10は、ロール方向に関する姿勢をこのベクトルに基づいて算出することができる。例えば、ロール方向に関する姿勢は、所定の姿勢の時のベクトルを現在のベクトルへと回転させる回転行列として算出されてもよいし、所定の姿勢の時のベクトルと現在のベクトルとのなす角度として計算されてもよい。
また、コントローラ5の位置が概ね一定であると想定できる場合には、撮像画像内におけるマーカ座標の位置から、ピッチ方向(X軸回りの回転方向)およびヨー方向(Y軸回りの回転方向)に関するコントローラ5の姿勢を算出することができる。具体的には、CPU10はまず、2つのマーカ座標の中点の位置を算出する。つまり、本実施形態では撮像画像内におけるマーカの位置として当該中点の位置が用いられる。次に、CPU10は、撮像画像の中央の位置を中心として、コントローラ5のロール方向に関する回転角度だけ(コントローラ5の回転方向とは逆方向に)上記中点を回転させる補正を行う。換言すれば、中点は、撮像画像の中央の位置を中心として、上記ベクトルが水平方向を向くように回転される。
上記のようにして得られた補正後の中点位置から、コントローラ5のヨー方向およびピッチ方向に関する姿勢を算出することができる。すなわち、上記基準状態において、補正後の中点位置は撮像画像の中央の位置となる。また、補正後の中点位置は、基準状態からコントローラ5の姿勢が変化した方向とは逆方向に、変化した量に応じた量だけ、撮像画像の中央の位置から移動する。したがって、基準状態におけるコントローラ5の姿勢から当該姿勢が変化した方向および量(角度)は、撮像画像の中央の位置を基準とした補正後の中点位置の変化方向および変化量に基づいて算出される。また、コントローラ5のヨー方向は撮像画像の横方向に対応し、コントローラ5のピッチ方向は撮像画像の縦方向に対応するので、ヨー方向およびピッチ方向の姿勢を個別に算出することも可能である。
なお、ゲームシステム1においては、プレイヤがゲームを行う態勢(立っているか座っているか等)や、マーカの位置(マーカ装置6がテレビ2の上に配置されるか下に配置されるか等)は様々であることから、鉛直方向に関しては、コントローラ5の位置が概ね一定であるとの上記想定が成り立たないおそれがある。つまり、本実施形態においては、ピッチ方向については姿勢を正確に算出することができないおそれがあるので、CPU10は、ピッチ方向についてはマーカ座標に基づく姿勢を算出せず、ピッチ方向についてはステップS22で補正された姿勢を用いるものとする。
以上より、上記ステップS24においては、CPU10は、マーカ座標データ105をメインメモリから読み出し、ロール方向に関する姿勢とヨー方向に関する姿勢とを2つのマーカ座標に基づいて算出する。また、ステップS22で補正された姿勢を表すデータを読み出し、ピッチ方向に関する姿勢を抽出する。なお、各方向に関する姿勢を例えば回転行列として算出する場合、コントローラ5の姿勢は、各方向に対応する回転行列を積算することで得ることができる。算出された姿勢を表すデータはメインメモリに記憶される。上記ステップS24の次にステップS25の処理が実行される。
なお、本実施形態においては、CPU10は、ロール方向およびヨー方向に関する姿勢をマーカ座標に基づいて算出し、ピッチ方向についてはマーカ座標を用いた姿勢の補正処理を行わないこととした。ただし、他の実施形態においては、CPU10は、ピッチ方向についてもヨー方向と同様の方法でマーカ座標に基づいて(ピッチ方向に関する)姿勢を算出するようにし、ピッチ方向についてもマーカ座標を用いた姿勢の補正処理を行うようにしてもよい。
ステップS25において、CPU10は、マーカ座標に基づく姿勢を用いて、角速度に基づく姿勢を補正する。具体的には、CPU10は、ステップS22で補正された姿勢(角速度に基づく姿勢)を表すデータと、ステップS24で算出された姿勢(マーカ座標に基づく姿勢)を表すデータとをメインメモリから読み出し、角速度に基づく姿勢をマーカ座標に基づく姿勢へ所定の割合で近づける補正を行う。この所定の割合は、例えば予め定められた固定値である。以上のようにして得られた補正後の姿勢を表すデータが、新たな第1姿勢データ111(または第2姿勢データ112)としてメインメモリに記憶される。つまり、ステップS25の補正処理後における各姿勢データ111および112が、第1および第2コントローラの最終的な姿勢として後の処理に用いられる。上記ステップS25の終了後、CPU10は姿勢算出処理を終了する。
上記姿勢算出処理によれば、CPU10は、角速度データ104に基づいて算出されたコントローラ5の姿勢を、メイン加速度データ103およびマーカ座標データ105を用いて補正した。ここで、コントローラ5の姿勢を算出する方法のうち、角速度を用いる方法では、コントローラ5がどのように動いているときであっても姿勢を算出することができる。一方、角速度を用いる方法では、逐次検出される角速度を累積加算していくことによって姿勢を算出するので、誤差が累積すること等によって精度が悪くなったり、いわゆる温度ドリフトの問題でジャイロセンサ48の精度が悪くなったりするおそれがある。また、加速度を用いる方法は、誤差が蓄積しない一方、コントローラ5が激しく動かされている状態では、(重力方向を正確に検出することができないので)姿勢を精度良く算出することができない。また、マーカ座標を用いる方法は、(特にロール方向に関して)姿勢を精度良く算出することができる一方、マーカを撮像できない状態では姿勢を算出することができない。これに対して、本実施形態によれば、上記のように特長の異なる3種類の方法を用いるので、コントローラ5の姿勢をより正確に算出することができる。なお、他の実施形態においては、上記3つの方法のうちいずれか1つまたは2つを用いて姿勢を算出するようにしてもよい。
図19の説明に戻り、ステップS12の次のステップS13において、CPU10は、第1オブジェクト91のボウガン92の発射方向(すなわち、ボウガン92の姿勢)を第1コントローラの姿勢に基づいて制御する。本実施形態においては、ボウガン92の姿勢は、現実空間における第1コントローラの姿勢と対応するように算出される。すなわち、第1コントローラが所定の基準姿勢から回転した場合、ボウガン92は、当該基準姿勢時におけるボウガン92の姿勢から、第1コントローラの姿勢の変化方向に応じた方向に、変化量に応じた量だけ回転される。なお、ボウガン92の姿勢は、第1コントローラの姿勢の変化に応じて変化するように制御されればどのように制御されてもよい。ステップS13において、CPU10は、第1姿勢データ111をメインメモリから読み出し、第1コントローラの姿勢に基づいてボウガン92の姿勢を算出する。そして、算出した姿勢を表すデータを第1発射方向データ115としてメインメモリに記憶する。ステップS13の次にステップS14の処理が実行される。
ステップS14において、CPU10は、端末用ゲーム画像を生成するための第1仮想カメラを設定する。本実施形態においては、第1仮想カメラは、第1オブジェクト91および第2オブジェクト93の位置に基づいて設定される。具体的には、第1仮想カメラは、第1オブジェクト91から後方のやや上方に所定距離だけ離れた位置に設定される。また、第1仮想カメラは、第1オブジェクト91から第2オブジェクト93への方向を向くように設定される。ただし、第1仮想カメラが上記方向を常に正確に向くとすると、第2オブジェクト93が常に真正面に位置するために、射撃操作が簡単になりすぎる。そのため、第1オブジェクト91の左右方向へ移動した場合には、第2オブジェクト93から左右にややずれた位置を向くように第1仮想カメラの姿勢が制御されてもよい。ステップS14において、CPU10は、各オブジェクトデータ113および114をメインメモリから読み出し、第1仮想カメラの位置および姿勢を算出する。そして、算出された位置および姿勢を表すデータを第1カメラデータ117としてメインメモリに記憶する。ステップS14の次にステップS15の処理が実行される。
ステップS15〜S18においては、第1オブジェクト91に関する上記ステップS11〜S14と同様の処理が、第2オブジェクト93に関して実行される。すなわち、ステップS15において、CPU10は、第2プレイヤが操作する第2コントローラの操作データ(第2操作データ)に基づいて第2オブジェクト93の移動を制御する。第2オブジェクト93の移動の制御方法は、上記ステップS11における制御方法と同様である。ステップS14で算出された第2オブジェクト93の位置および向きを表すデータは、第2オブジェクトデータ114としてメインメモリに記憶される。ステップS15の次にステップS16の処理が実行される。
ステップS16において、CPU10は姿勢算出処理を実行する。すなわち、第2操作データに含まれるメイン加速度データ103、角速度データ104、およびマーカ座標データ105に基づいて、第2コントローラ(メインコントローラ)の姿勢が算出される(図20参照)。算出された第2コントローラの姿勢は、第2姿勢データ112としてメインメモリに記憶される。ステップS16の次にステップS17の処理が実行される。
ステップS17において、CPU10は、第2オブジェクト93のボウガン94の発射方向(すなわち、ボウガン94の姿勢)を第2コントローラの姿勢に基づいて制御する。ボウガン94の制御方法は上記ステップS13におけるボウガン92の制御方法と同様である。ステップS17で算出されたボウガン94の姿勢を表すデータは、第2発射方向データ116としてメインメモリに記憶される。ステップS17の次にステップS18の処理が実行される。
ステップS18において、CPU10は、テレビ用ゲーム画像を生成するための第2仮想カメラを、第1オブジェクト91および第2オブジェクト93の位置に基づいて設定する。第2仮想カメラは、第2オブジェクト93から後方のやや上方に所定距離だけ離れた位置に、第2オブジェクト93から第1オブジェクト91への方向を向くように設定される。設定された第2仮想カメラの位置および姿勢を表すデータは、第2カメラデータ118としてメインメモリに記憶される。ステップS18の次にステップS19の処理が実行される。
ステップS19において、CPU10は、その他のゲーム進行処理を行う。その他のゲーム進行処理とは、上記ステップS11〜S18の処理以外にステップS3のゲーム制御処理において実行される処理である。上記その他のゲーム進行処理には、例えば、ボウガンから発射された矢の挙動を制御する処理や、矢が各オブジェクト91および93に当たったか否かを判定する処理等が含まれる。上記の処理の他、ステップS19においてはゲームの進行に必要な処理が適宜実行される。上記ステップS19の後、CPU10はゲーム制御処理を終了する。
上記ゲーム制御処理のように、本実施形態においては、CPU10は、第1プレイヤが操作する第1コントローラに対する操作を表す操作データに基づいて、ゲーム空間に設定される第1仮想カメラを制御する(ステップS14)。また、CPU10は、第2プレイヤが操作する第2コントローラに対する操作を表す操作データに基づいて、ゲーム空間に設定される第2仮想カメラを制御する(ステップS18)。したがって、各プレイヤは、コントローラ5に対する操作によってゲーム画像の視点および視線方向を変更することができる。
また、本実施形態においては、CPU10は、各操作データにそれぞれ含まれる物理量に基づいて各コントローラの姿勢を算出し(ステップS12およびS16)、当該各操作装置の姿勢に基づいてゲーム処理を実行する(ステップS13およびS17)。したがって、各プレイヤは、コントローラを傾ける操作によって直感的かつ容易なゲーム操作を行うことができる。また、上記ゲーム制御処理においては、各コントローラの姿勢の変化に応じて各ボウガン92および94の姿勢が変化するので、CPU10は、各コントローラの動き(姿勢の変化)を算出し、各コントローラの動きに基づいてゲーム処理を実行しているとも言える。つまり、各プレイヤは、コントローラを動かす操作によって直感的かつ容易なゲーム操作を行うことができる。
また、本実施形態においては、各操作データには、コントローラ5の撮像手段の撮像結果に関する撮像データ(マーカ座標データ)が含まれており、CPU10は、この撮像データに基づいてゲーム処理を実行する(ステップS23)。これによって、CPU10は、マーカとコントローラ5との位置関係を正確に算出することができ、コントローラの姿勢や動きを精度良く算出することができる。
また、他の実施形態においては、上記ゲーム制御処理において、CPU10は、表示装置(テレビ2または端末装置7)の画面上の位置を指定し、当該位置(指定位置と呼ぶ)に応じたゲーム処理を実行するようにしてもよい。すなわち、CPU10は、第1プレイヤが操作する第1コントローラの操作データに基づいて端末装置7の画面上の位置を指定し、指定した位置に応じた処理を実行してもよい。また、CPU10は、第2プレイヤが操作する第2コントローラの操作データに基づいてテレビ2の画面上の位置を指定し、指定した位置に応じた処理を実行してもよい。
また、上記指定位置に応じたゲーム処理として、CPU10は、指定位置にカーソルを表示させ、カーソルが指し示す位置に向かって各オブジェクト91および93に射撃動作を行わせたり、カーソルが指し示す対象を選択したりするようにしてもよい。なお、上記指定位置は、端末装置7の姿勢、あるいは、マーカ座標データの情報に基づいて算出することが可能である。すなわち、これらの情報から、コントローラ5から撮像方向(Z軸正方向)へ延ばした直線と表示装置の画面との交点の位置を算出(推測)することができるので、当該交点の位置を上記指示位置として用いることができる。なお、CPU10は、上記指示位置として、正確な上記交点の位置を算出する必要はなく、交点の位置付近の位置を算出することができればよい。また、他の実施形態においては、指示位置は、上記交点の位置に限らず、コントローラ5の姿勢または動きに応じて変化するように算出されたり、コントローラ5に対する入力(例えば十字ボタン32aに対する方向入力)に応じて変化するように算出されてもよい。
なお、上記指定位置を用いたゲーム処理を実行することによって、プレイヤは、表示装置の画面上の位置を指定する操作によって直感的かつ容易なゲーム操作を行うことができる。ここで、表示装置の表示領域(画面)における分割数が多くなると、指定できる範囲が狭くなるので、画面上の位置を指定する操作が行いにくくなる。これに対して、本実施形態においては、表示領域の分割数を減らすことができるので、画面上の位置を指定する操作が行いやすくなる。つまり、画面上の位置を指定する操作を採用する場合には、分割数を減らすための構成が特に有効である。
図18の説明に戻り、ステップS3のゲーム制御処理の次にステップS4の処理が実行される。ステップS4においては、第2プレイヤのためのゲーム画像であるテレビ用ゲーム画像が上記ゲーム制御処理に基づいて生成される。すなわち、CPU10およびGPU11bは、ステップS3のゲーム制御処理の結果を表すデータをメインメモリから読み出し、また、ゲーム画像を生成するために必要なデータをVRAM11dから読み出し、テレビ用ゲーム画像を生成する。本実施形態では、第2オブジェクト93が表示範囲に含まれるように設定される上記第2仮想カメラを用いて、ゲーム空間を表す画像が生成される。このとき、第2オブジェクト93は半透明にしてテレビ用ゲーム画像は生成される。生成されたテレビ用ゲーム画像はVRAM11dに記憶される。上記ステップS4の次にステップS5の処理が実行される。
ステップS5においては、第1プレイヤのためのゲーム画像である端末用ゲーム画像が上記ゲーム制御処理に基づいて生成される。すなわち、CPU10およびGPU11bは、ステップS3のゲーム制御処理の結果を表すデータをメインメモリから読み出し、また、ゲーム画像を生成するために必要なデータをVRAM11dから読み出し、端末用ゲーム画像を生成する。本実施形態では、第1オブジェクト91が表示範囲に含まれるように設定される上記第1仮想カメラを用いて、ゲーム空間を表す画像が生成される。このとき、第1オブジェクト91は半透明にしてテレビ用ゲーム画像は生成される。生成されたテレビ用ゲーム画像はVRAM11dに記憶される。上記ステップS5の次にステップS6の処理が実行される。
ステップS6において、CPU10は、テレビ2へゲーム画像を出力する。具体的には、CPU10は、VRAM11dに記憶されたテレビ用ゲーム画像のデータをAV−IC15へ送る。これに応じて、AV−IC15はテレビ用ゲーム画像のデータを、AVコネクタ16を介してテレビ2へ出力する。これによって、テレビ用ゲーム画像がテレビ2に表示される。また、ステップS6においては、ゲーム画像のデータと共にゲーム音声のデータがテレビ2へ出力され、テレビ2のスピーカ2aからゲーム音声が出力されてもよい。ステップS6の次にステップS7の処理が実行される。
ステップS7において、CPU10は、端末装置7へゲーム画像を送信する。具体的には、VRAM11dに記憶された端末用ゲーム画像の画像データは、CPU10によってコーデックLSI27に送られ、コーデックLSI27によって所定の圧縮処理が行われる。圧縮処理が施された画像のデータは、端末通信モジュール28によってアンテナ29を介して端末装置7へ送信される。端末装置7は、ゲーム装置3から送信されてくる画像のデータを無線モジュール70によって受信し、受信された画像データに対してコーデックLSI66によって所定の伸張処理が行われる。伸張処理が行われた画像データはLCD51に出力される。これによって、端末用ゲーム画像がLCD51に表示される。また、ステップS7においては、ゲーム画像のデータと共にゲーム音声のデータが端末装置7へ送信され、端末装置7のスピーカ67からゲーム音声が出力されてもよい。ステップS7の次にステップS8の処理が実行される。
ステップS8において、CPU10は、ゲームを終了するか否かを判定する。ステップS8の判定は、例えば、ゲームオーバーになった(一方のオブジェクトが倒された)か否か、あるいは、プレイヤがゲームを中止する指示を行ったか否か等によって行われる。ステップS8の判定結果が否定の場合、ステップS2の処理が再度実行される。一方、ステップS8の判定結果が肯定の場合、CPU10は図18に示すゲーム処理を終了する。以降、ステップS2〜S8の一連の処理は、ステップS8でゲームを終了すると判定されるまで繰り返し実行される。
以上に説明したゲーム処理によれば、2人のプレイヤが行うゲームにおいて、端末装置7には第1プレイヤのためのゲーム画像が表示されるとともに、テレビ2には第2プレイヤのためのゲーム画像が表示される。これによれば、表示装置の表示領域を分割することなく、各プレイヤにとって見やすいゲーム画像を提供することができる。
[7.変形例]
上記実施形態は本発明を実施する一例であり、他の実施形態においては例えば以下に説明する構成で本発明を実施することも可能である。
(ゲーム内容に関する第1変形例)
上記実施形態においては、2人のプレイヤがオブジェクトをそれぞれ操作して相手のオブジェクトを撃ち合うゲームを例として説明したが、ゲームの内容はどのようなものであってもよい。例えば、他の実施形態においては、ゲームシステム1は、図21および図22に示すようなゲームを実行してもよい。図21および図22は、本実施形態の第1変形例におけるゲーム画像の一例を示す図である。すなわち、図21は、第1変形例における端末用ゲーム画像の一例を示し、図22は、第1変形例におけるテレビ用ゲーム画像の一例を示す。
図21に示すように、端末装置7には、第1プレイヤが操作するボウガン121と、ボウガン121の前方の道路上に配置された壁122とを含むゲーム空間の画像が表示される。このように、第1変形例においても上記実施形態と同様、第1プレイヤのためのゲーム画像が端末装置7に表示される。なお、第1変形例では、第1プレイヤの操作対象である第1オブジェクトからの主観視点のゲーム画像が端末装置7に表示され、第1オブジェクト自体は端末装置7に表示されない。
また、壁122にはロープ123が張られており、第1プレイヤは、ボウガン121から矢や手裏剣等を発射して壁122に張られたロープ123を切る。壁122に張られたロープ123が全て切れると、壁122が倒れてオブジェクトは前に進むことができる。本ゲームは、第1オブジェクトの道路上に配置された所定個数の壁122を倒して、ゴールする速さを競うゲームである。なお、第1変形例において、ボウガン121の姿勢(発射方向)の制御は、上記実施形態と同様、コントローラ5の姿勢に応じて行われてもよい。
なお、第1オブジェクトが通る道路の隣には、第2プレイヤが操作する第2オブジェクトが通る道路が設置される。したがって、各オブジェクトの位置関係によっては、端末装置7に第2オブジェクト124が表示されることもあり(図21参照)、第1プレイヤは、第2オブジェクト124の進み具合を知ることができる。
一方、図22に示すように、テレビ2には、第2プレイヤが操作するボウガン125と、ボウガン125の前方の道路上に配置された壁122とを含むゲーム空間の画像が表示される。このように、第1変形例においても上記実施形態と同様、第2プレイヤのためのゲーム画像がテレビ2に表示される。なお、第1変形例では、第2プレイヤの操作対象である第2オブジェクト124からの主観視点のゲーム画像がテレビ2に表示され、第2オブジェクト自体はテレビ2に表示されない。また、第1プレイヤと同様、第2プレイヤはボウガン125を操作して矢や手裏剣等を発射することで、壁122に張られたロープ123を切ってゲームを行う。
以上に説明した第1変形例においても上記実施形態と同様、端末装置7には第1プレイヤのためのゲーム画像が表示されるとともに、テレビ2には第2プレイヤのためのゲーム画像が表示される。これによれば、表示装置の表示領域を分割することなく、各プレイヤにとって見やすいゲーム画像を提供することができる。
(プレイヤの人数に関する第2変形例)
上記実施形態においては、2人のプレイヤが同時にプレイするゲームを例として説明したが、ゲームシステム1は、2人以上のプレイヤが同時にプレイするゲームを実行することも可能である。以下、図23〜図26を参照して、2人以上のプレイヤがゲームを行う場合の第2変形例について説明する。なお、第2変形例のゲームは、2人から4人のいずれかの人数でゲームを行うことが可能であるとする。
図23および図24は、ゲームを4人でプレイする場合において各表示装置に表示されるゲーム画像の一例を示す図である。図23は、第2変形例における端末用ゲーム画像の一例を示し、図24は、第2変形例におけるテレビ用ゲーム画像の一例を示す。図23および図24に示すように、第2変形例では、4人のプレイヤが第1〜第4オブジェクト131〜134をそれぞれ操作し、(図において斜線で示される)壁や障害物を避けながら各オブジェクト131〜134を移動させるゲームを例として説明する。
図23に示すように、端末装置7には、4人のプレイヤのうちの所定の第1プレイヤのためのゲーム画像が表示される。つまり、端末用ゲーム画像は、第1プレイヤが操作する第1オブジェクト131を含むゲーム空間の画像であり、第1プレイヤの操作に応じて表示範囲が変化(スクロール)する。また、本ゲームでは、各オブジェクト131〜134はゲーム画像における下方向へ移動し、各オブジェクト131〜134の移動に応じてゲーム画像は下方向へスクロールする。したがって、画面上では壁や障害物が上にスクロールしているように見える。そのため、第2変形例では、各プレイヤのためのゲーム画像としては、上下方向に長い方が好ましいので、図23および図24に示すように縦長のゲーム画像が表示される。したがって、第2変形例では、端末装置7は画面が縦長となる向きに配置される。端末装置7は可搬型であるので、上記実施形態のように横向きに配置して使用することも、第2変形例のように縦向きに配置して使用することも可能である。
また、図24に示すように、テレビ2には4人のプレイヤのうちの、上記第1プレイヤ以外の第2〜第4プレイヤのためのゲーム画像が表示される。すなわち、テレビ2の表示領域は横方向に並ぶように3つに分割され、3つの各領域に、第2プレイヤのためのゲーム画像、第3プレイヤのためのゲーム画像、および、第4プレイヤのためのゲーム画像がそれぞれ表示される。ここでは、左側の領域には第2オブジェクト132を含むゲーム空間の画像が表示され、中央の領域には第3オブジェクト133を含むゲーム空間の画像が表示され、右側の領域には第4オブジェクト134を含むゲーム空間の画像が表示される。第2変形例では、第2〜第4プレイヤのための3つのゲーム画像が横に並ぶように表示されるので、各ゲーム画像は端末装置7のゲーム画像と同様に縦長とすることができ、ゲーム内容に適した形状のゲーム画像を提供することができる。
また、3人でゲームを行う場合も、4人の場合と同様に、所定の第1プレイヤのためのゲーム画像が端末装置7に表示され、残りの複数人(2人)のプレイヤのためのゲーム画像がテレビ2に表示される。なお、3人でゲームを行う場合には、テレビ2の表示領域は、横方向に並ぶように2つに分割される。表示領域のうちの左側の領域には、第2プレイヤのためのゲーム画像が表示され、表示領域のうちの右側の領域には、第3プレイヤのためのゲーム画像が表示される。縦横の比率は変化するものの、3人の場合も4人の場合と同様、各プレイヤのためのゲーム画像は縦長となる。
上記のように、第2変形例では、3人以上のプレイヤのための各ゲーム画像を、端末装置7とテレビ2との2つの表示装置に表示する。すなわち、1つのゲーム画像を端末装置7に表示するとともに、テレビ2の表示領域を分割した各領域に残りのゲーム画像を表示する。これによれば、テレビ2のみに各ゲーム画像を表示する場合に比べて、テレビ2の表示領域の分割数を少なくすることができる。このように、分割数を少なくすることによって、他のプレイヤのゲーム画像を自己のゲーム画像と見間違える可能性を減らすことができ、1つの画面にたくさんのゲーム画像が並んで表示されることによる窮屈感を低減することができる。すなわち、第2変形例によれば、3人以上でゲームを行う場合であっても、見やすいゲーム画像を各プレイヤに提供することができる。
また、第2変形例においては、2人でゲームを行う場合には、端末装置7は用いられず、テレビ2に2人のプレイヤのための2つのゲーム画像がそれぞれ表示される。図25は、第2変形例において2人でゲームが行われる場合におけるテレビ用ゲーム画像の一例を示す。図25に示すように、2人でゲームを行う場合には、テレビ2の表示領域を横に並ぶように2分割して2つのゲーム画像が表示される。すなわち、テレビ2の表示領域のうちの左側の領域には、第1プレイヤによって操作される第1オブジェクト131を含むゲーム空間を表す画像が表示され、表示領域のうちの右側の領域には、第2プレイヤによって操作される第2オブジェクト132を含むゲーム空間を表す画像が表示される。
ここで、第2変形例において2人でゲームを行う場合に、仮に第1プレイヤのためのゲーム画像を端末装置7に表示するとともに、第2プレイヤのためのゲーム画像のみをテレビ2に表示する場合を想定する。この場合、テレビ2には、横長のゲーム画像を表示するか、あるいは、縦長のゲーム画像を表示するとともに残りの表示領域にゲーム空間以外の他の画像を表示する(または何も表示しない)ことになる。しかし、第2変形例では、各プレイヤのためのゲーム画像は縦長であることが好ましいので、横長のゲーム画像を表示する方法では、ゲーム画像が見にくくなったり、他のプレイヤとの間で有利不利が生じたりするおそれがある。また、上記残りの表示領域に他の画像を表示する方法では、テレビ2の横長の表示領域に縦長のゲーム画像が表示され、残りの表示領域にはゲーム進行上は意味の小さい画像が表示されるので、プレイヤが違和感を抱いたり不自然に感じたりするおそれがある。
そこで、第2変形例においては、2人でゲームを行う場合には、端末装置7を用いずにテレビ2に2つのゲーム画像を表示するようにする。これによれば、各プレイヤに縦長のゲーム画像を提供することができ、見やすく公平なゲーム画像を提供することができる。また、画面に無駄な余白が生じないので画面を有効に活用することができるとともに、ゲーム空間以外の画像を表示することによってプレイヤが違和感を抱いたり不自然に感じたりすることを防止することができる。
以下、上記実施形態と異なる点を中心に、第2変形例におけるゲーム処理の詳細について説明する。第2変形例においても上記実施形態と同様、図18に示すステップS1〜S8の処理が基本的には実行されるが、ステップS3〜S5の処理が上記実施形態とは異なる。
まず、ステップS3のゲーム制御処理においては、各コントローラの操作データに基づいて各オブジェクト(4人でゲームが行われる場合には各オブジェクト131〜134)を制御する処理等が実行される。なお、各オブジェクトに対する操作方法は操作データに基づいて行われればどのような方法であってもよい。
また、第2変形例においては、図18に示すステップS4およびS5の処理に代えて、図26に示す画像生成処理が実行される。図26は、第2変形例において実行される画像生成処理の流れを示すフローチャートである。以下、図26を参照して、画像生成処理の詳細について説明する。
画像生成処理においてはまずステップS41において、CPU10は、ゲームを行うプレイヤは2人であるか否かを判定する。この判定は、ステップS2で取得される操作データの数が2つであるか否か、あるいは、現在通信を行っているコントローラ5の数が2つであるか否か等によって行うことができる。また、CPU10は、ゲームの開始時(例えばステップS1の処理)において、プレイヤにプレイ人数を入力させ、入力された人数が2人であるか否かを判定するようにしてもよい。ステップS41の判定結果が肯定である場合、ステップS42の処理が実行される。一方、ステップS41の判定結果が否定である場合、ステップS44の処理が実行される。
ステップS42においては、各プレイヤのための2つのゲーム画像が生成される。すなわち、CPU10およびGPU11bは、プレイヤの操作対象であるオブジェクトを含むゲーム空間を表す画像をオブジェクト毎に生成する。ゲーム画像の具体的な生成方法は、どのような方法であってもよく、例えば上記実施形態と同様の方法であってもよい。また、生成されたゲーム画像はVRAM11dに記憶される。ステップS42の次にステップS43の処理が実行される。
ステップS43においては、テレビ用ゲーム画像が生成される。ここで生成されるテレビ用ゲーム画像は、ステップS42で生成した2つのゲーム画像を含むゲーム画像である。すなわち、CPU10およびGPU11bは、上記2つのゲーム画像が横に並べられたゲーム画像を生成し、VRAM11dに記憶する。ステップS43の後、CPU10は画像生成処理を終了する。
一方、ステップS44においては、第1プレイヤ以外の他のプレイヤのためのゲーム画像がそれぞれ生成される。なお、各ゲーム画像の具体的な生成方法は、縦横の比率が異なる以外は上記ステップS42と同様である。生成された各ゲーム画像はVRAM11dに記憶される。ステップS44の次にステップS45の処理が実行される。
ステップS45においては、テレビ用ゲーム画像が生成される。ここで生成されるテレビ用ゲーム画像は、ステップS44で生成した複数のゲーム画像を含むゲーム画像である。すなわち、CPU10およびGPU11bは、上記複数のゲーム画像が横に並べられたゲーム画像を生成し、VRAM11dに記憶する。なお、第2変形例においては、3つまたは4つの縦長のゲーム画像が横に並べられたゲーム画像が生成される。ステップS45の次にステップS46の処理が実行される。
ステップS46においては、端末用ゲーム画像が生成される。すなわち、CPU10およびGPU11bは、端末用ゲーム画像として第1プレイヤのためのゲーム画像を生成する。なお、ゲーム画像の具体的な生成方法は、縦横の比率が異なる以外は上記ステップS42と同様である。生成された端末用ゲーム画像はVRAM11dに記憶される。ステップS46の後、CPU10は画像生成処理を終了する。
上記画像生成処理の後、上記実施形態と同様のステップS6〜S8の処理が実行される。すなわち、ステップS6において、ステップS43またはS45で生成されたテレビ用ゲーム画像がテレビ2へ出力されて表示される。つまり、プレイヤの人数が2人である場合には、各プレイヤのための2つのゲーム画像が並べられたゲーム画像がテレビ2に表示され(図25参照)、プレイヤの人数が3人以上である場合、第1プレイヤ以外の各プレイヤのためのゲーム画像が並べられたゲーム画像がテレビ2に表示される(図24参照)。
また、ステップS7において、ステップS46で生成された端末用ゲーム画像が端末装置7へ出力(送信)されて表示される。なお、上記ステップS41の判定結果が否定となる場合には、端末用ゲーム画像は表示されない。つまり、プレイヤの人数が2人である場合には、端末装置7にはゲーム画像が表示されず、プレイヤの人数が3人以上である場合、第1プレイヤのためのゲーム画像が端末装置7に表示される(図23参照)。
以上のように、第2変形例によれば、プレイヤの人数が3人以上である場合、第1プレイヤのためのゲーム画像が端末装置7に表示され、(第1プレイヤとは別の)第2プレイヤのためのゲーム画像と、第3プレイヤのためのゲーム画像とを含むゲーム画像がテレビ2に表示される。したがって、第2変形例によれば、プレイヤの人数が3人以上である場合でも、プレイヤ毎のゲーム画像を見やすく提供することができる。
また、第2変形例によれば、CPU10は、ゲームを行うプレイヤの人数が所定の条件を満たすか否かを判定する(ステップS41)。そして、プレイヤの人数が所定の条件を満たす場合、CPU10は、端末用ゲーム画像として、第1プレイヤのためのゲーム画像を生成する(ステップS46)。また、テレビ用ゲーム画像としては、CPU10は、プレイヤの人数が所定の条件を満たす場合、第1プレイヤ以外の他のプレイヤのためのゲーム画像を生成し(ステップS45)、プレイヤの人数が所定の条件を満たさない場合、ゲームを行う各プレイヤのためのゲーム画像を生成する(ステップS43)。このように、第2変形例によれば、端末装置7を用いてゲーム画像を表示するか否かは、プレイヤの人数に応じて決められる。これによれば、プレイヤの人数に応じた適切な表示形態でゲーム画像を提供することができる。
また、第2変形例によれば、横長の表示領域を有するテレビ2には、第2プレイヤのための縦長のゲーム画像と、第3プレイヤのための縦長のゲーム画像とが横に並んで配置されたゲーム画像(さらに第4プレイヤのための縦長のゲーム画像が含まれてもよい)が表示される。また、端末装置7は可搬型であり、画面が縦長となる向きに配置することもできるので、第2変形例によれば、3つ以上の縦長のゲーム画像を提供することができる。これによって、各ゲーム画像の縦横の比率を揃えることができ、プレイヤ毎の有利不利が少なく、見やすいゲーム画像を提供することができる。
なお、上記の第2変形例によれば、「プレイヤの人数が3人以上であること」を上記所定の条件として用いたが、条件はこれに限られない。例えば、他の実施形態において横長のゲーム画像を表示する場合には、「プレイヤの人数が4人であること」を上記所定の条件として用いてもよい。すなわち、プレイヤの人数が2人である場合には、ゲーム装置3は、第1プレイヤのためのゲーム画像を端末装置7に表示し、第2プレイヤのためのゲーム画像をテレビ2に表示する。プレイヤの人数が3人である場合には、ゲーム装置3は、第1プレイヤのためのゲーム画像を端末装置7に表示し、第2プレイヤのためのゲーム画像と第3プレイヤのためのゲーム画像とをテレビ2に表示する。このとき、各ゲーム画像が横長になるよう、2つのゲーム画像を上下に並べて配置するようにしてもよい。一方、プレイヤの人数が4人である場合には、ゲーム装置3は、第1〜第4のプレイヤのための4つのゲーム画像を含むゲーム画像をテレビ2に表示し、端末装置7にはゲーム画像を表示しない。このとき、4つのゲーム画像は、テレビ2の表示領域を4等分した領域(上下に2等分し左右に2等分した領域)に表示される。以上のようにすることによって、プレイヤが2〜4人のいずれの場合であっても、横長のゲーム画像をプレイヤに提供することができる。
(端末装置7をゲーム状況に応じて使い分ける第3変形例)
なお、上記第2変形例においては、ゲーム装置3は、端末装置7を用いてゲーム画像を表示するか否かをプレイヤの人数に応じて変更した。ここで、他の変形例においては、ゲーム装置3は、端末装置7を用いてゲーム画像を表示するか否かを、ゲーム状況に応じて変更するようにしてもよい。以下、図27および図28を参照して、端末装置7をゲーム状況に応じて使い分ける第3変形例について説明する。
図27は、第3変形例におけるゲーム画像の一例を示す図である。なお、ここでは、プレイヤの人数が2人であり、第1プレイヤは第1オブジェクト141を操作し、第2プレイヤは第2オブジェクト142を操作するものとする。また、各オブジェクト141は同じゲーム空間(単一のゲーム空間)に配置されるものとする。
図27に示す表の上側の欄には、各オブジェクト141および142が一緒に行動するシーンでのゲーム画像を示す。このシーンでは、各オブジェクト141および142が同じゲームフィールド上に配置されるものとする。このようなシーンにおいては、例えば各オブジェクト141および142が協力してゲームを進める場合もあり、各プレイヤは自分が操作しない他のオブジェクトの状況を知ることが好ましい場合もあると考えられる。したがって、この場合、図27に示すように、各オブジェクト141および142を含むゲーム空間を表す1つのゲーム画像がテレビ2に表示される。つまり、上記の場合には、各プレイヤのための(1つの)ゲーム画像がテレビ2に表示される。
一方、図27に示す表の下側の欄には、各オブジェクト141および142が別々に行動するシーンでのゲーム画像を示す。このシーンでは、各オブジェクト141が別々の洞窟に入り、別々に行動するものとする。このようなシーンにおいては、自分が操作しないオブジェクトの状況を知る必要性が低く、また、各オブジェクト141および142が別々の場所に存在することを各プレイヤにわかりやすく認識させることで、ゲームの臨場感を高めることもできる。したがって、この場合、図27に示すように、第1オブジェクト141を含むゲーム空間を表すゲーム画像が端末装置7に表示され、第2オブジェクト142を含むゲーム空間を表すゲーム画像がテレビ2に表示される。つまり、第1プレイヤのためのゲーム画像が端末装置7に表示され、第2プレイヤのためのゲーム画像がテレビ2に表示される。
上記のように、第3変形例では、ゲーム状況に応じて、端末装置7を用いてゲーム画像を表示するか否かを変更する。これによって、ゲーム状況に応じた適切なゲーム画像をプレイヤに提供することができる。
以下、上記実施形態と異なる点を中心に、第3変形例におけるゲーム処理の詳細について説明する。第3変形例においても上記実施形態と同様、図18に示すステップS1〜S8の処理が基本的には実行されるが、ステップS3〜S5の処理が上記実施形態とは異なる。
まず、ステップS3のゲーム制御処理においては、各コントローラの操作データに基づいて各オブジェクト141および142の動作を制御する処理等が実行される。なお、各オブジェクト141および142に対する操作方法は操作データに基づいて行われればどのような方法であってもよい。
また、第3変形例においては、図18に示すステップS4およびS5の処理に代えて、図28に示す画像生成処理が実行される。図28は、第3変形例において実行される画像生成処理の流れを示すフローチャートである。以下、図28を参照して、画像生成処理の詳細について説明する。
画像生成処理においてはまずステップS51において、CPU10は、各オブジェクト141および142が一緒に行動するシーンであるか、別々に行動するシーンであるかを判定する。この判定は、ステップS3のゲーム制御処理の結果に基づいて行われる。例えば、第3変形例においては、各オブジェクト141および142が所定の洞窟内に入ったか否かによってステップS51の判定が行われる。ステップS51の判定結果が肯定である場合、ステップS52の処理が実行される。一方、ステップS51の判定結果が否定である場合、ステップS53の処理が実行される。
ステップS52においては、テレビ用ゲーム画像として、各プレイヤのためのゲーム画像が生成される。すなわち、CPU10およびGPU11bは、各プレイヤの操作対象である各オブジェクト141および142を含むゲーム空間を表す画像を生成する。なお、第3変形例では、ステップS52で生成されるゲーム画像は、各オブジェクト141および142を含むゲーム空間を表す1つのゲーム画像であるが、他の実施形態においては、第1オブジェクト141を含むゲーム空間を表すゲーム画像と、第2オブジェクト142を含むゲーム空間を表すゲーム画像とからなるゲーム画像であってもよい。つまり、2人の各プレイヤのためのゲーム画像として生成されるゲーム画像は、1つのゲーム画像であってもよいし、第1プレイヤのためのゲーム画像と第2プレイヤのためのゲーム画像とを含むゲーム画像であってもよい。また、ゲーム画像の具体的な生成方法は、どのような方法であってもよく、例えば上記実施形態と同様の方法であってもよい。また、生成されたゲーム画像はVRAM11dに記憶される。ステップS52の後、CPU10は画像生成処理を終了する。
一方、ステップS53においては、テレビ用ゲーム画像として、第2プレイヤのためのゲーム画像が生成される。すなわち、CPU10およびGPU11bは、第2プレイヤの操作対象である第2オブジェクト142を含むゲーム空間を表す画像を生成する。ゲーム画像の具体的な生成方法は、どのような方法であってもよく、例えば上記実施形態と同様の方法であってもよい。また、生成されたゲーム画像はVRAM11dに記憶される。ステップS53の次にステップS54の処理が実行される。
ステップS54においては、端末用ゲーム画像として、第1プレイヤのためのゲーム画像が生成される。すなわち、CPU10およびGPU11bは、第1プレイヤの操作対象である第1オブジェクト141を含むゲーム空間を表す画像を生成する。ゲーム画像の具体的な生成方法は、どのような方法であってもよく、例えば上記実施形態と同様の方法であってもよい。また、生成されたゲーム画像はVRAM11dに記憶される。ステップS54の後、CPU10は画像生成処理を終了する。
上記画像生成処理の後、上記実施形態と同様のステップS6〜S8の処理が実行される。すなわち、ステップS6において、ステップS52またはS53で生成されたテレビ用ゲーム画像がテレビ2へ出力されて表示される。続くステップS7において、ステップS54で生成された端末用ゲーム画像が端末装置7へ出力(送信)されて表示される。なお、上記ステップS51の判定結果が肯定となる場合には、端末用ゲーム画像は表示されない。
以上のように、第3変形例によれば、ステップS3のゲーム制御処理によって所定のゲーム条件が満たされるか否か(各オブジェクト141および142が別々に行動するシーンであるか否か)が判定される(ステップS51)。そして、ゲーム制御処理によって所定のゲーム条件が満たされる場合、CPU10は、第1プレイヤのための端末用ゲーム画像を生成する(ステップS55)。また、CPU10は、ゲーム制御処理によって所定のゲーム条件が満たされる場合、第2プレイヤのためのテレビ用ゲーム画像を生成し(S54)、ゲーム処理によって所定のゲーム条件が満たされない場合、各プレイヤのためのテレビ用ゲーム画像を生成する(S52)。このように、第3変形例によれば、端末装置7を用いてゲーム画像を表示するか否かは、ゲーム状況に応じて決められる。これによれば、ゲーム状況に応じた適切な表示形態でゲーム画像を提供することができる。
(ゲームシステムの構成に関する変形例)
上記実施形態においては、ゲームシステム1は、操作装置として機能する複数のコントローラ5と、ゲーム処理を実行するゲーム装置3と、表示装置として機能する端末装置7とを含む構成であった。ここで、他の実施形態においては、ゲームシステム1に含まれる端末装置7は複数であってもよい。端末装置が複数である場合、各端末装置には、プレイヤのためのゲーム画像がそれぞれ1つずつ表示される。したがって、例えばゲームシステム1に端末装置が2つ含まれる場合には、テレビ2と2つの端末装置との合計3つの表示装置がゲームシステム1に含まれるので、3人のプレイヤのための3つのゲーム画像をそれぞれの表示装置に表示することができる。また、4人のプレイヤが2対2で対戦するゲームの場合には、一方のチームの2人のプレイヤのゲーム画像を各端末装置に1つずつ表示するとともに、他方のチームの2人のプレイヤの2つのゲーム画像をテレビ2に表示することも可能である。これによれば、2対2の対戦ゲームであっても、味方のゲーム画像を相手側に見せずにゲームを行うことができる。
(ゲーム処理を実行する情報処理装置に関する変形例)
上記実施形態においては、ゲームシステム1において実行される一連のゲーム処理をゲーム装置3が実行したが、ゲーム処理の一部は他の装置によって実行されてもよい。例えば、他の実施形態においては、ゲーム処理の一部(例えば、端末用ゲーム画像の生成処理)を端末装置7が実行するようにしてもよい。また、他の実施形態では、互いに通信可能な複数の情報処理装置を有するゲームシステムにおいて、当該複数の情報処理装置がゲーム処理を分担して実行するようにしてもよい。なお、複数の情報処理装置においてゲーム処理が実行される場合には、各情報処理装置で実行されるゲーム処理を同期させる必要があり、ゲーム処理が複雑になってしまう。これに対して、本実施形態のように、ゲーム処理が1つのゲーム装置3によって実行され、端末装置7がゲーム画像を受信して表示する処理を行う場合には、複数の情報処理装置間でゲーム処理の同期をとる必要がなく、ゲーム処理を簡易化することができる。
本発明は、表示装置の表示領域の分割数を抑え、見やすいゲーム画像を表示すること等を目的として、例えばゲームシステムやゲーム装置やゲームプログラム等に利用することが可能である。
1 ゲームシステム
2 テレビ
3 ゲーム装置
4 光ディスク
5 コントローラ
6 マーカ装置
7 端末装置
8 メインコントローラ
9 サブコントローラ
10 CPU
11e 内部メインメモリ
12 外部メインメモリ
35 撮像情報演算部
37 加速度センサ
48 ジャイロセンサ
51 LCD
55 マーカ部
70 無線モジュール
100 ゲームプログラム
103 メイン加速度データ
104 角速度データ
105 マーカ座標データ

Claims (22)

  1. 複数のプレイヤによってゲームを行うためのゲームシステムであって、
    複数の操作装置と、ゲーム装置と、少なくとも1つの可搬型の表示装置とを含み、
    前記ゲーム装置は、
    前記操作装置に対する操作に基づいて出力される操作データを前記複数の操作装置からそれぞれ取得する操作データ取得部と、
    各前記操作データに基づいてゲーム処理を実行するゲーム処理部と、
    前記複数のプレイヤのうちの所定の第1プレイヤのための第1ゲーム画像を前記ゲーム処理に基づいて生成する第1画像生成部と、
    前記第1プレイヤ以外の他のプレイヤのための第2ゲーム画像を前記ゲーム処理に基づいて生成する第2画像生成部と、
    前記第1ゲーム画像を前記可搬型の表示装置へ出力する第1画像出力部と、
    前記第2ゲーム画像を前記可搬型の表示装置とは異なる所定の表示装置へ出力する第2画像出力部とを備え、
    前記可搬型の表示装置は、
    前記第1ゲーム画像を受信するゲーム画像受信部と、
    前記第1ゲーム画像を表示する表示部とを備える、ゲームシステム。
  2. 前記ゲーム処理部は、
    前記第1プレイヤが操作する操作装置に対する操作を表す操作データに基づいて、ゲーム空間に設定される第1仮想カメラを制御する第1仮想カメラ制御部と、
    前記他のプレイヤが操作する操作装置に対する操作を表す操作データに基づいて、ゲーム空間に設定される第2仮想カメラを制御する第2仮想カメラ制御部とを含み、
    前記第1画像生成部は、前記第1仮想カメラに基づいて前記第1ゲーム画像を生成し、
    前記第2画像生成部は、前記第2仮想カメラに基づいて前記第2ゲーム画像を生成する、請求項1に記載のゲームシステム。
  3. 前記複数の操作装置はそれぞれ、自機の姿勢を算出するための物理量を検出するセンサ部を備え、
    前記操作データにはそれぞれ、前記センサ部から取得されるデータが含まれており、
    前記ゲーム処理部は、前記各操作データにそれぞれ含まれる前記物理量に基づいて各操作装置の姿勢を算出する姿勢算出処理部を含み、当該各操作装置の姿勢に基づいてゲーム処理を実行する、請求項1または請求項2に記載のゲームシステム。
  4. 前記複数の操作装置はそれぞれ、自機の動きを算出するための物理量を検出するセンサ部を備え、
    前記操作データにはそれぞれ、前記センサ部から取得されるデータが含まれており、
    前記ゲーム処理部は、前記各操作データにそれぞれ含まれる前記物理量に基づいて各操作装置の動きを算出する姿勢算出処理部を含み、当該各操作装置の動きに基づいてゲーム処理を実行する、請求項1または請求項2に記載のゲームシステム。
  5. 前記ゲーム処理部は、
    前記第1プレイヤが操作する操作装置の操作データに基づいて前記可搬型の表示装置の表示領域における位置を指定し、指定した位置に応じた処理を実行する第1指定処理部と、
    前記他のプレイヤが操作する操作装置の操作データに基づいて前記所定の表示装置の表示領域における位置を指定し、指定した位置に応じた処理を実行する第2指定処理部とを含む、請求項1から請求項4のいずれか1項に記載のゲームシステム。
  6. 前記ゲームシステムは、前記所定の表示装置の近傍に配置可能な発光装置をさらに含み、
    前記可搬型の表示装置は、発光部をさらに備え、
    前記複数の操作装置はそれぞれ、前記発光装置および前記発光部による光を撮像可能な撮像部をさらに備え、
    前記各操作データには、前記撮像部による撮像画像に関する撮像データが含まれており、
    前記ゲーム処理部は、撮像画像内における所定の撮像対象の位置に基づくゲーム処理を前記撮像データを用いて実行する、請求項1から請求項5のいずれか1項に記載のゲームシステム。
  7. 前記ゲームシステムは、少なくとも3つの操作装置を含み、
    前記第2画像生成部は、前記第1プレイヤとは別の第2プレイヤのためのゲーム画像と、前記第1プレイヤとは別の第3プレイヤのためのゲーム画像とを含むゲーム画像を前記第2ゲーム画像として生成する、請求項1に記載のゲームシステム。
  8. 前記所定の表示装置は、横長の表示領域を有しており、
    前記第2画像生成部は、前記第2プレイヤのための縦長のゲーム画像と、前記第3プレイヤのための縦長のゲーム画像とが横に並んで配置された画像を前記第2ゲーム画像として生成する、請求項7に記載のゲームシステム。
  9. 前記操作データ取得部は、1個から所定個数までの操作装置から操作データを取得することが可能であり、
    前記ゲーム処理部は、ゲームを行うプレイヤの人数が所定の条件を満たすか否かを判定する判定部を含み、
    前記第1画像生成部は、プレイヤの人数が所定の条件を満たす場合、前記第1プレイヤのための第1ゲーム画像を生成し、
    前記第2画像生成部は、プレイヤの人数が所定の条件を満たす場合、前記他のプレイヤのためのゲーム画像を前記第2ゲーム画像として生成し、プレイヤの人数が所定の条件を満たさない場合、ゲームを行う各プレイヤのためのゲーム画像を前記第2ゲーム画像として生成する、請求項1に記載のゲームシステム。
  10. 前記第1画像生成部は、前記ゲーム処理によって所定のゲーム条件が満たされる場合、前記第1プレイヤのための第1ゲーム画像を生成し、
    前記第2画像生成部は、前記ゲーム処理によって所定のゲーム条件が満たされる場合、前記他のプレイヤのためのゲーム画像を前記第2ゲーム画像として生成し、前記ゲーム処理によって所定のゲーム条件が満たされない場合、前記複数のプレイヤのためのゲーム画像を前記第2ゲーム画像として生成する、請求項1に記載のゲームシステム。
  11. 複数のプレイヤによってゲームを行うためのゲーム装置において実行されるゲーム処理方法であって、
    操作装置に対する操作に基づいて出力される操作データを複数の操作装置からそれぞれ取得する操作データ取得ステップと、
    各前記操作データに基づいてゲーム処理を実行するゲーム処理ステップと、
    前記複数のプレイヤのうちの所定の第1プレイヤのための第1ゲーム画像を前記ゲーム処理に基づいて生成する第1画像生成ステップと、
    前記第1プレイヤ以外の他のプレイヤのための第2ゲーム画像を前記ゲーム処理に基づいて生成する第2画像生成ステップと、
    前記第1ゲーム画像を可搬型の表示装置へ出力して表示させる第1画像表示ステップと、
    前記第2ゲーム画像を前記可搬型の表示装置とは異なる所定の表示装置へ送信して表示させる第2画像表示ステップとを含む、ゲーム処理方法。
  12. 前記ゲーム処理ステップは、
    前記第1プレイヤが操作する操作装置に対する操作を表す操作データに基づいて、ゲーム空間に設定される第1仮想カメラを制御する第1仮想カメラ制御ステップと、
    前記他のプレイヤが操作する操作装置に対する操作を表す操作データに基づいて、ゲーム空間に設定される第2仮想カメラを制御する第2仮想カメラ制御ステップとを含み、
    前記第1画像生成ステップにおいて、前記ゲーム装置は、前記第1仮想カメラに基づいて前記第1ゲーム画像を生成し、
    前記第2画像生成ステップにおいて、前記ゲーム装置は、前記第2仮想カメラに基づいて前記第2ゲーム画像を生成する、請求項11に記載のゲーム処理方法。
  13. 前記複数の操作装置はそれぞれ、自機の姿勢を算出するための物理量を検出するセンサ部を備えており、
    前記操作データにはそれぞれ、前記センサ部から取得されるデータが含まれており、
    前記ゲーム処理ステップにおいて、前記ゲーム装置は、前記各操作データにそれぞれ含まれる前記物理量に基づいて各操作装置の姿勢を算出し、当該各操作装置の姿勢に基づいてゲーム処理を実行する、請求項11または請求項12に記載のゲーム処理方法。
  14. 前記複数の操作装置はそれぞれ、自機の動きを算出するための物理量を検出するセンサ部を備えており、
    前記操作データにはそれぞれ、前記センサ部から取得されるデータが含まれており、
    前記ゲーム処理ステップにおいて、前記ゲーム装置は、前記各操作データにそれぞれ含まれる前記物理量に基づいて各操作装置の動きを算出し、当該各操作装置の動きに基づいてゲーム処理を実行する、請求項11または請求項12に記載のゲーム処理方法。
  15. 前記ゲーム処理ステップは、
    前記第1プレイヤが操作する操作装置の操作データに基づいて前記可搬型の表示装置の表示領域における位置を指定し、指定した位置に応じた処理を実行する第1指定処理ステップと、
    前記他のプレイヤが操作する操作装置の操作データに基づいて前記所定の表示装置の表示領域における位置を指定し、指定した位置に応じた処理を実行する第2指定処理ステップとを含む、請求項1から請求項4のいずれか1項に記載のゲーム処理方法。
  16. 前記ゲームシステムは、前記所定の表示装置の近傍に配置可能な発光装置をさらに含み、
    前記可搬型の表示装置は、発光部をさらに備え、
    前記複数の操作装置はそれぞれ、前記発光装置および前記発光部による光を撮像可能な撮像部をさらに備え、
    前記各操作データには、前記撮像部の撮像結果に関する撮像データが含まれており、
    前記ゲーム処理ステップにおいて、前記ゲーム装置は、前記撮像データに基づいて前記ゲーム処理を実行する、請求項11から請求項15のいずれか1項に記載のゲーム処理方法。
  17. 前記ゲームシステムは、少なくとも3つの操作装置を含み、
    前記第2画像生成ステップにおいて、前記ゲーム装置は、前記第1プレイヤとは別の第2プレイヤのためのゲーム画像と、前記第1プレイヤとは別の第3プレイヤのためのゲーム画像とを含むゲーム画像を前記第2ゲーム画像として生成する、請求項11に記載のゲーム処理方法。
  18. 前記所定の表示装置は、横長の表示領域を有しており、
    前記第2画像生成ステップにおいて、前記ゲーム装置は、前記第2プレイヤのための縦長のゲーム画像と、前記第3プレイヤのための縦長のゲーム画像とが横に並んで配置された画像を前記第2ゲーム画像として生成する、請求項17に記載のゲーム処理方法。
  19. 前記操作データ取得ステップにおいて、前記ゲーム装置は、1個から所定個数までの操作装置から操作データを取得することが可能であり、
    前記ゲーム処理ステップは、ゲームを行うプレイヤの人数が所定の条件を満たすか否かを判定する判定ステップを含み、
    前記第1画像生成ステップにおいて、前記ゲーム装置は、ゲームを行うプレイヤの人数が所定の条件を満たす場合、前記第1プレイヤのための第1ゲーム画像を生成し、
    前記第2画像生成ステップにおいて、前記ゲーム装置は、ゲームを行うプレイヤの人数が所定の条件を満たす場合、前記他のプレイヤのためのゲーム画像を前記第2ゲーム画像として生成し、ゲームを行うプレイヤの人数が所定の条件を満たさない場合、ゲームを行う各プレイヤのためのゲーム画像を前記第2ゲーム画像として生成する、請求項11に記載のゲーム処理方法。
  20. 前記第1画像生成ステップにおいて、前記ゲーム装置は、前記ゲーム処理によって所定のゲーム条件が満たされる場合、前記第1プレイヤのための第1ゲーム画像を生成し、
    前記第2画像生成ステップにおいて、前記ゲーム装置は、前記ゲーム処理によって所定のゲーム条件が満たされる場合、前記他のプレイヤのためのゲーム画像を前記第2ゲーム画像として生成し、前記ゲーム処理によって所定のゲーム条件が満たされない場合、前記複数のプレイヤのためのゲーム画像を前記第2ゲーム画像として生成する、請求項11に記載のゲーム処理方法。
  21. 複数のプレイヤによってゲームを行うためのゲーム装置であって、
    複数の操作装置と、少なくとも1つの可搬型の表示装置と通信可能であり、
    前記操作装置に対する操作に基づいて出力される操作データを前記複数の操作装置からそれぞれ取得する操作データ取得部と、
    各前記操作データに基づいてゲーム処理を実行するゲーム処理部と、
    前記複数のプレイヤのうちの所定の第1プレイヤのための第1ゲーム画像を前記ゲーム処理に基づいて生成する第1画像生成部と、
    前記第1プレイヤ以外の他のプレイヤのための第2ゲーム画像を前記ゲーム処理に基づいて生成する第2画像生成部と、
    前記可搬型の表示装置に表示するために前記第1ゲーム画像を前記可搬型の表示装置へ出力する第1画像出力部と、
    前記可搬型の表示装置とは異なる所定の表示装置に表示するために前記第2ゲーム画像を当該所定の表示装置へ出力する第2画像出力部とを備える、ゲーム装置。
  22. 複数のプレイヤによってゲームを行うためのゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
    前記ゲーム装置は、複数の操作装置と、少なくとも1つの可搬型の表示装置と通信可能であり、
    前記操作装置に対する操作に基づいて出力される操作データを前記複数の操作装置からそれぞれ取得する操作データ取得手段と、
    各前記操作データに基づいてゲーム処理を実行するゲーム処理手段と、
    前記可搬型の表示装置に表示するための第1ゲーム画像として、前記複数のプレイヤのうちの所定の第1プレイヤのためのゲーム画像を前記ゲーム処理に基づいて生成する第1画像生成手段と、
    前記可搬型の表示装置とは異なる所定の表示装置に表示するための第2ゲーム画像として、前記第1プレイヤ以外の他のプレイヤのためのゲーム画像を前記ゲーム処理に基づいて生成する第2画像生成手段として前記コンピュータを機能させる、ゲームプログラム。
JP2011021574A 2011-02-03 2011-02-03 ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法 Active JP5756299B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011021574A JP5756299B2 (ja) 2011-02-03 2011-02-03 ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
US13/333,037 US8870650B2 (en) 2011-02-03 2011-12-21 Game system, game apparatus, storage medium having game program stored therein, and game process method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011021574A JP5756299B2 (ja) 2011-02-03 2011-02-03 ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法

Publications (2)

Publication Number Publication Date
JP2012161348A true JP2012161348A (ja) 2012-08-30
JP5756299B2 JP5756299B2 (ja) 2015-07-29

Family

ID=46600998

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011021574A Active JP5756299B2 (ja) 2011-02-03 2011-02-03 ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法

Country Status (2)

Country Link
US (1) US8870650B2 (ja)
JP (1) JP5756299B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017046963A (ja) * 2015-09-02 2017-03-09 株式会社ソニー・インタラクティブエンタテインメント 操作装置
JP2018043146A (ja) * 2017-12-26 2018-03-22 グリー株式会社 ゲームプログラム、コンピュータの制御方法およびコンピュータ
WO2024085368A1 (ko) * 2022-10-18 2024-04-25 삼성전자 주식회사 전자 장치 및 그 동작 방법

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5503672B2 (ja) * 2012-01-31 2014-05-28 株式会社スクウェア・エニックス ゲームシステム
US9849376B2 (en) 2012-05-02 2017-12-26 Microsoft Technology Licensing, Llc Wireless controller
TWM444650U (zh) * 2012-05-16 2013-01-01 Tuton Technology Co Ltd 具有感測元件的連接器
US8851996B2 (en) 2012-08-17 2014-10-07 Microsoft Corporation Dynamic magnetometer calibration
US20140051517A1 (en) * 2012-08-17 2014-02-20 Microsoft Corporation Dynamic magnetometer calibration
EP4236299A3 (en) 2015-02-27 2023-09-06 Sony Interactive Entertainment Inc. Display control program, dislay control device, and display control method
JP6693718B2 (ja) * 2015-02-27 2020-05-13 株式会社ソニー・インタラクティブエンタテインメント 表示制御プログラム、表示制御装置、及び表示制御方法
JP6630376B2 (ja) 2018-01-19 2020-01-15 株式会社スクウェア・エニックス ビデオゲームプログラム及びゲームシステム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002011250A (ja) * 2000-04-25 2002-01-15 Nintendo Co Ltd ゲームシステムおよび携帯ゲーム機
JP2004223110A (ja) * 2003-01-27 2004-08-12 Nintendo Co Ltd ゲーム装置、ゲームシステムおよびゲームプログラム
JP2004329662A (ja) * 2003-05-09 2004-11-25 Nintendo Co Ltd ゲームシステムおよびゲームプログラム
JP2004329744A (ja) * 2003-05-12 2004-11-25 Nintendo Co Ltd ゲーム装置およびゲームプログラム並びにゲームシステム
JP2007061489A (ja) * 2005-09-01 2007-03-15 Nintendo Co Ltd 情報処理システムおよびプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100537880B1 (ko) * 1997-08-08 2005-12-21 가부시키가이샤 세가 게임 장치 및 게임 시스템
JP4691268B2 (ja) * 2001-05-02 2011-06-01 任天堂株式会社 ゲームシステムおよびゲームプログラム
US6966837B1 (en) * 2001-05-10 2005-11-22 Best Robert M Linked portable and video game systems
JP4473688B2 (ja) 2004-09-16 2010-06-02 任天堂株式会社 ゲームプログラムおよびゲーム装置
US7988558B2 (en) * 2006-04-27 2011-08-02 Nintendo Co., Ltd. Game apparatus and storage medium storing game program
US8827811B2 (en) * 2009-06-30 2014-09-09 Lg Electronics Inc. Mobile terminal capable of providing multiplayer game and operating method of the mobile terminal

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002011250A (ja) * 2000-04-25 2002-01-15 Nintendo Co Ltd ゲームシステムおよび携帯ゲーム機
JP2004223110A (ja) * 2003-01-27 2004-08-12 Nintendo Co Ltd ゲーム装置、ゲームシステムおよびゲームプログラム
JP2004329662A (ja) * 2003-05-09 2004-11-25 Nintendo Co Ltd ゲームシステムおよびゲームプログラム
JP2004329744A (ja) * 2003-05-12 2004-11-25 Nintendo Co Ltd ゲーム装置およびゲームプログラム並びにゲームシステム
JP2007061489A (ja) * 2005-09-01 2007-03-15 Nintendo Co Ltd 情報処理システムおよびプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017046963A (ja) * 2015-09-02 2017-03-09 株式会社ソニー・インタラクティブエンタテインメント 操作装置
JP2018043146A (ja) * 2017-12-26 2018-03-22 グリー株式会社 ゲームプログラム、コンピュータの制御方法およびコンピュータ
WO2024085368A1 (ko) * 2022-10-18 2024-04-25 삼성전자 주식회사 전자 장치 및 그 동작 방법

Also Published As

Publication number Publication date
US8870650B2 (en) 2014-10-28
US20120202593A1 (en) 2012-08-09
JP5756299B2 (ja) 2015-07-29

Similar Documents

Publication Publication Date Title
KR101154636B1 (ko) 표시 장치, 게임 시스템 및 게임 처리 방법
JP5756299B2 (ja) ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
JP5829020B2 (ja) ゲームシステム、ゲーム装置、ゲームプログラム、および、ゲーム処理方法
JP5901891B2 (ja) ゲームシステム、ゲーム処理方法、ゲーム装置、およびゲームプログラム
JP5692904B2 (ja) 入力システム、情報処理装置、情報処理プログラム、および指示位置算出方法
JP5800526B2 (ja) ゲーム装置、ゲームプログラム、ゲームシステム、およびゲーム処理方法
JP5951957B2 (ja) ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
JP5869236B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP5780755B2 (ja) ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
JP5943554B2 (ja) ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
JP5837325B2 (ja) 操作装置および操作システム
US8764564B2 (en) Game system, game processing method, recording medium storing game program, and game device
JP2012239761A (ja) ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
JP4798809B1 (ja) 表示装置、ゲームシステム、およびゲーム処理方法
JP5829040B2 (ja) ゲームシステム、ゲーム装置、ゲームプログラム、および画像生成方法
JP5757741B2 (ja) ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
JP5937792B2 (ja) ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法
JP6103677B2 (ja) ゲームシステム、操作装置、およびゲーム処理方法
JP2012096005A (ja) 表示装置、ゲームシステム、およびゲーム処理方法
US8753207B2 (en) Game system, game processing method, recording medium storing game program, and game device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141107

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150306

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150428

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150525

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150529

R150 Certificate of patent or registration of utility model

Ref document number: 5756299

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250