JP5996605B2 - System, program, and method for operating screen by interlocking head mounted display and controller - Google Patents
System, program, and method for operating screen by interlocking head mounted display and controller Download PDFInfo
- Publication number
- JP5996605B2 JP5996605B2 JP2014214266A JP2014214266A JP5996605B2 JP 5996605 B2 JP5996605 B2 JP 5996605B2 JP 2014214266 A JP2014214266 A JP 2014214266A JP 2014214266 A JP2014214266 A JP 2014214266A JP 5996605 B2 JP5996605 B2 JP 5996605B2
- Authority
- JP
- Japan
- Prior art keywords
- output data
- smartphone
- user
- display
- display object
- 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
Links
Landscapes
- User Interface Of Digital Computer (AREA)
Description
本発明は、ヘッドマウントディスプレイとコントローラとを連動させてヘッドマウントディスプレイ上の表示を画面操作するシステム、方法、及びプログラムに関し、より詳細には、ヘッドマウントディスプレイと、外部ネットワークとの通信機能を有するコントローラとを連動させて画面操作するシステムに関する。 The present invention relates to a system, a method, and a program for operating a display on a head mounted display by linking a head mounted display and a controller, and more specifically, has a communication function between the head mounted display and an external network. The present invention relates to a screen operation system linked with a controller.
ユーザの頭部に装着され、眼前に配置されたディスプレイ等によってユーザに画像を提示することが可能なヘッドマウントディスプレイ(HMD)が知られている。従来のHMDのコントローラは本体装置を介してインターネットなどの外部ネットワークと接続されるため、コントローラ自体が外部ネットワークと通信することはない。また、従来のコントローラは、HMDに接続するための専用のコントローラを必要とする。 2. Description of the Related Art A head mounted display (HMD) that is mounted on a user's head and can present an image to the user with a display or the like disposed in front of the eyes is known. Since the conventional HMD controller is connected to an external network such as the Internet via the main unit, the controller itself does not communicate with the external network. Moreover, the conventional controller requires a dedicated controller for connecting to the HMD.
さらに、従来、HMDにおける表示画像の各種操作に用いるコントローラは、ボタン、キーによる操作が主流であり、センサディスプレイは備えていない。そのようなコントローラは、最近では、動きを検出可能なセンサ(例えば加速度センサ)を内蔵し、コントローラの動きを検出する装置が開発されている。 Furthermore, conventionally, a controller used for various operations of a display image in the HMD is mainly operated by buttons and keys, and does not include a sensor display. Such a controller has recently been developed with a built-in sensor (for example, an acceleration sensor) capable of detecting motion and detecting the motion of the controller.
上記背景技術に係るシステムにおいては、コントローラ自体が外部ネットワークに接続する機能を備えていないため、コントローラ自体がインターネットに接続する際には必ず本体装置に接続していた。 In the system according to the background art, since the controller itself does not have a function of connecting to an external network, the controller itself is always connected to the main unit when connecting to the Internet.
また、従来のHMDと接続されるコントローラはボタン、キー、動きを検出可能なセンサからの入力による操作が可能であるが、センサディスプレイを備えていないため、直感的なより細かい操作を行うことができなかった。特にボタン、キーによる操作の場合、HMDを装着して完全に仮想空間にユーザが没入していると、ユーザが操作しようとしている現在の状態(ユーザの指がどのキー、ボタンに置かれているか)を、ユーザは認識することができないため、ユーザの指が所望のキーやボタンから外れていると、ユーザが所望しない操作が行われていた。 In addition, the controller connected to the conventional HMD can be operated by input from buttons, keys, and sensors that can detect movement, but since it does not have a sensor display, it can perform intuitive and finer operations. could not. In particular, in the case of operation with buttons and keys, if the user is completely immersed in the virtual space with the HMD attached, the current state that the user is trying to operate (which key or button the user's finger is placed on) ) Cannot be recognized by the user, and if the user's finger is removed from the desired key or button, an operation that the user does not desire has been performed.
また、1つの操作画面を同じ空間に位置する複数のユーザで共有して操作する場合に、従来のシステムでは複数のコントローラが1つの本体装置に接続されるため、本体装置への負荷が高かった。また従来のシステムでは、1つの操作画面を、別個の空間に位置する複数のユーザで共有して操作する場合に、複数のコントローラはそれぞれ空間毎に別々の本体装置に接続し、ネットワークを介して各本体装置をサーバに接続して通信していた。この場合、複数のコントローラに対し別個の本体装置が必要となる。 In addition, when a single operation screen is shared and operated by a plurality of users located in the same space, a load on the main unit is high because a plurality of controllers are connected to one main unit in the conventional system. . In a conventional system, when a single operation screen is shared and operated by a plurality of users located in separate spaces, the plurality of controllers are connected to separate main units for each space, and are connected via a network. Each main unit was connected to a server for communication. In this case, separate main body devices are required for a plurality of controllers.
さらに、HMDの操作に専用のコントローラが必要となる場合、ユーザは、HMD操作の都度専用のコントローラを持ち運ぶ必要があった。
Further, when a dedicated controller is required for the operation of the HMD, the user has to carry the dedicated controller for each HMD operation.
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、HMDと外部との通信機能を備えたコントローラとを連動させるシステムを提供することにある。さらに、本発明は、そのコントローラは外部との通信機能を備えていることから、本体装置に接続する際に、外部サーバから接続に必要なソフトウェアをダウンロードすることができるため、本体装置に専用である必要はなく、一般に流通している端末、例えば携帯端末、スマートフォンを用いることができる。 The present invention has been made in view of the above problems, and an object of the present invention is to provide a system in which an HMD and a controller having a communication function with the outside are linked. Furthermore, according to the present invention, since the controller has a communication function with the outside, when connecting to the main unit, software necessary for connection can be downloaded from the external server. There is no need, and generally distributed terminals such as mobile terminals and smartphones can be used.
(1)本発明は、
生成画像をヘッドマウントディスプレイへ出力するシステムであって、該システムは、
実行中のアプリケーションの内容に応じて求められるユーザ操作を判定する操作判定部と、
コントローラからの出力データから、前記求められるユーザ操作に対応する出力データを検出する入力検出部と、
検出された前記出力データに基づき表示オブジェクトの動作を判定する動作判定部と、
判定された表示オブジェクトの前記動作、及び前記検出された出力データに基づいて、表示オブジェクトの表示パラメータを演算して、仮想空間上に表示される表示オブジェクトの画像を生成する表示演算部と、
仮想空間上の画像に生成された表示オブジェクトの画像を配置した画像を生成して前記システムに接続されたヘッドマウントディスプレイへ出力する画像生成出力部と、
を備えており、
前記コントローラの通信部がインターネットを介してサーバから受信したコントローラ側インタフェースプログラムと、前記システムのシステム側インタフェースプログラムにより、前記コントローラと前記システムが接続されていることを特徴とする、システムに関係する。
(1) The present invention
A system for outputting a generated image to a head mounted display, the system comprising:
An operation determination unit that determines a user operation required according to the contents of the application being executed;
An input detection unit for detecting output data corresponding to the requested user operation from output data from the controller;
A motion determination unit that determines the motion of the display object based on the detected output data;
A display calculation unit that calculates a display parameter of the display object based on the determined movement of the display object and the detected output data, and generates an image of the display object displayed on the virtual space;
An image generation output unit that generates an image in which an image of a display object generated in an image in a virtual space is arranged and outputs the generated image to a head mounted display connected to the system;
With
The controller and the system are connected by a controller-side interface program received from a server via the Internet by the communication unit of the controller and the system-side interface program of the system.
本発明によれば、外部ネットワークとの通信機能を備えたコントローラを利用することで、コントローラは本体装置に接続していなくとも、コントローラ自体が外部サーバから入手可能な様々な情報、動画、画像、音声、その他情報(例えば地図情報、気象情報、株価情報、アプリケーション)を入手し、HMDに提示される仮想空間に反映することができる。さらに、本発明は、そのコントローラは外部との通信機能を備えていることから、本体装置に接続する際に、外部サーバから本体装置との接続に必要なソフトウェアをダウンロードすることができるため、本体装置に専用である必要はない。従って、本発明によれば、近年、一般的に普及しているスマートフォンなどの携帯端末をHMDのコントローラとして利用することができ、ユーザは専用のコントローラを必要とせずにHMDを操作することができる。 According to the present invention, by using a controller having a communication function with an external network, even if the controller is not connected to the main unit, the controller itself can obtain various information, videos, images, Voice and other information (for example, map information, weather information, stock price information, application) can be obtained and reflected in the virtual space presented on the HMD. Furthermore, since the controller has a communication function with the outside, the software can download software necessary for connection with the main unit from an external server when connecting to the main unit. It need not be dedicated to the device. Therefore, according to the present invention, it is possible to use a portable terminal such as a smartphone, which has been widely used in recent years, as an HMD controller, and the user can operate the HMD without requiring a dedicated controller. .
(2)また、本発明は、コントローラからの出力データは、前記コントローラのセンサディスプレイからのユーザによる操作入力に基づいて生成された出力データであることができる。さらに、本発明は、操作入力は、スワイプ操作、タップ操作、又はピンチイン・ピンチアウト操作であることができる。 (2) Further, according to the present invention, the output data from the controller can be output data generated based on an operation input by a user from the sensor display of the controller. Further, according to the present invention, the operation input can be a swipe operation, a tap operation, or a pinch-in / pinch-out operation.
本発明によれば、センサディスプレイを備えたコントローラを利用することで、ユーザはHMDに対し直感的で詳細なさまざまな操作(スワイプ操作、タップ操作、ピンチ操作)を行うことができる。ユーザは、HMDを装着して完全に仮想空間に没入していると、ユーザが操作しようとしている現在の状態(ユーザの指がどのキー、ボタンに置かれているか)を、ユーザは認識することができない。本発明によるコントローラはセンサディスプレイを備えており、ユーザは直感的な様々な操作を行うことができる。 According to the present invention, by using a controller including a sensor display, a user can perform various detailed operations (swipe operation, tap operation, pinch operation) on the HMD in an intuitive manner. When the user wears the HMD and is completely immersed in the virtual space, the user recognizes the current state that the user is trying to operate (which key or button the user's finger is placed on). I can't. The controller according to the present invention includes a sensor display, and the user can perform various intuitive operations.
(3)また、本発明は、コントローラからの出力データは、前記コントローラのマイクからのユーザによる音声入力に基づいて生成された出力データであることができる。さらに、本発明は、仮想空間上に表示される表示オブジェクトの画像は、ユーザによる音声入力に基づいて変化することができる。 (3) Further, according to the present invention, the output data from the controller can be output data generated based on a voice input by a user from the microphone of the controller. Further, according to the present invention, the image of the display object displayed on the virtual space can be changed based on the voice input by the user.
本発明によれば、マイクを備えたコントローラを利用することで、ユーザはHMDに対して直感的な操作(音声入力)を行うことにより、HMDに表示させる画像を変化させることができる。 According to the present invention, by using a controller including a microphone, a user can change an image displayed on the HMD by performing an intuitive operation (voice input) on the HMD.
(4)また、本発明は、コントローラからの出力データは、前記コントローラの加速度センサ又はジャイロセンサからのユーザによる動作入力に基づいて生成された出力データであることができる。 (4) Further, according to the present invention, the output data from the controller can be output data generated based on an operation input by a user from an acceleration sensor or a gyro sensor of the controller.
本発明によれば、加速度センサ又はジャイロセンサを備えたコントローラを利用することで、コントローラの振り幅や振る周期、速度、強さを検出することによりユーザによる直感的な様々な操作が可能となる。 According to the present invention, by using a controller having an acceleration sensor or a gyro sensor, various intuitive operations by the user can be performed by detecting the swing width, swing period, speed, and strength of the controller. .
(5)また、本発明は、コントローラからの出力データは、コントローラのメモリに格納されている画像と、前記コントローラのセンサディスプレイからのユーザによる操作入力に基づいて生成された出力データを含み、動作判定部は画像により表示オブジェクトを決定して、検出された前記出力データに基づき表示オブジェクトの動作を判定することを特徴とすることができる。さらに、本発明においてコントローラはスマートフォンであることができる。 (5) Further, according to the present invention, the output data from the controller includes an image stored in a memory of the controller and output data generated based on an operation input by a user from the sensor display of the controller, The determination unit may determine a display object based on an image and determine an operation of the display object based on the detected output data. Furthermore, in the present invention, the controller can be a smartphone.
本発明によれば、コントローラがスマートフォンなどのユーザが常に携帯している携帯端末の場合、ユーザが過去に撮った画像、動画、音声が格納されており、ユーザがスマートフォンに格納されたユーザ自身が過去に撮った画像、動画、音声を利用してHMDに反映させることができる。さらに、コントローラがスマートフォンなどのユーザが常に携帯している携帯端末である場合に、ユーザは、HMD操作の都度専用のコントローラを持ち運ぶことなく、ユーザが常に携帯しているスマートフォンをHMD操作のコントローラとして利用することができる。 According to the present invention, in the case where the controller is a portable terminal that is always carried by a user such as a smartphone, images, videos, and sounds taken by the user in the past are stored, and the user himself / herself stored in the smartphone It is possible to reflect on the HMD using images, videos, and sounds taken in the past. Furthermore, when the controller is a mobile terminal that is always carried by a user such as a smartphone, the user always uses the smartphone that the user always carries as a controller for HMD operation without carrying a dedicated controller for each HMD operation. Can be used.
(6)また、本発明は、コントローラからの出力データは、コントローラのGPSからのコントローラの位置情報と、コントローラのセンサディスプレイからのユーザによる操作入力に基づいて生成された出力データを含み、表示演算部は、位置情報、及び判定された表示オブジェクトの動作に基づいて、表示オブジェクトの表示パラメータを演算して、仮想空間上に表示される表示オブジェクトの画像を生成することを特徴とすることができる。 (6) Further, according to the present invention, the output data from the controller includes output information generated based on controller position information from the controller GPS and operation input by the user from the sensor display of the controller, The unit may calculate display parameters of the display object based on the position information and the determined operation of the display object, and generate an image of the display object displayed in the virtual space. .
本発明によれば、コントローラの現在置かれている位置情報に対応してHMDに提示する仮想空間上に表示される表示オブジェクトの画像を変更することが可能となる。 According to the present invention, it is possible to change the image of the display object displayed on the virtual space presented to the HMD corresponding to the position information of the controller currently placed.
(7)また、本発明は、前記操作判定部は、実行中のアプリケーションの内容に応じて求められる複数のユーザ操作を判定し、
入力検出部は、コントローラからの出力データから、前記求められる複数のユーザ操作に対応する出力データをそれぞれ検出し、
動作判定部は、検出された出力データのうち第1の出力データに基づき表示オブジェクトの動作を判定し、検出された出力データのうち第2の出力データに基づき表示オブジェクトの動作を変換することを特徴とする。
(7) Further, according to the present invention, the operation determination unit determines a plurality of user operations required according to the contents of the application being executed,
The input detection unit detects output data corresponding to the plurality of user operations obtained from the output data from the controller,
The motion determination unit determines the motion of the display object based on the first output data among the detected output data, and converts the motion of the display object based on the second output data among the detected output data. Features.
本発明によれば、加速度センサ、ジャイロセンサを備えることで、コントローラに対する1つの操作入力(例えばタップ操作)に対応する表示オブジェクトの動作(表示オブジェクトがジャンプ)を端末のシェイクといった簡単な切り換え操作で瞬時に別の表示オブジェクトの動作(表示オブジェクトがスライディング)へ変換することができる。ユーザはHMDを装着し仮想空間に没入している場合に、操作中のコントローラを直接視認することができない。加速度センサ、ジャイロセンサにより、ユーザは端末のシェイクといった簡単で直感的な操作で確実に瞬時に表示オブジェクトの動作を変換することができる。 According to the present invention, by providing the acceleration sensor and the gyro sensor, the operation of the display object (the display object jumps) corresponding to one operation input (for example, a tap operation) to the controller can be performed by a simple switching operation such as a shake of the terminal. Instantaneous conversion to another display object action (display object sliding) is possible. When the user wears the HMD and is immersed in the virtual space, the user cannot directly see the controller being operated. With the acceleration sensor and the gyro sensor, the user can surely and instantaneously convert the operation of the display object by a simple and intuitive operation such as shaking the terminal.
(8) また、本発明は、生成画像をヘッドマウントディスプレイへ出力させる方法を、プロセッサに実行させるためのプログラムであって、該方法は、
実行中のアプリケーションの内容に応じて求められるユーザ操作を判定する操作判定ステップと、
コントローラからの出力データから、前記求められるユーザ操作に対応する出力データを検出する入力検出ステップと、
検出された前記出力データに基づき表示オブジェクトの動作を判定する動作判定ステップと、
判定された表示オブジェクトの前記動作、及び前記検出された出力データに基づいて、表示オブジェクトの表示パラメータを演算して、仮想空間上に表示される表示オブジェクトの画像を生成する表示演算ステップと、
仮想空間上の画像に生成された表示オブジェクトの画像を配置した画像を生成して前記システムに接続されたヘッドマウントディスプレイへ出力する画像生成出力ステップと、
を備えており、
前記コントローラの通信部によりインターネットを介してサーバから受信したコントローラ側インタフェースプログラムと、前記システムのシステム側インタフェースプログラムとにより、前記コントローラと前記システムが接続されていることを特徴とする、プログラムに関係する。
(8) Further, the present invention is a program for causing a processor to execute a method of outputting a generated image to a head mounted display, and the method includes:
An operation determination step for determining a user operation required according to the contents of the application being executed;
An input detection step of detecting output data corresponding to the required user operation from output data from the controller;
An operation determination step for determining the operation of the display object based on the detected output data;
A display calculation step of calculating a display parameter of the display object based on the determined operation of the display object and the detected output data, and generating an image of the display object displayed on the virtual space;
An image generation output step of generating an image in which an image of a display object generated in an image on a virtual space is arranged and outputting the generated image to a head mounted display connected to the system;
With
The controller and the system are connected to each other by a controller-side interface program received from a server via the Internet by the communication unit of the controller and a system-side interface program of the system. .
(9)また、本発明は、生成画像をヘッドマウントディスプレイへ出力するシステムの制御方法であって、
実行中のアプリケーションの内容に応じて求められるユーザ操作を判定する操作判定ステップと、
コントローラからの出力データから、前記求められるユーザ操作に対応する出力データを検出する入力検出ステップと、
検出された前記出力データに基づき表示オブジェクトの動作を判定する動作判定ステップと、
判定された表示オブジェクトの前記動作、及び前記検出された出力データに基づいて、表示オブジェクトの表示パラメータを演算して、仮想空間上に表示される表示オブジェクトの画像を生成する表示演算ステップと、
仮想空間上の画像に生成された表示オブジェクトの画像を配置した画像を生成して前記システムに接続されたヘッドマウントディスプレイへ出力する画像生成出力ステップと、
を備えており、
前記コントローラの通信部によりインターネットを介してサーバから受信したコントローラ側インタフェースプログラムと、前記システムのシステム側インタフェースプログラムとにより、前記コントローラと前記システムが接続されていることを特徴とする、方法に関係する。
(9) Further, the present invention is a system control method for outputting a generated image to a head mounted display,
An operation determination step for determining a user operation required according to the contents of the application being executed;
An input detection step of detecting output data corresponding to the required user operation from output data from the controller;
An operation determination step for determining the operation of the display object based on the detected output data;
A display calculation step of calculating a display parameter of the display object based on the determined operation of the display object and the detected output data, and generating an image of the display object displayed on the virtual space;
An image generation output step of generating an image in which an image of a display object generated in an image on a virtual space is arranged and outputting the generated image to a head mounted display connected to the system;
With
The method is characterized in that the controller and the system are connected by a controller-side interface program received from a server via the Internet by the communication unit of the controller and a system-side interface program of the system. .
この発明の上記の、及び他の特徴及び利点は、この発明の実施例の以下のより特定的な説明、添付の図面、及び請求の範囲から明らかになるであろう。 The above and other features and advantages of the present invention will become apparent from the following more specific description of the embodiments of the invention, the accompanying drawings, and the appended claims.
以下、本実施形態について説明する。図1は、本発明の一実施例に従った、システムのシステム構成図を示す。
このシステムでは、コントローラ100と本体装置120がWi−Fi、又はBluetooth(登録商標)などの無線ネットワークを介して接続され、本体装置120とヘッドマウントディスプレイ140はWi−Fi、又はBluetooth(登録商標)などの無線又は有線のネットワークを介して接続される。コントローラ100は、さらに、アンテナ110を備えており、本体装置を介さずにインターネット等のネットワークに接続してサーバ160と通信することができる。サーバ160は、プロセッサ、各種記憶装置及びデータ通信装置を中心として構成された公知のサーバコンピュータによって実現されるものであり、コントローラ100との間でデータの送受信を行う。また、サーバ160は、コントローラが複数ある場合は、コントローラ間で行う通信を管理するものである。
Hereinafter, this embodiment will be described. FIG. 1 shows a system configuration diagram of a system according to an embodiment of the present invention.
In this system, the controller 100 and the main device 120 are connected via a wireless network such as Wi-Fi or Bluetooth (registered trademark), and the main device 120 and the head mounted display 140 are connected to the Wi-Fi or Bluetooth (registered trademark). Connected via a wireless or wired network. The controller 100 further includes an antenna 110, and can communicate with the server 160 by connecting to a network such as the Internet without going through the main unit. The server 160 is realized by a well-known server computer mainly configured with a processor, various storage devices, and a data communication device, and transmits and receives data to and from the controller 100. In addition, when there are a plurality of controllers, the server 160 manages communication performed between the controllers.
コントローラの構成
コントローラ100は、少なくとも1つのプロセッサ102、少なくとも1つのインタフェース104、少なくとも1つのメモリ106、少なくとも1つのセンサディスプレイ108、及びアンテナ110を含むことができる。コントローラ100は、例えば、公知のスマートフォン、携帯端末によって実現することができる。コントローラ100は、ユーザ自らが保持、装着しており、ユーザの操作に応じた各種操作入力、及びユーザの動きに応じてユーザの動作入力、音声入力を検出することができる。
Controller Configuration The controller 100 can include at least one processor 102, at least one interface 104, at least one memory 106, at least one sensor display 108, and an antenna 110. The controller 100 can be realized by, for example, a known smartphone or mobile terminal. The controller 100 is held and worn by the user himself / herself, and can detect various operation inputs according to the user's operation and user's operation input and voice input according to the user's movement.
コントローラ側プロセッサ102は、コントローラ側インタフェースプログラム106Aの実行、各機能部への命令の指示などの各種処理を行うように構成される。コントローラ側インタフェースプログラム106Aは、後述するユーザコントローラの送信部、受信部(図2)を機能させるためのものである。 The controller-side processor 102 is configured to perform various processes such as execution of the controller-side interface program 106A and instruction instruction to each functional unit. The controller-side interface program 106A is for causing a transmission unit and a reception unit (FIG. 2) of the user controller described later to function.
コントローラ側インタフェースプログラム106Aは、後述する送信部204を機能させることにより、ネットワーク180を介してコントローラ100から本体装置120への出力データの送信を行う。また、後述する受信部206を機能させることにより、本体装置120からコントローラ100へユーザが仮想空間で経験する画像等の経験情報を含む各種データの受信を行うことができる。 The controller-side interface program 106 </ b> A transmits output data from the controller 100 to the main device 120 via the network 180 by causing a transmission unit 204 described later to function. In addition, by causing the receiving unit 206 described later to function, various types of data including experience information such as images experienced by the user in the virtual space can be received from the main body device 120 to the controller 100.
コントローラ側インタフェース104は、ネットワーク180を介して本体装置120への出力データの送信、及び本体装置120からのデータの受信を行うインタフェースであり、コントローラ側インタフェースプログラム106Aを実装することにより実現される。より詳細には、コントローラ側インタフェース104は、コントローラに内蔵された各種センサから得られたデータ、コントローラのメモリに格納された画像等の出力データを本体装置へ送信し、及び/又はユーザがヘッドマウント装置を装着して、仮想空間に没入している際に、ユーザが仮想空間で経験した画像、動画等の経験情報を本体装置から受信するインタフェースである。 The controller-side interface 104 is an interface that transmits output data to the main device 120 and receives data from the main device 120 via the network 180, and is realized by installing the controller-side interface program 106A. More specifically, the controller-side interface 104 transmits output data such as data obtained from various sensors built in the controller, images stored in the memory of the controller, and / or the head mounted by the user. This is an interface for receiving experience information such as images and moving images experienced by the user in the virtual space from the main unit when the device is attached and immersed in the virtual space.
コントローラ側メモリ106は、コントローラ側インタフェースプログラム106Aを格納する。また、コントローラ側メモリ106は、ユーザにより過去に撮像された画像、動画、及び過去に格納されたメモ情報等の各種データ、及びユーザの操作、動作に応じて生じる各種センサから得られたデータを格納することができる。 The controller side memory 106 stores a controller side interface program 106A. In addition, the controller-side memory 106 stores various data such as images and moving images captured in the past by the user, memo information stored in the past, and data obtained from various sensors generated according to user operations and operations. Can be stored.
センサディスプレイ108は、タッチセンサであり、ユーザからのスワイプ操作、ピンチイン・ピンチアウト操作、タップ操作を検出する。センサディスプレイを備えることにより、加速度センサ、ジャイロセンサ、キー、ボタンのみを備えたコントローラではできなかったユーザからのスワイプ操作、ピンチイン・ピンチアウト操作を検出することが可能になる。ユーザはスワイプ、ピンチイン・ピンチアウト操作により、直感的な細かい操作を行うことができる。さらに、ユーザは仮想空間に没入している場合に、操作中のコントローラのキー、ボタンから指が外れることがあり、このような場合一度ヘッドマウント装置を外して外界位置を確認しなければならなかった。センサディスプレイによるスワイプ操作、タップ操作、又はピンチ操作は、キー、ボタンの位置を確認しなくとも、直感的に操作することができる。 The sensor display 108 is a touch sensor, and detects a swipe operation, a pinch-in / pinch-out operation, and a tap operation from the user. By providing the sensor display, it is possible to detect a swipe operation and a pinch-in / pinch-out operation from a user that cannot be performed by a controller including only an acceleration sensor, a gyro sensor, a key, and a button. The user can perform intuitive detailed operations by swiping, pinching in and pinching out. Furthermore, when the user is immersed in the virtual space, the finger may come off from the keys and buttons of the controller being operated. In such a case, the head mount device must be removed once to check the position of the outside world. It was. The swipe operation, tap operation, or pinch operation using the sensor display can be performed intuitively without confirming the positions of the keys and buttons.
コントローラ100はアンテナ110を備え、コントローラ100自体がインターネットなどの外部ネットワークとの通信機能を有している。コントローラ100は、外部ネットワークを介して入手可能な様々な情報、気象情報、地図情報、アプリケーション等をアプリケーション実行中に本体装置に負荷をかけることなくリアルタイムに取得して、本体装置で実行しているアプリケーション、HMDへの表示画面に反映することが可能となる。また、コントローラは、アンテナ110により、インターネット等のネットワークを介して、予めサーバ160からユーザコントローラへコントローラ側インタフェースプログラム106Aをダウンロードし、ユーザコントローラへインストールすることができる。ユーザはコントローラ100へコントローラ側インタフェースプログラム106Aをインストールすることにより、ヘッドマウント装置に専用のコントローラを用いることなく任意のコントローラ、例えばスマートフォンを用いて、コントローラと、本体装置との接続が可能となり、コントローラからの出力データをヘッドマウント装置のディスプレイ表示へ反映させることができる。 The controller 100 includes an antenna 110, and the controller 100 itself has a communication function with an external network such as the Internet. The controller 100 acquires various information, weather information, map information, applications, and the like that can be obtained via an external network in real time without applying a load to the main unit during application execution, and executes them on the main unit. It becomes possible to reflect on the display screen to the application and HMD. In addition, the controller can download the controller-side interface program 106A from the server 160 to the user controller in advance via the network such as the Internet using the antenna 110 and install it in the user controller. By installing the controller-side interface program 106A in the controller 100, the user can connect the controller and the main device using any controller, for example, a smartphone, without using a dedicated controller for the head mount device. Can be reflected on the display of the head mounted device.
コントローラ100は、さらにユーザからの音声入力を検出するマイク、ユーザによる動作入力を検出する加速度センサ、ジャイロセンサ、及びボタン、キー、カメラ、GPS、バイブレーション装置(図示せず)を備えることができる。 The controller 100 can further include a microphone that detects voice input from the user, an acceleration sensor that detects motion input by the user, a gyro sensor, and buttons, keys, a camera, GPS, and a vibration device (not shown).
マイクはコントローラを保持・装着しているユーザによるユーザの発声等を検出する。マイクを備えることによって、ユーザの発声した言葉をHMDへ表示される表示オブジェクトに反映させることができる。また、メモリに格納されている音声認識アプリケーションを用いて、ユーザの発声した言葉を音声認識して、例えば、本体装置において実行されているゲームアプリケーション上で、呪文を唱えると扉が開くなどの動作を表示オブジェクトに行わせることができる。 The microphone detects the utterance of the user by the user holding and wearing the controller. By providing the microphone, the words spoken by the user can be reflected in the display object displayed on the HMD. In addition, the voice recognition application stored in the memory is used for voice recognition of the words spoken by the user. For example, when a spell is cast on a game application running on the main unit, the door opens. Can be made to display objects.
加速度センサ、ジャイロセンサは、コントローラを保持・装着しているユーザの動き、例えばユーザがコントローラを振り回す動作、物を投げる動作を検出することができる。さらに、加速度センサによりユーザの歩数を検出することができる。また、加速度センサ、ジャイロセンサ、及びセンサディスプレイを備えることで、コントローラに対する1つの操作入力(例えばタップ操作)に対応する表示オブジェクトの動作(表示オブジェクトがジャンプ)を端末のシェイクといった簡単な切り換え操作で瞬時に別の表示オブジェクトの動作(表示オブジェクトがスライディング)へ変換することができる。特にタップ操作は、HMDを装着しているユーザにとって簡単な操作であるので、アプリケーション上で様々な表示オブジェクトの動作、例えば撃つ、斬る、ジャンプする動作をタップ操作に対して割り当てる。ユーザはHMDを装着し仮想空間に没入している場合に、操作中のコントローラを直接視認することができない。加速度センサ、ジャイロセンサにより、ユーザは端末のシェイクといった簡単で直感的な操作で確実に瞬時に表示オブジェクトの動作を変換することができる。 The acceleration sensor and the gyro sensor can detect the movement of the user holding and wearing the controller, for example, the movement of the user swinging the controller and the movement of throwing an object. Further, the number of steps of the user can be detected by the acceleration sensor. In addition, by providing an acceleration sensor, a gyro sensor, and a sensor display, the operation of the display object (the display object jumps) corresponding to one operation input (for example, a tap operation) to the controller can be performed with a simple switching operation such as a terminal shake. Instantaneous conversion to another display object action (display object sliding) is possible. In particular, since the tap operation is a simple operation for the user wearing the HMD, various display object operations such as shooting, cutting, and jumping operations are assigned to the tap operation on the application. When the user wears the HMD and is immersed in the virtual space, the user cannot directly see the controller being operated. With the acceleration sensor and the gyro sensor, the user can surely and instantaneously convert the operation of the display object by a simple and intuitive operation such as shaking the terminal.
ボタン、キーはユーザコントローラを保持・装着しているユーザによる操作入力を受け付ける。
カメラにより、ユーザが写真や動画を撮ることができ、撮られた写真や動画はユーザコントローラのメモリに格納される。ユーザにより過去に撮像された画像や動画をヘッドマウントディスプレイに表示された仮想空間に反映することができる。
The buttons and keys accept an operation input by a user who holds and wears the user controller.
The camera allows the user to take a picture or a moving picture, and the taken picture or moving picture is stored in the memory of the user controller. Images and videos captured in the past by the user can be reflected in the virtual space displayed on the head mounted display.
GPSは、コントローラを保持・装着しているユーザの位置を検出する。従って、例えば検出されたユーザの位置に応じて、ヘッドマウントディスプレイの画面表示を生成することができる。例えば、ユーザが北海道に位置する場合に、ユーザがHMDに表示される仮想空間内で操作する表示オブジェクトのキャラクタを北海道のキャラクタとすることができる。 The GPS detects the position of the user holding and wearing the controller. Therefore, for example, the screen display of the head mounted display can be generated according to the detected position of the user. For example, when the user is located in Hokkaido, the character of the display object that the user operates in the virtual space displayed on the HMD can be the Hokkaido character.
バイブレーション装置は、例えば、ヘッドマウント装置を装着して、ゲームをプレイしているユーザが、ヘッドマウントディスプレイに表示されている仮想空間内で攻撃などを受けた際に、ゲームに連動させてコントローラをバイブレーションすることができる。仮想空間内でアプリケーション実行中にユーザが経験した情報は、本体装置側インタフェースプログラム126Aによりネットワーク180を介してインタフェースプログラム106Aへ送信される。そして、コントローラ側インタフェースプログラム106Aが受信したユーザが経験した情報に基づいて、バイブレーション装置がコントローラをバイブレーションさせる。コントローラがバイブレーションすることで、ユーザは一層仮想空間に没入することができる。 For example, when a user who is wearing a head mounted device and is playing a game receives an attack or the like in a virtual space displayed on the head mounted display, the vibration device is linked with the game. Can vibrate. Information experienced by the user during application execution in the virtual space is transmitted to the interface program 106A via the network 180 by the main body side interface program 126A. Then, based on the information experienced by the user received by the controller-side interface program 106A, the vibration device vibrates the controller. As the controller vibrates, the user can further immerse in the virtual space.
本体装置の構成
本体装置120は、ユーザコントローラ100、ヘッドマウントディスプレイ140との間でデータの送受信を行うものであり、少なくとも1つのプロセッサ122、少なくとも1つのインタフェース124、少なくとも1つのメモリ126を含むことができる。
Configuration of Main Unit The main unit 120 transmits and receives data to and from the user controller 100 and the head mounted display 140, and includes at least one processor 122, at least one interface 124, and at least one memory 126. Can do.
本体装置側プロセッサ122は、各機能部への命令の指示、ゲームなど各種アプリケーションの実行、本体装置側インタフェースプログラム126Aの実行、画像生成出力処理を行うための画像生成プログラム126Bの実行、音生成処理などの各種処理を行うように構成される。 The main device side processor 122 instructs each function unit, executes various applications such as a game, executes the main device side interface program 126A, executes an image generation program 126B for performing image generation output processing, and sound generation processing It is configured to perform various processes such as.
本体装置側インタフェース124は、コントローラ100からネットワークを介して送信された出力データの受信、本体装置120からネットワークを介して所定のデータを送信、及びHMD140へ表示オブジェクトを配置した生成画像を出力する入出力インタフェースである。 The main apparatus side interface 124 receives output data transmitted from the controller 100 via the network, transmits predetermined data from the main apparatus 120 via the network, and outputs a generated image in which display objects are arranged to the HMD 140. Output interface.
本体装置側メモリ126は本体装置側インタフェースプログラム126A、画像生成プログラム126B、及び本体装置のプロセッサにより実行される各種機能を実現するためのプログラム、データを格納する。 The main device side memory 126 stores a main device side interface program 126A, an image generation program 126B, and programs and data for realizing various functions executed by the processor of the main device.
本体装置側インタフェースプログラム126Aは後述する入力検出部304(図3)を機能させるためのものである。本体装置側インタフェースプログラム126Aを実行することにより、本体装置120はコントローラ100から送信された出力データを検出して受信、及び本体装置120からコントローラ100へ各種データを送信する。本体装置側インタフェースプログラム126Aは、予め本体装置にインストールされている。例えば、本体装置側インタフェースプログラム126Aは、本体装置に接続されたインターネット、イントラネット等のネットワーク(図示せず)を介して、予め本体装置へダウンロードし、又は記録媒体を用いてインストールすることができる。本体装置側インタフェースプログラム126Aをインストールし、コントローラに後述するコントローラ側インタフェースプログラム106Aをインストールすることで、ユーザはヘッドマウント装置に専用のコントローラを用いることなく任意のコントローラ、例えば携帯端末、スマートフォンを用いて、ユーザコントローラ100からのユーザ入力等をHMDへ反映させたり、HMD上の表示、及び操作中のアプリケーション情報をユーザコントローラへ送信したりすることができる。さらに、本体装置側インタフェースプログラム126Aが複数のコントローラからの出力データをそれぞれ取得し、識別できる構成にすることにより複数のコントローラを1の本体装置120と接続することもできる。 The main unit side interface program 126A is for causing an input detection unit 304 (FIG. 3) described later to function. By executing the main body side interface program 126A, the main body 120 detects and receives output data transmitted from the controller 100, and transmits various data from the main body 120 to the controller 100. The main unit side interface program 126A is preinstalled in the main unit. For example, the main unit side interface program 126A can be downloaded to the main unit in advance via a network (not shown) such as the Internet or an intranet connected to the main unit, or can be installed using a recording medium. By installing the main body apparatus-side interface program 126A and installing a controller-side interface program 106A, which will be described later, in the controller, the user can use an arbitrary controller such as a portable terminal or a smartphone without using a dedicated controller for the head mount apparatus. The user input or the like from the user controller 100 can be reflected in the HMD, or display on the HMD and application information during operation can be transmitted to the user controller. Furthermore, the main body apparatus side interface program 126A can acquire the output data from the plurality of controllers, respectively, so that the plurality of controllers can be connected to one main body apparatus 120.
画像生成プログラム126Bは、後述する操作判定部302、動作判定部306、表示演算部308、画像生成出力部310を機能させるためのものである。
HMD140は、本体装置120に接続されており、本体装置120から出力された生成画像を表示する。HMD140は、ユーザの保持するコントローラのセンサディスプレイ(図6の602)、ボタン、キー等を仮想的に表示するようにしても良い。
The image generation program 126B is for causing an operation determination unit 302, an operation determination unit 306, a display calculation unit 308, and an image generation output unit 310 to be described later to function.
The HMD 140 is connected to the main device 120 and displays a generated image output from the main device 120. The HMD 140 may virtually display a sensor display (602 in FIG. 6), buttons, keys, and the like of the controller held by the user.
コントローラの機能的構成
図2は、コントローラ100の機能的構成を示す図である。同図に示すように、コントローラ100は、操作部202、送信部204、受信部206、通信部208、撮像部210、又はこれらの機能の一部を備えることができる。これらの機能は、ユーザコントローラ100のメモリ106に格納された所定のプログラムがプロセッサ102によって実行されることにより実現される。ユーザコントローラの送信部、受信部はコントローラ側プロセッサによりコントローラ側インタフェースプログラム106Aを実行することにより実現できる。該インタフェースプログラム106Aはコントローラのアンテナ130を用いてインターネットを介してサーバ160より予めダウンロードされ、コントローラ100にインストールされている。
Functional Configuration of Controller FIG. 2 is a diagram showing a functional configuration of the controller 100. As shown in the figure, the controller 100 can include an operation unit 202, a transmission unit 204, a reception unit 206, a communication unit 208, an imaging unit 210, or a part of these functions. These functions are realized by the processor 102 executing a predetermined program stored in the memory 106 of the user controller 100. The transmission unit and the reception unit of the user controller can be realized by executing the controller side interface program 106A by the controller side processor. The interface program 106A is downloaded in advance from the server 160 via the Internet using the antenna 130 of the controller and installed in the controller 100.
操作部202は、コントローラに設けられている各種のセンサから、ユーザによりコントローラに対して行われた所定の動作・操作に関する入力を取得する。各種のセンサとは、ディスプレイセンサ、加速度センサ、ジャイロセンサ、マイクセンサ、GPSセンサである。また各種のセンサには、ボタン、キー等の他の操作部からの入力を組み合わせる(例えばコントローラのボタンを押しながらコントローラを振る動作を行う操作入力等)ことができる。ユーザがコントローラを動かすと、操作部は、加速度センサ、ジャイロセンサから該動作に対する加速度、角速度を取得する。ユーザがコントローラのセンサディスプレイに対してスワイプ操作、ピンチイン・ピンチアウト操作、タップ操作を行うと、操作部はセンサディスプレイから、それら操作の種類及び/又はそれら操作に関する各種データ、例えばディスプレイへの接触(タップ)、接触時間(長押し/タップ)、所定時間内の接触回数(連打、1回押し)、ディスプレイへの連続した接触の変位量(スワイプ距離、ピンチ距離)、接触変位方向(スワイプ方向、ピンチ方向)、接触変位速度(スワイプ速度、ピンチ速度)を取得する。ユーザがコントローラのマイクに対して発声すると、操作部202はマイクからユーザ音声入力を取得する。次に、操作部202はこれらの情報(加速度・角速度、操作入力情報、音声入力情報、位置情報)を逐次メモリへ格納する。 The operation unit 202 acquires an input related to a predetermined operation / operation performed on the controller by the user from various sensors provided in the controller. Various sensors are a display sensor, an acceleration sensor, a gyro sensor, a microphone sensor, and a GPS sensor. Various sensors can be combined with inputs from other operation units such as buttons and keys (for example, operation inputs for performing an operation of shaking the controller while pressing a button of the controller). When the user moves the controller, the operation unit acquires the acceleration and angular velocity for the operation from the acceleration sensor and the gyro sensor. When the user performs a swipe operation, a pinch-in / pinch-out operation, or a tap operation on the sensor display of the controller, the operation unit may contact the type of the operation and / or various data relating to the operation, for example, contact with the display ( Tap), contact time (long press / tap), number of contacts within a predetermined time (continuous hit, single press), displacement amount of continuous contact to the display (swipe distance, pinch distance), contact displacement direction (swipe direction, Pinch direction) and contact displacement speed (swipe speed, pinch speed). When the user speaks to the microphone of the controller, the operation unit 202 acquires user voice input from the microphone. Next, the operation unit 202 sequentially stores these pieces of information (acceleration / angular velocity, operation input information, voice input information, position information) in the memory.
ここで、本実施例においては加速度センサ、ジャイロセンサから得られた加速度、角速度を動作入力情報と称し、ユーザがセンサディスプレイ上でスワイプ操作、タップ操作、ピンチ操作を行った際にセンサディスプレイから得られるセンサディスプレイへの接触、ディスプレイへの連続した接触の変位量、接触変位方向、接触変位速度を操作入力情報と称する。 In this embodiment, the acceleration and angular velocity obtained from the acceleration sensor and gyro sensor are referred to as operation input information, and obtained from the sensor display when the user performs a swipe operation, a tap operation, or a pinch operation on the sensor display. The contact to the sensor display, the displacement amount of the continuous contact to the display, the contact displacement direction, and the contact displacement speed are referred to as operation input information.
送信部204は、メモリに格納されたこれらの情報を、本体装置からのリクエストに応じてネットワーク180を介して入力検出部304へ出力データとして送信する。出力データは、操作部202からのコントローラ100に対して行われた所定の動作・操作に関する動作入力情報、操作入力情報、音声入力情報、位置情報、コントローラ100のメモリ106に格納されている画像や動画、又はこれらの組み合わせに対応する。 The transmission unit 204 transmits these pieces of information stored in the memory as output data to the input detection unit 304 via the network 180 in response to a request from the main device. The output data includes operation input information, operation input information, voice input information, position information, and images stored in the memory 106 of the controller 100 regarding predetermined operations / operations performed on the controller 100 from the operation unit 202. It corresponds to a moving image or a combination thereof.
コントローラ100は本体装置120から送信される情報を受信する受信部206を備えることができる。受信部206は、ユーザがHMDを装着して仮想空間に没入している際に、ユーザが仮想空間内で経験した情報を受信する。例えば、ゲームをプレイしているユーザが、HMD140に表示されている仮想空間内で攻撃などを受けた際に、その攻撃された情報を受信する。そしてコントローラ側プロセッサは、受信した攻撃された情報に基づいてバイブレーション機能を実行し、コントローラをバイブレーションすることができる。また、受信部206はゲームのプレイ中の映像を本体装置より受信することができる。コントローラ側プロセッサ102は、受信した映像をコントローラのメモリへ格納したり、コントローラ側ディスプレイ108へ表示したりすることができる。 The controller 100 can include a receiving unit 206 that receives information transmitted from the main device 120. The receiving unit 206 receives information experienced by the user in the virtual space when the user wears the HMD and is immersed in the virtual space. For example, when a user who is playing a game receives an attack or the like in a virtual space displayed on the HMD 140, the attacked information is received. Then, the controller-side processor can vibrate the controller by executing a vibration function based on the received attacked information. Further, the receiving unit 206 can receive an image during game play from the main device. The controller side processor 102 can store the received video in the memory of the controller or display it on the controller side display 108.
通信部208は、様々なデータ、例えば、プログラムをサーバ160からダウンロードしたり、ユーザの操作中映像をサーバ160にアップロードしたり、コントローラが複数ある場合に他のコントローラと直接通信するためのものであり、通常、インターネットを通じて通信を行う。通信部208を備えることにより、コントローラ100は本体装置と接続されていなくとも、外部サーバ160に接続することが可能である。従って、コントローラは本体装置120に接続されていなくとも、インターネットに接続可能な環境があれば、任意の場所でコントローラ側インタフェースプログラム106Aをインストール、アップデートすることができる。また、コントローラ100は、インターネットから取得可能な様々な情報(気象情報、株価情報、地図情報)を取得して、ユーザの操作中画面や、ユーザ操作中のゲーム内容に反映することができる。また、コントローラは、コントローラが複数ある場合に、本体装置を介さずに通信部を介して他のコントローラと通信することができる。 The communication unit 208 is used for downloading various data, for example, programs from the server 160, uploading a user's operating video to the server 160, or directly communicating with other controllers when there are a plurality of controllers. Yes, usually communicate over the Internet. By including the communication unit 208, the controller 100 can be connected to the external server 160 even if it is not connected to the main device. Therefore, even if the controller is not connected to the main unit 120, the controller-side interface program 106A can be installed and updated at any location as long as there is an environment that can be connected to the Internet. Further, the controller 100 can acquire various information (meteorological information, stock price information, map information) that can be acquired from the Internet, and can reflect the information on the user operating screen and the game content being operated by the user. In addition, when there are a plurality of controllers, the controller can communicate with other controllers via the communication unit without going through the main unit.
撮像部210は、実空間における画像や動画を撮ることができる。撮像部を備えることにより、ユーザにより予め撮像された画像や動画を、ユーザの操作中画面や、プレイ中のゲーム画面に反映することができる。 The imaging unit 210 can take images and moving images in real space. By providing the imaging unit, it is possible to reflect an image or a moving image captured in advance by the user on the user operating screen or the game screen being played.
ユーザコントローラ100は更にGPS(図示せず)を備えることができる。GPSを備えることにより、GPSにより取得されたコントローラの位置情報をユーザ操作中の画面に反映することができる。例えば、コントローラが北海道に位置する場合に、HMDに表示される仮想空間内でユーザが操作する表示オブジェクトのキャラクタを北海道のキャラクタとしたり、HMDに表示される仮想空間のユーザ操作画面を北海道の背景としたりすることができる。 The user controller 100 can further include a GPS (not shown). By providing the GPS, the position information of the controller acquired by the GPS can be reflected on the screen during the user operation. For example, when the controller is located in Hokkaido, the character of the display object operated by the user in the virtual space displayed on the HMD is a Hokkaido character, or the user operation screen of the virtual space displayed on the HMD is the background of Hokkaido. It can be done.
本体装置の機能的構成
図3は、本体装置120の機能的構成を示す図である。同図に示すように、本体装置120は、操作判定部302、入力検出部304、動作判定部306、表示演算部308、画像生成出力部310を備える。これらの機能は、本体装置におけるメモリに格納された所定のプログラムがプロセッサによって実行されることにより実現される。
Functional Configuration of Main Device FIG. 3 is a diagram illustrating a functional configuration of the main device 120. As shown in the figure, the main device 120 includes an operation determination unit 302, an input detection unit 304, an operation determination unit 306, a display calculation unit 308, and an image generation output unit 310. These functions are realized by a processor executing a predetermined program stored in a memory in the main device.
操作判定部302は、まず、本体装置で実行中のアプリケーションの内容に基づいて、アプリケーションにより入力が求められるユーザ操作が何かを決定する。求められるユーザ操作とは、実行中のアプリケーションの内容、実行中のアプリケーションにおいてユーザが現在操作している状況等に基づいて定められ、実行中のアプリケーションが入力を許可する、コントローラに対するユーザ操作のことである。例えば、ユーザが仮想空間内で戦闘ゲームを行い、敵と戦闘中の操作状態では、その操作状態に対応する求められるユーザ操作は例えば、「殴る」、「撃つ」、「攻撃をかわす」である。 The operation determination unit 302 first determines what user operation is requested to be input by the application based on the contents of the application being executed in the main device. The required user operation is a user operation on the controller that is determined based on the contents of the application being executed, the situation in which the user is currently operating on the application being executed, and the application being executed permits input. It is. For example, in an operation state in which a user plays a battle game in a virtual space and is in battle with an enemy, the required user operations corresponding to the operation state are, for example, “drill”, “shoot”, and “dodge the attack” .
次に、入力検出部304は、ネットワーク180を介してコントローラ100のメモリに格納された出力データのうち、求められるユーザ操作に対応する出力データを取得する。例えば、求められるユーザ操作が「殴る」である場合に、該求められるユーザ操作に対応する出力データは、操作入力情報(タップ操作によるディスプレイへの接触)である。出力データは所定時間内における接触回数を含むこともできる。そして、入力検出部304は検出した出力データを動作判定部306へ出力する。このように、入力検出部304は、実行中のアプリケーションにおいて求められるユーザ操作が「殴る」である場合に、出力データの操作入力情報のうち、タップ操作に対応する、ディスプレイへの接触のみを検出して取得する。動作判定部306は、求められるユーザ操作に対応しない出力データ、例えば、求められるユーザ操作が「殴る」である場合に、音声入力を無視することができる。 Next, the input detection unit 304 acquires output data corresponding to the requested user operation from the output data stored in the memory of the controller 100 via the network 180. For example, when the requested user operation is “talk”, the output data corresponding to the requested user operation is operation input information (contact on the display by a tap operation). The output data can also include the number of contacts within a predetermined time. Then, the input detection unit 304 outputs the detected output data to the operation determination unit 306. In this manner, the input detection unit 304 detects only the touch on the display corresponding to the tap operation from the operation input information of the output data when the user operation required in the application being executed is “speak”. And get. The operation determination unit 306 can ignore the voice input when the output data does not correspond to the requested user operation, for example, when the requested user operation is “talk”.
このように、入力検出部304は、ネットワーク180を介してコントローラの送信部204から送信された様々な情報、ユーザによる動作入力情報(加速度センサ、ジャイロセンサから得られた加速度、角速度)、操作入力情報(スワイプ操作、ピンチイン・ピンチアウト操作の種類、及び/又はセンサディスプレイへの接触、ディスプレイへの連続した接触の変位量、接触変位方向、接触変位速度)、音声入力情報(マイクセンサから得られる音声、音量)、画像、動画、位置情報又はこれらの組み合わせである情報のうち、操作判定部302により決定された求められるユーザ操作に対応するデータをコントローラからの出力データとして検出する。 As described above, the input detection unit 304 includes various information transmitted from the transmission unit 204 of the controller via the network 180, operation input information (acceleration and angular velocity obtained from the acceleration sensor and gyro sensor) by the user, and operation input. Information (type of swipe operation, pinch-in / pinch-out operation and / or contact with sensor display, displacement amount of continuous contact with display, contact displacement direction, contact displacement speed), voice input information (obtained from microphone sensor) Among the information that is sound, volume), image, moving image, position information, or a combination thereof, data corresponding to the requested user operation determined by the operation determination unit 302 is detected as output data from the controller.
また、入力検出部304は、所定のタイミングで所定時間の間、出力データを検出するようにしてもよい。さらに入力検出部304は、出力データを受信するタイミング間隔を変更することができる。例えば、表示オブジェクトに仮想空間内で扉のノブを回すといった粗い操作を行わせる場合は、検出するタイミング間隔を長くして1秒間に15回の入力検出を行い、仮想空間内で表示オブジェクトに自動車を運転させるなどのハンドルの細かい動きを逐次画面に反映させることの必要な動作を行わせる場合は、検出するタイミング間隔を短くして1秒間に60回の入力検出を行うことができる。 Further, the input detection unit 304 may detect output data at a predetermined timing for a predetermined time. Further, the input detection unit 304 can change the timing interval for receiving the output data. For example, if the display object is to be subjected to a rough operation such as turning a door knob in the virtual space, the detection timing interval is increased to detect the input 15 times per second, and the display object is moved to the vehicle in the virtual space. In the case of performing an operation necessary to reflect the detailed movement of the steering wheel sequentially on the screen, such as driving the vehicle, it is possible to detect input 60 times per second by reducing the detection timing interval.
実行中のアプリケーションの内容、実行中のアプリケーションの内容に対応する求められるユーザ操作と、求められるユーザ操作に対応する出力データとの関係は表1に例示的に示される。表1に示されるアプリケーションの内容、求められるユーザ操作、出力データは単なる例示に過ぎず、当業者であれば他のユーザ操作状態、他のユーザ操作が存在することは容易に理解できるであろう。 Table 1 exemplarily shows the relationship between the contents of the application being executed, the required user operation corresponding to the contents of the application being executed, and the output data corresponding to the required user operation. The contents of the application, required user operations, and output data shown in Table 1 are merely examples, and those skilled in the art will easily understand that other user operation states and other user operations exist. .
次に動作判定部306は、求められるユーザ操作に応じて、入力検出部304により検出された出力データに基づき、ヘッドマウントディスプレイに表示される表示オブジェクトに行わせる動作を判定する。例えば、求められるユーザ操作が「殴る」である場合に、出力データに含まれるディスプレイへの接触感知、接触回数に応じて、仮想空間内で表示オブジェクトに行わせる動作(殴る、殴る頻度)を判定する。表示オブジェクトとは、ユーザによる仮想空間上で操作対象となるオブジェクトであり、例えばユーザがゲームを行っている場合はゲームキャラクタやゲームアイテムであり、ユーザが撮像した画像、動画を表示している場合は、それらの画像、動画である。 Next, the action determination unit 306 determines an action to be performed on the display object displayed on the head mounted display, based on the output data detected by the input detection unit 304, in accordance with the requested user operation. For example, when the requested user operation is “speaking”, the action (speaking and scolding frequency) to be performed by the display object in the virtual space is determined according to the touch detection to the display included in the output data and the number of touches. To do. A display object is an object to be operated in a virtual space by the user. For example, when the user is playing a game, the display object is a game character or a game item, and when an image or video captured by the user is displayed. Are those images and videos.
例えば、動作判定部306は、求められるユーザ操作が「画像のスライド」である場合に、出力データの操作入力情報のうち、スワイプ操作の方向、変位量、変位速度を取得する。そして、動作判定部は、ディスプレイへのスワイプ操作の方向、変位量、変位速度に応じて、表示オブジェクトに行わせる動作(画像のスライド)を判定する。 For example, when the requested user operation is “slide image”, the motion determination unit 306 acquires the swipe operation direction, displacement amount, and displacement speed from the operation input information of the output data. Then, the action determination unit determines the action (slide of the image) to be performed by the display object according to the direction of the swipe operation to the display, the displacement amount, and the displacement speed.
例えば、動作判定部306は、求められるユーザ操作が「2つの表示オブジェクトをくっつける」である場合に、出力データの操作入力情報のうち、ディスプレイへのピンチイン操作(又はスワイプ操作)の方向、変位量、変位速度を取得する。そして、動作判定部は、ディスプレイへのピンチイン操作の方向、変位量、変位速度に応じて、表示オブジェクトに行わせる動作(2つの表示オブジェクトを1つに結合させる)を判定する。動作判定部はユーザによるディスプレイへのピンチイン操作の方向、変位量、変位速度に応じて、表示オブジェクトを移動させる方向、移動させる速度を決定することができる。 For example, when the requested user operation is “attach two display objects”, the operation determination unit 306 includes the direction and displacement amount of the pinch-in operation (or swipe operation) to the display in the operation input information of the output data. Get the displacement speed. Then, the motion determination unit determines a motion to be performed by the display object (two display objects are combined into one) according to the direction of the pinch-in operation on the display, the amount of displacement, and the displacement speed. The motion determination unit can determine the direction in which the display object is moved and the speed at which the display object is moved according to the direction of the pinch-in operation on the display by the user, the displacement amount, and the displacement speed.
例えば、動作判定部306は、求められるユーザ操作が「ハンドル操作」である場合に、出力データの動作入力情報のうち、加速度、角速度を取得する。なお、「ハンドル操作」は細かい操作が必要となることから、動作判定部は一定時間に加速度、角速度を取得する回数を多くすることができる。そして、動作判定部は、加速度、加速度に応じて、表示オブジェクトに行わせる動作(表示オブジェクトの方向を変える)を判定する。 For example, when the requested user operation is “handle operation”, the motion determination unit 306 acquires acceleration and angular velocity in the motion input information of the output data. Since the “handle operation” requires a fine operation, the motion determination unit can increase the number of times of acquiring acceleration and angular velocity in a certain time. Then, the motion determination unit determines a motion (changes the direction of the display object) to be performed by the display object according to the acceleration and the acceleration.
例えば、動作判定部306は、求められるユーザ操作が「振り回す」である場合に、出力データの動作入力情報のうち、加速度、角速度を取得する。なお、「振り回す」操作は粗い検知で十分な場合、動作判定部は一定時間に加速度、角速度を取得する回数を少なくすることができる。そして、動作判定部は、加速度、加速度に応じて、表示オブジェクトに行わせる動作(表示オブジェクトを動かす・振り回す)を判定する。動作判定部は加速度、角速度に応じて、表示オブジェクトを振り回す強さ、方向を決定することができる。 For example, the motion determination unit 306 acquires acceleration and angular velocity in the motion input information of the output data when the requested user operation is “swing”. Note that when the “swing” operation is sufficient for rough detection, the motion determination unit can reduce the number of times of acquiring acceleration and angular velocity in a certain time. Then, the motion determination unit determines a motion (moving or swinging the display object) to be performed by the display object according to the acceleration and the acceleration. The motion determination unit can determine the strength and direction of swinging the display object according to the acceleration and the angular velocity.
例えば、動作判定部306は、求められるユーザ操作が「投げる」である場合に、出力データの動作入力情報のうち、加速度、角速度を取得する。そして、動作判定部は、加速度、角速度に応じて、表示オブジェクトに行わせる動作(表示オブジェクトを投げる)を判定する。さらに、動作半値部は加速度、角速度に応じて、表示オブジェクトを投げる強さ、方向を決定したりすることができる。 For example, when the requested user operation is “throw”, the motion determination unit 306 acquires acceleration and angular velocity in the motion input information of the output data. The motion determination unit determines a motion (throws the display object) to be performed by the display object according to the acceleration and the angular velocity. Further, the motion half-value portion can determine the strength and direction of throwing the display object according to the acceleration and angular velocity.
例えば、動作判定部306は、求められるユーザ操作が「大声を出す」である場合に、出力データのうち、音声入力情報を取得する。そして、動作判定部は、音量に応じて、表示オブジェクトに行わせる動作(表示オブジェクトを拡大)を判定する。さらに、動作判定部は音量に応じて、表示オブジェクトを拡大する大きさを決定したりすることができる。 For example, when the requested user operation is “loud”, the motion determination unit 306 acquires voice input information from the output data. Then, the motion determination unit determines a motion (enlarged display object) to be performed by the display object according to the volume. Furthermore, the motion determination unit can determine the size for enlarging the display object according to the volume.
次に、表示演算部308は、動作判定部306が判定した動作、及び該動作に対応付けられた表示オブジェクトに対する操作データに基づいて、表示オブジェクトの表示演算を行い、これにより表示オブジェクトの画像を生成する。操作データとは、表示オブジェクトを動かす際の、加速度、角速度、変位量、変位速度、方向等を含む。いわゆる3次元の画像を生成する場合には、表示オブジェクトの各頂点のデータ(頂点のワールド座標系での位置座標、色データ)を含む表示パラメータを演算し、演算された表示パラメータに基づいて、表示オブジェクトの画像をフレーム毎に順次生成する。 Next, the display calculation unit 308 performs display calculation of the display object based on the motion determined by the motion determination unit 306 and the operation data for the display object associated with the motion, thereby obtaining an image of the display object. Generate. The operation data includes acceleration, angular velocity, displacement amount, displacement velocity, direction, and the like when moving the display object. When generating a so-called three-dimensional image, a display parameter including data of each vertex of the display object (position coordinates of the vertex in the world coordinate system, color data) is calculated, and based on the calculated display parameter, The image of the display object is sequentially generated for each frame.
画像生成出力部310は、起動しているヘッドマウント装置のディスプレイに表示されている画面に、演算された表示オブジェクトを配置した画像をフレーム毎に生成し、その画面へ出力する。HMDは画像生成出力部より出力された画像を表示する。 The image generation / output unit 310 generates, for each frame, an image in which the calculated display objects are arranged on the screen displayed on the display of the activated head mount device, and outputs the generated image to the screen. The HMD displays the image output from the image generation output unit.
図4は、ユーザのスワイプ操作に基づいて生成された本実施例に従ったHMDに表示される画面400の一例である。入力検出部より取得した出力データがスワイプ操作である場合に、スワイプした方向へ、操作対象である表示オブジェクト(図5Aでは6つの画像)をスライドする。図4に示すように、ユーザの操作するセンサディスプレイに対応する表示(402、404)を仮想的にHMD上へ表示することで、HMDを装着しているユーザが完全に仮想空間に没入している場合でも、ユーザは、ユーザが行っている、又は行おうとしている操作を確実に把握することができる。 FIG. 4 is an example of a screen 400 displayed on the HMD according to the present embodiment generated based on the user's swipe operation. When the output data acquired from the input detection unit is a swipe operation, the display object (six images in FIG. 5A) is slid in the swipe direction. As shown in FIG. 4, the display (402, 404) corresponding to the sensor display operated by the user is virtually displayed on the HMD so that the user wearing the HMD is completely immersed in the virtual space. Even in such a case, the user can surely grasp the operation that the user is performing or is about to perform.
図5A、Bは、ユーザのタップ操作に基づいて生成された本実施例に従ったHMDに表示される画面(500A、500B)の一例である。入力検出部より受け取った出力データがタップ操作に対応する場合に、操作対象である表示オブジェクト(図5Aでは手502、図5Bでは銃504)は撃つ・殴る動作を行う。例えば、ユーザがコントローラ100のセンサディスプレイをタップするたびに、表示オブジェクトは撃つ・殴る動作を行う。さらに出力データに一定時間内にタップされた回数が含まれる場合に、そのタップ回数に応じてオブジェクトが撃つ・殴る動作の速さを変更することができる。 5A and 5B are examples of screens (500A and 500B) displayed on the HMD according to the present embodiment generated based on the user's tap operation. When the output data received from the input detection unit corresponds to the tap operation, the display object (the hand 502 in FIG. 5A and the gun 504 in FIG. 5B) that is the operation target shoots and strikes. For example, each time the user taps the sensor display of the controller 100, the display object performs a shooting / stroke action. Furthermore, when the output data includes the number of times tapped within a certain time, the speed of the motion of the object to shoot and beat can be changed according to the number of taps.
図6は、ユーザのタップ操作に基づいて生成された本実施例に従ったHMDに表示される画面600の一例である。図6の表示画面600は仮想空間上に仮想的に表示されたセンサディスプレイ602を含む。仮想的に表示されたセンサディスプレイ602は、仮想的にユーザの指604(操作指)を表示することができる。仮想空間に没入しているユーザは、HMDを装着しており外界情報を遮断されるため、実空間にあるコントローラを詳細に認識することができない。実空間にあるコントローラのセンサディスプレイを仮想的に仮想空間上に表示することで、ユーザはヘッドマウントディスプレイを外すことなく、コントローラへの各種操作を把握することができる。 FIG. 6 is an example of a screen 600 displayed on the HMD according to the present embodiment generated based on the user's tap operation. The display screen 600 of FIG. 6 includes a sensor display 602 that is virtually displayed in a virtual space. The virtually displayed sensor display 602 can virtually display a user's finger 604 (operation finger). Since the user who is immersed in the virtual space is wearing the HMD and is blocked from outside information, the user cannot recognize the controller in the real space in detail. By virtually displaying the sensor display of the controller in the real space on the virtual space, the user can grasp various operations on the controller without removing the head mounted display.
図7A、B、Cは、ユーザのピンチイン・ピンチアウト操作に基づいて生成された本実施例に従ったHMDに表示される画面の一例である。入力検出部より受け取った出力データがピンチアウト操作に対応する場合に、操作対象である表示オブジェクト(図7Aでは黒い円内の画像)に対して、該操作入力に対応付けられた表示オブジェクトのズームイン動作を行う。さらに入力検出部より受け取った出力データに操作の変位量が含まれる場合には、その変位量に基づき、ズームイン動作の画面操作量を決定することができる。さらに、入力検出部より受け取った出力データの種類がピンチアウト操作である場合に、ユーザにより選択された操作対象である表示オブジェクト(図7Bでは4と描かれた中心の○)に対してピンチアウト操作が行われると、該表示オブジェクトは2つのオブジェクト(図7Bでは水滴)に分離される(オブジェクトが2つにちぎられる)。オブジェクトの分離は、スワイプ操作により実現することもできる。入力検出部より受け取った出力データがピンチイン操作である場合に、操作対象である表示オブジェクト(図7Cでは2と描かれた2つの丸)を結合して、大きな4と描かれた1つの丸にすることができる(2つのオブジェクトがくっつけられる)。 7A, 7B, and 7C are examples of a screen displayed on the HMD according to the present embodiment generated based on the user's pinch-in / pinch-out operation. When the output data received from the input detection unit corresponds to a pinch-out operation, the display object associated with the operation input is zoomed in on the display object that is the operation target (the image in the black circle in FIG. 7A). Perform the action. Furthermore, when the amount of operation displacement is included in the output data received from the input detection unit, the screen operation amount for the zoom-in operation can be determined based on the amount of displacement. Further, when the type of output data received from the input detection unit is a pinch-out operation, a pinch-out is performed with respect to a display object (center circle drawn as 4 in FIG. 7B) selected by the user. When an operation is performed, the display object is separated into two objects (water droplets in FIG. 7B) (the object is divided into two). The separation of objects can also be realized by a swipe operation. When the output data received from the input detection unit is a pinch-in operation, the display object that is the operation target (two circles drawn as 2 in FIG. 7C) is combined into one big circle drawn as 4 (Two objects can be attached).
図8A、B、Cは、本実施例に従ったHMDに表示される画面の一例である。入力検出部より受け取った出力データが加速度センサ・ジャイロセンサからのユーザの動作入力情報に対応する場合に、操作対象である表示オブジェクト(図8Aでは剣、図8Bでは釣り竿、図8Cではダーツ)に対して、該表示オブジェクトに、図8Aでは剣を振り回す動作、又は図8B及びCでは釣り竿、ダーツを投げる動作を行わせる。さらに入力検出部より受け取った出力データに含まれる加速度に基づき、表示オブジェクトを所定の速度、加速度で移動させ、又は表示オブジェクトを所定の強さで振る・投げることができる。動作判定部はさらに入力検出部より受け取った出力データが角速度を含む場合には、表示オブジェクトを所定の方向へ移動させることができる。 8A, 8B, and 8C are examples of screens displayed on the HMD according to the present embodiment. When the output data received from the input detection unit corresponds to the user's motion input information from the acceleration sensor / gyro sensor, the display object to be operated (sword in FIG. 8A, fishing rod in FIG. 8B, dart in FIG. 8C) is displayed. On the other hand, the display object is caused to perform an operation of swinging a sword in FIG. 8A or an operation of throwing a fishing rod or a dart in FIGS. 8B and 8C. Furthermore, based on the acceleration included in the output data received from the input detection unit, the display object can be moved at a predetermined speed and acceleration, or the display object can be shaken or thrown at a predetermined strength. The motion determination unit can further move the display object in a predetermined direction when the output data received from the input detection unit includes an angular velocity.
図9A、B、Cは、本実施例に従った加速度センサ・ジャイロセンサからの入力に基づいてHMDに表示される画面の一例である。入力検出部より受け取った出力データが加速度センサ・ジャイロセンサからのユーザの動作入力情報に対応する場合に、操作対象である表示オブジェクト(図9Aではレース画面背景全体、図9Bでは人、又は画面全体、図9Cではドアノブ)に対して、該動作入力情報に対応付けられた表示オブジェクトを回転させる動作を行わせる。さらに入力検出部より受け取った出力データに含まれる角速度に基づき、表示オブジェクトを所定の角速度で回転させることができる。 9A, 9B, and 9C are examples of screens displayed on the HMD based on inputs from the acceleration sensor / gyro sensor according to the present embodiment. When the output data received from the input detection unit corresponds to the user's motion input information from the acceleration sensor / gyro sensor, the display object that is the operation target (the entire race screen background in FIG. 9A, the person in FIG. 9B, or the entire screen) In FIG. 9C, the door knob) is caused to rotate the display object associated with the motion input information. Furthermore, the display object can be rotated at a predetermined angular velocity based on the angular velocity included in the output data received from the input detection unit.
図10A、Bは、本実施例に従ったマイクセンサからの入力に基づいてHMDに表示される画面の一例である。入力検出部より受け取った出力データの種類がマイクからのユーザの音声入力である場合に、音声入力に対応付けられた表示オブジェクト(図10Aでは猫、図10Bでは「ワー」という文字)に対して、所定の動作(図10Aでは猫が驚く動作、図10Bでは「ワー」という文字が拡大される動作)を行わせる。さらに、マイクセンサからの音量、方向に基づいて、拡大表示される表示オブジェクトの大きさや速度を変化させることができる。 10A and 10B are examples of a screen displayed on the HMD based on an input from the microphone sensor according to the present embodiment. When the type of the output data received from the input detection unit is the user's voice input from the microphone, the display object associated with the voice input (a cat in FIG. 10A and the word “War” in FIG. 10B) , A predetermined operation (an operation that surprises a cat in FIG. 10A and an operation that expands the word “War” in FIG. 10B) is performed. Furthermore, the size and speed of the display object to be enlarged can be changed based on the volume and direction from the microphone sensor.
図11はコントローラ100の処理の流れを示すフローチャート図である。
まず、インターネットを介してコントローラ100に備えられたアンテナによりインタフェースプログラム106Aをコントローラ100へダウンロードし、インストールする(ステップ1100)。コントローラは、インタフェースプログラム106Aをインストールすることにより、本体装置に専用のコントローラでなくとも、例えば公知の携帯端末(スマートフォン)によりHMD140の画面操作を行うことができる。
FIG. 11 is a flowchart showing a process flow of the controller 100.
First, the interface program 106A is downloaded to the controller 100 via the Internet using the antenna provided in the controller 100 and installed (step 1100). By installing the interface program 106A, the controller can operate the screen of the HMD 140 using, for example, a known portable terminal (smartphone), instead of a dedicated controller for the main device.
次に、操作部202は、ユーザによりコントローラに対して行われた所定の動作・操作に関する入力情報を取得しメモリへ格納する(ステップ1102)。
次に、送信部204は、所定の動作に関する各種入力、所定の操作に関する各種入力情報、及び/又はコントローラのメモリに格納されている画像、動画、位置情報、又はこれらの組み合わせを出力データとして、本体装置120へ送信する(ステップ1104)。送信部204は、本体装置の入力検出部304からの要求に従って、出力データのうち実行中のアプリケーションの内容に応じて、求められるユーザ操作に対応する出力データを送信することができる。
Next, the operation unit 202 acquires input information related to a predetermined operation / operation performed on the controller by the user and stores it in the memory (step 1102).
Next, the transmission unit 204 outputs, as output data, various inputs related to a predetermined operation, various input information related to a predetermined operation, and / or images, moving images, position information stored in the memory of the controller, or a combination thereof. It transmits to the main unit 120 (step 1104). In accordance with a request from the input detection unit 304 of the main device, the transmission unit 204 can transmit output data corresponding to a requested user operation in accordance with the contents of the application being executed among the output data.
図12は本体装置120の処理の流れを示すフローチャート図である。
本体装置には本体装置側インタフェースプログラム126Aがインストールされている。本体装置は、外部ネットワークに接続してインタフェースプログラム126Aを取得してもよいし、記憶媒体を用いてインタフェースプログラム126Aを取得してもよい(ステップ1200)。
FIG. 12 is a flowchart showing a process flow of the main device 120.
A main unit side interface program 126A is installed in the main unit. The main device may acquire the interface program 126A by connecting to an external network, or may acquire the interface program 126A using a storage medium (step 1200).
操作判定部302は、本体装置において実行中のアプリケーションの内容等に応じてアプリケーションが操作中のユーザに対して入力を許可する、求められるユーザ操作を判定する(ステップ1202)。 The operation determination unit 302 determines a requested user operation that permits input to the user who is operating the application according to the contents of the application being executed in the main device (step 1202).
次に、入力検出部304は、コントローラ100の送信部204から送信された出力データのうち、実行中のアプリケーションにより求められるユーザ操作に対応する出力データを、コントローラ100の送信部204よりネットワーク180を介して受信して検出する。(ステップ1204)。 Next, the input detection unit 304 outputs, from the output data transmitted from the transmission unit 204 of the controller 100, output data corresponding to the user operation required by the application being executed via the network 180 from the transmission unit 204 of the controller 100. To receive and detect. (Step 1204).
次に、動作判定部306は、求められるユーザ操作に対応する出力データに応じて、実行中のアプリケーションの仮想空間内で表示オブジェクトに行わせる動作を判定する(ステップ1206)。 Next, the action determination unit 306 determines an action to be performed on the display object in the virtual space of the application being executed according to the output data corresponding to the user operation that is obtained (step 1206).
次に、表示演算部308は、動作判定部306が判定した動作、及び該動作に対応付けられた表示オブジェクトに対する操作データに基づいて、表示オブジェクトの表示演算を行い、これにより表示オブジェクトの画像を生成する(ステップ1208)。 Next, the display calculation unit 308 performs display calculation of the display object based on the motion determined by the motion determination unit 306 and the operation data for the display object associated with the motion, thereby obtaining an image of the display object. Generate (step 1208).
次に、画像生成出力部310は、起動しているヘッドマウント装置のディスプレイに表示されている画面に、生成された表示オブジェクトを配置した画像をフレーム毎に生成し、HMDへ出力する(ステップ1210)。 Next, the image generation / output unit 310 generates an image in which the generated display object is arranged on the screen displayed on the display of the activated head mount device for each frame, and outputs the generated image to the HMD (step 1210). ).
図13は、コントローラ100と本体装置120をアプリケーション上で接続する処理の流れを示すフローチャート図である。コントローラ100と本体装置120とはネットワーク180を介して互いに通信可能に接続されている。 FIG. 13 is a flowchart showing a flow of processing for connecting the controller 100 and the main device 120 on an application. The controller 100 and the main device 120 are connected to each other via a network 180 so as to communicate with each other.
まず、本体装置120において、HMDと接続してHMDを操作するためのアプリケーションを起動する(ステップ1300)。
次に、コントローラ100側でインタフェースプログラム106Aを実行して、コントローラ100は本体装置内にインタフェースプログラム126Aを含むアプリケーションが格納されているかを検索する(ステップ1302)。
First, in main device 120, an application for connecting to HMD and operating HMD is activated (step 1300).
Next, the interface program 106A is executed on the controller 100 side, and the controller 100 searches whether an application including the interface program 126A is stored in the main unit (step 1302).
次に、コントローラ100は、本体装置120内にインタフェースプログラム126Aを含むアプリケーションが検索された場合に、その検索に対する認識情報を本体装置100のインタフェースプログラム126Aに送信する(ステップ1304)。 Next, when an application including the interface program 126A is searched for in the main body device 120, the controller 100 transmits recognition information for the search to the interface program 126A of the main body device 100 (step 1304).
次に、コントローラ100は、認識したインタフェースプログラム126Aを含むアプリケーションを、ディスプレイ108へ表示する。そして、コントローラ100は、表示された認識したアプリケーションがユーザによりタップされると、ペアリングリクエストを本体装置側インタフェースプログラム126Aへ送信する(ステップ1306)。 Next, the controller 100 displays an application including the recognized interface program 126 </ b> A on the display 108. When the displayed recognized application is tapped by the user, the controller 100 transmits a pairing request to the main body apparatus side interface program 126A (step 1306).
次に、本体装置側インタフェースプログラム126Aはコントローラから送信されたペアリングリクエストに応答してペアリングレスポンスをコントローラ100のインタフェースプログラム106Aへ送信する(ステップ1308)。 Next, the main unit side interface program 126A transmits a pairing response to the interface program 106A of the controller 100 in response to the pairing request transmitted from the controller (step 1308).
次に、コントローラ100のインタフェースプログラム106Aは、コントローラ100と本体装置120とがペアリングしたことを示す情報を、本体装置側インタフェースプログラム126Aへ送信する(ステップ1310)。これにより、コントローラ100と本体装置120とのアプリケーション上の接続が完了する。 Next, the interface program 106A of the controller 100 transmits information indicating that the controller 100 and the main device 120 have been paired to the main device side interface program 126A (step 1310). Thereby, the connection on the application between the controller 100 and the main device 120 is completed.
図14は、本発明の第2の実施例に従った、複数のコントローラにより構成されるシステムのシステム構成図を示す。複数のコントローラ100同士はそれぞれ本体装置120ではなく、インターネットを介して接続されている。以下、第1のコントローラ100A、第2のコントローラ100Bはそれぞれ図1に記載のようにプロセッサ、メモリ、インタフェース、センサディスプレイを備えることができる。また、第1のコントローラ、第2のコントローラはそれぞれ図2に記載の機能的構成、又は図2に記載の機能的構成の一部を備えることができる。また、コントローラ100A、100Bは3台以上で構成することもできる。 FIG. 14 shows a system configuration diagram of a system including a plurality of controllers according to the second embodiment of the present invention. The plurality of controllers 100 are connected not via the main unit 120 but via the Internet. Hereinafter, each of the first controller 100A and the second controller 100B may include a processor, a memory, an interface, and a sensor display as shown in FIG. In addition, each of the first controller and the second controller can include the functional configuration illustrated in FIG. 2 or a part of the functional configuration illustrated in FIG. Further, the controllers 100A and 100B can be configured by three or more units.
従来のシステムにおいては、1つの操作画面を同じ空間に位置する複数のユーザで共有して操作する場合に、複数のコントローラはそれぞれ1つの本体装置に接続されていたため、本体装置への負荷が高かった。また従来のシステムにおいては、1つの操作画面を、別個の空間に位置する複数のユーザで共有して操作する場合には、複数のコントローラは別個の空間にそれぞれ存在する本体装置に接続する。そして本体装置は、それぞれネットワークを介してサーバに接続する。この場合、複数のコントローラに対し外部ネットワークと接続可能な本体装置がそれぞれ必要となる。 In a conventional system, when a single operation screen is shared and operated by a plurality of users located in the same space, a plurality of controllers are connected to a single main body device, so the load on the main body device is high. It was. Further, in the conventional system, when a single operation screen is shared and operated by a plurality of users located in separate spaces, the plurality of controllers are connected to the main apparatus existing in the separate spaces. Each main device is connected to a server via a network. In this case, a plurality of main units that can be connected to an external network are required for a plurality of controllers.
本実施例においては、1つのコントローラのみが1つの本体装置へ接続されており、コントローラ同士はインターネットを介してサーバに接続されている。これにより、一つの本体装置の負荷を高めることなく、複数のユーザ間で、一つの操作画面に対し様々な操作を行うことができる。また、複数のユーザは同じ空間に位置する必要は無く、別の空間に位置することができる。 In this embodiment, only one controller is connected to one main device, and the controllers are connected to a server via the Internet. As a result, various operations can be performed on a single operation screen among a plurality of users without increasing the load on one main device. The plurality of users do not need to be located in the same space, and can be located in different spaces.
図15は、複数のユーザ間で一つの操作画面に対し操作を行っている例示的なユーザ表示画面である。図15に係る実施例おいては、ユーザAはヘッドマウント装置を装着しており、ユーザBはヘッドマウント装置を装着していない。ヘッドマウント装置を装着していないユーザBも、第2のコントローラのディスプレイを介してユーザAの操作画面を見ることや、ユーザAの操作中画面に対して、第2のコントローラのセンサディスプレイによるスワイプ、タップ、又はピンチ操作入力、第2のコントローラの加速度センサ、角速度センサによる動作入力を行うことができる。例えば、図に示されるように、ユーザAがレーシングゲームをしている最中に、他のユーザBがユーザBのコントローラのセンサディスプレイを用いて、ユーザAの操作中画面に障害物(図ではバナナ)を配置することができる。 FIG. 15 is an exemplary user display screen in which a single operation screen is operated among a plurality of users. In the embodiment according to FIG. 15, user A is wearing a head mount device, and user B is not wearing a head mount device. The user B who is not wearing the head mount device also sees the operation screen of the user A via the display of the second controller, or swipes with the sensor display of the second controller with respect to the user A operating screen. , Tap or pinch operation input, operation input by the acceleration sensor or angular velocity sensor of the second controller can be performed. For example, as shown in the figure, while a user A is playing a racing game, another user B uses the sensor display of the user B's controller to display an obstacle ( Banana) can be placed.
以上、本発明の一実施形態に付き説明したが、本発明は上記実施形態に限定されるものではない。前述の請求項に記載されるこの発明の精神及び範囲から逸脱することなく、様々な実施態様の変更がなされうることを当業者は理解するであろう。 As described above, the embodiment of the present invention has been described, but the present invention is not limited to the above embodiment. Those skilled in the art will appreciate that various modifications of the embodiments can be made without departing from the spirit and scope of the invention as set forth in the appended claims.
Claims (19)
実行中のアプリケーションの内容に応じて求められるユーザ操作を判定する操作判定部と、
スマートフォンからの出力データから、前記求められるユーザ操作に対応する出力データを検出する入力検出部と、
検出された前記出力データに基づき表示オブジェクトの動作を判定する動作判定部と、
判定された表示オブジェクトの前記動作、及び前記検出された出力データに基づいて、表示オブジェクトの表示パラメータを演算して、仮想空間上に表示される表示オブジェクトの画像を生成する表示演算部と、
仮想空間上の画像に生成された表示オブジェクトの画像を配置した画像を生成して前記システムに接続されたヘッドマウントディスプレイへ出力する画像生成出力部と、
を備えており、
前記スマートフォンの通信部がインターネットを介してサーバから受信したスマートフォン側インタフェースプログラムと、前記システムのシステム側インタフェースプログラムにより、前記スマートフォンと前記システムが接続されていることを特徴とする、システム。 A system for outputting a generated image to a head mounted display, the system comprising:
An operation determination unit that determines a user operation required according to the contents of the application being executed;
An input detection unit that detects output data corresponding to the requested user operation from output data from a smartphone;
A motion determination unit that determines the motion of the display object based on the detected output data;
A display calculation unit that calculates a display parameter of the display object based on the determined movement of the display object and the detected output data, and generates an image of the display object displayed on the virtual space;
An image generation output unit that generates an image in which an image of a display object generated in an image in a virtual space is arranged and outputs the generated image to a head mounted display connected to the system;
With
The system, wherein the smartphone and the system are connected by a smartphone-side interface program received from a server by the communication unit of the smartphone via the Internet and a system-side interface program of the system.
前記動作判定部は前記画像により表示オブジェクトを決定して、検出された前記出力データに基づき前記表示オブジェクトの動作を判定することを特徴とする、請求項1記載のシステム。 The output data from the smartphone includes an image stored in the memory of the smartphone and output data generated based on an operation input by a user from the sensor display of the smartphone,
The system according to claim 1, wherein the motion determination unit determines a display object based on the image and determines a motion of the display object based on the detected output data.
前記表示演算部は、前記位置情報、及び判定された表示オブジェクトの前記動作に基づいて、表示オブジェクトの表示パラメータを演算して、仮想空間上に表示される表示オブジェクトの画像を生成することを特徴とする、請求項1記載のシステム。 The output data from the smartphone includes output data generated based on the position information of the smartphone from the GPS of the smartphone and the operation input by the user from the sensor display of the smartphone,
The display calculation unit calculates a display parameter of the display object based on the position information and the determined operation of the display object, and generates an image of the display object displayed in a virtual space. The system of claim 1.
前記入力検出部は、スマートフォンからの出力データから、前記求められる複数のユーザ操作に対応する出力データをそれぞれ検出し、
前記動作判定部は、検出された出力データのうち第1の出力データに基づき表示オブジェクトの動作を判定し、検出された出力データのうち第2の出力データに基づき表示オブジェクトの動作を変換することを特徴とする、請求項6記載のシステム。 The operation determination unit determines a plurality of user operations required according to the contents of the application being executed,
The input detection unit detects output data corresponding to the plurality of requested user operations from output data from a smartphone,
The motion determination unit determines the motion of the display object based on the first output data among the detected output data, and converts the motion of the display object based on the second output data among the detected output data. The system according to claim 6.
実行中のアプリケーションの内容に応じて求められるユーザ操作を判定する操作判定ステップと、
スマートフォンからの出力データから、前記求められるユーザ操作に対応する出力データを検出する入力検出ステップと、
検出された前記出力データに基づき表示オブジェクトの動作を判定する動作判定ステップと、
判定された表示オブジェクトの前記動作、及び前記検出された出力データに基づいて、表示オブジェクトの表示パラメータを演算して、仮想空間上に表示される表示オブジェクトの画像を生成する表示演算ステップと、
仮想空間上の画像に生成された表示オブジェクトの画像を配置した画像を生成してシステムに接続されたヘッドマウントディスプレイへ出力する画像生成出力ステップと、
を備えており、
前記スマートフォンの通信部によりインターネットを介してサーバから受信したスマートフォン側インタフェースプログラムと、前記システムのシステム側インタフェースプログラムとにより、前記スマートフォンと前記システムが接続されていることを特徴とする、プログラム。 A program for causing a processor to execute a method for outputting a generated image to a head-mounted display, the method comprising:
An operation determination step for determining a user operation required according to the contents of the application being executed;
An input detection step of detecting output data corresponding to the requested user operation from output data from a smartphone;
An operation determination step for determining the operation of the display object based on the detected output data;
A display calculation step of calculating a display parameter of the display object based on the determined operation of the display object and the detected output data, and generating an image of the display object displayed on the virtual space;
An image generating output step of outputting to the connected head-mounted display system to generate an image which includes image of the generated display object in the image in the virtual space,
With
A program in which the smartphone and the system are connected by a smartphone-side interface program received from a server via the Internet by a communication unit of the smartphone and a system-side interface program of the system.
前記動作判定ステップは前記画像により表示オブジェクトを決定して、検出された前記出力データに基づき前記表示オブジェクトの動作を判定することを特徴とする、請求項10記載のプログラム。 The output data from the smartphone includes an image stored in the memory of the smartphone and output data generated based on an operation input by a user from the sensor display of the smartphone,
The program according to claim 10, wherein the motion determining step determines a display object based on the image and determines a motion of the display object based on the detected output data.
前記表示演算ステップは、前記位置情報、及び判定された表示オブジェクトの前記動作に基づいて、表示オブジェクトの表示パラメータを演算して、仮想空間上に表示される表示オブジェクトの画像を生成することを特徴とする、請求項10記載のプログラム。 The output data from the smartphone includes output data generated based on the position information of the smartphone from the GPS of the smartphone and the operation input by the user from the sensor display of the smartphone,
The display calculation step calculates a display parameter of the display object based on the position information and the determined operation of the display object, and generates an image of the display object displayed in the virtual space. The program according to claim 10.
前記入力検出ステップは、スマートフォンからの出力データから、前記求められる複数のユーザ操作に対応する出力データをそれぞれ検出し、
前記動作判定ステップは、検出された出力データのうち第1の出力データに基づき表示オブジェクトの動作を判定し、検出された出力データのうち第2の出力データに基づき表示オブジェクトの動作を変換することを特徴とする、請求項15記載のプログラム。 The operation determining step determines a plurality of user operations required according to the contents of the application being executed,
The input detection step detects output data corresponding to the plurality of requested user operations from output data from a smartphone,
The motion determining step determines the motion of the display object based on the first output data among the detected output data, and converts the motion of the display object based on the second output data among the detected output data. The program according to claim 15, wherein:
実行中のアプリケーションの内容に応じて求められるユーザ操作を判定する操作判定ステップと、
スマートフォンからの出力データから、前記求められるユーザ操作に対応する出力データを検出する入力検出ステップと、
検出された前記出力データに基づき表示オブジェクトの動作を判定する動作判定ステップと、
判定された表示オブジェクトの前記動作、及び前記検出された出力データに基づいて、表示オブジェクトの表示パラメータを演算して、仮想空間上に表示される表示オブジェクトの画像を生成する表示演算ステップと、
仮想空間上の画像に生成された表示オブジェクトの画像を配置した画像を生成して前記システムに接続されたヘッドマウントディスプレイへ出力する画像生成出力ステップと、
を備えており、
前記スマートフォンの通信部によりインターネットを介してサーバから受信したスマートフォン側インタフェースプログラムと、前記システムのシステム側インタフェースプログラムとにより、前記スマートフォンと前記システムが接続されていることを特徴とする、方法。 A system control method for outputting a generated image to a head mounted display,
An operation determination step for determining a user operation required according to the contents of the application being executed;
An input detection step of detecting output data corresponding to the requested user operation from output data from a smartphone;
An operation determination step for determining the operation of the display object based on the detected output data;
A display calculation step of calculating a display parameter of the display object based on the determined operation of the display object and the detected output data, and generating an image of the display object displayed on the virtual space;
An image generation output step of generating an image in which an image of a display object generated in an image on a virtual space is arranged and outputting the generated image to a head mounted display connected to the system;
With
The method, wherein the smartphone and the system are connected by a smartphone-side interface program received from a server via the Internet by a communication unit of the smartphone and a system-side interface program of the system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014214266A JP5996605B2 (en) | 2014-10-21 | 2014-10-21 | System, program, and method for operating screen by interlocking head mounted display and controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014214266A JP5996605B2 (en) | 2014-10-21 | 2014-10-21 | System, program, and method for operating screen by interlocking head mounted display and controller |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016152763A Division JP6883394B2 (en) | 2016-08-03 | 2016-08-03 | Programs, computers and methods |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016081408A JP2016081408A (en) | 2016-05-16 |
JP5996605B2 true JP5996605B2 (en) | 2016-09-21 |
Family
ID=55956348
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014214266A Active JP5996605B2 (en) | 2014-10-21 | 2014-10-21 | System, program, and method for operating screen by interlocking head mounted display and controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5996605B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020061162A (en) * | 2019-11-25 | 2020-04-16 | 株式会社コロプラ | System for screen operation by interlocking head-mounted display with controller, program, and method |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6346585B2 (en) * | 2015-04-06 | 2018-06-20 | 日本電信電話株式会社 | Operation support apparatus and program |
JP6122194B1 (en) * | 2016-08-08 | 2017-04-26 | 株式会社コロプラ | Information processing method and program for causing computer to execute information processing method |
JP6093473B1 (en) * | 2016-08-19 | 2017-03-08 | 株式会社コロプラ | Information processing method and program for causing computer to execute information processing method |
KR101904314B1 (en) * | 2016-11-15 | 2018-10-04 | 모테가 이노베이티브 인크 | Method of providing electrical dart service using augmented reality type HMD |
JP2017157195A (en) * | 2016-12-19 | 2017-09-07 | 望月 玲於奈 | User interface program |
JP2018171279A (en) * | 2017-03-31 | 2018-11-08 | 株式会社愛和ライト | Information processing device and information processing system |
JP6389305B1 (en) * | 2017-07-21 | 2018-09-12 | 株式会社コロプラ | Information processing method, computer, and program |
KR102287150B1 (en) * | 2017-08-09 | 2021-08-06 | (주)모테가컨버전스 | Method of providing electrical dart service using augmented reality type HMD and Computer program for the same |
JP2019023869A (en) * | 2018-08-03 | 2019-02-14 | 株式会社コロプラ | Information processing method, computer, and program |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013125247A (en) * | 2011-12-16 | 2013-06-24 | Sony Corp | Head-mounted display and information display apparatus |
JP5957875B2 (en) * | 2011-12-26 | 2016-07-27 | ソニー株式会社 | Head mounted display |
JP6066037B2 (en) * | 2012-03-27 | 2017-01-25 | セイコーエプソン株式会社 | Head-mounted display device |
JP6112815B2 (en) * | 2012-09-27 | 2017-04-12 | 京セラ株式会社 | Display device, control system, and control program |
JP5929719B2 (en) * | 2012-11-12 | 2016-06-08 | ソニー株式会社 | Information processing apparatus, communication system, and information processing method |
-
2014
- 2014-10-21 JP JP2014214266A patent/JP5996605B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020061162A (en) * | 2019-11-25 | 2020-04-16 | 株式会社コロプラ | System for screen operation by interlocking head-mounted display with controller, program, and method |
Also Published As
Publication number | Publication date |
---|---|
JP2016081408A (en) | 2016-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5996605B2 (en) | System, program, and method for operating screen by interlocking head mounted display and controller | |
US10318011B2 (en) | Gesture-controlled augmented reality experience using a mobile communications device | |
JP5898756B1 (en) | SYSTEM, PROGRAM, AND METHOD FOR OPERATING SCREEN BY LINKING DISPLAY AND MULTIPLE CONTROLLERS CONNECTED BY NETWORK | |
JP6342038B1 (en) | Program for providing virtual space, information processing apparatus for executing the program, and method for providing virtual space | |
US11534681B2 (en) | Virtual console gaming controller | |
KR20080033352A (en) | Interactive entertainment system and method of operation thereof | |
US10981067B2 (en) | Game processing system, method of processing game, and storage medium storing program for processing game | |
US20190243445A1 (en) | Application processing system, method of processing application and storage medium storing program for processing application | |
JP6883394B2 (en) | Programs, computers and methods | |
JP6854869B2 (en) | A system, program, and method for operating the screen by linking the head-mounted display and the controller. | |
US12029973B2 (en) | Game program, game method, and information terminal device | |
US20220355188A1 (en) | Game program, game method, and terminal device | |
US10095266B2 (en) | System and method for interfacing between a display and a controller | |
JP6869412B1 (en) | Game control methods, programs, servers and communication devices | |
JP2020110603A (en) | Game program, method, and information processing unit | |
JP6779715B2 (en) | Information processing system | |
JP7470063B2 (en) | A system and program for operating a screen by linking a display with multiple controllers connected via a network | |
JP6999847B1 (en) | Game control method and program | |
JP7163526B1 (en) | Information processing system, program and information processing method | |
JP7286857B2 (en) | Information processing system, program and information processing method | |
JP7286856B2 (en) | Information processing system, program and information processing method | |
JP7440401B2 (en) | Game program, game method, and information terminal device | |
WO2023002907A1 (en) | Information processing system, program, and information processing method | |
JP2023015979A (en) | Information processing system, program, and information processing method | |
JP2016127981A (en) | System, program, and method for performing screen operation by interlocking display and plural controllers connected through network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150123 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160125 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160310 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160628 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160705 |
|
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: 20160726 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160824 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5996605 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |