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

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

Info

Publication number
JP6854132B2
JP6854132B2 JP2017001841A JP2017001841A JP6854132B2 JP 6854132 B2 JP6854132 B2 JP 6854132B2 JP 2017001841 A JP2017001841 A JP 2017001841A JP 2017001841 A JP2017001841 A JP 2017001841A JP 6854132 B2 JP6854132 B2 JP 6854132B2
Authority
JP
Japan
Prior art keywords
information processing
vibration
data
vibration data
operating device
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.)
Active
Application number
JP2017001841A
Other languages
English (en)
Other versions
JP2018110650A (ja
Inventor
浩一 久馬
浩一 久馬
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 JP2017001841A priority Critical patent/JP6854132B2/ja
Priority to US15/638,554 priority patent/US10118102B2/en
Publication of JP2018110650A publication Critical patent/JP2018110650A/ja
Application granted granted Critical
Publication of JP6854132B2 publication Critical patent/JP6854132B2/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/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/98Accessories, i.e. detachable arrangements optional for the use of the video game device, e.g. grip supports of game controllers
    • 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/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/25Output arrangements for video game devices
    • A63F13/28Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
    • A63F13/285Generating tactile feedback signals via the game input device, e.g. force feedback
    • 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/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/327Interconnection arrangements between game servers and game devices; Interconnection arrangements between game devices; Interconnection arrangements between game servers using local area network [LAN] connections using wireless networks, e.g. Wi-Fi 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • 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/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • 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
    • 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/1043Features 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 being characterized by constructional details

Description

本発明は、操作装置を用いて操作可能な情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法に関する。
従来、方向入力部と押下ボタンとが設けられているゲームコントローラを用いて操作可能なゲームシステムがある(例えば、特許文献1参照)。
特開2012−110670号公報
しかしながら、上記特許文献1で開示されたゲームシステムでは、ゲームコントローラに設けられている方向入力部や押下ボタンを操作したとしても、当該操作に応じて当該ゲームコントローラを適切に振動させることについては何ら考慮されていない。すなわち、上記特許文献1で開示されたゲームシステムでは、ゲームコントローラの方向入力部や押下ボタンを用いた操作に応じて適切にバイブレータを制御することについては考慮されていない。
それ故、本発明の目的は、操作装置を用いて操作可能なシステムにおいて、当該操作装置を用いた操作に応じて適切な振動を与えることができる情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法を提供することである。
上記目的を達成するために、本発明は例えば以下のような構成を採用し得る。なお、特許請求の範囲の記載を解釈する際に、特許請求の範囲の記載によってのみその範囲が解釈されるべきであることが理解され、特許請求の範囲の記載と本欄の記載とが矛盾する場合には、特許請求の範囲の記載が優先する。
本発明の情報処理システムの一構成例は、第1の振動子を有する第1の操作装置と第2の振動子を有する第2の操作装置と当該第1の操作装置および当該第2の操作装置のそれぞれと通信可能な情報処理装置とを含む。第1の操作装置は、方向入力部および第1送信手段を含む。方向入力部は、第1の操作装置のハウジングに設けられる。第1送信手段は、方向入力部に対する操作に応じた第1操作データを情報処理装置に送信する。第2の操作装置は、押下ボタンおよび第2送信手段を含む。押下ボタンは、第2の操作装置のハウジングに設けられる。第2送信手段は、押下ボタンに対する操作に応じた第2操作データを情報処理装置に送信する。情報処理装置は、設定手段、操作データ取得手段、振動データ生成手段、および第3送信手段を含む。設定手段は、第1の操作装置と第2の操作装置とを1組として用いる操作方式を設定する。操作データ取得手段は、第1操作データと第2操作データとを取得する。振動データ生成手段は、第1操作データを用いて第1振動データを生成し、第2操作データを用いて第2振動データを生成する。第3送信手段は、第1振動データを第1の操作装置に送信するとともに、設定手段により当該第1の操作装置と同組に設定された第2の操作装置に第2振動データを送信する。第1の操作装置は、第1振動制御手段を、さらに含む。第1振動制御手段は、第1振動データに応じて第1の振動子を振動させる。第2の操作装置は、第2振動制御手段を、さらに含む。第2振動制御手段は、第2振動データに応じて第2の振動子を振動させる。
上記によれば、第1の操作装置および第2の操作装置の両方を用いて操作する場合に、操作が行われた操作装置が振動するため、操作に応じて適切に操作装置を振動させることが可能となる。
また、上記振動データ生成手段は、第1操作データを用いて方向入力部に対して有効となる操作が行われたことを契機として第1振動データを生成し、第2操作データを用いて押下ボタンに対して有効となる操作が行われたことを契機として第2振動データを生成してもよい。
上記によれば、第1の操作装置および第2の操作装置の両方を用いて操作する場合に、有効な操作が行われた操作装置が当該操作を契機として振動するため、操作に応じて適切に操作装置を振動させることが可能となる。
また、上記方向入力部は、ユーザによって操作されるスティックの傾倒方向および傾倒角度に応じた第1操作データを出力するアナログスティックでもよい。
上記によれば、アナログスティックに対する傾倒操作に応じて第1の操作装置を振動させることができる。
また、上記第1振動データが示す振動波形は、第2振動データが示す振動波形とは異なってもよい。
上記によれば、第1の操作装置および第2の操作装置をそれぞれ異なる振動波形によって振動させることができる。
また、上記第1振動データが示す振動波形は、第2振動データが示す振動波形に対して、振幅の大きさ、周波数、振動期間、振動を断続的に付与する時間間隔、および振動開始タイミングの少なくとも1つが異なってもよい。
上記によれば、多様な振動波形によって第1の操作装置および/または第2の操作装置を振動させることができる。
また、上記振動データ生成手段は、検出に対して所定時間経過した後に振動を開始するまたは振動の振幅の極大値が到来するように、第1振動データおよび/または第2振動データを生成してもよい。
上記によれば、操作が行われた操作装置を把持するユーザは、方向指示部または押下ボタンを操作する際の動きによって操作装置に生じる振動との区別が容易となり、当該操作と同じタイミングで振動が与えられる場合より振動を感じやすくなる。
また、上記情報処理装置は、音声出力手段を、さらに含んでもよい。音声出力手段は、方向入力部に対して有効となる操作が行われたことを契機として第1の効果音を生成して出力し、押下ボタンに対して有効となる操作が行われたことを契機として第2の効果音を生成して出力する。上記振動データ生成手段は、第1の効果音の出力が開始された所定時間経過した後に振動を開始するまたは振動の振幅の極大値が到来するように第1振動データを生成する、および/または第2の効果音の出力が開始された所定時間経過した後に振動を開始するまたは振動の振幅の極大値が到来するように第2振動データを生成してもよい。
上記によれば、操作に応じて出力される効果音に対して所定時間遅延した振動を第1の操作装置および第2の操作装置に与えることができる。
また、上記第1操作装置と第2操作装置とは、物理的に離間していてもよい。
上記によれば、物理的に離間した複数の操作装置に対して、それぞれ振動を与えることができる。
また、上記情報処理装置は、情報処理手段を、さらに含んでもよい。情報処理手段は、第1操作データに応じて複数の項目のうちいずれかを選択し、第2操作データに応じて当該選択された項目を決定する情報処理を行う。
上記によれば、情報処理を行うための操作を契機として、当該操作が行われた操作装置を振動させることができる。
また、上記振動データ生成手段は、選択される項目が変更される毎に第1振動データを生成し、選択された項目が決定されたことに応じて第2振動データを生成してもよい。
上記によれば、複数の選択肢から選択して、当該選択肢を決定するような情報処理を行う際、選択肢を変更する操作と選択した選択肢を決定する操作とに応じて、操作装置を振動させることができる。
また、上記情報処理手段は、ゲーム処理手段および選択肢提示手段を含んでもよい。ゲーム処理手段は、所定のゲーム処理を行う。選択肢提示手段は、ゲーム処理されるゲームを開始する前に複数の選択肢を表示装置に表示する。振動データ生成手段は、選択される選択肢が変更される毎に第1振動データを生成し、選択された選択肢が決定されたことに応じて第2振動データを生成する。
上記によれば、ゲーム開始前に選択肢を選択して決定する操作に応じて、操作装置を振動させることができる。
また、上記情報処理装置は、情報処理手段を、さらに含んでもよい。情報処理手段は、第1操作データに応じて第1の情報処理を行い、第2操作データに応じて第2の情報処理を行う。この場合、上記振動データ生成手段は、第1の情報処理の内容に応じて第1振動データを生成し、第2の情報処理の内容に応じて第2振動データを生成してもよい。
上記によれば、情報処理内容に応じて、第1の操作装置および第2の操作装置をそれぞれ振動させることができる。
また、本発明の情報処理システムの他の構成例は、振動子を有する操作装置と当該操作装置と通信可能な情報処理装置とを含む。操作装置は、方向入力部および第1送信手段を含む。方向入力部は、当該操作装置のハウジングに設けられる。第1送信手段は、方向入力部に対する操作に応じて操作データを情報処理装置に送信する。情報処理装置は、操作データ取得手段、情報処理手段、振動データ生成手段、および第2送信手段を含む。操作データ取得手段は、操作データを取得する。情報処理手段は、操作データに応じて所定の情報処理を行う。振動データ生成手段と、所定の情報処理の内容に応じて方向入力部に対する操作から振動を遅延させるか否かを決定して当該決定に基づいた振動データを生成する。第2送信手段は、振動データを操作装置に送信する。操作装置は、振動制御手段を、さらに含む。振動制御手段は、振動データに応じて振動子を振動させる。
上記によれば、操作装置を用いて操作する場合に、操作に応じた情報処理の内容に応じて操作タイミングから振動を遅延させるか否かが決定されるため、操作に応じて適切に操作装置を振動させることが可能となる。
また、本発明は、情報処理装置、情報処理プログラム、および情報処理方法の形態で実施されてもよい。
本発明によれば、操作装置を用いて操作する場合に、操作に応じて適切に操作装置を振動させることが可能となる。
本実施形態における情報処理システム1の一例において、本体装置2に左コントローラ3および右コントローラ4を装着した状態を示す図 本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図 本体装置2の一例を示す六面図 左コントローラ3の一例を示す六面図 右コントローラ4の一例を示す六面図 本実施形態における情報処理システムの他の例の全体構成を示す図 クレードル5の一例の外観構成を示す図 本体装置2の内部構成の一例を示すブロック図 情報処理システム1の内部構成の一例を示すブロック図 クレードル5の内部構成の一例を示すブロック図 離脱状態において、1人のユーザが左コントローラ3および右コントローラ4の組を把持して情報処理システム1を利用する様子の一例を示す図 離脱状態において、1人のユーザが左コントローラ3および右コントローラ4の組を把持して情報処理システム1を利用する様子の一例を示す図 離脱状態において、1人のユーザが左コントローラ3および右コントローラ4の組を把持して情報処理システム1を利用する様子の一例を示す図 選択されている選択肢を変更する操作に応じたコントローラの振動例を示す図 選択肢を決定する操作に応じたコントローラの振動例を示す図 本体装置2のDRAM85に設定されるデータ領域の一例を示す図 情報処理システム1で実行される情報処理の一例を示すフローチャート
以下、本実施形態の一例に係る情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法について説明する。本実施形態におけるゲームシステムの一例となる情報処理システム1は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とによって構成される。また、上記情報処理システムの他の態様は、上記構成にクレードル5(図6、図7等参照)を加えて構成されることもある。本実施形態における情報処理システム1は、本体装置2に対して左コントローラ3および右コントローラ4が着脱可能であり、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用でき、また、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる(図2参照)。また、情報処理システム1は、本体装置2に画像を表示する態様での利用と、テレビ等の他の表示装置に画像を表示させる態様での利用が可能である。前者の態様において、情報処理システム1は、携帯型装置(例えば、携帯ゲーム機)として利用することができる。また、後者の態様において、情報処理システム1は、据置型装置(例えば、据置型ゲーム機)として利用することができる。
図1は、本実施形態における情報処理システム1の一例において、本体装置2に左コントローラ3および右コントローラ4を装着した状態を示す図である。図1に示すように、情報処理システム1は、本体装置2と、左コントローラ3と、右コントローラ4とを含む。左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、情報処理システム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。なお、本実施形態においては、情報処理システム1は、横長の形状であるものとする。つまり、本実施形態においては、情報処理システム1の主面の長手方向を横方向(左右方向とも言う)と呼び、当該主面の短手方向を縦方向(上下方向とも言う)と呼び、主面に垂直な方向を奥行方向(前後方向とも言う)と呼ぶこととする。また、情報処理システム1における方向をわかりやすくするために、情報処理システム1に対する3軸(xyz軸)方向を定義する。具体的には、図1に示すように、情報処理システム1においてディスプレイ12が設けられている前面から背面に向かうディスプレイ12の奥行方向をz軸正方向とし、当該奥行方向に対して垂直な横方向において右から左に向かう方向(右コントローラ4の装着位置から左コントローラ3の装着位置に向かう方向)をx軸正方向とし、当該奥行方向および当該横方向に対して垂直な上下方向において下から上に向かうディスプレイ12に沿った方向をy軸正方向とする。
図2は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。図1および図2に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。なお、本実施形態において、1人のユーザが操作する「操作装置」は、1つのコントローラ(例えば、左コントローラ3および右コントローラ4の一方)でも複数のコントローラ(例えば、左コントローラ3および右コントローラ4の両方、またはさらに他のコントローラを含んでもよい)でもよく、当該「操作装置」は、1以上のコントローラによって構成可能となる。以下、本体装置2と左コントローラ3および右コントローラ4との具体的な構成の一例について説明する。
図3は、本体装置2の一例を示す六面図である。図3に示すように、本体装置2は、略板状のハウジング11を備える。本実施形態において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。本実施形態においては、ハウジング11は、横長の形状であるものとする。本体装置2は、本体装置2が横長となる向きで利用されることが可能である。また、本体装置2が縦長となる向きで利用されることも可能である。その場合には、ハウジング11を縦長の形状であるものと見なしてもよい。
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
図3に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が取得または生成した画像(静止画であってもよいし、動画であってもよい)を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、図8に示すスピーカ88)を備えている。図3に示すように、ハウジング11の主面には、スピーカ孔11aおよび11bが形成される。そして、スピーカ88の出力音は、これらのスピーカ孔11aおよび11bからそれぞれ出力される。
また、本体装置2は、本体装置2が左コントローラ3と有線通信を行うための左側端子17と、本体装置2が右コントローラ4と有線通信を行うための右側端子21とを備える。
図3に示すように、本体装置2は、スロット23を備える。スロット23は、ハウジング11の上側面に設けられる。スロット23は、所定の種類の記憶媒体を装着可能な形状を有する。所定の種類の記憶媒体は、例えば、情報処理システム1およびそれと同種の情報処理装置に専用の記憶媒体(例えば、専用メモリカード)である。所定の種類の記憶媒体は、例えば、本体装置2で利用されるデータ(例えば、アプリケーションのセーブデータ等)、および/または、本体装置2で実行されるプログラム(例えば、アプリケーションのプログラム等)を記憶するために用いられる。また、本体装置2は、電源ボタン28と00470048音量ボタン26aおよび26bとを備える。
本体装置2は、下側端子27を備える。下側端子27は、本体装置2が、後述するクレードル5と通信を行うための端子である。本実施形態において、下側端子27は、USBコネクタ(より具体的には、メス側コネクタ)である。
図4は、左コントローラ3の一例を示す六面図であり、図示されているxyz方向は、左コントローラ3の正面図における3軸方向を示している。図4に示すように、左コントローラ3は、ハウジング31を備える。また、本実施形態においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、図1に示すy軸方向)に長い形状である。左コントローラ3は、本体装置2から外された状態において、縦長となる向きで把持されることも可能である。ハウジング31は、縦長となる向きで把持される場合に片手、特に左手で把持可能な形状および大きさをしている。また、左コントローラ3は、横長となる向きで把持されることも可能である。左コントローラ3が横長となる向きで把持される場合には、両手で把持されるようにしてもよい。
左コントローラ3は、アナログスティック32を備える。図4に示すように、アナログスティック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を備える。
図5は、右コントローラ4の一例を示す六面図であり、図示されているxyz方向は、右コントローラ4の正面図における3軸方向を示している。図5に示すように、右コントローラ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を備える。また、左コントローラ3と同様、第2Lボタン65および第2Rボタン66を備える。
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
図6は、本実施形態における情報処理システムの他の例の全体構成を示す図である。図6に示すように、一例として、クレードル5は、左コントローラ3および右コントローラ4を本体装置2から取り外した状態で本体装置2のみを載置することが可能である。また、さらに他の例として、クレードル5は、左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置を載置することも可能である。また、クレードル5は、ディスプレイ12とは別体の外部表示装置の一例である据置型モニタ6(例えば、据置型テレビ)と通信可能である(有線通信であってもよいし、無線通信であってもよい)。詳細は後述するが、上記一体型装置または本体装置2単体をクレードル5に載置した場合、情報処理システムは、本体装置2が取得または生成した画像を据置型モニタ6に表示することができる。また、本実施形態においては、クレードル5は、載置された上記一体型装置または本体装置2単体を充電する機能を有する。また、クレードル5は、ハブ装置(具体的には、USBハブ)の機能を有する。
図7は、クレードル5の一例の外観構成を示す図である。クレードル5は、上記一体型装置または本体装置2のみを着脱可能に載置する(装着するとも言える)ことが可能なハウジングを有する。本実施形態においては、図7に示すように、ハウジングは、溝71aが形成される第1支持部71と、略平面状の第2支持部72とを有する。
図7に示すように、第1支持部71に形成される溝71aは、上記一体型装置の下側部分の形状に応じた形状を有する。具体的には、溝71aは、上記一体型装置の下側部分を挿入可能な形状であり、より具体的には、上記本体装置2の下側部分と略一致する形状である。したがって、上記一体型装置の下側部分を溝71aに挿入することによって、上記一体型装置をクレードル5に載置することができる。また、第2支持部72は、その下側部分が溝71aに挿入された上記一体型装置の表面(すなわち、ディスプレイ12が設けられる面)を支持する。この第2支持部72によって、クレードル5は、上記一体型装置をより安定的に支持することができる。なお、図7に示すハウジングの形状は一例であり、他の実施形態においては、クレードル5のハウジングは、上記本体装置2を載置することが可能な任意の形状であってよい。
図7に示すように、クレードル5は、クレードル5が上記一体型装置と通信を行うための本体端子73を備える。図7に示すように、本体端子73は、第1支持部71に形成される溝71aの底面に設けられる。より具体的には、本体端子73は、上記一体型装置がクレードル5に装着される場合に、本体装置2の下側端子27が接触する位置に設けられる。本実施形態においては、本体端子73は、USBコネクタ(より具体的には、オス側コネクタ)である。
図7では図示しないが、クレードル5は、ハウジングの背面に端子(本実施形態においては、複数の端子を有する。具体的には、クレードル5は、図10に示すモニタ用端子132、電源端子134、および拡張用端子137)を有する。これらの端子の詳細については後述する。
図8は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、図3に示す構成の他、図8に示す各構成要素81〜98を備える。これらの構成要素81〜98のいくつかは、電子部品として電子回路基板上に実装されてハウジング11内に収納されてもよい。
本体装置2は、CPU(Central Processing Unit)81を備える。CPU81は、本体装置2において実行される各種の情報処理を実行する情報処理部である。CPU81は、記憶部(具体的には、フラッシュメモリ84等の内部記憶媒体、あるいは、各スロット23および24に装着される外部記憶媒体等)に記憶される情報処理プログラム(例えば、ゲームプログラム)を実行することによって、各種の情報処理を実行する。
本体装置2は、自身に内蔵される内部記憶媒体の一例として、フラッシュメモリ84およびDRAM(Dynamic Random Access Memory)85を備える。フラッシュメモリ84およびDRAM85は、CPU81に接続される。フラッシュメモリ84は、主に、本体装置2に保存される各種のデータ(プログラムであってもよい)を記憶するために用いられるメモリである。DRAM85は、情報処理において用いられる各種のデータを一時的に記憶するために用いられるメモリである。
本体装置2は、スロットインターフェース(以下、「I/F」と略記する。)91を備える。スロットI/F91は、CPU81に接続される。スロットI/F91は、スロット23に接続され、スロット23に装着された所定の種類の記憶媒体(例えば、専用メモリカード)に対するデータの読み出しおよび書き込みを、CPU81の指示に応じて行う。
CPU81は、フラッシュメモリ84およびDRAM85、ならびに上記各記憶媒体との間でデータを適宜読み出したり書き込んだりして、上記の情報処理を実行する。
本体装置2は、ネットワーク通信部82を備える。ネットワーク通信部82は、CPU81に接続される。ネットワーク通信部82は、ネットワークを介して外部の装置と通信(具体的には、無線通信)を行う。本実施形態においては、ネットワーク通信部82は、第1の通信態様としてWi−Fiの規格に準拠した方式により、無線LANに接続して外部装置と通信を行う。また、ネットワーク通信部82は、第2の通信態様として所定の通信方式(例えば、独自プロトコルによる通信や、赤外線通信)により、同種の他の本体装置2との間で無線通信を行う。なお、上記第2の通信態様による無線通信は、閉ざされたローカルネットワークエリア内に配置された他の本体装置2との間で無線通信可能であり、複数の本体装置2の間で直接通信することによってデータが送受信される、いわゆる「ローカル通信」を可能とする機能を実現する。
本体装置2は、コントローラ通信部83を備える。コントローラ通信部83は、CPU81に接続される。コントローラ通信部83は、左コントローラ3および/または右コントローラ4と無線通信を行う。本体装置2と左コントローラ3および右コントローラ4との通信方式は任意であるが、本実施形態においては、コントローラ通信部83は、左コントローラ3との間および右コントローラ4との間で、Bluetooth(登録商標)の規格に従った通信を行う。
CPU81は、上述の左側端子17、右側端子21、および、下側端子27に接続される。CPU81は、左コントローラ3と有線通信を行う場合、左側端子17を介して左コントローラ3へデータを送信するとともに、左側端子17を介して左コントローラ3から操作データを受信する。また、CPU81は、右コントローラ4と有線通信を行う場合、右側端子21を介して右コントローラ4へデータを送信するとともに、右側端子21を介して右コントローラ4から操作データを受信する。また、CPU81は、クレードル5と通信を行う場合、下側端子27を介してクレードル5へデータを送信する。このように、本実施形態においては、本体装置2は、左コントローラ3および右コントローラ4との間で、それぞれ有線通信と無線通信との両方を行うことができる。また、左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置または本体装置2単体がクレードル5に装着された場合、本体装置2は、クレードル5を介してデータ(例えば、画像データや音声データ)を据置型モニタ6に出力することができる。
ここで、本体装置2は、複数の左コントローラ3と同時に(換言すれば、並行して)通信を行うことができる。また、本体装置2は、複数の右コントローラ4と同時に(換言すれば、並行して)通信を行うことができる。したがって、ユーザは、複数の左コントローラ3および複数の右コントローラ4を用いて本体装置2に対する入力を行うことができる。
本体装置2は、タッチパネル13の制御を行う回路であるタッチパネルコントローラ86を備える。タッチパネルコントローラ86は、タッチパネル13とCPU81との間に接続される。タッチパネルコントローラ86は、タッチパネル13からの信号に基づいて、例えばタッチ入力が行われた位置を示すデータを生成して、CPU81へ出力する。
また、ディスプレイ12は、CPU81に接続される。CPU81は、(例えば、上記の情報処理の実行によって)生成した画像および/または外部から取得した画像をディスプレイ12に表示する。
本体装置2は、コーデック回路87およびスピーカ(具体的には、左スピーカおよび右スピーカ)88を備える。コーデック回路87は、スピーカ88および音声入出力端子25に接続されるとともに、CPU81に接続される。コーデック回路87は、スピーカ88および音声入出力端子25に対する音声データの入出力を制御する回路である。すなわち、コーデック回路87は、CPU81から音声データを受け取った場合、当該音声データに対してD/A変換を行って得られる音声信号をスピーカ88または音声入出力端子25へ出力する。これによって、スピーカ88あるいは音声入出力端子25に接続された音声出力部(例えば、イヤホン)から音が出力される。また、コーデック回路87は、音声入出力端子25から音声信号を受け取った場合、音声信号に対してA/D変換を行い、所定の形式の音声データをCPU81へ出力する。また、音量ボタン26は、CPU81に接続される。CPU81は、音量ボタン26に対する入力に基づいて、スピーカ88または上記音声出力部から出力される音量を制御する。
本体装置2は、電力制御部97およびバッテリ98を備える。電力制御部97は、バッテリ98およびCPU81に接続される。また、図示しないが、電力制御部97は、本体装置2の各部(具体的には、バッテリ98の電力の給電を受ける各部、左側端子17、および右側端子21)に接続される。電力制御部97は、CPU81からの指令に基づいて、バッテリ98から上記各部への電力供給を制御する。
また、バッテリ98は、下側端子27に接続される。外部の充電装置(例えば、クレードル5)が下側端子27に接続され、下側端子27を介して本体装置2に電力が供給される場合、供給された電力がバッテリ98に充電される。
図9は、情報処理システム1の内部構成の一例を示すブロック図である。なお、情報処理システム1のうちの本体装置2に関する内部構成の詳細については、図8で示しているため図9では省略している。
左コントローラ3は、本体装置2との間で通信を行う通信制御部101を備える。図9に示すように、通信制御部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)を備える。また、左コントローラ3は、アナログスティック(図9では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
左コントローラ3は、加速度センサ104を備える。本実施形態においては、加速度センサ104は、所定の3軸(例えば、図4に示すxyz軸)方向に沿った直線加速度の大きさを検出する。なお、加速度センサ104は、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。また、左コントローラ3は、角速度センサ105を備える。本実施形態においては、角速度センサ105は、所定の3軸(例えば、図4に示す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に送信される振動制御信号は、単位時間ごとに周波数と振幅とを表すデジタル信号であってよい。別の実施形態においては、波形そのものを示す情報を送信するようにしてもよいが、振幅と周波数とだけを送信することで通信データ量を削減することができる。また、さらにデータ量を削減するため、そのときの振幅と周波数との数値に替えて、前回の値からの差分だけを送信するようにしてもよい。この場合、コーデック部106は、通信制御部101から取得される振幅と周波数との値を示すデジタル信号をアナログの電圧の波形に変換し、当該波形に合わせて電圧を入力することで振動子107を駆動させる。したがって、本体装置2は、単位時間ごとに送信する振幅および周波数を変えることによって、そのときに振動子107を振動させる振幅と周波数とを制御することができる。なお、本体装置2から左コントローラ3に送信される振幅と周波数とは、1つに限らず、2つ以上送信するようにしてもよい。その場合、コーデック部106は、受信された複数の振幅および周波数それぞれが示す波形を合成することで、振動子107を制御する電圧の波形を生成することができる。
左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
図9に示すように、右コントローラ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は、振動子117およびコーデック部116を備える。振動子117およびコーデック部116は、左コントローラ3の振動子107およびコーデック部106と同様に動作する。すなわち、通信制御部111は、本体装置2からの指令に従って、コーデック部116を用いて振動子117を動作させる。
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
図10は、クレードル5の内部構成の一例を示すブロック図である。なお、図10において、本体装置2に関する内部構成の詳細については、図8で示しているので省略している。
図10に示すように、クレードル5は、変換部131およびモニタ用端子132を備える。変換部131は、本体端子73およびモニタ用端子132と接続される。変換部131は、本体装置2から受信した画像(映像とも言える)および音声に関する信号の形式を、据置型モニタ6へ出力する形式へと変換する。ここで、本実施形態においては、本体装置2は、ディスプレイポート信号(すなわち、DisplayPortの規格に従った信号)として画像および音声の信号をクレードル5へ出力する。また、本実施形態においては、クレードル5と据置型モニタ6との間の通信は、HDMI(登録商標)の規格に基づく通信が用いられる。すなわち、モニタ用端子132は、HDMI端子であり、クレードル5と据置型モニタ6とがHDMIケーブルによって接続される。そして、変換部131は、本体装置2から本体端子73を介して受信されるディスプレイポート信号(具体的には、映像および音声を表す信号)を、HDMI信号へ変換する。変換されたHDMI信号は、モニタ用端子132を介して据置型モニタ6へ出力される。
クレードル5は、電力制御部133および電源端子134を備える。電源端子134は、図示しない充電装置(例えば、ACアダプタ等)を接続するための端子である。本実施形態においては、電源端子134にACアダプタが接続されており、クレードル5には商用電源が供給されているものとする。電力制御部133は、クレードル5に対して本体装置2が装着された場合、本体端子73を介して電源端子134からの電力を本体装置2へ供給する。これによって、本体装置2のバッテリ98が充電される。
また、クレードル5は、接続処理部136および拡張用端子137を備える。拡張用端子137は、他の装置を接続するための端子である。本実施形態においては、クレードル5は、拡張用端子137として、複数(より具体的には3つ)のUSB端子を備える。接続処理部136は、本体端子73および各拡張用端子137に接続される。接続処理部136は、USBハブとしての機能を有し、例えば、拡張用端子137に接続された装置と、本体端子73に接続された本体装置2との間の通信を管理する(すなわち、ある装置からの信号を他の装置へ適宜分配して送信する)。上記のように、本実施形態においては、情報処理システム1は、クレードル5を介して他の装置との通信を行うことが可能である。なお、接続処理部136は、通信速度を変換したり、拡張用端子137に接続された装置に対する電力供給を行ったりすることが可能であってもよい。
以上に説明したように、本実施形態における情報処理システム1については左コントローラ3および右コントローラ4が本体装置2から着脱可能である。また、クレードル5に左コントローラ3および右コントローラ4が本体装置2に装着された一体型装置や本体装置2単体を装着することによって据置型モニタ6に画像(および音声)を出力可能である。以下、左コントローラ3および右コントローラ4を本体装置2から取り外した状態で、クレードル5に本体装置2単体を装着することによって据置型モニタ6に画像(および音声)を出力する利用態様における情報処理システムを用いて説明する。
上述のように、本実施形態においては、左コントローラ3および右コントローラ4を本体装置2から外した状態(「離脱状態」と呼ぶ)で情報処理システム1を利用することも可能である。離脱状態で情報処理システム1を利用してアプリケーション(例えば、ゲームアプリケーション)に対する操作を行う場合の態様としては、1人のユーザが左コントローラ3および右コントローラ4の両方を用いる態様が考えられる。なお、1人のユーザが左コントローラ3および右コントローラ4の両方を用いる場合、左コントローラ3と右コントローラ4とを接合して1つの操作装置として機能させる付属機器(例えば、拡張グリップ)を用いることも可能である。また、離脱状態で情報処理システム1を利用してアプリケーション(例えば、ゲームアプリケーション)に対する操作を行う場合の他の態様としては、1人のユーザが左コントローラ3および右コントローラ4の一方を用いる態様が考えられる。なお、当該利用態様によって複数のユーザが同じアプリケーションを用いて操作する場合は、複数のユーザが左コントローラ3および右コントローラ4の一方をそれぞれ用いる態様や、左コントローラ3および右コントローラ4の組を複数組用意してそれぞれのユーザが当該複数組のうちの1組を用いる態様等が考えられる。
図11〜図13は、離脱状態において、1人のユーザが左コントローラ3および右コントローラ4の組を把持して情報処理システム1を利用する様子の一例を示す図である。図11〜図13に示すように、離脱状態において、ユーザは、左コントローラ3を左手で把持し、右コントローラ4を右手で把持して操作を行いながら、据置型モニタ6に表示された画像を見ることができる。
例えば、本実施例では、ユーザは、縦長の略板状である左コントローラ3の長手方向の上方向(図1に示すy軸正方向)が前方向になるとともに、アナログスティック32等が設けられている左コントローラ3の主面が上方を向くように左コントローラ3を左手で把持する。つまり、ユーザの左手によって把持されている左コントローラ3は、y軸正方向がユーザの前方を向き、z軸正方向が下を向いた状態となる。また、ユーザは、縦長の略板状である右コントローラ4の長手方向の上方向(図1に示すy軸正方向)が前方向になるとともに、アナログスティック52等が設けられている右コントローラ4の主面が上方を向くように右コントローラ4を右手で把持する。つまり、ユーザの右手によって把持されている右コントローラ4も、y軸正方向がユーザの前方を向き、z軸正方向が下を向いた状態となる。
このように、左手で左コントローラ3を把持し右手で右コントローラ4を把持した状態で、左コントローラ3および右コントローラ4に設けられた各操作ボタンやスティックが用いられて操作される。図11に示すように、本情報処理例では、ゲーム開始前に複数の選択肢からユーザの選択を促すメニュー画面が据置型モニタ6に表示される。そして、左コントローラ3および右コントローラ4を操作するユーザは、左コントローラ3および/または右コントローラ4の操作ボタンやスティックを操作することによって、上記メニュー画面に表示されたメニューから選択する選択肢を変更する操作や、選択されている選択肢を決定する操作を行うことができる。
例えば、図11に例示しているメニュー画面では、複数の選択肢のうち、「ひとりでプレイ」が選択されていることを示すカーソルCが表示されている。このような状態において、左コントローラ3のアナログスティック32が傾倒操作された場合、当該傾倒操作された方向に応じて選択されている選択肢が変更される。例えば、図12に示すように左コントローラ3のアナログスティック32が下方向(図1に示すy軸負方向)へ傾倒操作された場合、選択対象が1つ下に表示されている選択肢に変更される。この選択肢を変更する操作によって、図12に例示しているメニュー画面では、「ひとりでプレイ」が選択されている状態から「ふたりでプレイ」が選択されている状態に変化しており、「ふたりでプレイ」が選択されていることを示す位置にカーソルCの位置が移動している。
また、右コントローラ4のAボタン53が押下操作された場合、選択されている選択肢が決定される。例えば、図13に示すように、「ふたりでプレイ」が選択されている状態で右コントローラ4のAボタン53が押下操作された場合、複数の選択肢から「ふたりでプレイ」が選択されたことが決定され、当該決定に応じた処理に移行する。この選択肢を決定する操作によって、図13に例示しているメニュー画面では、複数の選択肢から「ふたりでプレイ」が決定されたことを示す決定カーソルCdが、カーソルCとは表示態様を変化させて当該選択肢を囲む位置に表示されている。
また、右コントローラ4のBボタン54が押下操作された場合、処理がキャンセルされる。例えば、メニュー画面が表示されている状態で右コントローラ4のBボタン54が押下操作された場合、前の画面に戻る処理が行われ、当該メニュー画面が表示される前に表示されていた画像が再表示される。
本実施例では、左コントローラ3および右コントローラ4を把持して情報処理が行われる場合、当該処理内容に応じて、左コントローラ3および/または右コントローラ4に振動が与えられる。上述したように、左コントローラ3は、振動子107を有しており、右コントローラ4は、振動子117を有している。本体装置2のCPU81は、左コントローラ3および/または右コントローラ4に対する操作に応じた処理内容に応じて、振動データを左コントローラ3および/または右コントローラ4に送信することによって、当該振動データに応じた振幅および周波数で振動子107および/または振動子117を振動させることができる。
一例として、本実施例では、上記メニュー画面が表示された状態で選択されている選択肢を変更する操作が行われた場合、当該操作が行われたコントローラが当該操作に応じて振動する。例えば、左コントローラ3のアナログスティック32が傾倒操作されることによって選択されている選択肢が変更された場合、当該傾倒操作が有効となったことを契機として選択肢変更に応じた振動データが生成され、当該振動データが本体装置2から左コントローラ3へ送信される。これによって、左コントローラ3は、当該左コントローラ3を用いて選択肢を変更する操作が行われると、本体装置2から受信した振動データに応じて振動することになる。
また、本実施例では、上記メニュー画面が表示された状態で選択されている選択肢を決定する操作が行われた場合、当該操作が行われたコントローラが当該操作に応じて振動する。例えば、右コントローラ4のAボタン53が押下操作されることによって選択肢の選択が決定された場合、当該押下操作が有効となったことを契機として選択肢決定に応じた振動データが生成され、当該振動データが本体装置2から右コントローラ4へ送信される。これによって、右コントローラ4は、当該右コントローラ4を用いて選択肢を決定する操作が行われると、本体装置2から受信した振動データに応じて振動することになる。
なお、本実施例では、上記メニュー画面が表示された状態でキャンセルする操作が行われた場合、右コントローラ4を振動させなくてもよいし、当該操作に応じて右コントローラ4を振動させてもよい。
ここで、本実施例では、選択されている選択肢を変更する操作が行われたコントローラや選択肢を決定する操作が行われたコントローラには、当該操作が行われたタイミングから所定時間経過した後に振動を開始するまたは振動の振幅の極大値が到来するような振動が与えられてもよい。また、選択されている選択肢を変更する操作に応じたコントローラの振動と、選択肢を決定する操作に応じたコントローラの振動とは、異なる振動であってもよい。例えば、上記振動は、振幅の大きさ、周波数、振動期間、振動を断続的に付与する時間間隔、および振動開始タイミングの少なくとも1つが異なってもよい。以下、図14および図15を参照して、各操作に対応したコントローラの振動について説明する。なお、図14は、選択されている選択肢を変更する操作に応じたコントローラの振動例を示す図である。図15は、選択肢を決定する操作に応じたコントローラの振動例を示す図である。
図14において、選択されている選択肢を変更する操作がコントローラを用いて行われ、当該操作が有効となったことを示す操作データを本体装置2が受信した時点を0とした場合、当該時点から0.03秒の間において振幅の大きさが変化して周波数が一定の振動を与える振動データが本体装置2から当該コントローラへ送信される。ここで、操作が有効になった時点とは、選択されている選択肢を変更する操作が有効となった時点である。具体的には、アナログスティック32の傾倒操作によって選択されている選択肢を変更される場合、アナログスティック32の傾倒方向が選択肢を変更可能な方向であって変更すると判定する閾値に傾倒角度が到達したことによって、有効な操作が行われたと判定される。つまり、アナログスティック32の傾倒操作が行われた場合であっても、選択肢が変更できない方向(例えば、図11の例では、選択肢が表示されていない左や右)に傾倒されている場合や上記閾値に到達していない角度で傾倒されている場合は、有効な操作が行われたと判定されない。
選択されている選択肢を変更する操作が行われた場合の振動は、当該操作が行われた時点から第1の時間経過(例えば、0.0225秒経過)するまでは振幅の大きさが0であり、当該第1の時間経過後に振幅の大きさが0から0.17まで上昇する。そして、上記操作が行われた時点から第2の時間経過(上記第1の時間より長い時間であり、例えば0.03秒経過)するまで振幅の大きさが0.17に維持され、当該第2の時間経過後に振幅の大きさが0となる。一方、選択されている選択肢を変更する操作が行われた場合の振動の周波数は、上記第1の時間から上記第2の時間まで200Hz一定に維持される。つまり、コントローラを用いて選択されている選択肢を変更する操作が行われた場合、当該操作を契機として所定時間経過後に振幅および周波数一定の振動が当該コントローラに所定期間与えられる。
図15において、選択されている選択肢を決定する操作がコントローラを用いて行われ、当該操作が有効となったことを示す操作データを本体装置2が受信した時点を0とした場合、当該時点から0.06秒の間において振幅の大きさおよび周波数が変化する振動を与える振動データが本体装置2から当該コントローラへ送信される。ここで、操作が有効になった時点とは、選択されている選択肢を決定する操作が有効となった時点である。具体的には、Aボタン53の押下操作によって選択されている選択肢が決定される場合、Aボタン53がオフ状態からオン状態に変化するまで押下されることによって、有効な操作が行われたと判定される。つまり、Aボタン53が押下されている場合であっても、Aボタン53がオフ状態やオン状態を維持している場合やオン状態からオフ状態に変化している場合は、有効な操作が行われたと判定されない。
選択されている選択肢を決定する操作が行われた場合の振動の振幅は、当該操作が行われた時点から第3の時間経過(例えば、0.03秒経過)するまでは振幅の大きさが漸増的に0から0.25まで上昇する。そして、上記第3の時間経過から第4の時間経過(上記第3の時間より長い時間であり、例えば0.06秒経過)するまで振幅の大きさが漸減的に0.25から0まで下降する。一方、選択されている選択肢を決定する操作が行われた場合の振動の周波数は、当該操作が行われた時点から上記第3の時間経過するまでは160Hz一定に維持される。そして、上記第3の時間経過から第4の時間経過するまで周波数は、漸増的に160Hzから300Hzまで上昇する。つまり、コントローラを用いて選択されている選択肢を決定する操作が行われた場合、当該操作を契機として振幅および周波数が変化するとともに、当該操作から所定時間経過後に振幅の極大値が到来する振動が当該コントローラに所定期間与えられる。
このように、2つのコントローラを用いた操作に応じてコントローラを振動させる場合、当該操作が行われたコントローラが振動するため、操作に応じた適切な振動をコントローラに与えることが可能となる。また、コントローラには、操作が行われたタイミングから所定時間経過した後に振動を開始するまたは振動の振幅の極大値が到来するような振動が与えられる。操作が行われたコントローラがこのように振動することによって、操作部の動きによってコントローラに生じる振動との区別が容易となり、当該操作と同じタイミングで振動が与えられる場合よりユーザが振動を感じやすくなり、より適切な振動を当該コントローラに与えることが可能となる。また、操作に応じて行われる情報処理内容に応じて異なる振動がコントローラに与えられることによって、それぞれのコントローラを多様に振動させることが可能となる。
なお、上述した振動は、単なる一例であって他の振動がコントローラに与えられてもよい。例えば、図14に例示した選択されている選択肢を変更する際にコントローラに与えられる振動パターンで、選択されている選択肢を決定する操作が行われたコントローラが振動してもよい。また、図15に例示した選択されている選択肢を決定する際にコントローラに与えられる振動パターンで、選択されている選択肢を変更する操作が行われたコントローラが振動してもよい。
また、左コントローラ3または右コントローラ4を用いて同じ操作が行われた場合であっても、操作されたコントローラに異なる振動が与えられてもよい。例えば、右コントローラ4のAボタン53が押下操作された場合、当該押下操作によって実行される情報処理の内容に応じて、複数の振動パターンから右コントローラ4に与える振動が選択されることが考えられる。具体的には、上述したメニュー画面を用いた情報処理の場合、複数の選択肢から決定可能な選択肢を決定するAボタン53の押下操作が行われた場合には、当該押下操作を契機として図15に例示した振動が右コントローラ4に与えられる。一方、複数の選択肢から決定不可能な選択肢を決定するAボタン53の押下操作が行われた場合には、当該決定が不可であることを示す警告音を即時に出力するとともに、当該警告音に応じた振動が即時に右コントローラ4に与えられる。この場合、出力される警告音の音声波形に基づいて振動波形を生成し、当該振動波形によって右コントローラ4を振動させる振動データを右コントローラ4に送信してもよい。他の例として、複数の選択肢から決定不可能な選択肢を決定するAボタン53の押下操作が行われた場合には、押下操作に応じた振動が右コントローラ4に与えられずに右コントローラ4が振動しない態様でもよい。
また、左コントローラ3のアナログスティック32が傾倒操作された場合、当該傾倒操作によって実行される情報処理の内容に応じて、複数の振動パターンから左コントローラ3に与える振動が選択されることが考えられる。具体的には、上述したメニュー画面を用いた情報処理の場合、アナログスティック32を用いて他の選択肢に変更可能な方向を指示する傾倒操作が行われた場合には、当該傾倒操作を契機として図14に例示した振動が左コントローラ3に与えられる。一方、アナログスティック32を用いて変更可能な選択肢が表示されていない方向や選択できない選択肢が表示されている方向を指示する傾倒操作が行われた場合には、当該変更が不可であることを示す警告音を即時に出力するとともに、当該警告音に応じた振動が即時に左コントローラ3に与えられる。他の例として、アナログスティック32を用いて他の選択肢に変更可能な方向を指示する傾倒操作が行われた場合には、傾倒操作に応じた振動が左コントローラ3に与えられずに左コントローラ3が振動しない態様でもよい。
このように、上述した例では、左コントローラ3または右コントローラ4を用いて同じ操作が行われた場合であっても、当該操作に応じて実行される情報処理に基づいて当該操作に応じて振動させるか否か、振動させる場合の当該操作から振動を遅延させるか否か、および振動させる場合の振動パターン等を決定し、当該決定に基づいた振動データが生成される。これによって、上記振動データを受信した左コントローラ3または右コントローラ4は、当該振動データに応じて振動することによって、同じ操作が行われた場合であっても振動しない場合、当該操作から遅延して振動する場合、当該操作から即時に振動する場合、異なる振動パターンによって振動する場合等があり、それぞれのコントローラを情報処理内容に応じて適切に振動させることが可能となる。また、異なる振動パターンで左コントローラ3または右コントローラ4を振動させる場合、振幅の大きさや周波数だけでなく、振動期間、振動を断続的に付与する時間間隔、および振動開始タイミング等が異なってもよい。
次に、図16および図17を参照して、本実施形態において情報処理システム1で実行される具体的な処理の一例について説明する。図16は、本実施形態において本体装置2のDRAM85に設定されるデータ領域の一例を示す図である。なお、DRAM85には、図16に示すデータの他、他の処理で用いられるデータも記憶されるが、詳細な説明を省略する。
DRAM85のプログラム記憶領域には、情報処理システム1で実行される各種プログラムPaが記憶される。本実施形態においては、各種プログラムPaは、上述した左コントローラ3および右コントローラ4との間で無線通信するための通信プログラムや、左コントローラ3および/または右コントローラ4から取得したデータに基づいた情報処理(例えば、ゲーム処理)を行うためのアプリケーションプログラム、左コントローラ3および/または右コントローラ4を振動させるための振動制御プログラム等が記憶される。なお、各種プログラムPaは、フラッシュメモリ84に予め記憶されていてもよいし、情報処理システム1に着脱可能な記憶媒体(例えば、第1スロット23に装着された第1の種類の記憶媒体、第2スロット24に装着された第2の種類の記憶媒体)から取得されてDRAM85に記憶されてもよいし、インターネット等のネットワークを介して他の装置から取得されてDRAM85に記憶されてもよい。CPU81は、DRAM85に記憶された各種プログラムPaを実行する。
また、DRAM85のデータ記憶領域には、情報処理システム1において実行される通信処理や情報処理等の処理において用いられる各種のデータが記憶される。本実施形態においては、DRAM85には、操作データDa、カーソル位置データDb、操作対応振動テーブルデータDc、左コントローラ振動データDd、右コントローラ振動データDe、および画像データDf等が記憶される。
操作データDaは、左コントローラ3および/または右コントローラ4からそれぞれ適宜取得した操作データである。上述したように、左コントローラ3および/または右コントローラ4からそれぞれ送信される操作データには、各入力部(具体的には、各ボタン、アナログスティック、各センサ)からの入力に関する情報(具体的には、操作に関する情報、または、センサによる検出結果)が含まれている。本実施形態では、無線通信によって左コントローラ3および/または右コントローラ4からそれぞれ所定周期で操作データが送信されており、当該受信した操作データを用いて操作データDaが適宜更新される。なお、操作データDaの更新周期は、後述する情報処理システム1で実行される処理の周期である1フレーム毎に更新されてもよいし、上記無線通信によって操作データが送信される周期毎に更新されてもよい。
カーソル位置データDbは、カーソルCや決定カーソルCdの位置および方向を示すデータである。
操作対応振動テーブルデータDcは、操作および当該操作に対応して行われる情報処理に応じた振動波形(振動パターン)が記述された操作対応振動テーブルを示すデータである。
左コントローラ振動データDdは、左コントローラ3を振動させるための振動を示すデータである。右コントローラ振動データDeは、右コントローラ4を振動させるための振動を示すデータである。
画像データDfは、本体装置2のディスプレイ12や据置型モニタ6の表示画面にメニュー画面(例えば、選択肢画像、カーソル画像、背景画像等)を表示するためのデータである。
次に、図17を参照して、本実施形態における情報処理(メニュー選択処理)の詳細な一例を説明する。図17は、情報処理システム1で実行される情報処理の一例を示すフローチャートである。本実施形態においては、図17に示す一連の処理は、CPU81が各種プログラムPaに含まれる通信プログラムや所定のアプリケーションプログラム(情報処理プログラムやゲームプログラム)を実行することによって行われる。また、図17に示す情報処理が開始されるタイミングは任意である。
なお、図17に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて(または代えて)別の処理が実行されてもよい。また、本実施形態では、上記フローチャートの各ステップの処理をCPU81が実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を、CPU81以外のプロセッサや専用回路が実行するようにしてもよい。また、本体装置2において実行される処理の一部は、本体装置2と通信可能な他の情報処理装置(例えば、本体装置2とネットワークを介して通信可能なサーバ)によって実行されてもよい。すなわち、図17に示す各処理は、本体装置2を含む複数の情報処理装置が協働することによって実行されてもよい。
図17において、CPU81は、情報処理における初期設定を行い(ステップS141)、次のステップに処理を進める。例えば、上記初期設定では、CPU81は、以下に説明する処理を行うためのパラメータを初期化する。また、上記初期設定では、CPU81は、ユーザが用いる操作方式と左コントローラ3および右コントローラ4の組とを設定する。一例として、CPU81は、当該メニュー選択処理が開始される前に左コントローラ3と右コントローラ4とが同時に操作されたり、所定のペアリング処理が行われたりすることによって、ユーザが用いるコントローラが確定されている場合、当該左コントローラ3と右コントローラ4とを組として操作する操作方式を初期設定する。他の例として、CPU81は、当該メニュー選択処理が開始される前に本体装置2のディスプレイ12や据置型モニタ6の表示画面に操作方式の選択を促す選択肢を表示し、いずれかの選択肢を選択する操作が行われている場合、当該選択操作が行われた左コントローラ3と右コントローラ4とを組として選択された操作方式を初期設定する。
次に、CPU81は、メニュー画面を表示装置(例えば、据置型モニタ6)の表示画面に表示する処理を行い(ステップS142)、次のステップに処理を進める。例えば、CPU81は、ユーザに選択を促す複数の選択肢を示す画像を生成して、当該画像を表示画面に表示する。また、CPU81は、現時点で選択されている選択肢を示すカーソルCの画像をデフォルト位置に設定してカーソル位置データDbを更新し、当該位置にカーソルCを配置して表示画面に表示する。
次に、CPU81は、左コントローラ3および/または右コントローラ4から操作データを取得して操作データDaを更新し(ステップS143)、次のステップに処理を進める。
次に、CPU81は、左コントローラ3または右コントローラ4を用いた操作が行われたか否かを判定する(ステップS144)。例えば、CPU81は、上記ステップS143において取得した操作データDaを参照して、左コントローラ3または右コントローラ4を用いた操作が行われたか否かを判定する。
次に、CPU81は、ユーザによって選択されている選択肢を変更する有効な操作が行われたか否かを判定する(ステップS145)。例えば、CPU81は、上記ステップS143において取得した操作データDaを参照して、左コントローラ3のアナログスティック32を用いて選択肢を変更可能な有効な傾倒操作が行われた場合、上記ステップS145において肯定判定する。そして、CPU81は、選択されている選択肢を変更する有効な操作が行われた場合、ステップS146に処理を進める。一方、CPU81は、選択されている選択肢を変更する有効な操作が行われていない場合、ステップS148に処理を進める。
ステップS146において、CPU81は、操作に応じて選択されている選択肢を変更し、次のステップに処理を進める。例えば、CPU81は、カーソル位置データDbを参照してカーソルCの位置を取得し、当該カーソルCの位置からアナログスティック32が傾倒操作された方向に表示されている最もカーソルCの位置に近い選択肢を、変更後の選択肢とする。そして、CPU81は、変更後の選択肢を囲む位置にカーソルCの位置を変更し、変更後のカーソルCの位置を用いてカーソル位置データDbを更新する。
次に、CPU81は、振動データを生成する処理を行い(ステップS147)、ステップS152に処理を進める。例えば、CPU81は、操作対応振動テーブルデータDcを参照して、選択されている選択肢を変更する情報処理に対応する振動波形(振動パターン)を抽出し、当該振動波形に基づいて当該変更操作が行われたコントローラ(例えば、左コントローラ3)を振動させるための振動データを生成して、当該コントローラに対応する左コントローラ振動データDdまたは右コントローラ振動データDe(例えば、左コントローラ振動データDd)を更新する。一例として、左コントローラ3のアナログスティック32の操作によって選択肢が変更された場合、図14に例示したような振動波形(振動パターン)で振動させる振動データが左コントローラ振動データDdに設定される。
一方、上記ステップS145において選択されている選択肢を変更する有効な操作が行われていないと判定された場合、ステップS148において、CPU81は、ユーザによって選択されている選択肢を決定する有効な操作が行われたか否かを判定する。例えば、CPU81は、上記ステップS143において取得した操作データDaを参照して、右コントローラ4のAボタン53を用いて選択肢を決定する有効な押下操作が行われた場合、上記ステップS148において肯定判定する。そして、CPU81は、選択されている選択肢を決定する有効な操作が行われた場合、ステップS149に処理を進める。一方、CPU81は、選択されている選択肢を決定する有効な操作が行われていない場合、ステップS151に処理を進める。
ステップS149において、CPU81は、操作に応じて選択されている選択肢を決定し、次のステップに処理を進める。例えば、CPU81は、カーソル位置データDbを参照してカーソルCの位置を取得し、当該カーソルCによって囲まれている選択肢の選択を決定し、当該決定に基づいた情報処理を行う準備をする。また、CPU81は、カーソルCの位置に表示されているカーソルCの表示態様を決定カーソルCdに変更する。
次に、CPU81は、振動データを生成する処理を行い(ステップS150)、ステップS152に処理を進める。例えば、CPU81は、操作対応振動テーブルデータDcを参照して、選択されている選択肢を決定する情報処理に対応する振動波形(振動パターン)を抽出し、当該振動波形に基づいて当該変更操作が行われたコントローラ(例えば、右コントローラ4)を振動させるための振動データを生成して、当該コントローラに対応する左コントローラ振動データDdまたは右コントローラ振動データDe(例えば、右コントローラ振動データDe)を更新する。一例として、右コントローラ4のAボタン53の操作によって選択肢が決定された場合、図15に例示したような振動波形(振動パターン)で振動させる振動データが右コントローラ振動データDeに設定される。
一方、上記ステップS148において選択されている選択肢を決定する有効な操作が行われていないと判定された場合、ステップS151において、CPU81は、ユーザによる操作に応じた処理を行い、ステップS152に処理を進める。一例として、CPU81は、上記ステップS143において取得した操作データDaを参照して、ユーザによって決定不可能な選択肢を決定する操作が行われた場合には、当該決定が不可であることを示す警告音を即時に出力する処理を行う。また、CPU81は、操作対応振動テーブルデータDcを参照して、決定不可能な選択肢が決定された処理に対応する振動波形(例えば、上記警告音に応じた振動が即時に上記操作が行われたコントローラに与えられる振動波形)を抽出し、当該振動波形に基づいて当該無効な決定操作が行われたコントローラを振動させるための振動データを生成して、当該コントローラに対応する左コントローラ振動データDdまたは右コントローラ振動データDeを更新する。他の例として、CPU81は、上記ステップS143において取得した操作データDaを参照して、ユーザによってキャンセルする操作(例えば、右コントローラ4のBボタン54の押下操作)が行われた場合、当該キャンセルに応じた情報処理(例えば、前の画面に戻る処理)の準備を行う。この場合、キャンセル操作を行ったコントローラを振動させないため、左コントローラ振動データDdまたは右コントローラ振動データDeを更新する処理を行わなくてもよい。
ステップS152において、表示制御処理を行い、次のステップに処理を進める。例えば、CPU81は、カーソル位置データDbを用いて、表示されている複数の選択肢の何れかを囲むようにカーソルCまたは決定カーソルCdを配置する。そして、CPU81は、カーソルCまたは決定カーソルCdが配置されたメニュー画面を生成し、当該メニュー画面を表示装置(例えば、据置型モニタ6)の表示画面に表示する処理を行う。
次に、CPU81は、振動データを送信する周期毎に当該周期に対応する振動データを左コントローラ3および右コントローラ4へ送信する処理を行い(ステップS153)、次のステップに処理を進める。例えば、CPU81は、左コントローラ振動データDdを参照して、上記送信周期に対応する振動長さ分の振動データを左コントローラ3へ送信する。また、CPU81は、右コントローラ振動データDeを参照して、上記送信周期に対応する振動長さ分の振動データを右コントローラ4へ送信する。このように各コントローラ用の振動データが送信されることによって、当該振動データを受信した左コントローラ3および右コントローラ4は、それぞれの振動データに応じた振動波形で振動する。
次に、CPU81は、メニュー選択処理を終了するか否かを判定する(ステップS154)。上記ステップS154においてメニュー選択を終了する条件としては、例えば、いずれかの選択肢の選択が決定される操作が行われることによって当該決定された選択肢に応じた情報処理に移行することや、キャンセルする操作が行われることによってメニュー選択処理が行われる前に行われていた情報処理に戻ることや、ユーザがメニュー選択を終了する操作を行ったこと等がある。CPU81は、メニュー選択を終了しない場合に上記ステップS143に戻って処理を繰り返し、メニュー選択を終了する場合に当該フローチャートによる処理を終了する。以降、ステップS143〜ステップS154の一連の処理は、ステップS154でメニュー選択処理を終了すると判定されるまで繰り返し実行される。
このように、本実施例においては、左コントローラ3および右コントローラ4の両方を用いて操作する場合に、有効な操作が行われたコントローラが当該操作を契機として振動するため、操作に応じた適切な振動をコントローラに与えることが可能となる。また、コントローラには、操作が行われたタイミングから所定時間経過した後に振動を開始するまたは振動の振幅の極大値が到来するような振動を与えることができる。したがって、操作が行われたコントローラを把持するユーザは、操作部の動きによってコントローラに生じる振動との区別が容易となり、当該操作と同じタイミングで振動が与えられる場合より振動を感じやすくなる。また、操作に応じて行われる情報処理内容に応じて異なる振動がコントローラに与えられることによって、それぞれのコントローラを多様に振動させることが可能となる。
なお、上述した実施例では、操作が行われたタイミングを基準として、振動を開始するタイミングや振動の振幅の極大値が到来するタイミングが遅延する例を説明しているが、振動の遅延は他のタイミングを基準として考えることもできる。例えば、ユーザ操作に応じた操作音(効果音)が出力される場合、一般的に操作が行われたタイミングと操作音の出力が開始されるタイミングとはほぼ同じであると解釈することができる。また、ユーザ操作に応じて表示画面に表示された表示内容が変化する(例えば、表示オブジェクトが移動する、表示態様が変化する等)場合、一般的に操作が行われたタイミングと表示内容の変化が開始されるタイミングとはほぼ同じであると解釈することができる。このような解釈に基づいた場合、本実施例における振動は、操作に応じて出力される操作音(効果音)が出力開始されるタイミングまたは操作に応じて変化する表示画面の表示内容の変化が開始されるタイミングを基準(契機)として、振動を開始するタイミングや振動の振幅の極大値が到来するタイミングを遅延させていることになる。また、1つのコントローラを用いて操作している場合に、操作タイミング、操作音(効果音)、および/または表示内容の変化に対して振動を開始するタイミングや振動の振幅の極大値が到来するタイミングを遅延させてもよい。
また、上述した実施例では、左コントローラ3および右コントローラ4の両方を用いて操作する場合に、有効な操作が行われたコントローラが当該操作を契機として振動する例を説明しているが、当該操作に応じた他のタイミングを契機として振動してもよい。例えば、有効な操作が行われた左コントローラ3および右コントローラ4の一方を操作している状態から操作していない状態に移行した場合に、当該操作していない状態に移行したことを契機として、当該移行が行われたコントローラが振動してもよい。具体的には、アナログスティックに対して有効な操作が行われた場合、アナログスティックを操作している状態から操作していない状態に移行したことを契機として当該アナログスティックを備えるコントローラを振動させてもよい。また、操作ボタンに対して有効な操作が行われた場合、操作ボタンを押下操作している状態から押下操作していない状態に移行したことを契機として当該操作ボタンを備えるコントローラを振動させてもよい。
また、上述した実施例では、1人のユーザが左コントローラ3および右コントローラ4の両方を用いる例を用いたが、1人のユーザが左コントローラ3および右コントローラ4の一方を把持して操作する態様であってもよい。また、複数のユーザがそれぞれ左コントローラ3および右コントローラ4の両方または一方を用いて操作してもよい。この場合、それぞれのユーザが用いる左コントローラ3および/または右コントローラ4に対して、それぞれのユーザの操作に応じた振動をそれぞれのユーザが操作するコントローラに与えればよい。
また、複数のユーザが左コントローラ3および右コントローラ4の両方または一方を用いる場合、それぞれのユーザが操作するコントローラに対して、同じ振動を与えることも考えられる。例えば、複数のユーザがそれぞれ同じメニュー画面を見て1つの選択肢を選択して決定する場合に、いずれかのユーザの操作を契機としてそれぞれのユーザが把持する左コントローラ3および右コントローラ4の両方または一方に同じ振動が与えられることが考えられる。
また、上述した実施例では、左コントローラ3の振動データと右コントローラ4の振動データとを生成する処理を本体装置2において行っているが、他の装置において当該処理を行ってもよい。例えば、振動データを用いて振動することになるコントローラ側において、当該振動データを生成する処理を行ってもよい。
また、他の実施形態においては、本体装置2は、据置型モニタ6と直接通信可能であってもよい。例えば、本体装置2と据置型モニタ6とが直接有線通信または直接無線通信を行うことが可能であってもよい。この場合、本体装置2は、本体装置2と据置型モニタ6とが直接通信可能か否かに基づいて画像の表示先を決定してもよい。
また、情報処理システム1は、どのような装置であってもよく、携帯型のゲーム装置、任意の携帯型電子機器(PDA(Personal Digital Assistant)、携帯電話、パーソナルコンピュータ、カメラ、タブレット等)等であってもよい。
また、上述した説明では情報処理(メニュー選択処理)を情報処理システム1でそれぞれ行う例を用いたが、上記処理ステップの少なくとも一部を他の装置で行ってもかまわない。例えば、情報処理システム1がさらに他の装置(例えば、別のサーバ、他の画像表示装置、他のゲーム装置、他の携帯端末)と通信可能に構成されている場合、上記処理ステップは、さらに当該他の装置が協働することによって実行してもよい。このように、上記処理ステップの少なくとも一部を他の装置で行うことによって、上述した処理と同様の処理が可能となる。また、上述した情報処理は、少なくとも1つの情報処理装置により構成される情報処理システムに含まれる1つのプロセッサまたは複数のプロセッサ間の協働により実行されることが可能である。また、上記実施例においては、情報処理システム1のCPU81が所定のプログラムを実行することによって情報処理を行うことが可能であるが、情報処理システム1が備える専用回路によって上記処理の一部または全部が行われてもよい。
ここで、上述した変形例によれば、いわゆるクラウドコンピューティングのシステム形態や分散型の広域ネットワークおよびローカルネットワークのシステム形態でも本発明を実現することが可能となる。例えば、分散型のローカルネットワークのシステム形態では、据置型の情報処理装置(据置型のゲーム装置)と携帯型の情報処理装置(携帯型のゲーム装置)との間で上記処理を協働により実行することも可能となる。なお、これらのシステム形態では、上述した処理をどの装置で行うかについては特に限定されず、どのような処理分担をしたとしても本発明を実現できることは言うまでもない。
また、上述した情報処理で用いられる処理順序、設定値、判定に用いられる条件等は、単なる一例に過ぎず他の順序、値、条件であっても、本実施例を実現できることは言うまでもない。
また、上記プログラムは、外部メモリ等の外部記憶媒体を通じて情報処理システム1に供給されるだけでなく、有線または無線の通信回線を通じて当該装置に供給されてもよい。また、上記プログラムは、当該装置内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、CD−ROM、DVD、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、これらの記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。また、当業者は、本発明の具体的な実施例の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書(定義を含めて)が優先する。
以上のように、本発明は、操作装置を用いて操作可能なシステムにおいて、当該操作装置を用いた操作に応じて適切な振動を与えることが可能な情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法等として利用することができる。
1…情報処理システム
2…本体装置
3…左コントローラ
4…右コントローラ
5…クレードル
6…据置型モニタ
11…ハウジング
12…ディスプレイ
27…下側端子
42,64…端子
73…本体端子
81…CPU
82…ネットワーク通信部
83…コントローラ通信部
85…DRAM
107、117…振動子

Claims (16)

  1. 第1の振動子を有する第1の操作装置と第2の振動子を有する第2の操作装置と当該第1の操作装置および当該第2の操作装置のそれぞれと通信可能な情報処理装置とを含む情報処理システムであって、
    前記第1の操作装置は、
    当該第1の操作装置のハウジングに設けられた方向入力部と、
    前記方向入力部に対する操作に応じた第1操作データを前記情報処理装置に送信する第1送信手段とを含み、
    前記第2の操作装置は、
    前記第2の操作装置のハウジングに設けられた押下ボタンと、
    前記押下ボタンに対する操作に応じた第2操作データを前記情報処理装置に送信する第2送信手段とを含み、
    前記情報処理装置は、
    前記第1の操作装置と第2の操作装置とを1組として用いる操作方式を設定する設定手段と、
    前記第1操作データと前記第2操作データとを取得する操作データ取得手段と、
    前記第1操作データおよび前記第2操作データを用いて、所定の情報処理を行う情報処理手段と、
    前記情報処理に基づいた画像を生成して表示画面に表示する表示制御手段と、
    前記第1操作データを用いて第1振動データを生成し、前記第2操作データを用いて第2振動データを生成する振動データ生成手段と、
    前記第1振動データを前記第1の操作装置に送信するとともに、前記設定手段により当該第1の操作装置と同組に設定された前記第2の操作装置に前記第2振動データを送信する第3送信手段とを含み、
    前記第1の操作装置は、前記第1振動データに応じて前記第1の振動子を振動させる第1振動制御手段を、さらに含み、
    前記第2の操作装置は、前記第2振動データに応じて前記第2の振動子を振動させる第2振動制御手段を、さらに含み、
    前記振動データ生成手段は、前記第1操作データに基づいた前記情報処理によって振動を生成する場合に前記第1振動データを生成し、前記第2操作データに基づいた前記情報処理によって振動を生成する場合に前記第2振動データを生成する、情報処理システム。
  2. 前記振動データ生成手段は、前記第1操作データを用いて前記方向入力部に対して有効となる操作が行われたことを契機として前記第1振動データを生成し、前記第2操作データを用いて前記押下ボタンに対して有効となる操作が行われたことを契機として前記第2振動データを生成する、請求項1に記載の情報処理システム。
  3. 前記方向入力部は、ユーザによって操作されるスティックの傾倒方向および傾倒角度に応じた前記第1操作データを出力するアナログスティックである、請求項1または2に記載の情報処理システム。
  4. 前記第1振動データが示す振動波形は、前記第2振動データが示す振動波形とは異なる、請求項1乃至3の何れか1つに記載の情報処理システム。
  5. 前記第1振動データが示す振動波形は、前記第2振動データが示す振動波形に対して、振幅の大きさ、周波数、振動期間、振動を断続的に付与する時間間隔、および振動開始タイミングの少なくとも1つが異なる、請求項4に記載の情報処理システム。
  6. 前記振動データ生成手段は、前記操作の検出に対して所定時間経過した後に振動を開始するまたは振動の振幅の極大値が到来するように、前記第1振動データおよび/または前記第2振動データを生成する、請求項2に記載の情報処理システム。
  7. 前記情報処理装置は、前記方向入力部に対して有効となる操作が行われたことを契機として第1の効果音を生成して出力し、前記押下ボタンに対して有効となる操作が行われたことを契機として第2の効果音を生成して出力する音声出力手段を、さらに含み、
    前記振動データ生成手段は、前記第1の効果音の出力が開始された所定時間経過した後に振動を開始するまたは振動の振幅の極大値が到来するように前記第1振動データを生成する、および/または前記第2の効果音の出力が開始された所定時間経過した後に振動を開始するまたは振動の振幅の極大値が到来するように前記第2振動データを生成する、請求項1乃至6の何れか1つに記載の情報処理システム。
  8. 前記第1操作装置と前記第2操作装置とは、物理的に離間している、請求項1乃至7の何れか1つに記載の情報処理システム。
  9. 前記情報処理装置は、前記第1操作データに応じて複数の項目のうちいずれかを選択し、前記第2操作データに応じて当該選択された項目を決定する情報処理を行う情報処理手段を、さらに含む、請求項1乃至8の何れか1つに記載の情報処理システム。
  10. 前記振動データ生成手段は、前記選択される項目が変更される毎に前記第1振動データを生成し、前記選択された項目が決定されたことに応じて前記第2振動データを生成する、請求項9に記載の情報処理システム。
  11. 前記情報処理手段は、
    所定のゲーム処理を行うゲーム処理手段と、
    前記ゲーム処理されるゲームを開始する前に複数の選択肢を表示装置に表示する選択肢提示手段とを含み、
    前記振動データ生成手段は、前記選択される選択肢が変更される毎に前記第1振動データを生成し、前記選択された選択肢が決定されたことに応じて前記第2振動データを生成する、請求項9または10に記載の情報処理システム。
  12. 前記情報処理装置は、前記第1操作データに応じて第1の情報処理を行い、前記第2操作データに応じて第2の情報処理を行う情報処理手段を、さらに含み、
    前記振動データ生成手段は、前記第1の情報処理の内容に応じて前記第1振動データを生成し、前記第2の情報処理の内容に応じて前記第2振動データを生成する、請求項1乃至8の何れか1つに記載の情報処理システム。
  13. 第1の振動子および方向入力部を有する第1の操作装置と第2の振動子および押下ボタンを有する第2の操作装置と通信可能な情報処理装置であって、
    前記第1の操作装置と第2の操作装置とを1組として用いる操作方式を設定する設定手段と、
    前記方向入力部に対する操作に応じた第1操作データを前記第1の操作装置から取得し、前記押下ボタンに対する操作に応じた第2操作データを前記第2の操作装置から取得する操作データ取得手段と、
    前記第1操作データおよび前記第2操作データを用いて、所定の情報処理を行う情報処理手段と、
    前記情報処理に基づいた画像を生成して表示画面に表示する表示制御手段と、
    前記第1操作データを用いて第1振動データを生成し、前記第2操作データを用いて第2振動データを生成する振動データ生成手段と、
    前記第1振動データを前記第1の操作装置に送信することによって当該第1振動データに応じて前記第1の振動子を振動させるとともに、前記設定手段により当該第1の操作装置と同組に設定された前記第2の操作装置に前記第2振動データを送信することによって当該第2振動データに応じて前記第2の振動子を振動させる送信手段とを備え
    前記振動データ生成手段は、前記第1操作データに基づいた前記情報処理によって振動を生成する場合に前記第1振動データを生成し、前記第2操作データに基づいた前記情報処理によって振動を生成する場合に前記第2振動データを生成する、情報処理装置。
  14. 第1の振動子および方向入力部を有する第1の操作装置と第2の振動子および押下ボタンを有する第2の操作装置と通信可能な情報処理装置に含まれるコンピュータで実行される情報処理プログラムであって、
    前記コンピュータを、
    前記第1の操作装置と第2の操作装置とを1組として用いる操作方式を設定する設定手段と、
    前記方向入力部に対する操作に応じた第1操作データを前記第1の操作装置から取得し、前記押下ボタンに対する操作に応じた第2操作データを前記第2の操作装置から取得する操作データ取得手段と、
    前記第1操作データおよび前記第2操作データを用いて、所定の情報処理を行う情報処理手段と、
    前記情報処理に基づいた画像を生成して表示画面に表示する表示制御手段と、
    前記第1操作データを用いて第1振動データを生成し、前記第2操作データを用いて第2振動データを生成する振動データ生成手段と、
    前記第1振動データを前記第1の操作装置に送信することによって当該第1振動データに応じて前記第1の振動子を振動させるとともに、前記設定手段により当該第1の操作装置と同組に設定された前記第2の操作装置に前記第2振動データを送信することによって当該第2振動データに応じて前記第2の振動子を振動させる送信手段として機能させ
    前記振動データ生成手段は、前記第1操作データに基づいた前記情報処理によって振動を生成する場合に前記第1振動データを生成し、前記第2操作データに基づいた前記情報処理によって振動を生成する場合に前記第2振動データを生成する、情報処理プログラム。
  15. 第1の振動子および方向入力部を有する第1の操作装置と第2の振動子および押下ボタンを有する第2の操作装置を用いて情報処理を行う情報処理方法であって、
    前記第1の操作装置と第2の操作装置とを1組として用いる操作方式を設定する設定ステップと、
    前記方向入力部に対する操作に応じた第1操作データを前記第1の操作装置から取得し、前記押下ボタンに対する操作に応じた第2操作データを前記第2の操作装置から取得する操作データ取得ステップと、
    前記第1操作データおよび前記第2操作データを用いて、所定の情報処理を行う情報処理ステップと、
    前記情報処理に基づいた画像を生成して表示画面に表示する表示制御ステップと、
    前記第1操作データを用いて第1振動データを生成し、前記第2操作データを用いて第2振動データを生成する振動データ生成ステップと、
    前記第1振動データを前記第1の操作装置に送信することによって当該第1振動データに応じて前記第1の振動子を振動させるとともに、前記設定手段により当該第1の操作装置と同組に設定された前記第2の操作装置に前記第2振動データを送信することによって当該第2振動データに応じて前記第2の振動子を振動させる送信ステップとを含み、
    前記振動データ生成ステップでは、前記第1操作データに基づいた前記情報処理によって振動を生成する場合に前記第1振動データが生成され、前記第2操作データに基づいた前記情報処理によって振動を生成する場合に前記第2振動データが生成される、情報処理方法。
  16. 振動子を有する操作装置と当該操作装置と通信可能な情報処理装置とを含む情報処理システムであって、
    前記操作装置は、
    当該操作装置のハウジングに設けられた方向入力部と、
    前記方向入力部に対する操作に応じて操作データを前記情報処理装置に送信する第1送信手段とを含み、
    前記情報処理装置は、
    前記操作データを取得する操作データ取得手段と、
    前記操作データに応じて所定の情報処理を行う情報処理手段と、
    前記所定の情報処理の内容に応じて前記方向入力部に対する操作から振動を遅延させるか否かを決定して当該決定に基づいた振動データを生成する振動データ生成手段と、
    前記振動データを前記操作装置に送信する第2送信手段とを含み、
    前記操作装置は、前記振動データに応じて前記振動子を振動させる振動制御手段を、さらに含む、情報処理システム。
JP2017001841A 2017-01-10 2017-01-10 情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法 Active JP6854132B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017001841A JP6854132B2 (ja) 2017-01-10 2017-01-10 情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法
US15/638,554 US10118102B2 (en) 2017-01-10 2017-06-30 Information processing system, information processing apparatus, storage medium having stored therein information processing program, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017001841A JP6854132B2 (ja) 2017-01-10 2017-01-10 情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法

Publications (2)

Publication Number Publication Date
JP2018110650A JP2018110650A (ja) 2018-07-19
JP6854132B2 true JP6854132B2 (ja) 2021-04-07

Family

ID=62782570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017001841A Active JP6854132B2 (ja) 2017-01-10 2017-01-10 情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法

Country Status (2)

Country Link
US (1) US10118102B2 (ja)
JP (1) JP6854132B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11045723B1 (en) 2014-11-18 2021-06-29 Razer (Asia-Pacific) Pte. Ltd. Gaming controller for mobile device and method of operating a gaming controller
JP2020177440A (ja) * 2019-04-18 2020-10-29 株式会社東海理化電機製作所 制御装置及び報知装置
KR102276435B1 (ko) * 2020-11-26 2021-07-12 최휘민 게임기능을 갖는 악력기
USD953437S1 (en) * 2020-12-30 2022-05-31 Shenzhen Qixiong Technology Co., Ltd Game controller

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3655438B2 (ja) * 1997-07-17 2005-06-02 任天堂株式会社 ビデオゲームシステム
EP2392389A4 (en) 2010-02-03 2014-10-15 Nintendo Co Ltd GAME SYSTEM, OPERATING METHOD AND GAME PROCESSING METHOD
JP6103677B2 (ja) 2010-11-01 2017-03-29 任天堂株式会社 ゲームシステム、操作装置、およびゲーム処理方法
JP6761225B2 (ja) * 2014-12-26 2020-09-23 和俊 尾花 手持ち型情報処理装置
JP6635597B2 (ja) * 2015-06-12 2020-01-29 任天堂株式会社 情報処理システム、および、操作装置

Also Published As

Publication number Publication date
US20180193757A1 (en) 2018-07-12
US10118102B2 (en) 2018-11-06
JP2018110650A (ja) 2018-07-19

Similar Documents

Publication Publication Date Title
US10456665B2 (en) Information processing system, non-transitory storage medium having information processing program stored therein, information processing apparatus, and information processing method
JP6869401B2 (ja) 情報処理システム、情報処理装置、操作装置、および、付属機器
JP6854132B2 (ja) 情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法
US10603582B2 (en) Vibration control system, vibration control apparatus, storage medium and vibration control method
EP3343323B1 (en) Information processing program, information processing apparatus, information processing system, and information processing method
US9403094B2 (en) Information processing system, game system, information processing device, terminal device, information processing method, and storage medium having information processing program stored therein
JP6653293B2 (ja) 情報処理システム、情報処理プログラム、情報処理装置、および、情報処理方法
JP6776132B2 (ja) ゲームシステム、ゲームプログラム、ゲーム装置およびゲーム方法
JP2018206012A (ja) 情報処理システム、情報処理プログラム、情報処理装置、および、情報処理方法
US20120306739A1 (en) Information processing system, information processing apparatus, storage medium having information processing program stored thereon, and content playback control method
JP6650890B2 (ja) ゲームシステム、ゲームプログラム、情報処理装置およびゲーム制御方法
JP7233399B2 (ja) ゲームプログラム、ゲーム装置、ゲームシステム、およびゲーム処理方法
JP6670202B2 (ja) 音声処理プログラム、情報処理プログラム、音声処理方法、音声処理装置、及びゲームプログラム
US9720509B2 (en) Gesture detection system, gesture detection apparatus, and mobile communication terminal
JP6670768B2 (ja) ゲームシステム、ゲームプログラム、情報処理装置、および、情報処理方法
JP6837921B2 (ja) ゲームプログラム、情報処理装置、情報処理システム、および、情報処理方法
JP6829608B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP2019005468A (ja) 装置移動システム、装置、装置移動制御方法、装置移動制御プログラム、および厚紙部材
JP6893417B2 (ja) ゲームシステム、ゲームプログラム、情報処理装置、および、情報処理方法
JP6973967B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP6842368B2 (ja) 情報処理プログラム、情報処理システム、情報処理装置、および情報処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191101

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201009

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210315

R150 Certificate of patent or registration of utility model

Ref document number: 6854132

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250