以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
また、説明は以下の順序で行うものとする。
1.本開示の一実施形態による情報処理システムの概要
2.第1の実施形態(4Dシステムを介した触覚提示デバイスの制御)
2−1.構成例
(2−1−1.システム構成例)
(2−1−2.生成装置10の構成例)
(2−1−3.触覚提示デバイス制御装置20の構成例)
2−2.動作処理
(2−2−1.生成側の動作処理)
(2−2−2.再生側の動作処理)
・補足1…オフセット情報の設定
・補足2…触覚データ生成時における推奨値の提示
・補足4…触覚提示デバイス2と触覚提示デバイス制御装置20との間のデータ伝送について
2−3.変形例
(2−3−1.4Dシステムを介さないシステム構築例)
(2−3−2.各触覚提示デバイス2のプロファイル情報に応じた触覚制御信号の配信)
(2−3−3.子供に適した触覚刺激提示の実現)
(2−3−4.家庭用システム構築例)
(2−3−5.インターネットゲームにおける触覚提示システム)
(2−3−6.光通信によるタイムコード配信方式)
(2−3−7.光通信によるコマンド配信方式)
3.第2の実施形態(生成側で触覚制御信号を作成)
3−1.構成例
3−2.動作処理
(3−2−1.生成側の動作処理)
(3−2−2.再生側の動作処理)
3−3.変形例
(3−3−1.4Dシステムを介さないシステム構築例)
(3−3−2.家庭用システム構築例)
4.第3の実施形態(触覚提示の編集機能例)
5.まとめ
<<1.本開示の一実施形態による情報処理システムの概要>>
本開示の一実施形態による情報処理システムは、再生コンテンツと同期して制御することを想定した触覚提示デバイスの制御用データの生成およびその再生を行うシステムに関し、処理負担の軽減や利便性の向上を図るシステムの構築について提案する。
まず、本開示で用いる触覚提示デバイス2(図1参照)について以下説明する。触覚提示デバイス2は、映画館や、テーマパークのアトラクションでの利用、または、家庭でのテレビ視聴時や、ゲームプレイ時における利用を想定する。
(触覚提示デバイス2)
触覚提示デバイス2は、例えば装着型の装置により形成される。例えば本実施形態では、ユーザに着用されるベスト型を想定する。ベスト型の触覚提示デバイス2は、内部に複数の触覚刺激部(アクチュエータとも称す)を有する。触覚刺激部は、例えば触覚提示デバイス2の内部において、ユーザの正面側および背面側にそれぞれ所定の個数(例えば6個)ずつ配置され得る。一例として、正面側に配置されている個々の触覚刺激部と、背面側に配置されている個々の触覚刺激部は、向かい合う位置関係で配置される。
なお、触覚提示デバイス2の形状は、ベスト型(袖なしの上着形状)に限定されず、袖を有した上着形状であってもよい。この場合、ユーザの胸部および腹部だけでなく、ユーザの両腕に対応する位置にも、触覚刺激部が一以上配置されるようにしてもよい。また、本実施形態による触覚提示デバイス2は、上着形状に限定されず、ズボン、靴、ベルト、帽子、手袋、またはマスク等であってもよい。
また、触覚提示デバイス2の肩部分には、左右にそれぞれ一つずつ音声出力部を配置してもよい。若しくは、触覚提示デバイス2に1つだけ音声出力部を配置してもよいし、3個以上配置してもよい。また、音声出力部は、触覚提示デバイス2とは独立した他の装置として、周辺に配置されていてもよい。
(触覚刺激部)
触覚提示デバイス2に含まれる複数の触覚刺激部がそれぞれ単独で振動を発生する場合、発生された振動は、当該触覚刺激部の周辺部でのみ知覚され得る。つまり、個々の触覚刺激部が離れて配置されている場合には、個々の触覚刺激部が別々に発生する振動は、ユーザの身体において離散的に知覚され得る。
一方、ファントムセンセーションという錯覚現象が医学的に解明されている。このファントムセンセーションは、皮膚上の異なる位置に対して同時に刺激が提示されると、人間は、提示された刺激位置の間において刺激を一つだけ知覚するような錯覚現象である。例えば、ユーザの身体上に配置された2個の触覚刺激部に同時に刺激を出力させると、通常、ユーザに知覚される触覚刺激の位置(以下、知覚位置と称する)は、2個の触覚刺激部の間の位置になることが知られている。また、複数の触覚刺激部の出力強度を変化させることにより、個々の触覚刺激部の配置間隔を変えることなく、複数の触覚刺激部により提示可能な触覚刺激の範囲を連続的に拡大し得る。
一例として、2個の触覚刺激部における各々の出力強度と知覚位置との関係(ファントムセンセーション)について説明する。例えば、時間の経過に応じて、第1の触覚刺激部の出力強度を例えば「1」、「0.6」、「0」のように連続的に弱くし、かつ、第2の触覚刺激部の出力強度を「0」、「0.6」、「1」のように連続的に強くしたとする。この場合、(ユーザに知覚される)知覚位置は、第1の触覚刺激部の接触位置から第2の触覚刺激部の接触位置へと連続的に移動し得る。
このように、各触覚刺激部における各々の出力強度を制御することで、触覚刺激部の位置に限定されずに、知覚位置を任意に移動させることが可能となる。
従って、触覚提示デバイス2の知覚効果を制作する際には、触覚刺激部の位置に関わらず任意に知覚位置を決定し、その知覚位置で提示する触覚刺激の強度(「知覚強度」と称す)と触覚刺激の種類(「触覚刺激種類」と称す)を設定することとなる。一方、触覚提示デバイス2を制御する際には、指定された知覚位置において、設定された強度かつ設定された種類の触覚刺激を提示するために、触覚提示デバイス2に設けられた個々の触覚刺激部へ入力する信号(「触覚制御信号」と称す)を算出する必要がある。
本実施形態では、触覚提示デバイス2の知覚効果を制作する側(すなわち触覚提示デバイス2の制御用データの生成側)と、コンテンツの再生および再生に同期して触覚提示デバイス2を制御する側(すなわち、上記生成された制御用データを用いて触覚提示デバイス2を制御する側)を含むシステムに関し、処理負担の軽減や利便性の向上を図るシステムの構築について提案する。
なお、本明細書において、「触覚刺激」の一例として振動刺激を用いる。具体的には、触覚提示デバイス2に、触覚刺激部として振動アクチュエータを設け、これにより振動刺激を提示する。また、「触覚刺激の種類」とは、提示する知覚のパターンであって、例えば振動の波形データ(知覚波形データ)が想定される。また、「触覚制御信号」とは、触覚提示デバイス2に設けられた個々の触覚刺激部(振動アクチュエータ)に入力する波形データ(駆動信号に相当する制御波形データ)である。
以上、本開示の一実施形態による情報処理システムの概要について説明した。続いて、本実施形態による情報処理システムについて、複数の実施形態を用いて具体的に説明する。
<<2.第1の実施形態(4Dシステムを介した触覚提示デバイスの制御)>>
<2−1.構成例>
(2−1−1.システム構成例)
図1は、第1の実施形態による情報処理システム1aの全体構成の一例を示す図である。図1に示すように、本実施形態による情報処理システム1aは、生成装置10、触覚提示デバイス制御装置20、シネマシステム30、4Dシステム制御装置40、および、検証システム50を含む。本実施形態では、触覚提示デバイス2を映画館で用いる場合を想定する。
(再生側)
シネマシステム30は、再生制御装置31、プロジェクタ32、およびスクリーンSを含み、再生制御装置31は、プロジェクタ32を用いてスクリーンSに映像(映画コンテンツ)を投影し、映画を上映する。また、図1には図示していないが、シネマシステム30は、さらに音響システムと連携し、映画コンテンツに含まれる音声データを音響システムから再生する制御を行う。
再生制御装置31は、映画コンテンツの再生制御を行うと共に、映画コンテンツの再生位置を示すタイムコードをリアルタイムで4Dシステム制御装置40に出力する。
4Dシステム制御装置40は、映画館に導入された4D技術を制御する機能を有する。4D技術とは、現在の時空間などの3次元の次元定義に対し、それとは異なる新しい次元定義を行った技術を指し、デジタルコンテンツ(例えば映像)以外のリアルな要素を提示する際に用いられる。映画館に用いられる4D技術は、より具体的には、映画の上映に合わせて振動したり、動いたり、また、空気(風)や、水、霧、光、香り等を観客に放出したりする機能を備えた、映画観賞用の座席装置(以下、「4Dシート」と称す)が挙げられる。4Dシステム制御装置40は、再生制御装置31から受信したタイムコードに従って、4Dシート4の振動や、空気、水、香り等の放出を適宜制御し、映画と同期した4D出力を実現する。本明細書では、4Dシステム制御装置40、4Dシート4、および、4Dシート4から空気や水、香り等を放出するための周辺装置(不図示)を含めて、「4Dシステム」と称す。
また、タイムコードに従った4Dシステム制御装置40による4D技術の制御は、本システムの生成側における生成装置10で予め生成された「4D制御情報」(4Dシステム用ファイル)に従って行われる。「4D制御情報」には、タイムコードに対応した振動の制御や、空気、水、香り等の放出制御に関する制御コマンドが含まれる。なお、本実施形態による4D制御の詳細な内容については特に限定せず、例えば既存の4D制御を用いてもよい。
また、本実施形態による4Dシステム制御装置40は、本システムの生成側における生成装置10で予め生成され取得した生成ファイルに含まれる、触覚提示デバイス2の制御コマンドが再生コンテンツの時間軸に対応して記述されたテキストデータ(本明細書では、「スクリプト」と称す)を参照し、再生制御装置31から受信したタイムコードに従って、適宜、触覚提示デバイス制御装置20に、触覚提示デバイス2の制御に関するコマンドを出力する。
触覚提示デバイス制御装置20は、4Dシステム制御装置40から受信したコマンドに従って触覚提示デバイス2を制御することで、映画(映像および音声)および4Dシート4と同期した触覚刺激提示を行い得る。具体的には、触覚提示デバイス制御装置20は、4Dシステム制御装置40から受信したコマンドに従って触覚制御信号を生成し、触覚提示デバイス2に出力する。かかるコマンドには、振動刺激の知覚位置、振動刺激の波形種類、および、振動刺激の強度情報が含まれる。触覚提示デバイス制御装置20は、コマンドで指定された知覚位置において、指定された強度で、指定された波形による振動刺激を提示するよう、触覚提示デバイス2に設けられた個々の触覚刺激部へ入力する触覚制御信号(波形データ)を生成(算出)し、出力する。
なお、「振動刺激の波形種類」は、予め生成され触覚LibDB221に蓄積されている触覚データライブラリ(すなわち、多数の映画で汎用し得る基本的な振動波形パターンである。本明細書では、「触覚ライブラリ」とも称す)、または、当該映画の音声データに基づいて生成された生成触覚データ(すなわち、今回上映する映画用に作成された振動波形パターン)が指定される。生成触覚データは、生成側から(4Dシステム制御装置40を介して)取得し、触覚提示デバイス制御装置20において記憶部に蓄積する。
また、触覚提示デバイス制御装置20が生成する触覚制御信号には、音声信号を用いてもよい。例えば入力された音声信号に基づいて駆動する(例えば入力された音声信号を加振信号に変換して振動として出力することが可能な)振動アクチュエータが触覚提示デバイス2に設けられている場合、触覚提示デバイス制御装置20は、個々の触覚刺激部に入力する音声信号(音声の波形を示すデータ)を触覚制御信号(駆動信号)として生成し、出力する。
このように、本実施形態による情報処理システム1aでは、映画館に4Dシート4と触覚提示デバイス2を併用して導入することができ、映画の臨場感をより一層高め、さらなる没入感を観客に与えることを可能とする。また、4Dシステム(具体的には4Dシステム制御装置40)を利用して触覚提示デバイス2の制御を実現することで、4Dシステムが既に構築されている映画館においても容易に触覚提示デバイス2を導入し、システムに組み込むことができる。
続いて、以上説明した4Dシステムの制御および触覚提示デバイス2の制御を実現する制御情報(4D制御情報および「スクリプト」)を生成する生成側について説明する。
(生成側)
生成装置10は、ユーザ(制作者)の操作に従って、4Dシステムの制御情報(4D制御情報)や、触覚提示デバイス2の制御情報を生成する。本実施形態による触覚提示デバイス2の制御情報とは、再生コンテンツ(例えば映画コンテンツ)のタイムコードに対応して制御コマンドを記述したスクリプト(テキストデータ)である。また、生成装置10は、再生コンテンツの音声データ(例えば映画コンテンツの効果音、BGM、またはセリフ音声)から、触覚提示デバイス2で提示する知覚のデータ(触覚データ)を生成することも可能である。生成装置10により生成される触覚データ(生成触覚データ)は、例えば、振動の波形パターンを示すデータである。生成装置10は、再生コンテンツに対応して生成したスクリプトおよび生成触覚データを、生成ファイルに含め、4Dシステム制御装置40に配信する。なお、生成装置10により生成される4D制御情報や、触覚提示デバイス2の制御情報を含む生成ファイルは、有線/無線通信によりネットワークを介して4Dシステム制御装置40に配信されてもよいし、これらのデータが記憶された記憶媒体を4Dシステム制御装置40に設置するようにしてもよい。
また、生成装置10において制御情報を生成する際、ユーザは、ローカルの検証システム50を用いて、体験を確認することも可能である。検証システム50は、制御装置52、触覚提示デバイス54、4Dシート56、および表示装置58を含む。制御装置52は、映画コンテンツを表示装置58で再生すると共に、生成装置10で生成した制御情報に基づいて、4Dシート56や触覚提示デバイス54を駆動し、知覚体験を実際に確認し、適宜、制御情報の修正(フィードバック)を行うことができる。
以上、本実施形態によるシステム構成の一例について説明した。続いて、本システムに含まれる主要な装置の具体的な構成について、以下説明する。
(2−1−2.生成装置10の構成例)
図2は、本実施形態による生成装置10の構成の一例を示すブロック図である。図2に示すように、生成装置10は、制御部100、通信部110、操作入力部120、表示部130、および、記憶部140を有する。
制御部100は、演算処理装置および制御装置として機能し、各種プログラムに従って生成装置10内の動作全般を制御する。制御部100は、例えばCPU(Central Processing Unit)、マイクロプロセッサ等の電子回路によって実現される。また、制御部100は、使用するプログラムや演算パラメータ等を記憶するROM(Read Only Memory)、及び適宜変化するパラメータ等を一時記憶するRAM(Random Access Memory)を含んでいてもよい。
また、制御部100は、4D制御情報生成部101、触覚提示情報生成部102、および、触覚データ生成部103としても機能する。
4D制御情報生成部101は、ユーザ(制作者)による操作入力に基づいて、再生コンテンツに同期するよう4Dシート4を制御するための制御情報(4D制御情報)を生成する(なお生成装置10は、予め再生コンテンツを取り込む)。例えば4D制御情報生成部101は、再生コンテンツのタイムコードに対応付けた4Dシート4の振動の制御信号や、空気、水、香り等の放出制御信号を示す制御コマンドを生成する。また、4D制御情報生成部101は、4D制御情報の生成用画面を表示部130に表示し、操作入力部120により検出されたユーザ操作内容に基づいて、4D制御情報を生成する。本明細書では、4D制御情報の詳細については特に限定せず、例えば既存の4D制御技術を用いるようにしてもよい。
触覚提示情報生成部102は、ユーザ(制作者)による操作入力に基づいて、再生コンテンツに同期するよう触覚提示デバイス2を制御するための制御情報を生成する。具体的には、触覚提示情報生成部102は、再生コンテンツ(例えば映画コンテンツ)のタイムコードに対応付けて制御コマンドを記述したスクリプト(テキストデータ)を生成する。制御コマンドには、振動刺激の知覚位置、振動刺激の波形種類、および、振動刺激の強度情報が含まれる。また、触覚提示情報生成部102は、スクリプトの生成用画面を表示部130に表示し、操作入力部120により検出されたユーザ操作内容に基づいて、スクリプトを生成する。スクリプトの生成用画面は、4D制御情報の生成用画面に追加して表示するようにしてもよい。本システムでは、生成装置10で起動する4D制御情報生成用のアプリケーション(4D制御情報生成部101の機能)において、触覚提示デバイス2の制御情報であるスクリプトの生成機能(触覚提示情報生成部102の機能)を、プラグインとして提供するようにしてもよい。スクリプトの生成機能を、既存の4D制御情報生成アプリケーションのプラグインとして提供する場合の表示画面例については、図5を参照して後述する。
触覚データ生成部103は、再生コンテンツの音声データ(効果音、BGM(背景音楽)、セリフ音声等)から、触覚提示情報生成部102で提示する触覚刺激の知覚パターン(すなわち、触覚データ)を生成する機能を有する(本明細書において、触覚データ生成部103において再生コンテンツの音声データから生成した触覚データを、「生成触覚データ」とも称す)。再生コンテンツの音声データは、例えば映画コンテンツにおいて、オーディオトラックとして提供され得る。効果音の音声データは、映画コンテンツ内で発生する(使用する)タイミングで時間情報と共にトラックが割り当てられていることを想定する。また、BGMは、使用する楽曲ごとにトラックが分かれていて(時間情報を含む)、かつL/Rも分離された音源であることを想定する。なおBGMは、L/Rのみでなく、5.1chスピーカに対してトラックが分かれていてもよい。触覚データ生成部103は、どのオーディオトラックを使用するかをユーザに選択させて、選択されたオーディオトラックから触覚データを生成する。また、セリフ音声も、映画コンテンツ内で発生するタイミングで時間情報と共にトラックが割り当てられていてもよい。
音声データ(オーディオトラック)からの触覚データの生成アルゴリズムについては特に限定しないが、例えば触覚データ生成部103は、音声信号からビート成分を抽出する処理(スペクトル算出、時間微分、ビート判定等)を行い、ビート波形を生成し、生成したビート波形をゲインとして音声信号の少なくとも所定の周波数帯域を増幅させてビート強調音声信号を生成し、触覚データとして用いることが可能である。なお、触覚データ生成部103は、音声信号からビート成分を抽出する際の演算処理において、プロファイルDB143に記憶されている触覚提示デバイス2のプロファイル情報(例えば共振周波数等)を参照して適宜パラメータを調整するようにしてもよい。
また、セリフ音声からの触覚データの生成は、制作者が手動により、セリフの内容や、抑揚、ボリューム等に応じて行うようにしてもよい。
通信部110は、有線または無線により外部装置と接続し、データの送受信を行う。通信部110は、例えば有線/無線LAN(Local Area Network)、またはWi−Fi(登録商標)、Bluetooth(登録商標)、携帯通信網(LTE(Long Term Evolution)、3G(第3世代の移動体通信方式))等によりネットワークと接続し、ネットワークを介して外部装置とデータの送受信を行い得る。
本実施形態による通信部110は、例えば生成した4D制御情報や、スクリプト、生成触覚データを、検証システム50に送信したり、ネットワークを介して4Dシステム制御装置40に送信したりする。
操作入力部120は、ユーザによる操作指示を受付け、その操作内容を制御部100に出力する。操作入力部120は、タッチセンサ、圧力センサ、若しくは近接センサであってもよい。あるいは、操作入力部は、ボタン、スイッチ、およびレバーなど、物理的構成であってもよい。
表示部130は、制御情報生成の画面等を出力する表示装置である。表示部130は、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機EL(Electro Luminescence)ディスプレイなどの表示装置であってもよい。
記憶部140は、制御部100の処理に用いられるプログラムや演算パラメータ等を記憶するROM(Read Only Memory)、および適宜変化するパラメータ等を一時記憶するRAM(Random Access Memory)により実現される。本実施形態による記憶部140は、具体的には、例えば触覚LibDB141、生成触覚データDB142、およびプロファイルDB143を有する。
触覚LibDB141には、予め生成された触覚データライブラリ(振動波形パターン)が格納されている。触覚LibDB141の触覚データライブラリは、映画館側の触覚LibDB221と共通するデータである。本実施形態では、映画館側が予め所有する触覚データライブラリを利用するようスクリプトに記述しておくことで、対象の触覚データを映画館側に送信することなく、映画館側で対象の触覚データライブラリに基づく触覚刺激の提示を実施することができる。これにより、4Dシステム制御装置40への配信データ量の削減を図ることができる。
生成触覚データDB142には、再生コンテンツの音声データに基づいて生成装置10により生成された生成触覚データ(振動の波形パターン)が格納されている。生成触覚データは、スクリプトと共に生成ファイルに含まれ、4Dシステム制御装置40に配信される。
プロファイルDB143には、映画館で利用される触覚提示デバイス2のプロファイル情報が格納されている。具体的には、例えば触覚提示デバイス2の振動アクチュエータの個数とその位置(x,y)、過渡応答特性(1〜5)、および共振周波数(Hz)といった情報が、プロファイル情報として格納される。かかるプロファイル情報に基づいて、例えば触覚提示情報生成部102は、知覚位置の選択画面を生成、表示したり(振動アクチュエータの配置を表示)、触覚提示デバイス2での遅延量を算出してスクリプトの制御コードに時間軸に対するオフセット情報を設定したりできる。また、触覚データ生成部103が音声データから触覚データを生成する際、当該プロファイル情報を参照して適宜パラメータの調整を行うことが可能である。なお、検証システム50の触覚提示デバイス54も、触覚提示デバイス2と同様のプロファイルを有するものを利用することで、より確実に体験確認を行うことができる。
以上、本実施形態による生成装置10の構成について具体的に説明した。なお、生成装置10の構成は、図2に示す例に限定されず、例えば、生成装置10の一部が外部装置に設けられていてもよい。
(2−1−3.触覚提示デバイス制御装置20の構成例)
図3は、本実施形態による触覚提示デバイス制御装置20の構成の一例を示すブロック図である。図3に示すように、触覚提示デバイス制御装置20は、制御部200、通信部210、および、記憶部220を有する。
制御部200は、演算処理装置および制御装置として機能し、各種プログラムに従って触覚提示デバイス制御装置20内の動作全般を制御する。制御部200は、例えばCPU(Central Processing Unit)、マイクロプロセッサ等の電子回路によって実現される。また、制御部200は、使用するプログラムや演算パラメータ等を記憶するROM(Read Only Memory)、及び適宜変化するパラメータ等を一時記憶するRAM(Random Access Memory)を含んでいてもよい。
また、制御部200は、制御信号生成部201および出力制御部202としても機能する。
制御信号生成部201は、4Dシステム制御装置40から受信したコマンドに従って、触覚提示デバイス制御装置20に設けられている1以上の振動アクチュエータを駆動させるため触覚制御信号(個々の振動アクチュエータに入力する制御信号)を生成する。
コマンドには、知覚位置(触覚刺激の提示位置)、知覚強度(触覚刺激の強度)、および、触覚刺激の種類が含まれる。制御信号生成部201は、コマンドで指定されている知覚位置および知覚強度に応じて、当該知覚位置で所定の知覚強度を知覚させるよう、複数の振動アクチュエータを特定し、各振動アクチュエータにおける振動強度を決定(算出)し、複数の振動アクチュエータにそれぞれ出力する各制御信号を生成する。上述したように、本実施形態では、ファントムセンセーションと称される錯覚現象に基づき、複数の振動アクチュエータの出力強度を調整することで、個々の振動アクチュエータの配置位置以外でも、触覚刺激を提示することが可能となる。
具体的には、制御信号生成部201は、指定された知覚位置の近隣に位置する複数の振動アクチュエータと、指定された知覚位置との各位置関係(距離)、および、指定された知覚強度に基づいて、知覚位置で所定の知覚強度を提示するよう、当該複数の振動アクチュエータの各々の出力強度を算出する。また、制御信号生成部201は、生成する制御信号の波形パターンは、コマンドで指定された触覚刺激の種類に従って生成する。コマンドで指定される触覚刺激の種類は、触覚LibDB221に格納された触覚データライブラリ、または、配信され、生成触覚データDB222に格納した生成触覚データが想定される。
なお、本明細書において、「知覚位置」には、知覚位置の移動経路(知覚経路)も含まれ得る。また、「知覚位置」は、身体の表面上のみならず、身体の内部も含まれる。上述したようなファントムセンセーションと称される錯覚現象を用いることで、例えば身体の前面から背面に貫通するような触覚刺激を提示することも可能である。また、本実施形態では、知覚位置に加えて、知覚範囲をコマンドに含めてもよい。知覚範囲は、例えば半径を持つ円や円弧などであってもよい。また、知覚範囲内における強度を一律とするか、同心円で触覚刺激が広がっていくのか(その場合、広がる速さについても)、同心円で外周から触覚刺激が中心に向かっていくのか等の要素指定を行うことも可能である。これらの要素指定は、例えばスクリプトに記述される制御コマンドに含まれる「触覚提示位置」に規定され得る(「原点(x,y)、半径」など)。
出力制御部202は、制御信号生成部201により生成された各触覚制御信号を、触覚提示デバイスI/F212により、触覚提示デバイス2(または、触覚提示デバイス2の振動アクチュエータ)に送出することで、触覚提示デバイス2の振動出力(触覚刺激の提示)制御を行う機能を有する。
通信部210は、有線または無線により外部装置と接続し、データの送受信を行う。通信部210は、例えば有線/無線LAN(Local Area Network)、またはWi−Fi(登録商標)、Bluetooth(登録商標)、携帯通信網(LTE(Long Term Evolution)、3G(第3世代の移動体通信方式))等によりネットワークと接続し、ネットワークを介して外部装置とデータの送受信を行い得る。
本実施形態による通信部210は、システムI/F211および触覚提示デバイスI/F212を有する。システムI/F211は、システムとデータの送受信を行う通信部である。例えばシステムI/F211は、4Dシステムと通信接続し、4Dシステム制御装置40がスクリプトを参照して、シネマシステム30から取得したタイムコードに従って発行したコマンドや、4Dシステム制御装置40が生成装置10から取得した生成ファイルから抽出した生成触覚データを、受信する。また、触覚提示デバイスI/F212は、触覚提示デバイス2とデータの送受信を行う通信部である。例えば触覚提示デバイスI/F212は、触覚提示デバイス2からプロファイル情報を取得したり、制御信号生成部201により生成された触覚制御信号を触覚提示デバイス2に送信したりする。
記憶部220は、制御部200の処理に用いられるプログラムや演算パラメータ等を記憶するROM(Read Only Memory)、および適宜変化するパラメータ等を一時記憶するRAM(Random Access Memory)により実現される。本実施形態による記憶部220は、具体的には、例えば触覚LibDB221、生成触覚データDB222、およびプロファイルDB223を有する。
触覚LibDB221には、予め生成された触覚データライブラリ(振動波形パターン)が格納されている。生成触覚データDB222には、再生コンテンツの音声データに基づいて生成装置10により生成された生成触覚データ(振動波形パターン)が格納されている。生成触覚データは、4Dシステム制御装置40が生成装置10から取得した生成ファイルから抽出し、システムI/F211を介して4Dシステム制御装置40から送信され得る。
プロファイルDB223には、触覚提示デバイス2のプロファイル情報が格納されている。具体的には、例えば触覚提示デバイス2の振動アクチュエータの個数とその位置(x,y)、過渡応答特性(1〜5)、共振周波数(Hz)、周波数特性(dB)、最大入力電圧(Vpp)、処理(遅延)時間(ms)、および、バージョン情報(ID)といった情報が、プロファイル情報として格納される。
振動アクチュエータの個数とは、触覚提示デバイス2に設けられた振動アクチュエータの総数である。また、振動アクチュエータの位置は、触覚提示デバイス2の中心を原点にした座標(x,y)で示してもよい。また、触覚提示デバイス2の前面に設けられた振動アクチュエータの座標系と、裏面に設けられた振動アクチュエータの座標系とを含んでもよい。
過渡応答特性は、触覚提示デバイス2が、静止状態から入力信号に正しく追従するまでの反応度合である(一例として、反応度合を1〜5にレベル分けしてもよい)。また、共振周波数は、振動アクチュエータが効率良く振動する周波数である。また、周波数特性は、共振周波数の加速度を0(dB)とした時の各周波数の加速度である(例えば、「周波数,dB値」の組み合わせで示す)。また、最大入力電圧は、通常使用時に印加してよい最大の電圧値である(例えば信号波形のPeak to Peakの値)。また、処理(遅延)時間は、触覚提示デバイス2側で見込まれている信号処理時間であり、この時間分の遅延が発生する。
ここで、プロファイル情報のデータ構成の一例を下記に示す。ここでは、各振動アクチュエータの位置を、触覚提示デバイス2の中心を原点(0,0)として、x軸方向(-5〜5)、y軸方向(-5〜5)の座標系で示す。
・プロファイル情報のデータ構成例
個数:9
位置:(-4.0,2.5),(0.0,4.0),(4.0,2.5),
(-3.0,-0.5),(0.0,0.0),(3.0,-0.5),
(-3.0,-2.5),(0.0,-4.0),(3.0,-2.5)
過渡:3
共振:100
周波数特性:(10,-10),(50,-6),(100,0)、、、
最大入力電圧:20
処理遅延時間:300
以上、本実施形態による触覚提示デバイス制御装置20の構成について具体的に説明した。なお、触覚提示デバイス制御装置20の構成は、図3に示す例に限定されず、例えば、触覚提示デバイス制御装置20の一部が外部装置に設けられていてもよい。
<2−2.動作処理>
続いて、本実施形態による情報処理システムの動作処理について図面を用いて具体的に説明する。
(2−2−1.生成側の動作処理)
図4は、本実施形態による情報処理システムの生成側における触覚提示デバイス2の制御情報生成処理の全体の流れの一例を示すフローチャートである。
図4に示すように、まず、生成装置10の制御部100は、再生コンテンツの時間軸における触覚提示場所のユーザ(制作者)による選択を受け付ける(ステップS103)。例えば制御部100は、表示部130に、図5に示すような編集画面1300を提示する。編集画面1300には、再生コンテンツの音声データ(L/R)の波形が時間軸上に表示され、さらに、4Dシート用の設定画面1320と、触覚提示デバイス2用の設定画面1330が表示されている。ユーザは、再生コンテンツの音声データの波形や、また、併せて再生コンテンツの映像(不図示)を閲覧しながら、設定画面1320および設定画面1330において、4Dシート4や触覚提示デバイス2で振動等を発生させる時間帯(時間位置の場所)を指定する。設定画面1320および設定画面1330には、再生コンテンツに対応する時間軸が提示され、4Dシート4や触覚提示デバイス2で振動等を発生させる時間帯を指定することが可能となる。例えばユーザは、触覚提示デバイス2用の設定画面1330に表示される時間軸上において、触覚提示デバイス2で振動を発生させたい時間帯1331を、スワイプ操作等で指定する。また、指定した時間帯1331をタップ(またはクリック等)操作により選択すると、図6に示すような、さらに具体的な設定を行うための詳細設定画面1340が表示される。詳細設定画面1340では、次に説明する触覚種類(振動刺激の波形種類)の選択(ステップS109)、触覚提示位置(知覚位置)の設定(ステップS112)、および知覚強度の調整(ステップS115)を行い得る。
触覚種類(振動刺激の波形種類)の選択(ステップS109)では、図6の詳細設定画面1340に示すように、予め生成された触覚ライブラリ(例えば典型的な波形パターン)からの選択の他(選択画面1344参照)、再生コンテンツの音声データから生成した触覚データから選択すること(選択画面1345参照)が可能である。
具体的には、制御部100は、ユーザによる音データ(効果音/BGM/セリフ音声)の選択が行われると(ステップS118)、選択された音データに基づいて、触覚データ生成部103により、触覚データを生成する(ステップS121)。音データの選択は、図6に示す選択画面1345において、各音声(効果音/BGM/セリフ音声)の波形データを囲む矩形により選択し得る。
ユーザは、例えば選択画面1344や選択画面1345から波形データを選択し、ドラッグ&ドロップ操作によって任意の触覚提示位置(または触覚提示経路)上に移動させることで、触覚提示位置(または触覚提示経路)における触覚刺激の種類を設定することができる。設定した触覚刺激の種類は、例えば図6に示す時系列表示画像1342において、時間軸に対応して表示される。
以上説明した再生コンテンツの音声データからの触覚データの生成機能は、プラグイン2として、既存の4Dシステム編集アプリケーションに追加することも可能である。
次に、触覚提示位置(知覚位置)の設定(ステップS112)では、知覚位置(または知覚経路)をユーザが任意に設定し得る。例えば、図6に示すような触覚提示デバイス2の各振動アクチュエータの位置521a〜521iを示す設定画面1341において、知覚位置523や、知覚位置523が移動する経路524を、タップ、クリック、スワイプ等の操作により指定し得る。
次いで、知覚強度の調整(ステップS115)では、知覚位置(または知覚経路)における知覚強度をユーザが任意に設定し得る。設定した知覚強度は、例えば図6に示す時系列表示画像1343において、時間軸に対応して表示される。
続いて、制御部100は、設定した知覚位置、触覚種類、および強度の情報を、検証システム50へ出力する(ステップS124)。検証システム50では、制御装置52において、生成装置10から取得した知覚位置、触覚種類、および強度の情報に基づいて、触覚提示デバイス54の振動アクチュエータに入力する触覚制御信号を生成(算出)し、触覚提示デバイス54に出力する。これにより、設定内容で実際に触覚提示デバイス2を駆動した場合の体感を触覚提示デバイス54で検証することができる。従って、触覚提示デバイス54のプロファイルは触覚提示デバイス2と同様であることが望ましい。
以上説明したステップS103〜S124の処理を、再生コンテンツに関する全ての設計が完了するまで繰り返す(ステップS127/No)。なお、基本的にはS106以降の処理を繰り返し、再生コンテンツの時間軸における触覚提示場所を変更または追加する意思がユーザ操作により明示された場合は、ステップS103に移行するようにしてもよい。
再生コンテンツに関する全ての設計が完了すると(ステップS127/Yes)、触覚提示情報生成部102は、設定した知覚位置、触覚種類、および強度の情報に基づいて、スクリプトを生成する(ステップS130)。具体的には、触覚提示情報生成部102は、再生コンテンツのタイムコード(時間軸)に、制御コマンドを対応付けて記述したテキストデータを生成する。制御コマンドには、知覚位置、触覚種類、および強度の情報が含まれる。制御コマンドは暗号化されてもよい。
生成されたスクリプトは、生成触覚データもある場合にはこれと共に「生成ファイル」に含まれ、再生側(例えば4Dシステム制御装置40)に配信される。また、再生側には、生成装置10で生成された4D制御情報も併せて配信される。
以上説明したスクリプトの生成機能は、プラグイン1として、既存の4Dシステム編集アプリケーションに追加することも可能である。
(2−2−2.再生側の動作処理)
続いて、生成装置10で生成したスクリプトを用いた再生側の動作処理について、図7を参照して説明する。図7は、本実施形態によるスクリプトを用いた再生側における動作処理の全体の流れの一例を示すフローチャートである。ここでは一例として、再生側が映画館であり、再生コンテンツが映画コンテンツの場合を想定する。
図7に示すように、再生制御装置31は、映画コンテンツの再生を開始すると(ステップS153)、映画コンテンツにおける再生位置を示すタイムコードを4Dシステム制御装置40に配信する(ステップS156)。タイムコードの配信は、映画コンテンツの再生が終了するまで繰り返される(ステップS159)。
一方、4Dシステム制御装置40は、4D制御情報と、少なくともスクリプトを含む生成ファイルと、を(生成装置10から)取得する(ステップS162)。
次に、4Dシステム制御装置40は、生成ファイルに生成触覚データが含まれていた場合、当該生成触覚データを触覚提示デバイス制御装置20に送信する(ステップS165)。
次いで、触覚提示デバイス制御装置20は、4Dシステム制御装置40から受信した生成触覚データを保存する(ステップS168)。
次に、再生制御装置31からタイムコードが配信されると、4Dシステム制御装置40は、当該タイムコードに従って、4D制御情報を参照し、4Dシステムを駆動する(ステップS171)。
次いで、4Dシステム制御装置40は、同タイムコードに従って、スクリプトを参照し、コマンド発行処理を行う(ステップS174)。具体的には、4Dシステム制御装置40は、スクリプトの記述から、配信されたタイムコードに対応する制御コマンドを抽出し、コマンド(暗号化されたコマンドであってもよい)として発行する。
4Dシステム制御装置40は、コマンドを触覚提示デバイス制御装置20に発行する(ステップS177)。
4Dシステム制御装置40は、再生制御装置31からのタイムコードの受信が終了するまで、上記ステップS171〜S177の処理を繰り返す(ステップS180)。なおタイムコードの受信が終了した場合、4Dシステム制御装置40は、終了コマンドを触覚提示デバイス制御装置20に発行して処理を終了する。
続いて、触覚提示デバイス制御装置20は、4Dシステム制御装置40から発行されたコマンドが終了コマンド以外の場合(ステップS183/No)、制御信号生成部201により、当該コマンドに基づいて触覚制御信号(振動アクチュエータを駆動する音声信号であってもよい)を生成する(ステップS186)。
次に、触覚提示デバイス制御装置20は、生成した触覚制御信号を触覚提示デバイス2(または触覚提示デバイス2の各振動アクチュエータ)に出力する(ステップS189)。
ここで、制御信号生成部201によるコマンド処理について、図8を参照して具体的に説明する。図8は、本実施形態による触覚提示デバイス2の制御信号生成部201におけるコマンド処理の一例について説明する図である。図8に示すように、コマンドが入力されると、触覚提示デバイス制御装置20の制御信号生成部201は、入力されたコマンドを分析し、波形種類、触覚提示位置、強度、およびオフセット情報(詳細については後述)を抽出する。制御信号生成部201は、コマンドが暗号化されている場合はこれを復号し、波形種類、触覚提示位置、強度、およびオフセット情報を抽出する。
次いで、制御信号生成部201は、波形種類に基づいて、触覚ライブラリまたは生成触覚データを取得する(基本的には対象の波形データの先頭から使用するが、スクリプトの制御コマンドに「何秒目の位置から使用する」といった情報が追加されている場合にはそれに従う)。次に、制御信号生成部201は、取得した触覚データと、触覚提示位置を考慮して、複数の振動アクチュエータの特定と、各振動アクチュエータに入力する触覚制御信号(波形データ)を算出する。算出の際、制御信号生成部201は、触覚提示デバイス2のプロファイル情報(振動アクチュエータの個数・位置、過渡応答特性、共振周波数、周波数特性)を参照する。
次に、制御信号生成部201は、コマンドから抽出した「強度」に基づいて、上記算出した各振動アクチュエータに出力する触覚制御信号の信号振幅の増幅、減衰といったGain調整を行う。なお制御信号生成部201は、信号振幅の増幅時には、プロファイル情報を参照し、「最大入力電圧」以上の出力とならないように演算する。また、信号振幅の減衰時には、所定のレベル以下となった場合は「0」とする演算を行ってもよい。これにより、細かな雑音をカットすることが可能である。
次いで、コマンド分析によりオフセット情報が抽出された場合、制御信号生成部201は、前段の遅延量(コマンド入力からここまでの制御信号生成部201における処理で発生した遅延量)を考慮した上で、オフセット情報に基づいた信号遅延処理を行なう。具体的には、例えばオフセット情報が4sで設定されている場合に、前段の遅延量が3sだった場合、1s経過後に、生成した触覚制御信号を触覚提示デバイス2に出力する。さらには、制御信号生成部201は、後段で発生する「処理時間」分(例えば触覚提示デバイス2とのデータ伝送や、触覚提示デバイス2での処理遅延量)を差し引いた信号遅延を行なってもよい。例えば、オフセット情報が5sで設定されている場合に、前段の遅延量が2sだったが、後段で発生する「処理時間」が2sであるという情報がプロファイル情報から取得された場合、これらを差し引いた残り1s後に、触覚制御信号を触覚提示デバイス2に出力するよう制御してもよい。なおオフセット情報が設定されていない場合は、かかる信号遅延処理はスキップする。
以上により、上記生成装置10により生成されたスクリプトを用いて、また、4Dシステム制御装置40を介し、再生コンテンツと4Dシステムに同期した触覚提示デバイス2の制御を実現することが可能となる。
本実施形態では、スクリプトに記述された制御コマンドに基づいて再生側の触覚提示デバイス制御装置20で触覚制御信号の生成を行い、生成装置10側から受信するデータは、比較的データ容量の少ないテキストデータから成るスクリプトで済むため、生成側と再生側の間におけるデータ配信量を低減することが可能となる。
・補足1…オフセット情報の設定
本実施形態による触覚提示デバイス制御装置20は、4Dシステム制御装置40から発行されたコマンドにオフセット情報が含まれている場合、当該オフセット情報を考慮したタイミングで触覚提示デバイス2の制御(コマンドの実行)を行うことが可能である。
オフセット情報は、生成装置10において、スクリプトを生成する際に設定し得る。例えば触覚提示情報生成部102は、再生側における処理遅延量(例えば、触覚提示デバイス制御装置20の処理遅延量)を考慮して自動で、またはユーザが任意で、時間軸に対するオフセット情報を設定することが可能である。
図9は、本実施形態によるオフセット情報を含むスクリプトの一例を示す図である。図9に示すように、時間軸に対して、触覚提示位置、波形種類、強度、および、オフセット情報を含む制御コマンド(暗号化され得る)が対応付けられているスクリプトを想定する。
4Dシステム制御装置40は、再生制御装置31から発行されるタイムコードに従って、対応付けられたコマンド(オフセット情報を含む)を触覚提示デバイス制御装置20に発行する。触覚提示デバイス制御装置20は、コマンドを受信してから、当該コマンドに含まれるオフセット情報の時間経過後に、当該コマンドを実行(具体的には、当該コマンドに従って生成した触覚制御信号を触覚提示デバイス2に出力)する。これにより、触覚提示デバイス制御装置20で発生し得る処理遅延量を解消することができる。
例えば図9に示す例では、スクリプトに記述されている1段目の制御コマンドは、タイムコード0sのタイミングで触覚提示デバイス制御装置20に発行され、オフセット情報「0(s)」のため、触覚提示デバイス制御装置20は、即時、触覚制御信号の生成と触覚提示デバイス2への出力を行う。一方、図9のスクリプトに記載されている2段目の制御コマンドは、タイムコード1sのタイミングで触覚提示デバイス制御装置20に発行されるが、オフセット情報「2(s)」のため、触覚提示デバイス制御装置20は、当該コマンドを受信してから2s後に、生成した触覚制御信号の触覚提示デバイス2への出力(コマンドの実行)を行う。この場合、再生コンテンツの時間軸上では、2段目の制御コマンドが、実際は「3s」のタイミングで実行されることとなる。このように、オフセット情報「2(s)」の設定により触覚提示デバイス制御装置20の処理時間に余裕が生じ、触覚提示デバイス制御装置20における処理遅延量を解消することが可能となる。以下、図10を参照して具体的に説明する。
図10は、本実施形態によるオフセット情報を考慮した触覚提示デバイス制御装置20におけるコマンド実行処理の全体の流れの一例を示すフローチャートである。
図10に示すように、触覚提示デバイス制御装置20は、4Dシステム制御装置40からコマンドを受信すると(ステップS203)、コマンドに含まれるオフセット情報(n秒)を取得する(ステップS206)。
次に、触覚提示デバイス制御装置20は、オフセット情報(n秒)が、n>0の場合(ステップS209/Yes)、n−1の演算処理(ステップS212)を、nが0以下となるまで1秒単位で繰り返す。
nが0以下となった場合(ステップS209/No)、触覚提示デバイス制御装置20は、コマンドを実行する(ステップS215)。なお、触覚提示デバイス制御装置20は、コマンドに基づく触覚制御信号の生成処理は、コマンド受信後、上記ステップS206〜S212の処理と並列して行い得る。
以上、オフセット情報を考慮したコマンド実行処理について説明した。なお、オフセット情報や、上記ステップS212に示す減算値は、小数点以下の値であってもよい。
また、触覚提示デバイス制御装置20は、コマンドを受信してからの経過時間を観測して、オフセット情報と比較し、実行のタイミングを判断してもよい。
また、オフセット情報を考慮したコマンド実行処理の結果、オフセット情報次第では、コマンド受信の順序とコマンド実行の順序が一致しない場合もある。
・補足2…触覚データ生成時における推奨値の提示
上述した再生コンテンツの音声データからの触覚データの生成(プラグイン2として追加可能な機能)において、触覚データ生成部103は、併せて、同音声データに基づいて、触覚提示位置および強度を自動で選択し、推奨値としてユーザに提示することが可能である。例えば図6の選択画面1345において、効果音、BGM、またはセリフを選択した場合、触覚データ生成部103により、選択した音声データに基づく触覚データ(波形パターン)が生成されると共に、同音声データに基づく触覚提示位置(知覚位置)および強度(知覚強度)も自動で算出され、例えば図6の設定画面1341に推奨値として提示され得る。ユーザは、提示された推奨値を変更することも可能である。
また、触覚提示位置の推奨値の提示において、図6に示すような点形状での移動に限定されず、図11に示すような、線形状(直線または曲線を含み得る)での、縦や横、斜め等の移動(または回動)を提示することも可能である。なお、このような線形状の移動は、ユーザが任意で知覚位置を設定する際にも同様に入力可能である。
触覚提示位置の推奨値としては、例えば選択された音声データ(例えば効果音やBGM等のSE)がステレオデータで音源が移動している場合、音源の移動方向に合った触覚提示位置を提示し得る。また、強度の推奨値としては、例えば選択された音声データのボリューム(音量)に合った強度を提示し得る。また、ボリューム(音量)に合わせて強度を推奨する際、触覚提示情報生成部102は、所定値以下の小さい音量は反映させないようにしてもよい。
このように、音声データに基づいて知覚位置等の推奨値を自動で提示することで、制作者の処理工数を削減することが出来る。
また、触覚データ生成部103は、音声データから生成した触覚データが既存の触覚Libのデータに近しい場合、触覚Libのデータを推奨するようにしてもよい。制作者が把握していない触覚Libの選択などを行なうことで、配信するデータ量の削減が可能となる。
・補足3…AMP(アンプ)の設置場所について
触覚提示デバイス2が触覚提示デバイス制御装置20と有線接続する場合、触覚提示デバイス制御装置20側にAMP(アンプ)を設ける(一か所に設置する)ことが好ましい。
また、触覚提示デバイス2が触覚提示デバイス制御装置20と無線接続する場合、増幅したデータを無線配信することは負荷が大きいため、AMP(アンプ)やバッテリーは、触覚提示デバイス2側に設けることが好ましい。
また、触覚提示デバイス2が4Dシート4と有線接続し、制御信号が触覚提示デバイス制御装置20から4Dシステム制御装置40および4Dシート4を介して触覚提示デバイス2に出力される場合(この場合、4Dシステム制御装置40に触覚提示デバイス制御装置20の機能を追加してもよい)、AMPは、4Dシート4側に設けることが好ましい。
また、触覚提示デバイス2が4Dシート4と無線接続し、制御信号が触覚提示デバイス制御装置20から4Dシステム制御装置40および4Dシート4を介して触覚提示デバイス2に出力される場合(この場合、4Dシステム制御装置40に触覚提示デバイス制御装置20の機能を追加してもよい)、増幅したデータを無線配信することは負荷が大きいため、AMP(アンプ)やバッテリーは、触覚提示デバイス2側に設けることが好ましい。
・補足4…触覚提示デバイス2と触覚提示デバイス制御装置20との間のデータ伝送について
触覚提示デバイス2と触覚提示デバイス制御装置20との間のデータ伝送では、振動アクチュエータ数分のch(例えば触覚提示デバイス2に12個の振動アクチュエータが設けられている場合は、12ch)を設けるようにしてもよい。
また、ch数を減らすために、パラレル/シリアル変換を用いてデータ伝送を行うようにしてもよい。これにより、複数の振動アクチュエータに対しても、データ伝送は1chで行うことが可能となる。しかしながら、この場合、触覚提示デバイス2側でシリアル/パラレル変換分の遅延が発生する。具体的には、触覚提示デバイス制御装置20において、パラレル/シリアル変換出力を行って触覚提示デバイス2とシリアル通信を行う際、パラレル通信の場合よりも通信速度を速くする必要があるが、最短の例を想定してみても、遅延が生じ得る。すなわち、例えば4本のパラレルデータを1本のシリアルデータに変換する場合、通信速度は4倍以上に速くすることが望ましいが、例えば通信速度4倍、および変換遅延0といった最短の例を想定してみても、4本のパラレルデータをシリアル変換して送信すると、最短でも1.5Packet分(変換するデータサイズ1Packetと称した場合)の遅延が発生し得る。また、パラレルデータの本数が増えると最短でも2.0Packet分の遅延に漸近していく。そこで、本実施形態では、このように発生し得る遅延については、「別途遅延」を設定し、予めオフセット情報で対応し、遅延量を解消することが可能である。
また、触覚提示デバイス2で発生する遅延量は、上記パラレル/シリアル変換による遅延の他、例えば触覚提示デバイス制御装置20と触覚提示デバイス2のデータ伝送にパケット通信を用いた場合に、連続データをパケット化することによる処理遅延、伝送遅延が発生し得る。この場合も、「別途遅延」を設定し、予めオフセット情報で対応するようにしてもよい。
また、パラレル/シリアル変換をデジタルデータで行ない、AMPを触覚提示デバイス2側に設けるようにしてもよい。
また、触覚提示デバイス2に伝送する触覚制御信号(触覚波形データ)を周波数シフトし、各chにおいて周波数多重通信を行ってもよい(この場合、AMPは触覚提示デバイス2側に設けられる)。
<2−3.変形例>
続いて、本実施形態の変形例について説明する。
(2−3−1.4Dシステムを介さないシステム構築例)
上述した実施形態では、図1に示すように、4Dシステム制御装置40が再生制御装置31からタイムコードを取得し、スクリプトを参照して、触覚提示デバイス制御装置20に対してタイムコードに応じて適宜コマンドを発行していたが、本開示はこれに限定されず、4Dシステムを介さないシステムを構築することも可能である。例えば、4Dシステムが導入されていない映画館で触覚提示デバイス2を利用する場合や、4Dシステムは導入されているが4Dシステムとは関わらずに触覚提示デバイス2の制御システムを構築する場合等が想定される。
(構成)
図12は、第1の実施形態の第1の変形例による4Dシステムを介さないシステムの構築例について説明する図である。図12に示す情報処理システム1bは、生成装置10Aおよび触覚提示デバイス制御装置20Aを含む。
生成装置10Aは、図2に示す生成装置10の構成のうち、4D制御情報生成部101を有さない構成とする。触覚提示デバイス制御装置20Aは、生成装置10Aにより生成された、少なくともスクリプトを含む生成ファイルを取得する。次いで、触覚提示デバイス制御装置20Aは、再生制御装置31から再生コンテンツのタイムコードを取得すると、スクリプトを参照して適宜コマンドを実行する。具体的には、触覚提示デバイス制御装置20Aは、再生制御装置31から受信したタイムコードに基づいて、スクリプトから、該当する制御コマンドを抽出し(暗号化されている場合はこれを復号し)、当該制御コマンドに従って触覚制御信号を生成して触覚提示デバイス2(または触覚提示デバイス2の各振動アクチュエータ)に出力する。
また、図13に、本変形例による4Dシステムを有さないシステム(情報処理システム1b’)の構築例について説明する図を示す。図13に示す例では、生成側の構成の図示は省略しているが、この場合も、情報処理システム1b’は、生成装置10Aおよび触覚提示デバイス制御装置20Aを含む。
(動作処理)
生成装置10Aでのスクリプトの生成処理は、図4を参照して説明した上記第1の実施形態と同様であるため、ここでの詳細は省略する。
図14は、本変形例による情報処理システム1bの再生側における動作処理の全体の流れの一例を示すフローチャートである。図14に示すように、再生制御装置31は、映画コンテンツの再生を開始すると(ステップS303)、映画コンテンツにおける再生位置を示すタイムコードを触覚提示デバイス制御装置20Aに配信する(ステップS306)。タイムコードの配信は、映画コンテンツの再生が終了するまで繰り返される(ステップS309)。
一方、触覚提示デバイス制御装置20Aは、少なくともスクリプトを含む生成ファイルを(生成装置10から)取得する(ステップS312)。触覚提示デバイス制御装置20Aは、スクリプトに記述されている制御コードが暗号化されている場合は、これを復号する。
次に、触覚提示デバイス制御装置20Aは、再生制御装置31からタイムコードが配信されると、当該タイムコードに従って、スクリプトを参照し、コマンド実行処理を行う(ステップS315)。具体的には、まず、触覚提示デバイス制御装置20Aは、スクリプトの記述から、配信されたタイムコードに対応する時間軸の制御コマンドを抽出する。
次いで、触覚提示デバイス制御装置20Aは、抽出した制御コマンドに基づいて、触覚制御信号(振動アクチュエータを駆動する音声信号であってもよい)を生成する(ステップS318)。
次に、触覚提示デバイス制御装置20Aは、生成した触覚制御信号を触覚提示デバイス2(または触覚提示デバイス2の各振動アクチュエータ)に出力する(ステップS321)。
そして、触覚提示デバイス制御装置20Aは、再生制御装置31からのタイムコードの受信が終了するまで、上記ステップS315〜S318に示す処理を繰り返す(ステップS324)。
(効果)
以上説明したように、本変形例では、4Dシステムを介さずに、スクリプトとタイムコードに基づいて、触覚提示デバイス制御装置20Aにより、触覚提示デバイス2における触覚刺激の提示を制御することが可能となる。これにより、4Dシステムを備えていない映画館等にも導入することが可能となり、導入先が広がる。より多くの映画館等に導入出来ることでシステム単価が下がり、更に展開先が多くなることも期待できる。
また、再生側においてスクリプトに基づいて触覚制御信号を生成するシステム構成とすることで、生成側からはスクリプト(テキストデータ)の配信で済むため、データ量を削減することができる。
(2−3−2.各触覚提示デバイス2のプロファイル情報に応じた触覚制御信号の配信)
再生側で利用される触覚提示デバイス2のプロファイル情報(デバイスのタイプ)は全て同じでなくともよい。すなわち、例えば映画館において、全員が共通の触覚提示デバイス2を必ずしも着用しなくともよく、各自が持ち込んだ触覚提示デバイス2が混在していてもよい。この場合、各触覚提示デバイス2のプロファイル情報が異なることが想定されるが、本変形例による触覚提示デバイス制御装置20は、図15に示すように、各触覚提示デバイス2からプロファイル情報を取得し、各プロファイル情報を参照して各触覚提示デバイス2にそれぞれ対応した触覚制御信号を生成し、送出することが可能となる。図15は、本実施形態の第2の変形例による各触覚提示デバイス2のプロファイル情報に応じた触覚制御信号の配信について説明する図である。
図15に示すように、各触覚提示デバイス2(2a〜2e)は、それぞれ異なる(タイプの)プロファイル情報(Pr−A〜Pr−E)を有する。例えば、振動アクチュエータの数・位置や、過渡応答特性、共振周波数、周波数特性、最大入力電圧、または処理(遅延)時間等が異なることが想定される。
触覚提示デバイス制御装置20は、各触覚提示デバイス2のプロファイル情報に基づいて、個々の触覚提示デバイス2に対し、提供可能な最大値の触覚制御信号を配信し得る。
なお、各触覚提示デバイス2がID(タイプ情報等)を有する場合、触覚提示デバイス制御装置20は、各触覚提示デバイス2から取得したIDに基づいて、当該IDとプロファイル情報が対応付けられたデータベース(触覚提示デバイス制御装置20が有していてもよいし、ネットワーク上にあってもよい)から、プロファイル情報を取得するようにしてもよい。
これにより、利用者の好みにあった触覚提示デバイス2を利用することが可能となる。例えば利用者は、映画館で貸し出される共通の触覚提示デバイス2ではなく、自分の体格に合った触覚提示デバイス2を購入して利用することができる。体格に合った触覚提示デバイス2が着用されることで、触覚提示デバイス2の触覚刺激提示の体感性能を十二分に発揮させることが出来る。
また、人によっては振動がくすぐったく感じるため振動アクチュエータの配置を避けたい部位(腹部、背中、脇など)があったり、心臓ペースメーカーを使用しているため安全な位置に振動アクチュエータが配置されている必要があったりといった事情により、共通の触覚提示デバイス2では体感鑑賞が出来ない人もいる。このような人達でも、各自にカスタイマイズされた触覚提示デバイス2を映画館に持ち込んで利用することで、体感鑑賞が出来るようになる。
このように、触覚提示デバイス制御装置20において、各触覚提示デバイス2のプロファイルの相違に対応できるようにすることで、生成側(生成装置10)では、標準タイプのプロファイルに基づいて制御コマンドを記述すればよく、各映画館独自で新型の触覚提示デバイス2の導入もし易くなる。
また、映画館においてリバイバル上映を行う際も、生成側で新たにスクリプトを生成する必要なく、触覚提示デバイス制御装置20は、現在映画館で利用している触覚提示デバイス2のプロファイルを反映させて触覚制御信号を生成することで対応することが可能となる。
なお、生成側では、標準的なプロファイル、または所定のプロファイルを参照して制御コマンドを生成してもよいし、タイプ別のプロファイルを用いて生成してもよい。タイプ別のプロファイルを用いて生成する場合、生成装置10は、制御コマンドをプロファイルタイプ別に記述するようにしてもよい。ここで、プロファイルタイプ別に記述したスクリプトの一例を図16に示す。
図16に示すように、プロファイルタイプ別に、触覚提示位置(x,y座標)、波形種類、および強度が記述される。また、オフセット情報はプロファイルタイプに共通して設定し、プロファイル毎の遅延は触覚提示デバイス制御装置20側で管理するようにしてもよい。触覚提示デバイス制御装置20は、各触覚提示デバイス2から取得したIDに基づいて、それぞれに対応するプロファイルタイプの制御コマンドを用いて触覚制御信号を生成する。なお対応するプロファイルタイプがない場合、触覚提示デバイス制御装置20は、所定の標準的なプロファイルタイプ(例えばPr−A)を使用するようにしてもよい。
(2−3−3.子供に適した触覚刺激提示の実現)
本実施形態では、触覚提示デバイス2を子供が着用している場合、触覚提示の強度を調整し、子供もより安全に楽しめるようにすることが可能である。
具体的には、例えば個々の触覚提示デバイス2において、触覚提示デバイス2のサイズに基づいて(または設定に基づいて)子供/大人用を判断し、各振動アクチュエータからの触覚提示における強度を調整するようにしてもよい。すなわち、触覚提示デバイス制御装置20から送信された共通の触覚制御信号(触覚提示デバイス制御装置20側で一律増幅された触覚制御信号)を、各子供用の触覚提示デバイス2において、信号減衰した上で振動アクチュエータを駆動する。若しくは、触覚提示デバイス制御装置20から送信された共通の触覚制御信号を、個々の触覚提示デバイス2において、それぞれ信号増幅率を変化させて増幅させた上で(子供用であれば信号増幅率は低く、大人用では信号増幅率を高く)、振動アクチュエータを駆動する。
なお、(触覚提示デバイス制御装置20側で一律増幅された触覚制御信号を)子供用の触覚提示デバイス2側で信号減衰する方法として、例えば、振動アクチュエータと抵抗を直列に配置させる構成とすることで、信号を分圧させることが可能である。図17に、振動アクチュエータと抵抗を直列に配置させた構成の一例を示す。図17に示すように、子供用の触覚提示デバイス2では、振動アクチュエータと抵抗を直列に配置することで、同じ電圧でも、子供用の触覚提示デバイス2では、大人用に比べて、アクチュエータに印加される電圧を半分とすることができる(大人用と子供用で同じ振動アクチュエータを用いることが可能)。
以上により、本変形例によれば、身体への影響を考えて大人用の触覚提示デバイス2では年齢制限により体感鑑賞が出来なかった子供でも、子供が着用する触覚提示デバイス2では強度調整(信号減衰等)を行うことで、体感鑑賞が可能となる。したがって、アニメなどの映画コンテンツも触覚提示デバイス2の利用対象映画となり、興行的に有益となる。また、図17に示す構成のように、強度を調整する仕組みを簡易化することで、安価に子供用の触覚提示デバイス2を製作することが出来る。
(2−3−4.家庭用システム構築例)
上述した再生側のシステムは、上述したような映画館での映画の視聴に限定されず、例えば、家庭においてユーザが触覚提示デバイス2を着用して、TV放送やインターネットで配信されるコンテンツ(ドラマ、映画、ドキュメンタリー等)を視聴している場合に、コンテンツの再生と同期して触覚提示デバイス2により触覚刺激提示を行い、映画館以外でも臨場感のある視聴体験を提供することを可能とする。
以下、家庭に適用する際のシステムの構築例について図18および図19を参照して説明する。
図18は、TV放送またはインターネット配信によりコンテンツを視聴する際に触覚刺激提示を行う例について説明する図である。この場合、少なくともスクリプトを含む生成ファイルは、図18に示すように、TV放送やストリーミング配信を介して、コンテンツと共に、放送局60やストリーミングサーバ66から配信される。スクリプトの配信は、コンテンツの再生前(番組の放送開始前等)に行われるようにしてもよい。
表示機能を有するテレビ装置62やPC68は、コンテンツを再生すると共に、再生するコンテンツの再生位置を示すタイムコードに基づいて、スクリプトを参照し、対応するコマンドを逐次触覚提示デバイス制御装置20に送信する(テレビ装置62またはPC68は、取得したスクリプトに従ってコマンドを配信する機能を有する)。また、テレビ装置62またはPC68は、生成ファイルに生成触覚データも含まれている場合は、これを予め触覚提示デバイス制御装置20に送信する。
触覚提示デバイス制御装置20は、テレビ装置62またはPC68から受信したコマンドに従って、触覚制御信号を生成し、触覚提示デバイス2(または触覚提示デバイス2に設けられた各振動アクチュエータ)に送信する。コマンドには、上述した実施形態と同様に、触覚刺激の提示位置、強度、触覚刺激波形の種類、およびオフセット情報等が含まれる。また、コマンドが暗号化されている場合、触覚提示デバイス制御装置20はこれを復号して触覚制御信号の生成を行う。また、触覚提示デバイス制御装置20は、予め生成された触覚ライブラリ(提示波形パターン)が蓄積された触覚LibDB221を有し、テレビ装置62またはPC68から配信されたコマンドに従って触覚制御信号を生成する際に適宜利用する。
また、本変形例では、TV放送やインターネット配信されるコンテンツに限らず、Blu−ray(登録商標)ディスクやDVD等の記録媒体を用いてユーザがコンテンツを視聴する際にも、触覚提示デバイス2を再生コンテンツに同期させて触覚刺激提示を行うよう制御することが可能である。以下、図19を参照して詳述する。
図19は、本変形例による記録媒体に記録されたコンテンツを視聴する際に触覚刺激提示を行う例について説明する図である。記録媒体7には、映像データ(コンテンツ)および、少なくともスクリプトを含む生成ファイルが記録されている。再生装置64は、記録媒体7からコンテンツと生成ファイルを読み込む。
表示機能を有する再生装置64は、コンテンツを再生すると共に、再生するコンテンツの再生位置を示すタイムコードに基づいて、スクリプトを参照し、対応するコマンドを逐次触覚提示デバイス制御装置20に送信する。また、再生装置64は、生成ファイルに生成触覚データも含まれている場合は、これを予め触覚提示デバイス制御装置20に送信する。
触覚提示デバイス制御装置20は、再生装置64から受信したコマンドに従って、触覚制御信号を生成し、触覚提示デバイス2(または触覚提示デバイス2に設けられた各振動アクチュエータ)に送信する。コマンドには、上述した実施形態と同様に、触覚刺激の提示位置、強度、触覚刺激波形の種類、およびオフセット情報等が含まれる。また、コマンドが暗号化されている場合、触覚提示デバイス制御装置20はこれを復号して触覚制御信号の生成を行う。また、触覚提示デバイス制御装置20は、予め生成された触覚ライブラリ(提示波形パターン)が蓄積された触覚LibDB221を有し、再生装置64から配信されたコマンドに従って触覚制御信号を生成する際に適宜利用する。なお、記録媒体(メディア媒体)を用いる例としては、図19に示す構成の他、触覚提示デバイス制御装置20に、スクリプト用Discをセットし、触覚提示デバイス制御装置20がスクリプトからコマンドを実行する構成も考え得る。すなわち、予めコンテンツ用とスクリプト用の2枚組Discを用意し、コンテンツ用Discは(汎用の)再生装置にセットし、スクリプト用Discは触覚提示デバイス制御装置20にセットする。再生装置は、コンテンツ用Discからコンテンツを再生すると共に、再生した音声データを触覚提示デバイス制御装置20に入力する。触覚提示デバイス制御装置20は、入力された音声データからタイミング抽出し、スクリプトからコマンドを実行する。ここで、当該スクリプトは、時間情報ではなく、音声データのパターンに対応付けて制御コマンドが記述されている。
以上説明したように、家庭において、TV放送やインターネットで配信されるコンテンツを視聴する際、TV放送等でスクリプトも配信することで、最新のコンテンツに対応する触覚刺激を触覚提示デバイス2によりユーザに体感させることができる。
また、記憶媒体に記憶されたコンテンツを視聴する際にも、記憶媒体からスクリプトを読み出すことで、記憶媒体に記憶されたコンテンツに対応する触覚刺激を触覚提示デバイス2によりユーザに体感させることができる。ユーザは、好きな時に好きなシーンのみを繰り返し体感することも可能となる。
なお、TV放送やインターネットで配信されるコンテンツを視聴する際の動作処理は、図18に示す例に限定されない。図18に示す例では、放送局60またはストリーミングサーバ66から家庭の再生装置(テレビ装置62、PC68)にスクリプトを配信し、再生装置においてコマンドを生成、配信する例について説明したが、本変形例はこれに限定されず、放送局60またはストリーミングサーバ66が、スクリプトを参照し、再生するコンテンツのタイムコードに応じたコマンドを配信するようにしてもよい。
家庭の再生装置(テレビ装置62、PC68)は、受信したコマンドを触覚提示デバイス制御装置20に出力し、触覚提示デバイス制御装置20において、コマンドに従って触覚制御信号の生成を行い、触覚制御信号を触覚提示デバイス2に送信する。
この際、生成側から取得した生成ファイルに生成触覚データが含まれていれば、放送局60またはストリーミングサーバ66は、予め(コンテンツの配信前に)再生装置(テレビ装置62、PC68)にTV放送を介して生成触覚データを送信する。再生装置(テレビ装置62、PC68)は、受信した生成触覚データを触覚提示デバイス制御装置20に送信する。
このように、放送局側で再生コンテンツに同期して対応するコマンドの配信を行い、触覚提示デバイス制御装置20でコマンドに従った触覚制御信号の生成を行うことで、家庭用の再生装置(テレビ装置62、PC68)にコマンド生成機能を追加することなく、映画館のシステムで用いた触覚提示デバイス制御装置20を利用することが可能となる。
(2−3−5.インターネットゲームにおける触覚提示システム)
続いて、本実施形態の第5の変形例として、インターネットゲームにおける触覚提示システムについて説明する。
図20は、本実施形態の第5の変形例によるインターネットゲームにおける触覚提示システムについて説明する図である。ここでは、ユーザが触覚提示デバイス2を着用し、表示装置84に表示されるゲーム画面を視聴しながら、コントローラ86等によりゲームの操作を行っている場合を想定する。操作情報の入力はコントローラ86の操作に限定されず、音声入力や、ユーザの動きに基づくジェスチャ入力等であってもよい。家庭用のゲーム再生装置82は、表示装置84にゲーム画面を表示する制御を行う。また、表示装置84に設けられたスピーカや周辺のスピーカからゲーム音声を出力する制御も行う。ここでは、インターネット上のゲームサーバ80からゲーム情報を取得してゲーム再生装置82により出力する場合を想定する。また、ゲーム再生装置82は、触覚提示デバイスの制御ユニットを備え、触覚提示デバイス2に入力する、触覚制御信号の生成を実行し得る。
ゲーム再生装置82は、ユーザ操作によりゲーム内で何らかのアクションが発生した場合(若しくは、ユーザ操作によらずとも、ゲーム内で何らかのアクションが発生した場合)、その発生アクションをゲームサーバ80に通知する。
ゲームサーバ80は、ゲームに対応する触覚提示制御について記述されたスクリプトを有し、ゲーム内で発生したアクション(再生コンテンツ)に対応するコマンドを抽出し、ゲーム再生装置82に出力する。ここで、図21に、本変形例によるアクション毎に制御コマンドが記述されたスクリプトの一例を示す。図21に示すように、1つのスクリプトファイルに複数のアクションが定義されている。また、アクション毎にコマンド群が定義される。1つのアクションは数百(ms)〜数(s)で定義される。各アクションの最後の波形種類の出力が完了した時点で、そのアクションに対応する触覚刺激の提示が終了する。また、アクションに対応したコマンドは、ゲーム再生装置82に一括送信されるのが好ましい(インターネットの通信揺らぎ対策のため)。また、触覚刺激の強度は、ゲーム再生装置82側で任意に調整できるようにしてもよい(図21に示す「強度:*」)。
そして、ゲーム再生装置82は、受信したコマンドに従って触覚制御信号を生成し、触覚提示デバイス2に出力する。これにより、本変形例では、ゲーム内で発生した爆発等のアクションに応じた触覚刺激が触覚提示デバイス2により提示され、ユーザは、ゲーム内で発生したアクションを実際に体感し、臨場感を得ることができる。
なお、ゲーム再生装置82は、触覚ライブラリのデータベースを予め備え、また、ゲーム開始前に、予めゲームサーバ80から当該ゲームで利用する生成触覚データを受信(ダウンロード)するようにしてもよい。
また、触覚提示デバイス2のプロファイルは、ゲーム開始前にゲーム再生装置82にアップロードされる。
また、ここでは、ゲーム再生装置82は、据え置き型の専用装置を想定しているが、本変形例はこれに限定されず、例えばスマートフォンやPCなど、表示装置84と一体化した、汎用性のあるゲーム再生装置82であってもよい。
また、ここでは一例としてインターネットゲーム配信の場合について説明したが、本実施形態はこれに限定されず、ゲームサーバ80の機能をゲーム再生装置82で実行させることで、ローカルでゲームを行う場合にも適用することが可能となる。また、本実施形態は、インターネットを介した対戦型のゲーム配信の場合にも適用可能である。この場合、一方のプレイヤーのアクションに起因して、他方のプレイヤーの触覚提示が与えられることも想定される。すなわち、ユーザへの触覚提示は、ユーザ自身が起こすアクションやゲーム進行に起因するものに限定されず、他のユーザ起因によるものも想定される。
以上により、ゲームを行っている場合にも、よりリアルに体感出来るシステムを提供することが出来る。また、インタラクティブなシステムを提供することにより、ユーザの体感価値を更に増すことができる。
(2−3−6.光通信によるタイムコード配信方式)
図1、図12、および図13を用いて説明した、映画館へ適用した各システム(情報処理システム1、1b、1b’)では、シネマシステム30から有線/無線通信接続により配信されるタイムコードを用いて、シネマシステム30に触覚提示デバイス制御装置20を同期させていたが、本開示はこれに限定されない。
例えば図22に示すように、プロジェクタ32がスクリーンSに投影したタイムコードを触覚提示デバイス制御装置20Bにより読み取って、タイムコードを取得する方式であってもよい。
触覚提示デバイス制御装置20Bは、スクリーンSに投影された映像を観測し(可視光またはIRカメラ等により継続的に撮像)、観測結果から同期成分(ここでは、タイムコード)を抽出する。具体的には、例えばプロジェクタ32が、投影する映像に、再生制御装置31から送信されたタイムコードを示す点滅を可視光またはIR光を用いて重畳させる。
なお、光通信によるタイムコード配信は、スクリーンSからの反射光を用いた手法に限定されず、プロジェクタ32からの直接光を触覚提示デバイス制御装置20Bが観測してタイムコードを抽出するようにしてもよい。
また、スクリーンSに投影される同期信号は、スクリーンS全面ではなく、限られた一部であってもよい。
このように、本変形例では、タイムコードの配信に光通信を用いることで、シネマシステム30と触覚提示デバイス制御装置20とを独立して(シネマシステム30またはシネマシステム30と接続した4Dシステム制御装置40と、有線/無線接続させる必要なく)設置することが可能となる。
(2−3−7.光通信によるコマンド配信方式)
また、触覚提示デバイス制御装置20へのコマンド配信は、図1に示すような、4Dシステム制御装置40からの有線/無線接続によるものに限定されず、例えば図23に示すように、シネマシステム30のプロジェクタ32がスクリーンSに投影したコマンドを、各触覚提示デバイス2Bにより読み取る方式であってもよい。
図23に示すように、触覚提示デバイス2Bは、スクリーンSに投影された映像を観測部22(可視光またはIRカメラ等)により観測し、観測結果からトリガ成分(ここでは、コマンド)を抽出する。具体的には、例えばプロジェクタ32が、投影する映像に、再生制御装置31から送信されたコマンドを示す点滅を可視光またはIR光を用いて重畳させる。
触覚提示デバイス2Bは、触覚制御信号を生成する制御ユニット24を有する。制御ユニット24は、観測結果から抽出したコマンドに従って、各振動アクチュエータに入力する触覚制御信号を生成し、振動アクチュエータの制御を行う。すなわち、触覚提示デバイス2Bは、コマンド信号の受信(受光)をトリガとして、コマンド指定の触覚波形で触覚提示し得る。
なお、光通信によるコマンド配信は、スクリーンSからの反射光を用いた手法に限定されず、プロジェクタ32からの直接光を触覚提示デバイス2Bが観測してコマンドを抽出するようにしてもよい。
また、スクリーンSに投影されるトリガ信号は、スクリーンS全面ではなく、限られた一部であってもよい。
このように、本変形例では、コマンド配信を無線化し、触覚提示デバイス2Bに、触覚制御信号を生成する機能を備えることで、触覚提示デバイス2B自体がワイヤレスとなり(この場合、触覚提示デバイス2Bはバッテリー駆動)、映画館へのシステム導入が容易となる(各座席に配線する必要がなくなるため)。また、触覚提示デバイス2B毎のプロファイルの違いを、制御ユニット24において、標準プロファイルとの差分処理等を実行するようにすることで、観客自身の触覚提示デバイス2Bを持ち込むことも容易となる。
また触覚提示デバイス2Bをワイヤレスとすることで、ゲームやアトラクションにおいて、仮想空間内等を自由視点で動き回るWalkthroughシステムに本変形例による触覚提示デバイス2Bを利用することも可能となる。
なお応用例として、スクリーンSに投影するコマンドは、コンテンツ(映像)の投影とは別の光源を使用して触覚提示デバイス制御装置20により出力するようにしてもよい。図24は、光通信によるコマンド配信を投影とは別の光源で行う方式について説明する図である。
図24に示すように、触覚提示デバイス制御装置20Cが、再生制御装置31からタイムコードを受信すると、スクリプトを参照してコマンドを抽出し、スクリーンSの一部や付近に設けられた発光部34を制御し、当該コマンドを示す光を出力する制御を行う。
触覚提示デバイス2Bは、発光部から発光される光を観測部22(可視光またはIRカメラ等)により観測し、観測結果からトリガ成分(ここでは、コマンド)を抽出する。具体的には、例えば触覚提示デバイス制御装置20Cは、コマンドを示す点滅を可視光またはIR光を用いて発光部34から出力させる。
触覚提示デバイス2Bは、触覚制御信号を生成する制御ユニット24を有する。制御ユニット24は、観測結果から抽出したコマンドに従って、各振動アクチュエータに入力する触覚制御信号を生成し、振動アクチュエータの制御を行う。すなわち、触覚提示デバイス2Bは、コマンド信号の受信(受光)をトリガとして、コマンド指定の触覚波形で触覚提示し得る。
<<3.第2の実施形態(生成側で触覚制御信号を作成)>>
続いて、生成側で触覚制御信号を作成する場合について、図25〜図33を参照して説明する。上述した第1の実施形態では、再生側において、生成側で生成されたスクリプトを参照して抽出したコマンドに従って、触覚提示デバイス2の各振動アクチュエータに入力する触覚制御信号を生成していたが、本開示はこれに限定されない。本開示の第2の実施形態では、再生コンテンツに応じて各振動アクチュエータに入力する触覚制御信号を生成側で予め生成し、これを含む生成ファイルを、再生側に出力する場合について説明する。
本実施形態によれば、触覚提示デバイス制御装置20mでの演算処理(触覚制御信号の生成処理)の負担が軽減されるため、例えば、映画館に導入する触覚提示デバイス制御装置20mのスペック(処理性能)を抑えることが可能となる。
<3−1.構成例>
(全体構成)
図25は、第2の実施形態による情報処理システム1cの全体構成の一例を示す図である。図25に示すように、本実施形態による情報処理システム1cは、生成装置10m、触覚提示デバイス制御装置20m、シネマシステム30、4Dシステム制御装置40、および、検証システム50を含む。本実施形態では、触覚提示デバイス2を映画館で用いる場合を想定する。
本実施形態は、図1を参照して説明した第1の実施形態と異なり、生成装置10mが触覚制御信号ファイルを生成し、これを4Dシステム制御装置40に配信する。触覚制御信号ファイルは、各振動アクチュエータにそれぞれ入力する振動波形パターンのデータである。すなわち、生成装置10mは、今回のコンテンツ(例えば、上映する映画)に使用される触覚データ(知覚させたい波形パターン)に基づいて、(触覚提示デバイス2のプロファイルに基づき)触覚提示位置、強度、波形種類などを考慮して演算を行い、触覚提示デバイス2の各振動アクチュエータにそれぞれ入力する触覚制御信号を生成する。
また、生成装置10mは、再生コンテンツの時間軸に対応したスクリプトも生成し、4Dシステム制御装置40に配信する。スクリプトには、時間軸に対応する触覚制御信号ファイル名が記述されている。
4Dシステム制御装置40は、映画開始前に、触覚制御信号ファイルを触覚提示デバイス制御装置20mに送信する。触覚提示デバイス制御装置20mは、触覚制御信号ファイルDB224に触覚制御信号ファイルを蓄積する。
そして、4Dシステム制御装置40は、再生制御装置31から配信されたタイムコードに従って、スクリプトの記述に基づいて、対応する触覚制御信号ファイル名を示すコマンドを、触覚提示デバイス制御装置20mに出力する。触覚提示デバイス制御装置20mは、コマンドで指定された触覚制御信号ファイルを、触覚提示デバイス2に出力する。この際、触覚提示デバイス制御装置20mは、触覚提示デバイス2から取得したプロファイルに応じて多少の調整を行った上で触覚制御信号を触覚提示デバイス2に出力するようにしてもよい。触覚提示デバイス制御装置20mの構成は、第1の実施形態において図3を参照して説明した各構成のうち、触覚制御信号生成機能(制御信号生成部201)を有さない構成としてもよい。
(装置構成)
次に、図26を参照して本実施形態による生成装置10mの構成について説明する。図26は、本実施形態による生成装置10mの構成の一例を示すブロック図である。図26に示すように、生成装置10mは、制御部100m、通信部110、操作入力部120、表示部130、および、記憶部140を有する。図2を参照して説明した同符号の構成については、ここでの詳細な説明は省略する。
本実施形態による制御部100mは、4D制御情報生成部101、触覚提示情報生成部102、触覚データ生成部103、および触覚制御信号生成部104としても機能する。
触覚制御信号生成部104は、再生時に触覚提示デバイス2に設けられた各振動アクチュエータを駆動させるための触覚制御信号(個々の振動アクチュエータに入力する制御信号)を生成する。具体的には、触覚制御信号生成部104は、ユーザ(制作者)による操作入力に従って、指定された触覚提示位置で、指定された触覚刺激種類により、指定された強度で触覚刺激を提示するよう各振動アクチュエータを駆動する触覚制御信号(例えば音声信号データ)を生成する。なお、触覚制御信号は、振動アクチュエータ分(ch数分)生成されるが、これらはシーン毎に独立して生成される。すなわち、各振動アクチュエータに入力する触覚制御信号は、コンテンツ全編を通して1のデータとして生成されるのではなく、そのコンテンツにおいて触覚提示デバイス2を振動させるシーン毎に独立したデータ(ファイル)として生成される。
触覚提示情報生成部102には、再生コンテンツの時間軸に応じて、触覚制御信号生成部104で生成された触覚制御信号のファイル名を記述したスクリプトを生成する。なお、スクリプト生成時の操作画面は、第1の実施形態で説明した図5〜図6を適用することが可能である。また、触覚刺激種類は、第1の実施形態と同様に、ユーザに選択された再生コンテンツの効果音、BGM、またはセリフの音声データに基づいて触覚データ生成部103により生成された生成触覚データ(波形パターン)、または、触覚LibDB141に蓄積された、予め生成された(汎用的な)触覚ライブラリ(波形パターン)から選択され得る。また、第1の実施形態と同様に、触覚提示位置および強度を自動で選択し、推奨値としてユーザに提示することが可能である。例えば効果音、BGM、またはセリフの音声データに基づいて触覚データ(波形パターン)を生成した際、同音声データに基づく触覚提示位置(知覚位置)および強度(知覚強度)を自動で算出し、画面上に推奨値として提示してもよい。また、ユーザは、提示された推奨値を変更することも可能である。
<3−2.動作処理>
次に、本実施形態による情報処理システム1cの動作処理について、図27および図28を参照して説明する。
(3−2−1.生成側の動作処理)
図27は、本実施形態による情報処理システムの生成側における動作処理の全体の流れの一例を示すフローチャートである。
図27に示すステップS103〜S127の処理は、図4を参照して説明した同符号に示す処理と同様である。
次に、生成装置10mの触覚制御信号生成部104は、ユーザにより指定された触覚提示位置、触覚刺激種類、および強度に基づいて、各振動アクチュエータを駆動する触覚制御信号(例えば音声信号データ)のファイルを生成する(ステップS128)。
そして、触覚提示情報生成部102は、再生コンテンツのタイムコード(時間軸)に対応付けて、触覚制御信号のファイル名を(コマンドとして)記述したスクリプト(テキストデータ)を生成する(ステップS131)。なお触覚提示情報生成部102は、スクリプトの生成において、第1の実施形態と同様に、触覚提示デバイス2のプロファイル(処理遅延量等)を参照し、適宜、オフセット情報をコマンドに含めるようにしてもよい。また、オフセット情報の設定は、第1の実施形態と同様に、再生側における処理遅延量(例えば、触覚提示デバイス制御装置20の処理遅延量)を考慮して自動で、またはユーザが任意で設定し得る。また、本実施形態による生成装置10mは、第1の実施形態と同様に、プロファイルタイプ別に触覚制御信号を生成し、プロファイルタイプ別の制御コードを記述してもよいし、標準的なプロファイルタイプに基づいて触覚制御信号を生成してもよい。標準的なプロファイルタイプに基づいて触覚制御信号が生成された場合、再生側において、プロファイルタイプに応じて(標準的なプロファイルタイプとの相違に応じて)、適宜、触覚制御信号を調整して出力するようにしてもよい。
生成されたスクリプトは、触覚制御信号と共に「生成ファイル」に含まれ、再生側(例えば4Dシステム制御装置40)に配信される。また、再生側(例えば4Dシステム制御装置40)には、生成装置10mで生成された4D制御情報も併せて配信される。
以上説明したスクリプトおよび触覚制御信号の生成機能は、プラグイン1として、既存の4Dシステム編集アプリケーションに追加することも可能である。
(3−2−2.再生側の動作処理)
続いて、以上説明したように生成した生成ファイルが配信される再生側の動作処理について図28を参照して説明する。図28は、本実施形態による情報処理システムの再生側における動作処理の全体の流れの一例を示すフローチャートである。
図28に示す各処理のうち、図7を参照して説明した処理と同様の処理については、同じ符号で示し、ここでの詳細な説明を省略する。ここでは、第1の実施形態による再生側の動作処理と相違する点について、主に説明する。
まず、4Dシステム制御装置40は、4D制御情報と、スクリプトおよび触覚制御信号ファイルを含む生成ファイルと、を取得する(ステップS163)。
次に、4Dシステム制御装置40は、生成ファイルに含まれる触覚制御信号のファイルを触覚提示デバイス制御装置20mに送信する(ステップS166)。
次いで、触覚提示デバイス制御装置20mは、4Dシステム制御装置40から受信した触覚制御信号ファイルを保存する(ステップS169)。
次に、再生制御装置31からタイムコードが配信されると、4Dシステム制御装置40は、当該タイムコードに従って、4D制御情報を参照し、4Dシステムを駆動する(ステップS171)。
また、4Dシステム制御装置40は、同タイムコードに従って、スクリプトを参照し、コマンド発行処理を行う(ステップS174)。具体的には、4Dシステム制御装置40は、スクリプトの記述から、配信されたタイムコードに対応する触覚制御信号ファイル名(暗号化されたデータであってもよい)を抽出し、コマンドとして発行する。ここで、図29に、触覚制御信号ファイル名がコマンドとして記述されたスクリプトの一例を示す。図29に示すように、再生コンテンツの時間軸に応じて出力すべきコマンドとして、触覚制御信号ファイル名が記述されている。また、触覚制御信号ファイル名で示される触覚制御信号は、各振動アクチュエータに対応するファイルである。図29に示す例では、触覚提示デバイス2に設けられた振動アクチュエータ1〜4(4つの振動アクチュエータ)に出力することを前提されている。例えば、スクリプトの1段目では、振動アクチュエータ1(Act1)に入力する触覚制御信号ファイル1−a、振動アクチュエータ2(Act2)に入力する触覚制御信号ファイル2−a、振動アクチュエータ3(Act3)に入力する触覚制御信号ファイル3−a、および振動アクチュエータ4(Act4)に入力する触覚制御信号ファイル4−aが示されている。
なお、これらのファイル名は暗号化してもよい。
次いで、4Dシステム制御装置40は、タイムコードに従ってコマンドを触覚提示デバイス制御装置20mに発行する(ステップS177)。
次に、触覚提示デバイス制御装置20mは、4Dシステム制御装置40から発行されたコマンドが終了コマンド以外の場合(ステップS183/No)、当該コマンドで指定されている触覚制御信号ファイルを触覚制御信号ファイルDB224から読み出し(ステップS187)、読み出した触覚制御信号ファイルを触覚提示デバイス2(または触覚提示デバイス2の各振動アクチュエータ)に出力する(ステップS189)。また、触覚提示デバイス制御装置20mは、4Dシステム制御装置40から配信されたコマンドの内容が暗号化されている場合は、これを復号して触覚制御信号ファイル名を抽出し、触覚制御信号ファイルDB224から読み出す。また、コマンドにオフセット情報が含まれている場合、第1の実施形態と同様に、これを考慮して触覚制御信号の出力制御を行う。
ここで、図30を参照して、図29に示すスクリプトに従って触覚提示デバイス2の各振動アクチュエータ(Act1〜Act4)の制御(触覚刺激提示)を行った場合について説明する。例えば、再生コンテンツ0.0sのタイムコードに応じて発行されるコマンド1(図29に示すコマンドの1段目)の内容に従い、触覚提示デバイス制御装置20mは、振動アクチュエータ1(Act1)で触覚制御信号ファイル1−aを再生し、振動アクチュエータ2(Act2)で触覚制御信号ファイル2−aを再生し、振動アクチュエータ3(Act3)で触覚制御信号ファイル3−aを再生し、振動アクチュエータ4(Act4)で触覚制御信号ファイル4−aを再生させる。再生時間は、各触覚制御信号ファイルによって異なり得る。
次に、再生コンテンツ0.8sのタイムコードに応じて発行されるコマンド2(図29に示すコマンドの2段目)の内容に従い、触覚提示デバイス制御装置20mは、振動アクチュエータ2(Act2)で触覚制御信号ファイル2−bを再生させる。
続いて、再生コンテンツ1.8sのタイムコードに応じて発行されるコマンド3(図29に示すコマンドの3段目)の内容に従い、触覚提示デバイス制御装置20mは、振動アクチュエータ2(Act2)で触覚制御信号ファイル2−cを再生し、振動アクチュエータ4(Act4)で触覚制御信号ファイル4−bを再生させる。
このように、触覚提示デバイス制御装置20mは、コマンドに従って、触覚制御信号を対応する振動アクチュエータに入力して再生(触覚刺激提示)させる。
以上、第2の実施形態による情報処理システムについて具体的に説明した。なお、異なるファイル名であっても触覚制御信号として同じデータがある場合(例えば触覚制御信号ファイル1−aと触覚制御信号ファイル1−dが同じ音声信号データの場合)、生成装置10mは、スクリプト生成時に触覚制御信号ファイル1−dの箇所で触覚制御信号ファイル1−aを用いるよう記述することで、転送データサイズを小さくすることが可能である。この場合、例えば図29に示すコマンドの9段目「7.0s:1-d,4-d」を、「7.0s:1-a,4-d」と記述する。
また、生成ファイルに含まれる触覚制御信号ファイルを4Dシステム制御装置40に保存し、4Dシステム制御装置40が、タイムコードに従ってコマンドを参照し、対応する触覚制御信号ファイルを、触覚提示デバイス2に送信するよう制御してもよい。すなわち、図25に示す触覚提示デバイス制御装置20mの機能を4Dシステム制御装置40に搭載することで、再生側のシステムの簡素化することが可能となる。
続いて、本実施形態の変形例についていくつか説明する。
<3−3.変形例>
(3−3−1.4Dシステムを介さないシステム構築例)
上述した実施形態では、図25に示すように、4Dシステム制御装置40が再生制御装置31からタイムコードを取得し、スクリプトを参照して、触覚提示デバイス制御装置20mに対してタイムコードに応じて適宜コマンドを発行していたが、本開示はこれに限定されず、4Dシステムを介さないシステムを構築することも可能である。例えば、4Dシステムが導入されていない映画館で触覚提示デバイス2を利用する場合や、4Dシステムは導入されているが4Dシステムとは関わらずに触覚提示デバイス2の制御システムを構築する場合等が想定される。
(構成)
図31は、第2の実施形態の第1の変形例による4Dシステムを介さない情報処理システム1dの構築例について説明する図である。図31に示す情報処理システム1dは、生成装置10nおよび触覚提示デバイス制御装置20nを含む。
生成装置10nは、図26に示す生成装置10mの構成のうち、4D制御情報生成部101を有さない構成とする。触覚提示デバイス制御装置20nは、生成装置10nにより生成された、スクリプトと触覚制御信号ファイルを含む生成ファイルを取得する。次いで、触覚提示デバイス制御装置20nは、再生制御装置31から再生コンテンツのタイムコードを取得すると、スクリプトを参照して適宜コマンドを実行する。具体的には、触覚提示デバイス制御装置20nは、再生制御装置31から受信したタイムコードに基づいて、スクリプトから、該当するコマンドを抽出し(暗号化されている場合はこれを復号し)、当該コマンドで指定されている触覚制御信号を、触覚提示デバイス2(または触覚提示デバイス2の各振動アクチュエータ)に出力する。触覚制御信号ファイルDB224には、生成ファイルから抽出された触覚制御信号ファイルが格納される。
図31に示す例では、4Dシステムが適用されている映画館において、4Dシステムと関わらずに、触覚提示デバイス制御装置20nが、再生コンテンツと同期させて触覚提示デバイス2を制御する場合について説明しているが、本システムは、4Dシステムが導入されていない映画館にも当然に適用することが可能である。
(動作処理)
生成装置10nでのスクリプトの生成処理は、図27を参照して説明した上記第2の実施形態と同様であるため、ここでの詳細は省略する。
図32は、本変形例による情報処理システム1dの再生側における動作処理の全体の流れの一例を示すフローチャートである。図32に示す各処理のうち、図14を参照して説明した処理と同様の処理については、同じ符号で示し、ここでの詳細な説明を省略する。ここでは、再生側で触覚制御信号を生成する第1の実施形態の第1の変形例による再生側の動作処理と相違する点について、主に説明する。
図32に示すように、触覚提示デバイス制御装置20nは、スクリプトと触覚制御信号ファイルを含む生成ファイルを(生成装置10nから)取得する(ステップS313)。触覚制御信号ファイルは、触覚制御信号ファイルDB224に保存する。
次に、再生制御装置31から再生コンテンツのタイムコードが配信されると、触覚提示デバイス制御装置20nは、当該タイムコードに従って、スクリプトを参照し、コマンド実行処理を行う(ステップS315)。
次いで、触覚提示デバイス制御装置20nは、抽出したコマンドで指定されている触覚制御信号ファイル(振動アクチュエータを駆動する音声信号であってもよい)を触覚制御信号ファイルDB224から読み出す(ステップS319)。
次に、触覚提示デバイス制御装置20nは、読み出した触覚制御信号を触覚提示デバイス2(または触覚提示デバイス2の各振動アクチュエータ)に出力する(ステップS322)。
以上説明したように、本変形例では、4Dシステムを介さずに、触覚提示デバイス制御装置20nにより、スクリプトに基づいて、タイムコードに対応する触覚制御信号を読み出し、触覚提示デバイス2に出力して触覚刺激の提示制御を行うことが可能となる。これにより、4Dシステムを備えていない映画館等にも導入することが可能となり、導入先が広がる。より多くの映画館等に導入出来ることでシステム単価が下がり、更に展開先が多くなることも期待できる。
また、再生側においてスクリプトに基づいて触覚制御信号を読み出すシステム構成とすることで、再生側における処理負担を軽減することができる。
(3−3−2.家庭用システム構築例)
上述した再生側のシステムは、上述したような映画館での映画の視聴に限定されず、第1の実施形態による変形例と同様に、例えば、家庭においてユーザが触覚提示デバイス2を着用して、TV放送やインターネットで配信されるコンテンツ(ドラマ、映画、ドキュメンタリー等)を視聴している場合、または、インターネットゲームをプレイしている場合に、コンテンツの再生やゲーム内で発生するアクションと同期して、触覚提示デバイス2により触覚刺激提示を行い、映画館以外でも臨場感のある視聴体験を提供することを可能とする。
以下、家庭に適用する際のシステムの構築例について、図33を参照して説明する。
図33は、本変形例による、TV放送によりコンテンツを視聴する際に触覚刺激提示を行う例について説明する図である。図33に示すように、触覚提示デバイス制御装置20pは、放送局60から、予め(コンテンツの配信前に)触覚制御信号を受信(ダウンロード)する。触覚制御信号のダウンロードは、TV放送により、テレビ装置62を介して行われてもよい。
このように、生成側で、コンテンツ(放送番組)に対応する触覚制御信号を生成し、生成ファイルに含めて放送局60に配信する場合、放送局60は、データ容量の大きい触覚制御信号を、TV放送等を介して事前に家庭側に送信しておくことで、TV放送等の通信帯域に影響を受けずに大容量のデータ配信を行うことが可能となる。
そして、放送開始時は、放送局60は、再生するコンテンツ(放送する番組)のタイムコードに応じて、スクリプトを参照し、逐次、(タイムコードに応じて再生する触覚制御信号ファイルを示す)コマンドを各家庭(テレビ装置62)に配信する。テレビ装置62は、TV放送にて受信したコンテンツ(放送番組)を、ディスプレイに表示すると共に、配信されたコマンドを触覚提示デバイス制御装置20pに出力する。
触覚提示デバイス制御装置20pは、コマンドで指定されている触覚制御信号を、触覚制御信号ファイルDB224から読み出し、触覚提示デバイス2に出力する。
以上により、第2の実施形態においても、TV放送視聴時に、触覚提示デバイス2による触覚刺激の提示を同期させることができ、家庭においても、より臨場感溢れる視聴を体験することができる。
なお、ここでは一例として、TV放送番組(映画、ドラマ等)を視聴する場合について説明したが、本変形例はこれに限定されず、第1の実施形態と同様にインターネット配信の視聴時や、インターネットゲームのプレイ時にも適用することができる。
また、本実施形態を、図25、図31に示すような映画館に適用する場合において、タイムコードの配信を、再生制御装置31や4Dシステム制御装置40との有線/無線接続を用いた配信に限らず、上記第1の実施形態に変形例で説明したような、光通信によるタイムコード配信方式(図22参照)を利用することも可能である。
また、触覚制御信号ファイル名を指定するコマンドの配信も、上記第1の実施形態に変形例で説明したような、光通信によるコマンド配信方式(図23、図24参照)を利用することも可能である。
<<4.第3の実施形態>>
続いて、図34から図37を参照して、ユーザによる触覚提示(生成触覚データ)の編集機能の変形例について説明する。図34から図37は、第3の実施形態による編集画面の一例を示す図である。
先に説明した実施形態においては、ユーザは、図5に示すような編集画面1300に含まれる触覚提示デバイス2用の設定画面1330に対して指定を行うことにより、触覚提示デバイス2で振動等を発生させる時間帯を指定することができる。また、ユーザは、設定画面1330において、指定した時間帯1331をタップ(またはクリック等)操作により選択すると、図6に示す詳細設定画面1340が表示され、当該詳細設定画面1340において、触覚種類(振動刺激の波形種類)の選択、触覚提示位置(知覚位置)の設定及び知覚強度の調整を行うことができる。しかしながら、当該実施形態においては、これらの選択、設定及び調整は、予め生成された触覚ライブラリ(例えば典型的な波形パターン)や触覚データから選択することで行われ(すなわち、制約がある)、ユーザが自由に、細かく設定、調整できるものではなかった。そこで、本実施形態においては、振動刺激の波形、触覚提示位置の設定及び知覚強度の調整等をユーザの意図に沿って細かく、自由に編集することを可能にする編集機能について説明する。なお、以下に説明する編集機能は、プラグインとして、既存の4Dシステム編集アプリケーションに追加することも可能である。
まず、本実施形態においては、例えば、生成装置10の制御部100は、表示部130に、図34に示すような編集画面600を提示して、再生コンテンツの時間軸における、ユーザ(制作者)による、触覚提示デバイス2用の触覚(Haptic Device)の編集を受け付ける。編集画面600には、再生コンテンツの音声データ(L/R)(SoundL/R)の波形が時間軸上に表示され、さらに、触覚提示デバイス2用の設定画面620、640等が表示されている。ユーザは、再生コンテンツの音声データの波形や、また、併せて再生コンテンツの映像(不図示)を閲覧しながら、設定画面620、640において、例えば、触覚提示デバイス2で与える振動等を個別に編集することができる。なお、本実施形態においては、細かな設定(波形等)の違いにより、触覚A、触覚Bというように触覚を個別に分けて編集し、再生コンテンツのトラックにそれぞれ割り当てることができる。例えば、図34においては、個別に分けられた触覚ごとに設定画面が設けられており、各設定画面に対して操作を行うことにより、各触覚を編集することができる。また、本実施形態においては、触覚の数は特に限定されるものではない。
例えば、ユーザは、触覚提示デバイス2の触覚Aの設定画面620に表示される、再生コンテンツに対応する時間軸上において、触覚提示デバイス2で振動を発生させたい時間帯622をスワイプ操作等で指定する。図34に示す例では、触覚Aを時間帯ごとに3つの触覚、触覚A−1、触覚A−2、触覚A−3として分けて扱っている。なお、本実施形態においては、1つの触覚を分けることに限定されるものではなく、また、分ける数についても限定されるものではない(例えば触覚A−1から触覚A−99まで99個に分けてもよい)。
例えば、ユーザは、触覚提示デバイス2の触覚Aの設定画面620に表示される時間軸上において、触覚提示デバイス2による触覚Aの振動強度(知覚強度)(Vol.)を、波形624をスワイプ操作により入力することにより指定する。また、例えば、ユーザは、触覚提示デバイス2の触覚Aの設定画面620に表示される時間軸上において、触覚提示デバイス2による触覚Aの振動ピッチ(例えば、繰り返しの周期)(知覚間隔)(Pitch)を、波形626をスワイプ操作により入力することにより指定する。
例えば、ユーザは、設定画面620に表示される時間軸上において、各時間帯622における触覚Aの触覚提示位置を、(触覚提示デバイス2が装着される人物の)身体中心を原点とする3次元の直交座標系における、X軸上の座標、Y軸上の座標及びZ軸上の座標の3つの座標を個別に入力することにより指定する。より具体的には、ユーザは、設定画面620に表示される、X軸、Y軸及びZ軸にそれぞれ対応する時系列表示画面628において、カーソルを移動させることで、触覚Aの触覚提示位置のX軸上の座標、Y軸上の座標及びZ軸上の座標の3つの座標を個別に入力することができる。この際、ユーザは、触覚提示位置の各座標を、決まった幅(例えば±1)の範囲で任意に調整することができる。そして、上記幅を、触覚提示デバイス制御装置20内で具体的な触覚提示位置のレンジに変換し、変換された幅に基づき、入力された座標が具体的な触覚提示位置の座標に変換されることとなる。従って、本実施形態においては、具体的な触覚提示位置のレンジは、生成側と再生側とでプロファイル情報として予め共有されることとなる。
なお、上述したように、X軸上の座標、Y軸上の座標及びZ軸上の座標を個別に入力して触覚提示位置を設定する場合、直感的に触覚提示位置をユーザが把握し難いことがある。このような場合、別途、別のツール等を利用して、触覚提示位置の座標のデータを生成し、生成した座標データを編集機能において読み込ませることにより、図34に示すような時系列表示画面628を表示させて、触覚提示位置を設定してもよい。また、本実施形態においては、触覚提示位置の設定は、例えばプラグイン機能等を利用した別の入力方法を用いることができるが、この詳細については後述する。
さらに、例えば、ユーザは、触覚提示デバイス2の触覚Aの設定画面620に表示される時間軸上において、触覚提示デバイス2による触覚Aの再生速度(Speed)(例えば、触覚Aを、再生コンテンツの再生に対して、2倍速、0.5倍速で再生する)を、波形630をスワイプ操作により入力することにより指定する。また、例えば、ユーザは、触覚提示デバイス2の触覚Aの設定画面620に表示される時間軸上において、触覚提示デバイス2による触覚Aの振動等の周波数(Frequency)(知覚周波数)を、波形632をスワイプ操作により入力することにより指定する。なお、本実施形態においては、例えば、上述の再生速度を変化させても、触覚Aの振動の周波数は、指定された周波数に固定されるものとする。さらに、例えば、ユーザは、触覚提示デバイス2の触覚Aの設定画面620に表示される時間軸上において、触覚提示デバイス2による触覚Aのオフセット情報(Offset)(遅延時間)を、波形634をスワイプ操作により入力することにより指定する。なお、本実施形態においては、オフセット情報の代わりに、例えば、再生コンテンツ上のこの部分と同期させる等のタイミングを指定してもよく、編集項目は図34に示される項目に限定されるものではない。
本実施形態においては、このようにして、触覚Aについての、振動強度、振動ピッチ、触覚提示位置、再生速度、周波数、オフセット情報等を編集することができる。さらに、他の触覚(例えば、触覚B)についても、触覚Aと同様に編集することができる。なお、本実施形態においては、編集項目については、振動強度、振動ピッチ、触覚提示位置、再生速度、周波数、オフセット情報に限定されるものではなく、さらに他の項目を編集してもよい。さらに、本編集機能においては、ドラッグ&ドロップ操作によって任意の時系列表示画面上から他の時系列表示画面上に波形を移動させることで、各項目を容易に編集することも可能である。
また、本実施形態においては、上述した編集機能により編集された生成触覚データは、4Dシステム用ファイル内に集約される。生成触覚データは、4Dシステム用ファイルのフォーマットと統一され、4Dシステム用ファイルと一元化されることにより、4Dシステム用ファイルとともに、タイムコードに従った時間軸に沿ってコマンドを発行するための情報として使用される。例えば、触覚AのX軸座標は、触覚提示デバイス制御装置20内においては、所定の時間軸上での触覚提示位置のX軸座標として演算処理されていくこととなる。
ところで、上述したように再生コンテンツ上の時間軸上において触覚の編集を行い、編集に基づき生成触覚データを生成し、生成触覚データを用いて上記タイムコードに従ってコマンドを発行した場合、触覚提示デバイス制御装置20内での演算遅延分に対応できないことがある。例えば、触覚提示デバイス制御装置20内で遅延量0.5sの演算遅延が発生することを前提とした場合、10.0sのタイミングで触覚提示したい際には、生成側において9.5sのタイミングで触覚提示するようなコマンドを生成しないと、触覚提示デバイス制御装置20内の演算遅延により10.0sのタイミングで触覚提示することができない。
従って、上述のような演算遅延を見込んだコマンドの生成のためには、生成側と再生側とで、触覚提示デバイス制御装置20の演算遅延による遅延量を共有することが求められる。そこで、本実施形態においては、生成触覚データに対して、あらかじめ再生側の触覚提示デバイス制御装置20の演算遅延による遅延量のフィードバックをかけて、遅延量に応じたデータに変換する。また、本実施形態においては、再生側の触覚提示デバイス制御装置20や触覚提示デバイス2のキャリブレーションを行う際に、生成側の制御装置52や触覚提示デバイス54との差分である遅延量を算出し、再生側で、生成触覚データを、遅延量のフィードバックをかけて、遅延量に応じたデータに変換してもよい。
また、本実施形態においては、触覚提示位置の設定は、例えばプラグイン機能等によって、図35及び図36に示すような編集画面700、710を表示させることにより行ってもよい。図35及び図36には、身体モデル上に重畳された直交座標系が表示されている。詳細には、図35には、平面直交座標系(Z−Y座標系)が表示され、当該平面直交座標系は、身体モデルの上半身の身体中心を原点とし、Z軸の正方向が人体の全面(胸側)に対応し、Y軸の正方向が人体の頭側に対応する。また、図36には、三次元直交座標系(X−Y−Z座標系)が表示され、当該三次元直交座標系は、身体モデルの上半身の身体中心を原点とし、X軸の正方向が人体の左側に対応し、Y軸の正方向が人体の頭側に対応し、Z軸の正方向が人体の全面(胸側)に対応し、Y軸の正方向が人体の頭側に対応する。
例えば、ユーザは、編集画面700、710上に示されるマーカ702、712をタップ、クリック、スワイプ等の操作により直交座標系上を移動させることにより、触覚提示位置又は経路を設定することができる。そして、生成装置10の制御部100は、このようなに入力された触覚提示位置又は経路を、X軸上の座標、Y軸上の座標及びZ軸上の座標の3つの座標に変換することにより、触覚提示位置を設定することができる。このような編集画面700、710によれば、身体モデル上に重畳された直交座標系を用いることにより、触覚提示位置をユーザが直感的に把握することができる。
さらに、本実施形態においては、触覚提示位置の範囲を、例えばプラグイン機能等により図37に示すような編集画面730を表示させることにより行ってもよい。例えば、編集画面730には、身体中心を原点とするX−Y座標系が表示されており、ユーザは、編集画面730上に示されるマーカ732をタップ、クリック、スワイプ等の操作により、その大きさを変えつつ、座標上を移動させることにより、触覚提示位置及び経路だけでなく、触覚提示する範囲やその経時変化も設定することができる。
<<5.まとめ>>
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本技術はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
例えば、上述した生成装置10、触覚提示デバイス制御装置20、または4Dシステム制御装置40等に内蔵されるCPU、ROM、およびRAM等のハードウェアに、生成装置10、触覚提示デバイス制御装置20、または4Dシステム制御装置40等の機能を発揮させるためのコンピュータプログラムも作成可能である。また、当該コンピュータプログラムを記憶させたコンピュータ読み取り可能な記憶媒体も提供される。
以上、本実施形態による動作処理の一例を説明した。なお、参照した図面に示す動作処理は一例であって、本開示は参照した図面に示す例に限定されない。例えば、本開示は、参照した図面に示すステップの順序に限定されない。少なくともいずれかのステップが並列に処理されてもよいし、逆の順番で処理されてもよい。また、参照した図面に示す全ての処理が必ずしも実行されてなくともよい。また、参照した図面に示す全ての処理が必ずしも単一の装置で行われなくともよい。
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
なお、本技術は以下のような構成も取ることができる。
(1)
再生コンテンツの時間情報と、触覚提示デバイスの制御コマンドとを対応付けたスクリプトを生成する制御部を備え、
前記制御コマンドは、
前記触覚提示デバイスにおいて触覚刺激を知覚させる知覚位置を示す位置情報と、前記触覚刺激の種類を指定する触覚刺激種類情報を含む、情報処理装置。
(2)
前記制御コマンドは、知覚強度を示す知覚強度情報もさらに含む、前記(1)に記載の情報処理装置。
(3)
前記触覚刺激種類情報は、
予め用意された触覚データライブラリの種類、または、前記再生コンテンツから生成した生成触覚データの種類を指定する情報である、前記(1)または(2)に記載の情報処理装置。
(4)
前記制御部は、
前記再生コンテンツに含まれる効果音、BGM、または、セリフの音声データから、前記生成触覚データを生成する、前記(3)に記載の情報処理装置。
(5)
前記触覚データライブラリ、および、前記生成触覚データは、前記触覚提示デバイスで提示する振動の波形データである、前記(3)または(4)に記載の情報処理装置。
(6)
前記制御部は、
前記触覚提示デバイスに設けられる1以上の触覚刺激部(アクチュエータ)の配置を示す配置表示画面を表示し、前記配置表示画面に対するユーザによる知覚位置の指定を受け付けると共に、
触覚刺激種類の選択画面を表示し、前記指定された知覚位置で提示する触覚刺激の種類指定を前記選択画面により受け付ける、前記(1)〜(5)のいずれか1項に記載の情報処理装置。
(7)
前記制御部は、
前記再生コンテンツに含まれる効果音、BGM、または、セリフの音声データから、前記生成触覚データを生成すると共に、
前記生成した生成触覚データの知覚位置および知覚強度を、前記再生コンテンツに含まれる効果音、BGM、または、セリフの音声データに基づいて推奨する、前記(3)に記載の情報処理装置。
(8)
前記制御コマンドは、前記再生コンテンツの時間情報に対するオフセット情報をさらに含む、前記(1)〜(6)のいずれか1項に記載の情報処理装置。
(9)
前記制御部は、前記制御コマンドを再生側で実行する際に想定される処理遅延量に応じて、前記オフセット情報を設定する、前記(8)に記載の情報処理装置。
(10)
前記再生コンテンツは、映像データである、前記(1)〜(9)のいずれか1項に記載の情報処理装置。
(11)
前記再生コンテンツは、ゲーム内で発生するアクションであって、
前記スクリプトは、アクション毎に、当該アクションの時間情報と、前記触覚提示デバイスの制御コマンドとが対応付けられる、前記(1)〜(9)のいずれか1項に記載の情報処理装置。
(12)
前記制御部は、
前記再生コンテンツの時間情報と、前記触覚提示デバイスのタイプ別の前記制御コマンドを対応付けたスクリプトを生成する、前記(1)〜(11)のいずれか1項に記載の情報処理装置。
(13)
プロセッサが、
再生コンテンツの時間情報と、触覚提示デバイスの制御コマンドとを対応付けたスクリプトを生成することを含み、
前記制御コマンドは、
前記触覚提示デバイスにおいて触覚刺激を知覚させる知覚位置を示す位置情報と、前記触覚刺激の種類を指定する触覚刺激種類情報を含む、情報処理方法。
(14)
コンピュータを、
再生コンテンツの時間情報と、触覚提示デバイスの制御コマンドとを対応付けたスクリプトを生成する制御部として機能させ、
前記制御コマンドは、
前記触覚提示デバイスにおいて触覚刺激を知覚させる知覚位置を示す位置情報と、前記触覚刺激の種類を指定する触覚刺激種類情報を含む、プログラム。
(15)
再生コンテンツの時間情報と、触覚提示デバイスの制御コマンドとを対応付けたスクリプトに基づいた、前記再生コンテンツの再生位置を示すタイムコードに対応するコマンドに従って、前記触覚提示デバイスに入力する触覚制御信号を生成する制御部を備え、
前記コマンドは、
前記触覚提示デバイスにおいて触覚刺激を知覚させる知覚位置を示す位置情報と、前記触覚刺激の種類を指定する触覚刺激種類情報を含み、
前記制御部は、
前記触覚提示デバイスに設けられる1以上の触覚刺激部の配置に応じて、前記知覚位置で前記指定された種類の触覚刺激を提示するための各触覚刺激部への触覚制御信号を生成し、前記触覚提示デバイスに出力する、情報処理装置。
(16)
前記制御部は、
前記生成した触覚制御信号を、前記制御コマンドに含まれるオフセット情報に応じたタイミングで、前記触覚提示デバイスに出力する、前記(15)に記載の情報処理装置。
(17)
前記制御部は、
外部装置から受信した前記タイムコードに応じて、前記スクリプトを参照し、前記コマンドを抽出する、前記(15)または(16)に記載の情報処理装置。
(18)
前記情報処理装置は、
前記タイムコードに対応する前記コマンドを外部装置から受信する、前記(15)または(16)に記載の情報処理装置。
(19)
前記触覚刺激種類情報は、
予め用意された触覚データライブラリの種類、または、前記再生コンテンツから生成した生成触覚データの種類を指定する情報であり、
前記情報処理装置は、
前記触覚データライブラリ、または、前記生成触覚データを蓄積する記憶部を備え、
前記制御部は、
前記触覚データライブラリ、または、前記生成触覚データを用いて、前記触覚制御信号を生成する、前記(15)〜(18)のいずれか1項に記載の情報処理装置。
(20)
前記制御部は、
前記触覚提示デバイスのプロファイルをさらに考慮し、前記触覚制御信号を生成する、前記(15)〜(19)のいずれか1項に記載の情報処理装置。
(21)
前記制御部は、
前記配置表示画面に対する、身体中心を原点とする3次元の直交座標系における、X軸上の座標、Y軸上の座標及びZ軸上の座標の3つの座標の入力を受け付けることにより、前記知覚位置の指定を受け付ける、
前記(6)に記載の情報処理装置。
(22)
前記制御部は、
前記配置表示画面上の身体モデル上に重畳された前記直交座標系に対する入力を受け付けることにより、前記知覚位置の指定を受け付ける、
前記(21)に記載の情報処理装置。
(23)
前記制御コマンドは、
前記触覚提示デバイスにおいて複数の前記触覚刺激のそれぞれの前記知覚位置を示す位置情報と、前記各触覚刺激の種類を指定する触覚刺激種類情報と、
を含む、前記(21)又は(22)に記載の情報処理装置。
(24)
前記制御コマンドは、
前記各触覚刺激の知覚強度、知覚周波数、知覚間隔、再生速度、オフセット情報のうちの少なくとも1つを含む、前記(23)に記載の情報処理装置。