JP2015111417A - ハプティック空間化システム - Google Patents

ハプティック空間化システム Download PDF

Info

Publication number
JP2015111417A
JP2015111417A JP2014230981A JP2014230981A JP2015111417A JP 2015111417 A JP2015111417 A JP 2015111417A JP 2014230981 A JP2014230981 A JP 2014230981A JP 2014230981 A JP2014230981 A JP 2014230981A JP 2015111417 A JP2015111417 A JP 2015111417A
Authority
JP
Japan
Prior art keywords
haptic
haptic effect
effect definition
data
spatialization
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
JP2014230981A
Other languages
English (en)
Other versions
JP2015111417A5 (ja
JP5986171B2 (ja
Inventor
コスタ ヘンリー ダ
da costa Henry
コスタ ヘンリー ダ
ロベール ラクロワ
Lacroix Robert
ロベール ラクロワ
ダニー グラント
Danny Grant
ダニー グラント
ステファン ディー. ランク
D Rank Stephen
ステファン ディー. ランク
デイヴィッド バーンバウム
Birnbaum David
デイヴィッド バーンバウム
ウィリアム リーン
Rihn William
ウィリアム リーン
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.)
Immersion Corp
Original Assignee
Immersion Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Immersion Corp filed Critical Immersion Corp
Publication of JP2015111417A publication Critical patent/JP2015111417A/ja
Publication of JP2015111417A5 publication Critical patent/JP2015111417A5/ja
Application granted granted Critical
Publication of JP5986171B2 publication Critical patent/JP5986171B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/016Input arrangements with force or tactile feedback as computer generated output to the user
    • 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/22Setup operations, e.g. calibration, key configuration or button assignment
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/23Input arrangements for video game devices for interfacing with the game device, e.g. specific interfaces between game controller and console
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • A63F13/28Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
    • A63F13/285Generating tactile feedback signals via the game input device, e.g. force feedback
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor

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)

Abstract

【課題】周辺機器において経験されるハプティック効果を制御するシステムを提供する。
【解決手段】システムは、ハプティックデータを含むハプティック効果定義を受信する。システムは、さらに、ハプティック効果の距離、ハプティック効果の方向、またはハプティック効果の流れを含む空間化データを受信する。システムは、さらに、受信した空間化データに基づいて、ハプティック効果定義を変更することを含む。システムは、さらに、ハプティック命令および変更されたハプティック効果定義を周辺機器に送信することを含む。システムは、さらに、ハプティック命令に応じて、周辺機器において変更されたハプティック効果定義に基づいて1つ以上のハプティック効果を1つ以上のハプティック出力装置に生成させることを含む。
【選択図】図1

Description

