(57)【要約】  電子機器は、筐体の動きを検知する検知部と、前記筐体を振動させる振動部とを有する電子機器であって、前記筐体の動きに応じて動く仮想的な容器である仮想容器の動きと、前記仮想容器の動きに応じて前記仮想容器内を動く仮想的な物体である仮想物体の動きとを算出し、前記仮想容器の内壁と前記仮想物体との相対的な距離を検出する判定部と、前記判定部によって、前記仮想容器の内壁と前記仮想物体との前記相対的な距離が所定の距離関係になったと判定された場合に、前記振動部を振動させるための振動情報を前記振動部に出力する出力情報生成部とを備える。
2013022021.tif 000002
【特許請求の範囲】
【請求項１】
筐体の動きを検知する検知部と、前記筐体を振動させる振動部とを有する電子機器であって、
前記筐体の動きに応じて動く仮想的な容器である仮想容器の動きと、前記仮想容器の動きに応じて前記仮想容器内を動く仮想的な物体である仮想物体の動きとを算出し、前記仮想容器の内壁と前記仮想物体との相対的な距離を検出する判定部と、
前記判定部によって、前記仮想容器の内壁と前記仮想物体との前記相対的な距離が所定の距離関係になったと判定された場合に、前記振動部を振動させるための振動情報を前記振動部に出力する出力情報生成部と
を備えることを特徴とする電子機器。
【請求項２】
請求項１に記載の電子機器において、
前記出力情報生成部は、前記判定部によって、前記仮想容器の内壁と前記仮想物体との前記相対的な距離が所定の値以下と判定された場合に、前記振動情報を前記振動部に出力することを特徴とする電子機器。
【請求項３】
請求項１又は請求項２に記載の電子機器において、
前記判定部は、前記仮想容器の内壁表面と、前記仮想物体の表面のうち前記仮想容器の前記内壁表面と対向する表面との相対的な距離を検出することを特徴とする電子機器。
【請求項４】
請求項１から請求項３の何れか１項に記載の電子機器において、
前記出力情報生成部は、前記判定部によって前記仮想容器の内壁への前記仮想物体の衝突があったと判定された場合に、前記振動情報を前記振動部に出力することを特徴とする電子機器。
【請求項５】
請求項１から請求項４の何れか１項に記載の電子機器において、
前記出力情報生成部は、前記仮想容器の内壁への前記仮想物体の衝突速度に応じた振動情報を生成し、生成した前記振動情報を前記振動部に出力することを特徴とする電子機器。
【請求項６】
請求項１から請求項５の何れか１項に記載の電子機器において、
前記出力情報生成部は、出力情報記憶部と出力情報選択部とを有し、
前記振動情報は、前記出力情報記憶部に予め記憶され、
前記出力情報選択部は、前記判定部から得られる前記仮想容器の内壁と前記仮想物体との前記相対的な距離に基づいて前記出力情報記憶部から前記振動情報を選択し、選択した前記振動情報を前記振動部に出力することを特徴とする電子機器。
【請求項７】
請求項６に記載の電子機器において、
前記振動情報は、前記仮想容器の内壁への前記仮想物体の衝突速度に対応付けて前記出力情報記憶部に予め記憶され、
前記出力情報選択部は、前記出力情報記憶部から、前記仮想容器の内壁への前記仮想物体の衝突速度に応じた前記振動情報を選択し、選択した前記振動情報を前記振動部に出力することを特徴とする電子機器。
【請求項８】
請求項１から請求項７の何れか１項に記載の電子機器において、
音声を出力する音声出力部を更に備え、
前記判定部は、前記仮想物体同士の相対的な距離を検出し、
前記出力情報生成部は、前記判定部によって、前記仮想物体同士の前記相対的な距離が所定の距離関係になったと判断された場合に、前記音声を出力するための音声情報を前記音声出力部に出力することを特徴とする電子機器。
【請求項９】
請求項８に記載の電子機器において、
前記出力情報生成部は、前記判定部によって、前記仮想物体同士の前記相対的な距離が所定の値以下と判定された場合に、前記振動情報を前記振動部に出力することを特徴とする電子機器。
【請求項１０】
請求項８又は請求項１０に記載の電子機器において、
前記判定部は、前記仮想物体同士の対向する表面の相対的な距離を検出することを特徴とする電子機器。
【請求項１１】
請求項８から請求項１０の何れか１項に記載の電子機器において、
前記出力情報生成部は、前記判定部によって前記仮想物体同士の衝突があったと判定された場合に、前記音声情報を前記音声出力部に出力することを特徴とする電子機器。
【請求項１２】
請求項８から請求項１１の何れか１項に記載の電子機器において、
前記出力情報生成部は、出力情報記憶部と出力情報選択部とを有し、
前記音声情報は、前記出力情報記憶部に予め記憶され、
前記出力情報選択部は、前記判定部によって得られる前記仮想物体同士の前記相対的な距離に基づいて前記出力情報記憶部から前記音声情報を選択し、選択した前記音声情報を前記音声出力部に出力することを特徴とする電子機器。
【請求項１３】
請求項８から請求項１２の何れか１項に記載の電子機器において、
前記出力情報生成部は、
前記判定部から得られる前記仮想容器の内壁と前記仮想物体との前記相対的な距離に基づいて前記振動情報を前記振動部に出力するとともに、前記振動情報を前記振動部に出力するタイミングから遅延させたタイミングで、前記音声情報を前記音声出力部に出力することを特徴とする電子機器。
【請求項１４】
請求項１から請求項１３の何れか１項に記載の電子機器において、
前記振動部は、
筐体の複数の箇所を夫々振動させることが可能であって、
前記出力情報生成部は、
前記判定部から得られる前記仮想容器の内壁と前記仮想物体との前記相対的な距離に基づいて、前記衝突箇所に応じた箇所を振動させる前記振動情報を生成することを特徴とする電子機器。
【請求項１５】
筐体の動きを検知する検知部と、音声を出力する音声出力部を有する電子機器であって、
前記筐体の動きに応じて動く仮想的な容器である仮想容器の動きと、前記仮想容器の動きに応じて前記仮想容器内を動く仮想的な物体である仮想物体との動きを算出し、前記仮想物体同士の相対的な距離を検出する判定部と、
前記判定部によって、前記仮想物体同士の前記相対的な距離が所定の距離関係になったと判定された場合に、前記音声を出力するための音声情報を前記音声出力部に出力する出力情報生成部と
を備えることを特徴とする電子機器。
【請求項１６】
請求項１５に記載の電子機器において、
前記出力情報生成部は、前記判定部によって、前記前記仮想物体同士の前記相対的な距離が所定の値以下と判定された場合に、前記音声情報を前記音声出力部に出力することを特徴とする電子機器。
【請求項１７】
請求項１５又は請求項１６に記載の電子機器において、
前記出力情報生成部は、前記判定部によって前記仮想物体同士の衝突があったと判定された場合に、前記音声情報を前記音声出力部に出力することを特徴とする電子機器。
【請求項１８】
請求項１５から請求項１７の何れか１項に記載の電子機器において、
前記判定部は、前記仮想物体同士の対向する表面の相対的な距離を検出することを特徴とする電子機器。
【請求項１９】
請求項１５から請求項１８の何れか１項に記載の電子機器において、
前記出力情報生成部は、出力情報記憶部と出力情報記憶部とを有し、
前記音声情報は、前記出力情報記憶部に予め記憶され、
前記出力情報選択部は、前記判定部によって得られる前記仮想物体同士の前記相対的な距離に基づいて前記出力情報記憶部から前記音声情報を選択し、選択した前記音声情報を前記音声出力部に出力することを特徴とする電子機器。
【請求項２０】
請求項１から請求項１９の何れか１項に記載の電子機器において、
前記仮想容器内を動く前記仮想物体の動きを表示する表示部を更に備えることを特徴とする電子機器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子機器に関する。
本願は、２０１１年８月９日に出願された日本国特願２０１１−１７４１４４号に基づき優先権を主張し、その内容をここに援用する。
【背景技術】
【０００２】
現在、音声を出力する機能、筐体を振動させる機能、筐体の動きを検出する機能を有する携帯機器が存在する。また、仮想的な空間において仮想的な物体が衝突したときの衝突音を発生させる技術が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−１６４２９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、ユーザが携帯機器の筐体を振るなどして動かした場合に、筐体の外形に応じた仮想的な空間内において仮想的な物体を動かして、衝突音又は衝突による振動を発生させるようしたとしても、実際には、あたかも筐体内部に本物の球などの何かが入っているかのような現実感をユーザに体験させることはできないという問題がある。
本発明の態様は、ユーザが携帯機器の筐体を振るなどして動かした場合に、あたかも筐体内部に本物の球などの何かが入っているかのような現実感をユーザに体験させる技術を提供する。
【課題を解決するための手段】
【０００５】
本発明の一態様である電子機器は、筐体の動きを検知する検知部と、前記筐体を振動させる振動部とを有する電子機器であって、前記筐体の動きに応じて動く仮想的な容器である仮想容器の動きと、前記仮想容器の動きに応じて前記仮想容器内を動く仮想的な物体である仮想物体の動きとを算出し、前記仮想容器の内壁と前記仮想物体との相対的な距離を検出する判定部と、前記判定部によって、前記仮想容器の内壁と前記仮想物体との前記相対的な距離が所定の距離関係になったと判定された場合に、前記振動部を振動させるための振動情報を前記振動部に出力する出力情報生成部とを備えることを特徴とする。【０００６】
本発明の別の態様である電子機器は、筐体の動きを検知する検知部と、音声を出力する音声出力部を有する電子機器であって、前記筐体の動きに応じて動く仮想的な容器である仮想容器の動きと、前記仮想容器の動きに応じて前記仮想容器内を動く仮想的な物体である仮想物体との動きを算出し、前記仮想物体同士の相対的な距離を検出する判定部と、前記判定部によって、前記仮想物体同士の前記相対的な距離が所定の距離関係になったと判定された場合に、前記音声を出力するための音声情報を前記音声出力部に出力する出力情報生成部とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明の態様によれば、ユーザが本発明に係る電子機器の筐体を振るなどして動かした場合に、あたかも筐体内部に本物の球などの何かが入っているかのような現実感をユーザに体験させることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態による電子機器の機能ブロック図の一例である。
【図２Ａ】物理情報記憶部に記憶される情報の一例である。
【図２Ｂ】物理情報記憶部に記憶される情報の一例である。
【図２Ｃ】物理情報記憶部に記憶される情報の一例である。
【図３Ａ】出力情報記憶部に記憶される情報の一例である。
【図３Ｂ】出力情報記憶部に記憶される情報の一例である。
【図３Ｃ】出力情報記憶部に記憶される情報の一例である。
【図３Ｄ】出力情報記憶部に記憶される情報の一例である。
【図４Ａ】電子機器の動作の一例を示すフローチャートである。
【図４Ｂ】電子機器の動作の一例を示すフローチャートである。
【図５】電子機器の動作を説明するための説明図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照しながら本発明の実施形態について説明する。図１は、本発明の実施形態による電子機器１の機能ブロック図の一例である。
【００１０】
電子機器１は、図１に示すように、物理情報記憶部１０、検知部２０、衝突判定部２１、出力情報生成部２２、振動部３１、音声出力部３２及び表示部３３を備える。出力情報生成部２２は、出力情報記憶部１１及び出力情報選択部２３を備える。なお、電子機器１は、破線にて示すように、タイミング制御情報記憶部１９を更に備える構成としてもよい。
【００１１】
振動部３１は、例えば振動モータであって、電子機器１の筐体（以下、単に筐体という）を振動させる。具体的には、振動部３１は、出力情報生成部２２から出力される振動情報に従って筐体を振動させる。
【００１２】
音声出力部３２は、例えばスピーカであって、筐体の外部に音声を出力する。具体的には、音声出力部３２は、出力情報生成部２２から出力される音声情報に従って音声を筐体の外部に出力する。
【００１３】
表示部３３は、例えば、液晶モニタであって、種々の情報を表示する。具体的には、例えば、表示部３３は、出力情報生成部２２から出力される画像情報を表示する。
【００１４】
検知部２０は、筐体の動きを検知する。例えば、検知部２０は、加速度センサであって、筐体に加わる加速度を検知し、検知した加速度に基づいて筐体の動きを検知する。
【００１５】
衝突判定部２１は、検知部２０によって検知された筐体に動きに基づいて、筐体の動きに応じて動く仮想的な容器（以下、仮想容器という）の動きと、仮想容器の動きに応じて仮想容器内を動き回る仮想的な物体（以下、仮想物体という）の動きとを算出する物理エンジンである。具体的には、衝突判定部２１は、検知部２０が検知した筐体の動き情報と、物理情報記憶部１０に記憶された情報とに基づいて、仮想容器及び仮想物体の動きを算出する。
【００１６】
また、衝突判定部２１は、仮想容器及び仮想物体の動きを算出することによって、仮想容器の内壁への前記仮想物体の衝突の有無、及び、仮想物体同士の衝突の有無を判定する。なお、物理情報記憶部１０に記憶された情報の詳細、並びに、衝突判定部２１による仮想容器及び仮想物体の動きの算出、仮想容器の内壁への前記仮想物体の衝突の有無、及び、仮想物体同士の衝突の有無の判定に係る詳細は、後述する。
【００１７】
出力情報生成部２２は、出力情報（振動部２１に出力する振動情報、音声出力部３２に出力する音情報、表示部３３に出力する画像情報）を生成する。例えば、出力情報生成部２２は、衝突判定部２１によって仮想容器の内壁への仮想物体の衝突があったと判定された場合に、振動部３１に出力する振動情報を生成する。また、出力情報生成部２２は、衝突判定部２１によって仮想物体同士の衝突があったと判定された場合に、音声出力部３２に出力する音声情報を生成する。また、出力情報生成部２２は、衝突判定部２１によって上述の衝突の有無を判定している間、衝突の有無に関係なく、表示部３３に出力する動画像情報を生成する。例えば、出力情報生成部２２は、仮想容器内を動き回る仮想物体の動きを表した動画像情報を生成する。
【００１８】
具体的には、出力情報生成部２２の出力情報選択部２３は、衝突速度（仮想容器の内壁への仮想物体の衝突速度、仮想物体同士の衝突速度）に応じた振動及び音声を出力する場合、衝突判定部２１が算出した仮想容器及び仮想物体の動き情報（仮想容器の内壁への仮想物体の衝突速度、仮想物体同士の衝突速度）と、衝突判定部２１が判定した衝突の有無の判定情報（仮想容器の内壁への仮想物体の衝突判定情報、仮想物体同士の衝突判定情報）と、物理情報記憶部１０（後述の図３Ｃの設定情報）に記憶された情報と、出力情報記憶部１１に記憶された情報とに基づいて、振動情報、音声情報を生成する。なお、出力情報選択部２３は、衝突速度に応じた振動及び音声を出力しない場合、衝突判定部２１が判定した衝突の有無の判定情報と、物理情報記憶部１０に記憶された情報と、出力情報記憶部１１に記憶された情報とに基づいて、振動情報、音声情報を生成する。なお、出力情報生成部２２は、衝突判定部２１を介して物理情報記憶部１０に記憶された情報を取得すればよい。
【００１９】
また、出力情報選択部２３は、衝突判定部２１が算出した仮想物体の動き情報と、物理情報記憶部１０に記憶された情報とに基づいて、動画像情報を生成する。
なお、出力情報記憶部１１に記憶された情報の詳細、及び、出力情報選択部２３による出力情報の選択に係る詳細は、後述する。
【００２０】
続いて、物理情報記憶部１０に記憶された情報について説明する。図２Ａ〜Ｃは、物理情報記憶部１０に記憶される情報の一例である。物理情報記憶部１０は、図２Ａに示すように、仮想容器の選択情報を記憶する。図２Ａに示す仮想容器の選択情報は、仮想容器に係る種々の属性（選択項目）に対応付けて、選択可能値（選択肢）及び初期値を記憶する。例えば、仮想容器の形状・サイズを示す属性（ＰＡ１）に対応付けて、仮想容器の形状・サイズとして予め用意した選択可能値｛ＰＡ１−０，ＰＡ１−１，ＰＡ１−２，…｝、初期値｛ＰＡ１−０｝を記憶している。また例えば、仮想容器の材質を示す属性（ＰＡ２）に対応付けて、仮想容器の材質として予め用意した選択可能値｛ＰＡ２−０，ＰＡ２−１，ＰＡ２−２，…｝、初期値｛ＰＡ２−０｝を記憶している。
【００２１】
上述のように、仮想容器の選択情報を予め記憶しておくことによって、仮想容器の各属性の設定値をユーザに自由に選択させることができる。例えば、仮想容器の各属性の選択可能値を表示部３３に表示し、ユーザに、操作受付部（非図示）を介して、各属性について選択可能値のなかから一の値を設定値として選択させてもよい。なお、未選択の属性については、初期値を設定値とすればよい。
【００２２】
また、物理情報記憶部１０は、図２Ｂに示すように、仮想物体の選択情報を記憶する。図２Ｂに示す仮想物体の選択情報は、仮想物体に係る種々の属性に対応付けて、選択可能値及び初期値を記憶する。例えば、仮想物体の形状・サイズを示す属性（ＰＢ１）に対応付けて、仮想物体の形状・サイズとして予め用意した選択可能値｛ＰＢ１−０，ＰＢ１−１，ＰＢ１−２，…｝、初期値｛ＰＢ１−０｝を記憶している。また例えば、仮想物体の材質を示す属性（ＰＢ２）に対応付けて、仮想物体の材質として予め用意した選択可能値｛ＰＢ２−０，ＰＢ２−１，ＰＢ２−２，…｝、初期値｛ＰＢ２−０｝を記憶している。
【００２３】
なお、仮想物体の数量は、ユーザの操作に応じて決定される。例えば、表示部３３に配置した追加ボタン（非図示）をユーザがタッチする毎に仮想物体が1つ追加されるようにしてもよい。具体的には、図２Ｂに示す例の場合には仮想物体の初期数量はゼロであるため、ユーザが追加ボタンをＮ回タッチしたときは、仮想物体の数量はＮ個になる。なお、表示部３３に削除ボタン（非図示）を配置し、仮想物体の数量を削減できるようにしてもよい。また、図２Ｂに示す例では初期数量をゼロとし選択肢を用意していないが、形状・サイズ、材質などと同様に初期数量に関しても選択肢を用意してもよい。
【００２４】
上述のように、仮想物体の選択情報を予め記憶しておくことによって、仮想物体の各属性の設定値をユーザに自由に選択させることができる。例えば、仮想物体の各属性の選択可能値を表示部３３に表示し、ユーザに、操作受付部（非図示）を介して、各属性について選択可能値のなかから一の値を設定値として選択させてもよい。なお、未選択の属性については、初期値を設定値とすればよい。
【００２５】
また、物理情報記憶部１０は、図２Ｃに示すように、仮想容器設定情報及び仮想物体設定情報から構成される設定情報を記憶する。
仮想容器設定情報は、図２Ａに示す仮想容器の選択情報からの選択結果である。つまり、図２Ｃに示す仮想容器設定情報｛ＰＡ１−Ｉ，ＰＡ２−Ｊ，…｝は、属性（ＰＡ１）の選択可能値の中から値「ＰＡ１−Ｉ」が設定値として選択され、属性（ＰＡ２）の選択可能値の中から値「ＰＡ２−Ｊ」が設定値として選択された旨を記憶している。
仮想物体設定情報は、図２Ｂに示す仮想物体の選択情報からの選択結果である。つまり、図２Ｃに示す仮想物体設定情報｛ＰＢ１−Ｓ，ＰＢ２−Ｔ，ＰＢ２−０…｝は、属性（ＰＢ１）の選択可能値の中から値「ＰＢ１−Ｓ」が設定値として選択され、属性（ＰＢ２）の選択可能値の中から値「ＰＢ２−Ｔ」が設定値として選択され、属性（ＰＢ３）の選択可能値の中から値「ＰＢ３−０」が設定値として選択された旨を記憶している。
【００２６】
続いて、衝突判定部２１による仮想容器及び仮想物体の動きの算出、仮想容器の内壁への前記仮想物体の衝突の有無、及び、仮想物体同士の衝突の有無の判定について説明する。衝突判定部２１は、予め、物理情報記憶部１０に記憶された設定情報（仮想容器設定情報及び仮想物体設定情報）を読み込んで記憶しておく。なお、衝突判定部２１は、ユーザの操作に応じて決定した仮想物体の数量を記憶している。
【００２７】
衝突判定部２１は、検知部２０が検知した筐体の動き情報を取得する。検知部２０が検知した筐体の動き情報を取得した衝突判定部２１は、前記筐体の動き情報に基づいて仮想容器の動きを算出する（即ち、仮想容器の動き情報を生成する）。例えば、衝突判定部２１は、筐体の動きを仮想容器の動きとしてもよい。
【００２８】
仮想容器の動きを算出した衝突判定部２１は、仮想容器の動き情報と、記憶している設定情報（仮想容器の形状・サイズ（属性（ＰＡ１）の設置値）、仮想物体の形状・サイズ（属性（ＰＢ１）の設定値）、仮想容器の材質（属性（ＰＡ２）の設定値）、仮想物体の材質（属性（ＰＢ２）の設定値）等）と、記憶している仮想物体の個数情報とに基づいて、衝突（仮想容器の内壁への仮想物体の衝突及び仮想物体同士の衝突）の判定、衝突後の仮想物体の移動方向、移動速度を算出しつつ、個々の仮想物体の動きを算出する（即ち、仮想物体の動き情報を生成する）。なお、例えば、仮想容器及び仮想物体の材質は、反発力、摩擦係数として、上記の算出に用いる。
【００２９】
なお、衝突判定部２１は、仮想容器及び仮想物体の動きを算出することによって、仮想容器の内壁への前記仮想物体の衝突の有無、及び、仮想物体同士の衝突の有無を判定すると説明した。しかし、上述の如く、衝突判定部２１は、仮想容器及び仮想物体の動きを算出する過程において、仮想容器の内壁への前記仮想物体の衝突の有無、及び、仮想物体同士の衝突の有無を判定する。
【００３０】
続いて、出力情報記憶部１１に記憶された情報について説明する。図３Ａ〜Ｄは、出力情報記憶部１１に記憶される情報の一例である。出力情報記憶部１１は、仮想容器の内壁への仮想物体の衝突時の出力情報、及び、仮想物体同士の衝突時の出力情報を記憶する。
【００３１】
電子機器１において、設定情報（例えば、仮想容器、仮想物体の材質等）に応じた出力（振動、音声）とするため、出力情報記憶部１１は、設定情報の組み合わせ毎に、仮想容器の内壁への仮想物体の衝突時の出力情報、仮想物体同士の衝突時の出力情報を記憶する。また、電子機器１において、衝突速度（仮想容器の内壁への仮想物体の衝突速度、仮想物体同士の衝突速度）に応じて振動及び音声を出力する。そのため、出力情報記憶部１１は、衝突速度毎に、仮想容器の内壁への仮想物体の衝突時の出力情報、仮想物体同士の衝突時の出力情報を記憶する。
【００３２】
図３Ａは、出力情報記憶部１１が記憶する仮想容器の内壁への仮想物体の衝突時の出力情報の一例である。図３Ａに示す仮想容器の内壁への仮想物体の衝突時の出力情報は、ある設定情報（具体的には、図２Ｃに示す設定情報）における仮想容器の内壁への仮想物体の衝突時の出力情報である。出力情報記憶部１１は、仮想容器の内壁への仮想物体の衝突速度「ＳＡＢ−１」に対応付けて振動情報「Ｘ−１」を記憶し、仮想容器の内壁への仮想物体の衝突速度「ＳＡＢ−２」に対応付けて振動情報「Ｘ−２」を記憶し、…、仮想容器の内壁への仮想物体の衝突速度「ＳＡＢ−３」に対応付けて振動情報「Ｘ−Ｎ」を記憶している。
なお、仮想容器の材質がプラスティック又は金属などの場合であって、仮想物体の材質がゴムの弾性体であるときは、例えば、１０Ｈｚ程度のサイン波を生じて筐体を振動させる振動情報としてもよい。
【００３３】
つまり、図３Ａに示す仮想容器の内壁への仮想物体の衝突時の出力情報は、図２Ｃに示す設定の場合（属性（ＰＡ１）の設定値が値「ＰＡ１−Ｉ」、属性（ＰＡ２）が値「ＰＡ２−Ｊ」、…、属性（ＰＢ１）の設定値が値「ＰＢ１−Ｓ」、属性（ＰＢ２）の設定値が「ＰＢ２−Ｔ」、属性（ＰＢ３）の設定値が値「ＰＢ３−０」…である場合）、仮想容器の内壁への仮想物体の衝突速度が、速度「ＳＡＢ−１」のときは振動情報「Ｘ−１」が選択され、速度「ＳＡＢ−２」のときは振動情報「Ｘ−２」が選択され、…、速度「ＳＡＢ−Ｎ」のときは振動情報「Ｘ−Ｎ」が選択される旨を表している。
【００３４】
図３Ｂは、出力情報記憶部１１が記憶する仮想物体同士の衝突時の出力情報の一例である。図３Ｂに示す仮想物体同士の衝突時の出力情報は、ある設定情報（具体的には、図２Ｃに示す設定情報）における仮想物体同士の衝突時の出力情報であって、仮想物体同士の衝突速度「ＳＢＢ−１」に対応付けて音声情報「Ｙ−１」を記憶し、仮想物体同士の衝突速度「ＳＢＢ−２」に対応付けて音声情報「Ｙ−２」を記憶し、…、仮想物体同士の衝突速度「ＳＢＢ−Ｎ」に対応付けて音声情報「Ｙ−Ｎ」を記憶している。
【００３５】
つまり、図３Ｂに示す仮想物体同士の衝突時の出力情報は、図２Ｃに示す設定の場合、仮想物体同士の衝突速度が、速度「ＳＢＢ−１」のときは音声情報「Ｙ−１」が選択され、速度「ＳＢＢ−２」のときは音声情報「Ｙ−２」が選択され、…、速度「ＳＢＢ−Ｎ」のときは音声情報「Ｙ−Ｎ」が選択される旨を表している。
【００３６】
なお、電子機器１において、衝突速度に応じて振動及び音声を出力しない場合には、出力情報記憶部１１は、図３Ｃ、図３Ｄに示すように、設定情報の組み合わせ毎に、仮想容器の内壁への仮想物体の衝突時の出力情報、及び、仮想物体同士の衝突時の出力情報を記憶すればよい。
【００３７】
続いて、出力情報選択部２３による出力情報の選択について説明する。出力情報選択部２３は、予め、物理情報記憶部１０に記憶された情報（図３Ｃの設定情報）を衝突判定部２１から取得し記憶しておく。
【００３８】
（衝突速度に応じて振動及び音声を出力する場合）
出力情報選択部２３は、衝突判定部２１から、仮想容器及び仮想物体の動き情報（仮想容器の内壁への仮想物体の衝突速度、仮想物体同士の衝突速度）と、衝突の有無の判定情報（仮想容器の内壁への仮想物体の衝突判定情報、仮想物体同士の衝突判定情報）を取得する。
【００３９】
出力情報選択部２３は、仮想容器の内壁への仮想物体の衝突判定情報によって仮想容器の内壁への仮想物体が衝突したタイミングを取得した場合、前記衝突の衝突速度を仮想容器及び仮想物体の動き情報から取得し、予め記憶している設定情報（仮想容器の形状・サイズ（属性（ＰＡ１）の設置値）、仮想物体の形状・サイズ（属性（ＰＢ１）の設定値）、仮想容器の材質（属性（ＰＡ２）の設定値）、仮想物体の材質（属性（ＰＢ２）の設定値）等）における、前記衝突速度に対応する振動情報を出力情報記憶部２１から選択する。
【００４０】
また、出力情報選択部２３は、仮想物体同士の衝突判定情報によって仮想物体同士が衝突したタイミングを取得した場合、前記衝突の衝突速度を仮想容器及び仮想物体の動き情報から取得し、予め記憶している設定情報における、前記衝突速度に対応する音声情報を出力情報記憶部２１から選択する。
【００４１】
（衝突速度に応じて振動及び音声を出力しない場合）
なお、出力情報選択部２３は、衝突判定部２１から、衝突の有無の判定情報（仮想容器の内壁への仮想物体の衝突判定情報、仮想物体同士の衝突判定情報）を取得する。
【００４２】
出力情報選択部２３は、仮想容器の内壁への仮想物体の衝突判定情報によって仮想容器の内壁への仮想物体が衝突したタイミングを取得した場合、予め記憶している設定情報（仮想容器の形状・サイズ（属性（ＰＡ１）の設置値）、仮想物体の形状・サイズ（属性（ＰＢ１）の設定値）、仮想容器の材質（属性（ＰＡ２）の設定値）、仮想物体の材質（属性（ＰＢ２）の設定値）等）に対応する振動情報を出力情報記憶部２１から選択する。
【００４３】
また、出力情報選択部２３は、仮想物体同士の衝突判定情報によって仮想物体同士が衝突したタイミングを取得した場合、予め記憶している設定情報に対応する音声情報を出力情報記憶部２１から選択する。
【００４４】
図４Ａ及び図４Ｂは、電子機器１の動作の一例を示すフローチャートである。具体的には、図４Ａ及び図４Ｂのフローチャートは、衝突速度に応じた振動及び音声を出力する場合の動作の一例である。なお、図４Ａ及び図４Ｂのフローチャートは、仮想容器内において仮想物体を動かして振動又は衝突音を出力させる動作モード（以下、仮想衝突モードという）に設定されることにより開始するものとする。また、図４Ａ及び図４Ｂのフローチャートにおいて、仮想物体の数量は、２以上であるものとする。なお、まずは、図４Ａのフローチャートについて説明し、図４Ｂのフローチャートについては後述する。
【００４５】
図４Ａにおいて、衝突判定部２１は、仮想容器及び仮想物体の動きを算出する（ステップＳ１０）。衝突判定部２１は、仮想容器及び仮想物体の動き情報（仮想容器の内壁への仮想物体の衝突速度、仮想物体同士の衝突速度を含む）を出力情報選択部２３に出力する。出力情報選択部２３は、仮想物体の動き情報と、記憶している設定情報とに基づいて、動画像情報を生成する。動画像情報を生成した出力情報選択部２３は、前記動画像情報を表示部３３に出力し、表示部３３は前記動画像情報に従って動画像を表示する（ステップＳ１２）。
【００４６】
衝突判定部２１は、仮想容器の内壁への仮想物体の衝突の有無を判定する（ステップＳ２０）。ステップＳ２０において衝突判定部２１は、仮想容器の内壁への仮想物体の衝突有と判定しなかった場合（ステップＳ２０：Ｎｏ）、下記ステップＳ２２、ステップＳ２４を飛ばしてステップＳ３０に進む。
【００４７】
一方、ステップＳ２０において衝突判定部２１は、仮想容器の内壁への仮想物体の衝突有と判定した場合（ステップＳ２０：Ｙｅｓ）、出力情報選択部２３に、仮想容器の内壁への仮想物体の衝突有を示す判定情報と仮想容器の内壁への仮想物体の衝突速度とを出力する。仮想容器の内壁への仮想物体の衝突有を示す判定情報と仮想容器の内壁への仮想物体の衝突速度とを取得した出力情報選択部２３は、記憶している設定情報における、前記衝突速度に対応する振動情報を出力情報記憶部２１から選択する（ステップＳ２２）。振動情報を選択した出力情報選択部２３は、前記振動情報を振動部３１に出力し、振動部３１は前記振動情報に従って筐体を振動させる（ステップＳ２４）。
【００４８】
ステップＳ２０（Ｎｏ）又はステップＳ２４に続いて、衝突判定部２１は、仮想物体同士の衝突の有無を判定する（ステップＳ３０）。ステップＳ３０において衝突判定部２１は、仮想物体同士の衝突有と判定しなかった場合（ステップＳ３０：Ｎｏ）、下記ステップＳ３２、ステップＳ３６を飛ばしてステップＳ４０に進む。
【００４９】
一方、ステップＳ３０において衝突判定部２１は、仮想物体同士の衝突有と判定した場合（ステップＳ３０：Ｙｅｓ）、出力情報選択部２３に、仮想物体同士の衝突有を示す判定情報と仮想物体同士の衝突速度とを出力する。仮想物体同士の衝突有を示す判定情報と仮想物体同士の衝突速度とを取得した出力情報選択部２３は、記憶している設定情報における、前記衝突速度に対応する音声情報を出力情報記憶部２１から選択する（ステップＳ３２）。音声情報を選択した出力情報選択部２３は、前記音声情報を音声出力３２に出力し、音声出力部３２は前記音声情報に従って音声（衝突音）を出力する（ステップＳ３６）。
【００５０】
ステップＳ３０（Ｎｏ）又はステップＳ３６に続いて、仮想衝突モードが終了したか否かを判断する（ステップＳ４０）。仮想衝突モードが終了していないと判断した場合（ステップＳ４０：Ｎｏ）、ステップＳ１０に戻る。一方、仮想衝突モードが終了したと判断した場合（ステップＳ４０：Ｙｅｓ）、図４Ａに示すフローチャートは終了する。
【００５１】
図５は、電子機器１の動作を説明するための説明図である。
以上のように、電子機器１は、仮想物体同士が衝突した場合には衝突音を出力し、一方、仮想物体が仮想容器Ｍに衝突した場合には衝突音を出力することなく筐体を単に振動させている。これにより、ユーザが筐体を振るなどして動かした場合（図５（ａ）参照）、図５（ｂ）に示すように、あたかも筐体内部に本物の球などの何かが入っているかのような現実感をユーザに体験させることができる。つまり、図５に示す例において、仮想物体Ａと仮想物体Ｂとが衝突したタイミングにおいて衝突音を出力し、仮想物体Ｃが仮想容器Ｍの内壁Ｎと衝突したタイミングにおいて筐体を振動させるようにしている。
更に、図５（ｃ）に示すように、仮想容器Ｍ内を動き回る仮想物体の動きを表示部３３にて確認することもできるため、より一層の現実間をユーザに体験させることができる。なお、図５（ｃ）は、仮想容器Ｍを表示させずに仮想物体の動きを２次元にて表示（具体的には図５（ｂ）に示す矢印方向からの動きを表示）させている。しかし、図５（ｂ）に示すように、仮想容器Ｍとともに仮想物体を３次元にて表示してもよい。
【００５２】
なお、上記実施形態においては、仮想物体が仮想容器に衝突した場合において衝突音を出力することなく筐体を振動させる態様を説明した。しかし、この場合に、筐体を振動させるとともに振動タイミングから遅延したタイミングで衝突音を出力するようにしてもよい。仮想物体が仮想容器に衝突した場合において筐体を振動させるとともに筐体の振動タイミングから遅延したタイミングで衝突音を出力する態様の場合も、仮想物体が仮想容器に衝突した場合において衝突音を出力することなく筐体を振動させる態様と同様、あたかも筐体内部に本物の球などの何かが入っているかのような現実感をユーザに体験させることができる。
【００５３】
以下、仮想物体が仮想容器に衝突した場合において筐体を振動させるとともに筐体の振動タイミングから遅延したタイミングで衝突音を出力する態様について説明する。
【００５４】
前記態様の場合、電子機器１は、図１に破線にて示すタイミング制御情報記憶部１９を更に備える。タイミング制御情報記憶部１９は、タイミング制御情報として、振動タイミングと衝突音の出力タイミングとの遅延時間を記憶する。
【００５５】
また、前記態様の場合、出力情報記憶部１１は、仮想容器の内壁への仮想物体の衝突時の出力情報として、設定情報毎に、（衝突速度に応じて振動及び音声を出力する場合には衝突速度に対応付けて）、音声情報及び振動情報を記憶する。
【００５６】
また、前記態様の場合、出力情報選択部２３は、衝突判定部２１によって仮想容器の内壁への仮想物体の衝突があったと判定された場合、出力情報記憶部１１を参照し、振動情報及び音声情報を選択し、振動情報を振動部３１に出力するとともに、振動情報の振動部３１への出力タイミングに対してタイミング制御情報による遅延時間分遅延させたタイミングで、音声情報を音声出力部３１に出力する。
以上により、仮想物体が仮想容器に衝突した場合において筐体を振動させるとともに筐体の振動タイミングから遅延したタイミングで衝突音を出力する態様を実現することができる。
【００５７】
図４Ｂのフローチャートは、仮想物体が仮想容器に衝突した場合において筐体を振動させるとともに筐体の振動タイミングから遅延したタイミングで衝突音を出力する態様における、衝突速度に応じた振動及び音声を出力する場合の動作の一例を示すフローチャートである。なお、図４ＢのステップＳ１１０、Ｓ１１２、Ｓ１２０、Ｓ１３０、Ｓ１３２、Ｓ１３６、Ｓ１４０は、図４ＡのステップＳ１０、Ｓ１２、Ｓ２０、Ｓ３０、Ｓ３２、Ｓ３６、Ｓ４０と同様であるため、説明の一部又は全部を省略する。
【００５８】
ステップＳ１２０において衝突判定部２１は、仮想容器の内壁への仮想物体の衝突有と判定した場合（ステップＳ１２０：Ｙｅｓ）、出力情報選択部２３に、仮想容器の内壁への仮想物体の衝突有を示す判定情報と、仮想容器の内壁への仮想物体の衝突速度と仮想物体同士の衝突有を示す判定情報と、仮想物体同士の衝突速度とを出力する。これらの情報を取得した出力情報選択部２３は、記憶している設定情報における、仮想容器の内壁への仮想物体の衝突速度に対応する振動情報、及び、仮想物体同士の衝突速度に対応する音声情報を出力情報記憶部２１から選択する（ステップＳＳ１２２）。
【００５９】
ステップＳ１２２に続いて、出力情報選択部２３は、振動情報を振動部３１に出力し、振動部３１は前記振動情報に従って筐体を振動させる（ステップＳ１２４）。また、出力情報選択部２３は、振動情報の振動部３１への出力タイミングに対してタイミング制御情報記憶部１９に記憶されている遅延時間分遅延させたタイミングで、音声情報を音声出力部３１に出力し、音声出力部３２は前記音声情報に従って音声（衝突音）を出力する（ステップＳ１２６）。以下は、図４Ａと同様である。
【００６０】
また、振動部３１は、筐体の複数の箇所を夫々振動させるような振動モータであってもよい。換言すれば、振動部３１は、筐体の各箇所の夫々を振動させる複数の振動モータから構成されるものであってもよい。振動部３１が上述の複数の振動モータから構成される場合には、出力情報選択部２３は、衝突判定部２１によって仮想容器の内壁への仮想物体の衝突があったと判定された場合に、前記衝突箇所に応じた箇所を振動させる振動情報を生成するようにしてもよい。これにより、振動部３１は、衝突箇所に応じた箇所を振動ささせるようになるため、より一層の現実間をユーザに体験させることができるようになる。
【００６１】
なお、本発明の実施形態による電子機器１の各処理を実行するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、前記記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、本発明の実施形態による電子機器１の各処理に係る上述した種々の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００６２】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００６３】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【００６４】
本発明の一実施形態において、電子機器は、振動情報に基づいて筐体を振動させる振動部と、音声情報に基づいて音声を出力する音声出力部と、筐体の動きを検知する検知部と、前記検知部によって検知された筐体に動きに基づいて、筐体の動きに応じて動く仮想的な容器である仮想容器の動きと、前記仮想容器の動きに応じて前記仮想容器内を動き回る仮想的な物体である仮想物体の動きとを算出することによって、前記仮想容器の内壁への前記仮想物体の衝突の有無、及び、前記仮想物体同士の衝突の有無を判定する衝突判定部と、前記衝突判定部によって前記仮想容器の内壁への前記仮想物体の衝突があったと判定された場合に、前記振動部に出力する前記振動情報を生成し、前記衝突判定部によって前記仮想物体同士の衝突があったと判定された場合に、前記音声出力部に出力する前記音声情報を生成する出力情報生成部とを備える。
上記実施形態において、前記出力情報生成部は、前記衝突判定部によって前記仮想容器の内壁への前記仮想物体の衝突があったと判定された場合に、前記振動情報に加えて前記音声情報を生成し、前記振動情報を前記振動部に出力するタイミングから遅延させたタイミングで、前記音声情報を前記音声出力部に出力する構成を採用できる。
また、上記実施形態において、前記振動部は、筐体の複数の箇所を夫々振動させることが可能であって、前記出力情報生成部は、前記衝突判定部によって前記仮想容器の内壁への前記仮想物体の衝突があったと判定された場合に、当該衝突箇所に応じた箇所を振動させる前記振動情報を生成する構成を採用できる。
また、上記実施形態において、前記仮想容器内を動き回る前記仮想物体の動きを表示する表示部を更に備える構成を採用できる。
【符号の説明】
【００６５】
１…電子機器  １０…物理情報記憶部  １１…出力情報記憶部  １９…タイミング制御情報記憶部  ２０…検知部  ２１…衝突判定部  ２２…出力情報生成部  ２３…出力情報選択部  ３１…振動部  ３２…音声出力部  ３３…表示部
【図１】
2013022021.tif 000003
【図２Ａ】
2013022021.tif 000004
【図２Ｂ】
2013022021.tif 000005
【図２Ｃ】
2013022021.tif 000006
【図３Ａ】
2013022021.tif 000007
【図３Ｂ】
2013022021.tif 000008
【図３Ｃ】
2013022021.tif 000009
【図３Ｄ】
2013022021.tif 000010
【図４Ａ】
2013022021.tif 000011
【図４Ｂ】
2013022021.tif 000012
【図５】
2013022021.tif 000013
【国際調査報告】
2013022021.tif 000014
2013022021.tif 000015