入力デバイス及び入力デバイスによる報知方法
【課題】落下するという感覚をより現実的にユーザに感じられるようにすることができる入力デバイスなどを提供する。
【解決手段】ユーザによる移動操作のための入力を受け付ける受付手段111と、入力に基づき移動操作の内容を解析する解析手段112と、解析に基づき操作対象物を移動させる移動制御手段113と、操作対象物が段差に近づき、段差となっている地点から操作対象物までの距離が所定の値より小さくなったか否かを判断する判断手段114と、所定の値より小さくなったと判断され、かつ段差がある方向へ操作対象物が移動操作される場合の操作対象物の位置と、操作対象物の落下が開始される地点の間で、操作対象物の移動操作の方向とは略逆方向に入力デバイスに反発力を生じさせ、落下開始地点と終了地点の間で反発力を解放又は低減させ、落下が終了した場合に入力デバイスに反発力を生じさせる制御手段115とを備える。
【解決手段】ユーザによる移動操作のための入力を受け付ける受付手段111と、入力に基づき移動操作の内容を解析する解析手段112と、解析に基づき操作対象物を移動させる移動制御手段113と、操作対象物が段差に近づき、段差となっている地点から操作対象物までの距離が所定の値より小さくなったか否かを判断する判断手段114と、所定の値より小さくなったと判断され、かつ段差がある方向へ操作対象物が移動操作される場合の操作対象物の位置と、操作対象物の落下が開始される地点の間で、操作対象物の移動操作の方向とは略逆方向に入力デバイスに反発力を生じさせ、落下開始地点と終了地点の間で反発力を解放又は低減させ、落下が終了した場合に入力デバイスに反発力を生じさせる制御手段115とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、所定の操作がユーザによって行われた場合にユーザに反発力を伝達する入力デバイス及び入力デバイスによる報知方法に関する。
【背景技術】
【0002】
従来の入力デバイス(例えば、ハプティックデバイスなど)は、任意の方向に任意の強度を持った力を発生させることでユーザに振動を与えることができる(下記の非特許文献1を参照)。ユーザは、操作する入力デバイス(以下、コントローラとも言う)から発せられる力を手に感じることで、触覚を通して実空間や仮想空間内にある物体への衝突や接触(物理的様子)を知ることができる。すなわち、コントローラを操作することで空間内を移動し、壁に衝突すればその衝撃がコントローラを通してユーザの手に伝わるというものである。
【0003】
実空間や仮想空間内を、ハプティック機能を持ったコントローラで移動操作する際、動きの自由度が平面方向(縦横方向)だけでなく垂直方向(高さ方向)での移動(3次元移動)が可能の場合には、空間内を移動して「落下」する、すなわち高所から低所に落ちるという状況が存在する。この場合、コントローラを使い、触覚を通して落下したかのような感覚をユーザに与える必要がある。それを実現するために、2次元で移動するコントローラで落下するという感覚を擬似的に表現する場合、落下する方向に近い方向に力を突然発生させてコントローラを自動で引っ張ることで、あたかもその方向に落下したような感覚をユーザの手に与えることができる。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Microsoft Sidewinder Force feedback Pro2http://www.microsoft.com/japan/hardware/sw/fo_feedback_2.aspx
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、実際は、落ちるという感覚は引っ張られるというものとは異なる。また、本当に2次元平面のある方向に引っ張られる表現をしたい場合、「引っ張られた」のか「落下した」のかユーザは区別することができなくなる。
【0006】
本発明は、上記の問題点に鑑み、落下するという感覚をより現実的にユーザに感じられるようにすることができる入力デバイスを提供することを目的とする。具体的には、「落下」という現象を「引っ張られる」というものではなく、自由落下により「及んでいた力が解き放たれ、無重力状態になる」という感覚を持って「落下」状態をユーザに表現することができる入力デバイス及び入力デバイスによる報知方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本発明によれば、表示手段に表示された仮想空間又は実空間上に存在する、ユーザの操作対象となる操作対象物を前記ユーザの操作により、前記空間内の段差の高い部分から低い部分へ落下させるための操作を含む移動操作を行うための入力デバイスであって、前記ユーザによる移動操作のための入力を受け付ける受付手段と、受け付けられた前記入力に基づいて前記移動操作の内容を解析する解析手段と、解析された前記移動操作に基づいて前記操作対象物を前記仮想空間又は前記実空間上で移動させる移動制御手段と、前記移動制御手段により移動させられる前記操作対象物が前記段差に近づき、前記段差となっている地点から前記操作対象物までの距離が所定の値より小さくなったか否かを判断する判断手段と、前記段差となっている地点から前記操作対象物までの距離が前記所定の値より小さくなったと判断され、かつ前記段差となっている方向へ前記操作対象物が移動操作される場合の前記操作対象物の位置と、前記段差となっている地点からの前記操作対象物の落下が開始される地点の間では、前記操作対象物の移動操作の方向とは略逆方向に前記入力デバイスを戻そうとする反発力を生じさせ、前記落下が開始された地点と終了する地点の間では前記反発力を解放又は低減させ、前記落下が終了した場合に前記入力デバイスに前記反発力を生じさせる制御手段とを備える入力デバイスが提供される。この構成により、落下するという感覚をより現実的にユーザに感じられるようにすることができる。ここで、操作対象物とは、例えば仮想空間又は実空間上で操作の対象となる物やその物の位置を示すカーソルなどを言う。
【0008】
また、本発明の入力デバイスにおいて、前記操作対象物の落下中の様子を前記表示手段に表示させるための処理を行う表示処理手段を更に備えることは、本発明の好ましい態様である。この構成により、ユーザは落下の様子(状況)をより的確に把握することができる。
【0009】
また、本発明によれば、表示手段に表示された仮想空間又は実空間上に存在する、ユーザの操作対象となる操作対象物を前記ユーザの操作により、前記空間内の段差の高い部分から低い部分へ落下させるための操作を含む移動操作を行うための入力デバイスによる報知方法であって、前記ユーザによる移動操作のための入力を受け付ける受付ステップと、受け付けられた前記入力に基づいて前記移動操作の内容を解析する解析ステップと、解析された前記移動操作に基づいて前記操作対象物を前記仮想空間又は前記実空間上で移動させる移動制御ステップと、前記移動制御手段により移動させられる前記操作対象物が前記段差に近づき、前記段差となっている地点から前記操作対象物までの距離が所定の値より小さくなったか否かを判断する判断ステップと、前記段差となっている地点から前記操作対象物までの距離が前記所定の値より小さくなったと判断され、かつ前記段差となっている方向へ前記操作対象物が移動操作される場合の前記操作対象物の位置と、前記段差となっている地点からの前記操作対象物の落下が開始される地点の間では、前記操作対象物の移動操作の方向とは略逆方向に前記入力デバイスを戻そうとする反発力を生じさせ、前記落下が開始された地点と終了する地点の間では前記反発力を解放又は低減させ、前記落下が終了した場合に前記入力デバイスに前記反発力を生じさせる制御ステップとを有する報知方法が提供される。この構成により、落下するという感覚をより現実的にユーザに感じられるようにすることができる。
【0010】
また、本発明の入力デバイスによる報知方法において、前記操作対象物の落下中の様子を前記表示手段に表示させるための処理を行う表示処理ステップを更に有することは、本発明の好ましい態様である。この構成により、ユーザは落下の様子(状況)をより的確に把握することができる。
【発明の効果】
【0011】
本発明の入力デバイス及び入力デバイスによる報知方法は、上記構成を有し、落下するという感覚をより現実的にユーザに感じられるようにすることができる。具体的には、「落下」という現象を「引っ張られる」というものではなく、自由落下により「及んでいた力が解き放たれ、無重力状態になる」という感覚を持って「落下」状態をユーザに表現することができる。また、本発明の入力デバイス及び入力デバイスによる報知方法により、本来、2次元の方向にしか動かないコントローラであっても「落下」を「自由落下」という演出とすることで、仮想空間内で高さの移動という新しい軸での移動の感覚をユーザに与えることが可能となる。
【図面の簡単な説明】
【0012】
【図1a】本発明の実施の形態におけるスティック状のコントローラを示す図である。
【図1b】本発明の実施の形態におけるボタン形状のコントローラを示す図である。
【図2a】本発明の実施の形態におけるコントローラを斜め横から見た図である。
【図2b】本発明の実施の形態におけるコントローラのX軸方向に力が及んでいる様子を示す図である。
【図2c】本発明の実施の形態におけるコントローラをX軸上で左右に最大限に動かした様子を示す図である。
【図2d】本発明の実施の形態におけるコントローラを真上から見た図である。
【図3a】本発明の実施の形態におけるコントローラが固定強度70%で(x、y)=(0、0)の位置にある状態を示す図である。
【図3b】本発明の実施の形態におけるコントローラが固定強度100%で(x、y)=(0、0)の位置にある状態を示す図である。
【図3c】本発明の実施の形態におけるコントローラが固定強度70%で(x、y)=(0、0)の位置にある状態を座標上で示す図である。
【図3d】本発明の実施の形態におけるコントローラが固定強度100%で(x、y)=(0、0)の位置にある状態を座標上で示す図である。
【図4a】本発明の実施の形態におけるコントローラが固定強度70%で(x、y)=(−0.7、0)の位置にある状態を示す図である。
【図4b】本発明の実施の形態におけるコントローラが固定強度100%で(x、y)=(−0.7、0)の位置にある状態を示す図である。
【図4c】本発明の実施の形態におけるコントローラが固定強度70%で(x、y)=(−0.7、0)の位置にある状態を座標上で示す図である。
【図4d】本発明の実施の形態におけるコントローラが固定強度100%で(x、y)=(−0.7、0)の位置にある状態を座標上で示す図である。
【図5a】本発明の実施の形態における図4aに示すコントローラをユーザが(x、y)=(0、0)の位置に移動させようとしている様子を示す図である。
【図5b】本発明の実施の形態における図4bに示すコントローラをユーザが(x、y)=(0、0)の位置に移動させようとしている様子を示す図である。
【図5c】本発明の実施の形態における図4aに示すコントローラをユーザが(x、y)=(0、0)の位置に移動させようとしている様子を座標上で示す図である。
【図5d】本発明の実施の形態における図4bに示すコントローラをユーザが(x、y)=(0、0)の位置に移動させようとしている様子を座標上で示す図である。
【図6】本発明の実施の形態における3つのフェーズについて説明するための図である。
【図7a】本発明の実施の形態におけるハプティック機能を有するコントローラが発生させる力の位置のグラフを示す図である。
【図7b】本発明の実施の形態におけるハプティック機能を有するコントローラの固定強度のグラフを示す図である。
【図8a】本発明の実施の形態における図7aの「落下フェーズ」における固定強度を10%にした際の力の位置のグラフを示す図である。
【図8b】本発明の実施の形態における図7bの「落下フェーズ」における固定強度を10%にした際の固定強度のグラフを示す図である。
【図9a】本発明の実施の形態における「事前フェーズ」においてコントローラがユーザによって触れられていない状態を示す図である。
【図9b】本発明の実施の形態における図9aに対応するコントローラを真上から見た図である。
【図9c】本発明の実施の形態における「事前フェーズ」においてユーザがコントローラに力を加え、段差の方向に移動し始めた様子を示す図である。
【図9d】本発明の実施の形態における図9cに対応するコントローラを真上から見た図である。
【図9e】本発明の実施の形態における「事前フェーズ」においてユーザがさらにコントローラに力を加えて動かし、あらかじめ決められた移動開始境界に達した様子を示す図である。
【図9f】本発明の実施の形態における図9eに対応するコントローラを真上から見た図である。
【図9g】本発明の実施の形態における「落下フェーズ」が始まった様子を示す図である。
【図9h】本発明の実施の形態における図9gに対応するコントローラを真上から見た図である。
【図9i】本発明の実施の形態におけるコントローラの固定強度が10%で、コントローラが段差の方向に倒れる様子を示す図である。
【図9j】本発明の実施の形態における図9iに対応するコントローラを真上から見た図である。
【図9k】本発明の実施の形態における「衝突フェーズ」を示す図である。
【図9l】本発明の実施の形態における図9kに対応するコントローラを真上から見た図である。
【図10】本発明の実施の形態における入力デバイスの3つのフェーズからなるフローの一例を示すフローチャートである。
【図11】本発明の実施の形態に係るコントローラの構成の一例を示す構成図である。
【図12】本発明の実施の形態における入力デバイスの応用について説明するための図である。
【発明を実施するための形態】
【0013】
本発明の実施の形態に係るコントローラ、すなわちハプティック機能を持ち、かつ、発生させる力の位置(後述する)と固定強度を瞬時に変えられる機能を持つコントローラの一例を図1に示す。コントローラの形状は、図1aに示すようなスティック状のものや、図1bに示すようなボタン形状のものが考えられる。少なくともX軸、Y軸の2次元の移動が可能なものを考える。
【0014】
図2aから図2dを用いて、図1aのスティック状のコントローラをどのように動かせるかについて説明する。図2aはコントローラを斜め横から見た図であり、図2bはコントローラのX軸方向に力が及んでいる様子を示している。図2cはコントローラをX軸上で左右に最大限に動かした様子を示した図であり、図2dはコントローラを真上から見た図である。コントローラはX軸とY軸に沿って移動が可能とする。図2c、図2dでは、コントローラの中心(ユーザが操作時にコントローラに触れる部分)が(x、y)=(−1、0)、(x、y)=(0、0)、(x、y)=(0、1)の位置にある場合が示されている。
【0015】
本発明の実施の形態では、任意の位置に任意の強度で力が発生し、コントローラが引き寄せられるという機能を持っているものを扱う。そのようなコントローラの構造の一例を図3aから図3dに示す。図3a、図3cは、コントローラが固定強度70%で(x、y)=(0、0)の位置にある状態を示す。図3b、図3dは、コントローラが固定強度100%で(x、y)=(0、0)の位置にある状態を示す。コントローラは、支柱の付け根の部分をばねで固定され、ばねの位置や長さを調整することでコントローラを移動させたり、固定強度を変化させたりすることができる。
【0016】
ここで、固定強度とは、ある与えられた任意の位置にコントローラが留まろうとする力の強さのことである。固定強度70%と固定強度100%の違いは、(x、y)=(0、0)の位置にあるコントローラを挟むばねの力が弱いか強いかの違いであり、固定強度を変化させることで弱く固定するか強く固定するかの設定を行うことができる。ここでは、固定強度の値を仮に0から100%までの間を変化できるとしても一般性を失わない。固定強度が100%に近いほど、あらかじめ指定された任意の位置にコントローラ(の中心)がかたくなに留まろうとする。固定強度が弱い(低い)とコントローラの操作が緩くなり、ユーザによって他の位置に移動させやすくなる。固定強度が0%の場合は、コントローラに対して全く力が働かなくなり、例えばスティック状の場合、コントローラそのものの重みや重力でコントローラが横に倒れてしまうような状態となる。
【0017】
図4aから図4dでは、(x、y)=(−0.7、0)の位置にコントローラの中心(ユーザが操作時にコントローラに触れる部分)があり、図4a、図4cは固定強度が70%、図4b、図4dは固定強度が100%の場合を示す。図4c、図4dに示すように、コントローラの中心のx座標がx=−0.7であることから、図4a、図4bに示すように、ばねが全体として右側に向く矢印方向に移動してコントローラが左側に倒れるように傾いていることがわかる。
【0018】
図5aから図5dには、図4aから図4dの状態でコントローラの中心をユーザが(x、y)=(0、0)の位置に移動させようとしている様子が示されている。 図5aから図5dでは、本来あるべきコントローラの中心の位置(x、y)=(−0.7、0)に戻ろうとする力Fが働くため、ユーザは手に力Fを感じる。当然、図5a、図5cに示されるような固定強度が70%の場合に比べ、図5b、図5dに示されるような固定強度100%のほう(ばねが強くコントローラを挟んでいる場合のほう)が力Fを強く感じる。
【0019】
本発明の実施の形態では、上述のような物理的仕組みを備えることで、力が働いて留まろうとするコントローラの中心の位置を瞬時に変えることができ、かつ、コントローラが設定された位置に留まろうとする力の強度そのものも瞬時に変えることができるコントローラであることを前提とする。上述のコントローラの位置設定をしたり固定強度を調整したりする構造は、上述のばね構造に限られず、例えばモータの回転により指定された位置へ移動したり、モータへの電流量調節により固定強度の調整をしたりする方法により実施できるものも含まれる。
【0020】
上述のコントローラで、本発明の実施の形態における「落下」の表現を以下に述べる3つのフェーズ、すなわち「事前フェーズ」、「落下フェーズ」、「衝突フェーズ」を通して行う。まず、これらフェーズに関して図6を用いて説明する。図6に示すように、実空間や仮想空間内で高所から低所へ落ちる場合を想定する。図6には、段差の高所に位置する落下開始の地点に近づいていく「事前フェーズ」と、落下していく「落下フェーズ」と、落下後に地面(段差の低所に位置する地点)に衝突する「衝突フェーズ」とが示されている。
【0021】
ユーザが段差になっている方向に操作対象物(例えば、仮想空間内でのユーザの立ち位置や操作対象となっている物など)を移動させようとすると、段差がある方向とは逆の方向に及ぶ力が加わり、ユーザが段差となっている方向へ進むには、その力を打ち消すようにユーザがコントローラに力を加えなければならないよう構成する。これにより、落下直前までは、落下する方向にコントローラにある一定以上の力を入れなければ段差から落ちない状態を作りだす。これを「事前フェーズ」と呼ぶ。なお、段差がある方向とは逆の方向に及ぶ力を加えるのは、例えば段差となっている地点(図6に示す落下開始の地点)から操作対象物までの距離が所定の値(所定の距離)より小さくなった場合が考えられるが、これに限られるものではない。
【0022】
ここで、段差から落下し始めた瞬間に、それまでコントローラに働いていた逆向きの力を突然ほぼゼロにすることで、それを振り切ろうとコントローラに入れていたユーザの力が勢い余り、コントローラが「カクッ」と外れたか、折れて壊れたかのような感覚をユーザに与える。これにより「力が抜けて自由落下が始まった」という感覚(感触)をユーザに与える。落下の間は、それに同期して落下する様子の動画を不図示の表示手段(不図示であるが、例えばディスプレイなど)の画面に表示することで視覚的理解をユーザに深めさせる。落下中、コントローラは壊れて無抵抗に「カクカク」と自由に動く状態となり、「自由落下」により「無重力状態になった」という認識をユーザに与える。これを「落下フェーズ」と呼ぶ。
【0023】
最後に、先ほどまで腑抜け状態(無抵抗に自由に動く状態)だった力の無いコントローラに力を突然発生させる、望ましくはユーザがそれまでコントローラを動かしていた方向と逆の方向に力を発生させることで、ユーザの手に「ガンッ」という衝撃が伝わり、ユーザは「地面に衝突した」という感覚(感触)を受けることができる。これを「衝突フェーズ」と呼ぶ。
【0024】
次に、本発明の実施の形態において提案する3つのフェーズからなる「落下」の演出の詳細について、図7a、図7b、図8a、図8b、図9aから図9l、図10を用いて以下に説明する。
【0025】
図7a、図7bでは、ハプティック機能を有するコントローラの中心が留まろうとする位置(力の位置とも言う)とコントローラの固定強度について、図6に示される3つのフェーズごとに横軸を時間として示されている。図7aのグラフは、横軸が時間、縦軸がコントローラの中心が留まろうとする位置(−1から1まで)であり、図7bのグラフは、横軸が時間、縦軸がコントローラの固定強度(0%から100%まで)である。
【0026】
「事前フェーズ」では、図7aに示すようにコントローラの力の位置がX=0であり、図7bに示すようにコントローラの固定強度は80%であり、固定強度は異なるが図3bのような状態である。次に落下が始まった「落下フェーズ」では、図7bに示すように固定強度は突然0%になり、固定強度がないので図7aに示すように力の位置の値は無効となる。ユーザは「事前フェーズ」で段差のある方向と逆向きの力を打ち消すように力を加えていたが、突然その逆向きの力が0になったので「カクッ」と折れたような、軽くなったような感覚(感触)を得る。これが落下の開始となる。高い段差からずっと落ち続けている間も固定強度は0%のため、コントローラは無力な「カクカク」の状態となる。これは自由落下、無重力状態を模倣するものである。最後の「衝突フェーズ」では、図7aに示すようにコントローラの力の位置を元の位置であるX=0に移動させ、図7bに示すように固定強度を80%に突然戻す。
【0027】
図8a、図8bは、図7a、図7bとほぼ同じであるが、「落下フェーズ」においては図8bに示すように固定強度が完全に0%ではなく、10%にまで突然落とした場合を示す図である。そのため、図8aに示すようにコントローラの力の位置をX=−1として、「事前フェーズ」でユーザがコントローラを動かしていた方向に設定しておくことも可能である。図8a、図8bのような場合でも、固定強度が80%から10%に突然変わったので「カクッ」とコントローラが折れたような感覚をユーザに与えることは可能である。
【0028】
図9aから図9lは、上述の3つのフェーズを経るコントローラを横から見た場合と真上から見た場合とに分けてそれぞれ示している。図9a、図9bは、「事前フェーズ」においてコントローラがユーザによって触れられていない状態を示す。コントローラの固定強度は80%で、力の位置は(x、y)=(0、0)の位置に固定されている。図9c、図9dは、「事前フェーズ」においてユーザがコントローラに力を加え、段差がある方向、すなわちX軸の正の方向に移動し始めた様子を示す。コントローラは、力の位置が(x、y)=(0、0)で固定強度が80%であるため、ユーザは、段差がある方向に操作対象物を進めるためには、コントローラが(x、y)=(0、0)の位置に戻ろうとする力Fを打ち消して、それ以上の力f手をX軸の正の方向に加えなければならない。
【0029】
図9e、図9fは、「事前フェーズ」においてユーザがさらにコントローラに力を加えて、あらかじめ決められた移動開始境界に達した様子を示す。移動開始境界にコントローラが達すると、図6に示された空間内で操作対象物は段差方向へ向かって移動し、その後落下が始まる。図9g、図9hは、「落下フェーズ」が始まった様子を示す。図9gは固定強度が突然0%になったので「カクッ」とコントローラが倒れる様子を示す。図9i、図9jは、図9g、図9hと同じだが、固定強度が0%でなく10%になった場合を示す。図9g、図9hは、図7bで示したように「落下フェーズ」で固定強度が0%になる場合を示し、図9i、図9jは、図8bで示したように固定強度が10%で、コントローラが段差がある方向に倒れる様子を示したものである。図9k、図9lは「衝突フェーズ」を示す。固定強度が80%に突然戻り、力の位置が(x、y)=(0、0)に戻ったため、突然コントローラがもとに戻ったような力をユーザは受ける。
【0030】
上記3つのフェーズを含むフローチャートの一例を図10に示す。ステップS1001からステップS1003は「事前フェーズ」についてのフローである。ステップS1004からステップS1008は「落下フェーズ」についてのフローである。ステップS1009は「衝突フェーズ」のステップである。ステップS1001において、まず初期状態(事前状態)として、コントローラの力の位置及び固定強度を(x、y)=(0、0)、80%とする。
【0031】
ステップS1002においては、ユーザがコントローラに力を加え、コントローラから発せられた力を打ち消してコントローラを動かした場合、動いた量があらかじめ決められた移動開始境界よりも大きい(移動開始境界を越えた)場合、操作対象物の移動が始まる。ステップS1003においては、移動する方向が段差方向になっている場合にはその後落下が始まる。「落下フェーズ」に入ると、ステップS1004において、コントローラの固定強度を0%や10%などに一気に減らす。固定強度が0%でない場合は、その力の方向を示さなければならないので、ステップS1003においてユーザがコントローラを動かそうとした方向に力を発生させる。
【0032】
ステップS1005においては、地面に衝突したか否かを判定するために落下カウントCの初期設定を行う。ステップS1006においては落下カウントCに1を加える。ここで、1カウントあたりの落下距離をΔLとし、図6に示す段差の高低差をΔL×落下カウントCmaxとした場合、ステップS1007においては、落下する様子(ΔL分だけ落下した様子)を不図示の表示手段の表示画面に表示してユーザに落下の視覚的効果を示す。ステップS1008においては、落下カウントCが落下カウントCmax(落下終了を判定するための値)に達したら落下を終了する。達してない場合は、ステップS1006に戻り、さらに落下のカウントと描画を行う。この落下の最中は、コントローラの固定強度は0%や10%などなので、無反応状態、いわゆる突然の無重力状態となっている。ステップS1009においては、地面に衝突した際は、コントローラの固定強度を一気に元の値の80%に戻し、コントローラの力の位置を(x、y)=(0、0)にすることでユーザの手に衝撃が伝わる。
【0033】
以上の3つのフェーズを経て、本発明の実施の形態では、縦横の2次元の自由度しかないコントローラでも落下という感覚(感触)を、固定強度の値の突然の変化という演出を組み合わせて行う。仮に、特殊なコントローラで高さも移動できるコントローラにおいても本発明の実施の形態の固定強度を突然変える演出の併用は可能である。高所から低所へ落ちるという表現は、実空間や仮想空間でハプティックデバイスを用いて表現可能である。
【0034】
ここで、本発明の実施の形態に係るコントローラ(入力デバイス)の構成の一例について図11を用いて説明する。図11に示すように、受付部111は、ユーザによる移動操作のための入力を受け付けるものである。解析部112は、受け付けられたユーザからの入力に基づいて移動操作の内容を解析するものである。具体的には、どの方向で、どの程度の移動かを解析する。移動制御部113は、解析された移動操作に基づいて操作対象物を仮想空間又は実空間上で移動させるものである。判断部114は、移動制御部113により移動させられる操作対象物が仮想空間又は実空間上に存在する高低差のある段差に近づき、段差がある地点から操作対象物までの距離が所定の値より小さくなったか否かを判断するものである。ここで、所定の値とは、操作対象物が段差に近づきつつあることをユーザに知らせ始めるのに適切と考えられる距離(例えば、力を加えたユーザが疲れる前に操作対象物が落下を開始するような距離など)の値を言う。
【0035】
制御部115は、段差がある地点から操作対象物までの距離が所定の値より小さくなったと判断され、かつ段差がある方向へ操作対象物が移動操作される場合、段差からの落下が開始されるまでの間、操作対象物の移動操作の方向とは略逆方向にコントローラ110を戻そうとする反発力を生じさせ(事前フェーズ)、落下が開始され終了するまでの間は反発力を解放又は低減させ(落下フェーズ)、落下が終了した場合にコントローラ110に反発力を生じさせる(衝突フェーズ)ものである。表示制御部116は、操作対象物の落下中の様子を表示手段(不図示)に表示させるための処理を行うものである。
【0036】
図12に示すように、本発明の実施の形態における仮想空間では、地理的な高低からなる空間だけでなく、概念の空間でも応用が可能である。例えば、パソコンや音楽の曲ファイルを探す際に、それらを格納するフォルダ階層構造において、上のフォルダからなる階層から下のフォルダからなる階層へ移動する際に「落ちる」という演出を伴わせることで、ユーザは「カクッ」と一瞬軽くなる感覚(感触)を受けて、下の階層に移動したことを感じることができる。それは、単に引っ張られるという感覚(感触)とは異なるものである。それによりフォルダの構造を空間的配置と連動させ、理解させやすくすることも可能である。
【産業上の利用可能性】
【0037】
本発明に係る入力デバイス及び入力デバイスによる報知方法は、落下するという感覚をより現実的にユーザに感じられるようにすることができるため、所定の操作が行われた場合にユーザに反発力を伝達する入力デバイス及び入力デバイスによる報知方法などに有用である。
【符号の説明】
【0038】
110 コントローラ(入力デバイス)
111 受付部(受付手段)
112 解析部(解析手段)
113 移動制御部(移動制御手段)
114 判断部(判断手段)
115 制御部(制御手段)
116 表示制御部(表示制御手段)
【技術分野】
【0001】
本発明は、所定の操作がユーザによって行われた場合にユーザに反発力を伝達する入力デバイス及び入力デバイスによる報知方法に関する。
【背景技術】
【0002】
従来の入力デバイス(例えば、ハプティックデバイスなど)は、任意の方向に任意の強度を持った力を発生させることでユーザに振動を与えることができる(下記の非特許文献1を参照)。ユーザは、操作する入力デバイス(以下、コントローラとも言う)から発せられる力を手に感じることで、触覚を通して実空間や仮想空間内にある物体への衝突や接触(物理的様子)を知ることができる。すなわち、コントローラを操作することで空間内を移動し、壁に衝突すればその衝撃がコントローラを通してユーザの手に伝わるというものである。
【0003】
実空間や仮想空間内を、ハプティック機能を持ったコントローラで移動操作する際、動きの自由度が平面方向(縦横方向)だけでなく垂直方向(高さ方向)での移動(3次元移動)が可能の場合には、空間内を移動して「落下」する、すなわち高所から低所に落ちるという状況が存在する。この場合、コントローラを使い、触覚を通して落下したかのような感覚をユーザに与える必要がある。それを実現するために、2次元で移動するコントローラで落下するという感覚を擬似的に表現する場合、落下する方向に近い方向に力を突然発生させてコントローラを自動で引っ張ることで、あたかもその方向に落下したような感覚をユーザの手に与えることができる。
【先行技術文献】
【非特許文献】
【0004】
【非特許文献1】Microsoft Sidewinder Force feedback Pro2http://www.microsoft.com/japan/hardware/sw/fo_feedback_2.aspx
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかし、実際は、落ちるという感覚は引っ張られるというものとは異なる。また、本当に2次元平面のある方向に引っ張られる表現をしたい場合、「引っ張られた」のか「落下した」のかユーザは区別することができなくなる。
【0006】
本発明は、上記の問題点に鑑み、落下するという感覚をより現実的にユーザに感じられるようにすることができる入力デバイスを提供することを目的とする。具体的には、「落下」という現象を「引っ張られる」というものではなく、自由落下により「及んでいた力が解き放たれ、無重力状態になる」という感覚を持って「落下」状態をユーザに表現することができる入力デバイス及び入力デバイスによる報知方法を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記目的を達成するために、本発明によれば、表示手段に表示された仮想空間又は実空間上に存在する、ユーザの操作対象となる操作対象物を前記ユーザの操作により、前記空間内の段差の高い部分から低い部分へ落下させるための操作を含む移動操作を行うための入力デバイスであって、前記ユーザによる移動操作のための入力を受け付ける受付手段と、受け付けられた前記入力に基づいて前記移動操作の内容を解析する解析手段と、解析された前記移動操作に基づいて前記操作対象物を前記仮想空間又は前記実空間上で移動させる移動制御手段と、前記移動制御手段により移動させられる前記操作対象物が前記段差に近づき、前記段差となっている地点から前記操作対象物までの距離が所定の値より小さくなったか否かを判断する判断手段と、前記段差となっている地点から前記操作対象物までの距離が前記所定の値より小さくなったと判断され、かつ前記段差となっている方向へ前記操作対象物が移動操作される場合の前記操作対象物の位置と、前記段差となっている地点からの前記操作対象物の落下が開始される地点の間では、前記操作対象物の移動操作の方向とは略逆方向に前記入力デバイスを戻そうとする反発力を生じさせ、前記落下が開始された地点と終了する地点の間では前記反発力を解放又は低減させ、前記落下が終了した場合に前記入力デバイスに前記反発力を生じさせる制御手段とを備える入力デバイスが提供される。この構成により、落下するという感覚をより現実的にユーザに感じられるようにすることができる。ここで、操作対象物とは、例えば仮想空間又は実空間上で操作の対象となる物やその物の位置を示すカーソルなどを言う。
【0008】
また、本発明の入力デバイスにおいて、前記操作対象物の落下中の様子を前記表示手段に表示させるための処理を行う表示処理手段を更に備えることは、本発明の好ましい態様である。この構成により、ユーザは落下の様子(状況)をより的確に把握することができる。
【0009】
また、本発明によれば、表示手段に表示された仮想空間又は実空間上に存在する、ユーザの操作対象となる操作対象物を前記ユーザの操作により、前記空間内の段差の高い部分から低い部分へ落下させるための操作を含む移動操作を行うための入力デバイスによる報知方法であって、前記ユーザによる移動操作のための入力を受け付ける受付ステップと、受け付けられた前記入力に基づいて前記移動操作の内容を解析する解析ステップと、解析された前記移動操作に基づいて前記操作対象物を前記仮想空間又は前記実空間上で移動させる移動制御ステップと、前記移動制御手段により移動させられる前記操作対象物が前記段差に近づき、前記段差となっている地点から前記操作対象物までの距離が所定の値より小さくなったか否かを判断する判断ステップと、前記段差となっている地点から前記操作対象物までの距離が前記所定の値より小さくなったと判断され、かつ前記段差となっている方向へ前記操作対象物が移動操作される場合の前記操作対象物の位置と、前記段差となっている地点からの前記操作対象物の落下が開始される地点の間では、前記操作対象物の移動操作の方向とは略逆方向に前記入力デバイスを戻そうとする反発力を生じさせ、前記落下が開始された地点と終了する地点の間では前記反発力を解放又は低減させ、前記落下が終了した場合に前記入力デバイスに前記反発力を生じさせる制御ステップとを有する報知方法が提供される。この構成により、落下するという感覚をより現実的にユーザに感じられるようにすることができる。
【0010】
また、本発明の入力デバイスによる報知方法において、前記操作対象物の落下中の様子を前記表示手段に表示させるための処理を行う表示処理ステップを更に有することは、本発明の好ましい態様である。この構成により、ユーザは落下の様子(状況)をより的確に把握することができる。
【発明の効果】
【0011】
本発明の入力デバイス及び入力デバイスによる報知方法は、上記構成を有し、落下するという感覚をより現実的にユーザに感じられるようにすることができる。具体的には、「落下」という現象を「引っ張られる」というものではなく、自由落下により「及んでいた力が解き放たれ、無重力状態になる」という感覚を持って「落下」状態をユーザに表現することができる。また、本発明の入力デバイス及び入力デバイスによる報知方法により、本来、2次元の方向にしか動かないコントローラであっても「落下」を「自由落下」という演出とすることで、仮想空間内で高さの移動という新しい軸での移動の感覚をユーザに与えることが可能となる。
【図面の簡単な説明】
【0012】
【図1a】本発明の実施の形態におけるスティック状のコントローラを示す図である。
【図1b】本発明の実施の形態におけるボタン形状のコントローラを示す図である。
【図2a】本発明の実施の形態におけるコントローラを斜め横から見た図である。
【図2b】本発明の実施の形態におけるコントローラのX軸方向に力が及んでいる様子を示す図である。
【図2c】本発明の実施の形態におけるコントローラをX軸上で左右に最大限に動かした様子を示す図である。
【図2d】本発明の実施の形態におけるコントローラを真上から見た図である。
【図3a】本発明の実施の形態におけるコントローラが固定強度70%で(x、y)=(0、0)の位置にある状態を示す図である。
【図3b】本発明の実施の形態におけるコントローラが固定強度100%で(x、y)=(0、0)の位置にある状態を示す図である。
【図3c】本発明の実施の形態におけるコントローラが固定強度70%で(x、y)=(0、0)の位置にある状態を座標上で示す図である。
【図3d】本発明の実施の形態におけるコントローラが固定強度100%で(x、y)=(0、0)の位置にある状態を座標上で示す図である。
【図4a】本発明の実施の形態におけるコントローラが固定強度70%で(x、y)=(−0.7、0)の位置にある状態を示す図である。
【図4b】本発明の実施の形態におけるコントローラが固定強度100%で(x、y)=(−0.7、0)の位置にある状態を示す図である。
【図4c】本発明の実施の形態におけるコントローラが固定強度70%で(x、y)=(−0.7、0)の位置にある状態を座標上で示す図である。
【図4d】本発明の実施の形態におけるコントローラが固定強度100%で(x、y)=(−0.7、0)の位置にある状態を座標上で示す図である。
【図5a】本発明の実施の形態における図4aに示すコントローラをユーザが(x、y)=(0、0)の位置に移動させようとしている様子を示す図である。
【図5b】本発明の実施の形態における図4bに示すコントローラをユーザが(x、y)=(0、0)の位置に移動させようとしている様子を示す図である。
【図5c】本発明の実施の形態における図4aに示すコントローラをユーザが(x、y)=(0、0)の位置に移動させようとしている様子を座標上で示す図である。
【図5d】本発明の実施の形態における図4bに示すコントローラをユーザが(x、y)=(0、0)の位置に移動させようとしている様子を座標上で示す図である。
【図6】本発明の実施の形態における3つのフェーズについて説明するための図である。
【図7a】本発明の実施の形態におけるハプティック機能を有するコントローラが発生させる力の位置のグラフを示す図である。
【図7b】本発明の実施の形態におけるハプティック機能を有するコントローラの固定強度のグラフを示す図である。
【図8a】本発明の実施の形態における図7aの「落下フェーズ」における固定強度を10%にした際の力の位置のグラフを示す図である。
【図8b】本発明の実施の形態における図7bの「落下フェーズ」における固定強度を10%にした際の固定強度のグラフを示す図である。
【図9a】本発明の実施の形態における「事前フェーズ」においてコントローラがユーザによって触れられていない状態を示す図である。
【図9b】本発明の実施の形態における図9aに対応するコントローラを真上から見た図である。
【図9c】本発明の実施の形態における「事前フェーズ」においてユーザがコントローラに力を加え、段差の方向に移動し始めた様子を示す図である。
【図9d】本発明の実施の形態における図9cに対応するコントローラを真上から見た図である。
【図9e】本発明の実施の形態における「事前フェーズ」においてユーザがさらにコントローラに力を加えて動かし、あらかじめ決められた移動開始境界に達した様子を示す図である。
【図9f】本発明の実施の形態における図9eに対応するコントローラを真上から見た図である。
【図9g】本発明の実施の形態における「落下フェーズ」が始まった様子を示す図である。
【図9h】本発明の実施の形態における図9gに対応するコントローラを真上から見た図である。
【図9i】本発明の実施の形態におけるコントローラの固定強度が10%で、コントローラが段差の方向に倒れる様子を示す図である。
【図9j】本発明の実施の形態における図9iに対応するコントローラを真上から見た図である。
【図9k】本発明の実施の形態における「衝突フェーズ」を示す図である。
【図9l】本発明の実施の形態における図9kに対応するコントローラを真上から見た図である。
【図10】本発明の実施の形態における入力デバイスの3つのフェーズからなるフローの一例を示すフローチャートである。
【図11】本発明の実施の形態に係るコントローラの構成の一例を示す構成図である。
【図12】本発明の実施の形態における入力デバイスの応用について説明するための図である。
【発明を実施するための形態】
【0013】
本発明の実施の形態に係るコントローラ、すなわちハプティック機能を持ち、かつ、発生させる力の位置(後述する)と固定強度を瞬時に変えられる機能を持つコントローラの一例を図1に示す。コントローラの形状は、図1aに示すようなスティック状のものや、図1bに示すようなボタン形状のものが考えられる。少なくともX軸、Y軸の2次元の移動が可能なものを考える。
【0014】
図2aから図2dを用いて、図1aのスティック状のコントローラをどのように動かせるかについて説明する。図2aはコントローラを斜め横から見た図であり、図2bはコントローラのX軸方向に力が及んでいる様子を示している。図2cはコントローラをX軸上で左右に最大限に動かした様子を示した図であり、図2dはコントローラを真上から見た図である。コントローラはX軸とY軸に沿って移動が可能とする。図2c、図2dでは、コントローラの中心(ユーザが操作時にコントローラに触れる部分)が(x、y)=(−1、0)、(x、y)=(0、0)、(x、y)=(0、1)の位置にある場合が示されている。
【0015】
本発明の実施の形態では、任意の位置に任意の強度で力が発生し、コントローラが引き寄せられるという機能を持っているものを扱う。そのようなコントローラの構造の一例を図3aから図3dに示す。図3a、図3cは、コントローラが固定強度70%で(x、y)=(0、0)の位置にある状態を示す。図3b、図3dは、コントローラが固定強度100%で(x、y)=(0、0)の位置にある状態を示す。コントローラは、支柱の付け根の部分をばねで固定され、ばねの位置や長さを調整することでコントローラを移動させたり、固定強度を変化させたりすることができる。
【0016】
ここで、固定強度とは、ある与えられた任意の位置にコントローラが留まろうとする力の強さのことである。固定強度70%と固定強度100%の違いは、(x、y)=(0、0)の位置にあるコントローラを挟むばねの力が弱いか強いかの違いであり、固定強度を変化させることで弱く固定するか強く固定するかの設定を行うことができる。ここでは、固定強度の値を仮に0から100%までの間を変化できるとしても一般性を失わない。固定強度が100%に近いほど、あらかじめ指定された任意の位置にコントローラ(の中心)がかたくなに留まろうとする。固定強度が弱い(低い)とコントローラの操作が緩くなり、ユーザによって他の位置に移動させやすくなる。固定強度が0%の場合は、コントローラに対して全く力が働かなくなり、例えばスティック状の場合、コントローラそのものの重みや重力でコントローラが横に倒れてしまうような状態となる。
【0017】
図4aから図4dでは、(x、y)=(−0.7、0)の位置にコントローラの中心(ユーザが操作時にコントローラに触れる部分)があり、図4a、図4cは固定強度が70%、図4b、図4dは固定強度が100%の場合を示す。図4c、図4dに示すように、コントローラの中心のx座標がx=−0.7であることから、図4a、図4bに示すように、ばねが全体として右側に向く矢印方向に移動してコントローラが左側に倒れるように傾いていることがわかる。
【0018】
図5aから図5dには、図4aから図4dの状態でコントローラの中心をユーザが(x、y)=(0、0)の位置に移動させようとしている様子が示されている。 図5aから図5dでは、本来あるべきコントローラの中心の位置(x、y)=(−0.7、0)に戻ろうとする力Fが働くため、ユーザは手に力Fを感じる。当然、図5a、図5cに示されるような固定強度が70%の場合に比べ、図5b、図5dに示されるような固定強度100%のほう(ばねが強くコントローラを挟んでいる場合のほう)が力Fを強く感じる。
【0019】
本発明の実施の形態では、上述のような物理的仕組みを備えることで、力が働いて留まろうとするコントローラの中心の位置を瞬時に変えることができ、かつ、コントローラが設定された位置に留まろうとする力の強度そのものも瞬時に変えることができるコントローラであることを前提とする。上述のコントローラの位置設定をしたり固定強度を調整したりする構造は、上述のばね構造に限られず、例えばモータの回転により指定された位置へ移動したり、モータへの電流量調節により固定強度の調整をしたりする方法により実施できるものも含まれる。
【0020】
上述のコントローラで、本発明の実施の形態における「落下」の表現を以下に述べる3つのフェーズ、すなわち「事前フェーズ」、「落下フェーズ」、「衝突フェーズ」を通して行う。まず、これらフェーズに関して図6を用いて説明する。図6に示すように、実空間や仮想空間内で高所から低所へ落ちる場合を想定する。図6には、段差の高所に位置する落下開始の地点に近づいていく「事前フェーズ」と、落下していく「落下フェーズ」と、落下後に地面(段差の低所に位置する地点)に衝突する「衝突フェーズ」とが示されている。
【0021】
ユーザが段差になっている方向に操作対象物(例えば、仮想空間内でのユーザの立ち位置や操作対象となっている物など)を移動させようとすると、段差がある方向とは逆の方向に及ぶ力が加わり、ユーザが段差となっている方向へ進むには、その力を打ち消すようにユーザがコントローラに力を加えなければならないよう構成する。これにより、落下直前までは、落下する方向にコントローラにある一定以上の力を入れなければ段差から落ちない状態を作りだす。これを「事前フェーズ」と呼ぶ。なお、段差がある方向とは逆の方向に及ぶ力を加えるのは、例えば段差となっている地点(図6に示す落下開始の地点)から操作対象物までの距離が所定の値(所定の距離)より小さくなった場合が考えられるが、これに限られるものではない。
【0022】
ここで、段差から落下し始めた瞬間に、それまでコントローラに働いていた逆向きの力を突然ほぼゼロにすることで、それを振り切ろうとコントローラに入れていたユーザの力が勢い余り、コントローラが「カクッ」と外れたか、折れて壊れたかのような感覚をユーザに与える。これにより「力が抜けて自由落下が始まった」という感覚(感触)をユーザに与える。落下の間は、それに同期して落下する様子の動画を不図示の表示手段(不図示であるが、例えばディスプレイなど)の画面に表示することで視覚的理解をユーザに深めさせる。落下中、コントローラは壊れて無抵抗に「カクカク」と自由に動く状態となり、「自由落下」により「無重力状態になった」という認識をユーザに与える。これを「落下フェーズ」と呼ぶ。
【0023】
最後に、先ほどまで腑抜け状態(無抵抗に自由に動く状態)だった力の無いコントローラに力を突然発生させる、望ましくはユーザがそれまでコントローラを動かしていた方向と逆の方向に力を発生させることで、ユーザの手に「ガンッ」という衝撃が伝わり、ユーザは「地面に衝突した」という感覚(感触)を受けることができる。これを「衝突フェーズ」と呼ぶ。
【0024】
次に、本発明の実施の形態において提案する3つのフェーズからなる「落下」の演出の詳細について、図7a、図7b、図8a、図8b、図9aから図9l、図10を用いて以下に説明する。
【0025】
図7a、図7bでは、ハプティック機能を有するコントローラの中心が留まろうとする位置(力の位置とも言う)とコントローラの固定強度について、図6に示される3つのフェーズごとに横軸を時間として示されている。図7aのグラフは、横軸が時間、縦軸がコントローラの中心が留まろうとする位置(−1から1まで)であり、図7bのグラフは、横軸が時間、縦軸がコントローラの固定強度(0%から100%まで)である。
【0026】
「事前フェーズ」では、図7aに示すようにコントローラの力の位置がX=0であり、図7bに示すようにコントローラの固定強度は80%であり、固定強度は異なるが図3bのような状態である。次に落下が始まった「落下フェーズ」では、図7bに示すように固定強度は突然0%になり、固定強度がないので図7aに示すように力の位置の値は無効となる。ユーザは「事前フェーズ」で段差のある方向と逆向きの力を打ち消すように力を加えていたが、突然その逆向きの力が0になったので「カクッ」と折れたような、軽くなったような感覚(感触)を得る。これが落下の開始となる。高い段差からずっと落ち続けている間も固定強度は0%のため、コントローラは無力な「カクカク」の状態となる。これは自由落下、無重力状態を模倣するものである。最後の「衝突フェーズ」では、図7aに示すようにコントローラの力の位置を元の位置であるX=0に移動させ、図7bに示すように固定強度を80%に突然戻す。
【0027】
図8a、図8bは、図7a、図7bとほぼ同じであるが、「落下フェーズ」においては図8bに示すように固定強度が完全に0%ではなく、10%にまで突然落とした場合を示す図である。そのため、図8aに示すようにコントローラの力の位置をX=−1として、「事前フェーズ」でユーザがコントローラを動かしていた方向に設定しておくことも可能である。図8a、図8bのような場合でも、固定強度が80%から10%に突然変わったので「カクッ」とコントローラが折れたような感覚をユーザに与えることは可能である。
【0028】
図9aから図9lは、上述の3つのフェーズを経るコントローラを横から見た場合と真上から見た場合とに分けてそれぞれ示している。図9a、図9bは、「事前フェーズ」においてコントローラがユーザによって触れられていない状態を示す。コントローラの固定強度は80%で、力の位置は(x、y)=(0、0)の位置に固定されている。図9c、図9dは、「事前フェーズ」においてユーザがコントローラに力を加え、段差がある方向、すなわちX軸の正の方向に移動し始めた様子を示す。コントローラは、力の位置が(x、y)=(0、0)で固定強度が80%であるため、ユーザは、段差がある方向に操作対象物を進めるためには、コントローラが(x、y)=(0、0)の位置に戻ろうとする力Fを打ち消して、それ以上の力f手をX軸の正の方向に加えなければならない。
【0029】
図9e、図9fは、「事前フェーズ」においてユーザがさらにコントローラに力を加えて、あらかじめ決められた移動開始境界に達した様子を示す。移動開始境界にコントローラが達すると、図6に示された空間内で操作対象物は段差方向へ向かって移動し、その後落下が始まる。図9g、図9hは、「落下フェーズ」が始まった様子を示す。図9gは固定強度が突然0%になったので「カクッ」とコントローラが倒れる様子を示す。図9i、図9jは、図9g、図9hと同じだが、固定強度が0%でなく10%になった場合を示す。図9g、図9hは、図7bで示したように「落下フェーズ」で固定強度が0%になる場合を示し、図9i、図9jは、図8bで示したように固定強度が10%で、コントローラが段差がある方向に倒れる様子を示したものである。図9k、図9lは「衝突フェーズ」を示す。固定強度が80%に突然戻り、力の位置が(x、y)=(0、0)に戻ったため、突然コントローラがもとに戻ったような力をユーザは受ける。
【0030】
上記3つのフェーズを含むフローチャートの一例を図10に示す。ステップS1001からステップS1003は「事前フェーズ」についてのフローである。ステップS1004からステップS1008は「落下フェーズ」についてのフローである。ステップS1009は「衝突フェーズ」のステップである。ステップS1001において、まず初期状態(事前状態)として、コントローラの力の位置及び固定強度を(x、y)=(0、0)、80%とする。
【0031】
ステップS1002においては、ユーザがコントローラに力を加え、コントローラから発せられた力を打ち消してコントローラを動かした場合、動いた量があらかじめ決められた移動開始境界よりも大きい(移動開始境界を越えた)場合、操作対象物の移動が始まる。ステップS1003においては、移動する方向が段差方向になっている場合にはその後落下が始まる。「落下フェーズ」に入ると、ステップS1004において、コントローラの固定強度を0%や10%などに一気に減らす。固定強度が0%でない場合は、その力の方向を示さなければならないので、ステップS1003においてユーザがコントローラを動かそうとした方向に力を発生させる。
【0032】
ステップS1005においては、地面に衝突したか否かを判定するために落下カウントCの初期設定を行う。ステップS1006においては落下カウントCに1を加える。ここで、1カウントあたりの落下距離をΔLとし、図6に示す段差の高低差をΔL×落下カウントCmaxとした場合、ステップS1007においては、落下する様子(ΔL分だけ落下した様子)を不図示の表示手段の表示画面に表示してユーザに落下の視覚的効果を示す。ステップS1008においては、落下カウントCが落下カウントCmax(落下終了を判定するための値)に達したら落下を終了する。達してない場合は、ステップS1006に戻り、さらに落下のカウントと描画を行う。この落下の最中は、コントローラの固定強度は0%や10%などなので、無反応状態、いわゆる突然の無重力状態となっている。ステップS1009においては、地面に衝突した際は、コントローラの固定強度を一気に元の値の80%に戻し、コントローラの力の位置を(x、y)=(0、0)にすることでユーザの手に衝撃が伝わる。
【0033】
以上の3つのフェーズを経て、本発明の実施の形態では、縦横の2次元の自由度しかないコントローラでも落下という感覚(感触)を、固定強度の値の突然の変化という演出を組み合わせて行う。仮に、特殊なコントローラで高さも移動できるコントローラにおいても本発明の実施の形態の固定強度を突然変える演出の併用は可能である。高所から低所へ落ちるという表現は、実空間や仮想空間でハプティックデバイスを用いて表現可能である。
【0034】
ここで、本発明の実施の形態に係るコントローラ(入力デバイス)の構成の一例について図11を用いて説明する。図11に示すように、受付部111は、ユーザによる移動操作のための入力を受け付けるものである。解析部112は、受け付けられたユーザからの入力に基づいて移動操作の内容を解析するものである。具体的には、どの方向で、どの程度の移動かを解析する。移動制御部113は、解析された移動操作に基づいて操作対象物を仮想空間又は実空間上で移動させるものである。判断部114は、移動制御部113により移動させられる操作対象物が仮想空間又は実空間上に存在する高低差のある段差に近づき、段差がある地点から操作対象物までの距離が所定の値より小さくなったか否かを判断するものである。ここで、所定の値とは、操作対象物が段差に近づきつつあることをユーザに知らせ始めるのに適切と考えられる距離(例えば、力を加えたユーザが疲れる前に操作対象物が落下を開始するような距離など)の値を言う。
【0035】
制御部115は、段差がある地点から操作対象物までの距離が所定の値より小さくなったと判断され、かつ段差がある方向へ操作対象物が移動操作される場合、段差からの落下が開始されるまでの間、操作対象物の移動操作の方向とは略逆方向にコントローラ110を戻そうとする反発力を生じさせ(事前フェーズ)、落下が開始され終了するまでの間は反発力を解放又は低減させ(落下フェーズ)、落下が終了した場合にコントローラ110に反発力を生じさせる(衝突フェーズ)ものである。表示制御部116は、操作対象物の落下中の様子を表示手段(不図示)に表示させるための処理を行うものである。
【0036】
図12に示すように、本発明の実施の形態における仮想空間では、地理的な高低からなる空間だけでなく、概念の空間でも応用が可能である。例えば、パソコンや音楽の曲ファイルを探す際に、それらを格納するフォルダ階層構造において、上のフォルダからなる階層から下のフォルダからなる階層へ移動する際に「落ちる」という演出を伴わせることで、ユーザは「カクッ」と一瞬軽くなる感覚(感触)を受けて、下の階層に移動したことを感じることができる。それは、単に引っ張られるという感覚(感触)とは異なるものである。それによりフォルダの構造を空間的配置と連動させ、理解させやすくすることも可能である。
【産業上の利用可能性】
【0037】
本発明に係る入力デバイス及び入力デバイスによる報知方法は、落下するという感覚をより現実的にユーザに感じられるようにすることができるため、所定の操作が行われた場合にユーザに反発力を伝達する入力デバイス及び入力デバイスによる報知方法などに有用である。
【符号の説明】
【0038】
110 コントローラ(入力デバイス)
111 受付部(受付手段)
112 解析部(解析手段)
113 移動制御部(移動制御手段)
114 判断部(判断手段)
115 制御部(制御手段)
116 表示制御部(表示制御手段)
【特許請求の範囲】
【請求項1】
表示手段に表示された仮想空間又は実空間上に存在する、ユーザの操作対象となる操作対象物を前記ユーザの操作により、前記空間内の段差の高い部分から低い部分へ落下させるための操作を含む移動操作を行うための入力デバイスであって、
前記ユーザによる移動操作のための入力を受け付ける受付手段と、
受け付けられた前記入力に基づいて前記移動操作の内容を解析する解析手段と、
解析された前記移動操作に基づいて前記操作対象物を前記仮想空間又は前記実空間上で移動させる移動制御手段と、
前記移動制御手段により移動させられる前記操作対象物が前記段差に近づき、前記段差となっている地点から前記操作対象物までの距離が所定の値より小さくなったか否かを判断する判断手段と、
前記段差となっている地点から前記操作対象物までの距離が前記所定の値より小さくなったと判断され、かつ前記段差となっている方向へ前記操作対象物が移動操作される場合の前記操作対象物の位置と、前記段差となっている地点からの前記操作対象物の落下が開始される地点の間では、前記操作対象物の移動操作の方向とは略逆方向に前記入力デバイスを戻そうとする反発力を生じさせ、前記落下が開始された地点と終了する地点の間では前記反発力を解放又は低減させ、前記落下が終了した場合に前記入力デバイスに前記反発力を生じさせる制御手段とを、
備える入力デバイス。
【請求項2】
前記操作対象物の落下中の様子を前記表示手段に表示させるための処理を行う表示処理手段を更に備える請求項1に記載の入力デバイス。
【請求項3】
表示手段に表示された仮想空間又は実空間上に存在する、ユーザの操作対象となる操作対象物を前記ユーザの操作により、前記空間内の段差の高い部分から低い部分へ落下させるための操作を含む移動操作を行うための入力デバイスによる報知方法であって、
前記ユーザによる移動操作のための入力を受け付ける受付ステップと、
受け付けられた前記入力に基づいて前記移動操作の内容を解析する解析ステップと、
解析された前記移動操作に基づいて前記操作対象物を前記仮想空間又は前記実空間上で移動させる移動制御ステップと、
前記移動制御手段により移動させられる前記操作対象物が前記段差に近づき、前記段差となっている地点から前記操作対象物までの距離が所定の値より小さくなったか否かを判断する判断ステップと、
前記段差となっている地点から前記操作対象物までの距離が前記所定の値より小さくなったと判断され、かつ前記段差となっている方向へ前記操作対象物が移動操作される場合の前記操作対象物の位置と、前記段差となっている地点からの前記操作対象物の落下が開始される地点の間では、前記操作対象物の移動操作の方向とは略逆方向に前記入力デバイスを戻そうとする反発力を生じさせ、前記落下が開始された地点と終了する地点の間では前記反発力を解放又は低減させ、前記落下が終了した場合に前記入力デバイスに前記反発力を生じさせる制御ステップとを、
有する報知方法。
【請求項4】
前記操作対象物の落下中の様子を前記表示手段に表示させるための処理を行う表示処理ステップを更に有する請求項3に記載の報知方法。
【請求項1】
表示手段に表示された仮想空間又は実空間上に存在する、ユーザの操作対象となる操作対象物を前記ユーザの操作により、前記空間内の段差の高い部分から低い部分へ落下させるための操作を含む移動操作を行うための入力デバイスであって、
前記ユーザによる移動操作のための入力を受け付ける受付手段と、
受け付けられた前記入力に基づいて前記移動操作の内容を解析する解析手段と、
解析された前記移動操作に基づいて前記操作対象物を前記仮想空間又は前記実空間上で移動させる移動制御手段と、
前記移動制御手段により移動させられる前記操作対象物が前記段差に近づき、前記段差となっている地点から前記操作対象物までの距離が所定の値より小さくなったか否かを判断する判断手段と、
前記段差となっている地点から前記操作対象物までの距離が前記所定の値より小さくなったと判断され、かつ前記段差となっている方向へ前記操作対象物が移動操作される場合の前記操作対象物の位置と、前記段差となっている地点からの前記操作対象物の落下が開始される地点の間では、前記操作対象物の移動操作の方向とは略逆方向に前記入力デバイスを戻そうとする反発力を生じさせ、前記落下が開始された地点と終了する地点の間では前記反発力を解放又は低減させ、前記落下が終了した場合に前記入力デバイスに前記反発力を生じさせる制御手段とを、
備える入力デバイス。
【請求項2】
前記操作対象物の落下中の様子を前記表示手段に表示させるための処理を行う表示処理手段を更に備える請求項1に記載の入力デバイス。
【請求項3】
表示手段に表示された仮想空間又は実空間上に存在する、ユーザの操作対象となる操作対象物を前記ユーザの操作により、前記空間内の段差の高い部分から低い部分へ落下させるための操作を含む移動操作を行うための入力デバイスによる報知方法であって、
前記ユーザによる移動操作のための入力を受け付ける受付ステップと、
受け付けられた前記入力に基づいて前記移動操作の内容を解析する解析ステップと、
解析された前記移動操作に基づいて前記操作対象物を前記仮想空間又は前記実空間上で移動させる移動制御ステップと、
前記移動制御手段により移動させられる前記操作対象物が前記段差に近づき、前記段差となっている地点から前記操作対象物までの距離が所定の値より小さくなったか否かを判断する判断ステップと、
前記段差となっている地点から前記操作対象物までの距離が前記所定の値より小さくなったと判断され、かつ前記段差となっている方向へ前記操作対象物が移動操作される場合の前記操作対象物の位置と、前記段差となっている地点からの前記操作対象物の落下が開始される地点の間では、前記操作対象物の移動操作の方向とは略逆方向に前記入力デバイスを戻そうとする反発力を生じさせ、前記落下が開始された地点と終了する地点の間では前記反発力を解放又は低減させ、前記落下が終了した場合に前記入力デバイスに前記反発力を生じさせる制御ステップとを、
有する報知方法。
【請求項4】
前記操作対象物の落下中の様子を前記表示手段に表示させるための処理を行う表示処理ステップを更に有する請求項3に記載の報知方法。
【図1a】
【図1b】
【図2a】
【図2b】
【図2c】
【図2d】
【図3a】
【図3b】
【図3c】
【図3d】
【図4a】
【図4b】
【図4c】
【図4d】
【図5a】
【図5b】
【図5c】
【図5d】
【図6】
【図7a】
【図7b】
【図8a】
【図8b】
【図9a】
【図9b】
【図9c】
【図9d】
【図9e】
【図9f】
【図9g】
【図9h】
【図9i】
【図9j】
【図9k】
【図9l】
【図10】
【図11】
【図12】
【図1b】
【図2a】
【図2b】
【図2c】
【図2d】
【図3a】
【図3b】
【図3c】
【図3d】
【図4a】
【図4b】
【図4c】
【図4d】
【図5a】
【図5b】
【図5c】
【図5d】
【図6】
【図7a】
【図7b】
【図8a】
【図8b】
【図9a】
【図9b】
【図9c】
【図9d】
【図9e】
【図9f】
【図9g】
【図9h】
【図9i】
【図9j】
【図9k】
【図9l】
【図10】
【図11】
【図12】
【公開番号】特開2012−203627(P2012−203627A)
【公開日】平成24年10月22日(2012.10.22)
【国際特許分類】
【出願番号】特願2011−67316(P2011−67316)
【出願日】平成23年3月25日(2011.3.25)
【出願人】(502324066)株式会社デンソーアイティーラボラトリ (332)
【Fターム(参考)】
【公開日】平成24年10月22日(2012.10.22)
【国際特許分類】
【出願日】平成23年3月25日(2011.3.25)
【出願人】(502324066)株式会社デンソーアイティーラボラトリ (332)
【Fターム(参考)】
[ Back to top ]