本明細書は、その開示が参照により本明細書に組み込まれる、2013年11月14日出願の米国特許仮出願第61/904,342号の優先権を主張する。
一実施形態は一般的に装置を対象とし、より具体的にはハプティック効果を生成する装置を対象とする。
ビデオゲームおよびビデオ・ゲーム・システムは、非常に人気がある。ビデオゲーム装置またはコントローラは典型的には、ユーザにフィードバックを提供するために、視覚および聴覚による合図を使用する。いくつかのインターフェース装置において、より一般的にはまとめて「ハプティックフィードバック」または「ハプティック効果」として知られる、運動感覚フィードバック(作用および抵抗力フィードバックなど)および/または触知フィードバック(振動、触感、および熱など)もまたユーザに提供される。ハプティックフィードバックは、ビデオ・ゲーム・コントローラまたはその他の電子機器とのユーザの相互作用を強化および簡素化する合図を提供できる。具体的には、振動効果または振動触知ハプティック効果は、ユーザに特定のイベントを警告するため、あるいはシミュレートまたは仮想環境の中でより大きい没入感を作り出すための現実的なフィードバックを提供するために、ビデオ・ゲーム・コントローラまたはその他の電子機器のユーザへの合図の提供において、有用である。
医療機器、自動車制御、遠隔制御、および動作を引き起こすためにユーザ入力エレメントと相互作用するその他類似の装置など、その他の装置もまた、ハプティックフィードバックまたはハプティック効果の恩恵を受けている。例えば、および非限定的に、医療機器のユーザ入力エレメントは、医療機器の遠位末端において患者の身体内で動作を引き起こすために、医療機器の近位部分において患者の身体の外側でユーザによって動作されてもよい。ハプティックフィードバックまたはハプティック効果は、ユーザに特定のイベントを警告するため、あるいは医療機器の遠位末端において患者との相互作用に関してユーザに現実的なフィードバックを提供するために、採用されてもよい。
一実施形態は、周辺機器において経験されるハプティック効果を制御するシステムである。システムは、ハプティックデータを含むハプティック効果定義を受信する。システムはさらに、ハプティック効果の距離、ハプティック効果の方向、またはハプティック効果の流れを含む、空間化データを受信する。システムはさらに、受信した空間化データに基づいてハプティック効果定義を変更することを含む。システムはさらに、ハプティック命令および変更されたハプティック効果定義を周辺機器に送信することを含む。システムはさらに、1つ以上のハプティック出力装置に、ハプティック命令に応じて、周辺機器において変更されたハプティック効果定義に基づいて1つ以上のハプティック効果を生成させることを含む。
さらなる実施形態、詳細、利点、および変更は、添付図面と併せて取り入れられる、以下の好適な実施形態の詳細な説明より明らかになるだろう。
本発明の一実施形態に係るシステムのブロック図である。 本発明の実施形態に係る、コントローラを示す図である。 本発明の実施形態に係る、図2のコントローラの別の図である。 本発明の実施形態に係る、ホストコンピュータおよびディスプレイと併せたコントローラのブロック図である。 本発明の実施形態に係る、システムのための空間化ハプティック効果ソフトウェアスタックのブロック図である。 本発明の実施形態に係る、空間化ハプティック効果を設計するための例示的なユーザインターフェースを示す図である。 本発明の実施形態に係る、空間化ハプティック効果を設計するために使用されるコンポーネントのブロック図である。 本発明の実施形態に係る、直接再生のための空間化ハプティック効果を作成するために使用されるコンポーネントのブロック図、および空間化ハプティック効果を保存するために使用されるコンポーネントのブロック図である。 本発明の実施形態に係る、クロスオーバー再生のための空間化ハプティック効果を作成するために使用されるコンポーネントのブロック図、および空間化ハプティック効果を保存するために使用されるコンポーネントのブロック図である。 本発明の実施形態に係る、空間化ハプティック効果を直接再生するために使用されるコンポーネントのブロック図である。 本発明の実施形態に係る、プログラマブルクロスオーバーを使用して空間化ハプティック効果を再生するために使用されるコンポーネントのブロック図である。 本発明の実施形態に係る、空間化ハプティック効果の例示的な4チャネル直接再生を示す図である。 本発明の実施形態に係る、空間化ハプティック効果の例示的なクロスオーバー再生を示す図である。 本発明の実施形態に係る、空間化エンジンの例示的なユーザインターフェースを示す図である。 本発明の実施形態に係る、ハプティック効果アプリケーション・プログラミング・インターフェースのアーキテクチャ図である。 本発明の実施形態に係る、空間化ハプティック効果を生成するファームウェアのアーキテクチャ図である。 本発明の実施形態に係る、コントローラのための例示的な指向性モデルを示す図である。 本発明の実施形態に係る、空間化ハプティック効果ファームウェアスタックのブロック図である。 本発明の実施形態に係る、コントローラのトリガにおいて経験される空間化ハプティック効果を提供するシステムのアーキテクチャ図である。 本発明の実施形態に係る、空間化ハプティック効果をプレビューおよび変更するための例示的なユーザインターフェースを示す図である。 本発明の実施形態に係る、オーディオ信号を空間化ハプティック効果に変換するための例示的なユーザインターフェースを示す図である。 本発明の実施形態に係る、空間化ハプティック効果をプレビューするシステムのアーキテクチャ図である。 本発明の実施形態に係る、空間化ハプティック効果を生成するシステムのアーキテクチャ図である。 本発明の実施形態に係る、空間化ハプティック効果を生成するファームウェアのアーキテクチャ図である。 本発明の実施形態に係る、例示的なオーディオアーキテクチャを示す図である。 本発明の実施形態に係る、オーディオ効果を空間化ハプティック効果に変換する例示的なオーディオドライバを示す図である。 本発明の実施形態に係る、APIまたはライブラリ中に存在する例示的な空間化エンジンを示す図である。 本発明の実施形態に係る、コントローラ中に存在する例示的な空間化エンジンを示す図である。 本発明の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の別の実施形態に係る、例示的な空間化ハプティック効果を示す図である。 本発明の実施形態に係る、ハプティック効果の方向に基づくアクチュエータ間のハプティック効果の分配の一例を示す図である。 本発明の実施形態に係る、ハプティック空間化モジュールの機能のフローチャートである。
一実施形態は、ゲームコントローラまたはゲームパッドなど、周辺機器において経験されるハプティックフィードバックを提供するシステムである。一実施形態において、空間化エンジンは、ハプティック効果定義などのハプティックデータを受信でき、空間化データに基づいてハプティックデータを変更でき、ここで空間化データは1つ以上のパラメータを含むことができる。このため、空間化エンジンは、ハプティック効果を局所化または空間化できる。より具体的には、空間化エンジンは、ハプティック効果の位置、距離、速度、流れ、および/または方向に基づいてアクチュエータまたはモータ上のハプティック効果をスケーリングまたは減衰することによって、ハプティック効果の位置、距離、速度、流れ、および/または方向を伝達するハプティック効果を生成できる。当業者が理解するように、ハプティック効果を「減衰」することによって、空間化エンジンはハプティック効果の意図される位置、距離、速度、流れ、および/または方向に基づいてハプティック効果のマグニチュード(magnitude)、周波数、および/または持続時間を減少させることができる。空間化エンジンはさらに、異なるアクチュエータまたはモータ上で、ハプティック効果の再生を遅延させることによって、またはハプティック効果をスケーリングすることによって、コントローラ、ゲームパッド、またはその他の周辺機器上の運動を伝達するハプティック効果を生成できる。空間化エンジンは、APIまたはライブラリのコンポーネントであってもよく、あるいはコントローラ、ゲームパッド、またはその他の周辺機器のためにファームウェア内に実装されることもできる。
一実施形態において、空間化エンジンはハプティック効果定義を受信できる。空間化エンジンは、1つ以上の空間化パラメータに基づいてハプティック効果定義を変更でき、変更されたハプティック効果定義は、空間化ハプティック効果定義として認識されることができる。一実施形態において、空間化ハプティック効果定義は、複数の空間化ハプティック効果定義コンポーネントに分割されることができ、各空間化ハプティック効果定義コンポーネントは、周辺機器の個別のアクチュエータまたはモータに送信されることができ、各アクチュエータまたはモータは、全体的な空間化ハプティック効果のコンポーネントが周辺機器のユーザ入力エレメントにおいて、または別途周辺機器内で、経験されるようにできる。空間化エンジンは、1つ以上の空間化パラメータなどの空間化データに基づいて、空間化ハプティック効果コンポーネントのうちの1つ以上をスケーリングまたは遅延させることができる。別の実施形態において、空間化ハプティック効果定義は周辺機器の各アクチュエータまたはモータに送信されることができ、各アクチュエータまたはモータは、空間化ハプティック効果が周辺機器のユーザ入力エレメントにおいて、または別途周辺機器内で、経験されるようにできる。空間化エンジンはさらに、1つ以上の空間化パラメータなどの空間化データに基づいて、空間化ハプティック効果のうちの1つ以上をスケーリングまたは遅延させることができる。このような空間化パラメータは、ハプティック効果の位置、距離、速度、流れ、および/または方向を定義する、1つ以上のパラメータを含むことができる。一実施形態において、空間化データ(例えば1つ以上の空間化パラメータ)は、周辺機器の検出されたモーションおよび/または位置に基づいて変更されることができる。例えば、周辺機器が回転または振動させられるとき、あるいは周辺機器が異なる場所に移動させられるときに、空間化データ(例えば1つ以上の空間化パラメータ)が変更される。変更された空間化データに基づいて、ユーザが変更された空間化ハプティック効果を経験するように、空間化データはさらにハプティック効果定義を変更できる。変更された空間化ハプティック効果の例は、変更された減衰、スケーリング、または遅延を備える空間化ハプティック効果を含むことができる。
一実施形態において、ハプティック効果定義は、複数のハプティック効果定義コンポーネントを含むように作成されることができる。空間化エンジンはハプティック効果定義を変更でき、ハプティック効果定義は、作成された複数のハプティック効果定義コンポーネントに分割されることができ、各作成されたハプティック効果定義コンポーネントは、周辺機器の個別のアクチュエータまたはモータに送信されることができ、各アクチュエータまたはモータは、全体的なハプティック効果のコンポーネントが周辺機器のユーザ入力エレメントにおいて、または別途周辺機器内で、経験されるようにできる。このようにして、ハプティック効果は、空間化の感覚を伝達できる。代替実施形態において、空間化ハプティック効果定義(または複数の空間化ハプティック効果定義コンポーネント)を周辺機器の複数のアクチュエータまたはモータに送信する代わりに、空間化エンジンは、空間化ハプティック効果定義(または複数の空間化ハプティック効果定義コンポーネント)を複数の周辺機器に送信できる。代替実施形態において、周辺機器は、コントローラまたはゲームパッドではなくむしろウェアラブルハプティック装置であってもよく、ウェアラブルハプティック装置は、ユーザが身体に着用してもよい、あるいはリストバンド、ヘッドバンド、眼鏡、リング、足輪、着衣に組み込まれるアレイなど、ユーザによって保持されることができる、そしてハプティック効果を生成する機構を含む、装置である。
図1は、本発明の一実施形態に係るシステム10のブロック図を示す。一実施形態において、システム10は、装置(例えばパーソナルコンピュータ、またはビデオ・ゲーム・コンソールなどのコンソール)の一部であり、システム10は装置のハプティックトリガ制御機能性を提供する。別の実施形態において、システム10は、装置(例えばパーソナルコンピュータまたはコンソール)から分離しており、装置の上記機能を遠隔的に提供する。単一のシステムとして示されているものの、システム10の機能は分散システムとして実装されてもよい。システム10は、情報を通信するためのバス12またはその他の通信機構、および情報を処理するためにバス12と動作可能に結合されたプロセッサ22を含む。プロセッサ22は、いずれのタイプの専用または汎用プロセッサであってもよい。システム10は、プロセッサ22によって実行される情報および命令を記憶するためのメモリ14を、さらに含む。メモリ14は、ランダム・アクセス・メモリ(RAM)、読み出し専用メモリ(ROM)、磁気または光ディスクなどのスタティックストレージデバイス、あるいはその他いずれかのタイプのコンピュータ可読媒体の、いずれかの組み合わせからなってもよい。
コンピュータ可読媒体は、プロセッサ22によってアクセス可能ないずれの利用可能な媒体であってもよく、揮発性および不揮発性媒体、リムーバブルおよびノンリムーバブル媒体、通信媒体、ならびに記憶媒体の、いずれも含んでもよい。通信媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、あるいは搬送波またはその他の搬送機構などの変調データ信号中のその他のデータを含んでもよく、当該技術分野において周知のその他いずれの形態の情報配信媒体を含んでもよい。記憶媒体は、RAM、フラッシュメモリ、ROM、消去可能プログラマブル読み出し専用メモリ(EPROM)、電気的消去可能プログラマブル読み出し専用メモリ(EEPROM)、レジスタ、ハードディスク、リムーバブルディスク、コンパクトディスク読み出し専用メモリ(CD−ROM)、または当該技術分野において周知のその他いずれの形態の記憶媒体を含んでもよい。
一実施形態において、メモリ14は、プロセッサ22によって実行されたときに機能を提供するソフトウェアを記憶する。モジュールは、一実施形態における全体的な装置の残りの部分と同様に、システム10のためのオペレーティングシステム機能を提供するオペレーティングシステム15を含む。モジュールはさらに、周辺機器において経験される空間化ハプティック効果を生成する、ハプティック空間化モジュール16を含む。特定の実施形態において、ハプティック空間化モジュール16は複数のモジュールを含むことができ、各モジュールは、周辺機器において経験される空間化ハプティック効果を生成するための特殊な個別の機能を提供する。システム10は典型的には、コントローラ30などの周辺機器に制御機能を提供できる周辺ファームウェアなど、追加機能を含むために1つ以上の追加アプリケーションモジュール18を含むことになる。
システム10は、リモートソースからデータを送受信する実施形態において、赤外線、無線、Wi−Fi、またはセルラーネットワーク通信など、移動無線ネットワーク通信を提供するために、ネットワーク・インターフェース・カードなどの通信装置20をさらに含む。別の実施形態において、通信装置20は、イーサネット(登録商標)接続またはモデムなど、有線ネットワーク接続を提供する。
システム10は、コントローラ30に動作可能に接続されている。コントローラ30は、システム10への入力を提供するために使用される、周辺機器である。コントローラ30は、無線接続または有線接続のいずれかを用いて、システム10に動作可能に接続されることができる。コントローラ30は、無線接続または有線接続のいずれかを用いてシステム10と通信できるローカルプロセッサをさらに含むことができる。あるいは、コントローラ30はローカルプロセッサを含まないように構成されてもよく、コントローラ30に関連付けられた全ての入力信号および/または出力信号は、システム10のプロセッサ22によって直接取り扱いおよび処理されることができる。
コントローラ30は、1つ以上のデジタルボタン、1つ以上のアナログボタン、1つ以上のバンパ、1つ以上の方向パッド、1つ以上のアナログまたはデジタルスティック、1つ以上のハンドル、および/またはユーザによって相互作用されることができ、システム10への入力を提供できる1つ以上のユーザ入力エレメントを、さらに含むことができる。コントローラ30はまた、ユーザによって相互作用されることができ、システム10への入力を提供できる、1つ以上のアナログまたはデジタル・トリガ・ボタン(もしくは「トリガ」)も含むことができる。以下により詳細に記載されるように、コントローラ30は、コントローラ30の少なくとも1つのトリガ上に双方向性の押引力を印加するように構成された、モータ、またはその他のタイプのアクチュエータまたはハプティック出力装置を、さらに含むことができる。
コントローラ30はまた、1つ以上のアクチュエータ、またはその他のタイプのハプティック出力装置も含むことができる。コントローラ30のローカルプロセッサ、またはコントローラ30がローカルプロセッサを含まない実施形態において、プロセッサ22は、ハプティック効果に関連付けられたハプティック信号を、コントローラ30の少なくとも1つのアクチュエータに送信してもよい。翻ってアクチュエータは、ハプティック信号に応じて、振動触知ハプティック効果、運動感覚ハプティック効果、または変形ハプティック効果などのハプティック効果を出力する。ハプティック効果は、コントローラ30のユーザ入力エレメント(例えばデジタルボタン、アナログボタン、バンパ、方向パッド、アナログまたはデジタルスティック、ハンドル、あるいはトリガ)において経験されることができる。あるいは、ハプティック効果は、コントローラ30の外表面において経験されることができる。アクチュエータは、アクチュエータ駆動回路を含む。アクチュエータは、例えば電気モータ、電磁アクチュエータ、ボイスコイル、形状記憶合金、電気活性ポリマー、ソレノイド、偏心回転質量モータ(ERM)、リニア共振アクチュエータ(LRA)、圧電アクチュエータ、高帯域アクチュエータ、電気活性ポリマー(EAP)アクチュエータ、静電摩擦ディスプレイ、または超音波振動アクチュエータであってもよい。アクチュエータはハプティック出力装置の一例であって、ハプティック出力装置は、駆動信号に応じて振動触知ハプティック効果、静電摩擦ハプティック効果、運動感覚ハプティック効果、または変形ハプティック効果などのハプティック効果を出力するように構成された装置である。代替実施形態において、コントローラ30内の1つ以上のアクチュエータは、その他何らかのタイプのハプティック出力装置に置き換えられることができる。
コントローラ30は、1つ以上のスピーカをさらに含むことができる。コントローラ30のローカルプロセッサ、またはコントローラ30がローカルプロセッサを含まない実施形態におけるプロセッサ22は、コントローラ30の少なくとも1つのスピーカにオーディオ信号を送信してもよく、これは翻ってオーディオ効果を出力する。スピーカは、例えば、ダイナミックラウドスピーカ、動電型ラウドスピーカ、圧電ラウドスピーカ、磁歪ラウドスピーカ、静電ラウドスピーカ、リボンまたは平面磁気ラウドスピーカ、屈曲波ラウドスピーカ、フラッド・パネル・ラウドスピーカ、ハイルエアモーショントランスデューサ、プラズマ・アーク・スピーカ、およびデジタルラウドスピーカであってもよい。
コントローラ30は、1つ以上のセンサをさらに含むことができる。センサは、例えば音、運動、加速度、生体信号、距離、流れ、力/圧力/歪み/屈曲、湿度、線形位置、配向/傾斜、無線周波数、回転位置、回転速度、スイッチの操作、温度、振動、または可視光強度などの、ただしこれらに限定されない、エネルギー形態またはその他の物理的特性を検出するように構成されることができる。センサはさらに、検出されたエネルギーまたはその他の物理的特性を、電気信号、または仮想センサ情報を表すいずれかの信号に変換するように構成されることができ、コントローラ30は、変換された信号を、コントローラ30のローカルプロセッサに、またはコントローラ30がローカルプロセッサを含まない実施形態においてはプロセッサ22に、送信できる。センサは、加速度計、心電図、脳波図、筋電計、電気眼球図、電子口蓋図、電気皮膚反応センサ、容量センサ、ホール効果センサ、赤外線センサ、超音波センサ、圧力センサ、光ファイバセンサ、屈曲センサ(または曲がりセンサ)、力感抵抗器、ロードセル、LuSenseCPS155、小型圧力トランスデューサ、圧電センサ、歪みゲージ湿度計、線形位置タッチセンサ、線形ポテンショメータ(またはスライダ)、線形可変差動変圧器、コンパス、傾斜計、磁性タグ(または部線周波数識別タグ)、回転エンコーダ、回転ポテンショメータ、ジャイロスコープ、オン・オフスイッチ、温度センサ(温度計、熱電対、抵抗温度検出器、サーミスタ、または温度変換集積回路など)、マイクロフォン、光度計、高度計、生物モニタ、カメラ、または光依存性抵抗器などの、ただしこれらに限定されない、いずれの装置であってもよい。
図2は、本発明の実施形態に係る、コントローラ100を示す。一実施形態において、コントローラ100は図1のコントローラ30と同一である。さらに、図3はコントローラ100の別の図を示す。コントローラ100は一般的に、コンピュータ、携帯電話、テレビ、またはその他の類似装置に接続されてもよい、ゲームシステムとともに使用される。図2および図3に示されるコントローラ100のコンポーネント(すなわち、筐体102、アナログまたはデジタルスティック110、ボタン114、トリガ118、および鳴動(ランブル(rumble))アクチュエータ122および124)はさらに、図4と併せて以下により詳細に記載される。
図4は、ホストコンピュータ104およびディスプレイ106をさらに含むゲームシステム101内で使用されるコントローラ100のブロック図を示す。図4のブロック図に示されるように、コントローラ100は、接続105を介してホストコンピュータ104と通信するローカルプロセッサ108を含む。接続105は、有線接続、無線接続、または当該技術分野において周知の別のタイプの接続であってもよい。コントローラ100はあるいはローカルプロセッサ108を含まないように構成されてもよく、これによってコントローラ100からの全ての入出力信号は、ホストコンピュータ104によって直接取り扱いおよび処理される。ホストコンピュータ104は、ディスプレイ画面106に動作可能に結合されている。一実施形態において、ホストコンピュータ104はゲーム装置コンソールであって、ディスプレイ画面106は、当該技術分野において周知のように、ゲーム装置コンソールに動作可能に結合されたモニタである。別の実施形態において、当業者にとって周知のように、ホストコンピュータ104およびディスプレイ画面106は、単一の装置に組み込まれてもよい。
コントローラ100の筐体102は、左利きユーザまたは右利きユーザのいずれかによって、装置を握持する両手に容易に適合するような形状になっている。コントローラ100は、例えばMicrosoft(登録商標)Xbox One(商標)コントローラ、またはPlayStation(登録商標)DualShock(商標)コントローラなどのビデオ・ゲーム・コンソール向けに現在利用可能な多くの「ゲームパッド」と類似の形状およびサイズのコントローラの例示的な一実施形態に過ぎないこと、ならびにWii(商標)リモコンまたはWii(商標)Uコントローラ、Sony(登録商標)SixAxis(商標)コントローラまたはソニー(登録商標)Wandコントローラを含むがこれらに限定されないその他の構成のユーザ入力エレメント、形状、およびサイズを備えるコントローラ、ならびに実在の物体(テニスラケット、ゴルフクラブ、野球のバットなど)のような形状またはその他の形状のコントローラ、あるいはディスプレイまたは頭部装着型ディスプレイを備えるコントローラが使用されてもよいことを、当業者は認識するだろう。
コントローラ100は、アナログまたはデジタルスティック110、ボタン114、およびトリガ118を含む、いくつかのユーザ入力エレメントを含む。本明細書において使用される際に、ユーザ入力エレメントは、ホストコンピュータ104と相互作用するためにユーザによって操作される、トリガボタン、アナログまたはデジタルスティックなどの、インターフェース装置を指す。図2および図3に見られるように、そして当業者にとって周知のように、各ユーザ入力エレメントおよび追加ユーザ入力エレメントのうちの2つ以上がコントローラ100上に含まれてもよい。したがって、例えばトリガ118の本説明は、コントローラ100を単一のトリガに限定するものではない。さらに、図4のブロック図は、アナログまたはデジタルスティック110、ボタン114、およびトリガ118の各々のうちの1つしか示していない。しかしながら、当業者は、先に記載されたように、複数のアナログまたはデジタルスティック、ボタン、およびトリガ、ならびにその他のユーザ入力エレメントが使用されてもよいことを理解するだろう。
図4のブロック図に見られるように、コントローラ100は、ユーザの手が通常位置している場所で筐体102に動作可能に結合された1つ以上の一般または鳴動アクチュエータ122および124と同じくそのユーザ入力エレメントの各々を直接駆動するために、ターゲットアクチュエータまたはモータを含む。より具体的には、アナログまたはデジタルスティック110は、アナログまたはデジタルスティック110に動作可能に結合されたターゲットアクチュエータまたはモータ112を含み、ボタン114はそこに動作可能に結合されたターゲットアクチュエータまたはモータ116を含み、トリガ118はそこに動作可能に結合されたターゲットアクチュエータまたはモータ120を含む。複数のターゲットアクチュエータに加えて、コントローラ100は、コントローラ100のユーザ入力エレメントの各々に動作可能に結合された、位置センサを含む。より具体的には、アナログまたはデジタルスティック110は、アナログまたはデジタルスティック110に動作可能に結合された位置センサ111を含み、ボタン114は、ボタン114に動作可能に結合された位置センサ115を含み、トリガ118は、トリガ118に動作可能に結合された位置センサ119を含む。ローカルプロセッサ108は、それぞれアナログまたはデジタルスティック110、ボタン114、およびトリガ118の位置センサ111、115、119と同様に、ターゲットアクチュエータ112、116、120に動作可能に結合されている。位置センサ111、115、119から受信した信号に応じて、ローカルプロセッサ108はターゲットアクチュエータ112、116、120に、指向性またはターゲット運動感覚効果をアナログまたはデジタルスティック110、ボタン114、およびトリガ118にそれぞれ直接提供するように命令する。このようなターゲット運動感覚効果は、コントローラの全体に沿って一般アクチュエータ122、124によって生成される一般または鳴動ハプティック効果から、識別可能または区別可能である。総合的なハプティック効果は、例えばビデオ、オーディオ、およびハプティックなどの複数の方式が同時に関与しているので、ゲームに対するさらなる没入感をユーザに提供する。ハプティックを生成するように構成されたコントローラのさらなる詳細は、参照により本明細書に組み込まれる、「GAMING DEVICE HAVING A HAPTIC−ENABLED TRIGGER」と題される2014年4月22日出願の特許出願第14/258,644号明細書に、より詳細に記載されている。
図5は、本発明の実施形態に係る、システムのための空間化ハプティック効果ソフトウェアスタックのブロック図である。トリガハプティック効果ソフトウェアスタックは、図1のシステム10など、システム上で実施される。図示される実施形態において、システムは以下のコンポーネントを含む:装置500、周辺ファームウェア510、およびコントローラ520。装置500は、パーソナルコンピュータ、タブレット、スマートフォン、またはコンソール(例えばビデオ・ゲーム・コンソール)など、いずれのタイプのコンピュータ装置であってもよい。周辺ファームウェア510は、装置500に動作可能に接続されることができる、1つ以上の周辺機器(例えばコントローラ)のためのファームウェアである。コントローラ520は、装置500に動作可能に接続された周辺機器の一例である。コントローラ520は、ビデオ・ゲーム・コントローラであってもよい。一実施形態において、コントローラ520は、図1のコントローラ30、ならびに図2、図3、および図4のコントローラ100と同一であってもよい。
装置500はゲーム入力管理コード501を含む。ゲーム入力管理コード501は、装置500内で実行される、ゲームアプリケーションまたはその他のタイプのアプリケーションに従って、コントローラ520によって提供された入力を管理する、コンピュータ可読命令のセットを含む。装置500は、周辺入力アプリケーション・プログラミング・インターフェース(API)502を、さらに含む。周辺入力API502は、コントローラ520によって提供された入力を受信および管理するために、ゲーム入力管理コード501が周辺ファームウェア510と相互作用できるようにする、コンピュータ可読機能またはルーチンのセットを含む。装置500は鳴動API503をさらに含む。鳴動APIは、コントローラ520の1つ以上の鳴動モータまたは鳴動アクチュエータ(例えば、図5に示される鳴動モータLおよびR)に鳴動命令を送信するために、ゲーム入力管理コード501が周辺ファームウェア510と相互作用できるようにする、コンピュータ可読機能またはルーチンのセットを含む。鳴動命令は、コントローラ520の鳴動モータまたは鳴動アクチュエータに、一般または鳴動ハプティック効果を生成させることができる。
装置500は、トリガハプティック効果API504(図5において「API」とされる)をさらに含む。ハプティック効果API504は、ゲーム入力管理コード501に曝されて、コントローラ520の1つ以上のトリガ(例えば図5に示されるようなトリガLおよびR)へのトリガ命令など、ハプティック命令をコントローラ520に送信するために、ゲーム入力管理コード501に周辺ファームウェア510と相互作用させる、コンピュータ可読機能またはルーチンのセットを含む。ハプティック命令は、コントローラ520の1つ以上のターゲットモータまたはターゲットアクチュエータに、コントローラ520の1つ以上のユーザ入力エレメントにおけるハプティック効果を生成させることができる。トリガ命令は、コントローラ520の1つ以上のターゲットモータまたはターゲットアクチュエータ(例えば図5に示されるようなモータLおよびR)に、コントローラ520の1つ以上のトリガ(例えば図5に示されるようなトリガLおよびR)におけるトリガハプティック効果を生成させることができる、特定のタイプのハプティック命令である。トリガハプティック効果は、コントローラ520などのコントローラのトリガにおいて経験される、特定のタイプのハプティック効果である。ハプティック効果API504は、1つ以上のトリガハプティック効果定義を記憶できる。ハプティック効果定義は、コントローラ520のコンポーネント、またはユーザ入力エレメントにおいてハプティック効果を生成するために、事前定義され、記憶装置の中に記憶されることができるハプティック信号、ハプティックファイル、またはハプティックストリームなどのハプティックデータを含み、1つ以上の鳴動モータ、鳴動アクチュエータ、ターゲットモータ、またはターゲットアクチュエータに送信されることができる、データ構造である。ハプティックデータは対応するハプティック効果の1つ以上の性質を含むことができ、ここで性質はパラメータとして記憶されることができる。ハプティック効果定義の例示的なパラメータは、振幅パラメータ、周波数パラメータ、波形パラメータ、エンベロープパラメータ、マグニチュード(または強度)パラメータ、および持続時間パラメータを含む。トリガハプティック効果定義は、コントローラ520の1つ以上のトリガ(例えば図5に示されるようなトリガLおよびR)におけるトリガハプティック効果を生成するために、コントローラ520の1つ以上のモータまたはアクチュエータ(例えば図5に示されるようなモータLおよびR)に送信されることができる、特定のタイプのハプティック効果定義である。
実施形態によれば、ハプティック効果API504は、ゲーム入力管理コード501に、直接再生/クロスオーバー505、トリガエンジン506、および空間化エンジン507と相互作用させることができ、ゲーム入力管理コード501によって呼び出されたリクエストにしたがって直接再生/クロスオーバー505、トリガエンジン506、および空間化エンジン507をさらに管理できる。さらに、ハプティック効果API504は、周辺ファームウェア510との相互作用のために必要とされ、1つ以上のトリガハプティック効果の生成のために必要とされるデータを記憶できる。代替実施形態において、ハプティック効果API504は、装置500ではなく周辺ファームウェア510の中に存在してもよい。ハプティック効果API504はさらに、図15と併せて以下により詳細に記載される。
装置500は、直接再生/クロスオーバー505をさらに含む。直接再生/クロスオーバー505は、ハプティックデータを入力として受信し、ハプティックデータを出力として生成し、コントローラ520の1つ以上のターゲットモータまたはターゲットアクチュエータ(例えば図5に示されるようなモータLおよびR)にハプティックデータを送信する。特定の実施形態において、直接再生/クロスオーバー505は、入力ハプティックデータのフォーマットを変更することなく、入力ハプティックデータを直接出力できる。この結果、入力ハプティックデータの「そのままの」再生を生成する。別の実施形態において、直接再生/クロスオーバー505は、入力されたハプティックデータを第1フォーマットから第2フォーマットに変換でき、変換されたハプティックデータをさらに出力できる。再生のタイプに応じて、直接再生/クロスオーバー505はハプティックデータを変換するために任意にプログラマブルクロスオーバーを使用できる。ハプティックデータを変換することによって、装置500はハプティック効果を「分解」して、複数のアクチュエータにおいてハプティック効果を忠実に再生できる。一実施形態において、ハプティックデータのフォーマットは、ハプティックエレメンタリストリーム(HES)フォーマットであってもよい。HESフォーマットは、装置にストリーム配信されることができるハプティックデータを表すファイルまたはデータフォーマットである。ハプティックデータはHESフォーマットで暗号化されることができるものの、ハプティックデータは、非圧縮オーディオが表されるのと同一または類似の方法で表されることもできる。このためハプティックデータは、ハプティックファイルまたはハプティックストリーム中に記憶されることができ、ここでハプティックファイルまたはハプティックストリームのフォーマットはHESフォーマットである。言い換えると、HESフォーマットは、ハプティックフォーマットでハプティックデータを表すために、ハプティックファイルまたはハプティックストリームによって使用されることができる。代替実施形態において、直接再生/クロスオーバー505は、装置500ではなく周辺ファームウェア510の中に存在してもよい。直接再生/クロスオーバー505はさらに、図7、図8、図9、図10、図11、図12、および図13と併せて、以下により詳細に記載される。
装置500は、トリガエンジン506をさらに含む。トリガエンジン506は、トリガハプティック効果定義などのハプティックデータを受信でき、コントローラ520から受信したトリガデータ(例えば図5に示されるようなトリガデータ513)などのデータに基づいて、ハプティックデータを変更できる。トリガデータは、コントローラ520の1つ以上のトリガ(例えば図5に示されるようなトリガLおよびR)の位置および/または範囲を示す1つ以上のパラメータを含むデータである。トリガエンジン506はさらに、コントローラ520にハプティック命令を送信することができる。例えば、トリガエンジン506は、コントローラ520の1つ以上のトリガ(例えば図5に示されるようなトリガLおよびR)にトリガ命令を送信することができる。先に記載されたように、トリガ命令は、コントローラ520の1つ以上のターゲットモータまたはターゲットアクチュエータ(例えば図5に示されるようなモータLおよびR)に、コントローラ520の1つ以上のトリガ(例えば図5に示されるようなトリガLおよびR)におけるトリガハプティック効果を生成させることができる。このため一実施形態において、トリガハプティック効果定義のハプティックデータを変更することによって、トリガエンジン506は、トリガの位置および/または範囲に基づいて特定のトリガハプティック効果がトリガにおいて経験されるようにできる。別の実施形態において、トリガハプティック効果定義のハプティックデータを変更することによって、トリガエンジン506は、トリガの位置および/または範囲に基づいて、コントローラ520の1つ以上のターゲットモータまたはターゲットアクチュエータ(例えば図5に示されるようなモータLおよびR)のためのトリガハプティック効果をスケーリングできる。トリガエンジン506はさらに、トリガハプティック効果定義などの1つ以上のハプティック効果定義を記憶できる。代替実施形態において、トリガエンジン506は、装置500ではなく周辺ファームウェア510の中に存在してもよい。トリガエンジン506はさらに、図14と併せて、以下により詳細に記載される。
装置500は、空間化エンジン507(図5において「空間化エンジン」とされる)をさらに含む。空間化エンジン507は、トリガハプティック効果定義などのハプティックデータを受信でき、空間化データに基づいてハプティックデータを変更できる。空間化データは、トリガハプティック効果などのハプティックデータの所望の方向および/または流れを示すデータを含むことができる。特定の実施形態において、空間化エンジン507は、ゲーム入力管理コード501から、方向および/または流れを含む空間化データを受信できる。さらに、空間化データはまた、コントローラ520上に位置するユーザの1つ以上の手の1つ以上の位置を含むことができる。特定の実施形態において、空間化エンジン507は、コントローラ520から、1つ以上の手の位置を含む空間化データを受信できる。さらに、特定の実施形態において、空間化エンジン507は、ゲーム入力管理コード501によって通信された通りのゲームアプリケーション内のユーザのキャラクタの位置を含む空間データを受信できる。
実施形態によれば、空間化エンジン507は、トリガハプティック効果などのハプティック効果がコントローラ520の1つ以上の鳴動モータまたは鳴動アクチュエータ(例えば図5に示されるような鳴動モータLおよびR)のためにスケーリングされるように、およびハプティック効果がコントローラ520の1つ以上のターゲットモータまたはターゲットアクチュエータ(例えば図5に示されるようなモータLおよびR)のためにもスケーリングされるように、ハプティックデータを変更できる。言い換えると、全体的なハプティック効果の方向および流れの感覚を伝達するために、空間化エンジン507は、各モータまたはアクチュエータに送信されるハプティックデータを変更でき、こうして各モータまたはアクチュエータにおいて経験されるハプティック効果を変更できる。例えば、モータまたはアクチュエータにおいて経験されるハプティック効果を強調するために、空間化エンジン507は、ハプティック効果の1つ以上の部分をスケーリングしてもよい。例えば、空間化エンジン507は、ハプティック効果が経験されるようにするモータまたはアクチュエータに送信されるハプティックデータをスケーリングして、ハプティック効果をより明確にしてもよい(例えば、マグニチュード、持続時間の増加など)。加えて、空間化エンジン507は、別のモータまたはアクチュエータに送信されるハプティックデータをスケーリングして、これらのモータまたはアクチュエータにおいて経験される別のハプティック効果を目立たなくさせてもよい(例えば、マグニチュード、持続時間の減少など)。特定の実施形態において、空間化エンジン507は、リアルタイムでハプティックデータを変更できる。さらに、特定の実施形態において、空間化エンジン507は、全体的なトリガハプティック効果を誇張するために、入力とモータまたはアクチュエータの出力との間に非線形関係を有することができる。代替実施形態において、空間化エンジン507は、装置500ではなく周辺ファームウェア510の中に存在してもよい。空間化エンジン507はさらに、図14、図29、および図30と併せて、以下により詳細に記載される。
装置500はエンコーダ508をさらに含む。エンコーダ508は、直接再生/クロスオーバー505、トリガエンジン506、および/または空間化エンジン507から受信したハプティックデータを、あるフォーマットにエンコードする。一実施形態において、フォーマットはHESフォーマットであってもよい。エンコーダ508はさらに、エンコードされたハプティックデータを周辺ファームウェア510に送信する。
周辺ファームウェア510は、デコーダおよびクロスオーバー511を含む。デコーダおよびクロスオーバー511は、エンコーダ508からエンコードされたハプティックデータを受信して、エンコードされたハプティックデータをデコードする。特定の実施形態において、デコーダおよびクロスオーバー511は、エンコードされたハプティックデータをデコードするために、プログラマブルクロスオーバーを計算する。これらの実施形態のうちのいくつかにおいて、デコーダおよびクロスオーバー511は、プログラマブルクロスオーバーをリアルタイムで計算する。周辺ファームウェア510は、トリガ制御512をさらに含む。トリガ制御512は、コントローラ520の1つ以上のターゲットモータまたはターゲットアクチュエータ(例えば図5に示されるようなモータLおよびR)のための、低レベル制御APIである。トリガ制御512は、装置500からトリガ命令を受信でき、トリガ命令をコントローラ520の指定されたターゲットモータまたはターゲットアクチュエータのための低レベルトリガ命令に変換でき、低レベルトリガ命令をコントローラ520の指定されたターゲットモータまたはターゲットアクチュエータに送ることができる。低レベルトリガ命令は、指定されたターゲットモータまたはターゲットアクチュエータに、コントローラ520の指定されたトリガにおけるトリガハプティック効果を生成させる。
周辺ファームウェア510は、トリガデータ513をさらに含む。トリガデータ513は、先に記載されたように、コントローラ520の1つ以上のトリガ(例えば図5に示されるようなトリガLおよびR)の位置および/または範囲を示す1つ以上のパラメータなど、1つ以上のパラメータを含むデータである。トリガデータ513は、周辺ファームウェア510によってコントローラ520から受信されることができる。周辺ファームウェア510は、トリガデータ513をさらに記憶でき、さらにトリガデータ513を装置500に送信することができる。周辺ファームウェア510はその他のゲームパッド機能514をさらに含み、これらは周辺ファームウェア510によって管理されることができるコントローラ520の機能である。このような機能は、有線/無線通信、入力レポート、プロトコル実施、電力管理などを含むことができる。周辺ファームウェア510は、鳴動制御515をさらに含む。鳴動制御515は、コントローラ520の1つ以上の鳴動モータまたは鳴動アクチュエータ(例えば図5に示されるような鳴動モータLおよびR)のための、低レベル制御APIである。鳴動制御515は、装置500から鳴動命令を受信でき、鳴動命令をコントローラ520の指定された鳴動モータまたは鳴動アクチュエータのための低レベル鳴動命令に変換でき、低レベルトリガ命令をコントローラ520の指定された鳴動モータまたは鳴動アクチュエータに送信することができる。
コントローラ520は、トリガLおよびRを含む。コントローラ520は、ギアボックスLおよびRならびにモータLおよびRをさらに含む。モータLおよびギアボックスLは、コントローラ520内のトリガLに動作可能に結合されている。同様に、モータRおよびギアボックスRは、コントローラ520内のトリガRに動作可能に結合されている。モータLがトリガ命令を受信すると、モータLおよびギアボックスLは一緒になってトリガハプティック効果がトリガLにおいて経験されるようにする。同様に、モータRがトリガ命令を受信すると、モータRおよびギアボックスRは一緒になってトリガハプティック効果がトリガRにおいて経験されるようにする。実施形態によれば、周辺ファームウェア510は、駆動エレクトロニクス530を用いてコントローラ520のモータLおよびRにトリガ命令を送信する。コントローラ520は、ポテンショメータLおよびRをさらに含む。ポテンショメータLは、トリガLの位置および/または範囲を検出でき、さらにトリガLの検出された位置および/または範囲をトリガデータとして周辺ファームウェア510に送信できる。同様に、ポテンショメータRは、トリガRの位置および/または範囲を検出でき、さらにトリガRの検出された位置および/または範囲をトリガデータとして周辺ファームウェア510に送信できる。一実施形態において、ポテンショメータLおよびRは各々、ホール効果センサなど、別のタイプの位置センサに置き換えられることができる。コントローラ520は、鳴動モータLおよびRをさらに含む。鳴動モータLが鳴動命令を受信すると、鳴動モータLはハプティック効果がコントローラ520の左側に沿って経験されるようにする。同様に、鳴動モータRが鳴動命令を受信すると、鳴動モータRはハプティック効果がコントローラ520の右側に沿って経験されるようにする。実施形態によれば、周辺ファームウェア510は、鳴動駆動エレクトロニクス530を用いてコントローラ520の鳴動モータLおよびRに鳴動命令を送信する。
代替実施形態において、1つ以上のターゲットモータ、またはターゲットアクチュエータは、コントローラ520の1つ以上のユーザ入力エレメント(1つ以上のデジタルボタン、1つ以上のアナログボタン、1つ以上のバンパ、1つ以上の方向パッド、1つ以上のアナログまたはデジタルスティック、1つ以上のハンドルなど)に、動作可能に結合されることができる。代替実施形態によれば、周辺ファームウェア510は1つ以上のターゲットモータまたはターゲットアクチュエータに命令を送信して、1つ以上のターゲットモータまたはターゲットアクチュエータに、コントローラ520の1つ以上のユーザ入力エレメントにおいて経験されるハプティック効果を生成させることができる。
図6は、本発明の実施形態に係る、空間化ハプティック効果を設計するための例示的なユーザインターフェース600を示す。システム(図1のシステム10など)は、空間化ハプティック効果を設計するための専用ツールとして、ユーザインターフェース600をユーザに提供できる。この実施形態において、ユーザは、既存のハプティック効果定義を変更する選択肢を伴って、既存のハプティック効果定義に基づいて空間化ハプティック効果を設計できる。実施形態によれば、ユーザインターフェース600は効果プリセット610を含む。効果プリセット610は、1つ以上のハプティック効果プリセットを表示できる。ハプティック効果プリセットは、所定のハプティック効果を生成する任意の形状および/または形態の所定のハプティック効果定義である。ハプティック効果プリセットは、ハプティックファイルまたはハプティックストリーム内に記憶されることができる。一実施形態において、ハプティックファイルまたはハプティックストリームのフォーマットはHESフォーマットであってもよい。ユーザインターフェース600はさらに編集領域620を含む。実施形態によれば、ユーザは効果プリセット610内に表示されたハプティック効果プリセットを選択でき、編集領域620は、選択されたハプティック効果プリセットによって表されるハプティック効果定義の図形描写を表示できる。さらに、ユーザは、編集領域620内の1つ以上の表示要素(ボタンなど)と相互作用することによって、選択されたハプティック効果定義の1つ以上のパラメータを変更できる。ハプティック効果定義の1つ以上のパラメータを変更することによって、対応するハプティック効果の1つ以上の対応する性質を変更できる。変更可能なハプティック効果定義の例示的なパラメータは、振幅パラメータ、周波数パラメータ、波形パラメータ、エンベロープパラメータ、マグニチュード(または強度)パラメータ、および持続時間パラメータを含む。
ユーザインターフェース600はさらに効果定義630を含む。実施形態によれば、ユーザは変更されたハプティック効果定義を新しいハプティック効果定義として保存でき、新しいハプティック効果定義は効果定義630の中に表示される。新しいハプティック効果定義は、ハプティックファイルまたはハプティックストリーム内に記憶されることができる。一実施形態において、ハプティックファイルまたはハプティックストリームのフォーマットはHESフォーマットであってもよい。新しいハプティック効果定義はさらに、外部ハプティックファイルまたは外部ハプティックストリームにエクスポートされることができる。ユーザインターフェース600はさらに、プレイボタン640を含む。プレイボタン640との相互作用は、ユーザインターフェース600に動作可能に制御されることができるコントローラにおけるハプティック効果を、システムに出力させることができる。ハプティック効果は、選択された所定のハプティック効果定義、または選択された新しいハプティック効果定義であってもよい。
ユーザインターフェース600はさらに、トリガエンジン領域650を含む。トリガエンジン領域650は、トリガエンジン(図5のトリガエンジン506など)によって生成されたトリガハプティック効果を視覚化することができる、編集可能視覚領域である。先に記載されたように、トリガエンジンはトリガハプティック効果を受信でき、コントローラのトリガの位置および/または範囲に基づいてトリガハプティック効果定義を変更できる。このためトリガエンジン領域650は、トリガの実際の位置を含む、トリガの視覚化映像を表示できる。さらに、トリガエンジン領域650は、トリガハプティック効果定義のために定義されたトリガの位置および/または範囲を表示でき、ここで位置および/または範囲は、トリガエンジンにトリガハプティック効果定義を変更させることができる。ユーザは、トリガハプティック効果定義のために定義されたトリガの位置および/または範囲を編集できる。ユーザインターフェース600はさらに、空間化エンジン領域660を含む。空間化エンジン領域660は、元々はトリガエンジンによって生成されることができ、空間化エンジン(図5の空間化エンジン507など)によってさらに変更されることができるハプティック効果を視覚化可能な、編集可能視覚領域である。先に記載されたように、空間化エンジンは、ハプティック効果がコントローラの1つ以上のターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータのためにスケーリングされるように、ハプティック効果定義を変更できる。このため空間化エンジン領域660は、コントローラの視覚化映像を表示できる。空間化エンジン領域660はさらに、コントローラの各ターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータにおいて経験されたハプティック効果の視覚化映像を表示できる。ユーザは、コントローラの各ターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータにおいて経験されたハプティック効果のスケーリングを編集できる。
図7は、本発明に係る、空間化ハプティック効果を設計するために使用されるコンポーネントのブロック図を示す。この実施形態において、システム(図1のシステム10など)は:(1)ハプティック効果の作成(すなわち、ハプティック効果定義を作成することによる);または(2)オーディオ効果としてのハプティック効果の作成(すなわち、オーディオ効果定義を作成することによる)のいずれかの専用ツールとして、オーサリングコンポーネント700を提供できる。一実施形態において、オーサリングコンポーネント700は、Avid Technology,Inc.による「Pro Tools(登録商標)」製品であってもよい。システムはさらに、ハプティック効果定義またはオーディオ効果定義をストリーム配信するために、単一ポートクロスオーバーオーディオストリーム入出力(ASIO)ドライバ710または4ポートASIOドライバ720のいずれかを、使用できる。単一ポート・クロスオーバー・ドライバ710は、単一チャネルのハプティックデータまたはオーディオデータとして、ハプティック効果定義またはオーディオ効果定義をストリーム配信できる。対照的に、4ポートASIOドライバ720は、4チャネルのハプティックデータまたはオーディオデータとしてハプティック効果定義またはオーディオ効果定義をストリーム配信できる。代替実施形態において、4ポートASIOドライバ720は、6または8チャネルのハプティックデータまたはオーディオデータなど、いずれかの複数のチャネルのハプティックデータまたはオーディオデータとしてハプティック効果定義またはオーディオ効果定義をストリーム配信する、別のドライバに置き換えられることができる。ユーザがオーディオ効果定義を作成する実施形態において、単一ポートクロスオーバーASIOドライバ710または4ポートASIOドライバ720のいずれかはまた、オーディオ効果定義をハプティック効果定義に変換することもできる。システムはさらに、オーディオ効果定義またはハプティック効果定義をHESフォーマットなどの外部フォーマットにエンコードするために、HESエンコーダ730を使用できる。システムが単一ポート・クロスオーバー・ドライバ710を用いて単一チャネルのハプティックデータまたはオーディオデータとしてオーディオ効果定義またはハプティック効果定義をストリーム配信する場合、HESエンコーダ730は、ハプティックデータまたはオーディオデータを3つの異なる出力(例えば(1)低周波鳴動モータまたは鳴動アクチュエータ;(2)中周波鳴動モータまたは鳴動アクチュエータ;あるいは(3)高周波ターゲットモータまたはターゲットアクチュエータ)にマッピングされることができる3つの異なる帯域に分離させるために、クロスオーバー入力ワープアルゴリズムを適用できる。
クロスオーバー入力ワープアルゴリズムは、装置自体の中に存在するか、または通信リンクの反対側に存在して、装置とは異なるプロセッサ上で実行できる。クロスオーバー入力ワープアルゴリズムはまた、入力データ(ハプティックまたはオーディオ)を2つの帯域に分離してもよく、ここで低周波は分離されて、その後1つ以上のアクチュエータ出力に適用される前に任意に変換され高周波は分離されて、その後低周波分離データに使用されるのとは異なる多数のアクチュエータに適用される前に、任意に変換される。このタイプのデータ分離は、任意の数の周波数帯域およびアクチュエータ出力において発生する可能性がある。代替実施形態において、入力データ(オーディオまたはハプティック)は複数の重複する周波数領域に分離されることができ、これらはその後各々任意に変換されて、多数の出力アクチュエータに適用される。別のセットの実施形態は、多数の信号強度帯域を作り出すことができ、ここで入力データ(オーディオまたはハプティック)は(ピーク検出、RMS計算などを通じて)出力パワーまたは強度にしたがって分離され、これら分離データストリームは、1つ以上の異なるアクチュエータのセットに各々適用される。代替実施形態において、入力データ(オーディオまたはハプティック)は、(ピーク検出、RMS計算などを通じて)出力パワーまたは強度にしたがって、完全に異なるストリームではなく、異なるが重複するデータストリームに分離されることができ、ここで強度フィルタリングアルゴリズムは重複する強度の領域を捕捉し、任意に変換を適用し、出力の各々を多数の出力アクチュエータに適用する。
システムはさらに、エンコードされたオーディオ効果定義またはエンコードされたハプティック効果定義を、コントローラ750上に存在するヒューマンインターフェース装置(HID)インタープリタ740に送信できる。HIDインタープリタ740は、コントローラ750のトリガにおけるハプティック効果を提供するために、エンコードされたオーディオ効果定義またはエンコードされたハプティック効果定義を受信および解釈する。一実施形態において、システムはさらに、システムが、エンコードされたオーディオ効果定義またはエンコードされたハプティック効果定義をコントローラ750のHIDインタープリタ740に送信する前に、トリガエンジン(図5のトリガエンジン506など)および/または空間化エンジン(図5の空間化エンジン507など)を用いて、エンコードされたオーディオ効果定義またはエンコードされたハプティック効果定義を変更できる。
図8は、本発明の実施形態に係る、直接再生のための空間化ハプティック効果を作成するために使用されるコンポーネントのブロック図、および空間化ハプティック効果を保存するために使用されるコンポーネントのブロック図を示す。この実施形態において、システム(図1のシステム10など)は、オーディオ効果として空間化ハプティック効果を作成するための(すなわち、オーディオ効果定義を作成することによる)専用ツールとして、オーディオオーサリングコンポーネント800を提供できる。一実施形態において、オーディオオーサリングコンポーネント800は、Avid Technology,Inc.による「Pro Tools(登録商標)」製品であってもよい。
一旦システムのユーザがオーディオオーサリングコンポーネント800を用いて空間化ハプティック効果を作成すると、ユーザは空間化ハプティック効果をプレビューできる。プレビュー機能は、空間化ハプティック効果のさらなるカスタマイズを可能にする。空間化ハプティック効果をプレビューすると、システムは作成されたオーディオ効果定義を4チャネル出力ドライバ801に送信でき、4チャネル出力ドライバ801はオーディオ効果定義を4チャネルのオーディオデータとしてストリーム配信できる。一実施形態において、4チャネル出力ドライバ801は、4チャネルASIO出力ドライバであってもよい。代替実施形態において、4チャネル出力ドライバ801は、6または8チャネルのオーディオデータなど、いずれかの複数のチャネルのオーディオデータとしてオーディオ効果定義をストリーム配信する、別のドライバに置き換えられることができる。
さらに、システムは、オーディオストリームをオーディオハプティック変換器802に送信でき、オーディオハプティック変換器802は、ハプティック変換アルゴリズムを用いてオーディオストリームのオーディオ効果定義をハプティック効果定義に変換できる。一実施形態において、あるモータまたはアクチュエータに対応するオーディオ効果定義の各個別チャネルは、ハプティック効果定義のあるチャネルに変換されることができる。例示的なハプティック変換アルゴリズムは、(その全てが全体として参照により本明細書に組み込まれる)以下の特許または特許出願に記載される:米国特許第7,979,146号明細書;米国特許第8,000,825号明細書;米国特許第8,378,964号明細書;米国特許公開第2011/0202155号明細書;米国特許公開第2011/0215913号明細書;米国特許公開第2012/0206246号明細書;米国特許公開第2012/0206247号明細書;米国特許公開第2013/0265286号明細書;米国特許公開第2013/0131851;号明細書;米国特許公開第2013/0207917号明細書;米国特許公開第2013/0335209号明細書;米国特許公開第2014/0064516号明細書;米国特許出願第13/661,140号明細書;米国特許出願第13/785,166号明細書;米国特許出願第13/788,487号明細書;米国特許出願第14/078,438号明細書;米国特許出願第14/078,442号明細書;米国特許出願第14/078,445号明細書;米国特許出願第14/051,933号明細書;米国特許出願第14/020,461号明細書;米国特許出願第14/020,502号明細書;米国特許出願第14/277,870号明細書;および米国特許出願第14/467,184号明細書。
システムはさらに、変換されたハプティック効果定義をHES多チャネルエンコーダ803に送信でき、多チャネルエンコーダ803は、変換されたハプティック効果定義をHESフォーマットなどの外部フォーマットにエンコードできる。システムはさらに、エンコードおよび変換されたハプティック効果定義を、コントローラ805上に存在するトリガ・コントローラ・インターフェース(I/F)804に送信できる。トリガコントローラI/F804は、コントローラ805のトリガにおける作成されたトリガハプティック効果をプレビューするために、エンコードおよび変換されたハプティック効果定義を受信および解釈できる。
この実施形態において、システムはオーディオオーサリングコンポーネント810を提供でき、ここでオーディオオーサリングコンポーネント810はオーディオオーサリングコンポーネント800と同一である。一旦システムのユーザがオーディオオーサリングコンポーネント810を用いて空間化ハプティック効果を作成すると、ユーザは空間化ハプティック効果を保存できる。空間化ハプティック効果を保存すると、システムは、オーディオ効果定義を個別のオーディオファイル811としてエクスポートできる。オーディオ効果定義が4つのチャネルを含む一実施形態において、オーディオファイル811は4つのオーディオファイルを含むことができる。オーディオ効果定義が別の数のチャネルを含む代替実施形態において、オーディオファイル811は、その数の個別のオーディオファイルを含むことができる。特定の実施形態において、オーディオファイル811は、Waveform Audio File(WAV)フォーマットであってもよい。システムはさらに、オーディオファイル811をHESエンコーダ・グラフィカル・ユーザ・インターフェース(GUI)812に送信でき、ここでHESエンコーダGUI812は、オーディオファイル811を単一のオーディオファイルにエンコードできる。一実施形態において、オーディオファイルはHESフォーマットであってもよい。さらに、システムはオーディオファイルをオーディオハプティック変換器812に送信でき、オーディオハプティック変換器813は、ハプティック変換アルゴリズムを用いてオーディオファイルのオーディオ効果定義をハプティック効果定義に変換できる。一実施形態において、あるモータまたはアクチュエータに対応するオーディオ効果定義の各個別チャネルは、ハプティック効果定義のあるチャネルに変換されることができる。システムはさらに、変換されたハプティック効果定義をHES多チャネルエンコーダ814に送信でき、多チャネルエンコーダ814は、変換されたハプティック効果定義をHESフォーマットなどの外部フォーマットにエンコードできる。システムはさらに、エンコードおよび変換されたハプティック効果定義をハプティックファイル815内に記憶できる。一実施形態において、ハプティックファイル815はHESファイルであってもよい。
図9は、本発明の実施形態に係る、クロスオーバー再生のための空間化ハプティック効果を作成するために使用されるコンポーネントのブロック図、および空間化ハプティック効果を保存するために使用されるコンポーネントのブロック図を示す。この実施形態において、システム(図1のシステム10など)は、オーディオ効果として空間化ハプティック効果を作成するための(すなわち、オーディオ効果定義を作成することによる)専用ツールとして、オーディオオーサリングコンポーネント900を提供できる。
一旦システムのユーザがオーディオオーサリングコンポーネント900を用いて空間化ハプティック効果を作成すると、ユーザは空間化ハプティック効果をプレビューできる。空間化ハプティック効果をプレビューすると、システムは、作成されたオーディオ効果定義を単一チャネル出力ドライバ901に送信でき、単一チャネル出力ドライバ901はオーディオ効果定義を単一チャネルのオーディオデータとしてストリーム配信できる。一実施形態において、単一チャネル出力ドライバ901は、単一チャネルASIO出力ドライバであってもよい。さらに、システムはオーディオストリームをオーディオハプティック変換器902に送信でき、オーディオハプティック変換器902は、ハプティック変換アルゴリズムを用いてオーディオストリームのオーディオ効果定義をハプティック効果定義に変換できる。一実施形態において、あるモータまたはアクチュエータに対応するオーディオ効果定義の各個別チャネルは、ハプティック効果定義のあるチャネルに変換されることができる。さらにまた、システムは変換されたハプティック効果定義をクロスオーバーGUI905に送信でき、クロスオーバーGUI905は、ハプティック効果定義を3つの異なる出力(例えば(1)低周波鳴動モータまたは鳴動アクチュエータ;(2)中周波鳴動モータまたは鳴動アクチュエータ;あるいは(3)高周波ターゲットモータまたはターゲットアクチュエータ)にマッピングされることができる3つの異なるチャネルに分離するために、クロスオーバー入力ワープアルゴリズムを適用できる。
システムはさらに、変換されたハプティック効果定義をHES多チャネルエンコーダ903に送信でき、多チャネルエンコーダ903は、変換されたハプティック効果定義をHESフォーマットなどの外部フォーマットにエンコードできる。システムはさらに、エンコードおよび変換されたハプティック効果定義を、コントローラ906上に存在するトリガコントローラI/F904に送信できる。トリガコントローラI/F904は、コントローラ906のトリガにおける作成されたトリガハプティック効果をプレビューするために、エンコードおよび変換されたハプティック効果定義を受信および解釈できる。
この実施形態において、システムはオーディオオーサリングコンポーネント910を提供することができ、ここでオーディオオーサリングコンポーネント910はオーディオオーサリングコンポーネント900と同一である。一旦システムのユーザがオーディオオーサリングコンポーネント910を用いて空間化ハプティック効果を作成すると、ユーザは空間化ハプティック効果を保存できる。空間化ハプティック効果を保存すると、システムは、オーディオ効果定義を単一のオーディオファイル911としてエクスポートできる。特定の実施形態において、オーディオファイル911はWAVフォーマットであってもよい。システムはさらに、クロスオーバー設定912をエクスポートできる。システムはさらに、オーディオファイル911をHESエンコーダGUI913に送信でき、ここでHESエンコーダGUI913は、オーディオファイル911およびクロスオーバー設定912を単一のオーディオファイルにエンコードできる。一実施形態において、オーディオファイルはHESフォーマットであってもよい。システムはさらに、オーディオファイルをHES単一チャネルおよびクロスオーバーエンコーダ914に送信でき、単一チャネルおよびクロスオーバーエンコーダ914は、オーディオファイルをHESフォーマットなどの外部フォーマットにエンコードできる。システムはさらに、エンコードされたオーディオファイルをハプティックファイル915内に記憶できる。一実施形態において、ハプティックファイル915はHESファイルであってもよい。
図10は、本発明の実施形態に係る、空間化ハプティック効果を直接再生するために使用されるコンポーネントのブロック図を示す。一実施形態によれば、システム(図1のシステム10など)は、ハプティック効果定義を含むハプティックファイル1000をロードできる。一実施形態において、ハプティックファイル1000はHESファイルであってもよい。実施形態によれば、ハプティックファイル1000内に含まれるハプティック効果定義は4つのチャネルを含み、各チャネルは、ハプティック効果定義内に含まれるハプティックデータの一部を含む。代替実施形態において、ハプティックファイル1000内に含まれるハプティック効果定義は、いずれかの複数のチャネルを含むことができる。各チャネルのハプティック効果定義は、ターゲットモータ、ターゲットアクチュエータ、鳴動(ランブル(rumble))モータ、または鳴動アクチュエータに関連付けられることができる。図示される実施形態において、第1チャネル(すなわち「チャネルLR」)は低鳴動モータに関連付けられ、第2チャネル(すなわち「チャネルMR」)は中鳴動モータに関連付けられ、第3チャネル(すなわち「チャネルLT」)は左トリガに動作可能に結合されたモータに関連付けられ、第4チャネル(すなわち「チャネルRT」)は右トリガに動作可能に結合されたモータに関連付けられている。一実施形態において、ハプティックファイル1000内に含まれるハプティック効果定義は、再生速度および再生率制御を定義できる。
実施形態によれば、システムは、ハプティックファイル1000内に含まれる4つのチャネルのハプティック効果定義を強度制御1010に送信でき、強度制御1010は、各チャネルのハプティック効果定義内に含まれるハプティックデータの強度、またはマグニチュードを変更できる。システムはその後、4つのチャネルのハプティック効果定義を前後(F/B)空間化1020に送信でき、F/B空間化1020は、空間化データに基づいて各チャネルのハプティック効果定義内に含まれるハプティックデータを変更できる。空間化データは、ハプティック効果の方向および/または流れを含むことができる。一実施形態において、ハプティック効果の方向および/または流れは、前向きまたは後ろ向き方向であってもよい。さらに、空間化データは、1つ以上の手の位置を含むことができる。実施形態によれば、F/B空間化1020は、ハプティック効果が各モータまたはアクチュエータのためにスケーリングされるように、各チャネル内に含まれるハプティックデータを変更できる。システムはその後、チャネルLRを低鳴動モータ1030(図10において「低鳴動モータ」とされる)に送信でき、チャネルMRを中鳴動モータ1040(図10において「中鳴動モータ」とされる)にさらに送信できる。チャネルLR内に包含されるハプティックデータは、低鳴動モータ1030に一般または鳴動ハプティック効果を生成させることができ、チャネルMR内に包含されるハプティックデータは、中鳴動モータ1040に一般または鳴動ハプティック効果を生成させることができる。
システムはさらに、チャネルLTおよびRTを左右(L/R)空間化1050に送信でき、L/R空間化1050は、空間化データに基づいてチャネルLTおよびRT内に含まれるハプティックデータを変更できる。空間化データは、ハプティック効果の方向および/または流れを含むことができる。一実施形態において、ハプティック効果の方向および/または流れは、左または右方向であってもよい。さらに、空間化データは1つ以上の手の位置を含むことができる。実施形態によれば、L/R空間化1050は、ハプティック効果が各モータまたはアクチュエータのためにスケーリングされるように、各チャネル内に含まれるハプティックデータを変更できる。システムはその後、チャネルLTを左トリガターゲットモータ1060(図10において「LTモータ」とされる)に送信でき、チャネルRTを右トリガターゲットモータ1070(図10において「RTモータ」とされる)にさらに送信できる。チャネルLT内に包含されるハプティックデータは、左トリガターゲットモータ1060に左トリガにおけるトリガハプティック効果を生成させることができ、チャネルRT内に包含されるハプティックデータは、右トリガターゲットモータ1070に、右トリガにおけるトリガハプティック効果を生成させることができる。
図11は、本発明の実施形態に係る、プログラマブルクロスオーバーを使用して空間化ハプティック効果を再生するために使用されるコンポーネントのブロック図を示す。実施形態によれば、システム(図1のシステム10など)は、ハプティック効果定義を含むハプティックファイル1100をロードできる。一実施形態において、ハプティックファイル1100はHESファイルであってもよい。実施形態によれば、ハプティックファイル1100内に含まれるハプティック効果定義は単一チャネルを含み、チャネルはハプティック効果定義内に含まれるハプティックデータを含む。やはり実施形態によれば、ハプティックファイル1100内に含まれるハプティック効果定義は1つ以上のクロスオーバーパラメータを含み、1つ以上のクロスオーバーパラメータはクロスオーバー入力ワープアルゴリズムのためのパラメータであってもよい。一実施形態において、ハプティックファイル1100内に含まれるハプティック効果定義は、再生速度および再生率制御を定義できる。
実施形態によれば、システムは、ハプティックファイル1100内に含まれるハプティック効果定義のチャネル、ならびにやはりハプティックファイル1100内に含まれる1つ以上のクロスオーバーパラメータを、プログラマブルクロスオーバー1110に送信できる。プログラマブルクロスオーバー1110は、チャネルを3つの異なるチャネル:すなわち低周波チャネル;中周波チャネル;および高周波チャネルに分離するために、1つ以上のクロスオーバーパラメータを用いてクロスオーバー入力ワープアルゴリズムを適用できる。低周波チャネルは、1つ以上の低周波を含むハプティック効果定義内に含まれるハプティックデータの一部を含む。中周波チャネルは、1つ以上の中周波を含むハプティック効果定義内に含まれるハプティックデータの一部を含む。高周波チャネルは、1つ以上の高周波を含むハプティック効果定義内に含まれるハプティックデータの一部を含む。
システムはその後、3つのチャネルのハプティック効果定義をF/B空間化1120に送信でき、F/B空間化1120は、空間化データに基づいて各チャネルのハプティック効果定義内に含まれるハプティックデータを変更できる。空間化データは、ハプティック効果の方向および/または流れを含むことができる。一実施形態において、ハプティック効果の方向および/または流れは、前向きまたは後ろ向き方向であってもよい。さらに、空間化データは、1つ以上の手の位置を含むことができる。実施形態によれば、F/B空間化1120は、ハプティック効果が各モータまたはアクチュエータのためにスケーリングされるように、各チャネル内に含まれるハプティックデータを変更できる。システムはその後、低周波チャネルを低鳴動モータ1130(図11において「低鳴動モータ」とされる)に送信でき、中周波チャネルを中鳴動モータ1140(図11において「中鳴動モータ」とされる)にさらに送信できる。低周波チャネル内に包含されるハプティックデータは、低鳴動モータ1130に一般または鳴動ハプティック効果を生成させることができ、中周波チャネル内に包含されるハプティックデータは、中鳴動モータ1140に一般または鳴動ハプティック効果を生成させることができる。
システムはさらに、高周波チャネルをL/R空間化1150に送信でき、L/R空間化1150は、空間化データに基づいて高周波チャネル内に含まれるハプティックデータを変更できる。一実施形態において、ハプティック効果の方向および/または流れは、左または右方向であってもよい。さらに、空間化データは1つ以上の手の位置を含むことができる。実施形態によれば、L/R空間化1150は、ハプティック効果が各モータまたはアクチュエータのためにスケーリングされるように、チャネル内に含まれるハプティックデータを変更できる。システムはその後、高周波チャネルを左トリガターゲットモータ1160(図11において「LTモータ」とされる)に送信でき、また高周波チャネルを右トリガターゲットモータ1170(図11において「RTモータ」とされる)に送信することもできる。高周波チャネル内に包含されるハプティックデータは、左トリガターゲットモータ1160に左トリガにおけるトリガハプティック効果を生成させることができ、高周波チャネル内に包含されるハプティックデータは、右トリガターゲットモータ1170に右トリガにおけるトリガハプティック効果を生成させることができる。
図12は、本発明の実施形態に係る、空間化ハプティック効果の例示的な4チャネル直接再生を示す。実施形態によれば、システム(図1のシステム10など)は、オーディオ効果定義を含むオーディオファイル1200をロードできる。一実施形態において、オーディオファイル1200はHESファイルであってもよい。実施形態によれば、オーディオファイル1200内に含まれるオーディオ効果定義は4つのチャネルを含み、各チャネルはオーディオ効果定義内に含まれるオーディオデータの一部を含む。代替実施形態において、オーディオファイル1200内に含まれるオーディオ効果定義は、いずれかの複数のチャネルを含むことができる。ハプティック効果定義の各チャネルは、ターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータに関連付けられることができる。図示される実施形態において、第1チャネル(すなわち「チャネルLR」)は低鳴動モータに関連付けられ、第2チャネル(すなわち「チャネルMR」)は中鳴動モータに関連付けられ、第3チャネル(すなわち「チャネルLT」)は左トリガに動作可能に結合されたターゲットモータに関連付けられ、第4チャネル(すなわち「チャネルRT」)は右トリガに動作可能に結合されたターゲットモータに関連付けられている。
実施形態によれば、システムは、オーディオファイル1200内に含まれる4つのチャネルのオーディオ効果定義をオーディオハプティック変換器1210に送信でき、オーディオハプティック変換器1210は、ハプティック変換アルゴリズムを用いてオーディオ効果定義をハプティック効果定義に変換できる。一実施形態において、オーディオ効果定義の各個別チャネルはハプティック効果定義のあるチャネルに変換されることができる。図示される実施形態において、チャネルLRは60ヘルツ(Hz)未満の範囲を有するピーク/デシメーションフィルタを用いて変換されることができ、チャネルMRは60Hzの値を有するピーク/デシメーションフィルタを用いて変換されることができ、チャネルLTおよびRTは、200Hzから2kHzの範囲を有するピーク/デシメーションフィルタを用いて各々変換されることができる。
システムはさらに、4つのチャネルの変換されたハプティック効果定義をエンコーダ/デコーダ1220に送信でき、エンコーダ/デコーダ1220は各チャネルの変換されたハプティック効果定義をHESフォーマットなどの外部フォーマットにエンコードできる。システムはその後、4つのエンコードされたチャネルの変換されたハプティック効果定義をF/B空間化1230に送信でき、F/B空間化1230は、空間化データに基づいて各エンコードされたチャネルの変換されたハプティック効果定義内に含まれる変換されたハプティックデータを変更できる。空間化データは、ハプティック効果の方向および/または流れを含むことができる。一実施形態において、ハプティック効果の方向および/または流れは、前向きまたは後ろ向き方向であってもよい。さらに空間化データは、1つ以上の手の位置を含むことができる。実施形態によれば、F/B空間化1230は、ハプティック効果が各モータまたはアクチュエータのためにスケーリングされるように、各エンコードされたチャネル内に含まれる変換されたハプティックデータを変更できる。システムはその後、エンコードされたチャネルLRを低鳴動モータ1240(図12において「低鳴動モータ」とされる)に送信でき、エンコードされたチャネルMRを中鳴動モータ1250(図12において「中鳴動モータ」とされる)にさらに送信できる。チャネルLRに包含される変換されたハプティックデータは、低鳴動モータ1240に一般または鳴動ハプティック効果を生成させることができ、チャネルMR内に包含される変換されたハプティックデータは、中鳴動モータ1250に一般または鳴動ハプティック効果を生成させることができる。
システムはさらに、エンコードされたチャネルLTおよびRTをL/R空間化1260に送信でき、L/R空間化1260は、空間化データに基づいてエンコードされたチャネルLTおよびRTに含まれる変換されたハプティックデータを変更できる。空間化データは、ハプティック効果の方向および/または流れを含むことができる。一実施形態において、ハプティック効果の方向および/または流れは、左または右方向であってもよい。さらに、空間化データは1つ以上の手の位置を含むことができる。実施形態によれば、L/R空間化1260は、ハプティック効果が各モータまたはアクチュエータのためにスケーリングされるように、各チャネル内に含まれるハプティックデータを変更できる。システムはその後、チャネルLTを左トリガターゲットモータ1270(図12において「LTモータ」とされる)に送信でき、チャネルRTを右トリガターゲットモータ1280(図12において「RTモータ」とされる)にさらに送信できる。チャネルLT内に包含されるハプティックデータは、左トリガターゲットモータ1270に左トリガにおけるトリガハプティック効果を生成させることができ、チャネルRT内に包含されるハプティックデータは、右トリガターゲットモータ1280に右トリガにおけるトリガハプティック効果を生成させることができる。
図13は、本発明の実施形態に係る、空間化ハプティック効果の例示的なクロスオーバー再生を示す。実施形態によれば、システム(図1のシステム10など)は、オーディオ効果定義を含むオーディオファイル1300をロードできる。一実施形態において、オーディオファイル1300はHESファイルであってもよい。実施形態によれば、オーディオファイル1300内に含まれるオーディオ効果定義は単一チャネルを含み、チャネルはオーディオ効果定義内に含まれるオーディオデータを含む。一実施形態において、オーディオファイル1300内に含まれるオーディオ効果定義は、1つ以上のクロスオーバーパラメータを含むことができ、1つ以上のクロスオーバーパラメータは、クロスオーバー入力ワープアルゴリズムのためのパラメータであってもよい。
実施形態によれば、システムは、オーディオファイル1300内に含まれるオーディオ効果定義のチャネル、ならびに一実施形態において、やはりオーディオファイル1300内に含まれる1つ以上のクロスオーバーパラメータを、プログラマブルクロスオーバー1310に送信できる。プログラマブルクロスオーバー1310は、チャネルを3つの異なるチャネル:すなわち低周波チャネル;中周波チャネル;および高周波チャネルに分離するために、クロスオーバー入力ワープアルゴリズムを(一実施形態において、1つ以上のクロスオーバーパラメータを用いて)適用できる。プログラマブルクロスオーバー1310はさらに、ハプティック変換アルゴリズムを用いてオーディオ効果定義をハプティック効果定義に変換できる。一実施形態において、オーディオ効果定義の各個別チャネルはハプティック効果定義のあるチャネルに変換されることができる。図示される実施形態において、低周波チャネルは60ヘルツ(Hz)未満の範囲を有するピーク/デシメーションフィルタを用いて変換されることができ、中周波チャネルは60Hzの値を有するピーク/デシメーションフィルタを用いて変換されることができ、高周波チャネルは200Hzから2kHzの範囲を有するピーク/デシメーションフィルタを用いて各々変換されることができる。
システムはさらに、3つのチャネルの変換されたハプティック効果定義をエンコーダ/デコーダ1320に送信でき、エンコーダ/デコーダ1320は各チャネルの変換されたハプティック効果定義をHESフォーマットなどの外部フォーマットに変換できる。システムはその後、3つのチャネルのハプティック効果定義をF/B空間化1330に送信でき、F/B空間化1330は、空間化データに基づいて各チャネルのハプティック効果定義内に含まれるハプティックデータを変更できる。空間化データは、ハプティック効果の方向および/または流れを含むことができる。一実施形態において、ハプティック効果の方向および/または流れは、前向きまたは後ろ向き方向であってもよい。さらに空間化データは、1つ以上の手の位置を含むことができる。実施形態によれば、F/B空間化1330は、ハプティック効果が各モータまたはアクチュエータのためにスケーリングされるように、各チャネル内に含まれるハプティックデータを変更できる。システムはその後、低周波チャネルを低鳴動モータ1340(図13において「低鳴動モータ」とされる)に送信でき、中周波チャネルを中鳴動モータ1350(図13において「中鳴動モータ」とされる)にさらに送信できる。低周波チャネル内に包含されるハプティックデータは、低鳴動モータ1340に一般または鳴動ハプティック効果を生成させることができ、中周波チャネル内に包含されるハプティックデータは、中鳴動モータ1350に一般または鳴動ハプティック効果を生成させることができる。
システムはさらに、高周波チャネルをL/R空間化1360に送信でき、L/R空間化1360は、空間化データに基づいて高周波チャネル内に含まれるハプティックデータを変更できる。一実施形態において、ハプティック効果の方向および/または流れは、左または右方向であってもよい。さらに、空間化データは1つ以上の手の位置を含むことができる。実施形態によれば、L/R空間化1360は、ハプティック効果が各モータまたはアクチュエータのためにスケーリングされるように、チャネル内に含まれるハプティックデータを変更できる。システムはその後、高周波チャネルを左トリガターゲットモータ1370(図13において「LTモータ」とされる)に送信でき、高周波チャネルを右トリガターゲットモータ1380(図13において「RTモータ」とされる)に送信することもまたできる。高周波チャネル内に包含されるハプティックデータは、左トリガターゲットモータ1370に左トリガにおけるトリガハプティック効果を生成させることができ、高周波チャネル内に包含されるハプティックデータは、右トリガターゲットモータ1380に右トリガにおけるトリガハプティック効果を生成させることができる。
図14は、本発明の実施形態に係る、空間化エンジンの例示的なユーザインターフェース1400を示す。ユーザインターフェース1400は、空間化エンジン(図5の空間化エンジン507など)によって元々生成されてさらに変更されたハプティック効果を視覚化することができる、編集可能視覚領域である。一実施形態において、ハプティック効果は、元々トリガエンジン(図5のトリガエンジン506など)によって生成されたトリガハプティック効果であってもよい。ユーザインターフェース1400はさらに、ユーザが空間化エンジンによるハプティック効果の1つ以上の変更をプログラムで管理できるようにすることもできる。このような変更はさらに、将来の動的再生のために記録されることができる。先に記載されたように、空間化エンジンは、ハプティック効果がコントローラの1つ以上のターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータのためにスケーリングされるように、元々生成されたハプティック効果定義を変更できる。より具体的には、空間化エンジンは、コントローラのユーザによって経験された通りのハプティック効果の方向感覚を伝達するために、各ターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータに適用された通りにハプティック効果定義を変更できる。ハプティック効果定義に対する各変更は、特殊化エンジンによって定義された通りのハプティック効果の意図される方向および/または流れに基づいてもよい。さらに、各変更はまた、コントローラによって受信された入力に基づいてもよく、入力は、コントローラ上のユーザの手の位置を示す。このように、空間化エンジンは、元々生成されたハプティック効果定義を受信でき、ハプティック効果の「空間化」局面(例えば、ハプティック効果の位置および/または流れ)に基づいてハプティック効果定義を変更できる。
ユーザインターフェース1400は、流れ1410を含む。流れ1410は、ユーザがハプティック効果の流れをプログラムで管理できるようにする。流れは、コントローラの個々のターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータ上での再生を遅延させるための、一時的再生開始オフセット変更である。あるいは流れは、コントローラのターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータにおいて経験されるハプティック効果の持続時間を変更するための、持続時間変更であってもよい。例えば流れは、ハプティック再生がまず左ターゲットモータまたはターゲットアクチュエータ上で開始し、その後続いて中鳴動モータまたは鳴動アクチュエータ上で開始し、その後さらに右ターゲットモータまたはターゲットアクチュエータ上で開始するように、定義されることができる。この例において、コントローラのユーザは、まずコントローラの左、その後コントローラの中央、その後コントローラの右における全体的なハプティック効果のハプティック再生を経験するので、全体的なハプティック効果の流れは左から右である。流れは左から右またはその逆、前から後またはその逆、あるいはこれら2つの組み合わせであってもよい。このように、流れはハプティック再生ベクトルを定義できる。流れ1410は、ユーザインターフェース1400の中で水平に、垂直に、または斜めに配置されることができる矢印として、ユーザインターフェース1400内で視覚化されることができる。このように、流れ1410と相互作用することにより、ユーザはハプティック再生をずらすために、コントローラの様々なモータまたはアクチュエータに適用される1つ以上の遅延を変更できる。
ユーザインターフェース1400はさらに、方向1420を含む。方向1420は、ユーザがハプティック効果の方向をプログラムで変更できるようにする。方向は、コントローラの様々なモータまたはアクチュエータの間の前後および/または左右バイアス(またはバランス)を強調するための、マグニチュード(または強度)変更である。あるいは、方向は周波数変更であってもよい。例えば、方向は、ハプティック効果のハプティック再生がコントローラの右において最も強くなるように、定義されることができる。方向1420は、2つの軸によって定義された二次元グリッドまたは空間内の点として、ユーザインターフェース1400内で視覚化されることができる。このように、方向1420と相互作用することにより、ユーザは左右および/または前後バイアス(またはバランス)を強調するために、様々なモータまたはアクチュエータに適用されるマグニチュード(または強度)を変更できる。
ユーザインターフェース1400はさらに、強度1430を含む。強度1430は、再生の前または最中に、ユーザが全体的なハプティック効果のマグニチュード(または強度)をプログラムで変更できるようにする。強度1430は、スライダとしてユーザインターフェース1400内で視覚化されることができる。このように、強度1430と相互作用することにより、ユーザはハプティック効果の全体的なマグニチュード(または強度)を変更できる。ユーザインターフェース1400はさらに、再生速度1440を含む。再生速度1440は、ハプティック効果を再生するためにシステム(図1のシステム10など)がハプティック効果のハプティック効果定義を処理する再生速度または率を、ユーザがプログラムで変更できるようにする。再生速度1440は、スライダとしてユーザインターフェース1400内で視覚化されることができる。このように、再生速度1440と相互作用することにより、ユーザはハプティック効果の再生速度または率を変更できる。ユーザインターフェース1400はさらにループ1450を含む。ループ1450は、ハプティック効果の再生がループになっているか否かをユーザがプログラムで変更できるようにする。ループ1450は、ボタンとしてユーザインターフェース1400内で視覚化されることができる。このように、ループ1450と相互作用することにより、ユーザはハプティック効果のループ化を制御できる。空間化エンジンのさらなる詳細はさらに、図29および図30と併せて、以下により詳細に記載される。
図15は、本発明の実施形態に係る、ハプティック効果API1500のアーキテクチャ図を示す。ハプティック効果API1500は、トリガなどのコントローラのユーザ入力エレメントにおいて、トリガハプティック効果などのハプティック効果を開発者が再生できるようにする、コンピュータ可読機能またはルーチンのセットを含む。ハプティック効果APIは、運転/レース、武器/戦争、およびスポーツ(例えばサッカー、フットボール、野球、ゴルフ、またはホッケー)など、多くの異なるゲームジャンルのための所定のハプティック効果定義を包含する広範なハプティック効果ライブラリを含むことができる。一実施形態において、ハプティック効果APIはC++クラスのセットを含むことができ、クライアントアプリケーションにおいて停止される可能性のある、例外および実行時型情報などの拡張機能を使用する必要はない。代替実施形態において、ハプティック効果APIは、C、Java(登録商標)、またはC#など、その他の言語結合を使用できる。さらに、ハプティック効果APIは、Unity3D(商標)およびMarmalade(商標)など、特定のゲームジャンルのためのプラグインを提供できる。
実施形態によれば、ハプティック効果API1500はアプリケーション1510によってアクセス可能であり、これはシステム(図1のシステム10など)上で実行されることができる、ゲームアプリケーションなどのソフトウェアアプリケーションである。さらに、ハプティック効果API1500は効果ライブラリ1520にアクセスでき、効果ライブラリ1520は、ハプティック効果定義1521(図15において「効果1521」とされる)など、1つ以上のハプティック効果定義を含むことができる。先に記載されたように、ハプティック効果定義の一例はトリガハプティック効果定義である。さらに、ハプティック効果API1500は、装置定義1501(図15において「装置1501」とされる)など、1つ以上の装置定義を含む。装置定義は、コントローラ、ゲームパッド、またはその他の周辺機器などのハードウェア装置を定義する装置データを含み、ここでハプティック効果が再生されることになる。ハプティック効果API1500はさらに、タイマー定義1502(図15において「タイマー1502」とされる)など、1つ以上のタイマー定義を含む。タイマー定義は、特定のハードウェア装置に登録された全てのハプティック効果定義が更新されるのにかかる時間を定義する、タイマーデータを含む。ハプティック効果API1500はさらに、トリガ定義1503(図15において「トリガ1503」とされる)を含む。トリガ定義は、特定のハードウェア装置のトリガを定義する、トリガデータを含む。ハプティック効果API1500はさらに、プロトコル定義1504(図15において「プロトコル1504」とされる)を含む。プロトコル定義は、特定のハードウェア装置と通信するためにトリガハプティック効果API1500によって使用される通信インターフェースのプロトコルを記述する。プロトコル定義1504を使用して、ハプティック効果API1500は装置ファームウェア1530(図15において「FW1530」とされる)と通信でき、装置ファームウェア1530は特定のハードウェア装置のためのファームウェアである。装置ファームウェア1530を使用して、ハプティック効果API1500はさらにハードウェア装置1540(図15において「HW1540」とされる)と通信でき、ハードウェア装置1540は特定のハードウェア装置である。
一実施形態において、アプリケーション1510は、ハプティック効果が再生されることになるターゲットハードウェア装置(すなわち、HW1540)を取得するために、装置定義1501にアクセスできる。装置定義1501にアクセスすることにより、アプリケーション1510はさらに、タイマー定義1502、トリガ定義1503、およびプロトコル定義1504にアクセスできる。アプリケーション1510はさらに、ハプティック効果をインスタンス作成するために、効果ライブラリ1520からのハプティック効果定義1521にアクセスできる。アプリケーション1510はさらに、ハプティック効果API1500およびFW1530を介してターゲットハードウェア装置(すなわちHW1540)に命令を送信することによって、ターゲットハードウェア装置(すなわちHW1540)においてハプティック効果を再生させることができる。
図16は、本発明の実施形態に係る、ハプティック効果を生成するファームウェアのアーキテクチャ図を示す。アーキテクチャは通信インターフェース1600を含む。通信インターフェース1600は、ハプティック効果API(図15のハプティック効果API1500など)と、コントローラまたはゲームパッドなどの周辺機器のためのファームウェアとの間の通信を提供する。アーキテクチャはさらに、効果スロット1610を含む。効果スロットはハプティック効果のタイプを定義し、以下のパラメータを含むことができる:マグニチュード(または強度);周波数(または周期);エンベロープ(例えば攻撃レベル、攻撃時間、フェードレベル、およびフェード時間);アクチュエータ(例えば、「鳴動」または「指向性」など、特定のアクチュエータまたは仮想アクチュエータ);方向(例えば1つまたは2つの角度、あるいは二次元ベクトル);距離(例えば、ハプティック効果全体をモジュール化するために使用可能);開始/終了ハプティック効果定義(例えば挿入されたハプティック効果を作り出すために挿入されることができる、開始ハプティック効果定義および終了ハプティック効果定義)。特定のタイプの効果スロット1610は、トリガ効果スロット1620である。トリガ効果スロットは、トリガハプティック効果のタイプを定義し、効果スロットの上記パラメータに加えて、以下の追加パラメータを含むことができる:トリガボタン(例えばなし、左、または右);トリガ開始/停止点、および方向(例えば、特定方向へ移動中にトリガボタンが特定位置に到達したときにトリガハプティック効果を開始/停止する);ならびにトリガ終了点(例えば、トリガハプティック効果の再生中に開始トリガハプティック効果定義と終了トリガハプティック定義との間に挿入する)。
アーキテクチャはさらに、トリガエンジン1630を含む。先に記載されたように、トリガエンジン1630はトリガハプティック効果定義を受信でき、コントローラのトリガの位置および/または範囲など、トリガデータに基づいてトリガハプティック効果定義を変更できる。アーキテクチャはさらに、トリガ・ハードウェア・インターフェース1640(図16において「トリガHWインターフェース1640」とされる)を含む。トリガ・ハードウェア・インターフェース1640は、トリガエンジン1630がコントローラまたはゲームパッドなどの周辺機器からトリガデータを受信できるようにする、通信インターフェースである。アーキテクチャはさらに、空間化エンジン1650を含む。先に記載されたように、空間化エンジン1650は、トリガハプティック効果などのハプティック効果がコントローラの1つ以上のターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータのためにスケーリングされるように、トリガハプティック効果などのハプティック効果定義を変更できる。アーキテクチャはさらに、基本効果レンダリングエンジン1660を含む。基本効果レンダリングエンジン1660は、トリガハプティック効果定義などのハプティック効果定義に基づいて、モータまたはアクチュエータのためにトリガハプティック効果などのハプティック効果を表現する。アーキテクチャはさらに、アクチュエータ・ハードウェア・インターフェース1670(図16において「アクチュエータHWインターフェース1670」とされる)を含む。アクチュエータ・ハードウェア・インターフェース1670は、モータまたはアクチュエータにハプティック効果を再生させるために、表現されたハプティック効果内に含まれるハプティックデータを基本効果レンダリングエンジン1660にモータまたはアクチュエータまで送信させる、通信インターフェースである。
図17は、本発明の実施形態に係る、コントローラのための例示的な指向性モデルを示す。実施形態によれば、コントローラは鳴動モータ1710および1720、ならびにターゲットモータ1730および1740を含み、ターゲットモータ1730および1740は、コントローラのトリガに各々動作可能に結合されている。鳴動モータ1710および1720は、補完的な振動範囲を有することができる。さらに、ターゲットモータ1730および1740は、より空間的に隔離された高周波振動を生成できる。左右空間化ハプティック効果のために鳴動モータ1710および1720を使用することで非対称振動経験(すなわち、ほとんどのユーザにとってあまり空間的に分離されていない異なる周波数成分)を提供することは理解され得る。このためハプティック効果定義は、左前、右前、および無指向性チャネルを含むことができる。さらに、前後指向性は、鳴動モータ1710および1720からターゲットモータ1730および1740まで振動を推移させることによって強化されることができる。このため鳴動モータ1710および1720は、無指向性低周波ハプティック効果のために使用されることができる。鳴動モータ1710および1720はまた、前後指向性のために任意に使用されることもできる。さらに、ターゲットモータ1730および1740は、左右指向性のために使用されることもできる。
図18は、本発明の実施形態に係る、ハプティック効果ファームウェアスタックのブロック図を示す。ハプティック効果ファームウェアスタックは、図5の周辺ファームウェア510などの、周辺機器のためのファームウェア用であってもよい。トリガハプティック効果ファームウェアスタックは、コントローラハプティックAPI1800(図18において「トリガコントローラハプティックAPI1800」とされる)を含むことができる。コントローラハプティックAPI1800は、トリガなどのコントローラのユーザ入力エレメントにおけるトリガハプティック効果などのハプティック効果をファームウェアが再生できるようにする、コンピュータ可読機能またはルーチンのセットを含む。コントローラハプティックAPI1800は、基本的な効果定義1801を含むことができる。効果定義1801は、トリガハプティック効果などの1つ以上のハプティック効果定義を含む。コントローラハプティックAPI1800はさらに、効果ライブラリコード1802を含むことができる。効果ライブラリコード1802は、効果定義1801内に記憶されたハプティック効果定義に基づいてハプティック効果をインスタンス作成することができる、コンピュータ可読命令のセットを含む。効果ライブラリコード1802は、ハプティック効果定義に基づくハプティック効果のインスタンス作成の一部として、1つ以上の効果専用パラメータを提供できる。コントローラハプティックAPI1800はさらに、指向性エンジン1803を含むことができる。指向性エンジン1803は、トリガハプティック効果などのハプティック効果がコントローラの1つ以上のターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータのためにスケーリングされるように、トリガハプティック効果定義などのハプティック効果定義を変更できる。コントローラハプティックAPI1800はさらに、エミュレータ1804を含む。エミュレータ1804は、トリガハプティック効果定義などのハプティック効果定義に基づいて、コントローラの1つ以上のモータまたはアクチュエータ(例えば4つのモータ)のために、トリガハプティック効果などのハプティック効果を表現する。コントローラハプティックAPI1800はさらに、コントローラAPI1810を使用して、表現されたハプティック効果をコントローラ1820(またはその他何らかの周辺機器)に送信する。
図19は、本発明の実施形態に係る、コントローラにおいて経験されるハプティック効果を提供するシステム(図1のシステム10など)のアーキテクチャ図を示す。システムは、アプリケーション1900(図19において「app1900」とされる)を示す。アプリケーション1900は、システム上で実行されることができる、ゲームアプリケーションなどのソフトウェアアプリケーションである。システムはさらに、ハプティック効果API1910(図19において「API1910」とされる)を含む。一実施形態において、ハプティック効果API1910は、図18のコントローラハプティックAPI1800と同一である。実施形態によれば、ハプティック効果API1910は、全てのコントローラ、ゲームパッド、またはその他の周辺機器のための単一のAPIであってもよい。このためハプティック効果API1910は、コントローラ、ゲームパッド、およびその他の周辺機器の間の差を抽出できる。さらに、ハプティック効果API1910は、1つ以上の内蔵ハプティック効果定義を含む内蔵効果ライブラリを含むことができる。内蔵ハプティック効果定義は、対応するハプティック効果の1つ以上の性質を封じ込めたデータ構造である。
あるタイプの内蔵ハプティック効果定義は、静的ハプティック効果定義1911(図19において「静的1911」とされる)である。静的ハプティック効果定義1911は、経時的に変化しない静的ハプティック効果を生成する、1つ以上の周期的またはマグニチュード掃引効果定義のセットである。例としては、自動車事故、ロケット発射装置、およびユーザインターフェース確認を含む。静的ハプティック効果定義1911は、ゲーム内のイベントに基づいて、アプリケーション1900によって直接呼び出されることができる。静的ハプティック効果定義1911によって生成する静的ハプティック効果は、トリガハプティック効果として使用されることができる。
別のタイプの内蔵ハプティック効果定義は、動的ハプティック効果定義1912(図19において「動的1912」とされる)である。動的ハプティック効果定義1912は、1つ以上のパラメータ1914を入力として受け付け、連続的に変化するハプティック効果(すなわち、動的ハプティック効果)を生成する、アルゴリズムである。例としては、エンジンの毎分回転数(RPM)、スノーボード、および爆発を含む。静的ハプティック効果定義は、ベクトル(すなわち、距離および方向)、および1つ以上のボタンまたは軸の入力位置/状態)を含むことによって、動的ハプティック効果定義に変えられることができる。動的ハプティック効果は、アプリケーション1900から渡されることができるゲーム変数に基づいてもよい。動的ハプティック効果はまた、トリガ入力などのコントローラ入力に基づいてもよい。
別のタイプの内蔵ハプティック効果定義は、直接制御ハプティック効果定義1913(図19において「直接制御1913」とされる)である。直接制御シナリオでは、直接制御ハプティック効果定義1913は、コア効果ライブラリ1920内を移動する際に直接制御ハプティック効果定義1913にほとんど処理を行わずに、出力装置への直接表現を可能にするような方法で、定義されることができる。このシナリオにおいて、直接制御ハプティック効果定義1913は、出力装置上の多数の出力アクチュエータに対応し、これらを正確にマッピングする、多数の異なるデータチャネルを含むことができる。あるいは、直接制御ハプティック効果定義1913は、出力装置上で利用可能な出力アクチュエータの数を超える多数の異なるデータチャネルを包含でき、コア効果ライブラリ1920は多数のチャネルを選択することができ、各チャネルは出力装置内の特定のアクチュエータを最もよくマッピングするように選択され、コア効果ライブラリ1920はその後、選択されたチャネルのデータをマッピングされたアクチュエータに送信できる。
システムはさらに、コア効果ライブラリ1920(図19において「コア19」とされる)を含む。コア効果ライブラリ1920は、1つ以上のハプティック効果定義1921(図19において「FX1921」とされる)を含む。ハプティック効果定義1921は、トリガハプティック効果定義1922(図19において「トリガ効果1922」とされる)を含むことができる。ハプティック効果定義の例は、爆発ハプティック効果定義、RPMハプティック効果定義、スノーボードハプティック効果定義、およびその他のハプティック効果定義を含むことができる。コア効果ライブラリはさらに、ミキサ1923(図19においてミキサ/優先順位付け1923」とされる)を含む。ミキサ1923は、1つ以上のハプティック効果定義を混ぜるかまたは優先順位を付けることができる。
システムはさらに、低レベルAPI1930を含む。低レベルAPI1930は、ハプティック効果定義に基づいてハプティック効果を再生するための命令を受信でき、命令を、コントローラ1940によって解釈されることができる低レベル命令に変換できる。低レベルAPI1930の一例はMicrosoft社によるXbox(登録商標)API2031であり、コントローラ1940の一例はMicrosoft社によるXbox(登録商標)コントローラ2041である。
図20は、本発明の実施形態に係る、空間化ハプティック効果をプレビューおよび変更するための例示的なユーザインターフェース2000を示す。システム(図1のシステム10など)は、空間化ハプティック効果プレビューおよび変更ツールとして、ユーザインターフェース2000を提供できる。実施形態によれば、ユーザインターフェース2000はオープン効果2010を含む。オープン効果2010は、選択可能なトリガハプティック効果プリセットなどの1つ以上のハプティック効果プリセットを表示できる。ユーザインターフェース2000はさらに、効果ライブラリ2020を含む。効果ライブラリ2020は、ハプティック効果ライブラリ内に含まれる、トリガハプティック効果プリセットなどの1つ以上のハプティック効果プリセットを表示できる。効果ライブラリ2020は、カテゴリごとに1つ以上のハプティック効果プリセットを表示できる。
ユーザインターフェース2100はさらに、タイムライン2030を含む。実施形態によれば、ユーザはオープン効果2010内に表示されたハプティック効果プリセットを選択でき、タイムライン2030は、選択されたハプティック効果プリセットによって表されるハプティック効果定義の図形描写を表示できる。図示される実施形態において、ハプティック効果定義は4つのチャネルを含み、各チャネルは特定の出力(例えば、(1)右トリガ用のターゲットモータまたはアクチュエータ;(2)左トリガ用のターゲットモータまたはアクチュエータ;(3)右鳴動モータまたはアクチュエータ;および(4)左鳴動モータまたはアクチュエータ)のためにマッピングされるハプティックデータを含み、各チャネルはタイムラインに沿って表示される。しかしながら、別の実施形態において、ハプティック効果定義はいくつのチャネルでも含むことができる。さらに、ユーザは、タイムライン2030内の1つ以上の表示要素と相互作用することによって、1つ以上のチャネルの選択されたハプティック効果定義を変更できる。1つ以上のチャネルのハプティック効果定義を変更することによって、対応するハプティック効果の1つ以上の性質を変更できる。
ユーザインターフェース2000はさらに、効果特性2040を含む。効果特性2040は、トリガエンジン(図5のトリガエンジン506など)によって生成されるトリガハプティック効果を視覚化することができる、編集可能視覚領域である。先に記載されたように、トリガエンジンはトリガハプティック効果定義を受信でき、コントローラのトリガの位置および/または範囲に基づいてトリガハプティック効果定義を変更できる。このように効果特性2040は、トリガの実際の位置を含む、トリガの視覚化映像を表示できる。さらに、効果特性2040は、トリガハプティック効果定義のために定義されたトリガの位置および/または範囲を表示でき、位置および/または範囲はトリガエンジンにトリガハプティック効果定義を変更させることができる。ユーザは、トリガハプティック効果定義のために定義されたトリガの位置および/または範囲を編集できる。さらに、効果特性2040はコントローラのためのトリガのリストを表示できるので、ユーザはトリガハプティック効果定義のために定義されたトリガを編集できる。さらにまた、効果特性2040はトリガハプティック効果定義のマグニチュード(または強度)を表示でき、ユーザはマグニチュード(または強度)を変更できる。
ユーザインターフェース2000はさらに、空間化2050を含む。空間化2050は、空間化エンジン(図5の空間化エンジン507など)によって元々生成されてさらに変更されたハプティック効果を視覚化することができる、編集可能視覚領域である。先に記載されたように、空間化エンジンは、ハプティック効果がコントローラの1つ以上のターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータのためにスケーリングされるように、ハプティック効果定義を変更できる。このため、空間化2050は、コントローラの視覚化映像を表示できる。空間化2050はさらに、コントローラの各ターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータにおいて経験されるトリガハプティック効果の視覚化映像を表示できる。ユーザは、コントローラの各ターゲットモータ、ターゲットアクチュエータ、鳴動モータ、または鳴動アクチュエータにおいて経験されるハプティック効果のスケーリングを編集でき、ハプティック効果の発生源のスケーリングを編集することもできる。
図21は、本発明の実施形態に係る、オーディオ信号をトリガハプティック効果に変換するための例示的なユーザインターフェース2100を示す。実施形態によれば、ハプティック効果設計は、ユーザインターフェース2100に組み込まれるオーディオ設計プロセスの一部になることができる。より具体的には、ユーザインターフェース2100内に表示されるオーディオ効果定義3〜8はハプティック効果定義に変換されることができ、ハプティック効果定義はエクスポートされることができる。
図22は、本発明の実施形態に係る、空間化ハプティック効果をプレビューするシステム(図1のシステム10など)のアーキテクチャ図を示す。システムはユーザインターフェース2200を含む。一実施形態において、ユーザインターフェース2200はQtユーザインターフェースであり、Qtは、クロスプラットフォームアプリケーションおよびユーザ・インターフェース・フレームワークである。システムはさらにアダプタ層2210を含む。システムはさらにトリガAPI層2220を含む。システムはさらにトリガファームウェア層2230を含む。
ユーザインターフェース2200はプロッタ2201を含む。プロッタ2201はユーザによって指定されたハプティック効果定義を入力として受け取り、アダプタ層2210を通じてトリガAPI層2220に、ハプティック効果定義内に含まれるハプティックデータを送信する。トリガAPI層2220は、プロッタ2201がユーザインターフェース2200内に表示するここのチャネルデータを送り返す。レンダー2202はコントローラGUI2203からの入力を受け取り、ハプティックプレーヤ・レンダー・ループを開始する。入力はアダプタ層2210を通され、これはトリガAPI層2220とのコールバック設定、およびコントローラ2214から送信されるリレーコントローラ入力2213(ボタンおよびトリガ入力など)を有する。アダプタ層2210はまた、レンダーループがユーザインターフェース2200を更新するために起動している間に、プロッタ2201と通信することもできる。コントローラGUI2203はまた、コントローラセレクタ2212を用いてコントローラ2214を選択することも可能であり、何が接続されているかを示すことができる。コントローラGUI2203はまた、トリガ起動点を設定することもできる。さらに、インポータ/エクスポータ2204は、入力オーディオファイルを受け取って、これらをハプティックファイルに変換できる。一実施形態において、オーディオファイルはWAVファイルである。さらに、アダプタ層2210は、ユーザインターフェース2200内に埋め込まれることができるか、または個別のライブラリであってもよい。アダプタ層2210が個別のライブラリであるとき、アダプタ層2210は個別のC++ライブラリであってもよい。
図23は、本発明の実施形態に係る、空間化ハプティック効果を生成するシステム(図1のシステム10など)のアーキテクチャ図を示す。システムは、ゲームアプリケーション2300(図23において「ゲーム2300」とされる)を含む。ゲームアプリケーション2300は、ソフトウェアゲーム、またはその他のタイプのソフトウェアアプリケーションに従って、コントローラ、ゲームパッド、またはその他の周辺機器によって提供された入力を管理する、コンピュータ可読命令のセットを含む。一実施形態において、ゲームアプリケーション2300はハプティック効果ライブラリ2301を含み、ハプティック効果ライブラリ2301は1つ以上のハプティック効果定義を含む。
システムはさらに、ハプティックエンジン2310を含む。ハプティックエンジン2310は、ハプティック効果の再生を実行するため、およびゲームアプリケーション2300にハプティック効果を加えるために、低レベルAPIを利用することができる、高レベルAPIである。ハプティックエンジン2310は、ハプティック効果をロード、開始、停止、および表現することができる。ハプティックエンジン2310は、ハプティック効果を解析/その情報を取得するために、ハプティック効果パーサ2320とインターフェース接続できる。ハプティックエンジン2310はさらに、効果を開始または停止してミキサバッファを変更するために、ハプティックミキサ2330とインターフェース接続できる。ハプティックエンジン2310はさらに、コントローラ、ゲームパッド、またはその他の周辺機器の装置ハンドルを取得し、これらにおけるハプティック効果を表現するために、ハプティック装置ハンドラ2350とインターフェース接続できる。
システムはさらに、ハプティック効果パーサ2320を含む。ハプティック効果パーサ2320は、メモリにハプティック効果をロードし、該ハプティック効果のフォーマットを検証し、サイズ、持続時間、およびハプティックデータなどのハプティック効果に関する情報を取得することができる、APIを含む。システムはさらに、ハプティックミキサ2330を含む。ハプティックミキサ2330は、複数のハプティック効果の再生を同時に支援する。システムはさらに、ハプティック装置ハンドラ2340を含む。ハプティック装置ハンドラ2340は、コントローラ、ゲームパッド、またはその他の周辺機器との通信を開始および管理できる。ハプティック装置ハンドラ2340は、ユニバーサル・シリアル・バス(USB)通信層とインターフェース接続して、コントローラ、ゲームパッド、またはその他の周辺機器の装置ハンドルを取得できる。ハプティック装置ハンドラ2340はさらに、ハプティック効果再生のために不可欠ないくつかの状態機械構造を初期化できる。
システムはさらに、トリガハプティックレポートハンドラ2350を含む。トリガハプティックレポートハンドラ2350は、トリガ通信プロトコルにしたがって、ハプティックデータをUSB・HIDパケット内にパッケージできる。システムはさらに、プラットフォーム補完USB・HIDライブラリ2360を含む。プラットフォーム補完USB・HIDライブラリ2360は、USB・HIDおよびBluetooth(登録商標)HIDクラスのコントローラ、ゲームパッド、またはその他の周辺機器とインターフェース接続するために、1つ以上のコンピュータ可読ルーチンを含む。システムはさらに、周辺ファームウェア2370(図23において「ゲームパッドファームウェア2370」とされる)を含む。周辺ファームウェア2370は、コントローラ、ゲームパッド、またはその他の周辺機器のためのファームウェアである。システムはさらに、周辺入力リーダ2380(図23において「ゲームパッド入力リーダ2380」とされる)を含む。周辺入力リーダ2380は、コントローラ、ゲームパッド、またはその他の周辺機器によって送信された周辺入力を受信する。周辺入力リーダ2380はさらに、周辺入力を解釈して、ゲームアプリケーション2300に周辺入力を送信する。
図24は、本発明の実施形態に係る、空間化ハプティック効果を生成するファームウェアのアーキテクチャ図を示す。ファームウェアアーキテクチャは、ファームウェアをモジュール式にでき、ハードウェア独立コンポーネントをハードウェア依存コンポーネントから分離でき、あるマイクロコンピュータユニットから別のものへの移植を容易にできる。ハードウェア独立層は、機能ポインタによってハードウェア依存層と通信できる。ハードウェア依存層は、実装テンプレートに基づいて、別のマイクロコントローラユニットに移植されることができる。全てのハードウェア依存ルーチンは、異なるポート/ボタン定義を有するハードウェアの内部観察を提供することができる基板構成ファイルと、インターフェース接続できる。
図24は、ホストソフトウェア2400(図24において「ホストSW2400」とされる)を含む。ホストソフトウェア2400は、ソフトウェアゲーム、またはその他のタイプのソフトウェアアプリケーションに従って、コントローラ、ゲームパッド、またはその他の周辺機器によって提供される入力を管理する、コンピュータ可読命令のセットを含む。ホストソフトウェア2400は、ソフトウェア空間内にあってもよい。図24はさらに、USB・HIDハンドラ2405を含む。USB・HIDハンドラ2405は、コントローラ、ゲームパッド、またはその他の周辺機器とホストソフトウェア2400との間の全ての通信のための、主要入力点であってもよい。USB・HIDハンドラ2405は、トリガ通信プロトコルにしたがって、ハプティックデータなどのデータをエンコード/デコードするための、1つ以上のコンピュータ可読機能またはルーチンを含むことができる。USB・HIDハンドラ2405はまた、USB通信を取り扱うための、全てのUSB記述子およびルーチンを記憶することもできる。USB・HIDハンドラ2405は、ファームウェア空間内にあってもよい。
図24はさらに、通信インターフェース2410を含む。通信インターフェース2410は、入ってくるパケットを解析し、適切な動作を行うためにコマンドハンドラ2415を呼び出す。図24はさらに、コマンドハンドラ2415を含む。コマンドハンドラ2415は、アクチュエータ上でのハプティック再生を支援するトリガプロトコルによって支援されるコマンドを取り扱うために、1つ以上のコンピュータ可読機能またはルーチンを含むことができる。図24はさらに、ハプティック駆動ハンドラ2420を含む。ハプティック駆動ハンドラ2420は、ハプティック再生エンジンの状態を更新でき、アクチュエータの駆動値を更新し、アクチュエータを制御する。ハプティック駆動ハンドラ2420は、機能ポインタ機構によって、ハードウェア依存性のタイマーハンドラ2435およびアクチュエータ制御2425とインターフェース接続できる。通信インターフェース2410、コマンドハンドラ2415、およびハプティック駆動ハンドラ2420は、全てファームウェア空間内にあってもよい。
図24はさらに、アクチュエータ制御2425(図24において「アクチュエータ駆動制御2425」とされる)を含む。アクチュエータ制御2425は、アクチュエータを制御して駆動値を設定できる。アクチュエータ制御2425は、パルス幅変調生成ユニットとインターフェース接続するための、およびアクチュエータ・ドライバ・チップとインターフェース接続するための、1つ以上のコンピュータ可読機能またはルーチンを含むことができる。図24はさらに、コントローラ入力リーダ2430(図24において「ゲームパッド入力リーダ2430」とされる)を含む。コントローラ入力リーダ2430は、コントローラ、ゲームパッド、またはその他の周辺機器の異なる入力の状態を取得するため、入力をパッケージするため、およびホストソフトウェア2400にさらに送信されるために入力を通信インターフェース2410に送信するため、プラットフォーム依存性の入力リーダ2440とインターフェース接続できる。図24はさらに、タイマーハンドラ2435を含む。タイマーハンドラ2435は、アクチュエータの駆動値を更新するルーチンを呼び出すために周期割り込みを生成する役割を担うタイマーを制御することができる、ハードウェア依存層である。図24はさらに、入力リーダ2440を含む。入力リーダ2440は、全てのポテンショメータの状態、およびコントローラ、ゲームパッド、またはその他の周辺機器のデジタル入力を取得することができる、ハードウェア依存層である。図24はさらに、周辺およびインターフェースドライバ2450を含む。周辺およびインターフェースドライバ2450は、通信インターフェースおよびハードウェア周辺機器を制御するための、1つ以上のコンピュータ可読機能またはルーチンを含むことができる。アクチュエータ制御2425、コントローラ入力リーダ2430、タイマーハンドラ2435、入力リーダ2440、および周辺およびインターフェースドライバ2450は、全てファームウェア空間内にあってもよい。
図24はさらに、マイクロコントローラユニット2460を含み、これはコンピュータ処理ユニット2461、USB2462、割り込みコントローラ2463、タイマー周辺機器2464、およびその他の周辺機器2465などのコンポーネントを含むことができる。これらのコンポーネントの機能は、当業者にとって周知である。図26はさらに、コントローラハードウェア2470(図24において「ゲームパッドハードウェア2470」とされる)を含む。コントローラハードウェア2470の機能もまた、当業者にとって周知である。マイクロコントローラユニット2460、およびコントローラハードウェア2470は、全てファームウェア空間内にあってもよい。さらに、通信インターフェース2410、コマンドハンドラ2415、ハプティック駆動ハンドラ2425、およびコントローラ入力リーダ2430は全てハードウェア独立コンポーネントであってもよく、その一方でUSB・HIDハンドラ2405、アクチュエータ制御2425、タイマーハンドラ2435、入力リーダ2440、周辺およびインターフェースドライバ2450、マイクロコントローラユニット2460、およびコントローラハードウェア2470は全てハードウェア依存コンポーネントであってもよい。
一実施形態において、コントローラ、ゲームパッド、またはその他の周辺機器は、ハプティックデータを伝達するため、および個々のモータまたはアクチュエータを駆動するための、カスタマイズされたプロトコルを有することができる。したがって、オーディオオーサリングコンポーネントからオーディオ効果定義として作成されたハプティック効果を含むオーディオファイルを受信し、オーディオファイル内に含まれるオーディオデータをコントローラ、ゲームパッド、またはその他の周辺機器に送信する、オーディオドライバが提供されてもよい。一実施形態において、オーディオオーサリングコンポーネントは、Avid Technology,Inc.による「Pro Tools(登録商標)」製品であってもよい。オーディオドライバは、起動プロセスの間にロードされることができる。オーディオドライバは、起動プロセスの間にロードされることができる。オーディオドライバは、コントローラ、ゲームパッド、またはその他の周辺機器内の全てのモータまたはアクチュエータの使用のためのハプティック効果定義を可能にするため、必要な数のオーディオチャネルを曝すことができる。オーディオドライバはさらにユーザ空間内で作業でき、全てのユーザ空間オーディオ編集/再生アプリケーションにアクセス可能であってもよい。オーディオドライバはさらに、オーディオオーサリングコンポーネントがコントローラ、ゲームパッド、またはその他の周辺機器に送信したオーディオデータを読み取ることができる。オーディオドライバはさらに、提示されているオーディオデータに対して必要な処理を実行でき、オーディオデータをアクチュエータ駆動値などのハプティックデータに変換できる。オーディオドライバはさらに、通信インターフェースを通じて、ハプティックデータをコントローラ、ゲームパッド、またはその他の周辺機器に通信できる。
実施形態によれば、コントローラ、ゲームパッド、またはその他の周辺機器は、4つのアクチュエータを含むことができる。2つのアクチュエータは、トリガ上のハプティックフィードバックに影響を及ぼすトリガアクチュエータとして使用されることができる。トリガアクチュエータは双方向性であってもよい。プッシュおよびプルの2種類の方向イベントが、トリガアクチュエータによって起こり得る。プッシュおよびプル方向は、トリガ上のユーザの指に対するものであってもよい。他の2つのアクチュエータは、コントローラ、ゲームパッド、またはその他の周辺機器の中の一般ハプティックフィードバックまたは鳴動フィードバックに影響を及ぼす鳴動アクチュエータとして、使用されることができる。鳴動アクチュエータは、一方向性であってもよい。より具体的には、鳴動アクチュエータは、時計回り方向または反時計回り方向のいずれかに回転できるが、しかし両方向には回転できない。モーションの方向は、コントローラ、および/またはコントローラの駆動エレクトロニクスに依存できる。
この実施形態において、オーディオドライバのために以下のチャネルレイアウトが選択されることができる。
一実施形態において、16ビットPCMのために選択されたオーディオフォーマットは、44.1KHzであってもよい。オーディオドライバは、オーディオオーサリングコンポーネントからオーディオデータを受信し、オーディオデータをハプティックデータ(例えば駆動値)に変換し、ハプティックデータをコントローラに相応に通信できる。
図25は、本発明の実施形態に係る、例示的なオーディオアーキテクチャを示す。オーディオアーキテクチャはアプリケーションレベルサービス2500を含む。アプリケーションレベルサービス2500は:オーディオキューサービス;オーディオユニット;システムオーディオ;オーディオファイル・ストリーム・サービス;オーディオファイル、変換器、およびコーデックサービス;OpenAL;音楽シーケンスサービス;またはコア・オーディオ・クロックなどのサービスを含むことができる。アプリケーションレベルサービス2500は、ハードウェア抽出層(HAL)2510と通信する。HAL2510の一例は、コア楽器デジタルインターフェース(MIDI)2511である。同様に、HAL2510は入出力(I/O)キット2520、ドライバ2530、およびハードウェア2540と通信する。I/Oキット2520、ドライバ2530、およびハードウェア2540は、カーネル空間内に存在する。アプリケーションレベルサービスがハードウェア2540に送信しようとするオーディオデータを受信するために、オーディオドライバはHAL2510へのプラグインを必要とする可能性があり、ここでプラグインはオーディオデータを受信してハードウェア2540にアクセスできる。オーディオドライバのプラグインは、アプリケーションレベルサービス2500からオーディオデータをリアルタイムで、またはほぼリアルタイムで受信でき、ハプティックデータ(例えば駆動値)にオーディオデータを変換してオーディオデータの5ミリ秒(ms)部分に対してデシメーションを実行できる。例示的なオーディオドライバはさらに、図26と併せて以下により詳細に記載される。
図26は、本発明の実施形態に係る、オーディオ効果をハプティック効果に変換する例示的なオーディオドライバ2600(図26において「ハプティックトリガドライバ2600」とされる)を示す。オーディオドライバ2600は、1つ以上のアプリケーションからオーディオデータ2605を受信する。オーディオデータは、4チャネルオーディオストリームまたは6チャネルオーディオストリームなどのインターリーブ多チャネルオーディオストリームであってもよい。その後、スプリッタ2615は、様々なチャネルのオーディオデータをそれぞれのチャネルバッファに分離する。さらに、オーディオハプティックデータ変換器2625は、各チャネルバッファのオーディオデータをハプティックデータに変換する。より具体的には、一実施形態において、オーディオハプティックデータ変換器2625は、オーディオデータの一部(例えば、5msのオーディオデータ)上のチャネルバッファでピーク検出アルゴリズムを実行し、各チャネルの間引き値アレイ内に値を追加する。オーディオハプティックデータ変換器2625はその後、以下の式に基づいて、個々のアクチュエータの駆動値を計算する:
トリガの駆動値:(プッシュチャネル間引き値−プルチャネル間引き値)→これを[0,255]にスケーリングする
鳴動の駆動値:(間引き値)→これを[128,255]にスケーリングする
続いて、トリガ・プロトコル・パケット・マネージャ2635は、全てのアクチュエータ(例えば4つ全てのアクチュエータ)の駆動値を取得し、トリガ通信プロトコルにしたがって、USB・HIDパケットなどのデータパケットとして駆動値をパッケージする。さらに、XPCハンドラ2645は、トリガ・プロトコル・パケット・マネージャ2635からデータパケットを受信し、データパケットをXPCサービス2610に送信するが、これはバックグラウンドサービスである。2655において、XPCサービス2610はデータパケットを受信し、2665においてUSBインターフェースを通じてデータパケットを2665にコントローラ2620(図26において「ハプティックトリガゲームパッド2620」とされる)に送信する。
図27は、本発明の実施形態に係る、APIまたはライブラリ中に存在する例示的な空間化エンジンを示す。空間化エンジンは、図1のシステム10などのシステム上に実装される。図示される実施形態において、システムは以下のコンポーネントを含む:装置2700(図27において「ゲームコンソール、スマートフォン、タブレット、またはコンピュータ(例えば)2700」とされる)、およびコントローラ2710(図27において「ゲームパッド2710」とされる)。装置2700は、パーソナルコンピュータ、タブレット、スマートフォン、またはコンソール(例えば、ビデオ・ゲーム・コンソール)など、いずれのタイプのコンピュータ装置であってもよい。コントローラ2710は、装置2700に動作可能に接続された周辺機器の一例である。コントローラ2710はビデオ・ゲーム・コントローラであってもよい。一実施形態において、コントローラ2710は図1のコントローラ30、図2、図3、および図4のコントローラ100、ならびに図5のコントローラ520と同一であってもよい。
装置2700は効果ライブラリ2701を含み、効果ライブラリ2701は1つ以上のハプティック効果定義を含むことができる。実施形態において、これらのハプティック効果定義は、空間化エンジンによって変更されていないハプティック効果定義なので、非空間化ハプティック効果定義として認識されることができる。装置2700はさらにゲーム2702を含み、ゲーム2702はシステム上で実行されることができる、ゲームアプリケーションなどのソフトウェアアプリケーションである。実施形態によれば、ゲーム2702は1つ以上の空間化パラメータを生成でき、1つ以上の空間化パラメータは、効果ライブラリ2701内に記憶されたハプティック効果定義によって定義されたハプティック効果の位置、速度、方向および/または流れを定義できる。
装置2700はさらに空間化エンジン2703(図27において「ハプティック空間化エンジン2703」とされる)を含み、ここで効果ライブラリ2701は1つ以上の非空間化ハプティック効果定義を空間化エンジン2703に送信でき、ゲーム2702は1つ以上の空間化パラメータを空間化エンジン2703に送信できる。空間化エンジン2703は、1つ以上の非空間化ハプティック効果定義を受信でき、1つ以上の空間化パラメータに基づいて1つ以上の非空間化ハプティック効果定義を変更できる。実施形態によれば、空間化エンジン2703は、1つ以上のハプティック効果がコントローラ2710の1つ以上のアクチュエータ2711のためにスケーリングまたは減衰されるように、1つ以上の非空間化ハプティック効果定義を変更でき、1つ以上の変更されたハプティック効果定義は、空間化ハプティック効果定義として認識されることができる。言い換えると、空間化エンジン2703は、アクチュエータ2711の各アクチュエータに送信されるハプティック効果定義を変更でき、このためハプティック効果の位置、速度、方向および/または流れの感覚を伝達するために、アクチュエータ2711の各アクチュエータにおいて経験されるハプティック効果を変更できる。空間化エンジン2703は引き続き1つ以上の空間化ハプティック効果定義をコントローラ2710に送信できる。コントローラ2710はその後、各空間化ハプティック効果定義をアクチュエータ2711の各アクチュエータに送信でき、ここで各アクチュエータは空間化ハプティック効果を生成できる。
図28は、本発明の実施形態に係る、コントローラ中に存在する例示的な空間化エンジンを示す。空間化エンジンは、図1のシステム10などのシステム上に実装される。図示される実施形態において、システムは以下のコンポーネントを含む:装置2800(図28において「ゲームコンソール、スマートフォン、タブレット、またはコンピュータ(例えば)2800」とされる)、およびコントローラ2810(図28において「ゲームパッド2810」とされる)。装置2800は、パーソナルコンピュータ、タブレット、スマートフォン、またはコンソール(例えば、ビデオ・ゲーム・コンソール)など、いずれのタイプのコンピュータ装置であってもよい。コントローラ2810は、装置2800に動作可能に接続された周辺機器の一例である。コントローラ2810はビデオ・ゲーム・コントローラであってもよい。一実施形態において、コントローラ2810は図1のコントローラ30、図2、図3、および図4のコントローラ100、ならびに図5のコントローラ520と同一であってもよい。
装置2800は、効果ライブラリ2801を含み、効果ライブラリ2801は、非空間化ハプティック効果定義として認識される1つ以上のハプティック効果定義を含むことができる。装置2800は、ゲーム2802をさらに含み、ゲーム2802は、システム上で実行されることができる、ゲームアプリケーションなどのソフトウェアアプリケーションである。実施形態によれば、ゲーム2802は1つ以上の空間化パラメータを生成でき、1つ以上の空間化パラメータは、効果ライブラリ2801内に記憶されたハプティック効果定義によって定義されたハプティック効果の位置、速度、方向および/または流れを定義できる。
コントローラ2810は空間化エンジン2811(図28において「ハプティック空間化エンジン2811」とされる)を含み、ここで効果ライブラリ2801は1つ以上の非空間化ハプティック効果定義を空間化エンジン2811に送信でき、ゲーム2802は1つ以上の空間化パラメータを空間化エンジン2811に送信できる。空間化エンジン2811は、1つ以上の非空間化ハプティック効果定義を受信でき、1つ以上の空間化パラメータに基づいて1つ以上の非空間化ハプティック効果定義を変更することができ、1つ以上の変更されたハプティック効果定義は、空間化ハプティック効果定義として認識される。空間化エンジン2811は引き続き各空間化ハプティック効果定義をアクチュエータ2812の各アクチュエータに送信でき、ここで各アクチュエータは空間化ハプティック効果を生成できる。
図29は、本発明の実施形態に係る、例示的な空間化ハプティック効果2900を示す。空間化ハプティック効果2900は、空間化ハプティック効果定義に基づいて、異なるが一定の複数の減衰において周辺機器の複数の鳴動アクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果2900はハプティック効果の場所を周辺機器のユーザに伝達するのに必ずしも有効とは限らないものの、空間化ハプティック効果2900はハプティック効果の周波数を効果的に伝達できる。先に記載されたように、鳴動アクチュエータは、周辺機器の筐体または別の部分に動作可能に結合されたアクチュエータである。
図30は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果3000を示す。空間化ハプティック効果3000は、空間化ハプティック効果定義に基づいて、異なるが一定の複数の減衰において周辺機器の複数の鳴動アクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3000は、ハプティック効果の場所を効果的に伝達できるが、しかし左のみのトリガの場合、または右のみのトリガの場合など、単一トリガの場合にのみ、ハプティック効果の場所を効果的に伝達するだろう。先に記載されたように、トリガアクチュエータは、周辺機器のトリガに動作可能に結合されたアクチュエータである。特定の実施形態において、トリガアクチュエータは、ユーザ入力エレメントに動作可能に結合されたターゲットアクチュエータに置き換えられることができる。
図31は、本発明の実施形態に係る、例示的な空間化ハプティック効果3100を示す。空間化ハプティック効果3100は、空間化ハプティック効果定義に基づいて、逆勾配減衰(inversely ramping attenuation)によって周辺機器の複数の鳴動アクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3100は、左−右動作(left−to−right movement)または右−左動作(right−to−left movement)などの動作を、効果的に伝達できる。
図32は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果3200を示す。空間化ハプティック効果3200は、空間化ハプティック効果定義に基づいて、逆勾配減衰によって周辺機器の複数のトリガアクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3200は、左−右動作または右−左動作などの動作を効果的に伝達できる。特定の実施形態において、トリガアクチュエータは、ユーザ入力エレメントに動作可能に結合されたアクチュエータに置き換えられることができる。
図33は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果3300を示す。空間化ハプティック効果3300は、空間化ハプティック効果定義に基づいて、鳴動アクチュエータからトリガアクチュエータへ、逆勾配減衰によって周辺機器の複数の鳴動およびトリガアクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3300は、後−前動作(back−to−front movement)などの動作を効果的に伝達できる。特定の実施形態において、トリガアクチュエータは、ユーザ入力エレメントに動作可能に結合されたターゲットアクチュエータに置き換えられることができる。
図34は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果3400を示す。空間化ハプティック効果3400は、空間化ハプティック効果定義に基づいてトリガアクチュエータから鳴動アクチュエータへ、逆勾配減衰によって周辺機器の複数のトリガおよび鳴動アクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3400は、前−後動作(front−to−back movement)などの動作を効果的に伝達できる。特定の実施形態において、トリガアクチュエータは、ユーザ入力エレメントに動作可能に結合されたターゲットアクチュエータに置き換えられることができる。
図35は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果3500を示す。空間化ハプティック効果3500は、空間化ハプティック効果定義に基づいて、時計回りまたは反時計回りに、逆勾配減衰によって周辺機器の複数の鳴動および/またはトリガアクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3500は、回転動作などの動作を効果的に伝達できる。特定の実施形態において、トリガアクチュエータは、ユーザ入力エレメントに動作可能に結合されたターゲットアクチュエータに置き換えられることができる。
図36は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果3600を示す。空間化ハプティック効果3600は、空間化ハプティック効果定義に基づいて、わずかな遅延(例えば、およそ50〜100ms)を伴って周辺機器の複数の鳴動アクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3600は、左−右動作または右−左動作などの短期効果動作を効果的に伝達できる。
図37は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果3700を示す。空間化ハプティック効果3700は、空間化ハプティック効果定義に基づいて、わずかな遅延(例えば、およそ50〜100ms)を伴って周辺機器の複数のトリガアクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3700は、左−右動作または右−左動作などの短期効果動作を効果的に伝達できる。特定の実施形態において、トリガアクチュエータは、ユーザ入力エレメントに動作可能に結合されたターゲットアクチュエータに置き換えられることができる。
図38は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果3800を示す。空間化ハプティック効果3800は、空間化ハプティック効果定義に基づいて、鳴動アクチュエータからトリガアクチュエータへ、わずかな遅延(例えば、およそ50〜100ms)を伴って周辺機器の複数の鳴動およびトリガアクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3800は、後−前動作などの短期効果動作を効果的に伝達できる。特定の実施形態において、トリガアクチュエータは、ユーザ入力エレメントに動作可能に結合されたターゲットアクチュエータに置き換えられることができる。
図39は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果3900を示す。空間化ハプティック効果3900は、空間化ハプティック効果定義に基づいて、トリガアクチュエータから鳴動アクチュエータへ、わずかな遅延(例えば、およそ50〜100ms)を伴って周辺機器の複数のトリガおよび鳴動アクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果3800は、前−後動作などの短期効果動作を効果的に伝達できる。特定の実施形態において、トリガアクチュエータは、ユーザ入力エレメントに動作可能に結合されたターゲットアクチュエータに置き換えられることができる。
図40は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果4000を示す。空間化ハプティック効果4000は、空間化ハプティック効果定義に基づいて、時計回りまたは反時計回りに、わずかな遅延(例えば、およそ50〜100ms)を伴って周辺機器の複数の鳴動およびトリガアクチュエータにおけるハプティック効果を出力することを伴う。空間化ハプティック効果400は、回転動作などの動作を効果的に伝達できる。特定の実施形態において、トリガアクチュエータは、ユーザ入力エレメントに動作可能に結合されたターゲットアクチュエータに置き換えられることができる。
このため、一実施形態において、ハプティック効果の場所は、空間化ハプティック効果定義に基づいて、左トリガのみ、または右トリガのみのハプティック効果を再生することによって、伝達されることができる。さらに、別の実施形態において、短期効果(例えばおよそ50〜200ms)動作は、空間化ハプティック効果定義に基づいて、わずかな遅延(例えば、およそ50〜100ms)を伴って異なるアクチュエータ上のハプティック効果を再生することによって、伝達されることができる。さらにまた、別の実施形態において、長期効果(例えば、およそ200ms超)動作は、空間化ハプティック効果定義に基づいて、異なるアクチュエータ上でのハプティック効果を逆に傾斜させることによって、伝達されることができる。さらに、上記実施形態において、同一のハプティック効果が、空間化ハプティック効果定義に基づいて異なるアクチュエータにおいて再生される。しかしながら、代替実施形態において、異なるハプティック効果が、空間化ハプティック効果定義に基づいて異なるアクチュエータにおいて実現されることもできる。
一実施形態において、空間化ハプティック効果の距離は:(1)減衰;(2)「拡散」または「散乱」;および/または(3)タイミングを用いて、空間化エンジンによって伝達されることができる。減衰に関して、空間化ハプティック効果定義は、ハプティック効果が伝わる次元数(例えば一次元、二次元、または三次元)に応じて、異なるハプティック減衰特性を定義できる。例えば、レールまたはロッド内を伝わるハプティック効果は、一次元を伝わることができる。別の例としては、床またはテーブルを伝わるハプティック効果は、二次元を伝わることができる。別の例として、地中を伝わるハプティック効果は、三次元を伝わることができる。さらに、異なる周波数のハプティック効果は異なる減衰の仕方ができる。例えば、高い周波数の方がより迅速に減衰できる。「拡散」または「散乱」については、ハプティック効果は、複数の次元にわたって消散するハプティック効果のマグニチュード、または強度のため、距離とともに低下する可能性があり、マグニチュードの減少は周波数依存性であってもよい。空間化エンジンは、ハプティック効果を低下させるために、先の力価のウィンドウを混ぜることができる。ウィンドウサイズは、ハプティック効果の距離に依存してもよい。タイミングについては、固形媒体(例えば地面)の中を伝わる振動触知ハプティック効果であるハプティック効果は、空気中の音よりも速く伝わることができる。例えば、ゲーム内の遠くの爆発は、爆発音が聞かれる前に、周辺機器内の振動として感じられてもよい。
空間化ハプティック効果の減衰は、ここでより詳細に記載される。実施形態によればハプティック効果は、ゲームアプリケーションまたは別のタイプのソフトウェアアプリケーションの中の位置を有することができる。ハプティック効果の位置は絶対位置であってもよく、周辺機器のユーザもまた、ゲームアプリケーションまたは別のタイプのソフトウェアアプリケーションの中の位置を有することができる。あるいは、ハプティック効果の位置は相対位置であってもよく、ハプティック効果の位置はゲームアプリケーションまたは別のタイプのソフトウェアアプリケーションの中の周辺機器のユーザの位置に対するものである。さらに、ハプティック効果はゲームアプリケーションまたは別のタイプのソフトウェアアプリケーションの中の別の物体または表面によって「吸収」されることができるので、ハプティック効果はある距離にわたってマグニチュードまたは強度を失う可能性がある。さらに、ハプティック効果もまた、「拡散」または「散乱」のため減衰できる。このようなハプティック効果の例は:爆発;足音;群衆の殺到;遠くを走る重量車両(例えば列車、バス、トラック、戦車);遠くの交通;間接的衝突;または一般的な間接的影響を含むことができる。
一実施形態において、ハプティック効果の減衰は一次元であってもよい。ハプティック効果の一次元減衰には、「拡散」または「散乱」はない。ハプティック効果は、以下の式に基づいて、吸収のため単位距離ごとに特定量のマグニチュード、または強度を失う可能性がある。
ここで「y」はハプティック効果の減衰したマグニチュード、または強度であり;「x」はハプティック効果の元々の(すなわち減衰していない)マグニチュード、または強度であり;「F」は基準吸収距離にわたる吸収係数であり(すなわち、ハプティック効果は基準吸収距離にわたって1/Fだけ減衰する);「r」はハプティック効果が伝わる距離であり;「D」は基準吸収距離である。
ハプティック効果の一次元減衰の例は:大きく広い地下源からの振動触知ハプティック効果;あるいはレールまたはロッドを通じて伝わるハプティック効果を含むことができる。
別の実施形態において、ハプティック効果の減衰は二次元であってもよい。ハプティック効果の二次元減衰には、二次元内のハプティック効果「拡散」または「散乱」のマグニチュード、または強度のため、一次元減衰と比較して、付加的な減衰がある。ハプティック効果は、以下の式に基づいて、吸収および拡散のため単位距離ごとに特定量のマグニチュード、または強度を失う可能性がある。
ここで「y」はハプティック効果の減衰したマグニチュード、または強度であり;「x」はハプティック効果の元々の(すなわち減衰していない)マグニチュード、または強度であり;「F」は基準吸収距離にわたる吸収係数であり(すなわち、ハプティック効果は基準吸収距離にわたって1/Fだけ減衰する);「r」はハプティック効果が伝わる距離であり;「D」は基準吸収距離である。
ハプティック効果の二次元減衰の例は:床またはテーブルを伝わるハプティック効果;ハイウェイ交通、通過列車、運搬、群衆の殺到、またはその他何らかの長い地表源に起因する、振動触知ハプティック効果;または長く狭い地下源からの振動触知ハプティック効果を含むことができる。
別の実施形態において、ハプティック効果の減衰は三次元であってもよい。ハプティック効果の三次元減衰には、三次元内のハプティック効果「拡散」または「散乱」のマグニチュード、または強度のため、二次元減衰と比較して、付加的な減衰がある。ハプティック効果は、以下の式に基づいて、吸収および拡散のため単位距離ごとに特定量のマグニチュード、または強度を失う可能性がある。
ここで「y」はハプティック効果の減衰したマグニチュード、または強度であり;「x」はハプティック効果の元々の(すなわち減衰していない)マグニチュード、または強度であり;「F」は基準吸収距離にわたる吸収係数であり(すなわち、ハプティック効果は基準吸収距離にわたって1/Fだけ減衰する);「r」はハプティック効果が伝わる距離であり;「D」は基準吸収距離であり;「R」はハプティック効果の半径である。
ハプティック効果の三次元減衰の一例は、小さいソース(例えば、点)から地面を伝わるハプティック効果を含む。
実施形態によれば、全体的な減衰は、以下の式を用いて表されることができる。
ここで「y」はハプティック効果の減衰したマグニチュード、または強度であり;「x」はハプティック効果の元々の(すなわち減衰していない)マグニチュード、または強度であり;「F」は基準吸収距離にわたる吸収係数であり(すなわち、ハプティック効果は基準吸収距離にわたって1/Fだけ減衰する);「r」はハプティック効果が伝わる距離であり;「D」は基準吸収距離であり;「R」はハプティック効果の半径であり;「P」は拡散指数である(例えば、一次元拡散では0、二次元拡散では1、三次元拡散では2など)。
ここで空間化ハプティック効果の流れがより詳細に記載される。実施形態によれば、空間化ハプティック効果は速度(すなわち、速さおよび方向)を有することができる。空間化ハプティック効果の速度は、「流れ」として認識されることができる。一実施形態において、全体的なハプティック効果が生成されることができ、ハプティック効果は複数のハプティック効果コンポーネントを含み、各ハプティック効果コンポーネントは、周辺機器のための複数のアクチュエータのうちの1つのアクチュエータに対応する。各ハプティック効果コンポーネントは、全体的なハプティック効果を生成するために各アクチュエータによって再生されることができ、全体的なハプティック効果は「流れ」を伝達する。空間化ハプティック効果の一例は「風を切って飛ぶ」ハプティック効果であり、これは1セットのアクチュエータから別のセットへと移動するハプティック効果である。風を切って飛ぶハプティック効果の例は、近くを通過する車両、風を切って近くを飛ぶ弾丸、近くを通過する一般的な物体を含むことができる。空間化ハプティック効果のもう1つの例は、「跳ね返る」ハプティック効果であり、これは2セットのアクチュエータの間を繰り返し跳ね返るハプティック効果である。跳ね返るハプティック効果の例は、呪文の蓄積、またはエネルギーの蓄積を含むことができる。空間化ハプティック効果のさらに別の例は、「回転」ハプティック効果であり、これはコントローラ、ゲームパッド、またはその他の周辺機器の中で、またはゲーム内でユーザの周りを、時計回りまたは反時計回りに回転するハプティック効果である。回転ハプティック効果の例は、呪文の蓄積、エネルギーの蓄積、「spin−o−rama」、または渦を含むことができる。
図41は、本発明の別の実施形態に係る、例示的な空間化ハプティック効果4100を示す。空間化ハプティック効果4100は、空間化ハプティック効果定義に基づいて、周辺機器の複数のアクチュエータにおける異なるハプティック効果コンポーネントに対応する異なるハプティック効果を出力することを伴い、ここであるアクチュエータにおけるハプティック効果コンポーネントに対応するハプティック効果の再生は遅延されることができる。さらに、重複するハプティック効果コンポーネントに対応するハプティック効果の部分は、それぞれのアクチュエータにおいて傾斜していてもよい。速度は、以下の式に基づいて遅延を決定できる。
実施形態によれば、空間化ハプティック効果は方向であってもよい。方向は、空間化ハプティック効果を生成するためにどのアクチュエータを使用するかを決定できる。
図42は、本発明の実施形態に係る、ハプティック効果4200の方向に基づくアクチュエータ間のハプティック効果4200の分配の一例を示す。実施形態によれば、ハプティック効果4200は、空間化ハプティック効果定義に基づいて複数のアクチュエータ(例えば、左トリガアクチュエータ;右トリガアクチュエータ;左(大)鳴動アクチュエータ;および右(小)アクチュエータ)にわたって分配されることができ、ここで空間化ハプティック効果定義は、ハプティック効果4200の方向を定義できる。例えば、空間化ハプティック効果定義が右方向、つまり「東」方向を定義する場合、ハプティック効果4200は右(小)鳴動アクチュエータおよび右トリガアクチュエータにおいて再生されることができる。空間化ハプティック効果定義が右上方向、つまり「北東」方向を定義する場合、ハプティック効果4200は右トリガアクチュエータのみにおいて再生されることができる。空間化ハプティック効果定義が上方向、つまり「北」方向を定義する場合、ハプティック効果4200は左トリガアクチュエータおよび右トリガアクチュエータにおいて再生されることができる。空間化ハプティック効果定義が左上方向、つまり「北西」方向を定義する場合、ハプティック効果4200は左トリガアクチュエータのみにおいて再生されることができる。空間化ハプティック効果定義が左方向、つまり「西」方向を定義する場合、ハプティック効果4200は左(大)鳴動アクチュエータおよび左トリガアクチュエータにおいて再生されることができる。空間化ハプティック効果定義が左下方向、つまり「南西」方向を定義する場合、ハプティック効果4200は左(大)鳴動アクチュエータのみにおいて再生されることができる。空間化ハプティック効果定義が下方向、つまり「南」方向を定義する場合、ハプティック効果4200は左(大)鳴動アクチュエータおよび右(小)鳴動アクチュエータにおいて再生されることができる。空間化ハプティック効果定義が右下方向、つまり「南東」方向を定義する場合、ハプティック効果4200は右(小)鳴動アクチュエータのみにおいて再生されることができる。さらに、空間化ハプティック効果定義が上記8つの方向のうちの1つの間の方向を定義する場合、ハプティック効果4200は2つのアクチュエータにおいて再生されることができるが、しかしハプティック効果4200のマグニチュードはアクチュエータのうちの1つにおいて低下する。たとえは、空間化ハプティック効果定義が上方向と左上方向との間の方向、すなわち「北北西方向」を定義する場合、ハプティック効果4200は左トリガアクチュエータおよび右トリガアクチュエータにおいて再生されることができ、ハプティック効果4200のマグニチュードは右トリガアクチュエータにおいて低下する。
さらに、一実施形態において、空間化エンジンは、実行時間に左トリガアクチュエータまたは右トリガアクチュエータにおける空間化ハプティック効果をターゲットとできる。このような空間化ハプティック効果の例は、レースゲームにおいて左または右鳴動ストリップを経験すること;またはボクシングゲームにおいて左パンチまたは右パンチを経験することを含む。
図43は、本発明の実施形態に係る、ハプティック空間化モジュール(図1のハプティック空間化モジュール16など)の機能性のフロー図を示す。一実施形態において、図43の機能は、メモリまたはその他のコンピュータ可読または有形媒体に記憶されたソフトウェアによって実装され、プロセッサによって実行される。別の実施形態において、機能性は、ハードウェアによって(例えば、特定用途向け集積回路(ASIC)、プログラマブル・ゲート・アレイ(PGA)、フィールド・プログラマブル・ゲート・アレイ(FPGA)などの使用を通じて)、またはハードウェアとソフトウェアとのいずれかの組み合わせによって、実行されてもよい。特定の実施形態において、機能性のうちのいくつかは省略されることができる。
フローが開始して4310に進む。4310において、ハプティック効果定義が受信される。ハプティック効果定義はハプティックデータを含む。フローはその後4320に進む。
4320において、空間化データが受信される。空間化データは、1つ以上の空間化パラメータを含むことができる。1つ以上の空間化パラメータは、ハプティック効果の位置、ハプティック効果の距離、ハプティック効果の速度、ハプティック効果の方向、またはハプティック効果の流れのうちの少なくとも1つを含むことができる。フローはその後4330に進む。
4330において、ハプティック効果定義は、受信した空間化データに基づいて変更される。特定の実施形態において、ハプティック効果定義は、1つ以上のハプティック効果定義コンポーネントに分割されることができる。これらの実施形態のうちのいくつかにおいて、以下のうちの少なくとも1つが、空間化データに基づいてスケーリングまたは減衰されることができる:少なくとも1つのハプティック効果定義コンポーネントのハプティックデータのマグニチュード、少なくとも1つのハプティック効果定義コンポーネントのハプティックデータの周波数、または少なくとも1つのハプティック効果定義コンポーネントのハプティック効果データの持続時間。別の実施形態において、少なくとも1つのハプティック出力装置は、空間化データに基づいて少なくとも1つのハプティック効果の再生を遅延させられることができる。特定の実施形態において、1つ以上のハプティック効果定義コンポーネントは異なっていてもよい。別の実施形態において、1つ以上のハプティック効果定義コンポーネントは同一であってもよい。特定の実施形態において、周辺機器のモーション、位置の変化、または配向の変化が検出可能であり、空間化データは検出されたモーションに基づいて変更可能であり、変更されたハプティック効果定義は変更された空間化データに基づいて引き続き変更できる。フローはその後4340に進む。
4340において、ハプティック命令および変更されたハプティック効果定義は周辺機器に送信される。特定の実施形態において、1つ以上のハプティック効果定義コンポーネントもまた周辺機器に送信されることができる。特定の実施形態において、周辺機器はコントローラまたはゲームパッドであってもよい。変更されたハプティック効果定義が引き続き変更される実施形態において、引き続き変更されたハプティック効果定義は、周辺機器に送信されることができる。フローはその後4350に進む。
4350において、ハプティック命令は1つ以上のハプティック出力装置に、周辺機器において、変更されたハプティック効果定義に基づいて1つ以上のハプティック効果を生成させる。特定の実施形態において、ハプティック命令は1つ以上のハプティック出力装置に、1つ以上のハプティック効果定義コンポーネントに基づいて1つ以上のハプティック効果を生成させることができる。さらに、特定の実施形態において、ハプティック命令は1つ以上のハプティック出力装置に、周辺機器の1つ以上のユーザ入力エレメントにおける1つ以上のハプティック効果を生成させることができる。特定の実施形態において、少なくとも1つのユーザ入力エレメントは、デジタルボタン、アナログボタン、緩衝器、方向パッド、アナログまたはデジタルスティック、ハンドル、あるいはトリガのうちの1つであってもよい。さらに、特定の実施形態において、少なくとも1つのハプティック出力装置はアクチュエータであってもよい。変更されたハプティック効果定義が引き続き変更される実施形態において、ハプティック命令は1つ以上のハプティック出力装置に、周辺機器において引き続き変更されたハプティック効果定義に基づいて1つ以上の変更されたハプティック効果を生成させる。
特定の実施形態において、ハプティック命令は複数のアクチュエータに、変更されたハプティック効果定義に基づいて、複数の異なる減衰における1つ以上のハプティック効果を出力させることができる。別の実施形態において、ハプティック命令は複数のアクチュエータに、変更されたハプティック効果定義に基づいて逆勾配減衰によって1つ以上のハプティック効果を出力させることができる。別の実施形態において、ハプティック命令は複数の鳴動アクチュエータおよびターゲットアクチュエータに、変更されたハプティック効果定義に基づいて、鳴動アクチュエータからターゲットアクチュエータへ、逆勾配減衰によって1つ以上のハプティック効果を出力させることができる。別の実施形態において、ハプティック命令は複数の鳴動アクチュエータおよびターゲットアクチュエータに、変更されたハプティック効果定義に基づいて、ターゲットアクチュエータから鳴動アクチュエータへ、逆勾配減衰によって1つ以上のハプティック効果を出力させることができる。別の実施形態において、ハプティック命令は複数のアクチュエータに、変更されたハプティック効果定義に基づいて、遅延を伴って1つ以上のハプティック効果を出力させることができる。別の実施形態において、ハプティック命令は、複数の鳴動アクチュエータおよびトリガアクチュエータに、変更されたハプティック効果定義に基づいて、鳴動アクチュエータからターゲットアクチュエータへ、遅延を伴って1つ以上のハプティック効果を出力させることができる。別の実施形態において、ハプティック命令は複数の鳴動アクチュエータおよびトリガアクチュエータに、変更されたハプティック効果定義に基づいて、ターゲットアクチュエータから鳴動アクチュエータへ、遅延を伴って1つ以上のハプティック効果を出力させることができる。別の実施形態において、ハプティック命令は複数のアクチュエータに、変更されたハプティック効果定義に基づいて、時計回りまたは反時計回りに、遅延を伴って1つ以上のハプティック効果を出力させることができる。フローはここで終了する。
このように、一実施形態において、システムは、コントローラまたはゲームパッドなど、周辺機器において経験されるハプティック効果を生成することができる空間化ハプティック効果を提供できる。空間化ハプティック効果を生成することによって、システムは、空間化ハプティック効果が距離、指向性、および/または流れの感覚を含むように、周辺機器の各モータまたはアクチュエータにおいてスケーリングまたは遅延されることができるハプティック効果を生成できる。周辺機器において経験された空間化ハプティックフィードバック、特にトリガなどの周辺機器のユーザ入力エレメントにおいて経験された空間化ハプティックフィードバックを、システムによって実行されるゲームアプリケーションに組み込むことによって、より現実的で没入感のあるゲーム経験が提供され得る。
本明細書全体に記載された本発明の特徴、構造、および特性は、いずれか適切な方法で1つ以上の実施形態に組み込まれてもよい。例えば、「一実施形態」、「いくつかの実施形態」、「特定の実施形態」、またはその他類似の語彙の使用は、本明細書全体にわたって、実施形態に関連して記載された特定の特徴、構造、または特性が、本発明の少なくとも1つの実施形態に含まれてもよいという事実を指す。このためフレーズ「一実施形態」、「いくつかの実施形態」、「特定の実施形態」、またはその他類似の語彙の出現は、本明細書全体にわたって全て同じ群の実施形態を指すとは限らず、記載された特徴、構造、または特性はいずれか適切な方法で1つ以上の実施形態に組み込まれてもよい。
上記で論じられたような本発明は、異なる順序のステップで、および/または開示されたものとは異なる構成の要素を用いて実践されてもよいことを、当業者は容易に理解するだろう。したがって、本発明はこれらの好適な実施形態に基づいて記載されてきたものの、本発明の精神および範囲内にありながら、特定の変更、変形、および代替構造が明らかであることは、当業者にとって自明であろう。したがって、本発明の境界を決定するために、添付の請求項が参照されるべきである。

