JP2008212339A - 入力装置、入力制御方法、ならびに、プログラム - Google Patents

入力装置、入力制御方法、ならびに、プログラム Download PDF

Info

Publication number
JP2008212339A
JP2008212339A JP2007052855A JP2007052855A JP2008212339A JP 2008212339 A JP2008212339 A JP 2008212339A JP 2007052855 A JP2007052855 A JP 2007052855A JP 2007052855 A JP2007052855 A JP 2007052855A JP 2008212339 A JP2008212339 A JP 2008212339A
Authority
JP
Japan
Prior art keywords
posture
user
pressing operation
strength
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007052855A
Other languages
English (en)
Other versions
JP4129036B1 (ja
Inventor
Yuichi Asami
祐一 浅見
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Konami Digital Entertainment Co Ltd
Original Assignee
Konami Digital Entertainment Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to JP2007052855A priority Critical patent/JP4129036B1/ja
Application filed by Konami Digital Entertainment Co Ltd filed Critical Konami Digital Entertainment Co Ltd
Priority to EP07860195A priority patent/EP2128746A4/en
Priority to CN2007800519187A priority patent/CN101617284B/zh
Priority to KR1020097016416A priority patent/KR100942232B1/ko
Priority to US12/528,953 priority patent/US8514175B2/en
Priority to PCT/JP2007/074966 priority patent/WO2008108049A1/ja
Priority to TW097101317A priority patent/TWI337885B/zh
Application granted granted Critical
Publication of JP4129036B1 publication Critical patent/JP4129036B1/ja
Publication of JP2008212339A publication Critical patent/JP2008212339A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • G06F3/0325Detection arrangements using opto-electronic means using a plurality of light emitters or reflectors or a plurality of detectors forming a reference frame from which to derive the orientation of the object, e.g. by triangulation or on the basis of reference deformation in the picked up image
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/218Input arrangements for video game devices characterised by their sensors, purposes or types using pressure sensors, e.g. generating a signal proportional to the pressure applied by the player
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/215Input arrangements for video game devices characterised by their sensors, purposes or types comprising means for detecting acoustic signals, e.g. using a microphone
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/24Constructional details thereof, e.g. game controllers with detachable joystick handles
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1043Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being characterized by constructional details
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/105Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals using inertial sensors, e.g. accelerometers, gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1081Input via voice recognition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Position Input By Displaying (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

【課題】ユーザによるボタン押下操作の強さを推定する。
【解決手段】入力装置300において、ユーザによって把持される把持モジュール201は姿勢とユーザによるボタン押下操作とを検知する。記憶部301は検知された姿勢の経過を所定時間分記憶する。計算部302は所定時間分の姿勢の変化量を計算する。押下操作が検知されると、推定部303は計算された変化量に応じて押下操作の強さを推定する。判定部304は計算された変化量から把持モジュール201の振り操作がされたか否かを判定する。出力部305は推定部303による押下操作の強さの推定結果を出力する。判定部304により振り操作がされたと判定された場合、出力部305は計算された変化量に応じて振り操作の強さを更に出力する。
【選択図】図3

Description

本発明は、ユーザによる押下操作の強さを推定するために好適な入力装置、入力制御方法、ならびに、プログラムに関する。
コンピュータを用いたテレビゲームでは、ユーザは複数の操作キーを備えた、いわゆるコントローラと呼ばれる入力装置を使って、ユーザの操っているキャラクターオブジェクト(以下、単に「キャラクター」と呼ぶ)等に指示を与えてプレイするのが一般的である。ゲーム機は、コントローラの操作ボタンがユーザによって押下されると、押下された操作ボタンに応じた指示入力信号を取得して、この指示入力信号に基づいてキャラクターを上下左右に動かしたり仮想銃を発射したりしてゲームを進行させる。
さらに近年では、位置や加速度を測定できる多機能のコントローラも普及してきている。特許文献1には、操作ボタンの押圧力を検出する圧力センサを備えたコントローラが開示されている。これによれば、ゲーム機は、コントローラの操作ボタンが押下されたことを検知できるのに加えて、ユーザによって操作ボタンが押下されたときの押下の強さを圧力センサにより取得することができる。
特開2004−33371号公報
例えば、打楽器を演奏するゲームでは、操作ボタンの押下の強さを取得することにより、取得した強さに応じて音の大きさを変えたり演出を変えたりすることが可能になる。しかしながら、コントローラに圧力センサを備えるようにすると、コントローラの設計がより複雑なものになってしまい、また、コントローラの製造コストが上がってしまうという問題がある。一方、ユーザにとっては、既に持っているコントローラに加えて新たにコントローラを購入しなければならず、大きな費用の負担が発生してしまうという問題がある。
本発明はこのような課題を解決するものであり、ユーザによる押下操作の強さを推定するために好適な入力装置、入力制御方法、ならびに、プログラムを提供することを目的とする。
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
本発明の第1の観点に係る入力装置は、検知装置、記憶部、計算部、推定部、判定部、出力部を備える。
検知装置は、ユーザによって把持され、当該検知装置の姿勢と、当該ユーザによる押下操作と、を検知する。
記憶部は、検知装置により検知された姿勢の経過を所定時間分だけ記憶する。
計算部は、記憶部に記憶される姿勢の経過から、当該所定時間分の姿勢の変化量を計算する。
推定部は、計算された変化量から、当該ユーザの押下操作の強さを推定する。
出力部は、推定部により推定された当該ユーザの押下操作の強さを指定する押下操作情報を出力する。
これにより、入力装置は、ユーザによる押下操作の強さを容易に推定することができる。その際、入力装置は圧力センサなどのような押下操作の強さを直接計測する構成を備える必要はない。例えば、検知装置は、ユーザが入力装置に指示を与えるために手に握って操作する把持モジュール(いわゆる”コントローラ”)である。
入力装置は、さらに、計算された変化量が所定の閾値以上である場合、当該ユーザの振り操作がされたと判定する判定部を備え、
出力部は、計算された変化量を当該振り操作の強さとして指定する振り操作情報をさらに出力してもよい。
これにより、入力装置は、ユーザによる押下操作の強さを容易に推定できるとともに、ユーザによる振り操作の強さを容易に判定することができる。
推定部は、計算された変化量が大きいほど、当該ユーザの押下操作の強さが大きいと推定してもよい。
この結果、入力装置は、姿勢の変化量が大きいほど強く押下されたと推定する。
推定部は、計算された変化量が当該所定の閾値以上である場合、当該ユーザの押下操作の強さが所定の最大強度であると推定してもよい。
この結果、入力装置は、姿勢の変化量が所定の閾値以上であれば押下操作の強さの上限値であると推定する。
推定部は、検知装置により当該ユーザによる押下操作が検知されてから所定の待ち時間経過後に計算部により計算された変化量から、当該ユーザの押下操作の強さを推定してもよい。
これにより、入力装置は、ユーザによる押下操作の前後の姿勢の変化に基づいて押下操作の強さを推定することができる。すなわち、ユーザの予備動作による押下前の姿勢の変化と、押下後の姿勢の変化との両方に基づいて、押下操作の強さを推定するので、ユーザ行為により即して推定することができる。
検知装置は、当該検知装置の位置をさらに検知し、
記憶部は、検知装置により検知された姿勢の経過と対応づけて、検知装置により検知された位置の経過を所定時間分だけさらに記憶し、
計算部は、記憶部に記憶される位置の経過から、当該所定時間分の位置の変化量をさらに計算し、
推定部は、計算された姿勢の変化量と位置の変化量から、当該ユーザの押下操作の強さを推定してもよい。
これにより、入力装置は、姿勢だけでなく位置の変化量に応じて押下操作の強さを推定できるので、ユーザによる押し操作と振り操作の区別を推測しやすくなる。
本発明のその他の観点に係る入力制御方法は、記憶部、検知装置、計算部、推定部、出力部を有する入力装置にて実行される入力制御方法であって、検知ステップ、計算ステップ、推定ステップ、出力ステップを備える。
記憶部は、検知装置により検知された姿勢の経過を所定時間分だけ記憶する。
検知ステップは、ユーザによって把持される検知装置が、検知装置の姿勢と、当該ユーザの押下操作と、を検知する。
計算ステップは、計算部が、記憶部に記憶される姿勢の経過から当該所定時間分の姿勢の変化量を計算する。
推定ステップは、検知ステップにより当該ユーザの押下操作が検知されると、推定部が、計算された変化量から当該ユーザの押下操作の強さを推定する。
出力ステップは、出力部が、推定ステップにより推定された当該ユーザの押下操作の強さを指定する押下操作情報を出力する。
これにより、この入力制御方法を用いた入力装置は、ユーザによる押下操作の強さを容易に推定することができる。その際、圧力センサなどを用いて押下操作の強さを直接計測する必要はない。
本発明のその他の観点に係るプログラムは、ユーザによって把持される検知装置であって当該検知装置の姿勢と当該ユーザの押下操作とを検知する検知装置を備えるコンピュータを、記憶部、計算部、推定部、出力部として機能させる。
記憶部は、検知装置により検知された姿勢の経過を所定時間分だけ記憶する。
計算部は、記憶部に記憶される姿勢の経過から当該所定時間分の姿勢の変化量を計算する。
推定部は、検知装置により当該ユーザの押下操作が検知されると、計算された変化量から当該ユーザの押下操作の強さを推定する。
出力部は、推定部により推定された当該ユーザの押下操作の強さを指定する押下操作情報を出力する。
これにより、このプログラムを実行するコンピュータは、ユーザによる押下操作の強さを容易に推定することができる入力装置として機能する。その際、コンピュータは圧力センサなどのような押下操作の強さを直接計測する構成を備える必要はない。
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布・販売することができる。
本発明によれば、ユーザによる押下操作の強さを推定するために好適な入力装置、入力制御方法、ならびに、プログラムを提供することができる。
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム用の情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
(実施例1)
図1は、プログラムを実行することにより、本発明の実施形態に係る装置の機能を果たす典型的な情報処理装置の概要構成を示す模式図である。以下本図を参照して説明する。
情報処理装置100は、CPU(Central Processing Unit)101と、ROM 102と、RAM(Random Access Memory)103と、インターフェイス104と、コントローラ105と、外部メモリ106と、画像処理部107と、DVD−ROM(Digital Versatile Disc ROM)ドライブ108と、NIC(Network Interface Card)109と、音声処理部110と、マイク111と、を備える。
ゲーム用のプログラムおよびデータを記憶したDVD−ROMをDVD−ROMドライブ108に装着して、情報処理装置100の電源を投入することにより、当該プログラムが実行され、本実施形態に係る入力装置が実現される。
CPU 101は、情報処理装置100全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。また、CPU 101は、レジスタ(図示せず)という高速アクセスが可能な記憶域に対してALU(Arithmetic Logic Unit)(図示せず)を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さらに、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベクトル演算などを高速に行えるように、CPU 101自身が構成されているものや、コプロセッサを備えて実現するものがある。
ROM 102には、電源投入直後に実行されるIPL(Initial Program Loader)が記録され、これが実行されることにより、DVD−ROMに記録されたプログラムをRAM 103に読み出してCPU 101による実行が開始される。また、ROM 102には、情報処理装置100全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
RAM 103は、データやプログラムを一時的に記憶するためのもので、DVD−ROMから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。また、CPU 101は、RAM 103に変数領域を設け、当該変数に格納された値に対して直接ALUを作用させて演算を行ったり、RAM 103に格納された値を一旦レジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻す、などの処理を行う。
インターフェイス104を介して接続されたコントローラ105は、ユーザがゲーム実行の際に行う操作入力を受け付ける。なお、コントローラ105の詳細については後述する。
インターフェイス104を介して着脱自在に接続された外部メモリ106には、ゲーム等のプレイ状況(過去の成績等)を示すデータ、ゲームの進行状態を示すデータ、ネットワーク対戦の場合のチャット通信のログ(記録)のデータなどが書き換え可能に記憶される。ユーザは、コントローラ105を介して指示入力を行うことにより、これらのデータを適宜外部メモリ106に記録することができる。
DVD−ROMドライブ108に装着されるDVD−ROMには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。CPU 101の制御によって、DVD−ROMドライブ108は、これに装着されたDVD−ROMに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはRAM 103等に一時的に記憶される。
画像処理部107は、DVD−ROMから読み出されたデータをCPU 101や画像処理部107が備える画像演算プロセッサ(図示せず)によって加工処理した後、これを画像処理部107が備えるフレームメモリ(図示せず)に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部107に接続されるモニタ(図示せず)へ出力される。これにより、各種の画像表示が可能となる。
画像演算プロセッサは、2次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
また、仮想空間が3次元にて構成される場合には、当該3次元空間内に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Zバッファ法によりレンダリングして、所定の視点位置から仮想空間に配置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速実行も可能である。
さらに、CPU 101と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を2次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。
NIC 109は、情報処理装置100をインターネット等のコンピュータ通信網(図示せず)に接続するためのものであり、LAN(Local Area Network)を構成する際に用いられる10BASE−T/100BASE−T規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ISDN(Integrated Services Digital Network)モデム、ADSL(Asymmetric Digital Subscriber Line)モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとCPU 101との仲立ちを行うインターフェイス(図示せず)により構成される。
音声処理部110は、DVD−ROMから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ(図示せず)から出力させる。また、CPU 101の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。
音声処理部110では、DVD−ROMに記録された音声データがMIDIデータである場合には、これが有する音源データを参照して、MIDIデータをPCMデータに変換する。また、ADPCM形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してPCMデータに変換する。PCMデータは、そのサンプリング周波数に応じたタイミングでD/A(Digital/Analog)変換を行って、スピーカーに出力することにより、音声出力が可能となる。
さらに、情報処理装置100には、インターフェイス104を介してマイク111を接続することができる。この場合、マイク111からのアナログ信号に対しては、適当なサンプリング周波数でA/D変換を行い、PCM形式のディジタル信号として、音声処理部110でのミキシング等の処理ができるようにする。
このほか、情報処理装置100は、ハードディスク等の大容量外部記憶装置を用いて、ROM 102、RAM 103、外部メモリ106、DVD−ROMドライブ108に装着されるDVD−ROM等と同じ機能を果たすように構成してもよい。
以上で説明した情報処理装置100は、いわゆる「コンシューマ向けテレビゲーム装置」に相当するものであるが、仮想空間を表示するような画像処理を行うものであれば本発明を実現することができる。したがって、携帯電話、携帯ゲーム機器、カラオケ装置、一般的なビジネス用コンピュータなど、種々の計算機上で本発明を実現することが可能である。
例えば、一般的なコンピュータは、上記情報処理装置100と同様に、CPU、RAM、ROM、DVD−ROMドライブ、および、NICを備え、情報処理装置100よりも簡易な機能を備えた画像処理部を備え、外部記憶装置としてハードディスクを有する他、フレキシブルディスク、光磁気ディスク、磁気テープ等が利用できるようになっている。また、コントローラ105ではなく、キーボードやマウスなどを入力装置として利用する。
本実施形態では、現実の空間における位置や姿勢などの種々のパラメータが測定できるようなコントローラ105を採用する。
図2は、現実の空間における位置や姿勢などの種々のパラメータが測定できるようなコントローラ105と情報処理装置100との外観を示す説明図である。以下、本図を参照して説明する。
コントローラ105は、把持モジュール201と発光モジュール251との組合せからなる。把持モジュール201は無線通信によって情報処理装置100と通信可能に接続されており、発光モジュール251は、有線で情報処理装置100と通信可能に接続されている。情報処理装置100の処理結果の音声および画像は、テレビジョン装置291によって出力表示される。
把持モジュール201は、テレビジョン装置291のリモートコントローラと類似した外観をしており、その先端には、CCDカメラ202が配置されている。
一方発光モジュール251は、テレビジョン装置291の上部に固定されている。発光モジュール251の両端には、発光ダイオード252が配置されており、情報処理装置100からの電源供給によって発光する。
把持モジュール201のCCDカメラ202は、この発光モジュール251の様子を撮影する。
撮影された画像の情報は、情報処理装置100に送信され、情報処理装置100は、当該撮影された画像内において発光ダイオード252が撮影された位置に基づいて、発光モジュール251に対する把持モジュール201の位置を取得する。
このほか、把持モジュール201内には、加速度センサ、角加速度センサ、傾きセンサ等が内蔵されており、把持モジュール201そのものの姿勢を測定することが可能となっている。この測定結果も、情報処理装置100に送信される。
把持モジュール201の上面には、十字形キー203が配置されており、ユーザは、十字形キー203を押し込み操作することによって、各種の方向指示入力を行うことができる。また、Aボタン204ほか、各種ボタン206も上面に配置されており、当該ボタンに対応付けられた指示入力を行うことができる。
一方、Bボタン205は、把持モジュール201の下面に配置されており、把持モジュール201の下面に窪みが構成されていることとあいまって、拳銃やマジックハンドにおける引き金を模したものとなっている。典型的には、仮想空間内における拳銃による発砲やマジックハンドによる把持の指示入力は、Bボタン205を用いて行われる。
また、把持モジュール201の上面のインジケータ207は、把持モジュール201の動作状況や情報処理装置100との無線通信状況などをユーザに提示する。
把持モジュール201の上面に用意された電源ボタン208は、把持モジュール201そのものの動作のオン・オフを行うもので、把持モジュール201は内蔵された電池(図示せず)によって動作する。
このほか、把持モジュール201の上面には、スピーカー209が配置され、音声処理部110から入力される音声信号による音声を出力する。把持モジュール201内部には、バイブレータ(図示せず)が用意されており、情報処理装置100からの指示に基づいて、振動の有無や強弱を制御することができるようになっている。
以下では、把持モジュール201と発光モジュール251との組合せからなるコントローラ105を用いて、把持モジュール201の現実世界における位置や姿勢を測定することを前提に説明する。ただし、上記のような形態によらず、たとえば超音波や赤外線通信、GPS(Global Positioning System)等を利用してコントローラ105の現実世界における位置や姿勢を測定するとした場合であっても、本発明の範囲に含まれる。
次に、本実施形態の入力装置300の各部が行う処理について説明する。
図3は、本実施形態の入力装置300が行う処理を説明するための図である。本図に示すように、入力装置300は、コントローラ105、記憶部301、計算部302、推定部303、判定部304、出力部305を備える。
コントローラ105は、上述したように把持モジュール201と発光モジュール251とから構成される。把持モジュール201は、把持モジュール201の姿勢と、把持モジュール201に配置された各キーのユーザによる押下操作とを検知する。すなわち、把持モジュール201は、姿勢や押下操作を検知するための検知装置である。
記憶部301は、把持モジュール201により検知された姿勢の経過を、所定時間分だけ記憶する。例えば、把持モジュール201は、垂直同期割り込みなどの定期的なタイミングで把持モジュール201の姿勢を検知してCPU 101に測定結果データを入力し、記憶部301は所定回数分の測定結果である姿勢データ350を履歴として記憶する。記憶部301は、最も新しく検知された姿勢データ350からN個分(Nは1以上の整数)の姿勢データ350を記憶できる。記憶部301は、検知された姿勢データ350がN個を超えると、最も古い姿勢データ350を削除して最新のN個分の姿勢データ350を記憶する。CPU 101とRAM 103が協働して動作することにより、記憶部301として機能する。外部メモリ106に姿勢データ350を記憶するように構成してもよい。
ここで、姿勢データ350は、把持モジュール201に内蔵された傾きセンサによって測定された把持モジュール201の傾きを示すデータと、同じく把持モジュール201に内蔵された加速度センサによって測定された把持モジュール201の移動する加速度を示すデータと、得られた加速度を時間積分することにより得られる把持モジュール201の移動する速度を示すデータとを含む。姿勢データ350は、把持モジュール201の角加速度、角速度、回転の向きを示すデータなどをさらに含んでもよい。
また、記憶部301は、把持モジュール201の現実空間での位置を示す位置データ360も履歴としてさらに記憶してもよい。この場合、記憶部301は、最新のN個分の姿勢データ350と位置データ360を対応づけて記憶する。位置は、予め定義された空間座標を用いて表される。座標系の決め方は任意であり、例えば、互いに直交する3軸による直交座標系を用いることができるほか、1個の動径と2個の偏角を用いた球座標のような極座標系を用いることもできる。
計算部302は、記憶部301に記憶される所定時間分の姿勢データ350から、この所定時間分の把持モジュール201の姿勢の変化量を計算する。CPU 101とコントローラ105が協働して動作することにより、計算部302として機能する。
具体的には、例えば計算部302は、姿勢データ350のうち傾きを示すデータのみを用いて、所定時間分(例えば1秒など)の姿勢の変化量を計算できる。図4(a)は、傾きセンサによって得られた把持モジュール201の傾きを示す姿勢データ350の時間変化をグラフにした例である。図4(b)のように時刻T1に把持モジュール201の傾きがC1であり、図4(c)のように時刻T2に把持モジュール201の傾きがC2であったとすると、経過時間ΔT(=T2−T1)における傾きの変化量ΔCはC2−C1である。変化量の絶対値をとってもよい。同様にして、計算部302は任意の時間分の傾きの変化量ΔCを計算できる。この例では、重力方向に垂直な方向(水平方向)に対する傾きを用いているが、これは一例に過ぎず、任意の方向を基準方向として傾きを定義してもよい。
また、例えば計算部302は、姿勢データ350のうち加速度を示すデータのみを用いて、所定時間分の姿勢の変化量を計算できる。図5(a)は、加速度センサによって得られた把持モジュール201の移動する加速度を示す姿勢データ350の時間変化をグラフにした例である。図5(b)は、測定された加速度の時間積分で得られる速度の時間変化をグラフにした例である。このように、時間ΔT(=T2−T1)における加速度の変化量ΔA(=A2−A1)、もしくは速度の変化量ΔV(=V2−V1)が得られる。同様にして、計算部302は、任意の時間分の加速度の変化量ΔAもしくは速度の変化量ΔVを計算できる。
計算部302は、異なる時刻T1,T2間の姿勢データ350の差を変化量としてもよいし、他の演算手法により変化量を求めてもよい。例えば、[数1]のように、時刻T1,T2間において単位区間(単位時間)あたりの姿勢データ350の変化量をそれぞれの区間について求めて、各区間における変化量の総和を区間数で割った値(相加平均)を、求める変化量としてもよい。
姿勢の変化量(相加平均) = (ΣCi)/N ・・・[数1]
ただし、Nは1以上の整数で表される区間数、iは1以上N以下の整数、Σは区間iの姿勢の変化量Ciの1≦i≦Nにおける総和である。
また、例えば、[数2]のように、各区間ごとに予め定義された重み付けGi(ただし0以上1以下)を考慮して、姿勢の変化量を求めてもよい。
姿勢の変化量(相加平均) = (Σ(Gi×Ci))/N ・・・[数2]
重み付けGiは予め記憶部301に記憶される。
また、例えば、[数3]のように、各区間iにおける姿勢の変化量の、時刻T1,T2間での標準偏差σを、求める姿勢の変化量にしてもよい。
σ^2 = (Σ(Ci−Ca)^2)/N ・・・[数3]
ただし、Caは[数1]又は[数2]で求めた相加平均、演算子「^」はべき乗(例えばX^YならXのY乗を示す)である。
[数3]において、σ^2(分散)を、求める姿勢の変化量にしてもよい。
また、例えば、[数4]のように、各区間iにおける姿勢の変化量の、時刻T1,T2間での二乗平均平方根(RMS;Root Mean Square)を、求める姿勢の変化量にしてもよい。
RMS^2 = (Σ(Ci^2))/N ・・・[数4]
ここに記載した姿勢の変化量を求めるための数式は例示に過ぎない。
計算部302は、記憶部301に記憶した所定時間分の姿勢データ350のすべてを用いて姿勢の経過の変化量を求める必要はなく、特定の一部の姿勢データ350をサンプリングして[数1]〜[数4]などにより姿勢の変化量を求めてもよい。例えば、計算部302は、姿勢の変化量を求めるために、記憶部301に記憶された姿勢データ350の一部を間引いて用いたり、統計的な特異点にある姿勢データ350を省いて用いたりして計算してもよい。
なお、計算部302は、同様にして角加速度と角速度の所定時間分の変化量を計算することもできる。傾きセンサ、加速度センサ、角加速度センサによって測定されるデータは垂直同期割り込みなどの周期的なタイミングで得られるので、傾き、加速度、速度、角加速度、角速度の時間変化は厳密には不連続な点の集合で表されることになるが、図4(a)、図5(a)と(b)では本発明をより理解しやすくするために変化量の時間変化を連続的に示している。
推定部303は、把持モジュール201が備える各キーに対するユーザの押下操作が検知されると、計算部302によって計算された姿勢データ350の変化量から、ユーザの押下操作の強さを推定する。CPU 101とコントローラ105が協働して動作することにより、推定部303として機能する。
より詳細には、推定部303は、計算部302によって計算された姿勢データ350の変化量が大きいほど、ユーザの押下操作の強さが大きいと推定する。例えば、推定部303は、Aボタン204が押下されたとき、姿勢データ350の示す傾きの変化量が大きいほど、Aボタン204が強く押下されたと推定する。言い換えれば、Aボタン204がユーザによって押下されたとき、把持モジュール201の振り幅が大きいほど、Aボタン204が強く押下されたと推定する。典型的には、推定部303が推定する強さは、姿勢データ350の変化量の大きさに対して単調増加する。
例えば図6(a)は、姿勢データ350(例えば傾き)の変化量と、推定部303による推定結果である押下操作情報370との対応関係を示す表の一例である。この例では、推定部303は、姿勢データ350の変化量を4段階に分類し、それぞれの段階に応じて押下の強さを推定している。なお、本図は一例にすぎず、段階数や対応関係は任意であり、また、段階に分けずに変化量の大きさを押下操作の強さと推定してもよい。
また、推定部303は、傾きの変化量のほか、計算部302によって計算された加速度、速度、角加速度、角速度の変化量が大きくなると、ユーザの押下操作の強さが大きくなるように推定することもできる。推定部303は、傾きと加速度の組み合わせなどのように、傾き、加速度、速度、角加速度、角速度のうちの任意のパラメータの組み合わせに基づいて、押下操作の強弱を推定するようにしてもよい。なお、本実施形態では、推定部303は、姿勢データ350のうち傾きを示すデータを用いて押下の強さを推定するものとする。
把持モジュール201が備える各キーのうち、推定部303がどのキーの押下操作の強さを推定するかは任意である。本実施形態では、推定部303は、Aボタン204の押下の強さを推定するが、十字形キー203、Bボタン205、各種ボタン206など他のボタンやキーの押下の強さを推定するようにしてもよい。
なお、推定部303は、計算部302によって計算された変化量が所定の閾値Cth以上である場合、ユーザの押下操作の強さが所定の最大強度であると推定するようにしてもよい。図7は、計算部302により計算された姿勢の変化量と、推定部303が推定する押下の強さとの関係を示す概念図である。推定部303は、変化量が増加すると押下操作の強さが単調増加し、変化量が所定の閾値Cthになると押下操作の強さが最大値Smaxであると推定する。このように、推定部303が推定する押下の強さに上限を設けてもよい。
推定部303は、図6(a)に示すように姿勢の変化量を幾つかの範囲に予め区分けしておき、それぞれの範囲ごとに強い・弱いなどの押下操作情報370を対応づけてもよいし、図7に示すように任意の変化量に対して一義的に強さが求まるような関数を予め定義しておき、この所定の関数によって得られる強さを示す数値(ただし、0以上最大値Smax以下)で表される押下操作情報370を得てもよい。
判定部304は、計算部302によって計算された姿勢データ350の変化量が所定の閾値Cth以上である場合、ユーザの振り操作がされたと判定する。CPU 101とコントローラ105が協働して動作することにより、判定部304として機能する。
より詳細には、判定部304は、計算部302によって計算された姿勢データ350の変化量が所定の閾値Cth以上の場合、ユーザによる振り動作がされたと判定する。一方、姿勢データ350の変化量が閾値Cth未満の場合、振り動作がされていないと判定する。例えば図6(b)は、姿勢データ350(例えば傾き)の変化量と、判定部303による判定結果である振り操作情報380との対応関係を示す表の一例である。この例では、判定部303は、姿勢データ350の変化量を2段階に分類し、それぞれの段階に応じて把持モジュール201がユーザによって振られたか否かを判定している。なお、本図は一例にすぎず、段階数や対応関係は任意であり、また、段階に分けずに変化量の大きさを振り操作の強さ(又は振り操作の有無)とみなしてもよい。
あるいは、判定部304は、計算部302によって計算された姿勢データ350の変化量が所定の閾値Cth以上の場合、姿勢データ350の変化量に応じて振り操作の強さを判定してもよい。例えば図6(c)は、姿勢データ350(例えば傾き)の変化量と振り操作情報380との対応関係を示す表の一例である。この例では、判定部304は、姿勢データ350の変化量を3段階に分類し、それぞれの段階に応じて振り操作の強さを判定している。なお、本図は一例にすぎず、段階数や対応関係は任意であり、また、段階に分けずに変化量の大きさを振り操作の強さ(どれだけ大きく振ったかを示す値)とみなしてもよい。
出力部305は、推定部303による推定結果、すなわち、ユーザの押下操作の強さを指定する押下操作情報370を出力する。例えば、推定部303が図6(a)に示すように姿勢データ350の変化量に応じて押下の強さを推定する場合、出力部305は、推定結果である、弱く押された/やや弱く押された/やや強く押された/強く押された、のいずれかを指定する押下操作情報370を出力する。出力部305は、計算部302によって計算された姿勢の変化量を、押下操作の強さを指定する押下操作情報370として出力してもよい。
また、出力部305は、判定部304により姿勢の変化量が閾値Cth以上であると判定された場合(ユーザの振り操作がされたと判定された場合)、計算部302によって計算された変化量を振り操作の強さとして指定する振り操作情報380をさらに出力する。例えば、判定部304が図6(b)に示すように姿勢データ350の変化量に応じて把持モジュール201が振られたか否かを判定する場合、出力部305は、判定結果である、振られていない/振られた、のいずれかを指定する振り操作情報380を出力する。出力部305は、計算部302によって計算された姿勢の変化量を、振り操作の強さを指定する振り操作情報380として出力してもよい。
あるいは、判定部304が例えば図6(b)に示すように姿勢データ350の変化量に応じて振り操作の有無を判定し、振り操作がされたと判定された場合に、出力部305が変化量に応じて振り操作の強さを求め、求めた振り操作の強さを示す振り操作情報380を出力してもよい。
このように、出力部305は、押下操作情報370と振り操作情報380とをそれぞれ独立して出力することができる。すなわち、出力部305は、例えば「強く押され、且つ、振られていない」「強く押され、且つ、振られた」というような情報を出力することもできる。なお、CPU 101が出力部305として機能する。
また、図6(d)と図6(e)に示すように、出力部305は、推定部303による推定結果と判定部304による判定結果とを組み合わせて、押下操作情報370又は振り操作情報380を出力するようにしてもよい。例えば図6(d)では、出力部305は、姿勢データ350(例えば傾き)の変化量がC2未満であれば「弱く押された」旨の押下操作情報370を、C2以上閾値Cth未満であれば「強く押された」旨の押下操作情報370を、閾値Cth以上であれば「振られた」旨の振り操作情報380を出力する。また、例えば図6(e)では、出力部305は、姿勢データ350(例えば傾き)の変化量がCth未満であれば押下操作情報370を、Cth以上C4未満であれば「弱く振られた」旨の振り操作情報380を、C4以上であれば「強く振られた」旨の振り操作情報380を出力する。このように、出力部305は押下操作情報370と振り操作情報380のどちらか一方を出力するようにしてもよい。なお、本図は一例にすぎず、段階数や対応関係は任意であり、また、段階によって分けずに変化量の大きさを押下操作の強さ又は振り操作の強さとみなしてもよい。
なお、図6(a)乃至(e)に示すような対応関係を示す情報は、テーブルやデータベースとして予め記憶部301に記憶されており、推定部303と判定部304はこの対応関係を示す情報を記憶部301から随時読み出して推定あるいは判定する。このような対応関係を示すデータを予め記憶した所定のプログラムを実行することで、推定あるいは判定してもよい。ただし、強い・弱いなどのような段階に分けずに、計算部302によって計算された姿勢の変化量を押下操作の強さあるいは振り操作の強さとする場合には、記憶部301はこのような対応関係を示す情報を予め記憶する必要はない。
(推定・判定処理)
次に、入力装置300の各部が行う処理について図8のフローチャートを用いて説明する。以下の説明では、一例として、推定部303と判定部304が、例えば図6(e)に示すような対応関係に基づいて押下の強さを推定したり振り操作の強さを判定したりするものとする。
把持モジュール201は、CPU 101の制御により、垂直同期割り込みなどの定期的なタイミングで把持モジュール201の姿勢を検知して、得られた姿勢データ350を記憶部301に記憶させる。例えば姿勢データ350には、把持モジュール201の傾き、把持モジュール201の移動する加速度、速度を示すデータ、把持モジュール201の回転する角加速度、加速度を示すデータなどが含まれる。本実施形態では、記憶部301は把持モジュール201の傾きを示す姿勢データ350を所定時間分だけ記憶して、推定部303と判定部304はこの傾きを示す姿勢データ350の所定時間分の変化量に応じて押下の強さを推定、あるいは振り動作がされたか否かを判定する。ただし、これは一例に過ぎず、把持モジュール201の移動する加速度、速度、回転の角加速度、角速度を示す姿勢データ350に応じて押下の強さを推定、あるいは振り動作がされたか否かを判定する実施形態を採用してもよい。また、把持モジュール201が姿勢を検知するタイミングは任意であるが、コントローラ105は所定の定期的な間隔で姿勢を検知することが望ましい。
まず、計算部302は、記憶部301に記憶された姿勢データ350の所定時間分の変化量を計算する(ステップS801)。例えば、計算部302は、記憶部301に記憶された所定時間T1,T2間の把持モジュール201の傾き等の姿勢の差を求めたり、上述の[数1]〜[数4]のような統計的な演算を行って傾き等の姿勢の変化量を求めたりする。
次に、コントローラ105は、把持モジュール201に配置された各キー(例えばAボタン204)が押下されたか否かを判別する(ステップS802)。
押下されたと判別された場合(ステップS802;YES)、推定部303は、ステップS801で計算部302が求めた姿勢の変化量が所定の閾値Cth以上か否かを判別する(ステップS803)。
姿勢の変化量が閾値Cth以上ではないと判別された場合(ステップS803;NO)、推定部303は、計算部302が求めた姿勢の変化量に応じて押下の強さを推定する(ステップS804)。例えば、推定部302は、図6(e)に示すような対応関係に基づいて、求めた変化量に対応する押下の強さを取得する。ただし、計算部302が求めた姿勢の変化量を押下の強さとしてもよい。さらに、判定部304は、把持モジュール201がユーザによって振られていないと判定する(ステップS805)。
姿勢の変化量が閾値Cth以上であると判別された場合(ステップS803;YES)、推定部303は、ユーザによる押下操作が所定の最大強度であると推定する(ステップS806)。判定部304は、把持モジュール201がユーザによって振られたと判定し、さらに、計算部302によって計算された姿勢の変化量の大きさに応じて振り操作の大きさを判定する(ステップS807)。
一方、ステップS802で、押下されていないと判別された場合(ステップS802;NO)、判定部304は、計算部302によって計算された姿勢の変化量の大きさに応じて、振り操作の大きさを判定する(ステップS807)。
そして、出力部305は、ステップS804又はS806で推定された押下の強さを示す押下操作情報370と、ステップS805又はS807で判定された振り操作の強さ(又は振り操作がされたか否か)を示す振り操作情報380とを出力する(ステップS808)。ここで、出力部305は、姿勢の変化量が所定の閾値Cth以上であれば振り操作情報380のみを出力し、それ以外であれば押下操作情報370のみを出力するようにしてもよい。
なお、ステップS807で判定部304が振り操作がされたか否かを判定し、ステップS808で出力部305が姿勢の変化量に応じた振り操作の強さを求めて出力するようにしてもよい。
また、ステップS804とS806で推定部303が計算部302によって計算された姿勢の変化量を押下の強さとして推定し、ステップS805とS807で判定部304が姿勢の変化量を振り操作の強さとして判定してもよい。
このように、本実施形態によれば、入力装置300は、所定時間分の把持モジュール201の姿勢の変化量に基づいて、ユーザによる操作ボタン等の押下操作の強さを容易に推定することができる。そして、入力装置300は、押下の強さを得るための圧力センサといった専用のセンシングデバイスを備える必要はない。また、入力装置300は、変化量が所定の閾値以上であれば把持モジュール201が振られたと判別するので、押下操作の強さを容易に推定できるとともに、振り操作の強さも容易に判定することができる。
例えば、一般的なユーザは、把持モジュール201に配置された各キー(例えばAボタン204)を強く押そうとするほど、勢いで把持モジュール201を振る(言い換えれば、把持モジュール201の姿勢にぶれが生じる)ような動きをしがちな傾向にあるので、本発明を用いれば、把持モジュール201の姿勢の経過からユーザが各キーを押すときにどの程度強く押そうとしたのか推定することができる。
本実施形態では、入力装置300は、押下操作の強さの推定と振り操作の強さの判定との両方を行っているが、押下操作の強さの推定のみを行うように構成することもできる。この場合、入力装置300の構成は判定部304を省略したものにすることができ、さらに簡易な構成にすることができる。
(実施例2)
次に、本発明の他の実施形態について説明する。本実施形態は、入力装置300は把持モジュール201のCCDカメラ202によって撮影された画像内において発光ダイオード252が撮影された位置に基づいて取得される、発光モジュール251に対する把持モジュール201の位置をさらに用いて推定・判定処理を行う点で、上述の実施形態と異なる。すなわち、上述の推定・判定処理において、推定部303と判定部304は、姿勢と位置との両方に基づいて、押下の強さを推定し、振り操作の強さを判定してもよい。以下詳述する。
上述したように、把持モジュール201は、把持モジュール201の姿勢と、把持モジュール201の表面に配置された各キーのユーザによる押下操作とに加えて、把持モジュール201の位置を検知する。すなわち、把持モジュール201は、姿勢、位置、押下操作を検知するための検知装置である。CPU 101は検知結果データを取得して記憶部301に記憶させる。
記憶部301は、把持モジュール201により検知された姿勢と位置の経過を、所定時間分だけ記憶する。例えば、把持モジュール201は、垂直同期割り込みなどの定期的なタイミングで把持モジュール201の姿勢と位置との両方を検知し、記憶部301は所定回数分の測定結果である姿勢データ350と位置データ360の両方を履歴として記憶する。記憶部301は、最新のN個分の姿勢データ350と位置データ360を対応づけて記憶する。
計算部302は、記憶部301に記憶される所定時間分の姿勢データ350から、この所定時間分の把持モジュール201の姿勢の変化量を計算する。さらに、計算部302は、記憶部301に記憶される所定時間分の位置データ360から、この所定時間分の把持モジュール201の位置の変化量を計算する。ここで、計算部302は、上述した姿勢の変化量を求める手法と同じ手法を用いて位置の変化量を求めることができる。すなわち、計算部302は、所定時間分の位置の差や、相加平均、標準偏差、分散、二乗平均平方根などの統計値を計算することにより位置の変化量を求めることができる。
推定部303は、把持モジュール201が備える各キーに対するユーザの押下操作が把持モジュール201により検知されると、計算部302によって計算された姿勢データ350の変化量と位置データ360の変化量からユーザの押下操作の強さを推定する。例えば、推定部303は、図6(a)に示すような対応関係を用いて、姿勢データ350の変化量に応じてユーザの押下操作の強さを推定する。推定部303は、姿勢データ350の変化量を押下操作の強さとして推定してもよい。また、推定部303は、計算部302によって計算された位置データ360の変化量が所定の閾値Pth以上である場合、ユーザによる押下操作の強さが所定の最大強度(上限値)であると推定する。
判定部304は、計算部302によって計算された姿勢データ350の変化量が所定の閾値Cth以上である場合、ユーザの振り操作がされたと判定する。また、計算部302によって計算された位置データ360の変化量が閾値Pth以上である場合、ユーザの振り操作がされたと判定する。
出力部305は、推定部303により推定されたユーザの押下操作の強さを指定する押下操作情報370と、判定部304により判定されたユーザの振り操作の大きさを指定する振り操作情報380を出力する。
次に、本実施形態の入力装置300の各部が行う処理について図9のフローチャートを用いて説明する。
把持モジュール201は、CPU 101の制御により、垂直同期割り込みなどの定期的なタイミングで把持モジュール201の姿勢と位置を検知する。CPU 101は検知結果データを取得して、把持モジュール201の姿勢データ350と位置データ360を記憶部301に記憶させる。姿勢データ350には、把持モジュール201の傾き、把持モジュール201の移動する加速度、速度を示すデータ、把持モジュール201の回転する角加速度、角速度の全部あるいは一部が含まれる。コントローラ105が姿勢と位置を検知するタイミングは任意であるが、把持モジュール201は所定の定期的な間隔で姿勢と位置を検知することが望ましい。
まず、計算部302は、記憶部301に記憶された姿勢データ350(例えば傾き)の所定時間分の変化量を計算する(ステップS901)。また、計算部302は、記憶部301に記憶された位置データ360の所定時間分の変化量を計算する(ステップS902)。
コントローラ105は、把持モジュール201に配置された各キー(例えばAボタン204)が押下されたか否かを判別する(ステップS903)。
押下されたと判別された場合(ステップS903;YES)、推定部303は、ステップS902で計算部302が求めた位置の変化量が所定の閾値Pth以上か否かを判別する(ステップS904)。
位置の変化量が閾値Pth以上であると判別された場合(ステップS904;YES)、推定部303は、ユーザによる押下操作が所定の最大強度であると推定する(ステップS905)。判定部304は、把持モジュール201がユーザによって振られたと判定し、さらに、計算部302によって計算された姿勢の変化量の大きさに応じて振り操作の強さを判定する(ステップS906)。ここで、判定部304は、振り操作の強さを判定する代わりに、姿勢の変化量が所定の閾値Cth以上か否か(すなわち、振り操作がされたか否か)を判定してもよい。
位置の変化量が閾値Pth未満であると判別された場合(ステップS904;NO)、推定部303は、ステップS902で計算部302が求めた姿勢の変化量が所定の閾値Cth以上か否かを判別する(ステップS907)。
姿勢の変化量が閾値Cth以上であると判別された場合(ステップS907;YES)、推定部303は押下操作の強さが最大強度であると推定し(ステップS905)、判定部304は姿勢の変化量の大きさに応じて振り操作の強さを判定する(ステップS906)。
姿勢の変化量が閾値Cth未満であると判別された場合(ステップS907;NO)、推定部303は、計算部302が求めた姿勢の変化量に応じて押下の強さを推定する(ステップS908)。推定部303は、姿勢の変化量を押下操作の強さとして推定してもよい。さらに、判定部304は、把持モジュール201がユーザによって振られていないと判定する(ステップS909)。
一方、ステップS903で、押下されていないと判別された場合(ステップS903;NO)、判定部304は、計算部302によって計算された姿勢の変化量の大きさに応じて、振り操作の大きさを判定する(ステップS906)。判別部304は、姿勢の変化量を振り操作の強さとして判定してもよい。
そして、出力部305は、ステップS905又はS908で推定された押下の強さを示す押下操作情報370と、ステップS906又はS909で判定された振り操作の強さ(又は振り操作がされたか否か)を示す振り操作情報380とを出力する(ステップS910)。
このように、本実施形態によれば、入力装置300は、所定時間分の把持モジュール201の姿勢の変化量と位置の変化量とに基づいて、ユーザによる操作ボタン等の押下操作の強さを容易に推定することができる。そして、入力装置300は、押下の強さを得るための圧力センサといった専用のセンシングデバイスを備える必要はない。また、入力装置300は、変化量が所定の閾値以上であれば把持モジュール201が振られたと判別するので、押下操作の強さを容易に推定できるとともに、振り操作の強さも容易に判定することができる。そして、入力装置300は、姿勢の変化量と位置の変化量に基づいて、ユーザによる押下操作と振り操作の区別を推測しやすくなる。
(実施例3)
次に、本発明の他の実施形態について説明する。本実施形態は、把持モジュール201が各キーの押下操作を検知してから所定の待ち時間経過後に推定部303が押下操作の強さを推定する点で、上述の各実施形態と異なる。すなわち、本実施形態では、推定部303によって推定される押下操作の強さは、各キーが押下される前の姿勢(あるいは姿勢と位置の両方)の経過だけでなく、各キーが押下された後の姿勢(あるいは姿勢と位置の両方)の経過も考慮された量になる。以下詳述する。
記憶部301は、上述の実施形態と同様に、把持モジュール201により検知された姿勢と位置の経過を、所定時間Tr分だけ記憶する。
推定部303は、把持モジュール201が備える各キーに対するユーザの押下操作が検知されると、所定の待ち時間Twが経過した後、計算部302によって計算された姿勢データ350の変化量(あるいは姿勢データ350と位置データ360の変化量の両方)からユーザの押下操作の強さを推定する。待ち時間Twの長さは任意に決めることができるが、待ち時間Tw<所定時間Trであることが望ましい。
なお、入力装置300のその他の構成は上述の実施形態と同様であるため説明を省略する。
次に、本実施形態の入力装置300の各部が行う処理について図10のフローチャートを用いて説明する。なお、本実施形態は、上述の各実施形態と組み合わせて実施することができるが、ここでは実施例1と組み合わせた形態を例にとって説明する。
まず、計算部302は、記憶部301に記憶された姿勢データ350の所定時間分の変化量を計算する(ステップS1001)。
次に、把持モジュール201は、把持モジュール201上に配置された各キー(例えばAボタン204)が押下されたか否かを判別する(ステップS1002)。
押下されていないと判別された場合(ステップS1002;NO)、入力装置300はステップS807の処理に進む。なお、ステップS807以降は上述の実施形態と同様であるため説明を省略する。
押下されたと判別された場合(ステップS1002;YES)、推定部303は、把持モジュール201が押下操作を検知してから所定の待ち時間Twが経過したか否かを判別する(ステップS1003)。待ち時間Twが経過していない場合(ステップS1003;NO)、待ち時間Twが経過するまで待機する(ステップS1003に戻る)。
待ち時間Twが経過した場合(ステップS1003;YES)、入力装置300はステップS803の処理に進む。なお、ステップS803以降は上述の実施形態と同様であるため説明を省略する。
例えば、一般的なユーザは、把持モジュール201に配置された各キー(例えばAボタン204)を強く押そうとするほど、勢いで把持モジュール201を振る(言い換えれば、把持モジュール201の姿勢にぶれが生じる)ような動きをしがちな傾向にあるが、このユーザの動きは、各キーを押す前の事前動作(予備動作)と、押した後の事後動作とに大別できる。本実施形態によれば、推定部303は、ユーザの事前動作だけでなく事後動作も考慮した、把持モジュール201の姿勢と位置の変化量に基づいて、押し操作の強さを推定できるので、より実情に即した推定を行うことができる。
(実施例4)
次に、本発明の他の実施形態について説明する。本実施形態は、計算部302が姿勢データ350(及び位置データ360)を複数の時間領域に分けてその領域ごとに変化量を計算する点で、上述の各実施形態と異なる。以下詳述する。
計算部302は、図11(a)に示すように、記憶部301に記憶された所定時間分の姿勢データ350を所定の2つの時間領域に分ける。例えば、時刻TAで押下操作が行われ、記憶部301に記憶された姿勢データ350がN個(Nは1以上の整数)であるとき、最も古く測定された姿勢データ350からM個分(Mは1以上N以下の整数)を第1の区間ΔT1とし、残りを第2の区間ΔT2とする。ただし、本実施形態では2つの区間に分けているが、図11(b)に示すようにL個(Lは2以上N以下の整数)の区間に分けてもよい。そして、計算部302は、上述した統計的な演算を行って区間ごとに姿勢の変化量を求める。
推定部303は、ユーザによる押下操作が検知されると、計算部302によって計算された各区間の姿勢の変化量に基づいて押下操作の強さを推定する。
図12は、ユーザが把持モジュール201を握っている様子を真横から見たときの図である。ボタン1201は任意の操作ボタン・操作キーであり、矢印Y1方向に押下できるものとする。ユーザがボタン1201をY1方向に押下すると、事前動作(予備動作)もしくは事後動作(勢い)で傾き1202が矢印Y1方向又は矢印Y2方向に変化する(姿勢がぶれる)。典型的には、ユーザは、ボタン1201を強く押そうとするほど、把持モジュール201を一旦矢印Y2方向に引いてから(予備動作)、勢いをつけて矢印Y1方向に振りつつボタン1201を押下することが多い。
そこで、推定部303は、ボタン1201を押下する方向Y1の姿勢の変化量と、その逆方向Y2の姿勢の変化量とに基づいて、押下の強さを推定する。例えば、推定部303は、第1の区間ΔT1が予備動作にあたる区間であるとみなし、第1の区間ΔT1における姿勢の変化量と、第2の区間ΔT2における姿勢の変化量とに基づいて、押下の強さを推定する。
具体的には、上述のステップS804で、推定部303は、予備動作にあたる第1の区間ΔT1での傾きの変化の向きを考慮した変化量(すなわちベクトル量)と、その後の動作にあたる第2の区間ΔT2での変化の向きを考慮した変化量との差が大きいほど、強く押下されたと推定する。
あるいは、上述のステップS804で、推定部303は、予備動作にあたる第1の区間ΔT1での傾きの変化量と、第2の区間ΔT2での傾きの変化量との比を求めて、第1の区間ΔT1での傾きの変化量の比率が大きいほど、強く押されたと推定する。
なお、推定部303は、傾きの変化量だけでなく、移動の加速度や速度、回転の角加速度や角速度の変化量を区間ごとに求めて、同様に押下の強さを推定することもできる。
本発明は、上述した実施形態に限定されず、種々の変形及び応用が可能である。また、上述した実施形態の各構成要素を自由に組み合わせることも可能である。
上述の各実施形態では、把持モジュール201は傾きセンサ、加速度センサ、角加速度センサを備えているが、これらのうちの一部のみを備え、推定部303は傾き、加速度(あるいは速度)、角加速度(あるいは角速度)の変化量のうちの一部のみを用いて押し操作の強さを推定してもよい。把持モジュール201やコントローラ105全体の形状等は本発明によって限定されないことは言うまでもない。
上述の各実施形態は、様々なゲームにおける入力デバイスに適用することができる。例えば、仮想空間内のシューティングゲームにおいて、本発明の入力装置300の構成を含むゲーム装置は、計算部302によって計算された姿勢や位置の変化量に応じて各キーの押下操作の強さを推定し、推定結果に応じて銃・ミサイル・ビームなどのパワーを調節することができる。
例えば、把持モジュール201をドラムのような楽器を演奏するときのバチに見立てて、ユーザが把持モジュール201を振ったり所定ボタンを押したりすることによって楽器を演奏するゲームにおいて、計算部302によって計算された姿勢や位置の変化量に応じて各キーの押下操作の強さを推定し、推定結果に応じて楽器の音量を調節する。また、姿勢や位置の変化量が所定量以上であれば、把持モジュール201が振られたと判定し、ドラムをたたくバチの振りアクションとみなす。
入力装置300を装置の全部又は一部として動作させるためのプログラムを、メモリカード、CD−ROM、DVD、MO(Magneto Optical disk)などのコンピュータ読み取り可能な記録媒体に格納して配布し、これを別のコンピュータにインストールし、上述の手段として動作させ、あるいは、上述の工程を実行させてもよい。
さらに、インターネット上のサーバ装置が有するディスク装置等にプログラムを格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するものとしてもよい。
以上説明したように、本発明によれば、ユーザによる押下操作の強さを推定するために好適な入力装置、入力制御方法、ならびに、プログラムを提供することができる。
本発明のゲーム装置が実現される典型的な情報処理装置の概要構成を示す図である。 本実施形態にて利用されるコントローラと情報処理装置の外観を示す説明図である。 入力装置の各部が行う処理を説明するための構成図である。 (a)傾きを示す姿勢データの時間変化の例を示す図である。(b)と(c)は把持モジュールの姿勢の例を示す図である。 (a)加速度を示す姿勢データの時間変化の例を示す図である。(b)速度を示す姿勢データの時間変化の例を示す図である。 (a)押下操作情報の構成例を示す図である。(b)と(c)は振り操作情報の構成例を示す図である。(d)と(e)は押下操作情報と振り操作情報を組み合わせた出力結果の構成例を示す図である。 姿勢の変化量と、推定される押下の強さとの関係を示す概念図である。 実施例1の入力装置の各部が行う処理を説明するためのフローチャートである。 実施例2の入力装置の各部が行う処理を説明するためのフローチャートである。 実施例3の入力装置の各部が行う処理を説明するためのフローチャートである。 (a)と(b)は所定の区間に分けた姿勢データの時間変化の例を示す図である。 把持モジュールの姿勢の例を示す図である。
符号の説明
100 情報処理装置
101 CPU
102 ROM
103 RAM
104 インターフェイス
105 コントローラ
106 外部メモリ
107 画像処理部
108 DVD−ROMドライブ
109 NIC
110 音声処理部
111 マイク
201 把持モジュール
202 CCDカメラ
203 十字形キー
204 Aボタン
205 Bボタン
206 各種ボタン
207 インジケータ
208 電源ボタン
251 発光モジュール
252 発光ダイオード
291 テレビジョン装置
300 入力装置
301 記憶部
302 計算部
303 推定部
304 判定部
305 出力部
350 姿勢データ
360 位置データ
370 押下操作情報
380 振り操作情報

Claims (8)

  1. ユーザによって把持される検知装置であって、当該検知装置の姿勢と、当該ユーザの押下操作と、を検知する検知装置と、
    前記検知装置により検知された姿勢の経過を所定時間分だけ記憶する記憶部と、
    前記記憶部に記憶される姿勢の経過から当該所定時間分の姿勢の変化量を計算する計算部と、
    前記計算された変化量から当該ユーザの押下操作の強さを推定する推定部と、
    前記推定部により推定された当該ユーザの押下操作の強さを指定する押下操作情報を出力する出力部と、
    を備えることを特徴とする入力装置。
  2. 請求項1に記載の入力装置であって、
    前記計算された変化量が所定の閾値以上である場合、当該ユーザの振り操作がされたと判定する判定部
    をさらに備え、
    前記判定部により当該ユーザの振り操作がされたと判定された場合、前記出力部は、前記計算された変化量を当該振り操作の強さとして指定する振り操作情報をさらに出力する
    ことを特徴とする入力装置。
  3. 請求項1または2に記載の入力装置であって、
    前記推定部は、前記計算された変化量が大きいほど、当該ユーザの押下操作の強さが大きいと推定する
    ことを特徴とする入力装置。
  4. 請求項2に記載の入力装置であって、
    前記推定部は、前記計算された変化量が当該所定の閾値以上である場合、当該ユーザの押下操作の強さが所定の最大強度であると推定する
    ことを特徴とする入力装置。
  5. 請求項1乃至4のいずれか1項に記載の入力装置であって、
    前記推定部は、前記検知装置により当該ユーザによる押下操作が検知されてから所定の待ち時間経過後に前記計算部により計算された変化量から、当該ユーザの押下操作の強さを推定する
    ことを特徴とする入力装置。
  6. 請求項1乃至5のいずれか1項に記載の入力装置であって、
    前記検知装置は、当該検知装置の位置をさらに検知し、
    前記記憶部は、前記検知装置により検知された姿勢の経過と対応づけて、前記検知装置により検知された位置の経過を所定時間分だけさらに記憶し、
    前記計算部は、前記記憶部に記憶される位置の経過から当該所定時間分の位置の変化量をさらに計算し、
    前記推定部は、前記計算された姿勢の変化量と位置の変化量から、当該ユーザの押下操作の強さを推定する
    ことを特徴とする入力装置。
  7. 記憶部、検知装置、計算部、推定部、出力部を有する入力装置にて実行される入力制御方法であって、
    前記記憶部は、前記検知装置により検知された姿勢の経過を所定時間分だけ記憶し、
    ユーザによって把持される前記検知装置が、前記検知装置の姿勢と、当該ユーザによる押下操作と、を検知する検知ステップと、
    前記計算部が、前記記憶部に記憶される姿勢の経過から、当該所定時間分の姿勢の変化量を計算する計算ステップと、
    前記推定部が、前記計算された変化量から当該ユーザの押下操作の強さを推定する推定ステップと、
    前記出力部が、前記推定ステップにより推定された当該ユーザの押下操作の強さを指定する押下操作情報を出力する出力ステップと、
    を備えることを特徴とする入力制御方法。
  8. ユーザによって把持される検知装置であって当該検知装置の姿勢と当該ユーザによる押下操作とを検知する検知装置を備えるコンピュータを、
    前記検知装置により検知された姿勢の経過を所定時間分だけ記憶する記憶部、
    前記記憶部に記憶される姿勢の経過から当該所定時間分の姿勢の変化量を計算する計算部、
    前記計算された変化量から当該ユーザの押下操作の強さを推定する推定部、
    前記推定部により推定された当該ユーザの押下操作の強さを指定する押下操作情報を出力する出力部、
    として機能させることを特徴とするプログラム。
JP2007052855A 2007-03-02 2007-03-02 入力装置、入力制御方法、ならびに、プログラム Active JP4129036B1 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2007052855A JP4129036B1 (ja) 2007-03-02 2007-03-02 入力装置、入力制御方法、ならびに、プログラム
CN2007800519187A CN101617284B (zh) 2007-03-02 2007-12-26 输入装置、输入控制方法、信息记录介质以及程序
KR1020097016416A KR100942232B1 (ko) 2007-03-02 2007-12-26 입력장치, 입력제어방법 및 정보기록매체
US12/528,953 US8514175B2 (en) 2007-03-02 2007-12-26 Input device, input control method, information recording medium, and program
EP07860195A EP2128746A4 (en) 2007-03-02 2007-12-26 INPUT DEVICE, INPUT CONTROL DEVICE, INFORMATION RECORDING MEDIUM, AND PROGRAM
PCT/JP2007/074966 WO2008108049A1 (ja) 2007-03-02 2007-12-26 入力装置、入力制御方法、情報記録媒体、ならびに、プログラム
TW097101317A TWI337885B (en) 2007-03-02 2008-01-14 Input device, method for controlling input, and information recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007052855A JP4129036B1 (ja) 2007-03-02 2007-03-02 入力装置、入力制御方法、ならびに、プログラム

Publications (2)

Publication Number Publication Date
JP4129036B1 JP4129036B1 (ja) 2008-07-30
JP2008212339A true JP2008212339A (ja) 2008-09-18

Family

ID=39704964

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007052855A Active JP4129036B1 (ja) 2007-03-02 2007-03-02 入力装置、入力制御方法、ならびに、プログラム

Country Status (7)

Country Link
US (1) US8514175B2 (ja)
EP (1) EP2128746A4 (ja)
JP (1) JP4129036B1 (ja)
KR (1) KR100942232B1 (ja)
CN (1) CN101617284B (ja)
TW (1) TWI337885B (ja)
WO (1) WO2008108049A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015039589A (ja) * 2013-08-23 2015-03-02 株式会社フォーラムエイト 携帯端末を用いた運転シミュレーション装置及び運転シミュレーションプログラム

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2013006200A (es) 2010-12-01 2013-07-29 Hartwall K Oy Ab Montaje de acoplamiento para una plataforma rodante y una plataforma rodante.
CN103000171B (zh) * 2011-08-23 2015-08-19 卡西欧计算机株式会社 演奏装置、发光控制装置及演奏装置的控制方法
WO2015105007A1 (ja) * 2014-01-07 2015-07-16 旭化成株式会社 進行方向判定装置、マップマッチング装置、進行方向判定方法、およびプログラム
CN104639845B (zh) 2015-03-17 2017-12-26 上海兆芯集成电路有限公司 高动态范围图像产生方法以及使用该方法的装置
CN108992922A (zh) * 2018-06-27 2018-12-14 深圳市趣动互联科技有限公司 在线游戏互动方法及系统
WO2020161782A1 (ja) 2019-02-05 2020-08-13 三菱電機株式会社 空気調和装置の室外機

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4120017B2 (ja) * 1997-01-30 2008-07-16 株式会社セガ 入力装置およびゲーム処理装置、その方法
JP2000107444A (ja) * 1998-10-08 2000-04-18 Kaze:Kk 電子ゲーム機用のオフライン操作式スイング入力デバイス
US6375572B1 (en) 1999-10-04 2002-04-23 Nintendo Co., Ltd. Portable game apparatus with acceleration sensor and information storage medium storing a game progam
DE60132963T2 (de) 2000-09-05 2009-04-16 Yamaha Corporation, Hamamatsu Vorrichtung und Verfahren zur Tonerzeugung in Abhängigkeit der Bewegung eines tragbares Terminals
JP3856129B2 (ja) * 2002-06-28 2006-12-13 ノキア コーポレイション 無線通信デバイス
JP3866163B2 (ja) 2002-07-01 2007-01-10 アルプス電気株式会社 ゲーム機用コントローラ
JP4111278B2 (ja) * 2003-11-20 2008-07-02 独立行政法人産業技術総合研究所 触力覚情報提示システム
JP4046078B2 (ja) 2003-12-10 2008-02-13 ソニー株式会社 入力装置及び入力方法、並びに電子機器
JP4220943B2 (ja) * 2004-07-15 2009-02-04 ソフトバンクモバイル株式会社 電子機器
US20060060068A1 (en) * 2004-08-27 2006-03-23 Samsung Electronics Co., Ltd. Apparatus and method for controlling music play in mobile communication terminal
KR100617719B1 (ko) 2004-08-27 2006-08-28 삼성전자주식회사 이동 통신 단말기에서 움직임에 종속한 사운드를 생성하는장치 및 방법
KR20070009299A (ko) 2005-07-15 2007-01-18 삼성전자주식회사 동작에 따른 음을 발생하는 장치 및 방법
KR100972907B1 (ko) * 2005-08-22 2010-07-28 닌텐도가부시키가이샤 게임 조작 장치
JP5089079B2 (ja) * 2006-05-08 2012-12-05 任天堂株式会社 プログラム、情報記憶媒体及び画像生成システム
JP4884867B2 (ja) * 2006-07-25 2012-02-29 任天堂株式会社 情報処理装置および情報処理プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015039589A (ja) * 2013-08-23 2015-03-02 株式会社フォーラムエイト 携帯端末を用いた運転シミュレーション装置及び運転シミュレーションプログラム

Also Published As

Publication number Publication date
CN101617284B (zh) 2011-11-30
EP2128746A4 (en) 2010-05-05
US20100103094A1 (en) 2010-04-29
TW200846059A (en) 2008-12-01
JP4129036B1 (ja) 2008-07-30
US8514175B2 (en) 2013-08-20
WO2008108049A1 (ja) 2008-09-12
KR20090098918A (ko) 2009-09-17
KR100942232B1 (ko) 2010-02-16
TWI337885B (en) 2011-03-01
CN101617284A (zh) 2009-12-30
EP2128746A1 (en) 2009-12-02

Similar Documents

Publication Publication Date Title
JP5325771B2 (ja) 加速度計データに基づいて、振りの衝撃の時期および/または振りの強度を検出するシステム、方法、装置、およびプログラム
JP4410284B2 (ja) ゲーム装置、ゲーム制御方法、ならびに、プログラム
JP4129036B1 (ja) 入力装置、入力制御方法、ならびに、プログラム
JP2008136694A (ja) プログラム、情報記憶媒体及びゲーム装置
JP4397421B2 (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
JP5519591B2 (ja) 情報表示装置、情報表示方法、ならびに、プログラム
JP2007097836A (ja) 通信ゲームプログラムおよび通信ゲームシステム
US20120315977A1 (en) Game device, game device control method and information recording medium
JP5255723B2 (ja) 選択装置、選択システム、選択装置の制御方法、ならびに、プログラム
US20110287839A1 (en) Game device, operation evaluation method, information recording medium and program
JP5519610B2 (ja) ゲーム装置、ゲーム装置の制御方法、ならびに、プログラム
JP5307060B2 (ja) 画像処理装置、画像処理方法、ならびに、プログラム
JP2011239937A (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
JP5279744B2 (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
JP4413911B2 (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
JP5124545B2 (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
JP2012055637A (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
JP4956600B2 (ja) ゲーム装置、ゲーム処理方法、ならびに、プログラム
CN113713371B (zh) 音乐合成方法、装置、设备及介质
JP2012120565A (ja) ゲーム装置、ゲーム装置の制御方法、ならびに、プログラム
JP5462851B2 (ja) ゲーム装置、評価方法、および、プログラム
JP2012065833A (ja) ゲーム装置、ゲーム制御方法、ならびに、プログラム
JP5255610B2 (ja) ゲーム装置、ゲーム装置の制御方法、ならびに、プログラム
JP3983790B1 (ja) ゲーム装置、振動制御方法、および、プログラム
JP2012249965A (ja) ゲーム装置、ゲーム装置の制御方法、ならびに、プログラム

Legal Events

Date Code Title Description
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: 20080513

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080515

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110523

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4129036

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110523

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120523

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130523

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130523

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140523

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250