JP2021029411A - 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法 - Google Patents

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

Info

Publication number
JP2021029411A
JP2021029411A JP2019150413A JP2019150413A JP2021029411A JP 2021029411 A JP2021029411 A JP 2021029411A JP 2019150413 A JP2019150413 A JP 2019150413A JP 2019150413 A JP2019150413 A JP 2019150413A JP 2021029411 A JP2021029411 A JP 2021029411A
Authority
JP
Japan
Prior art keywords
data
motion
information processing
input device
control unit
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
JP2019150413A
Other languages
English (en)
Other versions
JP6688423B1 (ja
Inventor
慎治 北原
Shinji Kitahara
慎治 北原
翔太 嶋田
Shota Shimada
翔太 嶋田
山崎 淳司
Atsushi Yamazaki
淳司 山崎
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 JP2019150413A priority Critical patent/JP6688423B1/ja
Priority to US16/751,894 priority patent/US11154770B2/en
Application granted granted Critical
Publication of JP6688423B1 publication Critical patent/JP6688423B1/ja
Publication of JP2021029411A publication Critical patent/JP2021029411A/ja
Priority to US17/476,562 priority patent/US11617943B2/en
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/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/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • 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/24Constructional details thereof, e.g. game controllers with detachable joystick handles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】ユーザ体感を向上させることを可能とする情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法を提供する。【解決手段】入力装置の変形に応じた歪データまたは入力装置の動きや姿勢に応じた動きデータを少なくとも含む入力データを入力装置から取得し、動きデータに応じて、第1オブジェクトを仮想空間内において移動または当該第1オブジェクトの仮想空間内における姿勢を変化させ、歪データに応じて、第1オブジェクトに仮想空間内において所定の動作を行わせる。【選択図】図12

Description

本発明は、ユーザ操作に応じてオブジェクトを動作させる処理を行う情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法に関する。
従来、ユーザに把持される装置の出力を用いたゲーム処理が実行可能な入力装置が開示されている(例えば、特許文献1参照)。
国際公開第2016−059943号
しかしながら、上記特許文献1で開示された入力装置を用いたゲームでは、ユーザ体感においては改良の余地があった。
それ故に、本発明の目的は、ユーザ体感を向上させることを可能とする情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法を提供することである。
上記目的を達成するために、本発明は例えば以下のような構成を採用し得る。なお、特許請求の範囲の記載を解釈する際に、特許請求の範囲の記載によってのみその範囲が解釈されるべきであることが理解され、特許請求の範囲の記載と本欄の記載とが矛盾する場合には、特許請求の範囲の記載が優先する。
本発明の情報処理システムの一構成例は、歪センサおよび動きセンサを備える入力装置と情報処理装置とを含む。入力装置は、外部から力が加わることに応じて少なくとも一部が弾性変形する。歪センサは、入力装置の変形に応じた歪データを出力する。動きセンサは、入力装置の動きおよび/または姿勢に応じた動きデータを出力する。情報処理装置は、入力データ取得部およびゲーム処理部を備える。入力データ取得部は、歪データまたは動きデータを少なくとも含む入力データを入力装置から取得する。ゲーム処理部は、ゲーム処理を実行する。ゲーム処理部は、第1オブジェクト制御部および第1オブジェクト動作制御部を含む。第1オブジェクト制御部は、動きデータに応じて、第1オブジェクトを仮想空間内において移動または当該第1オブジェクトの仮想空間内における姿勢を変化させる。第1オブジェクト動作制御部は、歪データに応じて、仮想空間内の第1オブジェクトに所定の動作を行わせる。
上記によれば、入力装置を動かす操作と入力装置を変形させる操作とによって第1オブジェクトに異なる動作を行わせることができるため、入力装置を用いた操作においてユーザ体感を向上させることができる。また、入力装置に対する異なる操作を用いて、第1オブジェクトの異なる動作制御ができるため、第1オブジェクトが実現可能な動作の種類を増加させることができる。
また、上記ゲーム処理部は、姿勢算出部を、さらに含んでもよい。姿勢算出部は、動きデータに基づいて、実空間における入力装置の姿勢を算出する。この場合、上記第1オブジェクト制御部は、入力装置の姿勢に基づいて、第1オブジェクトを仮想空間内において移動させてもよい。
上記によれば、入力装置の姿勢を変化させる操作によって、第1オブジェクトの動作制御が可能となる。
また、上記第1オブジェクト制御部は、第1オブジェクトを仮想空間内に設定された移動経路に沿って移動させてもよい。上記第1オブジェクト動作制御部は、第1オブジェクトに移動経路上の位置から外れた位置へ移動させる動作を行わせてもよい。
上記によれば、入力装置に対して異なる操作を行うことによって、設定された移動経路に沿った移動と当該移動経路から外れる移動とを容易に使い分けることができる。
また、上記ゲーム処理部は、姿勢算出部を、さらに含んでもよい。姿勢算出部は、動きデータに基づいて、実空間における入力装置の姿勢を算出する。この場合、上記第1オブジェクト制御部は、入力装置の姿勢に基づいて、仮想空間内における第1オブジェクトの姿勢を設定してもよい。上記第1オブジェクト動作制御部は、第1オブジェクトの姿勢に基づいた方向に、当該第1オブジェクトから他のオブジェクトまたは当該第1オブジェクトの一部を移動させる動作を行わせてもよい。
上記によれば、入力装置に対して異なる操作を行うことによって、第1オブジェクトの移動と当該第1オブジェクトから他のオブジェクトの移動または当該第1オブジェクトの一部の移動を容易に使い分けることができる。
また、上記第1オブジェクト動作制御部は、入力装置が第1の態様で変形したことを歪データが示す場合、移動経路から外れる第1方向に移動させる動作を第1オブジェクトに行わせ、入力装置が第2の態様で変形したことを歪データが示す場合、移動経路から外れる当該第1方向とは異なる第2方向に移動させる動作を第1オブジェクトに行わせてもよい。
上記によれば、入力装置を変形させる態様によって、第1オブジェクトの移動経路の両側への移動を使い分けることができる。
また、上記入力装置は、円弧状部分の少なくとも一部を含んでもよい。上記移動経路は、円弧形状の経路を含んでもよい。上記第1オブジェクト制御部は、入力装置における円弧状部分が円周方向に回転する当該入力装置の姿勢変化に基づいて、第1オブジェクトを円弧形状の移動経路に沿って移動させてもよい。
上記によれば、入力装置の形状と類似した移動経路に沿って第1オブジェクトが移動するため、直感的に第1オブジェクトの移動制御が可能となる。
また、上記入力装置は、円弧状部分に少なくとも1つの把持部を含んでもよい。上記第1オブジェクト制御部は、円弧状部分における把持部の位置に対応する円弧形状の移動経路上の位置に第1オブジェクトが配置されるように、第1オブジェクトを移動させてもよい。
上記によれば、入力装置の把持部と対応する位置に第1オブジェクトが配置されるため、さらに直感的に第1オブジェクトの移動制御が可能となる。
また、上記把持部は、円形状部分または円環部分における異なる位置に複数設けられてもよい。上記第1オブジェクトは、仮想空間内に複数設けられてもよい。この場合、上記第1オブジェクト制御部は、円形状部分または円環部分における複数の把持部の位置それぞれに対応する円弧形状の移動経路上の複数位置に複数の第1オブジェクトがそれぞれ配置されるように、第1オブジェクトをそれぞれ移動させてもよい。
上記によれば、入力装置の複数の把持部を両手で把持する場合に、当該複数の把持部と対応する位置に複数の第1オブジェクトが配置されるため、直感的に複数の第1オブジェクトの移動制御が可能となる。
また、上記ゲーム処理部は、第2オブジェクト制御部を、さらに含んでもよい。第2オブジェクト制御部は、仮想空間内において、第2オブジェクトを制御する。この場合、上記第1オブジェクト動作制御部は、仮想空間内における第1オブジェクトと第2オブジェクトとの位置関係に基づいて、当該第1オブジェクトが当該第2オブジェクトに対して効果を与える動作、または当該第1オブジェクトが当該第2オブジェクトに対して効果を与えない動作を行わせてもよい。
上記によれば、第1オブジェクトが第2オブジェクトに効果を与えるゲームの実現が可能となる。
また、上記第2オブジェクト制御部は、時間経過に応じて、仮想空間内において設定された複数の出現位置の少なくとも1つの出現位置に第2オブジェクトを出現させる制御と、当該出現位置から出現した第2オブジェクトを消滅させる制御とを行ってもよい。
上記によれば、時間経過を考慮しながらプレイするゲームの実現が可能となる。
また、上記第2オブジェクト制御部は、仮想空間内における第1領域に設定された出現位置と当該第1領域とは異なる第2領域に設定された出現位置とから、それぞれ第2オブジェクトを出現させる制御を行ってもよい。
上記によれば、複数の出現位置から出現する第2オブジェクトに第1オブジェクトが効果を与えるゲームの実現が可能となる。
また、上記第1領域は、第1オブジェクトの移動経路を挟んだ一方側に設定されてもよい。上記第2領域は、第1オブジェクトの移動経路を挟んだ他方側に設定されてもよい。
上記によれば、第1オブジェクトの移動経路の両側に出現する第2オブジェクトに第1オブジェクトが効果を与えるゲームの実現が可能となる。
また、上記第2オブジェクト制御部は、第1領域に設定された出現位置から第2オブジェクトを出現させた後、第2オブジェクトが第2領域に設定された出現位置から出現させる確率を高く制御してもよい。
上記によれば、第1オブジェクトの移動経路の一方側だけでなく他方側にも注意が必要となるゲームの実現が可能となる。
また、上記第1領域および第2領域は、円中心位置がほぼ同じとなる円弧形状でそれぞれ形成されてもよい。上記出現位置は、円弧形状における0時方向となるそれぞれの範囲と円弧形状における6時方向となるそれぞれの範囲とには設定されなくてもよい。
上記によれば、無理がある体勢でユーザがプレイすることを防止することができる。
また、上記ゲーム処理部は、動きデータに応じた第1オブジェクト制御部による第1オブジェクトの移動または姿勢を変化させる制御と歪データに応じた第1オブジェクト動作制御部による第1オブジェクトの動作を行わせる制御とが重複した場合、第1オブジェクト制御部による第1オブジェクトの移動または姿勢を変化させる制御を優先して行ってもよい。
上記によれば、入力操作に対する複数の操作が重複した場合であっても、正確な処理が可能となる。
また、上記ゲーム処理部は、仮想キャラクタ動作制御部を、さらに含んでもよい。仮想キャラクタ動作制御部は、動きデータに応じて、入力装置を模したリング状の仮想オブジェクトを把持する仮想キャラクタに仮想空間内において動作させる。この場合、上記第1オブジェクト制御部は、第1オブジェクトを仮想空間内に設定されたリング形状の移動経路に沿って移動させてもよい。上記仮想キャラクタ動作制御部は、動きデータに応じた入力装置の動きおよび/または姿勢に応じて、仮想オブジェクトの動きおよび/または姿勢を変化させて仮想キャラクタの動作を制御してもよい。上記第1オブジェクト制御部は、動きデータに応じた入力装置の動きおよび/または姿勢に応じて、第1オブジェクトをリング形状の移動経路に沿って移動させてもよい。
上記によれば、ユーザとの一体感を向上させるとともに、ユーザにおいてゲームシチュエーションの把握が容易となる。
また、本発明は、情報処理装置、情報処理システム、および情報処理方法の形態で実施されてもよい。
本発明によれば、入力装置を動かす操作と入力装置を変形させる操作とによって第1オブジェクトに異なる動作を行わせることができるため、入力装置を用いた操作においてユーザ体感を向上させることができる。
ゲームシステム1に含まれる各装置の一例を示す図 本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図 本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図 本体装置2の一例を示す六面図 左コントローラ3の一例を示す六面図 右コントローラ4の一例を示す六面図 本体装置2の内部構成の一例を示すブロック図 本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図 リング型拡張装置の一例を示す図 リング型拡張装置5が備える構成要素の電気的な接続関係を示すブロック図 ユーザがリング型拡張装置5を両手で把持してプレイする様子を示す図 ユーザ操作に応じて据置型モニタ9に表示されるゲーム画像の一例を示す図 ユーザ操作に応じたプレイヤオブジェクトOBJの動作の第1の例を示す図 標的オブジェクトTIおよびTOの出現位置の例を示す図 ユーザ操作に応じたプレイヤオブジェクトOBJの動作の第2の例を示す図 ユーザ操作に応じたプレイヤオブジェクトOBJの動作の第3の例を示す図 本体装置2のDRAM85に設定されるデータ領域の一例を示す図 ゲームシステム1で実行される情報処理の一例を示すフローチャート 図18におけるステップS104において行われるロール操作処理の詳細な一例を示すサブルーチン 図18におけるステップS106において行われる変形操作処理の詳細な一例を示すサブルーチン
以下、本実施形態の一例に係る情報処理システムについて説明する。本実施形態における情報処理システムは、一例としてゲームシステム1を用いている。図1は、ゲームシステム1に含まれる各装置の一例を示す図である。図1に示すように、ゲームシステム1は、本体装置2と、右コントローラ4と、リング型拡張装置5とを含む。
本体装置2は、情報処理装置の一例であり、本実施形態ではゲーム機本体として機能する。本体装置2には、左コントローラ3および右コントローラ4がそれぞれ着脱可能である(図1および図3参照)。つまり、ユーザは、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として使用することができる(図2参照)。また、ユーザは、本体装置2と左コントローラ3および右コントローラ4とを別体として使用することもできる(図3参照)。なお、以下においては、本体装置2と各コントローラ3および4とをまとめて、「ゲーム装置」と呼ぶことがある。
リング型拡張装置5は、右コントローラ4に用いられる拡張装置の一例である。リング型拡張装置5は、右コントローラ4をリング型拡張装置5に装着した状態で使用される。このように、本実施形態においては、ユーザは、コントローラ4を拡張装置に装着した状態で使用することもできる(図11参照)。なお、リング型拡張装置5は、右コントローラ4に限らず、左コントローラ3を自身に装着することが可能であってもよい。
図2は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。図2に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
図3は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。図2および図3に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
図4は、本体装置2の一例を示す六面図である。図4に示すように、本体装置2は、略板状のハウジング11を備える。本実施形態において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
図4に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、図7に示すスピーカ88)を備えている。図4に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカ88の出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための端子である左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21を備える。
図4に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、ゲームシステム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。また、本体装置2は、電源ボタン28を備える。
本体装置2は、下側端子27を備える。下側端子27は、本体装置2がクレードルと通信を行うための端子である。本実施形態において、下側端子27は、USBコネクタ(より具体的には、メス側コネクタ)である。上記一体型装置または本体装置2単体をクレードルに載置した場合、ゲームシステム1は、本体装置2が生成して出力する画像を据置型モニタに表示することができる。また、本実施形態においては、クレードルは、載置された上記一体型装置または本体装置2単体を充電する機能を有する。また、クレードルは、ハブ装置(具体的には、USBハブ)の機能を有する。
図5は、左コントローラ3の一例を示す六面図である。図5に示すように、左コントローラ3は、ハウジング31を備える。本実施形態においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、図2および図5に示すy軸方向)に長い形状である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
左コントローラ3は、アナログスティック32を備える。図5に示すように、アナログスティック32は、ハウジング31の主面に設けられる。アナログスティック32は、方向を入力することが可能な方向入力部として用いることができる。ユーザは、アナログスティック32を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。なお、左コントローラ3は、方向入力部として、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、本実施形態においては、アナログスティック32を押下する入力が可能である。
左コントローラ3は、各種操作ボタンを備える。左コントローラ3は、ハウジング31の主面上に4つの操作ボタン33〜36(具体的には、右方向ボタン33、下方向ボタン34、上方向ボタン35、および左方向ボタン36)を備える。さらに、左コントローラ3は、録画ボタン37および−(マイナス)ボタン47を備える。左コントローラ3は、ハウジング31の側面の左上に第1Lボタン38およびZLボタン39を備える。また、左コントローラ3は、ハウジング31の側面の、本体装置2に装着される際に装着される側の面に第2Lボタン43および第2Rボタン44を備える。これらの操作ボタンは、本体装置2で実行される各種プログラム(例えば、OSプログラムやアプリケーションプログラム)に応じた指示を行うために用いられる。
また、左コントローラ3は、左コントローラ3が本体装置2と有線通信を行うための端子42を備える。
図6は、右コントローラ4の一例を示す六面図である。図6に示すように、右コントローラ4は、ハウジング51を備える。本実施形態においては、ハウジング51は、縦長の形状、すなわち、上下方向に長い形状である。右コントローラ4は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング51は、縦長となる向きで把持される場合に片手、特に右手で把持可能な形状および大きさをしている。また、右コントローラ4は、横長となる向きで把持されることも可能である。右コントローラ4が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
右コントローラ4は、左コントローラ3と同様、方向入力部としてアナログスティック52を備える。本実施形態においては、アナログスティック52は、左コントローラ3のアナログスティック32と同じ構成である。また、右コントローラ4は、アナログスティックに代えて、十字キーまたはスライド入力が可能なスライドスティック等を備えるようにしてもよい。また、右コントローラ4は、左コントローラ3と同様、ハウジング51の主面上に4つの操作ボタン53〜56(具体的には、Aボタン53、Bボタン54、Xボタン55、およびYボタン56)を備える。さらに、右コントローラ4は、+(プラス)ボタン57およびホームボタン58を備える。また、右コントローラ4は、ハウジング51の側面の右上に第1Rボタン60およびZRボタン61を備える。また、右コントローラ4は、左コントローラ3と同様、第2Lボタン65および第2Rボタン66を備える。
また、ハウジング51の下側面には、窓部68が設けられる。詳細は後述するが、右コントローラ4は、ハウジング51の内部に配置される赤外撮像部123および赤外発光部124を備えている。赤外撮像部123は、右コントローラ4の下方向(図6に示すy軸負方向)を撮像方向として、窓部68を介して右コントローラ4の周囲を撮像する。赤外発光部124は、右コントローラ4の下方向(図6に示すy軸負方向)を中心とする所定範囲を照射範囲として、赤外撮像部123が撮像する撮像対象に窓部68を介して赤外光を照射する。窓部68は、赤外撮像部123のカメラのレンズや赤外発光部124の発光体等を保護するためのものであり、当該カメラが検知する波長の光や当該発光体が照射する光を透過する材質(例えば、透明な材質)で構成される。なお、窓部68は、ハウジング51に形成された孔であってもよい。なお、本実施形態においては、カメラが検知する光(本実施形態においては、赤外光)以外の波長の光の透過を抑制するフィルタ部材を赤外撮像部123自身が有する。ただし、他の実施形態においては、窓部68がフィルタの機能を有していてもよい。
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
図7は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、図4に示す構成の他、図7に示す各構成要素81〜91、97、および98を備える。これらの構成要素81〜91、97、および98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
本体装置2は、プロセッサ81を備える。プロセッサ81は、本体装置2において実行される各種の情報処理を実行する情報処理部であって、例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System−on−a−chip)から構成されてもよい。プロセッサ81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、プロセッサ81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、プロセッサ81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、プロセッサ81の指示に応じて行う。
プロセッサ81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、プロセッサ81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、第1の通信態様としてWi−Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、プロセッサ81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
プロセッサ81は、上述の左側端子17、右側端子21、および下側端子27に接続される。プロセッサ81は、左コントローラ3と有線通信を行う場合、左側端子17を介して左コントローラ3へデータを送信するとともに、左側端子17を介して左コントローラ3から操作データを受信する。また、プロセッサ81は、右コントローラ4と有線通信を行う場合、右側端子21を介して右コントローラ4へデータを送信するとともに、右側端子21を介して右コントローラ4から操作データを受信する。また、プロセッサ81は、クレードルと通信を行う場合、下側端子27を介してクレードルへデータを送信する。このように、本実施形態においては、本体装置2は、左コントローラ3および右コントローラ4との間で、それぞれ有線通信と無線通信との両方を行うことができる。また、左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置または本体装置2単体がクレードルに装着された場合、本体装置2は、クレードルを介してデータ(例えば、画像データや音声データ)を据置型モニタ等に出力することができる。
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、複数のユーザは、左コントローラ3および右コントローラ4のセットをそれぞれ用いて、本体装置2に対する入力を同時に行うことができる。一例として、第1ユーザが左コントローラ3および右コントローラ4の第1セットを用いて本体装置2に対して入力を行うと同時に、第2ユーザが左コントローラ3および右コントローラ4の第2セットを用いて本体装置2に対して入力を行うことが可能となる。
本体装置2は、タッチパネル13の制御を行う回路であるタッチパネルコントローラ86を備える。タッチパネルコントローラ86は、タッチパネル13とプロセッサ81との間に接続される。タッチパネルコントローラ86は、タッチパネル13からの信号に基づいて、例えばタッチ入力が行われた位置を示すデータを生成して、プロセッサ81へ出力する。
また、ディスプレイ12は、プロセッサ81に接続される。プロセッサ81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、プロセッサ81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。
また、本体装置2は、加速度センサ89を備える。本実施形態においては、加速度センサ89は、所定の3軸(例えば、図2に示すxyz軸)方向に沿った加速度の大きさを検出する。なお、加速度センサ89は、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。
また、本体装置2は、角速度センサ90を備える。本実施形態においては、角速度センサ90は、所定の3軸(例えば、図2に示すxyz軸)回りの角速度を検出する。なお、角速度センサ90は、1軸回りあるいは2軸回りの角速度を検出するものであってもよい。
加速度センサ89および角速度センサ90は、プロセッサ81に接続され、加速度センサ89および角速度センサ90の検出結果は、プロセッサ81へ出力される。プロセッサ81は、上記の加速度センサ89および角速度センサ90の検出結果に基づいて、本体装置2の動きおよび/または姿勢に関する情報を算出することが可能である。
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびプロセッサ81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、プロセッサ81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
図8は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、図7で示しているため図8では省略している。
左コントローラ3は、本体装置2との間で通信を行う通信制御部101を備える。図8に示すように、通信制御部101は、端子42を含む各構成要素に接続される。本実施形態においては、通信制御部101は、端子42を介した有線通信と、端子42を介さない無線通信との両方で本体装置2と通信を行うことが可能である。通信制御部101は、左コントローラ3が本体装置2に対して行う通信方法を制御する。すなわち、左コントローラ3が本体装置2に装着されている場合、通信制御部101は、端子42を介して本体装置2と通信を行う。また、左コントローラ3が本体装置2から外されている場合、通信制御部101は、本体装置2(具体的には、コントローラ通信部83)との間で無線通信を行う。コントローラ通信部83と通信制御部101との間の無線通信は、例えばBluetooth(登録商標)の規格に従って行われる。
また、左コントローラ3は、例えばフラッシュメモリ等のメモリ102を備える。通信制御部101は、例えばマイコン(マイクロプロセッサとも言う)で構成され、メモリ102に記憶されるファームウェアを実行することによって各種の処理を実行する。
左コントローラ3は、各ボタン103(具体的には、ボタン33〜39、43、44、および47)を備える。また、左コントローラ3は、アナログスティック(図8では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
左コントローラ3は、慣性センサを備える。具体的には、左コントローラ3は、加速度センサ104を備える。また、左コントローラ3は、角速度センサ105を備える。本実施形態においては、加速度センサ104は、所定の3軸(例えば、図5に示すxyz軸)方向に沿った加速度の大きさを検出する。なお、加速度センサ104は、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。本実施形態においては、角速度センサ105は、所定の3軸(例えば、図5に示すxyz軸)回りの角速度を検出する。なお、角速度センサ105は、1軸回りあるいは2軸回りの角速度を検出するものであってもよい。加速度センサ104および角速度センサ105は、それぞれ通信制御部101に接続される。そして、加速度センサ104および角速度センサ105の検出結果は、適宜のタイミングで繰り返し通信制御部101へ出力される。
通信制御部101は、各入力部(具体的には、各ボタン103、アナログスティック32、各センサ104および105)から、入力に関する情報(具体的には、操作に関する情報、またはセンサによる検出結果)を取得する。通信制御部101は、取得した情報(または取得した情報に所定の加工を行った情報)を含む操作データを本体装置2へ送信する。なお、操作データは、所定時間に1回の割合で繰り返し送信される。なお、入力に関する情報が本体装置2へ送信される間隔は、各入力部について同じであってもよいし、同じでなくてもよい。
上記操作データが本体装置2へ送信されることによって、本体装置2は、左コントローラ3に対して行われた入力を得ることができる。すなわち、本体装置2は、各ボタン103およびアナログスティック32に対する操作を、操作データに基づいて判別することができる。また、本体装置2は、左コントローラ3の動きおよび/または姿勢に関する情報を、操作データ(具体的には、加速度センサ104および角速度センサ105の検出結果)に基づいて算出することができる。
左コントローラ3は、振動によってユーザに通知を行うための振動子107を備える。本実施形態においては、振動子107は、本体装置2からの指令によって制御される。すなわち、通信制御部101は、本体装置2からの上記指令を受け取ると、当該指令に従って振動子107を駆動させる。ここで、左コントローラ3は、コーデック部106を備える。通信制御部101は、上記指令を受け取ると、指令に応じた制御信号をコーデック部106へ出力する。コーデック部106は、通信制御部101からの制御信号から振動子107を駆動させるための駆動信号を生成して振動子107へ与える。これによって振動子107が動作する。
振動子107は、より具体的にはリニア振動モータである。リニア振動モータは、回転運動をする通常のモータと異なり、入力される電圧に応じて所定方向に駆動されるため、入力される電圧の波形に応じた振幅および周波数で振動をさせることができる。本実施形態において、本体装置2から左コントローラ3に送信される振動制御信号は、単位時間ごとに周波数と振幅とを表すデジタル信号であってよい。別の実施形態においては、本体装置2から波形そのものを示す情報を送信するようにしてもよいが、振幅および周波数だけを送信することで通信データ量を削減することができる。また、さらにデータ量を削減するため、そのときの振幅および周波数の数値に替えて、前回の値からの差分だけを送信するようにしてもよい。この場合、コーデック部106は、通信制御部101から取得される振幅および周波数の値を示すデジタル信号をアナログの電圧の波形に変換し、当該波形に合わせて電圧を入力することで振動子107を駆動させる。したがって、本体装置2は、単位時間ごとに送信する振幅および周波数を変えることによって、そのときに振動子107を振動させる振幅および周波数を制御することができる。なお、本体装置2から左コントローラ3に送信される振幅および周波数は、1つに限らず、2つ以上送信するようにしてもよい。その場合、コーデック部106は、受信された複数の振幅および周波数それぞれが示す波形を合成することで、振動子107を制御する電圧の波形を生成することができる。
左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
図8に示すように、右コントローラ4は、本体装置2との間で通信を行う通信制御部111を備える。また、右コントローラ4は、通信制御部111に接続されるメモリ112を備える。通信制御部111は、端子64を含む各構成要素に接続される。通信制御部111およびメモリ112は、左コントローラ3の通信制御部101およびメモリ102と同様の機能を有する。したがって、通信制御部111は、端子64を介した有線通信と、端子64を介さない無線通信(具体的には、Bluetooth(登録商標)の規格に従った通信)との両方で本体装置2と通信を行うことが可能であり、右コントローラ4が本体装置2に対して行う通信方法を制御する。
右コントローラ4は、左コントローラ3の各入力部と同様の各入力部を備える。具体的には、各ボタン113、アナログスティック52、慣性センサ(加速度センサ114および角速度センサ115)を備える。これらの各入力部については、左コントローラ3の各入力部と同様の機能を有し、同様に動作する。なお、右コントローラ4に備えられる慣性センサ(例えば、加速度センサ114や角速度センサ115)が動きセンサの一例に相当する。
また、右コントローラ4は、振動子117およびコーデック部116を備える。振動子117およびコーデック部116は、左コントローラ3の振動子107およびコーデック部106と同様に動作する。すなわち、通信制御部111は、本体装置2からの指令に従って、コーデック部116を用いて振動子117を動作させる。
また、右コントローラ4は、赤外撮像部123を備える。赤外撮像部123は、右コントローラ4の周囲を撮像する赤外線カメラを有する。一例として、本体装置2および/または右コントローラ4は、撮像された情報(例えば、撮像された撮像画像における少なくとも一部の領域全体を分割した複数のブロックの輝度に関連する情報等)を算出し、当該情報に基づいて、右コントローラ4の周囲変化を判別する。また、赤外撮像部123は、環境光によって撮像を行ってもよいが、本実施形態においては、赤外線を照射する赤外発光部124を有する。赤外発光部124は、例えば、赤外線カメラが画像を撮像するタイミングと同期して、赤外線を照射する。そして、赤外発光部124によって照射された赤外線が撮像対象によって反射され、当該反射された赤外線が赤外線カメラによって受光されることで、赤外線の画像が取得される。これによって、赤外撮像部123は、より鮮明な赤外線画像を得ることができる。なお、赤外撮像部123と赤外発光部124とは、それぞれ別のデバイスとして右コントローラ4内に設けられてもよいし、同じパッケージ内に設けられた単一のデバイスとして右コントローラ4内に設けられてもよい。また、本実施形態においては、赤外線カメラを有する赤外撮像部123が用いられるが、他の実施形態においては、撮像手段として、赤外線カメラに代えて可視光カメラ(可視光イメージセンサを用いたカメラ)が用いられてもよい。
右コントローラ4は、処理部121を備える。処理部121は、通信制御部111に接続される。また、処理部121は、赤外撮像部123、および赤外発光部124に接続される。
また、処理部121は、CPUやメモリ等を含み、右コントローラ4に備えられた図示しない記憶装置(例えば、不揮発性メモリ等)に記憶された所定のプログラム(例えば、画像処理や各種演算を行うためのアプリケーションプログラム)に基づいて、本体装置2からの指令に応じて赤外撮像部123に対する管理処理を実行する。例えば、処理部121は、赤外撮像部123に撮像動作を行わせたり、撮像結果に基づく情報(撮像画像の情報、あるいは、当該情報から算出される情報等)を取得および/または算出して通信制御部111を介して本体装置2へ送信したりする。また、処理部121は、本体装置2からの指令に応じて赤外発光部124に対する管理処理を実行する。例えば、処理部121は、本体装置2からの指令に応じて赤外発光部124の発光を制御する。なお、処理部121が処理を行う際に用いるメモリは、処理部121内に設けられてもいいし、メモリ112であってもよい。
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
図9は、リング型拡張装置の一例を示す図である。なお、図9は、右コントローラ4が装着された状態のリング型拡張装置5を示している。本実施形態においては、リング型拡張装置5は、右コントローラ4を装着可能な拡張装置である。詳細は後述するが、本実施形態においては、ユーザは、リング型拡張装置5に力を加えて変形させるという新規な操作を行う。ユーザは、例えばエクササイズを行う感覚でリング型拡張装置5を用いたフィットネス動作を行うことによって、リング型拡張装置5に対する操作を行うことができる。なお、リング型拡張装置5が入力装置の一例に相当する。
図9に示すように、リング型拡張装置5は、環状部201と、本体部202とを備える。環状部201は、環状の形状を有する。なお、本実施形態においては、環状部201は、後述する弾性部材および台座部によって環状に形成される。本実施形態においては、環状部201は円環状である。なお、他の実施形態においては、環状部201の形状は任意であり、例えば楕円環状であってもよい。
本体部202は、環状部201に設けられる。本体部202は、図示しないレール部を有する。レール部は、右コントローラ4を装着可能な装着部の一例である。本実施形態においては、レール部は、右コントローラ4のスライダ62(図6参照)に対してスライド可能に係合する。スライダ62がレール部材に対して所定の直線方向(すなわち、スライド方向)に挿入されることで、レール部材に対してスライダ62が当該直線方向にスライド移動が可能な状態でレール部材がスライダ62と係合する。なお、レール部は、コントローラのスライダに対してスライド可能に係合することが可能である点で、本体装置2が有するレール部と同様である。そのため、レール部は、本体装置2が有するレール部と同様の構成であってもよい。
本実施形態においては、右コントローラ4は、係止部63を有する(図6参照)。係止部63は、スライダ62から側方(すなわち、図6に示すz軸正方向)に突出して設けられる。係止部63は、スライダ62の内部の方向へ移動可能であるとともに、上記側方へ突出した状態となる向きに(例えばバネによって)付勢されている。また、レール部には、切欠きが設けられる。スライダ62がレール部の奥まで挿入された状態において、係止部63は切欠きに係止する。レール部にスライダ62が係合した状態で係止部63が切欠きに係止することによって、本体部202に右コントローラ4が装着される。
なお、右コントローラ4は、押下可能な解除ボタン69を備える(図6参照)。上記係止部63は、解除ボタン69が押下されることに応じて、スライダ62の内部の方向へ移動し、スライダ62に対して突出しない(あるいは、ほとんど突出しない)状態となる。したがって、リング型拡張装置5の本体部202に右コントローラ4が装着された状態において、解除ボタン69が押下されると、係止部63は切欠きに係止しなくなる(あるいは、ほとんど係止しなくなる)。以上より、リング型拡張装置5の本体部202に右コントローラ4が装着される状態において、ユーザは、解除ボタン69を押下することによって右コントローラ4をリング型拡張装置5から容易に取り外すことができる。
図9に示すように、リング型拡張装置5は、グリップカバー203および204を有する。グリップカバー203および204は、ユーザが把持するための部品である。本実施形態においては、グリップカバー203および204は、環状部201に対して取り外し可能である。本実施形態においては、環状部201の左端付近の左把持部分に左グリップカバー203が設けられ、環状部201の右端付近の右把持部分に右グリップカバー204が設けられる。なお、把持部分の数は任意であり、想定される操作方法に応じて、3箇所以上に把持部分が設けられてもよいし、1箇所のみに把持部分が設けられてもよい。また、ゲームの内容(あるいは、ゲームにおいてユーザが行うフィットネス動作の内容)によっては、複数の把持部のうちの特定の把持部のみが片手または両手で把持されることがあってもよい。
図10は、リング型拡張装置5が備える構成要素の電気的な接続関係を示すブロック図である。図10に示すように、リング型拡張装置5は、歪み検出部211を備える。歪み検出部211は、環状部201が変形したことを検出する検出部の一例である。本実施形態においては、歪み検出部211は、歪みゲージを含む。歪み検出部211は、後述する弾性部材の変形に応じた台座部の歪みを示す信号(換言すれば、弾性部材の変形の大きさおよび変形の向きを示す信号)を出力する。
ここで、本実施形態においては、環状部201は、弾性変形可能な弾性部と、台座部とを有する。台座部は、当該台座部と弾性部材とによって環が形成されるように当該弾性部材の両端部を保持する。なお、台座部は、本体部202の内部に設けられるので、図9において図示されていない。台座部は、弾性部材よりも剛性が高い材質で構成される。例えば、弾性部材は、樹脂(具体的には、FRP(Fiber Reinforced Plastics))で構成され、台座部は、金属で構成される。上記歪みゲージは、台座部に設けられ、当該台座部の歪みを検出する。環状部201が定常状態から変形した場合、変形によって台座部に歪みが生じるので、歪みゲージによって台座部の歪みが検出される。検出された歪みに基づいて、環状部201が変形する向き(すなわち、2つのグリップカバー203および204が近づく向き、または、離れる向き)と、変形量とを算出することができる。
なお、他の実施形態においては、歪み検出部211は、歪みゲージに代えて、環状部201が定常状態から変形したことを検出可能な任意のセンサを含んでもよい。例えば、検出部211は、環状部201が変形した場合に加わる圧力を検出する感圧センサを含んでもよいし、環状部201が曲げられた量を検出する曲げセンサを含んでもよい。
リング型拡張装置5は、信号変換部212を備える。本実施形態においては、信号変換部212は、アンプと、ADコンバータとを含む。信号変換部212は、歪み検出部211に電気的に接続され、歪み検出部211の出力信号をアンプによって増幅し、ADコンバータによってAD変換を行う。信号変換部212は、歪み検出部211によって検出された歪み値を示すデジタル信号を出力する。なお、他の実施形態においては、信号変換部212はADコンバータを含まず、後述する処理部213がADコンバータを含んでいてもよい。
リング型拡張装置5は、処理部213を備える。処理部213は、プロセッサとメモリとを備える処理回路であり、例えばMCU(Micro Controller Unit)である。処理部213は、信号変換部212に電気的に接続され、信号変換部212の出力信号が処理部213に入力される。また、リング型拡張装置5は、端子214を備える。端子214は、処理部213に電気的に接続される。リング型拡張装置5に右コントローラ4が装着されている場合、処理部213は、信号変換部212の出力信号が示す歪み値を示す情報(換言すれば、後述するリング操作データ)を、端子214を介して右コントローラ4へ送信する。
リング型拡張装置5は、電力変換部215を備える。電力変換部215は、上記各部211〜214に電気的に接続される。電力変換部215は、端子214を介して外部(すなわち、右コントローラ4)から供給される電力を、上記各部211〜214に供給する。電力変換部215は、供給される電力について電圧等の調整を行って上記各部211〜214に供給してもよい。
なお、リング型拡張装置5が他の装置へ送信する「歪み検出部の検出結果に関するデータ」は、当該検出結果(本実施形態においては、台座部の歪みを示す、歪み検出部211の出力信号)そのものを示すデータであってもよいし、当該検出結果に対して何らかの処理(例えば、データ形式の変換、および/または、歪み値に対する計算処理等)が行われることによって得られるデータであってもよい。例えば、処理部213は、上記検出結果である歪み値に基づいて弾性部材の変形量を算出する処理を行ってもよく、このとき、「歪み検出部の検出結果に関するデータ」は、当該変形量を示すデータであってもよい。
なお、他の実施形態においては、リング型拡張装置5は、電池を備え、当該電池の電力によって動作してもよい。また、リング型拡張装置5が備える電池は、右コントローラ4から供給される電力によって充電可能な充電池であってもよい。
図11は、リング型拡張装置5およびベルト型拡張装置6をユーザが使用する様子の一例を示す図である。図11に示すように、ユーザは、ゲーム装置(すなわち、本体装置2および右コントローラ4)に加えて、リング型拡張装置5を用いてゲームを行うことができる。
例えば図11に示すように、ユーザは、右コントローラ4が装着されたリング型拡張装置5を両手で把持する。このとき、ユーザは、リング型拡張装置5に対する操作(例えば、リング型拡張装置5を曲げる操作、および、リング型拡張装置5を動かす操作)によって、ゲームを行うことができる。
なお、図11においては、ユーザがグリップカバー203および204を把持してリング型拡張装置5を曲げる動作を行う様子を例示している。この動作によって、ユーザは、両腕を鍛えるフィットネス動作をゲーム操作として行うことができる。なお、ユーザはリング型拡張装置5に対する種々の動作でゲーム操作を行うことができる。例えば、ユーザは、一方のグリップカバーを両手で把持し、他方のグリップカバーを腹部に当てた状態で、リング型拡張装置5を曲げる動作を行うこともできる。この動作によって、ユーザは、腕と腹筋を鍛えるフィットネス動作をゲーム操作として行うことができる。また、ユーザは、両足の内股にグリップカバー203および204を当ててリング型拡張装置5を足で挟んだ状態で、リング型拡張装置5を曲げる動作を行うこともできる。この動作によって、ユーザは、足の筋肉を鍛えるフィットネス動作をゲーム操作として行うことができる。
本体装置2においてゲーム処理が実行される場合、右コントローラ4は、リング型拡張装置5からリング操作データを受信する。リング操作データは、上記歪み値を示す情報を含む。具体的には、リング型拡張装置5の処理部213は、端子214を介してリング操作データを右コントローラ4へ送信する。例えば、処理部213は、所定時間に1回の割合でリング操作データを繰り返し送信する。
上記の場合、右コントローラ4の通信制御部111は、リング型拡張装置5から端子64を介して受信したリング操作データを本体装置2へ送信する。また、通信制御部111は、右コントローラ4に含まれる各入力部(具体的には、各ボタン113、アナログスティック52、各センサ114および115)から取得された情報を含む右コントローラ操作データを本体装置2へ送信する。なお、右コントローラ4がリング型拡張装置5に装着される状態では、右コントローラ4から本体装置2への通信は、無線通信によって行われる。通信制御部111は、右コントローラ操作データとリング操作データとをまとめて本体装置2へ送信してもよいし、別個に本体装置2へ送信してもよい。また、通信制御部111は、受信したリング操作データをそのまま本体装置2へ送信してもよいし、受信したリング操作データに何らかの加工(例えば、データ形式の変換、および/または、歪み値に対する計算処理等)を行って本体装置2へ送信してもよい。
次に、本体装置2が行う具体的な処理を説明する前に、図12〜図16を用いて、本体装置2で行うゲームの概要について説明する。なお、図12は、ユーザ操作に応じて据置型モニタ9に表示されるゲーム画像の一例を示す図である。図13は、ユーザ操作に応じたプレイヤオブジェクトOBJの動作の第1の例を示す図である。図14は、標的オブジェクトTIおよびTOの出現位置の例を示す図である。図15は、ユーザ操作に応じたプレイヤオブジェクトOBJの動作の第2の例を示す図である。図16は、ユーザ操作に応じたプレイヤオブジェクトOBJの動作の第3の例を示す図である。
上述したように、本実施形態におけるゲームシステム1については、左コントローラ3および右コントローラ4が本体装置2から着脱可能である。また、図12に示すように、クレードル8に本体装置2単体を装着することによって据置型モニタ9に画像(および音声)を出力可能である。以下、左コントローラ3および右コントローラ4を本体装置2から取り外した状態で、クレードル8に本体装置2単体を装着して、クレードル8に接続された据置型モニタ9から画像(および音声)を出力する利用態様におけるゲームシステムを用いて説明する。そして、ユーザは、リング型拡張装置5に装着された右コントローラ4を用いて、ゲーム操作を行う例を用いる。また、ゲーム処理の一例として、据置型モニタ9に表示されるプレイヤオブジェクトOBJがユーザ操作に応じて、仮想ゲーム空間内を移動して標的オブジェクトT(TIおよびTO)を攻撃する処理を用いる。なお、プレイヤオブジェクトOBJ(後述するプレイヤオブジェクトOBJ1およびOBJ2)が第1オブジェクトの一例に相当し、標的オブジェクトT(標的オブジェクトTIおよびTO)が第2オブジェクトの一例に相当する。
例えば、図12においては、仮想ゲーム空間内に出現する標的オブジェクトTIおよび/またはTOにプレイヤオブジェクトOBJを衝突させることによって、当該衝突した標的オブジェクトTIおよび/またはTOを倒すゲーム画像が据置型モニタ9に表示されている。そして、ユーザは、リング型拡張装置5に装着された右コントローラ4を把持して、リング型拡張装置5を回す操作を行ったり、リング型拡張装置5を変形させる操作を行ったりする。この場合、ユーザがリング型拡張装置5を回す操作に応じて、2つのプレイヤオブジェクトOBJ1およびOBJ2が円形軌道Lに沿って移動する。また、ユーザがリング型拡張装置5を変形させる操作に応じて、2つのプレイヤオブジェクトOBJ1およびOBJ2が円形軌道Lの外または内に向かって突出するように移動する。また、プレイヤキャラクタPCは、両手で1つのリングオブジェクトRを把持しながら、標的オブジェクトTIおよびプレイヤオブジェクトOBJを見る位置に配置されており、実空間においてリング型拡張装置5を回す操作に応じて、仮想ゲーム空間におけるリングオブジェクトRがプレイヤキャラクタPCによって回されるように変化する。このように、ユーザの動作を模した動作を行うプレイヤキャラクタPCを表示することによって、ユーザとの一体感を向上させるとともに、ユーザにおいてゲームシチュエーションの把握が容易となる。
例えば、本実施例においては、図13に示すように、ユーザがリング型拡張装置5を両手で把持しながらリング型拡張装置5を実空間において回すように変化させるユーザ操作が行われる。そして、ユーザがリング型拡張装置5を回すように変化させることによって、その方向に応じた操作入力が本体装置2に与えられる。
ここで、図13に示すように、リング型拡張装置5を回す操作とは、リング型拡張装置5における環状部201の円環軸周りに当該リング型拡張装置5を回すような操作(図示C方向に回転させるロール操作)を意味している。そして、ユーザが両手で把持しているリング型拡張装置5を回す回転角度によって、仮想ゲーム空間内におけるプレイヤオブジェクトOBJの位置も円形軌道Lに沿って移動する。
ここで、上記円環軸周りにリング型拡張装置5を回すロール操作においては、リング型拡張装置5に作用する重力加速度の方向が変化するため、リング型拡張装置5に装着された右コントローラ4に作用する加速度および/または角速度を用いて、右コントローラ4に作用する重力加速度の方向を算出することによって検出することができる。なお、現実には、リング型拡張装置5のロール操作に、ピッチ操作およびヨー操作が混ざった操作が行われることがあるため、ロール操作、ピッチ操作、およびヨー操作によってそれぞれ変化するリング型拡張装置5の方向を合成することによって、最終的な回転角度が算出されてもよい。
例えば、図13に示すように、リング型拡張装置5に装着された右コントローラ4のy軸方向が実空間における水平方向(図示X軸方向)となり、x軸正方向が実空間における直上方向(図示Y軸正方向)となった状態(グリップカバー203および204が実空間の左右に配置されたニュートラル状態)となるようにユーザがリング型拡張装置5を把持している初期状態(グリップカバー203および204が実空間の左右に配置されたニュートラル状態)から、リング型拡張装置5を回す操作を行う場合を考える。上記初期状態においては、リング型拡張装置5に装着された右コントローラ4の鉛直方向に重力加速度が作用するため、右コントローラ4のx軸負方向の加速度1Gとなり、y軸(左右方向)およびz軸方向(前後方向)の加速度が0となる。この初期状態から、リング型拡張装置5がロール操作された場合、当該ロール操作された回転角度は、右コントローラ4のz軸方向周りに生じる角速度やy軸方向に作用する加速度の大きさによって算出することができる。したがって、右コントローラ4に作用する角速度および/または加速度を検出することによって、リング型拡張装置5がロール操作された回転角度やロール操作された実空間におけるリング型拡張装置5の姿勢(例えば、重力加速度gとグリップカバー203および204を結ぶ直線Dhとの角度θ)をそれぞれ算出することができる。
上記ロール操作に応じて、仮想ゲーム空間内における2つのプレイヤオブジェクトOBJ1およびOBJ2は、互いの位置関係を維持した状態で円形軌道Lに沿って移動する。具体的には、2つのプレイヤオブジェクトOBJ1とプレイヤオブジェクトOBJ2とが、円形軌道Lにおいて互いに対向する位置(すなわち、円形軌道L上において最も遠い位置)を維持するように、円形軌道Lに沿って移動する。また、2つのプレイヤオブジェクトOBJ1およびOBJ2を結ぶ直線D12と仮想ゲーム空間における鉛直方向gとの間の角度θが、実空間におけるグリップカバー203および204を結ぶ直線Dhと重力加速度gとの間の角度θと同じになるように、リング型拡張装置5のロール操作に応じて2つのプレイヤオブジェクトOBJ1およびOBJ2が移動する。つまり、上記円環軸を中心とした実空間におけるリング型拡張装置5のグリップカバー203および204の位置と同じになるように、円形軌道Lにおける2つのプレイヤオブジェクトOBJ1およびOBJ2の位置が設定される。
ここで、図14に示すように、円形軌道Lの内側には標的オブジェクトTIが出現するための複数の孔(複数の出現位置Hi)が設けられ、円形軌道Lの外側には標的オブジェクトTOが出現するための複数の孔(複数の出現位置Ho)が設けられている。例えば、図14に示す一例では、6箇所の出現位置Hi1〜Hi6が設けられ、6箇所の出現位置Ho1〜Ho6が設けられている。そして、6箇所の出現位置Hi1〜Hi6の少なくとも1箇所からランダムに標的オブジェクトTIが円形軌道Lに向かって飛び出るように出現し、6箇所の出現位置Ho1〜Ho6の少なくとも1箇所からランダムに標的オブジェクトTOが円形軌道Lに向かって飛び出るように出現する。また、出現位置Hi1〜Hi6または出現位置Ho1〜Ho6から出現した標的オブジェクトTIおよびTOは、所定の時間が経過することによって出現した出現位置へ退避して仮想ゲーム空間内から消滅する。
そして、ユーザがリング型拡張装置5を回す操作によって所望の位置にプレイヤオブジェクトOBJ1およびOBJ2を配置した後、リング型拡張装置5を用いた所定の操作を行うことによって、プレイヤオブジェクトOBJ1およびOBJ2の少なくとも一部を円形軌道Lの内または外に向かって突出するように移動させることができる。例えば、上記所定の操作は、一例としてリング型拡張装置5におけるグリップカバー203および204が互いに離れるように環状部201を定常状態から所定の状態以上まで変形させる操作であり、リング型拡張装置5に設けられた歪みゲージが検出する歪みに基づいて当該操作が検出される。また、上記所定の操作は、他の例としてリング型拡張装置5におけるグリップカバー203および204が互いに近づくように環状部201を定常状態から所定の状態以上まで変形させる操作であり、リング型拡張装置5に設けられた歪みゲージが検出する歪みに基づいて当該操作が検出される。何れの例においても、リング型拡張装置5の環状部201が定常状態から変形した場合、上記歪みゲージによって台座部の歪みが検出され、検出された歪みに基づいて、環状部201が変形する向き(すなわち、2つのグリップカバー203および204が離れる向き、または、近づく向き)と変形量とを算出することができる。そして、環状部201が変形する向きが2つのグリップカバー203および204が離れる向きまたは近づく向きであり、予め設定された閾値以上の変形量である場合、上記所定の操作が行われたと判定される。
例えば、図15に示すように、グリップカバー203および204が互いに離れるように環状部201を定常状態から所定の状態以上までリング型拡張装置5を変形させる操作(図示A方向に変形させる引張操作)が行われた場合、プレイヤオブジェクトOBJ1の外側の一部となる外側プレイヤオブジェクトOBJ1oとプレイヤオブジェクトOBJ2の外側の一部となる外側プレイヤオブジェクトOBJ2oとがそれぞれ円形経路Lから外側(すなわち、出現位置Ho1〜Ho6が設けられている図示a方向)に向かって移動する。そして、外側プレイヤオブジェクトOBJ1oおよびOBJ2oが上記外側に移動して到達した位置に標的オブジェクトTOが出現しており、当該出現中の標的オブジェクトTOと衝突した場合、当該衝突した標的オブジェクトTOが倒されるとともに仮想ゲーム空間内から消滅して所定のゲームスコアが得られる。
また、図16に示すように、グリップカバー203および204が互いに近づくように環状部201を定常状態から所定の状態以上までリング型拡張装置5を変形させる操作(図示B方向に変形させる押込操作)が行われた場合、プレイヤオブジェクトOBJ1の内側の一部となる内側プレイヤオブジェクトOBJ1iとプレイヤオブジェクトOBJ2の内側の一部となる内側プレイヤオブジェクトOBJ2iとがそれぞれ円形経路Lから内側(すなわち、出現位置Hi1〜Hi6が設けられている図示b方向)に向かって移動する。そして、内側プレイヤオブジェクトOBJ1iおよびOBJ2iが上記内側に移動して到達した位置に標的オブジェクトTIが出現しており、当該出現中の標的オブジェクトTIと衝突した場合、当該衝突した標的オブジェクトTIが倒されるとともに仮想ゲーム空間内から消滅して所定のゲームスコアが得られる。
このように、上述したゲーム処理では、リング型拡張装置5を回すロール操作に応じてプレイヤオブジェクトOBJを円形軌道Lに沿って回転するように移動させるとともに、リング型拡張装置5を一方方向に変形させる操作に応じてプレイヤオブジェクトOBJを円形軌道Lから離れる一方方向に移動させ、リング型拡張装置5を他方方向に変形させる操作に応じてプレイヤオブジェクトOBJを円形軌道Lから離れる他方方向に移動させることができる。そして、プレイヤオブジェクトOBJが移動する円形軌道Lの内側および外側には標的オブジェクトTがランダムで出現/退避を繰り返しており、リング型拡張装置5を2つの方向に変形させることによって出現した内側または外側の標的オブジェクトTを倒す、いわゆるもぐら叩きゲームとして機能させることができる。
なお、リング型拡張装置5を用いた操作は、右コントローラ4(リング型拡張装置5)における動きセンサの出力に加えて、左コントローラ3や他の入力装置からの出力を用いて判定されてもかまわない。
また、上述した説明では、説明を具体的にするために、右コントローラ4にそれぞれ定義されているxyz軸を用いて処理をする例を用いているが、実際には、上記状態とは異なる実空間における方向にxyz軸が配置されることもあり得るし、リング型拡張装置5の姿勢が変化することに応じて、異なる方向を基準とした姿勢検出が必要となる。例えば、実際のリング型拡張装置5の姿勢検出においては、実空間において互いに直交する3軸を基準として算出してもよく、実空間における左右方向(図示X軸方向)、上下方向(図示Y軸方向)、および前後方向(図示Z軸方向)を基準として算出してもよい。
また、リング型拡張装置5を回すロール操作とリング型拡張装置5を変形させる操作とが同時に行われた場合、一方の操作が優先されてもよい。例えば、上記ロール操作と上記変形操作とが同時に行われた場合、当該変形操作による円形経路Lから離れる方向へのプレイヤオブジェクトOBJの移動をキャンセルして、当該ロール操作に応じたプレイヤオブジェクトOBJの円形経路Lに沿った移動を優先して行うことが考えられる。一例として、円形経路Lから離れる方向への移動がキャンセルされることによって、プレイヤオブジェクトOBJが当該移動前の位置(円形経路Lから離れる方向へ突出していない位置)に戻して、プレイヤオブジェクトOBJを円形経路Lに沿って移動させることが考えられる。この場合、円形経路Lから離れる方向への移動がキャンセルされたプレイヤオブジェクトOBJを再度円形経路Lから離れる方向へ移動させるためには、上記変形操作を一旦止めて環状部201を定常状態に戻した後に新たにリング型拡張装置5の変形操作を必要としてもかまわない。
また、図12〜図16におけるゲーム画像の一例から明らかなように、標的オブジェクトTが出現するための出現位置Hは、円形経路Lにおける0時方向付近(上方向付近)および6時方向付近(下方向付近)の上下位置を除いて設けられてもよい。このような上下位置に出現する標的オブジェクトTを攻撃しようとする場合、プレイヤオブジェクトOBJを円形経路Lにおける0時方向付近および6時方向付近に配置する必要がある。したがって、ユーザは、リング型拡張装置5におけるグリップカバー203および204を実空間において上下に並ぶようにリング型拡張装置5を回転させることが必要となるが、グリップカバー203および204を両手で把持しているユーザにおいては無理がある体勢となることが考えられる。しかしながら、上述したように、上記上下位置に標的オブジェクトTが出現しないように仮想ゲーム空間を設定することによって、ユーザがこのような無理がある体勢でプレイすることを防止することができる。
また、標的オブジェクトTは、出現位置Hの複数箇所から同時に出現してもよい。上述したようにリング型拡張装置5を用いた操作では、2つのプレイヤオブジェクトOBJを用いて2箇所同時に攻撃することが可能であるため、バリエーションに富んだ操作が可能となる。なお、標的オブジェクトTを複数の出現位置Hから出現させる出現パターンに、所定の規則を付与してもよい。例えば、一方側の出現位置(例えば、円形経路L内側の出現位置Hi)から標的オブジェクトTIを出現された後の期間においては、他方側の出現位置(例えば、円形経路L外側の出現位置Ho)から標的オブジェクトTOが出現する確率が高くなるように出現パターンを設定してもよい。これによって、異なる方向へリング型拡張装置5を変形させる操作を促すことが可能となり、ユーザに様々な操作を促すことができる。
また、上述したようにプレイヤオブジェクトOBJは、移動経路Lの内側に配置される内側プレイヤオブジェクトOBJiと移動経路Lの外側に配置される外側プレイヤオブジェクトOBJoとによって構成されているが、それぞれ別のオブジェクトとして考えることもできる。この場合、内側プレイヤオブジェクトOBJiおよび外側プレイヤオブジェクトOBJoの一方のプレイヤオブジェクトが他方のプレイヤオブジェクトを組み込んだ状態でユーザのロール操作に応じて円形経路Lに沿って移動し、ユーザの変形操作に応じて当該一方のプレイヤオブジェクトから当該他方のプレイヤオブジェクトを移動させている(発射している)と考えることができ、ユーザの変形操作に応じて他のオブジェクトを移動させていると考えることもできる。
また、上述した説明では、2つのプレイヤオブジェクトOBJが円形経路L上をそれぞれ移動するとともに、それらの一部が円形経路Lから離れる方向に移動する例を用いたが、他の態様によってプレイヤオブジェクトOBJが動作してもよい。第1の例として、プレイヤオブジェクトOBJが円形経路Lから離れる方向に突出して変形することによって、当該変形したプレイヤオブジェクトOBJの一部が結果的に円形経路Lから離れる方向に移動するような動作であってもよい。第2の例として、プレイヤオブジェクトOBJは、円形経路L上全体に配置された円環形状でもよい。この場合、リング型拡張装置5のロール操作に応じて、円環形状のプレイヤオブジェクトOBJが円形経路L上で回転するような動作を行い、リング型拡張装置5の変形操作に応じて、その一部が円形経路Lから離れる方向に突出して変形してもよい。第3の例として、リング型拡張装置5の変形操作に応じて、円形経路Lから離れる方向にプレイヤオブジェクトOBJが攻撃する演出(例えば、標的オブジェクトTを消滅させるビームが発射される演出)が行われてもよい。この場合、リング型拡張装置5のグリップカバー203および204が互いに離れるように変形させる引張操作によって円形経路Lから外側に離れる方向にプレイヤオブジェクトOBJが攻撃する演出が行われ、リング型拡張装置5のグリップカバー203および204が互いに近づくように変形させる押込操作によって円形経路Lから内側に離れる方向にプレイヤオブジェクトOBJが攻撃する演出が行われる。
また、プレイヤオブジェクトOBJの少なくとも一部が円形経路Lから離れる方向に移動する速度や攻撃する強さは、一定でもよいしリング型拡張装置5の変形操作に応じて変化してもよい。後者の場合、リング型拡張装置5の変形操作が行われた変形量の大きさ、変形速度、生じる加速度の大きさ等に応じて、プレイヤオブジェクトOBJの移動速度や攻撃力が変化してもかまわない。
また、上述した説明では、プレイヤオブジェクトOBJがリング型拡張装置5のロール操作に応じて移動する経路が円形(円形経路L)の例を用いたが、左右方向の直線(線分)の経路、上下方向の直線(線分)の経路、円弧状の経路、楕円形状の経路、小判型形状の経路、多角形の経路であってもよい。例えば、プレイヤオブジェクトOBJが直線(線分)の経路に沿って移動する場合、リング型拡張装置5に対するヨー操作やピッチ操作に応じて、プレイヤオブジェクトOBJを移動させることが考えられる。
また、上述した説明では、標的オブジェクトTが出現する出現位置Hが予め定められているが、標的オブジェクトTが任意の位置から出現してもよい。例えば、円形経路Lの内側に設けられた円形の内壁における任意の位置および円形経路Lの外側に設けられた円形の外壁における任意の位置から、所定の出現パターンに基づいて標的オブジェクトTが出現してもよい。
また、リング型拡張装置5の操作に応じて動作するプレイヤオブジェクトOBJは、1つでもよいし、3つ以上でもよい。また、リング型拡張装置5に設けられる把持部は、1つでもよいし、3つ以上でもよい。
また、リング型拡張装置5を動かす操作およびリング型拡張装置5の変形操作を用いて、他のゲームを行ってもよい。例えば、リング型拡張装置5の円環軸方向に対応する仮想ゲーム空間内の方向を攻撃方向として、当該攻撃方向を攻撃するゲームを行ってもよい。この場合、ユーザがリング型拡張装置5の姿勢をヨーまたはピッチ方向に変化させることによって、リング型拡張装置5の円環軸方向に対応する仮想ゲーム空間内の攻撃方向を変化させる操作が可能であり、仮想ゲーム空間においてリング型拡張装置5に対応する仮想オブジェクト(例えば、図12に示すリングオブジェクトR)の姿勢や位置を変化させることによって当該攻撃方向が表現される。また、リング型拡張装置5のグリップカバー203および204が互いに離れるように変形させる引張操作によって上記攻撃方向に飛ばす物体(固体、液体、気体、電気、パワー等で構成される攻撃オブジェクト)が充填され、リング型拡張装置5のグリップカバー203および204が互いに近づくように変形させる押込操作によって上記攻撃方向に充填された物体を上記仮想オブジェクトから飛ばして攻撃する操作が可能となる。なお、上記例においては、リング型拡張装置5に対応する仮想オブジェクトが第1オブジェクトの他の例に相当し、上記攻撃方向を攻撃する演出が第1オブジェクトにおける所定の動作の他の例に相当する。
次に、図17〜図20を参照して、本実施形態においてゲームシステム1で実行される具体的な処理の一例について説明する。図17は、本実施形態において本体装置2のDRAM85に設定されるデータ領域の一例を示す図である。なお、DRAM85には、図17に示すデータの他、他の処理で用いられるデータも記憶されるが、詳細な説明を省略する。
DRAM85のプログラム記憶領域には、ゲームシステム1で実行される各種プログラムPaが記憶される。本実施形態においては、各種プログラムPaは、上述した右コントローラ4との間で無線通信するための通信プログラムや、右コントローラ4から取得したデータや本体装置2の姿勢に基づいた情報処理を行うためのアプリケーションプログラム(例えば、ゲームプログラム)等が記憶される。なお、各種プログラムPaは、フラッシュメモリ84に予め記憶されていてもよいし、ゲームシステム1に着脱可能な記憶媒体(例えば、スロット23に装着された所定の種類の記憶媒体)から取得されてDRAM85に記憶されてもよいし、インターネット等のネットワークを介して他の装置から取得されてDRAM85に記憶されてもよい。プロセッサ81は、DRAM85に記憶された各種プログラムPaを実行する。
また、DRAM85のデータ記憶領域には、ゲームシステム1において実行される通信処理や情報処理等の処理において用いられる各種のデータが記憶される。本実施形態においては、DRAM85には、操作データDa、角速度データDb、加速度データDc、姿勢データDd、重力方向データDe、リング変形量データDg、回転操作フラグデータDh、突出フラグデータDi、プレイヤオブジェクト動作データDj、標的オブジェクト動作データDk、および画像データDm等が記憶される。
操作データDaは、右コントローラ4から適宜取得した操作データである。上述したように、右コントローラ4から送信される操作データには、各入力部(具体的には、各ボタン、アナログスティック、各センサ)からの入力に関する情報(具体的には、操作に関する情報や各センサによる検出結果)やリング型拡張装置5における環状部201の変形状態を示す歪み値が含まれている。本実施形態では、無線通信によって右コントローラ4から所定周期で操作データが送信されており、当該受信した操作データを用いて操作データDaが適宜更新される。なお、操作データDaの更新周期は、ゲームシステム1で実行される処理の周期である1フレーム毎に更新されてもよいし、上記無線通信によって操作データが送信される周期毎に更新されてもよい。
角速度データDbは、右コントローラ4から取得した操作データのうち、現時点から所定時間前までに取得された右コントローラ4に生じている角速度の履歴を示すデータである。例えば、角速度データDbは、右コントローラ4に生じているxyz軸周りの角速度を示すデータの履歴等を含んでいる。
加速度データDcは、右コントローラ4から取得した操作データのうち、現時点から所定時間前までに取得された右コントローラ4に生じている加速度の履歴を示すデータである。例えば、加速度データDcは、右コントローラ4に生じているxyz軸方向の加速度を示すデータの履歴等を含んでいる。
姿勢データDdは、実空間における右コントローラ4の姿勢を示すデータである。一例として、姿勢データDdは、実空間における右コントローラ4のxyz軸方向(例えば、実空間におけるXYZ軸に対する角度)を示すデータである。
重力方向データDeは、右コントローラ4に作用している重力加速度の方向を示すデータである。
リング変形量データDgは、リング型拡張装置5の変形方向および変形量を示すデータである。
回転操作フラグデータDhは、リング型拡張装置5を回す操作(ロール操作)が行われている場合にオンに設定される回転操作フラグを示すデータである。突出フラグデータDiは、プレイヤオブジェクトOBJが円形軌道Lから離れる方向に移動可能な状態である場合にオンに設定される突出フラグを示すデータである。
プレイヤオブジェクト動作データDjは、仮想ゲーム空間に配置されているプレイヤオブジェクトOBJの位置、状態、姿勢、動作等を示すデータである。標的オブジェクト動作データDkは、標的オブジェクトTの位置、状態、姿勢、動作等を示すデータである。
画像データDmは、表示画面に画像(例えば、プレイヤオブジェクトOBJの画像、標的オブジェクトTの画像、出現位置Hを含むフィールド画像、背景画像等)を表示するためのデータである。
次に、図18〜図20を参照して、本実施形態における情報処理の詳細な一例を説明する。図18は、ゲームシステム1で実行される情報処理の一例を示すフローチャートである。図19は、図18におけるステップS104において行われるロール操作処理の詳細な一例を示すサブルーチンである。図20は、図18におけるステップS106において行われる変形操作処理の詳細な一例を示すサブルーチンである。本実施形態においては、図18〜図20に示す一連の処理は、プロセッサ81が各種プログラムPaに含まれる通信プログラムや所定のアプリケーションプログラム(ゲームプログラム)を実行することによって行われる。また、図18〜図20に示す情報処理が開始されるタイミングは任意である。
なお、図18〜図20に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて(または代えて)別の処理が実行されてもよい。また、本実施形態では、上記フローチャートの各ステップの処理をプロセッサ81が実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を、プロセッサ81以外のプロセッサや専用回路が実行するようにしてもよい。また、本体装置2において実行される処理の一部は、本体装置2と通信可能な他の情報処理装置(例えば、本体装置2とネットワークを介して通信可能なサーバ)によって実行されてもよい。すなわち図18〜図20に示す各処理は、本体装置2を含む複数の情報処理装置が協働することによって実行されてもよい。
図18において、プロセッサ81は、情報処理における初期設定を行い(ステップS101)、次のステップに処理を進める。例えば、上記初期設定では、プロセッサ81は、以下に説明する処理を行うためのパラメータを初期化する。例えば、プロセッサ81は、仮想ゲーム空間において各オブジェクト(プレイヤオブジェクトOBJを含む)を初期配置して仮想ゲーム空間の初期状態を生成し、プレイヤオブジェクトOBJの位置、方向、および姿勢等を用いてプレイヤオブジェクト動作データDjを更新する。
次に、プロセッサ81は、右コントローラ4から操作データを取得して操作データDaを更新し(ステップS102)、次のステップに処理を進める。なお、プロセッサ81は、上記ステップS102において右コントローラ4から取得した操作データのうち、右コントローラ4に生じている角速度を示すデータを、角速度データDbに格納する。また、プロセッサ81は、上記ステップS102において右コントローラ4から取得した操作データのうち、右コントローラ4に生じている加速度を示すデータを、加速度データDcに格納する。
次に、プロセッサ81は、右コントローラ4の姿勢を算出し(ステップS103)、次のステップに処理を進める。例えば、プロセッサ81は、角速度データDbに格納されている角速度データを用いて、右コントローラ4のxyz軸周りの角速度を取得する。そして、プロセッサ81は、姿勢データDdが示す右コントローラ4の姿勢における重力加速度方向を基準としたxyz軸を、取得された角速度に応じてそれぞれ回転させて、当該回転後の重力加速度方向を基準としたxyz軸の方向を用いて姿勢データDdにおける右コントローラ4の姿勢を示すデータを更新する。また、プロセッサ81は、加速度データDcに格納されている加速度データを用いて、右コントローラ4に作用している重力加速度の方向を算出して、重力方向データDeを更新する。なお、重力加速度を抽出する方法については任意の方法を用いればよく、例えば右コントローラ4に平均的に生じている加速度成分を算出して当該加速度成分を重力加速度として抽出してもよい。また、プロセッサ81は、重力方向データDeが示す右コントローラ4に生じている重力加速度の方向を用いて、姿勢データDdが示す右コントローラ4の姿勢を適時補正してもかまわない。
次に、プロセッサ81は、ロール操作処理を行い(ステップS104)、ステップS105に処理を進める。以下、図19を参照して、上記ステップS104において行われるロール操作処理について説明する。なお、第1オブジェクト制御部は、動きデータに応じて、第1オブジェクトを仮想空間内において移動または当該第1オブジェクトの仮想空間内における姿勢を変化させる処理を行うものであり、一例としてロール操作処理を行うプロセッサ81に相当する。
図19において、プロセッサ81は、所定時間前から現時点までの期間におけるリング型拡張装置5がロール操作された角度(リング回転角度変化量)を算出し(ステップS121)、次のステップに処理を進める。例えば、プロセッサ81は、角速度データDb、加速度データDc、姿勢データDd、および重力方向データDe等を用いて、所定時間前から現時点までの期間における右コントローラ4の姿勢変化を算出し、当該姿勢変化を用いてリング型拡張装置5がロール操作された角度変化量を算出する。
次に、プロセッサ81は、上記ステップS121において算出されたリング回転角度変化量が所定角度以上か否かを判定する(ステップS122)。そして、プロセッサ81は、リング回転角度変化量が所定角度以上である場合、ロール操作が行われたと判定して、ステップS123に処理を進める。一方、プロセッサ81は、リング回転角度変化量が所定角度未満である場合、ロール操作が行われていないと判定して、ステップS126に処理を進める。
ステップS123において、プロセッサ81は、リング型拡張装置5の姿勢に応じたプレイヤオブジェクトOBJの位置を算出し、次のステップに処理を進める。例えば、プロセッサ81は、姿勢データDdが示す右コントローラ4の姿勢を用いて、実空間におけるリング型拡張装置5の姿勢(例えば、重力加速度gとグリップカバー203および204を結ぶ直線Dhとの角度θ;図13参照)を算出し、当該リング型拡張装置5の姿勢に基づいてプレイヤオブジェクトOBJの位置を変化させて設定してプレイヤオブジェクト動作データDjを更新する。
次に、プロセッサ81は、プレイヤオブジェクトOBJが円形軌道Lから離れる方向に突出している移動状態を解除し(ステップS124)、次のステップに処理を進める。例えば、プロセッサ81は、円形軌道Lの内側に構成されているプレイヤオブジェクトOBJの内側プレイヤオブジェクトOBJ1iおよびOBJ2iが円形軌道Lから離れて内側に配置されている場合、内側プレイヤオブジェクトOBJ1iおよびOBJ2iをそれぞれ円形軌道L側に移動させて当該内側へ移動する前の状態に戻す。これによって、プロセッサ81は、内側プレイヤオブジェクトOBJ1iおよびOBJ2iが円形軌道Lから離れる方向に突出している移動状態を解除し、当該解除後の位置を用いてプレイヤオブジェクト動作データDjを更新する。また、プロセッサ81は、円形軌道Lの外側に構成されているプレイヤオブジェクトOBJの外側プレイヤオブジェクトOBJ1oおよびOBJ2oが円形軌道Lから離れて外側に配置されている場合、外側プレイヤオブジェクトOBJ1oおよびOBJ2oをそれぞれ円形軌道L側に移動させて当該外側へ移動する前の状態に戻す。これによって、プロセッサ81は、外側プレイヤオブジェクトOBJ1oおよびOBJ2oが円形軌道Lから離れる方向に突出している移動状態を解除し、当該解除後の位置を用いてプレイヤオブジェクト動作データDjを更新する。
次に、プロセッサ81は、回転操作フラグをオンに設定して(ステップS125)、当該サブルーチンによる処理を終了する。例えば、プロセッサ81は、回転操作フラグデータDhが示す回転操作フラグをオンに設定して、回転操作フラグデータDhを更新する。
一方、プロセッサ81は、リング回転角度変化量が所定角度未満である場合、回転操作フラグをオフに設定して(ステップS126)、当該サブルーチンによる処理を終了する。例えば、プロセッサ81は、回転操作フラグデータDhが示す回転操作フラグをオフに設定して、回転操作フラグデータDhを更新する。
図18に戻り、プロセッサ81は、上記ステップS104におけるロール操作処理の後、回転操作フラグがオフであるか否かを判定する(ステップS105)。例えば、プロセッサ81は、回転操作フラグデータDhが示す回転操作フラグがオフに設定されている場合、上記ステップS105において肯定判定する。そして、プロセッサ81は、回転操作フラグがオフである場合、ステップS106に処理を進める。一方、プロセッサ81は、回転操作フラグがオンである場合、ステップS107に処理を進める。
ステップS106において、プロセッサ81は、変形操作処理を行い、ステップS107に処理を進める。以下、図20を参照して、上記ステップS106において行われる変形操作処理について説明する。なお、第1オブジェクト動作制御部は、歪データに応じて、仮想空間内の第1オブジェクトに所定の動作を行わせる処理を行うものであり、一例として変形操作処理を行うプロセッサ81に相当する。
図20において、プロセッサ81は、リング型拡張装置5の変形量を算出し(ステップS141)、次のステップに処理を進める。例えば、プロセッサ81は、操作データDaが示す歪み値を用いて、リング型拡張装置5における環状部201の変形量および変形方向を算出し、当該算出結果を用いてリング変形量データDgを更新する。
次に、プロセッサ81は、上記ステップS141において算出された変形量が所定量以上であるか否かを判定する(ステップS142)。そして、プロセッサ81は、上記変形量が所定量以上である場合、ステップS143に処理を進める。一方、プロセッサ81は、上記変形量が所定量未満である場合、ステップS148に処理を進める。
ステップS143において、プロセッサ81は、突出フラグがオンであるか否かを判定する。例えば、プロセッサ81は、突出フラグデータDiが示す突出フラグがオンに設定されている場合、上記ステップS143において肯定判定する。そして、プロセッサ81は、突出フラグがオンである場合、ステップS144に処理を進める。一方、プロセッサ81は、突出フラグがオフである場合、当該サブルーチンによる処理を終了する。
ステップS144において、プロセッサ81は、リング型拡張装置5が引張操作による変形状態か否かを判定する。例えば、プロセッサ81は、上記ステップS141において算出された変形方向に基づいて、リング型拡張装置5のグリップカバー203および204が互いに離れる方向にリング型拡張装置5が変形している場合、上記ステップS144において肯定判定する。また、プロセッサ81は、上記ステップS141において算出された変形方向に基づいて、リング型拡張装置5のグリップカバー203および204が互いに近づく方向にリング型拡張装置5が変形している場合、上記ステップS144において否定判定する。そして、プロセッサ81は、リング型拡張装置5が引張操作による変形状態である場合、ステップS145に処理を進める。一方、プロセッサ81は、リング型拡張装置5が引張操作による変形状態でない、すなわち押込操作による変形状態である場合、ステップS146に処理を進める。
ステップS145において、プロセッサ81は、プレイヤオブジェクトOBJを円形軌道Lから外側に離れる方向に突出させて移動させ、当該サブルーチンによる処理を終了する。例えば、プロセッサ81は、円形軌道Lの外側に構成されているプレイヤオブジェクトOBJの外側プレイヤオブジェクトOBJ1oおよびOBJ2oをそれぞれ円形軌道Lから外側へ離れる方向に移動させ、当該移動後の位置を用いてプレイヤオブジェクト動作データDjを更新する。なお、プロセッサ81は、外側プレイヤオブジェクトOBJ1oおよびOBJ2oが標的オブジェクトTO以外の他のオブジェクト(例えば、出現位置Hoを形成する外壁)と当接している場合、外側へ離れる方向への移動を停止させ、突出フラグをオフに設定して突出フラグデータDiを更新する。
一方、ステップS146において、プロセッサ81は、プレイヤオブジェクトOBJを円形軌道Lから内側に離れる方向に突出させて移動させ、当該サブルーチンによる処理を終了する。例えば、プロセッサ81は、円形軌道Lの内側に構成されているプレイヤオブジェクトOBJの内側プレイヤオブジェクトOBJ1iおよびOBJ2iをそれぞれ円形軌道Lから内側へ離れる方向に移動させ、当該移動後の位置を用いてプレイヤオブジェクト動作データDjを更新する。なお、プロセッサ81は、内側プレイヤオブジェクトOBJ1iおよびOBJ2iが標的オブジェクトTI以外の他のオブジェクト(例えば、出現位置Hiを形成する内壁)と当接している場合、内側へ離れる方向への移動を停止させ、突出フラグをオフに設定して突出フラグデータDiを更新する。
一方、上記ステップS141において算出された変形量が所定量未満である場合、プロセッサ81は、プレイヤオブジェクトOBJが円形軌道Lから離れる方向に突出している移動状態を解除し(ステップS148)、次のステップに処理を進める。なお、上記ステップS148における処理は、上述したステップS124における処理を同様であるため、ここでは詳細な説明を省略する。
次に、プロセッサ81は、突出フラグをオンに設定して(ステップS149)、当該サブルーチンによる処理を終了する。例えば、プロセッサ81は、突出フラグデータDiが示す突出フラグをオンに設定して、突出フラグデータDiを更新する。
図18に戻り、ステップS107において、プロセッサ81は、プレイヤオブジェクトOBJおよびプレイヤキャラクタPCの動作制御処理を行い、次のステップに処理を進める。例えば、プロセッサ81は、プレイヤオブジェクト動作データDjが示すプレイヤオブジェクトOBJの位置、状態、姿勢、動作等に基づいて、仮想ゲーム空間においてプレイヤオブジェクトOBJを配置する。また、プロセッサ81は、姿勢データDdが示す右コントローラ4の姿勢に応じて、仮想ゲーム空間においてプレイヤキャラクタPCが両手で把持しているリングオブジェクトRの回転姿勢を設定し、当該設定された回転姿勢に基づいてリングオブジェクトRの円輪軸を中心に回転するようにプレイヤキャラクタPCおよびリングオブジェクトRの姿勢を変化させる。そして、プロセッサ81は、リング変形量データDgに基づいて、リングオブジェクトRを変形させるとともに、プレイヤキャラクタPCの姿勢を変化させる。
次に、プロセッサ81は、標的オブジェクトTの動作制御処理を行い(ステップS108)、次のステップに処理を進める。例えば、プロセッサ81は、所定のアルゴリズム(出現パターン)に基づいて、複数の出現位置HiおよびHoの少なくとも1つから標的オブジェクトTIおよび/またはTOを出現させる場合、当該出現を演出する動作を設定するとともに当該出現後の位置に基づいて標的オブジェクト動作データDkを更新する。また、出現した標的オブジェクトTIまたはTOがプレイヤオブジェクトOBJと衝突することによって消滅する場合、当該消滅およびゲームスコアが加算された演出する動作を設定するとともに当該標的オブジェクトTIまたはTOを仮想ゲーム空間内から消滅させて、標的オブジェクト動作データDkを更新する。また、プロセッサ81は、所定のアルゴリズム(出現パターン)に基づいて、複数の出現位置HiおよびHoから出現している標的オブジェクトTIおよび/またはTOを退避させる場合、当該退避を演出する動作を設定するとともに当該標的オブジェクトTIおよび/またはTOを仮想ゲーム空間内から消滅させて、標的オブジェクト動作データDkを更新する。なお、第2オブジェクト制御部は、仮想空間内において、第2オブジェクトを制御する処理を行うものであり、一例として標的オブジェクトTの動作制御処理を行うプロセッサ81に相当する。
次に、プロセッサ81は、画像生成表示制御処理を行い(ステップS109)、次のステップに処理を進める。例えば、プロセッサ81は、上記ステップS107およびステップS108の処理による設定に基づいて、仮想ゲーム空間に複数のオブジェクト(プレイヤオブジェクトOBJ、プレイヤキャラクタPC、リングオブジェクトR、標的オブジェクトT等)を配置して、仮想ゲーム空間を生成する。そして、プロセッサ81は、仮想ゲーム空間に仮想カメラを配置し、当該仮想カメラから見た仮想ゲーム空間画像を生成して、当該仮想ゲーム空間画像を据置型モニタ9に出力する。
次に、プロセッサ81は、ゲーム処理を終了するか否かを判定する(ステップS110)。上記ステップS110においてゲーム処理を終了する条件としては、例えば、ゲーム処理が終了される条件が満たされたことや、ユーザがゲーム処理を終了する操作を行ったこと等がある。プロセッサ81は、ゲーム処理を終了しない場合に上記ステップS102に戻って処理を繰り返し、ゲーム処理を終了する場合に当該フローチャートによる処理を終了する。以降、ステップS102〜ステップS110の一連の処理は、ステップS110でゲーム処理を終了すると判定されるまで繰り返し実行される。
このように、本実施例においては、リング型拡張装置5を動かす操作とリング型拡張装置5を変形させる操作とによってプレイヤオブジェクトOBJに異なる動作を行わせることができるため、リング型拡張装置5を用いた操作においてユーザ体感を向上させることができる。また、リング型拡張装置5に対する異なる操作を用いて、プレイヤオブジェクトOBJの異なる動作制御ができるため、プレイヤオブジェクトOBJが実現可能な動作の種類を増加させることができる。
また、上述した実施例では、弾性変形可能な材質で構成された環状部201をリング型拡張装置5が備えており、環状部201を弾性変形させることによる操作に応じた処理が行われている。このように入力装置の主部を弾性変形させる操作が可能であることによって、連続でユーザが押込操作および引張操作を行うことが容易となる、押込操作および引張操作に弾性変形が伴うことによってユーザの操作感覚が向上する、押込操作および引張操作に弾性変形が伴うことによってプレイヤオブジェクトOBJが動く感覚をユーザが体感しやすくなる、押込操作および引張操作を必要とすることによってユーザの身体を動かす運動(例えば、腕を動かす運動)を促すことができる等、様々な効果を期待することができる。
なお、上述した実施例では、本体装置2と右コントローラ4とが無線通信を行うことによって、右コントローラ4の操作データが本体装置2へ送信される例を用いたが、他の態様によって上記操作データが本体装置2へ送信されてもよい。例えば、右コントローラ4のコントローラの操作データが左コントローラ3へ送信された後、左コントローラ3から両方の操作データ(または加工された操作データ)が本体装置2へ合わせて送信されてもかまわない。
また、上述した実施例において、右コントローラ4の姿勢や動き(リング型拡張装置5の姿勢や動き)を検出する方法については、単なる一例であって、他の方法や他のデータを用いて当該姿勢や当該動きを検出してもよい。上述した加速度センサおよび/または角速度センサは、右コントローラ4の姿勢や動きを算出するためのデータを出力するセンサの一例である。例えば、他の実施例においては、右コントローラ4は、加速度センサおよび/または角速度センサに代えてまたは加えて磁気センサを備えていてもよく、当該磁気センサによって検出された磁気を用いて右コントローラ4の姿勢や動きが算出されてもよい。また、右コントローラ4の姿勢や動きを算出する方法は任意であり、例えば他の実施例においては、本体装置2は、右コントローラ4(リング型拡張装置5)を撮像装置によって撮像し、撮影された画像を用いて右コントローラ4(リング型拡張装置5)の姿勢を算出してもよい。また、右コントローラ4に備えられた加速度センサおよび/または角速度センサにおいて検出されたデータを用いて、右コントローラ4内部において右コントローラ4の姿勢や動きを算出してもよい。この場合、右コントローラ4内部で算出された右コントローラ4の姿勢や動きを示すデータが加えられた操作データが、右コントローラ4から本体装置2へ送信されることになる。
また、ゲームシステム1は、どのような装置であってもよく、携帯型のゲーム装置、任意の携帯型電子機器(PDA(Personal Digital Assistant)、携帯電話、パーソナルコンピュータ、カメラ、タブレット等)等であってもよい。この場合、オブジェクトを移動する操作を行うための入力装置は、左コントローラ3や右コントローラ4でなくてもよく、別のコントローラ、マウス、タッチパッド、タッチパネル、トラックボール、キーボード、十字キー、スライドパッド等であってもよい。
また、上述した例では、リング型拡張装置5は、右コントローラ4が装着されることによって慣性センサ(例えば、加速度センサや角速度センサ)が搭載された入力装置として機能する例を用いたが、他の態様によって当該機能が搭載されてもよい。例えば、リング型拡張装置5自体に慣性センサの機能が搭載されていてもよい。一例として、リング型拡張装置5に生じる1軸以上の方向に沿った加速度を検出する加速度センサおよび/またはリング型拡張装置5に生じる1軸以上の軸方向周りの角速度を検出する角速度センサが、本体部202内部に設けられていてもよい。
また、上述した説明では情報処理をゲームシステム1でそれぞれ行う例を用いたが、上記処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、ゲームシステム1がさらに他の装置(例えば、別のサーバ、他の画像表示装置、他のゲーム装置、他の携帯端末)と通信可能に構成されている場合、上記処理ステップは、さらに当該他の装置が協働することによって実行してもよい。このように、上記処理ステップの少なくとも一部を他の装置で行うことによって、上述した処理と同様の処理が可能となる。また、上述した情報処理は、少なくとも1つの情報処理装置により構成される情報処理システムに含まれる1つのプロセッサまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施例においては、ゲームシステム1のプロセッサ81が所定のプログラムを実行することによって情報処理を行うことが可能であるが、ゲームシステム1が備える専用回路によって上記処理の一部または全部が行われてもよい。
ここで、上述した変形例によれば、いわゆるクラウドコンピューティングのシステム形態や分散型の広域ネットワークおよびローカルネットワークのシステム形態でも本発明を実現することが可能となる。例えば、分散型のローカルネットワークのシステム形態では、据置型の情報処理装置(据置型のゲーム装置)と携帯型の情報処理装置(携帯型のゲーム装置)との間で上記処理を協働により実行することも可能となる。なお、これらのシステム形態では、上述した処理をどの装置で行うかについては特に限定されず、どのような処理分担をしたとしても本発明を実現できることは言うまでもない。
また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる条件等は、単なる一例に過ぎず他の順序、値、条件であっても、本実施例を実現できることは言うまでもない。
また、上記プログラムは、外部メモリ等の外部記憶媒体を通じてゲームシステム1に供給されるだけでなく、有線または無線の通信回線を通じて当該装置に供給されてもよい。また、上記プログラムは、当該装置内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、CD−ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、これらの記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。また、当業者は、本発明の具体的な実施例の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。
以上のように、本発明は、ユーザ体感を向上させることを可能とする情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法等として利用することができる。
1…情報処理システム
2…本体装置
3…左コントローラ
4…右コントローラ
5…リング型拡張装置
11…ハウジング
12…ディスプレイ
17…左側端子
21…右側端子
27…下側端子
29…照度センサ
32、52…アナログスティック
42、64…端子
81…プロセッサ
82…ネットワーク通信部
83…コントローラ通信部
85…DRAM
101、111…通信制御部
89、104、114…加速度センサ
90、105、115…角速度センサ
201…環状部
202…支持部
203、204…グリップカバー

Claims (19)

  1. 歪センサおよび動きセンサを備える入力装置と情報処理装置とを含む情報処理システムであって、
    前記入力装置は、外部から力が加わることに応じて少なくとも一部が弾性変形し、
    前記歪センサは、前記入力装置の変形に応じた歪データを出力し、
    前記動きセンサは、前記入力装置の動きおよび/または姿勢に応じた動きデータを出力し、
    前記情報処理装置は、
    前記歪データまたは前記動きデータを少なくとも含む入力データを前記入力装置から取得する入力データ取得部と、
    ゲーム処理を実行するゲーム処理部とを備え、
    前記ゲーム処理部は、
    前記動きデータに応じて、第1オブジェクトを仮想空間内において移動または当該第1オブジェクトの仮想空間内における姿勢を変化させる第1オブジェクト制御部と、
    前記歪データに応じて、仮想空間内の前記第1オブジェクトに所定の動作を行わせる第1オブジェクト動作制御部とを含む、情報処理システム。
  2. 前記ゲーム処理部は、前記動きデータに基づいて、実空間における前記入力装置の姿勢を算出する姿勢算出部を、さらに含み、
    前記第1オブジェクト制御部は、前記入力装置の姿勢に基づいて、前記第1オブジェクトを仮想空間内において移動させる、請求項1に記載の情報処理システム。
  3. 前記第1オブジェクト制御部は、前記第1オブジェクトを仮想空間内に設定された移動経路に沿って移動させ、
    前記第1オブジェクト動作制御部は、前記第1オブジェクトに前記移動経路上の位置から外れた位置へ移動させる動作を行わせる、請求項2に記載の情報処理システム。
  4. 前記ゲーム処理部は、前記動きデータに基づいて、実空間における前記入力装置の姿勢を算出する姿勢算出部を、さらに含み、
    前記第1オブジェクト制御部は、前記入力装置の姿勢に基づいて、仮想空間内における前記第1オブジェクトの姿勢を設定し、
    前記第1オブジェクト動作制御部は、前記第1オブジェクトの姿勢に基づいた方向に、当該第1オブジェクトから他のオブジェクトまたは当該第1オブジェクトの一部を移動させる動作を行わせる、請求項1に記載の情報処理システム。
  5. 前記第1オブジェクト動作制御部は、前記入力装置が第1の態様で変形したことを前記歪データが示す場合、前記移動経路から外れる第1方向に移動させる動作を前記第1オブジェクトに行わせ、前記入力装置が第2の態様で変形したことを前記歪データが示す場合、前記移動経路から外れる当該第1方向とは異なる第2方向に移動させる動作を前記第1オブジェクトに行わせる、請求項3に記載の情報処理システム。
  6. 前記入力装置は、円弧状部分の少なくとも一部を含み、
    前記移動経路は、円弧形状の経路を含み、
    前記第1オブジェクト制御部は、前記入力装置における前記円弧状部分が円周方向に回転する当該入力装置の姿勢変化に基づいて、前記第1オブジェクトを前記円弧形状の移動経路に沿って移動させる、請求項3に記載の情報処理システム。
  7. 前記入力装置は、前記円弧状部分に少なくとも1つの把持部を含み、
    前記第1オブジェクト制御部は、前記円弧状部分における前記把持部の位置に対応する前記円弧形状の移動経路上の位置に前記第1オブジェクトが配置されるように、前記第1オブジェクトを移動させる、請求項6に記載の情報処理システム。
  8. 前記把持部は、前記円弧状部分における異なる位置に複数設けられ、
    前記第1オブジェクトは、仮想空間内に複数設けられ、
    前記第1オブジェクト制御部は、前記円弧状部分における前記複数の把持部の位置それぞれに対応する前記円弧形状の移動経路上の複数位置に前記複数の第1オブジェクトがそれぞれ配置されるように、前記第1オブジェクトをそれぞれ移動させる、請求項7に記載の情報処理システム。
  9. 前記ゲーム処理部は、仮想空間内において、第2オブジェクトを制御する第2オブジェクト制御部を、さらに含み、
    前記第1オブジェクト動作制御部は、仮想空間内における前記第1オブジェクトと前記第2オブジェクトとの位置関係に基づいて、当該第1オブジェクトが当該第2オブジェクトに対して効果を与える動作、または当該第1オブジェクトが当該第2オブジェクトに対して効果を与えない動作を行わせる、請求項1乃至8の何れか1つに記載の情報処理システム。
  10. 前記第2オブジェクト制御部は、時間経過に応じて、仮想空間内において設定された複数の出現位置の少なくとも1つの出現位置に前記第2オブジェクトを出現させる制御と、当該出現位置から出現した前記第2オブジェクトを消滅させる制御とを行う、請求項9に記載の情報処理システム。
  11. 前記第2オブジェクト制御部は、仮想空間内における第1領域に設定された出現位置と当該第1領域とは異なる第2領域に設定された出現位置とから、それぞれ前記第2オブジェクトを出現させる制御を行う、請求項9に記載の情報処理システム。
  12. 前記第1領域は、前記第1オブジェクトの移動経路を挟んだ一方側に設定され、
    前記第2領域は、前記第1オブジェクトの移動経路を挟んだ他方側に設定される、請求項11に記載の情報処理システム。
  13. 前記第2オブジェクト制御部は、前記第1領域に設定された出現位置から前記第2オブジェクトを出現させた後、前記第2オブジェクトが前記第2領域に設定された出現位置から出現させる確率を高く制御する、請求項12に記載の情報処理システム。
  14. 前記第1領域および前記第2領域は、円中心位置がほぼ同じとなる円弧形状でそれぞれ形成され、
    前記出現位置は、前記円弧形状における0時方向となるそれぞれの範囲と前記円弧形状における6時方向となるそれぞれの範囲とには設定されない、請求項11乃至13の何れか1つに記載の情報処理システム。
  15. 前記ゲーム処理部は、前記動きデータに応じた前記第1オブジェクト制御部による前記第1オブジェクトの移動または姿勢を変化させる制御と前記歪データに応じた前記第1オブジェクト動作制御部による前記第1オブジェクトの動作を行わせる制御とが重複した場合、前記第1オブジェクト制御部による前記第1オブジェクトの移動または姿勢を変化させる制御を優先して行う、請求項1乃至14の何れか1つに記載の情報処理システム。
  16. 前記ゲーム処理部は、前記動きデータに応じて、前記入力装置を模したリング状の仮想オブジェクトを把持する仮想キャラクタに仮想空間内において動作させる仮想キャラクタ動作制御部を、さらに含み、
    前記第1オブジェクト制御部は、前記第1オブジェクトを仮想空間内に設定されたリング形状の移動経路に沿って移動させ、
    前記仮想キャラクタ動作制御部は、前記動きデータに応じた前記入力装置の動きおよび/または姿勢に応じて、前記仮想オブジェクトの動きおよび/または姿勢を変化させて前記仮想キャラクタの動作を制御し、
    前記第1オブジェクト制御部は、前記動きデータに応じた前記入力装置の動きおよび/または姿勢に応じて、前記第1オブジェクトを前記リング形状の移動経路に沿って移動させる、請求項1乃至15の何れか1つに記載の情報処理システム。
  17. 歪センサおよび動きセンサを備える入力装置からの出力を用いて処理を行う情報処理装置のコンピュータで実行される情報処理プログラムであって、
    前記入力装置は、外部から力が加わることに応じて少なくとも一部が弾性変形し、
    前記歪センサは、前記入力装置の変形に応じた歪データを出力し、
    前記動きセンサは、前記入力装置の動きおよび/または姿勢に応じた動きデータを出力し、
    前記コンピュータを、
    前記歪データまたは前記動きデータを少なくとも含む入力データを前記入力装置から取得する入力データ取得手段と、
    ゲーム処理を実行するゲーム処理手段として機能させ、
    前記ゲーム処理手段は、
    前記動きデータに応じて、第1オブジェクトを仮想空間内において移動または当該第1オブジェクトの仮想空間内における姿勢を変化させる第1オブジェクト制御手段と、
    前記歪データに応じて前記第1オブジェクトに仮想空間内において所定の動作を行わせる第1オブジェクト動作制御手段とを含む、情報処理プログラム。
  18. 歪センサおよび動きセンサを備える入力装置からの出力を用いて処理を行う情報処理装置であって、
    前記入力装置は、外部から力が加わることに応じて少なくとも一部が弾性変形し、
    前記歪センサは、前記入力装置の変形に応じた歪データを出力し、
    前記動きセンサは、前記入力装置の動きおよび/または姿勢に応じた動きデータを出力し、
    前記情報処理装置は、
    前記歪データまたは前記動きデータを少なくとも含む入力データを前記入力装置から取得する入力データ取得部と、
    ゲーム処理を実行するゲーム処理部とを備え、
    前記ゲーム処理部は、
    前記動きデータに応じて、第1オブジェクトを仮想空間内において移動または当該第1オブジェクトの仮想空間内における姿勢を変化させる第1オブジェクト制御部と、
    前記歪データに応じて前記第1オブジェクトに仮想空間内において所定の動作を行わせる第1オブジェクト動作制御部とを含む、情報処理装置。
  19. 歪センサおよび動きセンサを備える入力装置からの出力を用いて処理を行う情報処理方法であって、
    前記入力装置は、外部から力が加わることに応じて少なくとも一部が弾性変形し、
    前記歪センサは、前記入力装置の変形に応じた歪データを出力し、
    前記動きセンサは、前記入力装置の動きおよび/または姿勢に応じた動きデータを出力し、
    前記歪データまたは前記動きデータを少なくとも含む入力データを前記入力装置から取得する入力データ取得ステップと、
    ゲーム処理を実行するゲーム処理ステップとを含み、
    前記ゲーム処理ステップは、
    前記動きデータに応じて、第1オブジェクトを仮想空間内において移動または当該第1オブジェクトの仮想空間内における姿勢を変化させる第1オブジェクト制御ステップと、
    前記歪データに応じて前記第1オブジェクトに仮想空間内において所定の動作を行わせる第1オブジェクト動作制御ステップとを含む、情報処理方法。
JP2019150413A 2019-08-20 2019-08-20 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法 Active JP6688423B1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019150413A JP6688423B1 (ja) 2019-08-20 2019-08-20 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
US16/751,894 US11154770B2 (en) 2019-08-20 2020-01-24 Information processing system, storage medium storing information processing program, information processing apparatus, and information processing method
US17/476,562 US11617943B2 (en) 2019-08-20 2021-09-16 Information processing system, storage medium storing information processing program, information processing apparatus, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019150413A JP6688423B1 (ja) 2019-08-20 2019-08-20 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法

Publications (2)

Publication Number Publication Date
JP6688423B1 JP6688423B1 (ja) 2020-04-28
JP2021029411A true JP2021029411A (ja) 2021-03-01

Family

ID=70413726

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019150413A Active JP6688423B1 (ja) 2019-08-20 2019-08-20 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法

Country Status (2)

Country Link
US (2) US11154770B2 (ja)
JP (1) JP6688423B1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6688423B1 (ja) 2019-08-20 2020-04-28 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008113719A (ja) * 2006-11-01 2008-05-22 Sony Computer Entertainment Inc コントローラ装置
US20080146336A1 (en) * 2002-12-04 2008-06-19 Philip Feldman Exercise Gaming Device and Method of Facilitating User Exercise During Video Game Play
JP2009279281A (ja) * 2008-05-24 2009-12-03 Shinsedai Kk 情報処理装置及び操作物
US20100004061A1 (en) * 2008-05-21 2010-01-07 Greg Merril Exercise Gaming Device and Method of Interacting With Gaming or Other Scenarios Based on Physical Exercise
JP2010088703A (ja) * 2008-10-09 2010-04-22 Nikon Corp ハンディ型トレーニング機器
JP2012239762A (ja) * 2011-05-23 2012-12-10 Nintendo Co Ltd ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
WO2016059943A1 (ja) * 2014-10-16 2016-04-21 任天堂株式会社 トレーニング器具、トレーニングシステムおよび入力装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2497547B1 (en) * 2011-03-08 2018-06-27 Nintendo Co., Ltd. Information processing program, information processing apparatus, information processing system, and information processing method
US10852838B2 (en) * 2014-06-14 2020-12-01 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US10607413B1 (en) * 2015-09-08 2020-03-31 Ultrahaptics IP Two Limited Systems and methods of rerendering image hands to create a realistic grab experience in virtual reality/augmented reality environments
JP6714791B2 (ja) * 2016-07-13 2020-07-01 株式会社バンダイナムコエンターテインメント シミュレーションシステム及びプログラム
JP6373920B2 (ja) * 2016-09-14 2018-08-15 株式会社バンダイナムコエンターテインメント シミュレーションシステム及びプログラム
JP6298130B2 (ja) * 2016-09-14 2018-03-20 株式会社バンダイナムコエンターテインメント シミュレーションシステム及びプログラム
JP6594920B2 (ja) * 2017-03-01 2019-10-23 任天堂株式会社 ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
GB201709199D0 (en) * 2017-06-09 2017-07-26 Delamont Dean Lindsay IR mixed reality and augmented reality gaming system
JP6353994B1 (ja) * 2018-01-17 2018-07-04 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理方法、および情報処理装置
JP6666505B1 (ja) * 2019-06-20 2020-03-13 任天堂株式会社 入力装置
JP6688423B1 (ja) 2019-08-20 2020-04-28 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP6688424B1 (ja) * 2019-08-30 2020-04-28 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080146336A1 (en) * 2002-12-04 2008-06-19 Philip Feldman Exercise Gaming Device and Method of Facilitating User Exercise During Video Game Play
JP2008113719A (ja) * 2006-11-01 2008-05-22 Sony Computer Entertainment Inc コントローラ装置
US20100004061A1 (en) * 2008-05-21 2010-01-07 Greg Merril Exercise Gaming Device and Method of Interacting With Gaming or Other Scenarios Based on Physical Exercise
JP2009279281A (ja) * 2008-05-24 2009-12-03 Shinsedai Kk 情報処理装置及び操作物
JP2010088703A (ja) * 2008-10-09 2010-04-22 Nikon Corp ハンディ型トレーニング機器
JP2012239762A (ja) * 2011-05-23 2012-12-10 Nintendo Co Ltd ゲームシステム、ゲーム装置、ゲームプログラム、およびゲーム処理方法
WO2016059943A1 (ja) * 2014-10-16 2016-04-21 任天堂株式会社 トレーニング器具、トレーニングシステムおよび入力装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
松本 修一, まじかるで〜と<SB>TM</SB> ドキドキ告白大作戦 完全攻略ガイド 初版, vol. 第1版, JPN6019050664, 21 January 1998 (1998-01-21), pages 38, ISSN: 0004181970 *

Also Published As

Publication number Publication date
US11154770B2 (en) 2021-10-26
US20210052974A1 (en) 2021-02-25
US11617943B2 (en) 2023-04-04
US20220001271A1 (en) 2022-01-06
JP6688423B1 (ja) 2020-04-28

Similar Documents

Publication Publication Date Title
JP6688424B1 (ja) 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP2020149584A (ja) 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP2020058659A (ja) ゲームシステム、ゲーム処理方法、ゲームプログラム、ゲーム装置、およびゲームコントローラ
JP2019115481A (ja) 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
JP6691258B1 (ja) 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP2021018526A (ja) 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
US10758819B2 (en) Game system, non-transitory storage medium having stored therein game program, information processing apparatus, and game control method
US10596459B2 (en) Systems, methods, and/or computer readable storage medium having program, for localized haptic feedback based on position of virtual object
US10639545B2 (en) Game system, game program, information processing device, and information processing method
JP6688425B1 (ja) 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP6688423B1 (ja) 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP6893417B2 (ja) ゲームシステム、ゲームプログラム、情報処理装置、および、情報処理方法
US10661163B2 (en) Video game with haptic signal that is disabled based on losing contact with a surface
JP6821073B1 (ja) 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP7410837B2 (ja) 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
JP6938580B2 (ja) ゲームプログラム、ゲームシステム、ゲーム装置、およびゲーム処理制御方法
JP2012239760A (ja) 方向制御システム、方向制御装置、方向制御プログラム、および方向制御方法
JP6955339B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP6829608B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP6973967B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP7045408B2 (ja) 情報処理プログラム
JP6842368B2 (ja) 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法
JP2021016772A (ja) 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190918

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200221

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: 20200325

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200403

R150 Certificate of patent or registration of utility model

Ref document number: 6688423

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