Claims (30)

  1. プロセッサによって実行されたときに、周辺機器において経験されるハプティック効果を前記プロセッサに制御させる命令を記憶する非一時的コンピュータ可読媒体であって、制御するステップは、
    ハプティックデータを有するハプティック効果定義を受信するステップと、
    前記ハプティック効果の位置、前記ハプティック効果の距離、前記ハプティック効果の速度、前記ハプティック効果の方向、または前記ハプティック効果の流れのうちの少なくとも1つを有する空間化データを受信するステップと、
    受信した前記空間化データに基づいて、前記ハプティック効果定義を変更するステップと、
    ハプティック命令および変更された前記ハプティック効果定義を前記周辺機器に送信するステップと、
    前記ハプティック命令に応じて、前記周辺機器において変更された前記ハプティック効果定義に基づいて1つ以上のハプティック効果を1つ以上のハプティック出力装置に生成させるステップと、を有する、非一時的コンピュータ可読媒体。
  2. 前記ハプティック効果定義を変更するステップは、前記ハプティック効果定義を1つ以上のハプティック効果定義コンポーネントに分割するステップを有し、
    前記ハプティック命令および変更された前記ハプティック効果定義を送信するステップは、前記1つ以上のハプティック効果定義コンポーネントを前記周辺機器に送信するステップを有し、
    変更された前記ハプティック効果定義に基づいて1つ以上のハプティック効果を1つ以上のハプティック出力装置に生成させるステップは、前記1つ以上のハプティック効果定義コンポーネントに基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  3. 前記空間化データに基づいて、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータのマグニチュード、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの周波数、または少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの持続時間のうちの少なくとも1つをスケーリングするステップをさらに有する、請求項2に記載の非一時的コンピュータ可読媒体。
  4. 前記空間化データに基づいて、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータのマグニチュード、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの周波数、または少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの持続時間のうちの少なくとも1つを減衰するステップをさらに有する、請求項2に記載の非一時的コンピュータ可読媒体。
  5. 前記空間化データに基づいて、少なくとも1つのハプティック効果の再生を少なくとも1つのハプティック出力装置に遅延させるステップをさらに有する、請求項2に記載の非一時的コンピュータ可読媒体。
  6. 前記1つ以上のハプティック効果定義コンポーネントは異なる、請求項2に記載の非一時的コンピュータ可読媒体。
  7. 前記1つ以上のハプティック効果定義コンポーネントは同一である、請求項2に記載の非一時的コンピュータ可読媒体。
  8. 前記周辺機器は、コントローラまたはゲームパッドを備える、請求項1に記載の非一時的コンピュータ可読媒体。
  9. 前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップは、前記周辺機器の1つ以上のユーザ入力エレメントにおける前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  10. 少なくとも1つのユーザ入力エレメントは、デジタルボタン、アナログボタン、バンパ、方向パッド、アナログまたはデジタルスティック、ハンドル、あるいはトリガのうちの1つを備える、請求項9に記載の非一時的コンピュータ可読媒体。
  11. 少なくとも1つのハプティック出力装置はアクチュエータを備える、請求項1に記載の非一時的コンピュータ可読媒体。
  12. 変更された前記ハプティック効果定義に基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップは、変更された前記ハプティック効果定義に基づいて複数の異なる減衰において複数のアクチュエータにおける前記1つ以上のハプティック効果を出力するステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  13. 変更された前記ハプティック効果定義に基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップは、変更された前記ハプティック効果定義に基づいて逆勾配減衰によって複数のアクチュエータにおける前記1つ以上のハプティック効果を出力するステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  14. 変更された前記ハプティック効果定義に基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップは、変更された前記ハプティック効果定義に基づいて、鳴動アクチュエータからターゲットアクチュエータへ、逆勾配減衰によって複数の前記鳴動アクチュエータおよび複数の前記ターゲットアクチュエータにおける前記1つ以上のハプティック効果を出力するステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  15. 変更された前記ハプティック効果定義に基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップは、変更された前記ハプティック効果定義に基づいて、ターゲットアクチュエータから鳴動アクチュエータへ、逆勾配減衰によって複数の前記鳴動アクチュエータおよび複数の前記ターゲットアクチュエータにおける前記1つ以上のハプティック効果を出力するステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  16. 変更された前記ハプティック効果定義に基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップは、変更された前記ハプティック効果定義に基づいて、遅延を伴って複数のアクチュエータにおいて1つ以上のハプティック効果を出力するステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  17. 変更された前記ハプティック効果定義に基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップは、変更された前記ハプティック効果定義に基づいて、鳴動アクチュエータからターゲットアクチュエータへ、遅延を伴って複数の前記鳴動アクチュエータおよび複数の前記ターゲットアクチュエータにおいて前記1つ以上のハプティック効果を出力するステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  18. 変更された前記ハプティック効果定義に基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップは、変更された前記ハプティック効果定義に基づいて、ターゲットアクチュエータから鳴動アクチュエータへ、遅延を伴って複数の前記鳴動アクチュエータおよび複数の前記ターゲットアクチュエータにおいて前記1つ以上のハプティック効果を出力するステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  19. 変更された前記ハプティック効果定義に基づいて1つ以上のハプティック効果を1つ以上のハプティック出力装置に生成させるステップは、変更された前記ハプティック効果定義に基づいて、時計回りまたは反時計回りに、遅延を伴って複数のアクチュエータにおいて前記1つ以上のハプティック効果を出力するステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  20. 前記ハプティック効果定義を変更するステップは、周辺機器のモーション、位置の変化、または配向の変化を検出するステップと、検出されたモーション、検出された位置の変化、または検出された配向の変化に基づいて空間化データを変更するステップと、変更された前記空間化データに基づいて変更された前記ハプティック効果定義を引き続き変更するステップと、を有し、
    前記ハプティック命令および前記変更されたハプティック効果定義を送信するステップは、引き続き変更された前記ハプティック効果定義を前記周辺機器に送信するステップを有し、
    変更された前記ハプティック効果定義に基づいて1つ以上のハプティック効果を1つ以上のハプティック出力装置に生成させるステップは、引き続き変更された前記ハプティック効果定義に基づいて、1つ以上の変更されたハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップを有する、請求項1に記載の非一時的コンピュータ可読媒体。
  21. 周辺機器のユーザ入力エレメントにおいて経験されるハプティック効果を制御するためのコンピュータ実施方法であって、
    ハプティックデータを有するハプティック効果定義を受信するステップと、
    前記ハプティック効果の位置、前記ハプティック効果の距離、前記ハプティック効果の速度、前記ハプティック効果の方向、または前記ハプティック効果の流れのうちの少なくとも1つを有する空間化データを受信するステップと、
    受信した前記空間化データに基づいて、前記ハプティック効果定義を変更するステップと、
    ハプティック命令および変更された前記ハプティック効果定義を前記周辺機器に送信するステップと、
    前記ハプティック命令に応じて、前記周辺機器において変更された前記ハプティック効果定義に基づいて1つ以上のハプティック効果を1つ以上のハプティック出力装置に生成させるステップと、を有する、コンピュータ実施方法。
  22. 前記ハプティック効果定義を変更するステップは、前記ハプティック効果定義を1つ以上のハプティック効果定義コンポーネントに分割するステップを有し、
    前記ハプティック命令および変更された前記ハプティック効果定義を送信するステップは、前記1つ以上のハプティック効果定義コンポーネントを前記周辺機器に送信するステップを有し、
    変更された前記ハプティック効果定義に基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップは、前記1つ以上のハプティック効果定義コンポーネントに基づいて前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるステップを有する、請求項21に記載のコンピュータ実施方法。
  23. 前記空間化データに基づいて、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータのマグニチュード、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの周波数、または少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの持続時間のうちの少なくとも1つをスケーリングするステップをさらに有する、請求項22に記載のコンピュータ実施方法。
  24. 前記空間化データに基づいて、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータのマグニチュード、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの周波数、または少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの持続時間のうちの少なくとも1つを減衰するステップをさらに有する、請求項22に記載のコンピュータ実施方法。
  25. 前記空間化データに基づいて、少なくとも1つのハプティック効果の再生を少なくとも1つのハプティック出力装置に遅延させるステップをさらに有する、請求項22に記載のコンピュータ実施方法。
  26. 周辺機器において経験されるハプティック効果を制御するためのシステムであって、
    ハプティック空間化モジュールを記憶するように構成されたメモリと、
    前記メモリに記憶された前記ハプティック空間化モジュールを実行するように構成されたプロセッサと、を備え、
    前記プロセッサは、前記ハプティック空間化モジュールを実行するとき、ハプティックデータを有するハプティック効果定義を受信するように構成されており、
    前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、前記ハプティック効果の位置、前記ハプティック効果の距離、前記ハプティック効果の速度、前記ハプティック効果の方向、または前記ハプティック効果の流れのうちの少なくとも1つを有する空間化データを受信するように構成されており、
    前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、受信した前記空間化データに基づいて前記ハプティック効果定義を変更するように構成されており、
    前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、ハプティック命令および変更された前記ハプティック効果定義を前記周辺機器に送信するように構成されており、
    前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、前記ハプティック命令に応じて、前記周辺機器において変更された前記ハプティック効果定義に基づいて1つ以上のハプティック効果を1つ以上のハプティック出力装置に生成させるように構成されている、システム。
  27. 前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、前記ハプティック効果定義を1つ以上のハプティック効果定義コンポーネントに分割するように構成されており、
    前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、前記1つ以上のハプティック効果定義コンポーネントを前記周辺機器に送信するように構成されており、
    前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、前記1つ以上のハプティック効果定義コンポーネントに基づいて、前記1つ以上のハプティック効果を前記1つ以上のハプティック出力装置に生成させるように構成されている、請求項26に記載のシステム。
  28. 前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、前記空間化データに基づいて、少なくとも1つのハプティック効果定義コンポーネントのマグニチュード、少なくとも1つのハプティック効果コンポーネントの前記ハプティックデータの周波数、または少なくとも1つのハプティック効果コンポーネントの前記ハプティックデータの持続時間のうちの少なくとも1つをスケーリングするように構成されている、請求項27に記載のシステム。
  29. 前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、前記空間化データに基づいて、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータのマグニチュード、少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの周波数、または少なくとも1つのハプティック効果定義コンポーネントの前記ハプティックデータの持続時間のうちの少なくとも1つを減衰するように構成されている、請求項27に記載のシステム。
  30. 前記プロセッサは、さらに、前記ハプティック空間化モジュールを実行するとき、前記空間化データに基づいて、少なくとも1つのハプティック効果の再生を少なくとも1つのハプティック出力装置に遅延させるように構成されている、請求項27に記載のシステム。
