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

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

Info

Publication number
JP7029888B2
JP7029888B2 JP2017101665A JP2017101665A JP7029888B2 JP 7029888 B2 JP7029888 B2 JP 7029888B2 JP 2017101665 A JP2017101665 A JP 2017101665A JP 2017101665 A JP2017101665 A JP 2017101665A JP 7029888 B2 JP7029888 B2 JP 7029888B2
Authority
JP
Japan
Prior art keywords
movement
virtual
switching
dimensional space
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.)
Active
Application number
JP2017101665A
Other languages
English (en)
Other versions
JP2018197911A (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 JP2017101665A priority Critical patent/JP7029888B2/ja
Priority to US15/942,739 priority patent/US10821362B2/en
Priority to EP18168511.6A priority patent/EP3406313B1/en
Publication of JP2018197911A publication Critical patent/JP2018197911A/ja
Priority to US17/034,226 priority patent/US11298619B2/en
Application granted granted Critical
Publication of JP7029888B2 publication Critical patent/JP7029888B2/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/55Controlling game characters or game objects based on the game progress
    • A63F13/56Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
    • 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
    • A63F13/422Processing 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 automatically for the purpose of assisting the player, e.g. automatic braking in a driving game
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/577Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • 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/55Controlling game characters or game objects based on the game progress
    • A63F13/58Controlling game characters or game objects based on the game progress by computing conditions of game characters, e.g. stamina, strength, motivation or energy level
    • 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/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • 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/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • A63F2300/646Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car for calculating the trajectory of an object

Landscapes

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

Description

本発明は、情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法に関する。
従来、プレイヤのキャラクタやノンプレイヤのキャラクタ等のオブジェクトが仮想空間内を移動するビデオゲームが知られている。このようなビデオゲームでは、プレイヤオブジェクトの移動制限領域が変更されることがあった。例えば、特許文献1は、第1の状態においては移動制限領域が地面に設定される一方、第2の状態においては壁に設定され、壁面に貼り付いたような状態で移動することができる。また、このような状態の切り替え前後におけるプレイヤオブジェクトの向きや進行方向の対応関係はあらかじめ定められる。
特開2014-235538号公報
上記した特許文献1では、第1の状態と第2の状態の切り替え前後における、プレイヤオブジェクトの速度の対応関係については記載されていない。
そこで、本発明は、上記したような従来の発明を改良し、移動の切り替え前後のオブジェクトの速度に関連性を持たせることで興趣性を高めた情報処理プログラムを提供することを目的とする。
本発明の情報処理プログラムは、仮想三次元空間におけるオブジェクトの移動を制御するための情報処理プログラムであって、情報処理装置を、前記オブジェクトの移動を制御する移動制御部と、前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部として機能させ、前記移動制御部は、前記仮想三次元空間における三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定する。
本発明の構成により、三次元空間での移動と所定面内での移動の切替え時に、切替え前のオブジェクトの速度に基づいて切替え後のオブジェクトの速度を決定することにより、オブジェクトの速度に関連性を持たせることができる。これにより、オブジェクトが三次元空間と所定面内をスムーズに行き来するように見せることができる。
本発明の情報処理プログラムにおいて、前記移動制御部は、前記オブジェクトの切替え前の速さを切替え後の速さとして決定してもよい。また、前記三次元移動から前記所定面内での移動に切り替えるときに、前記移動制御部は、切替え前の前記三次元移動の前記オブジェクトの速度成分から、前記所定面の前記オブジェクトの位置における法線方向の速度成分を除去した速度成分を、前記所定面内での移動の速さとして決定してもよい。前記所定面内での移動から前記三次元移動に切り替えるときに、前記移動制御部は、切替え前における前記所定面内での速度成分を、切替え後の前記三次元移動の前記所定面に対する速度成分として用いてもよい。これらの構成により、仮想三次元空間と所定面内の移動との切替え時に、適切に速度の関連性を持たせることができる。
本発明の情報処理プログラムにおいて、前記オブジェクトの表示態様を制御する表示態様制御部として前記情報処理装置を機能させ、前記表示態様制御部は、前記三次元移動する前記オブジェクトを立体的に表示し、前記所定面内で移動する前記オブジェクトを平面的または曲面的に表示してもよい。また、前記オブジェクトの表示態様を制御する表示態様制御部として前記情報処理装置を機能させ、前記表示態様制御部は、前記三次元移動する第1のオブジェクトと前記所定面内で移動する第2のオブジェクトを別のオブジェクトに切り替えて表示してもよい。この構成により、オブジェクトの動きに合わせて、オブジェクトを表示することができ、オブジェクトが仮想三次元空間にあるときと所定面内にあるときの2つの態様を楽しむことができる。
また、本発明の情報処理プログラムは、前記仮想三次元空間には、第1の判定領域が設けられており、前記切替判定部は、前記仮想三次元空間を移動する前記オブジェクトが前記第1の判定領域に進入したことに応じて、前記三次元移動から前記所定面内での移動への切替えを判定してもよい。ここで、前記第1の判定領域は、前記所定面の法線方向に広がる空間であってもよい。この構成により、第1の判定領域への進入を判定することにより、切替え判定を容易に行える。
本発明の情報処理プログラムにおいて、前記切替判定部は、前記仮想三次元空間を移動する前記オブジェクトが、前記仮想三次元空間内にある前記所定面に接したことに応じて、前記三次元移動から前記所定面内での移動への切替えを判定してもよい。このようにオブジェクトを所定面に接するまで移動させるという簡単なユーザーインターフェースにより、仮想三次元空間での移動から所定面内での移動への切替えを行える。
また、本発明の情報処理プログラムにおいて、前記切替判定部は、前記所定面内を移動する前記オブジェクトが、第2の判定領域と重なっているかどうかに応じて、前記所定面内での移動から前記三次元移動への切替えを判定してもよい。この構成により、所定面を抜け出して仮想三次元空間内での移動に切り替えることができる。また、前記第2の判定領域が他の部分と識別可能であって前記所定面内を移動するようにしてもよい。この構成により、所定面内から仮想三次元空間へ切り替えるためにはオブジェクトを第2の判定領域にうまく重ねなければならず、また逆に所定面内に留まるためには第2の判定領域に重ならないように逃げなくてはならないというように、切り替えの部分にもゲーム性を取り入れることができる。
本発明の情報処理プログラムにおいて、前記移動制御部は、前記所定面内での移動から前記三次元移動に切り替わる際に、(1)前記オブジェクトの初期位置を前記所定面の前記オブジェクトの位置における法線方向に所定量だけ移動した位置とすること、(2)前記オブジェクトに対して前記法線方向への速度を与えること、の少なくともいずれか一方を行ってもよい。また、前記移動制御部は、前記所定面内での移動から前記三次元移動に切り替わる際に、(1)前記オブジェクトの初期位置を前記仮想空間内において最も近接する地面のある方向へ所定量だけ移動した位置とすること、(2)前記オブジェクトに対して前記地面のある方向への速度を与えること、の少なくともいずれか一方を行ってもよい。これにより、所定面内の移動から仮想三次元空間内での移動に切り替わるときに、オブジェクトの位置を適切に調整することができる。
本発明の情報処理プログラムは、前記仮想三次元空間において前記所定面の法線方向に三次元移動する前記オブジェクトが前記所定面内での移動に切り替わるときには、前記移動制御部は、前記法線方向に垂直な方向を初期の移動方向としてもよい。この構成により、仮想三次元空間において所定面の法線方向に移動するオブジェクトが、所定面内での移動に切り替わるときにも、速度の関連性を持たせることができる。
本発明の情報処理装置は、仮想三次元空間におけるオブジェクトの移動を制御するための情報処理装置であって、前記オブジェクトの移動を制御する移動制御部と、前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部とを備え、前記移動制御部は、前記三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定する。
本発明の情報処理システムは、仮想三次元空間におけるオブジェクトの移動を制御するための情報処理システムであって、前記オブジェクトの移動を制御する移動制御部と、前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部とを備え、前記移動制御部は、前記三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定する。
本発明の情報処理方法は、仮想三次元空間におけるオブジェクトの移動を制御するための情報処理方法であって、前記仮想三次元空間における前記オブジェクトの三次元移動を制御するステップと、前記仮想三次元空間に設けられた所定面内における前記オブジェクトの移動を制御するステップと、前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行うステップと、を備え、前記三次元移動と前記所定面内での移動を切り替えるときに、前記オブジェクトの切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定する。
本発明によれば、三次元空間での移動と所定面内での移動の切替え時にオブジェクトの速度に関連性を持たせ、興趣性を高めることができる。
本体装置2に左コントローラ3および右コントローラ4を装着した状態を示す図 本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図 本体装置2の一例を示す六面図 左コントローラ3の一例を示す六面図 右コントローラ4の一例を示す六面図 本体装置2の内部構成の一例を示すブロック図 本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図 本実施の形態のゲーム装置の機能を示す図 (a)仮想三次元空間において、プレイヤのキャラクタが移動する様子を示す図(b)所定面内において、プレイヤのキャラクタが移動する様子を示す図 (a)所定面(平面)の法線方向に幅を有する不可視の空間を設けて、仮想三次元空間から所定面への切替えを行う例を示す図(b)所定面(曲面)の法線方向に幅を有する不可視の空間を設けて、仮想三次元空間から所定面への切替えを行う例を示す図 (a)ユーザによって入力されたキャラクタの移動方向及び速度を示す図(b)入力指示によって与えられた仮想の速度ベクトルを分解した図(c)所定面内におけるキャラクタの移動方向及び速度を示す図 (a)ユーザによって入力されたキャラクタの移動方向及び速度を示す図(b)入力指示によって与えられた仮想の速度ベクトルを分解した図(c)所定面内におけるキャラクタの移動方向及び速度を示す図 (a)キャラクタが仮想三次元空間を移動している様子を示す図(b)キャラクタが所定面内の移動を開始するときの速度を示す図(c)キャラクタが所定面内の移動を開始するときの速度の他の例を示す図 (a)所定面211にいるキャラクタに対して入力された移動の指示を示す図(b)所定面211から仮想三次元空間に移動する際の速度を示す図 (a)所定面内において、キャラクタが右方向に移動する様子を示す図(b)キャラクタが所定面内から仮想三次元空間に抜け出したときの様子を示す図 (a)所定面内において、キャラクタが上にジャンプする様子を示す図(b)キャラクタが所定面内から仮想三次元空間に抜け出したときの様子を示す図 本実施の形態のゲーム装置本体の動作を示すフローチャート 本実施の形態のゲーム装置本体の動作を示すフローチャート 仮想三次元空間にいるキャラクタが所定面に対して垂直に銃弾を発した例を示す図 (a)仮想三次元空間と所定面との間を往復するキャラクタを示す図(b)仮想三次元空間と所定面との間を往復するキャラクタを示す図
以下、本実施形態の情報処理システムについて、ゲームシステムを一例として説明する。本実施形態におけるゲームシステム1の一例は、本体装置(情報処理装置;本実施形態ではゲーム装置本体として機能する)2と左コントローラ3および右コントローラ4とを含む。本体装置2は、左コントローラ3および右コントローラ4がそれぞれ着脱可能である。つまり、ゲームシステム1は、左コントローラ3および右コントローラ4をそれぞれ本体装置2に装着して一体化された装置として利用できる。また、ゲームシステム1は、本体装置2と左コントローラ3および右コントローラ4とを別体として利用することもできる(図2参照)。以下では、本実施形態のゲームシステム1のハードウェア構成について説明し、その後に本実施形態のゲームシステム1の制御について説明する。
図1は、本体装置2に左コントローラ3および右コントローラ4を装着した状態の一例を示す図である。図1に示すように、左コントローラ3および右コントローラ4は、それぞれ本体装置2に装着されて一体化されている。本体装置2は、ゲームシステム1における各種の処理(例えば、ゲーム処理)を実行する装置である。本体装置2は、ディスプレイ12を備える。左コントローラ3および右コントローラ4は、ユーザが入力を行うための操作部を備える装置である。
図2は、本体装置2から左コントローラ3および右コントローラ4をそれぞれ外した状態の一例を示す図である。図1および図2に示すように、左コントローラ3および右コントローラ4は、本体装置2に着脱可能である。なお、以下において、左コントローラ3および右コントローラ4の総称として「コントローラ」と記載することがある。
図3は、本体装置2の一例を示す六面図である。図3に示すように、本体装置2は、略板状のハウジング11を備える。本実施形態において、ハウジング11の主面(換言すれば、表側の面、すなわち、ディスプレイ12が設けられる面)は、大略的には矩形形状である。
なお、ハウジング11の形状および大きさは、任意である。一例として、ハウジング11は、携帯可能な大きさであってよい。また、本体装置2単体または本体装置2に左コントローラ3および右コントローラ4が装着された一体型装置は、携帯型装置となってもよい。また、本体装置2または一体型装置が手持ち型の装置となってもよい。また、本体装置2または一体型装置が可搬型装置となってもよい。
図3に示すように、本体装置2は、ハウジング11の主面に設けられるディスプレイ12を備える。ディスプレイ12は、本体装置2が生成した画像を表示する。本実施形態においては、ディスプレイ12は、液晶表示装置(LCD)とする。ただし、ディスプレイ12は任意の種類の表示装置であってよい。
また、本体装置2は、ディスプレイ12の画面上にタッチパネル13を備える。本実施形態においては、タッチパネル13は、マルチタッチ入力が可能な方式(例えば、静電容量方式)のものである。ただし、タッチパネル13は、任意の種類のものであってよく、例えば、シングルタッチ入力が可能な方式(例えば、抵抗膜方式)のものであってもよい。
本体装置2は、ハウジング11の内部においてスピーカ(すなわち、図6に示すスピーカ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を備える。
本体装置2は、下側端子27を備える。下側端子27は、本体装置2がクレードルと通信を行うための端子である。本実施形態において、下側端子27は、USBコネクタ(より具体的には、メス側コネクタ)である。上記一体型装置または本体装置2単体をクレードルに載置した場合、ゲームシステム1は、本体装置2が生成して出力する画像を据置型モニタに表示することができる。また、本実施形態においては、クレードルは、載置された上記一体型装置または本体装置2単体を充電する機能を有する。また、クレードルは、ハブ装置(具体的には、USBハブ)の機能を有する。
図4は、左コントローラ3の一例を示す六面図である。図4に示すように、左コントローラ3は、ハウジング31を備える。本実施形態においては、ハウジング31は、縦長の形状、すなわち、上下方向(すなわち、図1および図4に示す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の一例を示す六面図である。図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を備える。また、右コントローラ4は、左コントローラ3と同様、第2Lボタン65および第2Rボタン66を備える。
また、ハウジング51の下側面には、窓部68が設けられる。詳細は後述するが、右コントローラ4は、ハウジング51の内部に配置される赤外撮像部123および赤外発光部124を備えている。赤外撮像部123は、右コントローラ4の下方向(図5に示すy軸負方向)を撮像方向として、窓部68を介して右コントローラ4の周囲を撮像する。赤外発光部124は、右コントローラ4の下方向(図5に示すy軸負方向)を中心とする所定範囲を照射範囲として、赤外撮像部123が撮像する撮像対象に窓部68を介して赤外光を照射する。窓部68は、赤外撮像部123のカメラのレンズや赤外発光部124の発光体等を保護するためのものであり、当該カメラが検知する波長の光や当該発光体が照射する光を透過する材質(例えば、透明な材質)で構成される。なお、窓部68は、ハウジング51に形成された孔であってもよい。なお、本実施形態においては、カメラが検知する光(本実施形態においては、赤外光)以外の波長の光の透過を抑制するフィルタ部材を赤外撮像部123自身が有する。ただし、他の実施形態においては、窓部68がフィルタの機能を有していてもよい。
また、詳細は後述するが、右コントローラ4は、NFC通信部122を備える。NFC通信部122は、NFC(Near Field Communication)の規格に基づく近距離無線通信を行う。NFC通信部122は、近距離無線通信に用いられるアンテナ122aと、アンテナ122aから送出すべき信号(電波)を生成する回路(例えばNFCチップ)とを有する。なお、NFC通信部122は、NFCの規格に基づく近距離無線通信を行う代わりに、任意の近接通信(非接触通信とも言う)で近距離無線通信を行うようにしてもよい。ここで、NFCの規格は、近接通信(非接触通信)に用いることができるものであり、「任意の近接通信で近距離無線通信を行うようにしてもよい」とは、NFCの規格による近接通信を除いた他の近接通信で近距離無線通信を行ってもよいことを意図している。
また、右コントローラ4は、右コントローラ4が本体装置2と有線通信を行うための端子64を備える。
図6は、本体装置2の内部構成の一例を示すブロック図である。本体装置2は、図3に示す構成の他、図6に示す各構成要素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軸(例えば、図1に示すxyz軸)方向に沿った加速度の大きさを検出する。なお、加速度センサ89は、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。
また、本体装置2は、角速度センサ90を備える。本実施形態においては、角速度センサ90は、所定の3軸(例えば、図1に示す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に充電される。
図7は、本体装置2と左コントローラ3および右コントローラ4との内部構成の一例を示すブロック図である。なお、本体装置2に関する内部構成の詳細については、図6で示しているため図7では省略している。
左コントローラ3は、本体装置2との間で通信を行う通信制御部101を備える。図7に示すように、通信制御部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は、アナログスティック(図7では「スティック」と記載する)32を備える。各ボタン103およびアナログスティック32は、自身に対して行われた操作に関する情報を、適宜のタイミングで繰り返し通信制御部101へ出力する。
左コントローラ3は、慣性センサを備える。具体的には、左コントローラ3は、加速度センサ104を備える。また、左コントローラ3は、角速度センサ105を備える。本実施形態においては、加速度センサ104は、所定の3軸(例えば、図4に示すxyz軸)方向に沿った加速度の大きさを検出する。なお、加速度センサ104は、1軸方向あるいは2軸方向の加速度を検出するものであってもよい。本実施形態においては、角速度センサ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が動作する。
左コントローラ3は、電力供給部108を備える。本実施形態において、電力供給部108は、バッテリおよび電力制御回路を有する。図示しないが、電力制御回路は、バッテリに接続されるとともに、左コントローラ3の各部(具体的には、バッテリの電力の給電を受ける各部)に接続される。
図7に示すように、右コントローラ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は、NFCの規格に基づく近距離無線通信を行うNFC通信部122を備える。NFC通信部122は、いわゆるNFCリーダ・ライタの機能を有する。ここで、本明細書において近距離無線通信とは、一方の装置(ここでは、右コントローラ4)からの電波によって(例えば電磁誘導によって)他方の装置(ここでは、アンテナ122aと近接する装置)に起電力を発生させる通信方式が含まれる。他方の装置は、発生した起電力によって動作することが可能であり、電源を有していてもよいし有していなくてもよい。NFC通信部122は、右コントローラ4(アンテナ122a)と通信対象とが接近した場合(典型的には、両者の距離が十数センチメートル以下となった場合)に当該通信対象との間で通信可能となる。通信対象は、NFC通信部122との間で近距離無線通信が可能な任意の装置であり、例えばNFCタグやNFCタグの機能を有する記憶媒体である。ただし、通信対象は、NFCのカードエミュレーション機能を有する他の装置であってもよい。
また、右コントローラ4は、赤外撮像部123を備える。赤外撮像部123は、右コントローラ4の周囲を撮像する赤外線カメラを有する。一例として、本体装置2および/または右コントローラ4は、撮像された情報(例えば、撮像された撮像画像における少なくとも一部の領域全体を分割した複数のブロックの輝度に関連する情報等)を算出し、当該情報に基づいて、右コントローラ4の周囲変化を判別する。また、赤外撮像部123は、環境光によって撮像を行ってもよいが、本実施形態においては、赤外線を照射する赤外発光部124を有する。赤外発光部124は、例えば、赤外線カメラが画像を撮像するタイミングと同期して、赤外線を照射する。そして、赤外発光部124によって照射された赤外線が撮像対象によって反射され、当該反射された赤外線が赤外線カメラによって受光されることで、赤外線の画像が取得される。これによって、赤外撮像部123は、より鮮明な赤外線画像を得ることができる。なお、赤外撮像部123と赤外発光部124とは、それぞれ別のデバイスとして右コントローラ4内に設けられてもよいし、同じパッケージ内に設けられた単一のデバイスとして右コントローラ4内に設けられてもよい。また、本実施形態においては、赤外線カメラを有する赤外撮像部123が用いられるが、他の実施形態においては、撮像手段として、赤外線カメラに代えて可視光カメラ(可視光イメージセンサを用いたカメラ)が用いられてもよい。
右コントローラ4は、処理部121を備える。処理部121は、通信制御部111に接続される。また、処理部121は、NFC通信部122、赤外撮像部123、および赤外発光部124に接続される。処理部121は、本体装置2からの指令に応じて、NFC通信部122に対する管理処理を実行する。例えば、処理部121は、本体装置2からの指令に応じてNFC通信部122の動作を制御する。また、処理部121は、NFC通信部122の起動を制御したり、通信対象(例えば、NFCタグ)に対するNFC通信部122の動作(具体的には、読み出しおよび書き込み等)を制御したりする。また、処理部121は、通信制御部111を介して通信対象に送信されるべき情報を本体装置2から受信してNFC通信部122へ渡したり、通信対象から受信された情報をNFC通信部122から取得して通信制御部111を介して本体装置2へ送信したりする。
また、処理部121は、CPUやメモリ等を含み、右コントローラ4に備えられた図示しない記憶装置(例えば、不揮発性メモリ等)に記憶された所定のプログラム(例えば、画像処理や各種演算を行うためのアプリケーションプログラム)に基づいて、本体装置2からの指令に応じて赤外撮像部123に対する管理処理を実行する。例えば、処理部121は、赤外撮像部123に撮像動作を行わせたり、撮像結果に基づく情報(撮像画像の情報、あるいは、当該情報から算出される情報等)を取得および/または算出して通信制御部111を介して本体装置2へ送信したりする。また、処理部121は、本体装置2からの指令に応じて赤外発光部124に対する管理処理を実行する。例えば、処理部121は、本体装置2からの指令に応じて赤外発光部124の発光を制御する。なお、処理部121が処理を行う際に用いるメモリは、処理部121内に設けられてもいいし、メモリ112であってもよい。
右コントローラ4は、電力供給部118を備える。電力供給部118は、左コントローラ3の電力供給部108と同様の機能を有し、同様に動作する。
(ゲームプログラムの構成)
次に、本実施の形態のゲーム装置本体2上でゲームプログラムを実行することで実現されるゲームについて説明する。上述したとおり、ゲームプログラムは、ゲーム装置本体2のフラッシュメモリ84等の内部記憶媒体、あるいは、スロット23に装着される外部記憶媒体等)に記憶される。本実施の形態のゲームにおいては、仮想三次元空間内で、ゲームのキャラクタ(「オブジェクト」に相当する)が移動する。以下では、本実施の形態のゲームプログラムを実行することによって実現されるゲーム装置本体2の機能を説明することにより、ゲームプログラムの構成について説明する。
図8は、ゲームプログラムをゲーム装置本体2のプロセッサ81(図6参照)によって実行したときに実現される機能を示す図である。なお、図8では、以下に説明する実施の形態に関係する機能のみを示し、ゲームを進行させるための他の機能については記載を省略している。
本実施の形態のゲームプログラムをプロセッサ81によって実行することにより、移動制御部231、切替判定部232、表示態様制御部233の機能が実現される。移動制御部231は、キャラクタ200などのオブジェクトの移動を制御する。切替判定部232は、仮想三次元空間と所定面との間で、キャラクタ200などのオブジェクトを切り替えるか否かを判定する機能を有する。表示態様制御部233は、仮想三次元空間および所定面においてオブジェクトを表示する態様を制御する機能を有する。
移動制御部231は、仮想三次元空間内において、ゲームのキャラクタ200を、三次元方向に移動させる。図9(a)は、仮想三次元空間において、プレイヤのキャラクタ200が移動する様子を示す図である。ここで、X軸とY軸からなる平面は水平面を表し、Z軸は鉛直方向を表す。プレイヤのキャラクタ200は、XY平面上を自在に移動できることに加え(矢印201,202参照)、ジャンプすることによって建物210の屋上に乗ることもできる(矢印203参照)。つまり、キャラクタ200は、X軸、Y軸、Z軸のいずれの方向にも移動することができる。図9(a)では、プレイヤのキャラクタ200を例として示したが、ノンプレイヤのキャラクタもプレイヤのキャラクタ200と同様に仮想三次元空間内を移動することが可能である。
仮想三次元空間には、キャラクタ200が中に入って移動することができる所定面が設けられている。図9(a)に示す例では、建物の正面の壁面が所定面211となっている。キャラクタ200が仮想三次元空間に設けられた後述の第1の判定領域に入ると、キャラクタ200は所定面211に入る。
図10(a)及び図10(b)は、所定面211への切替え判定を行うための第1の判定領域214について説明するための図である。図10(a)及び図10(b)は仮想三次元空間を上から見下ろした図であり、所定面が紙面の手前方向(Z軸方向)に延びている。図10(a)に示すように、所定面211の法線方向に幅を有する第1の判定領域214が設けられている。キャラクタ200が第1の判定領域214に進入したときに、切替判定部232は、キャラクタ200の移動領域を仮想三次元空間から所定面211への切替えへと変更すると判定する。それに応じて、表示態様制御部233は、キャラクタ200を平面的な表示に変更し、所定面211に吸着させる。これにより、所定面211内の移動への切替えの判定を容易に行うことができる。なお、第1の判定領域214は、可視であっても不可視であってもよい。
また、このような切替え処理は、図10(b)に示すように、所定面213が曲面の場合にも有効である。所定面213が曲面の場合は、図10(b)に示すように曲面の所定面213に沿った第1の判定領域215を設ける。平面的なキャラクタ200が曲面の接線方向に移動して曲面から離れても、第1の判定領域215内にいることから、再び所定面213に吸着され、これにより曲面上での移動が実現される。
仮想三次元空間においては、キャラクタ200は立体的な形状を有していたが、キャラクタ200が所定面211に入ると、図9(b)に示すように、あたかも壁面に設けられた所定面211の一部になったかのように平面的な形状を有する。これにより、ユーザは、キャラクタ200が所定面211に入ったことを認識することができる。
図9(b)に示すように所定面211内においては、所定面211の法線方向へのキャラクタ200の移動が制限される。所定面211内において、キャラクタ200は、所定面211に沿って移動すること(矢印204参照)、および、所定面211に沿って上にジャンプすることは可能であるが(矢印205参照)、所定面211から手前に動いたり、奥に行くことはできない。つまり、図9(b)に示す所定面211においては、キャラクタ200の移動は、XZ平面内に制限されている。
図9(b)に示すように、所定面211には、例えば「EXIT」と記載された第2の判定領域212が用意されており、キャラクタ200がこの第2の判定領域212へ移動してこの第2の判定領域212と重なると、所定面211から抜け出ることができる。ここでは、「EXIT」と記載した第2の判定領域212を例としたが、所定面211から抜け出るための第2の判定領域212の提供態様は様々なものが考えられる。例えば、所定面から抜け出るための領域を固定するのではなく、移動させることとしてもよい。また、所定面自体を移動することとし、キャラクタ200が所定面と重なっているときだけ、所定面内に留まることを許容し、所定面と重ならなくなった時点で、仮想三次元空間へ戻すような仕様も考えられる。
図11(a)~図11(c)は、ユーザからの入力指示と、所定面内にいるキャラクタ200の動作との関係を示す図である。図11(a)~図11(c)は仮想三次元空間を上から見下ろした図であり、所定面211が紙面の手前方向(Z軸方向)に延びている。図11(a)に示すように、キャラクタ200が所定面211内を移動する際には、キャラクタ200は平面的に表示される。この状態で、図11(a)の矢印206の方向へキャラクタ200を移動させるような入力指示がなされたと仮定する。このとき、移動制御部231は、図11(b)に示すように、入力指示によって与えられた仮想の速度ベクトル206を所定面211の法線方向の成分206nと所定面211に平行な成分206pに分ける。所定面211内では法線方向への移動が制限されているので、法線方向の速度成分206nをカットし、図11(c)に示すように、所定面211内での速度成分206pを求め、この速度成分206pを用いて、所定面211内でキャラクタ200を移動させる。
図11(a)~図11(c)は所定面211を上から見た図であり、水平方向(XY平面)への入力があった場合を例として説明したが、鉛直方向(Z軸方向)への入力が加わった場合も同じ要領で、法線方向への速度成分206nをカットして、所定面211内での動きを計算する。なお、ここでは、法線方向の速度成分206nをカットして、所定面内の速度成分206pを所定面211内での速さの大きさとする例について説明したが、入力された仮想の速度成分206の大きさを所定面211内での速さの大きさとしてもよい。
図11(a)~図11(c)では、所定面211が平面の場合を例としたが、所定面211は平面に限られず、例えば、円柱の表面や球の表面等であってもよい。図12(a)~図12(c)は、所定面213が円柱の表面の場合のキャラクタ200の動作を示す図である。
図12(a)の矢印206の方向へキャラクタ200を移動させるような入力指示がなされたと仮定する。所定面213が曲面の場合には、キャラクタ200が位置する場所での所定面213の接線を求め、接線に対する法線方向を規定する。移動制御部231は、図12(b)に示すように、入力指示によって与えられた仮想の速度ベクトル206を法線方向の成分206nと接線方向の成分206pに分ける。所定面213内では法線方向への移動が制限されているので、法線方向の速度成分206nをカットし、図12(c)に示すように、所定面213内での速度成分206pを求め、この速度成分206pを用いて、所定面213内でキャラクタ200を移動させる。
なお、図12(a)~図12(c)では、キャラクタ200を平面で表示する例を記載したが、別の態様として、キャラクタ200を所定面213の曲面形状に合わせた曲面的形状としてもよい。キャラクタ200が比較的大きい場合には、曲面形状に合わせた方が、曲面の所定面211上を移動しているよう見える。
本実施の形態のゲームプログラムは、キャラクタ200が仮想三次元空間と所定面211との間を移動し、三次元方向への移動と所定面211内での移動とが切り替わるときに、切替え後のキャラクタ200の移動の速度を、切替え前におけるキャラクタ200の移動速度に基づいて決定する。
図13(a)~図13(c)は、仮想三次元空間から所定面211内に切り替わる際の速度について説明するための図である。図13(a)~図13(c)は仮想三次元空間を上から見下ろした図であり、所定面211が紙面の手前方向に延びている。図13(a)は、キャラクタ200が仮想三次元空間を移動している様子を示しており、斜め方向から速度ベクトル207で所定面211に近づいている。このとき、キャラクタ200は立体的な形状を有している。
キャラクタ200が、図13では図示しない第1の判定領域214に進入すると、図13(b)に示すように、キャラクタ200は、所定面211に沿った平面的な形状に変形され、所定面211の法線方向への移動が制限された状態で、キャラクタ200は移動を継続する。本実施の形態のゲームプログラムでは、所定面211に入ったときのキャラクタ200の速さ208は、仮想三次元空間内での移動速度207の大きさと同じである。つまり、仮想三次元空間内での斜めに進む方向の速度207の大きさが、所定面211内における進行方向への速さ208となる。なお、図13(b)は、仮想三次元空間を上から見下ろした図であり、鉛直方向(Z軸方向)の速度を示していないが、仮想三次元空間において、キャラクタ200が鉛直方向への速度成分を有していた場合には、その速度成分も維持される。
なお、本実施の形態では、切替え前の仮想三次元空間での速度の大きさが維持される例を挙げたが、変形例として、図13(c)に示すように、切替え前の仮想三次元空間における速度成分のうち、所定面211内での移動方向の速度成分のみを維持してもよい。具体的には、仮想三次元空間における斜め方向へ進む速度207を所定面211の法線方向の速度成分207nと所定面と平行な平面における速度成分207pに分け、所定面211の法線方向の速度成分207nをカットし、速度成分207pを速度207aとして求める。
上に示した例とは逆に、所定面211内にいたキャラクタ200が仮想三次元空間に出た場合の速度も維持される。具体的には、所定面211を抜け出るときの移動方向および移動速度によって仮想三次元空間でのキャラクタ200の移動を開始する。
図14(a)及び図14(b)は、所定面211から仮想三次元空間に移動する際の速度について説明するための図である。図14(a)及び図14(b)は仮想三次元空間を上から見下ろした図であり、所定面211が紙面の手前方向に延びている。図14(a)は、キャラクタ200が所定面211内を移動している様子を示している。ユーザからの入力は、斜め手前の方向208に移動する方向に入力がなされている。所定面211においては、所定面211の法線方向への移動が制限されているため、法線方向の速度成分208nがカットされて、キャラクタ200は、所定面211に沿って速度208pで移動する。
キャラクタ200が第2の判定領域212と重なり、仮想三次元空間に切り替わると判定された場合は、所定面211において移動が制限されていた法線成分208nを生かして、図14(b)に示すように、所定面211における仮想の速度208でキャラクタ200が移動する。このように、所定面211から仮想三次元空間に切り替わったときのキャラクタ200の速度に関連性を持たせることができる。図14(b)では、所定面211内においては実現されていなかった速さ208を仮想三次元空間における速さとする例を示したが、所定面211内で実現されていた速さ208pを仮想三次元空間における速さとしてもよい。
なお、以上では、仮想三次元空間と所定面211との間の切替え時におけるキャラクタ200の速度の関連性について、キャラクタ200にユーザから与えられた入力に基づく速度を中心として説明したが、例えば、仮想三次元空間や所定面211において、重力や、所定方向に働く引力が設定されている場合には、これらの力の影響も踏まえて切替え後のキャラクタ200の速度を決定してもよい。
次に、所定面211内から仮想三次元空間に抜け出たときにキャラクタ200を表示する位置について説明する。図15(a)に示すように、建物210の壁面に設けられた所定面211をキャラクタ200が右方向に移動して右端にある「EXIT」と記載された第2の判定領域212に重なると、図15(b)に示すように、仮想三次元空間において、キャラクタ200は、建物210の壁面に設けられた所定面211のライン220よりも手前に抜け出す。これにより、所定面211に描かれた出口から手前に出てきたように見える。
図16(a)及び図16(b)は、抜け位置調整の別の例を示す図である。この例では、キャラクタ200は、図16(a)に示すように、上にジャンプして建物の高さより高く飛び上がることにより、所定面211から仮想三次元空間へと抜け出る。図16(b)は、キャラクタ200が仮想三次元空間へ抜けたときの位置を示す図である。この例では、キャラクタ200は、建物210の壁面に設けられた所定面211よりも奥に抜け出し、建物210の屋上に着地する。ここで、建物210の屋上が、請求項でいう「地面」に相当する。このように抜け位置の調整は、状況に応じて自動判定されるものであってもよいし、ゲームの製作者により予め定められていてもよい。
図17及び図18は、移動制御部231によるキャラクタ200の移動制御を示すフローチャートである。図17は、仮想三次元空間内におけるキャラクタ200の移動と所定面211への切替えの動作を示し、図18は、所定面211内におけるキャラクタ200の移動と仮想三次元空間への切替えの動作を示す。
キャラクタ200が仮想三次元空間内にいるときに、図17に示すように、ユーザから入力があると(S10)、移動制御部231は、ユーザからの入力値と、キャラクタ200の現在の状態(現在位置、移動速度、方向)に基づいて、キャラクタ200の移動速度および移動量を計算する(S11)。続いて、移動制御部231は、キャラクタ200を移動させ(S12)、キャラクタ200が第1の判定領域214に進入したか否かを判定する(S13)。この判定の結果、キャラクタ200が第1の判定領域214に進入したと判定されなかった場合には(S13でNO)、移動制御部231は、ユーザ入力のステップS10に戻る。
キャラクタ200が第1の判定領域214に進入したと判定された場合(S13でYES)、表示態様制御部233は、仮想三次元空間において立体的に表示していたキャラクタ200を平面的な表示にする(S14)。これにより、キャラクタ200が所定面211に入ったことになる。また、移動制御部231は、所定面211内に入ったキャラクタ200の速度および移動方向を計算する(S15)。上述したとおり、所定面211内に切り替わる直前における仮想三次元空間での移動速度に基づいて、移動速度の大きさを維持するように、所定面211内での速度を計算する。移動方向については、所定面211の法線方向における移動を拘束して、移動方向を計算する。そして、移動制御部231の動作は、図18に示すフローチャートに移行する。
図18に示すように、キャラクタ200が所定面211内にいるときに、ユーザから入力があると(S20)、移動制御部231は、ユーザからの入力値と、キャラクタ200の現在の状態(現在位置、移動速度、方向)に基づいて、キャラクタ200の移動速度および移動量を計算する(S21)。続いて、移動制御部231は、キャラクタ200を移動させ(S22)、キャラクタ200が第2の判定領域212に重なったか否かを判定する(S23)。この判定の結果、キャラクタ200が第2の判定領域212に重なっていないと判定された場合には(S23でNO)、移動制御部231は、ユーザ入力のステップS20に戻る。
キャラクタ200が第2の判定領域212に重なったと判定された場合(S23でYES)、表示態様制御部233は、所定面211内で平面的に表示していたキャラクタ200を立体的な表示にする(S24)。これにより、キャラクタ200が所定面211から仮想三次元空間に出たことになる。また、移動制御部231は、仮想三次元空間内に入ったキャラクタ200の速度および移動方向を計算する(S25)。上述したとおり、仮想三次元空間に切り替わる直前におけてユーザから入力されていた所定面211内での移動速度に基づいて、移動速度の大きさを維持するように、仮想三次元空間内での速度を計算する。移動方向については、所定面211内における移動方向を用いる。そして、移動制御部231の動作は、図17に示すフローチャートに移行する。
以上、実施の形態のゲーム装置本体2およびゲームプログラムの構成および動作について説明した。
本実施の形態のゲーム装置本体2では、移動制御部231は、キャラクタ200が仮想三次元空間から所定面211に入ると、キャラクタ200を平面的に表示し、所定面211に拘束された状態で移動させるので、仮想三次元空間でのゲームと、所定面211内でのゲームを楽しむことができる。また、仮想三次元空間と所定面211とが切り替わる際に、切替え前後におけるキャラクタ200の移動速度に関連を持たせるので、キャラクタ200が仮想三次元空間と所定面211とをスムーズに行き来するような、円滑な切替えを実現することができる。
上記に本発明の情報処理装置および情報処理プログラムについて、実施の形態を挙げて詳細に説明したが、本発明の情報処理装置および情報処理プログラムは上記した実施の形態に限定されるものではない。
上記した実施の形態では、キャラクタ200を仮想三次元空間から所定面211へ切り替える判定の方法として、第1の判定領域214を用いる例を説明したが、キャラクタ200が所定面211に衝突したことを検出し、衝突に応じて仮想三次元空間から所定面211内での移動に切り替えてもよい。
上記した実施の形態では、所定面211内での移動方向については、仮想三次元空間内における移動方向から、所定面211の法線方向(すなわち、所定面211における拘束方向)の成分を除外して、所定面211内における移動方向を決定する例を挙げた。この方法だと、所定面211の法線方向に移動して所定面211に衝突したオブジェクトは、所定面211に入ったときに初期の移動方向を持たないことになる。変形例として、所定面211の法線方向から衝突したときの移動方向をあらかじめ定めておいてもよいし、所定の条件によって決めたり、ランダムに決めてもよい。
図19は、デフォルトの移動方向として上方向を設定した例を示す図である。この例では、仮想三次元空間にいるキャラクタ200が所定面211に対して垂直に銃弾216を発すると、所定面211に衝突した銃弾のオブジェクトは、所定面211に入ったときに上方に方向を変えて移動する。このとき、銃弾216の速さは、三次元移動のときの速さが、所定面内に入っても維持される。
図20(a)及び図20(b)は、デフォルトの移動方向として上方向を設定した別の例を示す。この例では、前後に頭を持つムカデのようなノンプレイングキャラクタのオブジェクト217が仮想三次元空間と所定面211との間を往復する。図20(a)及び図20(b)は往路のみ示している。オブジェクト217が、図20(a)に示すように所定面211に、その法線方向から衝突すると、所定面211の中に入って上方向に移動を継続する。オブジェクト217が所定面211の方向に進み続けると、オブジェクト217は、図20(b)に示すように、どんどん所定面211に吸い込まれて、その分だけ上方向に移動する。また、オブジェクトは、所定面211内を上方向に移動した後、移動方向を反対に変えて、所定面211内を下方向に移動し、所定面211に入った場所と同じ位置から仮想三次元空間に戻る。仮想三次元空間におけるオブジェクトの移動方向は、図20(a)及び図20(b)に示す方向とは反対に、所定面211の法線方向に所定面211から離れる方向である。
上記した実施の形態では、キャラクタ200が所定面211内から仮想三次元空間に抜けたときに、状況に応じてキャラクタ200の位置を調整することについて、図15及び図16を用いて説明したが、本発明のゲーム装置本体2において、移動制御部231は、キャラクタ200の位置だけでなく、キャラクタ200の速度を調整してもよい。例えば、図15に示す例では、建物210の壁面に設けられた所定面211から手前に向かう初期速度を与えてもよい。また、図16に示す例では、建物210の所定面211から建物210の屋上方向へ向かう初期速度を与えてもよい。
上記した実施の形態では、仮想三次元空間ではキャラクタ200を立体的に表示し、所定面211内においては平面的に表示する例を挙げたが、所定面内でのキャラクタの表示態様は、通常の目視でピクセルが判別できる程度に解像度が低い、いわゆるドット絵で表現してもよい。また、キャラクタ200が仮想三次元空間にいるときと所定面211内にいるときとで、BGMや効果音の種類を変えてもよい。例えば、仮想三次元空間にいるときの方が重厚感のある音楽とし、所定面211内にいるときは軽い音楽、あるいは古い音源チップを用いたような音楽とする。これにより、ユーザは、仮想三次元空間にいるのか所定面211内にいるのかをBGM等によっても実感できる。
上記した実施の形態では、所定面の例として建物の壁面を挙げたが、所定面は壁面だけではなく、例えば、地面、天井、傾斜面等でもよい。上記した実施の形態では、キャラクタ200の移動によって、仮想三次元空間での移動と所定面内での移動を切り替える例について説明したが、切り替えは左コントローラ3および右コントローラ4のボタン33~36,53~56等の押下によって行ってもよい。上記実施の形態では、キャラクタ200と第2の判定領域とが重なった場合に、キャラクタ200の移動を、所定面211から仮想三次元空間へと切り替える例を挙げたが、第2の判定領域212と「重なる」とは、「一部が重なる」「オブジェクトの既定の点が重なる」「全体が重なる」の場合があり、いずれを採用するかは、ゲームの製作者によってあらかじめ定めることができる。
上記した実施の形態では、「EXIT」と記載した第2の判定領域212に重なった場合に、所定面211から仮想三次元空間に切り替える例を挙げたが、例えば「ENTRANCE」と記載した第1の判定領域、またはその周辺の領域に、キャラクタ200が重なった場合に、仮想三次元空間から所定面211へ切り替えることとしてもよい。上記した実施の形態では、「EXIT」と記載した第2の判定領域212が固定されている例について説明したが、第2の判定領域212は、移動することとしてもよい。上記した実施の形態では、同じキャラクタ200の移動範囲や表示態様を変化させるものとして説明したが、仮想三次元空間と所定面211とを切り替える際に、オブジェクトを別のオブジェクトに切り替えるようにしてもよい。また、第1の判定領域は、仮想カメラの位置に応じて形状が変化するものであってよく、例えば、仮想カメラから第1の判定領域に伸びる方向に広がるようなものであってもよい。
1 ゲームシステム
2 本体装置
3 左コントローラ
4 右コントローラ
11 ハウジング
12 ディスプレイ
17 左側端子
21 右側端子
42,64 端子
81 プロセッサ
83 コントローラ通信部
89 加速度センサ
90 角速度センサ
100 携帯機コントローラ
104、114 加速度センサ
105、115 角速度センサ
130 ゲーム制御部
131 操作データ取得部
132 振動強さ計算部
133 振動データ生成部
134 プレイヤキャラクタ制御部
135 画像処理部
136 ゲーム状況データ記憶部
137 波形データ記憶部
138 振動制御部
200 キャラクタ
201~203 仮想三次元空間内での移動方向
204,205 所定面内での移動方向
210 建物
211 所定面
212 第2の判定領域
214 第1の判定領域
216 銃弾
217 仮想三次元空間と所定面を行き来するオブジェクト
220 建物の壁面のライン
230 ゲーム装置
231 移動制御部
232 切替判定部
233 表示態様制御部

Claims (16)

  1. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理プログラムであって、情報処理装置を、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部と
    前記オブジェクトの表示態様を制御する表示態様制御部として機能させ、
    前記移動制御部は、前記仮想三次元空間における三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記表示態様制御部は、前記三次元移動する前記オブジェクトを立体的に表示し、前記所定面内で移動する前記オブジェクトを平面的または曲面的に表示する、情報処理プログラム。
  2. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理プログラムであって、情報処理装置を、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部と
    前記オブジェクトの表示態様を制御する表示態様制御部として機能させ、
    前記移動制御部は、前記仮想三次元空間における三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記表示態様制御部は、前記三次元移動する第1のオブジェクトと前記所定面内で移動する第2のオブジェクトを別のオブジェクトに切り替えて表示する、情報処理プログラム。
  3. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理プログラムであって、情報処理装置を、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部として機能させ、
    前記移動制御部は、前記仮想三次元空間における三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記仮想三次元空間には、前記所定面の法線方向に広がる空間である第1の判定領域が設けられており、前記切替判定部は、前記仮想三次元空間を移動する前記オブジェクトが前記第1の判定領域に進入したことに応じて、前記三次元移動から前記所定面内での移動への切替えを判定する、情報処理プログラム。
  4. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理プログラムであって、情報処理装置を、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部として機能させ、
    前記移動制御部は、前記仮想三次元空間における三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記切替判定部は、前記仮想三次元空間を移動する前記オブジェクトが、前記仮想三次元空間内にある前記所定面に接したことに応じて、前記三次元移動から前記所定面内での移動への切替えを判定すると共に、前記所定面内を移動する前記オブジェクトが、第2の判定領域と重なっているかどうかに応じて、前記所定面内での移動から前記三次元移動への切替えを判定し、
    前記第2の判定領域が他の部分と識別可能であって前記所定面内を移動する情報処理プログラム。
  5. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理プログラムであって、情報処理装置を、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部として機能させ、
    前記移動制御部は、前記仮想三次元空間における三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記移動制御部は、前記所定面内での移動から前記三次元移動に切り替わる際に、(1)前記オブジェクトの初期位置を前記仮想三次元空間内において最も近接する地面のある方向へ所定量だけ移動した位置とすること、(2)前記オブジェクトに対して前記地面のある方向への速度を与えること、の少なくともいずれか一方を行う情報処理プログラム。
  6. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理プログラムであって、情報処理装置を、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部として機能させ、
    前記移動制御部は、前記仮想三次元空間における三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記仮想三次元空間において前記所定面の法線方向に三次元移動する前記オブジェクトが前記所定面内での移動に切り替わるときには、前記移動制御部は、前記法線方向に垂直な方向を初期の移動方向とする情報処理プログラム。
  7. 前記移動制御部は、前記オブジェクトの切替え前の速さを切替え後の速さとして決定する請求項1乃至6のいずれかに記載の情報処理プログラム。
  8. 前記三次元移動から前記所定面内での移動に切り替えるときに、前記移動制御部は、切替え前の前記三次元移動の前記オブジェクトの速度成分から、前記所定面の前記オブジェクトの位置における法線方向の速度成分を除去した速度成分を、前記所定面内での移動の速さとして決定する請求項1乃至6のいずれかに記載の情報処理プログラム。
  9. 前記所定面内での移動から前記三次元移動に切り替えるときに、前記移動制御部は、切替え前における前記所定面内での速度成分を、切替え後の前記三次元移動の前記所定面に対する速度成分として用いる請求項1乃至6のいずれかに記載の情報処理プログラム。
  10. 前記移動制御部は、前記所定面内での移動から前記三次元移動に切り替わる際に、(1)前記オブジェクトの初期位置を前記所定面の前記オブジェクトの位置における法線方向に所定量だけ移動した位置とすること、(2)前記オブジェクトに対して前記法線方向への速度を与えること、の少なくともいずれか一方を行う請求項1乃至のいずれかに記載の情報処理プログラム。
  11. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理装置であって、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部と、
    前記オブジェクトの表示態様を制御する表示態様制御部と
    を備え、
    前記移動制御部は、前記三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記表示態様制御部は、前記三次元移動する前記オブジェクトを立体的に表示し、前記所定面内で移動する前記オブジェクトを平面的または曲面的に表示する、情報処理装置。
  12. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理装置であって、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部と
    前記オブジェクトの表示態様を制御する表示態様制御部と、
    を備え、
    前記移動制御部は、前記三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記表示態様制御部は、前記三次元移動する第1のオブジェクトと前記所定面内で移動する第2のオブジェクトを別のオブジェクトに切り替えて表示する、情報処理装置。
  13. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理システムであって、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部と
    前記オブジェクトの表示態様を制御する表示態様制御部と、
    を備え、
    前記移動制御部は、前記三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記表示態様制御部は、前記三次元移動する前記オブジェクトを立体的に表示し、前記所定面内で移動する前記オブジェクトを平面的または曲面的に表示する、情報処理システム。
  14. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理システムであって、
    前記オブジェクトの移動を制御する移動制御部と、
    前記移動制御部による前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行う切替判定部と
    前記オブジェクトの表示態様を制御する表示態様制御部と、
    を備え、
    前記移動制御部は、前記三次元移動と前記所定面内での移動を切り替えるときに、切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記表示態様制御部は、前記三次元移動する第1のオブジェクトと前記所定面内で移動する第2のオブジェクトを別のオブジェクトに切り替えて表示する、情報処理システム。
  15. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理方法であって、
    前記仮想三次元空間における前記オブジェクトの三次元移動を制御するステップと、
    前記仮想三次元空間に設けられた所定面内における前記オブジェクトの移動を制御するステップと、
    前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行うステップと、
    前記オブジェクトの表示態様を制御するステップと、
    を備え、
    前記三次元移動と前記所定面内での移動を切り替えるときに、前記オブジェクトの切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記表示態様を制御するステップは、前記三次元移動する前記オブジェクトを立体的に表示し、前記所定面内で移動する前記オブジェクトを平面的または曲面的に表示する、情報処理方法。
  16. 仮想三次元空間におけるオブジェクトの移動を制御するための情報処理方法であって、
    前記仮想三次元空間における前記オブジェクトの三次元移動を制御するステップと、
    前記仮想三次元空間に設けられた所定面内における前記オブジェクトの移動を制御するステップと、
    前記オブジェクトの移動を、前記仮想三次元空間内における三次元移動とするか、前記仮想三次元空間内に設けられた所定面内での移動とするかを切り替える判定を行うステップと、
    前記オブジェクトの表示態様を制御するステップと、
    を備え、
    前記三次元移動と前記所定面内での移動を切り替えるときに、前記オブジェクトの切替え前の前記オブジェクトの速度に基づいて、切替え後の前記オブジェクトの速度を決定し、
    前記表示態様を制御するステップは、前記三次元移動する第1のオブジェクトと前記所定面内で移動する第2のオブジェクトを別のオブジェクトに切り替えて表示する、情報処理方法。
JP2017101665A 2017-05-23 2017-05-23 情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法 Active JP7029888B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017101665A JP7029888B2 (ja) 2017-05-23 2017-05-23 情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法
US15/942,739 US10821362B2 (en) 2017-05-23 2018-04-02 Information processing program, information processing device, information processing system, and information processing method for imparting relevance to speeds of an object before and after switching of movement
EP18168511.6A EP3406313B1 (en) 2017-05-23 2018-04-20 Information processing program, information processing device, information processing system, and information processing method
US17/034,226 US11298619B2 (en) 2017-05-23 2020-09-28 Information processing program, information processing device, information processing system, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017101665A JP7029888B2 (ja) 2017-05-23 2017-05-23 情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法

Publications (2)

Publication Number Publication Date
JP2018197911A JP2018197911A (ja) 2018-12-13
JP7029888B2 true JP7029888B2 (ja) 2022-03-04

Family

ID=62044573

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017101665A Active JP7029888B2 (ja) 2017-05-23 2017-05-23 情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法

Country Status (3)

Country Link
US (2) US10821362B2 (ja)
EP (1) EP3406313B1 (ja)
JP (1) JP7029888B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108245888A (zh) * 2018-02-09 2018-07-06 腾讯科技(深圳)有限公司 虚拟对象控制方法、装置及计算机设备
JP6727515B2 (ja) * 2018-07-31 2020-07-22 株式会社コナミデジタルエンタテインメント ゲームシステム、及びそれに用いるコンピュータプログラム
CN111544888B (zh) * 2020-04-22 2021-03-16 腾讯科技(深圳)有限公司 虚拟群体单位的移动方法和装置、存储介质及电子设备
JP7354186B2 (ja) * 2021-06-18 2023-10-02 ヤフー株式会社 表示制御装置、表示制御方法および表示制御プログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014235538A (ja) 2013-05-31 2014-12-15 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP6050882B1 (ja) 2015-11-25 2016-12-21 株式会社コロプラ ゲームシステム、制御方法、及びプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6050882B2 (ja) 1979-09-27 1985-11-11 旭化成株式会社 ビスコ−スレ−ヨンフイラメント糸の製造方法
JP3527578B2 (ja) * 1995-10-31 2004-05-17 株式会社ナムコ ゲーム装置
JPH11114230A (ja) * 1997-10-09 1999-04-27 Taisei Corp スキー疑似体験装置
JPH11146978A (ja) * 1997-11-17 1999-06-02 Namco Ltd 3次元ゲーム装置及び情報記憶媒体
JP4195853B2 (ja) * 2003-12-08 2008-12-17 任天堂株式会社 ゲーム装置およびゲームプログラム
JP3770499B1 (ja) * 2004-11-02 2006-04-26 任天堂株式会社 ゲーム装置及びゲームプログラム
JP4580742B2 (ja) * 2004-11-30 2010-11-17 任天堂株式会社 ゲームプログラムおよびゲーム装置
JP4177381B2 (ja) 2006-03-01 2008-11-05 株式会社スクウェア・エニックス 画像生成方法、画像生成装置、および画像生成プログラム
JP5157329B2 (ja) * 2007-08-31 2013-03-06 株式会社セガ ゲーム装置
US8531452B2 (en) * 2009-07-21 2013-09-10 Konami Digital Entertainment Co., Ltd. Video game machine, gaming image display control method and display mode switching control method
CN102693362B (zh) 2012-05-08 2016-05-18 北京像素软件科技股份有限公司 一种与地形相适应的游戏角色跳跃方法和装置
US10217284B2 (en) * 2013-09-30 2019-02-26 Qualcomm Incorporated Augmented virtuality

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014235538A (ja) 2013-05-31 2014-12-15 任天堂株式会社 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP6050882B1 (ja) 2015-11-25 2016-12-21 株式会社コロプラ ゲームシステム、制御方法、及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
「任天堂公式ガイドブック ゼルダの伝説 神々のトライフォース2」,初版,株式会社小学館,2013年,p.14-15,60-61,76-77

Also Published As

Publication number Publication date
EP3406313A1 (en) 2018-11-28
JP2018197911A (ja) 2018-12-13
US11298619B2 (en) 2022-04-12
EP3406313B1 (en) 2024-01-24
US10821362B2 (en) 2020-11-03
US20210008452A1 (en) 2021-01-14
US20180342094A1 (en) 2018-11-29

Similar Documents

Publication Publication Date Title
JP6555831B2 (ja) 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
US11298619B2 (en) Information processing program, information processing device, information processing system, and information processing method
US11439907B2 (en) Audio feedback that varies based on direction of input stroke
JP2020149584A (ja) 情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法
JP6329210B2 (ja) 情報処理システム、ケース、および厚紙部材
US20170087455A1 (en) Filtering controller input mode
EP2545970A2 (en) Apparatus and method for repositioning a virtual camera based on a changed game state
US10967251B2 (en) Game system, game apparatus, storage medium and game control method
JP5117565B2 (ja) 情報処理プログラム、情報処理装置、情報処理方法及び情報処理システム
JP5758202B2 (ja) 画像処理プログラム、画像処理装置、画像処理方法および画像処理システム
US11045728B2 (en) Game system, non-transitory storage medium having stored therein game program, information processing apparatus, and game control method
JP7140465B2 (ja) ゲームプログラム、情報処理装置、情報処理システム、ゲーム処理方法
JP6397543B1 (ja) 装置移動システム、装置、装置移動制御方法、装置移動制御プログラム、および厚紙部材
JP5777332B2 (ja) ゲーム装置、ゲームプログラム、ゲームシステム及びゲーム方法
JP7045408B2 (ja) 情報処理プログラム
US11117050B2 (en) Information processing program
JP6937168B2 (ja) 情報処理プログラム、情報処理装置、情報処理システム、及び情報処理方法
JP2018118129A (ja) 情報処理システム、ケース、および厚紙部材

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200420

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210326

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210413

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211012

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211112

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220221

R150 Certificate of patent or registration of utility model

Ref document number: 7029888

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150