JP2014230981A 2013-11-14 2014-11-13 ハプティック空間化システム Active JP5986171B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361904342P 2013-11-14 2013-11-14
US61/904,342 2013-11-14
US14/539,122 2014-11-12
US14/539,122 US9164587B2 (en) 2013-11-14 2014-11-12 Haptic spatialization system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2016153647A Division JP6552463B2 (ja) 2013-11-14 2016-08-04 ハプティック空間化システム

Publications (3)

Publication Number Publication Date
JP2015111417A true JP2015111417A (ja) 2015-06-18
JP2015111417A5 JP2015111417A5 (ja) 2016-06-23
JP5986171B2 JP5986171B2 (ja) 2016-09-06

Family

ID=51904606

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2014230981A Active JP5986171B2 (ja) 2013-11-14 2014-11-13 ハプティック空間化システム
JP2016153647A Active JP6552463B2 (ja) 2013-11-14 2016-08-04 ハプティック空間化システム
JP2017244867A Pending JP2018055722A (ja) 2013-11-14 2017-12-21 ハプティック空間化システム
JP2019129415A Pending JP2019185811A (ja) 2013-11-14 2019-07-11 ハプティック空間化システム

Family Applications After (3)

Application Number Title Priority Date Filing Date
JP2016153647A Active JP6552463B2 (ja) 2013-11-14 2016-08-04 ハプティック空間化システム
JP2017244867A Pending JP2018055722A (ja) 2013-11-14 2017-12-21 ハプティック空間化システム
JP2019129415A Pending JP2019185811A (ja) 2013-11-14 2019-07-11 ハプティック空間化システム

Country Status (5)

Country Link
US (4) US9164587B2 (ja)
EP (2) EP2873446B1 (ja)
JP (4) JP5986171B2 (ja)
KR (3) KR101736896B1 (ja)
CN (2) CN104623897B (ja)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018020778A1 (ja) * 2016-07-26 2018-02-01 株式会社ソニー・インタラクティブエンタテインメント 情報処理システム、操作デバイス、及び操作デバイスの制御方法
JP2018097850A (ja) * 2016-12-08 2018-06-21 イマージョン コーポレーションImmersion Corporation ハプティックサラウンド機能
WO2018179943A1 (ja) * 2017-03-29 2018-10-04 富士フイルム株式会社 タッチ式操作装置、その作動方法及び作動プログラム、並びにタッチ式操作装置を用いた情報処理システム
JP2019522829A (ja) * 2016-06-10 2019-08-15 イマージョン コーポレーションImmersion Corporation イントラデバイスミキシングによるハプティック効果の表現
WO2019163260A1 (ja) * 2018-02-20 2019-08-29 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US10850192B2 (en) 2016-03-04 2020-12-01 Sony Interactive Entertainment Inc. Control apparatus and control program
US10881953B2 (en) 2016-07-21 2021-01-05 Sony Interactive Entertainment Inc. Operating device and control system
US10967253B2 (en) 2016-07-26 2021-04-06 Sony Interactive Entertainment Inc. Operation device and method for controlling the same
WO2021210341A1 (ja) * 2020-04-14 2021-10-21 ソニーグループ株式会社 情報処理装置、情報処理方法
US11173393B2 (en) 2017-09-29 2021-11-16 Sony Interactive Entertainment Inc. Operation device and control apparatus therefor
US11511185B2 (en) 2017-10-27 2022-11-29 Sony Interactive Entertainment Inc. Operation device
JP7439758B2 (ja) 2018-08-30 2024-02-28 ソニーグループ株式会社 送信装置、送信方法、受信装置および受信方法

Families Citing this family (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7765333B2 (en) 2004-07-15 2010-07-27 Immersion Corporation System and method for ordering haptic effects
KR20140115836A (ko) * 2013-03-22 2014-10-01 삼성전자주식회사 햅틱 효과를 제공하는 휴대 단말 및 방법
US9619029B2 (en) * 2013-11-14 2017-04-11 Immersion Corporation Haptic trigger control system
US9164587B2 (en) 2013-11-14 2015-10-20 Immersion Corporation Haptic spatialization system
JP2015166890A (ja) 2014-03-03 2015-09-24 ソニー株式会社 情報処理装置、情報処理システム、情報処理方法及びプログラム
US10675532B2 (en) 2014-04-21 2020-06-09 Steelseries Aps Variable actuators of an accessory and methods thereof
US10022622B2 (en) * 2014-04-21 2018-07-17 Steelseries Aps Programmable actuation inputs of an accessory and methods thereof
US9588586B2 (en) * 2014-06-09 2017-03-07 Immersion Corporation Programmable haptic devices and methods for modifying haptic strength based on perspective and/or proximity
US10185396B2 (en) 2014-11-12 2019-01-22 Immersion Corporation Haptic trigger modification system
US9478109B2 (en) * 2014-12-29 2016-10-25 Immersion Corporation Virtual sensor in a virtual environment
US9619034B2 (en) * 2015-02-25 2017-04-11 Immersion Corporation Overlaying of haptic effects
WO2017043400A1 (ja) * 2015-09-08 2017-03-16 ソニー株式会社 情報処理装置、方法およびコンピュータプログラム
US10210724B2 (en) 2016-06-29 2019-02-19 Immersion Corporation Real-time patterned haptic effect generation using vibrations
US10976821B2 (en) * 2016-07-07 2021-04-13 Sony Corporation Information processing device, information processing method, and program for controlling output of a tactile stimulus to a plurality of tactile stimulus units
KR20180048227A (ko) * 2016-10-31 2018-05-10 주식회사 테그웨이 피드백 디바이스 및 이를 이용하는 열적 피드백 제공 방법
US20180232051A1 (en) * 2017-02-16 2018-08-16 Immersion Corporation Automatic localized haptics generation system
US10732714B2 (en) 2017-05-08 2020-08-04 Cirrus Logic, Inc. Integrated haptic system
US11259121B2 (en) 2017-07-21 2022-02-22 Cirrus Logic, Inc. Surface speaker
US10310610B2 (en) * 2017-10-19 2019-06-04 Facebook Technologies, Llc Haptic device for artificial reality systems
US10620704B2 (en) 2018-01-19 2020-04-14 Cirrus Logic, Inc. Haptic output systems
US10455339B2 (en) 2018-01-19 2019-10-22 Cirrus Logic, Inc. Always-on detection systems
US11139767B2 (en) 2018-03-22 2021-10-05 Cirrus Logic, Inc. Methods and apparatus for driving a transducer
US10795443B2 (en) 2018-03-23 2020-10-06 Cirrus Logic, Inc. Methods and apparatus for driving a transducer
US10667051B2 (en) 2018-03-26 2020-05-26 Cirrus Logic, Inc. Methods and apparatus for limiting the excursion of a transducer
US10820100B2 (en) 2018-03-26 2020-10-27 Cirrus Logic, Inc. Methods and apparatus for limiting the excursion of a transducer
US10832537B2 (en) 2018-04-04 2020-11-10 Cirrus Logic, Inc. Methods and apparatus for outputting a haptic signal to a haptic transducer
US11069206B2 (en) * 2018-05-04 2021-07-20 Cirrus Logic, Inc. Methods and apparatus for outputting a haptic signal to a haptic transducer
CN108619725B (zh) * 2018-05-09 2021-07-23 网易(杭州)网络有限公司 图像文件的制作方法和装置
CN208188722U (zh) * 2018-08-13 2018-12-04 瑞声科技(新加坡)有限公司 虚拟汽车引擎控制系统
US11269415B2 (en) 2018-08-14 2022-03-08 Cirrus Logic, Inc. Haptic output systems
US10800433B2 (en) 2018-09-14 2020-10-13 Honda Motor Co., Ltd. Seat haptic system and method of equalizing haptic output
US10345758B2 (en) * 2018-10-07 2019-07-09 Rising Star Pathway, a California Corporation Processor controlled energy harvester based on oscillating weight type energy collectors
KR20210075082A (ko) * 2018-10-19 2021-06-22 소니그룹주식회사 정보 처리 장치, 정보 처리 방법, 및 프로그램
WO2020080432A1 (ja) * 2018-10-19 2020-04-23 ソニー株式会社 情報処理装置、情報処理方法、および、プログラム
GB201817495D0 (en) 2018-10-26 2018-12-12 Cirrus Logic Int Semiconductor Ltd A force sensing system and method
FR3088454B1 (fr) * 2018-11-12 2020-12-11 Univ Sorbonne Interface haptique
JP7396300B2 (ja) 2018-12-26 2023-12-12 ソニーグループ株式会社 送信装置、送信方法、受信装置および受信方法
CN109966735B (zh) * 2019-03-02 2023-05-30 黄鑫 一种触觉仿真游戏手柄系统及触觉仿真方法
US10955955B2 (en) 2019-03-29 2021-03-23 Cirrus Logic, Inc. Controller for use in a device comprising force sensors
US10828672B2 (en) 2019-03-29 2020-11-10 Cirrus Logic, Inc. Driver circuitry
US11509292B2 (en) 2019-03-29 2022-11-22 Cirrus Logic, Inc. Identifying mechanical impedance of an electromagnetic load using least-mean-squares filter
US10726683B1 (en) 2019-03-29 2020-07-28 Cirrus Logic, Inc. Identifying mechanical impedance of an electromagnetic load using a two-tone stimulus
US11283337B2 (en) 2019-03-29 2022-03-22 Cirrus Logic, Inc. Methods and systems for improving transducer dynamics
US10992297B2 (en) 2019-03-29 2021-04-27 Cirrus Logic, Inc. Device comprising force sensors
US11644370B2 (en) 2019-03-29 2023-05-09 Cirrus Logic, Inc. Force sensing with an electromagnetic load
US10976825B2 (en) 2019-06-07 2021-04-13 Cirrus Logic, Inc. Methods and apparatuses for controlling operation of a vibrational output system and/or operation of an input sensor system
US11150733B2 (en) 2019-06-07 2021-10-19 Cirrus Logic, Inc. Methods and apparatuses for providing a haptic output signal to a haptic actuator
KR20220024091A (ko) 2019-06-21 2022-03-03 시러스 로직 인터내셔널 세미컨덕터 리미티드 디바이스 상에 복수의 가상 버튼을 구성하기 위한 방법 및 장치
JP6731531B1 (ja) * 2019-08-30 2020-07-29 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理方法、および、情報処理装置
US11408787B2 (en) 2019-10-15 2022-08-09 Cirrus Logic, Inc. Control methods for a force sensor system
US11380175B2 (en) 2019-10-24 2022-07-05 Cirrus Logic, Inc. Reproducibility of haptic waveform
US11545951B2 (en) 2019-12-06 2023-01-03 Cirrus Logic, Inc. Methods and systems for detecting and managing amplifier instability
KR20210088371A (ko) * 2020-01-06 2021-07-14 주식회사 비햅틱스 촉각자극 제공 시스템
US11662821B2 (en) 2020-04-16 2023-05-30 Cirrus Logic, Inc. In-situ monitoring, calibration, and testing of a haptic actuator
JPWO2022181702A1 (ja) * 2021-02-25 2022-09-01
US11933822B2 (en) 2021-06-16 2024-03-19 Cirrus Logic Inc. Methods and systems for in-system estimation of actuator parameters
US11908310B2 (en) 2021-06-22 2024-02-20 Cirrus Logic Inc. Methods and systems for detecting and managing unexpected spectral content in an amplifier system
US11765499B2 (en) 2021-06-22 2023-09-19 Cirrus Logic Inc. Methods and systems for managing mixed mode electromechanical actuator drive
US11552649B1 (en) 2021-12-03 2023-01-10 Cirrus Logic, Inc. Analog-to-digital converter-embedded fixed-phase variable gain amplifier stages for dual monitoring paths
CN114155356A (zh) * 2021-12-07 2022-03-08 大连工业大学 基于Unity的全空间分布光度计虚拟现实仿真方法
KR102668372B1 (ko) 2022-04-27 2024-05-24 주식회사세오 로봇의 주행 신뢰성 테스트 지그
US20240161759A1 (en) * 2022-11-16 2024-05-16 Sony Interactive Entertainment Inc. Utilizing inaudible ultrasonic frequencies to embed additional audio asset channels within existing audio channels

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013151155A1 (ja) * 2012-04-06 2013-10-10 株式会社ニコン データ処理装置、及びデータ処理プログラム
JP2013218327A (ja) * 2012-04-04 2013-10-24 Immersion Corp 複数のアクチュエータを用いた音からハプティック効果への変換システム

Family Cites Families (148)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6285356B1 (en) 1999-02-19 2001-09-04 Brad A. Armstrong Displacement joystick with compression-sensitive sensors
US5473126A (en) 1994-01-31 1995-12-05 Wu; Donald Joystick switch assembly
US5691898A (en) 1995-09-27 1997-11-25 Immersion Human Interface Corp. Safe and low cost computer peripherals with force feedback for consumer applications
US5959613A (en) * 1995-12-01 1999-09-28 Immersion Corporation Method and apparatus for shaping force signals for a force feedback device
JP3527578B2 (ja) * 1995-10-31 2004-05-17 株式会社ナムコ ゲーム装置
US6169540B1 (en) * 1995-12-01 2001-01-02 Immersion Corporation Method and apparatus for designing force sensations in force feedback applications
US6028593A (en) 1995-12-01 2000-02-22 Immersion Corporation Method and apparatus for providing simulated physical interactions within computer generated environments
US6219032B1 (en) 1995-12-01 2001-04-17 Immersion Corporation Method for providing force feedback to a user of an interface device based on interactions of a controlled cursor with graphical elements in a graphical user interface
JP3823265B2 (ja) * 1996-09-27 2006-09-20 株式会社セガ ゲーム装置及びゲーム装置の制御方法
US6005551A (en) 1997-04-25 1999-12-21 Microsoft Corporation Offline force effect rendering
US6252583B1 (en) * 1997-11-14 2001-06-26 Immersion Corporation Memory and force output management for a force feedback system
US6429846B2 (en) 1998-06-23 2002-08-06 Immersion Corporation Haptic feedback for touchpads and other touch controls
US6563487B2 (en) 1998-06-23 2003-05-13 Immersion Corporation Haptic feedback for directional control pads
US6184868B1 (en) 1998-09-17 2001-02-06 Immersion Corp. Haptic feedback control devices
JP3766756B2 (ja) * 1998-08-06 2006-04-19 株式会社ジェイテクト ドライビングシミュレータ
JP2000195370A (ja) 1998-12-28 2000-07-14 Sony Computer Entertainment Inc 反力発生装置
US6424356B2 (en) * 1999-05-05 2002-07-23 Immersion Corporation Command of force sensations in a forceback system using force effect suites
JP4587243B2 (ja) 1999-08-31 2010-11-24 株式会社ソニー・コンピュータエンタテインメント エンタテインメント装置、エンタテインメントシステム、記録媒体及び振動設定方法
DE20080209U1 (de) * 1999-09-28 2001-08-09 Immersion Corp Steuerung von haptischen Empfindungen für Schnittstellenvorrichtungen mit Vibrotaktiler Rückkopplung
US7965276B1 (en) 2000-03-09 2011-06-21 Immersion Corporation Force output adjustment in force feedback devices based on user contact
US6710764B1 (en) * 2000-05-09 2004-03-23 Logitech Europe S.A. Method and system for processing force feedback effects generated at a host for playback at a physical interaction device
CN100342422C (zh) 2000-05-24 2007-10-10 英默森公司 使用电活性聚合物的触觉装置
US7182691B1 (en) * 2000-09-28 2007-02-27 Immersion Corporation Directional inertial tactile feedback using rotating masses
WO2002027705A1 (en) 2000-09-28 2002-04-04 Immersion Corporation Directional tactile feedback for haptic feedback interface devices
CN100468294C (zh) * 2000-09-28 2009-03-11 伊默逊股份有限公司 用于触觉反馈接口设备的有方向触觉反馈
US7194287B2 (en) 2001-07-25 2007-03-20 Matsushita Electric Industrial Co., Ltd. Electric-mechanical-acoustic-transducer and portable communication device including the same
US7623114B2 (en) 2001-10-09 2009-11-24 Immersion Corporation Haptic feedback sensations based on audio output from computer devices
KR20090096559A (ko) 2001-11-01 2009-09-10 임머숀 코퍼레이션 촉각을 제공하기 위한 방법 및 장치
JP2005056267A (ja) 2003-08-06 2005-03-03 Sony Corp 力覚フィードバック装置
JP4111278B2 (ja) * 2003-11-20 2008-07-02 独立行政法人産業技術総合研究所 触力覚情報提示システム
US8164573B2 (en) 2003-11-26 2012-04-24 Immersion Corporation Systems and methods for adaptive interpretation of input from a touch-sensitive input device
US9948885B2 (en) 2003-12-12 2018-04-17 Kurzweil Technologies, Inc. Virtual encounters
US7791588B2 (en) * 2003-12-22 2010-09-07 Immersion Corporation System and method for mapping instructions associated with haptic feedback
US7667687B2 (en) 2003-12-30 2010-02-23 Immersion Corporation Resistive and hybrid control schemes for haptic feedback interface devices
US8232969B2 (en) 2004-10-08 2012-07-31 Immersion Corporation Haptic feedback for button and scrolling action simulation in touch input devices
JP5275025B2 (ja) * 2005-06-27 2013-08-28 コアクティヴ・ドライヴ・コーポレイション 触覚フィードバック用の同期式振動装置
US8700791B2 (en) 2005-10-19 2014-04-15 Immersion Corporation Synchronization of haptic effect data in a media transport stream
US8210942B2 (en) * 2006-03-31 2012-07-03 Wms Gaming Inc. Portable wagering game with vibrational cues and feedback mechanism
US8378964B2 (en) 2006-04-13 2013-02-19 Immersion Corporation System and method for automatically producing haptic events from a digital audio signal
US8000825B2 (en) 2006-04-13 2011-08-16 Immersion Corporation System and method for automatically producing haptic events from a digital audio file
US7979146B2 (en) 2006-04-13 2011-07-12 Immersion Corporation System and method for automatically producing haptic events from a digital audio signal
US20070265077A1 (en) * 2006-04-27 2007-11-15 Microsoft Corporation Haptic feedback for peripheral devices
JP2007331066A (ja) 2006-06-15 2007-12-27 Canon Inc 接触提示装置及び方法
US9370704B2 (en) 2006-08-21 2016-06-21 Pillar Vision, Inc. Trajectory detection and feedback system for tennis
JP5091488B2 (ja) 2007-01-16 2012-12-05 株式会社ソニー・コンピュータエンタテインメント コントローラ及び情報処理システム
US8621348B2 (en) * 2007-05-25 2013-12-31 Immersion Corporation Customizing haptic effects on an end user device
US20090079690A1 (en) 2007-09-21 2009-03-26 Sony Computer Entertainment America Inc. Method and apparatus for enhancing entertainment software through haptic insertion
US20090088659A1 (en) 2007-09-27 2009-04-02 Immersion Corporation Biological Sensing With Haptic Feedback
US8117364B2 (en) 2007-11-13 2012-02-14 Microsoft Corporation Enhanced protocol and architecture for low bandwidth force feedback game controller
US8740622B2 (en) 2008-01-17 2014-06-03 Articulate Technologies, Inc. Methods and devices for intraoral tactile feedback
JP2009233108A (ja) 2008-03-27 2009-10-15 Namco Bandai Games Inc ゲーム装置用銃型コントローラ
WO2009148942A2 (en) 2008-06-03 2009-12-10 Teradyne, Inc. Processing storage devices
JP5217929B2 (ja) 2008-11-13 2013-06-19 ソニー株式会社 割込検出装置および情報処理システム
US20100141408A1 (en) 2008-12-05 2010-06-10 Anthony Stephen Doy Audio amplifier apparatus to drive a panel to produce both an audio signal and haptic feedback
US8057290B2 (en) 2008-12-15 2011-11-15 Disney Enterprises, Inc. Dance ring video game
WO2010080766A2 (en) 2009-01-06 2010-07-15 Immersion Corporation Programmable game-based haptic enabled gun controller
US9927873B2 (en) 2009-03-12 2018-03-27 Immersion Corporation Systems and methods for using textures in graphical user interface widgets
KR101054303B1 (ko) 2009-05-19 2011-08-08 한국과학기술연구원 진동햅틱 모바일기기 및 그 구동방법
US9370459B2 (en) 2009-06-19 2016-06-21 Andrew Mahoney System and method for alerting visually impaired users of nearby objects
KR20110005587A (ko) 2009-07-10 2011-01-18 삼성전자주식회사 휴대 단말의 진동 발생 방법 및 장치
JP5613236B2 (ja) * 2009-07-22 2014-10-22 イマージョン コーポレーションImmersion Corporation 複数のプラットフォームを越える触覚フィードバックを用いた対話式タッチスクリーンゲーミング比喩
US8540571B2 (en) * 2010-03-31 2013-09-24 Immersion Corporation System and method for providing haptic stimulus based on position
US9880621B2 (en) * 2010-04-08 2018-01-30 Disney Enterprises, Inc. Generating virtual stimulation devices and illusory sensations using tactile display technology
US9251721B2 (en) 2010-04-09 2016-02-02 University Of Florida Research Foundation, Inc. Interactive mixed reality system and uses thereof
WO2011133860A2 (en) 2010-04-23 2011-10-27 Immersion Corporation Systems and methods for providing haptic effects
CN102971689B (zh) 2010-06-28 2015-10-07 诺基亚公司 触觉表面压缩
KR101156621B1 (ko) * 2010-08-09 2012-06-14 광주과학기술원 촉감 패턴 디스플레이 장치 및 디스플레이 상에서의 촉감 패턴 생성 방법
US9223431B2 (en) 2010-09-17 2015-12-29 Blackberry Limited Touch-sensitive display with depression detection and method
US8717152B2 (en) 2011-02-11 2014-05-06 Immersion Corporation Sound to haptic effect conversion system using waveform
US9448626B2 (en) 2011-02-11 2016-09-20 Immersion Corporation Sound to haptic effect conversion system using amplitude value
US8723820B1 (en) 2011-02-16 2014-05-13 Google Inc. Methods and apparatus related to a haptic feedback drawing device
US9083821B2 (en) 2011-06-03 2015-07-14 Apple Inc. Converting audio to haptic feedback in an electronic device
US8480491B2 (en) 2011-06-17 2013-07-09 Ironburg Inventions Ltd. Game controller
US9462262B1 (en) 2011-08-29 2016-10-04 Amazon Technologies, Inc. Augmented reality environment with environmental condition control
US8894491B2 (en) * 2011-12-09 2014-11-25 Microsoft Corporation Multi-stage variable resistance trigger
US9050529B2 (en) 2012-01-30 2015-06-09 Microsoft Technology Licensing, Llc Force feedback triggers
KR102024006B1 (ko) 2012-02-10 2019-09-24 삼성전자주식회사 진동 장치간 진동 전달을 제어하는 장치 및 방법
EP2629178B1 (en) 2012-02-15 2018-01-10 Immersion Corporation High definition haptic effects generation using primitives
US10852093B2 (en) 2012-05-22 2020-12-01 Haptech, Inc. Methods and apparatuses for haptic systems
US9874964B2 (en) 2012-06-04 2018-01-23 Sony Interactive Entertainment Inc. Flat joystick controller
US8860563B2 (en) 2012-06-14 2014-10-14 Immersion Corporation Haptic effect conversion system using granular synthesis
US9368005B2 (en) 2012-08-31 2016-06-14 Immersion Corporation Sound to haptic effect conversion system using mapping
US9092059B2 (en) 2012-10-26 2015-07-28 Immersion Corporation Stream-independent sound to haptic effect conversion system
FR2999741B1 (fr) 2012-12-17 2015-02-06 Centre Nat Rech Scient Systeme haptique pour faire interagir sans contact au moins une partie du corps d'un utilisateur avec un environnement virtuel
US20140320629A1 (en) 2013-01-24 2014-10-30 University Of Washington Through Its Center For Commericialization Haptically-Enabled Co-Robotics for Underwater Tasks
US8754757B1 (en) 2013-03-05 2014-06-17 Immersion Corporation Automatic fitting of haptic effects
JP2014180572A (ja) 2013-03-15 2014-09-29 Immersion Corp プログラマブル触覚周辺装置
US9367136B2 (en) 2013-04-12 2016-06-14 Microsoft Technology Licensing, Llc Holographic object feedback
JP6469963B2 (ja) 2013-04-22 2019-02-13 イマージョン コーポレーションImmersion Corporation 触覚対応トリガーを有するゲーミング装置
US9519346B2 (en) 2013-05-17 2016-12-13 Immersion Corporation Low-frequency effects haptic conversion system
US9908048B2 (en) 2013-06-08 2018-03-06 Sony Interactive Entertainment Inc. Systems and methods for transitioning between transparent mode and non-transparent mode in a head mounted display
US9811854B2 (en) 2013-07-02 2017-11-07 John A. Lucido 3-D immersion technology in a virtual store
EP4083758A1 (en) 2013-07-05 2022-11-02 Rubin, Jacob A. Whole-body human-computer interface
US9711014B2 (en) 2013-09-06 2017-07-18 Immersion Corporation Systems and methods for generating haptic effects associated with transitions in audio signals
US9898086B2 (en) 2013-09-06 2018-02-20 Immersion Corporation Systems and methods for visual processing of spectrograms to generate haptic effects
US10599218B2 (en) 2013-09-06 2020-03-24 Immersion Corporation Haptic conversion system using frequency shifting
US9514620B2 (en) 2013-09-06 2016-12-06 Immersion Corporation Spatialized haptic feedback based on dynamically scaled values
US9576445B2 (en) 2013-09-06 2017-02-21 Immersion Corp. Systems and methods for generating haptic effects associated with an envelope in audio signals
US9619980B2 (en) 2013-09-06 2017-04-11 Immersion Corporation Systems and methods for generating haptic effects associated with audio signals
US9898085B2 (en) 2013-09-06 2018-02-20 Immersion Corporation Haptic conversion system using segmenting and combining
US9630105B2 (en) 2013-09-30 2017-04-25 Sony Interactive Entertainment Inc. Camera based safety mechanisms for users of head mounted displays
US9619029B2 (en) 2013-11-14 2017-04-11 Immersion Corporation Haptic trigger control system
US9164587B2 (en) 2013-11-14 2015-10-20 Immersion Corporation Haptic spatialization system
EP3095023A1 (en) 2014-01-15 2016-11-23 Sony Corporation Haptic notification on wearables
US9551873B2 (en) 2014-05-30 2017-01-24 Sony Interactive Entertainment America Llc Head mounted device (HMD) system having interface with mobile computing device for rendering virtual reality content
JP6355978B2 (ja) 2014-06-09 2018-07-11 株式会社バンダイナムコエンターテインメント プログラムおよび画像生成装置
EP3176676B1 (en) 2014-07-28 2020-01-08 CK Materials Lab Co., Ltd. Haptic information providing module
US9645646B2 (en) 2014-09-04 2017-05-09 Intel Corporation Three dimensional contextual feedback wristband device
US9799177B2 (en) 2014-09-23 2017-10-24 Intel Corporation Apparatus and methods for haptic covert communication
US9174134B1 (en) 2014-11-12 2015-11-03 Immersion Corporation Peripheral device with haptic diminishment prevention component
US10185396B2 (en) 2014-11-12 2019-01-22 Immersion Corporation Haptic trigger modification system
CN105653026A (zh) 2014-11-12 2016-06-08 意美森公司 触觉控制器
US20160170508A1 (en) 2014-12-11 2016-06-16 Toyota Motor Engineering & Manufacturing North America, Inc. Tactile display devices
US9870718B2 (en) 2014-12-11 2018-01-16 Toyota Motor Engineering & Manufacturing North America, Inc. Imaging devices including spacing members and imaging devices including tactile feedback devices
US10166466B2 (en) 2014-12-11 2019-01-01 Elwha Llc Feedback for enhanced situational awareness
US9922518B2 (en) 2014-12-11 2018-03-20 Elwha Llc Notification of incoming projectiles
US10254838B2 (en) 2014-12-23 2019-04-09 Immersion Corporation Architecture and communication protocol for haptic output devices
US10268286B2 (en) 2014-12-23 2019-04-23 Immersion Corporation Controlling power distribution to haptic output devices
US10073516B2 (en) 2014-12-29 2018-09-11 Sony Interactive Entertainment Inc. Methods and systems for user interaction within virtual reality scene using head mounted display
US9746921B2 (en) 2014-12-31 2017-08-29 Sony Interactive Entertainment Inc. Signal generation and detector systems and methods for determining positions of fingers of a user
US9843744B2 (en) 2015-01-13 2017-12-12 Disney Enterprises, Inc. Audience interaction projection system
US10322203B2 (en) 2015-06-26 2019-06-18 Intel Corporation Air flow generation for scent output
US9778746B2 (en) 2015-09-25 2017-10-03 Oculus Vr, Llc Transversal actuator for haptic feedback
US20170103574A1 (en) 2015-10-13 2017-04-13 Google Inc. System and method for providing continuity between real world movement and movement in a virtual/augmented reality experience
US20170131775A1 (en) 2015-11-10 2017-05-11 Castar, Inc. System and method of haptic feedback by referral of sensation
US9849379B2 (en) 2015-11-25 2017-12-26 Immersion Corporation Haptic peripheral having a deformable substrate configured for amplified deformation
US10055948B2 (en) 2015-11-30 2018-08-21 Nike, Inc. Apparel with ultrasonic position sensing and haptic feedback for activities
US10310804B2 (en) 2015-12-11 2019-06-04 Facebook Technologies, Llc Modifying haptic feedback provided to a user to account for changes in user perception of haptic feedback
US10324530B2 (en) 2015-12-14 2019-06-18 Facebook Technologies, Llc Haptic devices that simulate rigidity of virtual objects
US10096163B2 (en) 2015-12-22 2018-10-09 Intel Corporation Haptic augmented reality to reduce noxious stimuli
US10065124B2 (en) 2016-01-15 2018-09-04 Disney Enterprises, Inc. Interacting with a remote participant through control of the voice of a toy device
US11351472B2 (en) 2016-01-19 2022-06-07 Disney Enterprises, Inc. Systems and methods for using a gyroscope to change the resistance of moving a virtual weapon
US9846971B2 (en) 2016-01-19 2017-12-19 Disney Enterprises, Inc. Systems and methods for augmenting an appearance of a hilt to simulate a bladed weapon
US10061385B2 (en) 2016-01-22 2018-08-28 Microsoft Technology Licensing, Llc Haptic feedback for a touch input device
CN106997241B (zh) 2016-01-22 2020-04-21 宏达国际电子股份有限公司 虚拟现实环境中与真实世界互动的方法与虚拟现实系统
US9933851B2 (en) 2016-02-22 2018-04-03 Disney Enterprises, Inc. Systems and methods for interacting with virtual objects using sensory feedback
US10555153B2 (en) 2016-03-01 2020-02-04 Disney Enterprises, Inc. Systems and methods for making non-smart objects smart for internet of things
US9981183B2 (en) 2016-05-19 2018-05-29 Immersion Corporation Haptic peripheral having a haptically-enhanced user input element including a mechanical key and an integrated smart material actuator for providing haptic effects
US20170352185A1 (en) 2016-06-02 2017-12-07 Dennis Rommel BONILLA ACEVEDO System and method for facilitating a vehicle-related virtual reality and/or augmented reality presentation
US10155159B2 (en) 2016-08-18 2018-12-18 Activision Publishing, Inc. Tactile feedback systems and methods for augmented reality and virtual reality systems
US20180053351A1 (en) 2016-08-19 2018-02-22 Intel Corporation Augmented reality experience enhancement method and apparatus
US10779583B2 (en) 2016-09-20 2020-09-22 Facebook Technologies, Llc Actuated tendon pairs in a virtual reality device
US10372213B2 (en) 2016-09-20 2019-08-06 Facebook Technologies, Llc Composite ribbon in a virtual reality device
US10300372B2 (en) 2016-09-30 2019-05-28 Disney Enterprises, Inc. Virtual blaster
US10281982B2 (en) 2016-10-17 2019-05-07 Facebook Technologies, Llc Inflatable actuators in virtual reality
US10088902B2 (en) 2016-11-01 2018-10-02 Oculus Vr, Llc Fiducial rings in virtual reality
US20170102771A1 (en) 2016-12-12 2017-04-13 Leibs Technology Limited Wearable ultrasonic haptic feedback system
US10226697B2 (en) 2017-06-01 2019-03-12 Microsoft Technology Licensing, Llc Input device with sector geared feedback trigger

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013218327A (ja) * 2012-04-04 2013-10-24 Immersion Corp 複数のアクチュエータを用いた音からハプティック効果への変換システム
WO2013151155A1 (ja) * 2012-04-06 2013-10-10 株式会社ニコン データ処理装置、及びデータ処理プログラム

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11654353B2 (en) 2016-03-04 2023-05-23 Sony Interactive Entertainment Inc. Control apparatus and control program
US11198060B2 (en) 2016-03-04 2021-12-14 Sony Interactive Entertainment Inc. Control apparatus and control program
US10850192B2 (en) 2016-03-04 2020-12-01 Sony Interactive Entertainment Inc. Control apparatus and control program
JP2019522829A (ja) * 2016-06-10 2019-08-15 イマージョン コーポレーションImmersion Corporation イントラデバイスミキシングによるハプティック効果の表現
US11596858B2 (en) 2016-07-21 2023-03-07 Sony Interactive Entertainment Inc. Operating device and control system
US10881953B2 (en) 2016-07-21 2021-01-05 Sony Interactive Entertainment Inc. Operating device and control system
US10967253B2 (en) 2016-07-26 2021-04-06 Sony Interactive Entertainment Inc. Operation device and method for controlling the same
CN109478098B (zh) * 2016-07-26 2022-01-11 索尼互动娱乐股份有限公司 信息处理系统、操作装置和操作装置控制方法
CN109478098A (zh) * 2016-07-26 2019-03-15 索尼互动娱乐股份有限公司 信息处理系统、操作装置和操作装置控制方法
JPWO2018020778A1 (ja) * 2016-07-26 2018-12-13 株式会社ソニー・インタラクティブエンタテインメント 情報処理システム、操作デバイス、及び操作デバイスの制御方法
WO2018020778A1 (ja) * 2016-07-26 2018-02-01 株式会社ソニー・インタラクティブエンタテインメント 情報処理システム、操作デバイス、及び操作デバイスの制御方法
US11980810B2 (en) 2016-07-26 2024-05-14 Sony Interactive Entertainment Inc. Information processing system, operation device, and operation device control method
US11524226B2 (en) 2016-07-26 2022-12-13 Sony Interactive Entertainment Inc. Operation device and method for controlling the same
US11344797B2 (en) 2016-07-26 2022-05-31 Sony Interactive Entertainment Inc. Information processing system, operation device, and operation device control method with multi-mode haptic feedback
JP2018097850A (ja) * 2016-12-08 2018-06-21 イマージョン コーポレーションImmersion Corporation ハプティックサラウンド機能
JP2018169757A (ja) * 2017-03-29 2018-11-01 富士フイルム株式会社 タッチ式操作装置、その作動方法及び作動プログラム、並びにタッチ式操作装置を用いた情報処理システム
WO2018179943A1 (ja) * 2017-03-29 2018-10-04 富士フイルム株式会社 タッチ式操作装置、その作動方法及び作動プログラム、並びにタッチ式操作装置を用いた情報処理システム
US11173393B2 (en) 2017-09-29 2021-11-16 Sony Interactive Entertainment Inc. Operation device and control apparatus therefor
US11511185B2 (en) 2017-10-27 2022-11-29 Sony Interactive Entertainment Inc. Operation device
WO2019163260A1 (ja) * 2018-02-20 2019-08-29 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP7439758B2 (ja) 2018-08-30 2024-02-28 ソニーグループ株式会社 送信装置、送信方法、受信装置および受信方法
US11991473B2 (en) 2018-08-30 2024-05-21 Sony Corporation Transmitting apparatus, transmission method, receiving apparatus, and reception method
WO2021210341A1 (ja) * 2020-04-14 2021-10-21 ソニーグループ株式会社 情報処理装置、情報処理方法

Also Published As

Publication number Publication date
US20190278375A1 (en) 2019-09-12
US20180074589A1 (en) 2018-03-15
US20160026251A1 (en) 2016-01-28
JP2016197459A (ja) 2016-11-24
KR101984378B1 (ko) 2019-05-30
CN104623897A (zh) 2015-05-20
US10353471B2 (en) 2019-07-16
US9891710B2 (en) 2018-02-13
US20150130707A1 (en) 2015-05-14
JP5986171B2 (ja) 2016-09-06
KR20190060737A (ko) 2019-06-03
CN104623897B (zh) 2017-09-12
JP6552463B2 (ja) 2019-07-31
EP2873446A1 (en) 2015-05-20
KR20170055464A (ko) 2017-05-19
EP3421108A3 (en) 2020-01-01
JP2018055722A (ja) 2018-04-05
EP2873446B1 (en) 2018-05-30
EP3421108A2 (en) 2019-01-02
US9164587B2 (en) 2015-10-20
JP2019185811A (ja) 2019-10-24
KR20150056070A (ko) 2015-05-22
KR101736896B1 (ko) 2017-05-17
CN107519642A (zh) 2017-12-29

Similar Documents

Publication Publication Date Title
JP6552463B2 (ja) ハプティック空間化システム
JP6449946B2 (ja) ハプティックトリガ制御システム
KR102417688B1 (ko) 선택 햅틱 메타데이터를 가지는 햅틱 브로드캐스트
KR20190088938A (ko) 햅틱 트리거 수정 시스템
KR20150141156A (ko) 오디오 트랙들을 통해 햅틱 효과들을 제공하는 햅틱 디바이스들 및 방법들
WO2024084949A1 (ja) 音響信号処理方法、コンピュータプログラム、及び、音響信号処理装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160510

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20160510

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160519

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20160622

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160804

R150 Certificate of patent or registration of utility model

Ref document number: 5986171

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

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