IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

7610618情報処理システム、コントローラ、情報処理方法、情報処理プログラム
<>
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図1
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図2
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図3
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図4
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図5
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図6
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図7
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図8
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図9
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図10
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図11
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図12
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図13
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図14
  • -情報処理システム、コントローラ、情報処理方法、情報処理プログラム 図15
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-12-24
(45)【発行日】2025-01-08
(54)【発明の名称】情報処理システム、コントローラ、情報処理方法、情報処理プログラム
(51)【国際特許分類】
   G06F 3/01 20060101AFI20241225BHJP
   G06F 3/0338 20130101ALI20241225BHJP
【FI】
G06F3/01 560
G06F3/0338
【請求項の数】 20
(21)【出願番号】P 2022567980
(86)(22)【出願日】2020-12-10
(86)【国際出願番号】 JP2020046104
(87)【国際公開番号】W WO2022123737
(87)【国際公開日】2022-06-16
【審査請求日】2023-08-07
(73)【特許権者】
【識別番号】000233778
【氏名又は名称】任天堂株式会社
(74)【代理人】
【識別番号】110001276
【氏名又は名称】弁理士法人小笠原特許事務所
(74)【代理人】
【識別番号】100130269
【弁理士】
【氏名又は名称】石原 盛規
(72)【発明者】
【氏名】青木 孝文
(72)【発明者】
【氏名】岡村 考師
(72)【発明者】
【氏名】谷口 祐規
(72)【発明者】
【氏名】生田 紘樹
(72)【発明者】
【氏名】武井 誠也
【審査官】桐山 愛世
(56)【参考文献】
【文献】特開2020-035376(JP,A)
【文献】特開2014-228703(JP,A)
【文献】特表2015-525105(JP,A)
【文献】特開平07-213740(JP,A)
【文献】特開2016-007345(JP,A)
【文献】特開2006-260001(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/01
G06F 3/0338
(57)【特許請求の範囲】
【請求項1】
ユーザの操作によって初期位置から変位される操作子と、
第1の状態において、前記操作子の位置の可動域を2次元領域である基本可動域に規制する規制部材と、
印加される磁場の強度に応じて粘性が変化し、前記操作子の位置が変位する際に当該粘性に応じた抵抗となる磁気粘性流体を用いた抵抗部と、
前記磁気粘性流体に対して磁場を与える磁場発生部とを備えるコントローラと、
前記磁場発生部を制御可能な回路と、を備える情報処理システムであって、
前記回路は、
前記第1の状態と、第2の状態とを切り替え可能であり、
前記第2の状態においては、
前記基本可動域に含まれる領域であって、前記初期位置を含む領域である第1領域に前記操作子が位置する場合には、前記磁気粘性流体の粘度が第1の粘性となるように前記磁場発生部を制御し、
前記基本可動域に含まれる領域であって、前記第1領域とは異なる第2領域に前記操作子が位置する場合には、前記磁気粘性流体の粘度が前記第1の粘性とは異なる第2の粘性となるように前記磁場発生部を制御し、
前記第2の状態である場合、当該第1領域および第2領域を使用していることを示す情報をユーザに通知し、
前記第1の状態から第2の状態に切り替える際、前記第1領域に前記操作子を移動するよう前記ユーザに指示するための情報を当該ユーザに通知する、情報処理システム。
【請求項2】
前記第2の粘性は、前記第1の粘性よりも磁気粘性流体の粘度が高くなるように設定される、請求項1に記載の情報処理システム。
【請求項3】
前記第1の粘性は、前記操作子の位置が変位可能な粘性であり、前記第2の粘性は、前記磁気粘性流体の粘性が当該操作子の位置が実質的に変位できない抵抗となるような粘性である、請求項1に記載の情報処理システム。
【請求項4】
前記情報処理システムは、所定のアプリケーションを実行可能な情報処理装置を更に備え、
前記第1領域の位置および/または形状は、前記情報処理装置において実行中である前記所定のアプリケーションの状況に応じて設定される、請求項1乃至3のいずれかに記載の情報処理システム。
【請求項5】
前記所定のアプリケーションは、所定のオブジェクトを操作対象オブジェクトとして前記ユーザに操作させるアプリケーションであり、
前記第1領域の位置および/または形状は、前記所定のアプリケーションの実行中における前記操作対象オブジェクトの状態に応じて設定される、請求項4に記載の情報処理システム。
【請求項6】
前記所定のアプリケーションは、仮想空間内において所定のオブジェクトを操作対象オブジェクトとして前記ユーザに操作させるアプリケーションであり、
前記第1領域の位置および/または形状は、前記仮想空間内における前記操作対象オブジェクトの存在位置およびまたは存在位置の周辺環境に応じて設定される、請求項1乃至5のいずれかに記載の情報処理システム。
【請求項7】
前記所定のアプリケーションは、複数のオブジェクトの中からいずれかのオブジェクトを操作対象オブジェクトとして前記ユーザが選択可能、またはいずれかのオブジェクトが自動的に選択されるアプリケーションであり、
前記第1領域の位置および/または形状は、前記選択された操作対象オブジェクトに応じて設定される、請求項1乃至6のいずれかに記載の情報処理システム。
【請求項8】
前記情報処理システムは、前記第2の状態では、前記第1領域の形状を示す情報を前記ユーザに通知する、請求項に記載の情報処理システム。
【請求項9】
前記情報処理システムは、
前記通知後、前記操作子が前記第1領域の内部に変位した後に、前記第1の状態から前記第2の状態に切り替える、請求項1に記載の情報処理システム。
【請求項10】
前記情報処理システムは、前記操作子の変位方向を判定する変位方向判定手段を更に備え、
前記操作子が第2領域内に位置するときに、前記操作子の変位方向に応じて前記粘性を制御する、請求項1乃至のいずれかに記載の情報処理システム。
【請求項11】
前記変位方向が前記第2領域から第1領域へ向かう第1方向と判定された場合、粘性を小さくする、請求項10に記載の情報処理システム。
【請求項12】
前記第1方向は、前記初期位置へと向かう方向である、請求項11に記載の情報処理システム。
【請求項13】
前記変位方向が当該第2領域から更に、前記第2領域から前記第1領域へ向かう第1方向とは異なる第2方向と判定された場合、粘性を大きくするあるいはそのときの粘性を維持する、請求項10に記載の情報処理システム。
【請求項14】
前記第1領域は、少なくとも3つの角を頂点とする形状を有する第1種領域、前記初期位置を通過する所定の1軸方向に延びる形状を有する第2種領域、および、所定の第1方向に延びる領域と、当該第1方向と前記初期位置において直交する第2方向に延びる領域を有する第3種領域のうちの、いずれか1つの領域である、請求項1乃至13のいずれかに記載の情報処理システム。
【請求項15】
前記第1領域として、前記基本可動域を同じ大きさの領域が設定され、前記第2領域として、その全周が前記第1領域に囲まれており、当該第1領域の一部分を占める位置となるように設定される、請求項1乃至13のいずれかに記載の情報処理システム。
【請求項16】
前記情報処理システムは、前記ユーザの操作に基づいて前記第1領域の位置および/または形状を設定するユーザ設定手段を更に備える、請求項1乃至15のいずれかに記載の情報処理システム。
【請求項17】
前記コントローラは、第1の操作子と第2の操作子とを備えており、
前記第1の操作子に設定される前記第1領域と、前記第2の操作子に設定される前記第1領域とでは領域の大きさ、および/または形状が異なるように設定される、請求項1乃至16のいずれかに記載の情報処理システム。
【請求項18】
ユーザの操作によって初期位置から変位される操作子と、
前記操作子の位置の可動域を、2次元領域である基本可動域に規制する規制部材と、
印加される磁場の強度に応じて粘性が変化し、前記操作子の位置が変位する際に当該粘性に応じた抵抗となる磁気粘性流体を用いた抵抗部と、
前記磁気粘性流体に対して磁場を与える磁場発生部と
前記磁場発生部を制御可能な回路と、を備えるコントローラであって、
前記操作子の現在位置に応じて、前記回路に前記磁場発生部の磁場の強度を制御させることで、前記磁気粘性流体の粘性を所定の粘性に変化させ
前記回路は、前記第1の状態と、第2の状態とを切り替え可能であり、
前記第2の状態においては、前記基本可動域に含まれる領域であって前記初期位置を含む領域である第1領域に前記操作子が位置する場合には、前記磁気粘性流体の粘度が第1の粘性となるように前記回路に前記磁場発生部を制御させ、前記基本可動域に含まれる領域であって前記第1領域とは異なる第2領域に前記操作子が位置する場合には、前記磁気粘性流体の粘度が前記第1の粘性とは異なる第2の粘性となるように前記回路に前記磁場発生部を制御させ
前記第2の状態である場合、当該第1領域および第2領域を使用していることを示す情報をユーザに通知し、
前記第1の状態から第2の状態に切り替える際、前記第1領域に前記操作子を移動するよう前記ユーザに指示するための情報を当該ユーザに通知する、コントローラ。
【請求項19】
ユーザの操作によって初期位置から変位される操作子と、
第1の状態において、前記操作子の位置の可動域を2次元領域である基本可動域に規制する規制部材と、
印加される磁場の強度に応じて粘性が変化し、前記操作子の位置が変位する際に当該粘性に応じた抵抗となる磁気粘性流体を用いた抵抗部と、
前記磁気粘性流体に対して磁場を与える磁場発生部とを備えるコントローラと、
前記磁場発生部を制御可能な回路と、を備える情報処理システムを制御するための情報処理方法であって、
前記回路は、前記第1の状態と、第2の状態とを切り替え可能であり、
前記第2の状態においては、前記基本可動域に含まれる領域であって前記初期位置を含む領域である第1領域に前記操作子が位置する場合には、前記磁気粘性流体の粘度が第1の粘性となるように前記回路に前記磁場発生部を制御させ、前記基本可動域に含まれる領域であって前記第1領域とは異なる第2領域に前記操作子が位置する場合には、前記磁気粘性流体の粘度が前記第1の粘性とは異なる第2の粘性となるように前記回路に前記磁場発生部を制御させ
前記第2の状態である場合、当該第1領域および第2領域を使用していることを示す情報をユーザに通知し、
前記第1の状態から第2の状態に切り替える際、前記第1領域に前記操作子を移動するよう前記ユーザに指示するための情報を当該ユーザに通知する、情報処理方法。
【請求項20】
ユーザの操作によって初期位置から変位される操作子と、
第1の状態において、前記操作子の位置の可動域を、2次元領域である基本可動域に規制する規制部材と、
印加される磁場の強度に応じて粘性が変化し、前記操作子の位置が変位する際に当該粘性に応じた抵抗となる磁気粘性流体を用いた抵抗部と、
前記磁気粘性流体に対して磁場を与える磁場発生部とを備えるコントローラと、
前記磁場発生部を制御可能な回路と、を備える情報処理システムのコンピュータに実行させる情報処理プログラムであって、
前記コンピュータに、
前記第1の状態と、当該第1の状態とは異なる第2の状態とを切り替えさせ、
前記第2の状態においては、前記基本可動域に含まれる領域であって、前記初期位置を含む領域である第1領域に前記操作子が位置する場合には、前記磁気粘性流体の粘度が第1の粘性となるように前記磁場発生部を制御させ、前記基本可動域に含まれる領域であって、前記第1領域とは異なる第2領域に前記操作子が位置する場合には、前記磁気粘性流体の粘度が前記第1の粘性とは異なる第2の粘性となるように前記磁場発生部を制御させ
前記第2の状態である場合、当該第1領域および第2領域を使用していることを示す情報をユーザに通知し、
前記第1の状態から第2の状態に切り替える際、前記第1領域に前記操作子を移動するよう前記ユーザに指示するための情報を当該ユーザに通知する、情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ボタンやスティック等の操作子を有するコントローラを少なくとも含む情報処理システム、コントローラ、情報処理方法、情報処理プログラムに関する。
【背景技術】
【0002】
従来から、ボタンやスティック等の操作子を備えたコントローラが知られていた。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2017-004523号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
このようなコントローラでは、操作子を操作する際にユーザが受け取る情報量や感覚の向上という点において、改善の余地があった。
【0005】
それ故に、本発明の目的は、操作子を操作する際にユーザが受け取る情報量や感覚の向上することができる情報処理システム、コントローラ、情報処理方法、情報処理プログラムを提供することである。
【課題を解決するための手段】
【0006】
上記目的は、例えば以下のような構成例で達成される。
【0007】
構成例の一例は、ユーザの操作によって初期位置から変位される操作子と、第1の状態において、操作子の位置の可動域を、2次元領域である基本可動域に規制する規制部材と、印加される磁場の強度に応じて粘性が変化し、操作子の位置が変位する際に当該粘性に応じた抵抗となる磁気粘性流体を用いた抵抗部と、磁気粘性流体に対して磁場を与える磁場発生部とを備えるコントローラと、磁場発生部を制御可能な回路と、を備える情報処理システムである。上記回路は、第1の状態と、第2の状態とを切り替え可能である。そして、当該回路は、第2の状態においては、上記基本可動域に含まれる領域であって、初期位置を含む領域である第1領域に上記操作子が位置する場合には、磁気粘性流体の粘度が第1の粘性となるように磁場発生部を制御し、上記基本可動域に含まれる領域であって、第1領域とは異なる第2領域に位置する場合には、磁気粘性流体の粘度が第1の粘性とは異なる第2の粘性となるように磁場発生部を制御する。。
【0008】
上記構成例によれば、操作子の現在位置に応じて磁気粘性流体の粘性を変化させることができる。これにより、操作子の触感を用いた様々な表現が可能となる。
【0009】
他の構成例として、第2の粘性は、第1の粘性よりも磁気粘性流体の粘度が高くなるように設定されてもよい。
【0010】
他の構成例として、第1の粘性は、操作子の位置が変位可能な粘性であり、第2の粘性は、磁気粘性流体の粘性が当該操作子の位置が実質的に変位できない抵抗となるような粘性であってもよい。
【0011】
上記構成例によれば、当該操作子の可動範囲を擬似的に第1領域内に制限することができる。
【0012】
他の構成例として、情報処理システムは、所定のアプリケーションを実行可能な情報処理装置を更に備えていてもよい。そして、第1領域の位置および/または形状は、情報処理装置において実行中である所定のアプリケーションの状況に応じて設定されてもよい。
【0013】
上記構成例によれば、第1領域として設定する変位可能領域の大きさや形状を、アプリケーションの状況に応じて柔軟に設定することが可能となる。
【0014】
更に他の構成例として、所定のアプリケーションは、所定のオブジェクトを操作対象オブジェクトとしてユーザに操作させるアプリケーションであってもよい。そして、第1領域の位置および/または形状は、所定のアプリケーションの実行中における操作対象オブジェクトの状態に応じて設定されてもよい。
【0015】
上記構成例によれば、ユーザが操作する操作対象オブジェクトの状態に応じて第1領域の内容を設定するため、操作子によってユーザに与えられる感触を用いて、操作対象オブジェクトの状態に関する様々な表現を行うことができる。
【0016】
更に他の構成例として、所定のアプリケーションは、仮想空間内において所定のオブジェクトを操作対象オブジェクトとしてユーザに操作させるアプリケーションであってもよい。そして、第1領域の位置および/または形状は、仮想空間内における操作対象オブジェクトの存在位置および/または存在位置の周辺環境に応じて設定されてもよい。
【0017】
上記構成例によれば、仮想空間内において、操作対象オブジェクトのいる場所の周辺環境に応じて第1領域の内容を設定できる。これにより、仮想空間内における地形等の環境について、操作子を用いてユーザに伝える触感による様々な表現ができる。
【0018】
更に他の構成例として、所定のアプリケーションは、複数のオブジェクトの中からいずれかのオブジェクトを操作対象オブジェクトとしてユーザが選択可能、またはいずれかのオブジェクトが自動的に選択されるアプリケーションであってもよい。第1領域の位置および/または形状は、選択された操作対象オブジェクトに応じて設定されてもよい。
【0019】
上記構成例によれば、複数オブジェクトから所定のオブジェクトが選択できるアプリケーションにおいて、選択したオブジェクトに応じた様々な操作感覚を提供できる。
【0020】
更に他の構成例として、第2の状態である場合、当該第1領域および第2領域を使用していることを示す情報をユーザに通知してもよい。
【0021】
更に他の構成例として、情報処理システムは、第2の状態では、第1領域の形状を示す情報をユーザに通知してもよい。
【0022】
上記構成例によれば、第1領域および第2領域を用いた制御を行っている間は、操作子の可動範囲が通常と異なっている状態であることをユーザに認識させることができる。これにより、急な操作感覚の変化によってユーザに混乱を招くことを防ぐことができる。
【0023】
更に他の構成例として、情報処理システムは、第1の状態から第2の状態に切り替える際、第1領域に操作子を移動するようユーザに指示するための情報を当該ユーザに通知してもよい。
【0024】
上記構成例によれば、操作子の可動範囲が擬似的に第1領域内に制限される場合、そのことを事前にユーザに知らせることができ、また、これに先立って操作子の位置を移動させる必要性があることをユーザに伝えることができる。
【0025】
更に他の構成例として、情報処理システムは、上記の通知の後、操作子が第1領域の内部に変位した後に、第1の状態から第2の状態に切り替えてもよい。
【0026】
上記構成例によれば、操作子が第1領域内にはいったことが確認されてから第2の状態により制御を開始できる。
【0027】
更に他の構成例として、情報処理システムは、上記操作子の変位方向を判定する変位方向判定手段を更に備えていてもよい。そして、操作子が第2領域内に位置するときに、当該操作子の変位方向に応じて粘性を制御してもよい。
【0028】
上記構成例によれば、操作子が第2領域内に位置している場合に、その変位方向に基づいた粘性制御を行うことができる。
【0029】
更に他の構成例として、変位方向が第2領域から第1領域へ向かう第1方向と判定された場合、粘性を小さくしてもよい。
【0030】
上記構成例によれば、操作子について第1領域に戻ろうとする動きが行われた場合、戻りやすくすることができる。
【0031】
更に他の構成例として、第1方向は、上記初期位置へと向かう方向であってもよい。
【0032】
上記構成例によれば、初期位置に戻ろうとする操作子の動きが行われた場合、戻りやすくすることができる。
【0033】
更に他の構成例として、変位方向が第2領域から更に、当該第2領域から第1領域へ向かう第1方向とは異なる第2方向と判定された場合、粘性を大きくする、あるいはそのときの粘性を維持してもよい。
【0034】
上記構成例によれば、操作子が第1領域から離れようとする動きを抑制することができる。
【0035】
更に他の構成例として、第2領域は、少なくとも3つの角を頂点とする形状を有する第1種領域、初期位置を通過する所定の1軸方向に延びる形状を有する第2種領域、および、所定の1軸方向に延びる領域と、当該第1方向と初期位置において直行する第2方向に延びる領域を有する第3種領域のうちの、いずれか1つの領域であってもよい。
【0036】
更に他の構成例として、第1領域として、基本可動域を同じ大きさの領域が設定され、第2領域として、その全周が第1領域に囲まれており、当該第1領域の一部分を占める位置となるように設定されてもよい。
【0037】
上記構成例によれば、基本可動域内の一部に、操作子が変位できないような領域を第2領域として設定することができる。これにより、例えば、画面では何も表示されていないが、画面内のある位置に何かの物体が隠されている、という感覚を、操作子を通じた触感によってユーザに提供できる。その結果、今までに無い新たな操作感覚をユーザに提供できる。
【0038】
更に他の構成例として、情報処理システムは、ユーザの操作に基づいて第2領域の位置および/または形状を設定するユーザ設定手段を更に備えていてもよい。
【0039】
上記構成例によれば、ユーザの個人差や好みに応じた操作感を設定して提供することができる。
【0040】
更に他の構成例として、コントローラは、第1の操作子と第2の操作子とを備えていてもよい。そして、第1の操作子に設定される第1領域と、第2の操作子に設定される第1領域とでは領域の大きさ、および/または形状が異なるように設定されてもよい。
【0041】
上記構成例によれば、2つの操作子でそれぞれ異なる操作感をユーザに提供できる。これにより、多様な操作感をユーザに提供できる。
【発明の効果】
【0042】
本実施形態によれば、アプリケーションの状況に応じて、操作子の触感を用いた様々な表現が可能となる。
【図面の簡単な説明】
【0043】
図1図1は、情報処理システム1の構成を示した図である。
図2図2は、情報処理装置本体2の内部構成の一例を示す機能ブロック図である。
図3図3は、コントローラ4の内部構成を示す機能ブロック図である。
図4図4は、スティックデバイスの斜視図である。
図5図5は、スティックデバイスの各パーツの位置関係を示す模式図である。
図6図6は、スティックデバイスの各パーツの位置関係を示す模式図である。
図7図7は、スティックデバイスの各パーツの位置関係を示す模式図である。
図8図8は、MRFユニットの構成例を説明するための模式図である。
図9図9は、アナログスティック42の内部構成を示す機能ブロック図である。
図10図10は、領域パターンの一例を示す図である。
図11図11は、領域パターンの一例を示す図である。
図12図12は、情報処理装置本体2の記憶部12に記憶されるデータの一例を示すための図である。
図13図13は、アプリケーション処理の詳細を示すフローチャートである。
図14図14は、領域パターンの一例を示す図である。
図15図15は、第2の実施例の制御処理の詳細を示すフローチャートである。
【発明を実施するための形態】
【0044】
まず、図1を参照して、本実施形態に係る情報処理システムの一例について説明する。図1は、本実施形態にかかる情報処理システムの構成を模式的に示した図である。図1において、情報処理システム1は、情報処理装置本体2と、モニタ3と、コントローラ4とを備えている。当該情報処理システム1では、情報処理装置本体2において所定の情報処理が実行され、その処理の結果生成された所定の画像や音声がモニタ3に出力される。また、本実施形態では、コントローラ4は、無線通信が可能な通信部を内蔵しており、情報処理装置本体2と無線接続されて用いられる。他の実施形態では、情報処理装置本体2とコントローラ4とは有線で接続されてもよい。コントローラ4に対して行われたユーザの操作内容を示すデータがコントローラ4から情報処理装置本体2に送信される。また、情報処理装置本体2からも、コントローラ4の動作を制御するためのデータがコントローラ4に送信される。コントローラ4に内蔵されているコントローラ制御部(後述)は、このようなデータの送受信を含むコントローラ4の各種制御を行う。
【0045】
次に、情報処理装置本体2の内部構成について説明する。図2は、情報処理装置本体2の内部構成の一例を示す機能ブロック図である。図2において、情報処理装置本体2は、プロセッサ11を備える。プロセッサ11は、情報処理装置本体2を制御するための回路である。プロセッサ11は、情報処理装置本体2において実行される各種の情報処理を実行する。例えば、CPU(Central Processing Unit)のみから構成されてもよいし、CPU機能、GPU(Graphics Processing Unit)機能等の複数の機能を含むSoC(System-on-a-chip)から構成されてもよい。プロセッサ11は、記憶部12に記憶される情報処理プログラム(例えば、所定のアプリケーションプログラム)を実行することによって、各種の情報処理を実行する。なお、記憶部12は、例えば、フラッシュメモリやDRAM(Dynamic Random Access Memory)等の内部記憶媒体であってもよいし、図示しないスロットに装着される外部記憶媒体等を利用する構成でもよい。
【0046】
映像音声出力部14は、プロセッサ11と電気的に接続されており、プロセッサ11で実行された情報処理の結果として生成された各種の画像や音声をモニタ3に出力する。コントローラ通信部13は、プロセッサ11と接続されている。コントローラ通信部13は、無線接続されているコントローラ4と各種のデータの送受信を行うためのものである。
【0047】
次に、当該コントローラ4の内部構成に関して説明する。図3は、コントローラ4の内部構成を示す機能ブロック図である。図3において、コントローラ4は、コントローラ制御部41、アナログスティック42、デジタルボタン部44を備えている。本実施形態のコントローラ4は、アナログスティック42を1つだけ備える例で説明するが、他の実施形態では複数のアナログスティック42を備える構成でもよい。また、その他、図示は省略するが、コントローラ4には、バッテリー等も備えている。その他、コントローラ4には、光学センサや慣性センサ等のセンサ類等が備えられていてもよい。
【0048】
コントローラ制御部41は、コントローラ4を制御するための回路であり、制御用のマイコン、メモリ、無線モジュール、およびアンテナ等を含んでいる。コントローラ制御部41は、処理の際に当該メモリを記憶領域として用いながら、情報処理装置本体2に送信データを無線送信する無線モジュールを制御する。また、当該メモリには、後述するプリセットライブラリ等のデータも記憶されている。また、コントローラ制御部41は、アンテナを介して無線モジュールが受信した情報処理装置本体2からのデータに応じて、後述するようなアナログスティック42に関する制御等も行う。
【0049】
アナログスティック42は、方向を入力することが可能な操作子である。ユーザは、アナログスティック42を傾倒することによって傾倒方向に応じた方向の入力(および、傾倒した角度に応じた大きさの入力)が可能である。デジタルボタン部44は、1以上の押下式のボタンやトリガー式のボタンである。
【0050】
次に、本実施形態におけるアナログスティック42の構成に関して説明する。本実施形態では、上記アナログスティック42について、磁気粘性流体(Magnetorheological fluid、以下、MRFと記載する)を用いる構成を採用している。ここで、当該MRFについて簡単に説明する。MRFは、磁場をかけないときは流体であり、磁場をかけると半固体化する(粘性を発生する)、という特性を有するものである。また、MRFは、磁場に対して数msで反応する、という特性も有する。そして、本実施形態では、MRFの粘性を制御し、コントローラ4のアナログスティック42の可動軸に当該MRFを作用させることで、結果として、アナログスティック42の動きやすさを動的に制御する。
【0051】
図4に、本実施形態で想定するアナログスティック42を構成するパーツ(以下、スティックデバイス)の外観例を示す。図4は、アナログスティック42を構成するスティックデバイス400の斜視図である。図4において、スティックデバイス400は、スティック部401、外郭部404、X軸用可変抵抗器405、X軸用MRFユニット406、Y軸用可変抵抗器407、Y軸用MRFユニット408とを有する。また、スティック部401に隣接するようにして、X軸用駆動部品402も設けられている。また、図示されてはいないが、スティックデバイス400は、後述するY軸用駆動部品403も有する。なお、コントローラ4の完成品の状態では、当該スティックデバイス400のスティック部401に、例えば、きのこ形状のカバーをかぶせたもの等が用いられる。
【0052】
スティック部401は、棒状の可動部分である。X軸用可変抵抗器405およびY軸用可変抵抗器407は、スティック部401の傾き具合を検出するためのものである。X軸用MRFユニット406およびY軸用MRFユニット408は、上記のようにアナログスティック42の可動軸にMRFを作用させるためのものである。
【0053】
図5に、当該スティックデバイス400を俯瞰した場合の、各パーツの位置関係を示す模式図を示す。また、図6および図7に、当該スティックデバイス400を側面から見た場合の各パーツの位置関係を示す模式図(断面図)を示す。図6は、図5における左側から見た場合を想定した図であり、図7は、図5における下側から見た場合を想定した図である。図5図7で示されるように、外郭部404の中心となる位置にスティック部401の中心が位置するように、スティック部401が配置されている。また、スティック部401の長手方向がZ軸に平行となるようにして配置されている。以下の説明では、この中心の位置のことを初期位置と呼び、スティック部401の長手方向がZ軸に平行となっている姿勢のことを初期状態と呼ぶ。
【0054】
また、図5においては、スティック部401に隣接するようにして、X軸用駆動部品402、Y軸用駆動部品403が設けられている。X軸用駆動部品402は、スティック部401のX軸における動きに連動して、X軸用可変抵抗器405を動かす。Y軸用駆動部品403は、スティック部401のY軸における動きに連動して、Y軸用可変抵抗器407を動かす。そのため、これらの図では直接示してはいないが、X軸用駆動部品402は、(外郭部404の内側で)X軸用可変抵抗器405と連動するように連結されている。Y軸用駆動部品も同様に、Y軸用可変抵抗器407と連動するように連結されている。
【0055】
なお、スティックの可動範囲について、本実施形態では、スティック部401を傾ける場合、外郭部404に設けられている円形の開口部までは傾けることができるものとする。つまり、当該円形の開口部はスティック部401(アナログスティック42)の基本的な可動領域を規制するものともなっている。なお、他の実施形態では、この規制のための部材として、例えばスティック部401の根元部分に同様の機能を有する規制部材を設ける構成でもよい。あるいは、コントローラ4の完成品における当該コントローラ4自体のハウジングを規制部材として用いる構成でもよい。すなわち、当該ハウジングにおいて、スティックデバイス400が取り付けられる箇所に所定の形状の開口部を設け、この開口部(の形状)がアナログスティック42のX軸およびY軸における可動領域の限界となるようにしてもよい。本実施形態では、当該開口部は円形であるため、当該円形の2次元領域がアナログスティック42のXY平面上における可動範囲となる。なお、以下の説明では、このような物理的な規制部材により限定される可動範囲のことを、基本可動域と呼ぶ。
【0056】
また、図示は省略するが、スティック部401の下方には、スティック部401を初期位置に復帰させるための機構である復帰力付加部も設けられている。当該復帰力付加部は、内部にコイルばね等の弾性体を有し、初期位置に戻る復帰力を伝達しスティック部401を垂直に戻そうとする部材等で構成されていればよい。本実施形態では、スティック部401の傾きが大きいほど、当該初期位置に戻る復帰力も大きくなるものとする。また、当該復帰力付加部は、スティック部401と連動する上記各駆動部品を基準位置に復帰させるものである。当該復帰力を付加する機構については既知のものであるため詳細な説明は省くが、例えば当該弾性体を有する復帰力付加部は、外郭部404の底面と垂直になるよう配置されていてもよい。そして、上記駆動部品に対して直接または間接的に力を加えることで駆動体を基準状態に保つような構成が考えられる。
【0057】
なお、上記復帰力付加部に関して、本実施形態では弾性体を用いる例を示した。他の実施形態では、同様の機能を有するものであれば、例えば磁石を用いる構成としてもよい。また、積極的に復帰力を制御可能な復帰機構を用いる構成としてもよい。この場合、弾性体や磁石等に加えて、またはこれに代えて、ギアやモーター等を用いてもよい。
【0058】
次に、スティックデバイス400は、外郭部404に隣接するようにして、X軸用可変抵抗器405およびY軸用可変抵抗器407を備えている。可変抵抗器に関しては既知の技術であるので詳細説明は省略するが、これらは、スティック部401の傾き具合や変位方向を検出するためのものである。各可変抵抗器は、上記各駆動部品と接続されている回転軸が設けられている。スティック部401の傾倒・復帰の動きに連動して上記駆動部品が当該回転軸を回転させる。そして、当該回転軸の回転に応じた抵抗値が検出される。この抵抗値に基づいて算出されるデジタル値によって、プロセッサ11、あるいはコントローラ制御部41は、スティック部401が移動している方向(以下、変位方向)やスティック部401の傾き具合等(以下、単にこれらを「アナログスティックの位置」と呼ぶ)を判定することができる。
【0059】
なお、本実施形態では、上記スティック部401の変位方向についてはプロセッサ11あるいはコントローラ制御部41によってソフト的に算出する場合を想定するが、算出する主体については、これに限るものではない。例えば、他の実施形態では、所定のセンサを用いることで、機構的に変位方向が検知される構成を採用してもよい。
【0060】
更に、スティックデバイス400は、X軸用可変抵抗器405の外側に隣接するようにして、X軸用MRFユニット406を備えている。同様に、Y軸用可変抵抗器407の外側に隣接するようにして、Y軸用MRFユニット408を備えている。本実施形態では、X軸用可変抵抗器405で用いられる回転軸411を更に外側に伸ばすような構成とし、この回転軸411を覆うようにしてX軸用MRFユニット406が配置されている。これと同様に、Y軸用可変抵抗器407で用いられる回転軸412についても更に外側に伸ばすような構成とし、この回転軸412を覆うようにしてY軸用MRFユニット408が配置されている。なお、当該回転軸に関しては、例えばX軸用可変抵抗器405で用いられる回転軸とMRFユニット内の回転軸とが連動するように連結する構成でもよい。また、以下の説明では、X軸用MRFユニット406およびY軸用MRFユニット408を総称して、単にMRFユニットと呼ぶこともある。
【0061】
次に、上記MRFユニットの構成について説明する。図8は、MRFユニットの構成例を説明するための簡略化した模式図である。図8では、可変抵抗器と接続(あるいは連結)される回転軸411(の一部分)が、MRFが充填されているMRF容器421を貫通するようにして配置されている。また、MRF容器421の外側を覆うようにして、磁場発生部422が設けられている。当該磁場発生部422は、例えばコイルである。また、MRFユニットは、当該磁場発生部422に対して電流を流すことができるように構成されている。当該磁場発生部422に所定量の電流を流すことで、磁場を発生させることができる。これにより、MRF容器421内のMRFの粘性を変化させることができる。すなわち、磁場発生部422に与える電流量、すなわち振幅を制御することで、磁場の強度を制御し、ひいては、MRFの粘性の高低を制御することができる。MRFの粘性が高くなることで、回転軸411の回転力に抵抗を与えることができる。回転軸411は、上記のようにスティック部401の傾きと連動するよう接続されているため、MRFの粘性変化によって、スティック部401を傾けようとする力に対して抵抗力を与えることができる。すなわち、本実施形態では、このようなMRFの粘性を制御することで、スティック部401の動きやすさを制御することが可能な構成となっている。
【0062】
なお、上記図8は説明の便宜上、簡略化した図面となっているが、MRFユニットのより具体的な構成について補足しておく。基本的な仕組みとしては、自転車や自動車のディスクブレーキに近い構造となる。これらのディスクブレーキでは、回転するホイールを直接機械部品で挟み込み、部品同士の摩擦で回転を止めるという仕組みとなるが、本実施形態のようにMRFを用いる場合、流体の粘性を制御することで摩擦を変化させ、回転方向の動きを規制することになる。
【0063】
次に、上記アナログスティック42の(電気的な)内部構成について説明する。図9は、アナログスティック42の内部構成を示す機能ブロック図である。図9において、アナログスティック42は、X軸用可変抵抗器405、X軸用MRFユニット406、Y軸用可変抵抗器407、Y軸用MRFユニット408を含んでいる。これらの構成要素はそれぞれコントローラ制御部41と電気的に接続されており、所定のデータの送受信が可能である。コントローラ制御部41は、X軸用可変抵抗器405およびY軸用可変抵抗器407からの信号(例えば電圧値)を受信することができる。これらの信号に基づき、コントローラ制御部41は、スティック部401の位置や変位方向、位置の変化速度(変位速度)を算出できる。更に、コントローラ制御部41は、算出した結果を情報処理装置本体2に送信することができる。なお、当該アナログスティック42の位置については、例えば、中心位置を初期位置(原点)とする2次元平面上における2次元座標として表現される。また、コントローラ制御部41は、情報処理装置本体2から送信されるデータに基づき、次に説明するように、MRFユニットの粘性を制御するための信号を各MRFユニットに送信できる。
【0064】
次に、各MRFユニットについて説明する。まず、X軸用MRFユニット406には、電圧電流変換回路部431と上述したような磁場発生部422とが含まれており、両者は電気的に接続されている。コントローラ制御部41から電圧電流変換回路部431に対して所定の電圧を与えることで、当該電圧に基づいた電流を磁場発生部422に出力することができる。その結果、上記のようにMRFの粘性を変化させることができる。同様に、Y軸用MRFユニット408にも、電圧電流変換回路部431と磁場発生部422とが含まれており、上記と同様の制御が可能となっている。このように、本実施形態では、スティック部401におけるX軸とY軸とで個別にMRFの粘性変化による影響を与えることが可能な構成となっている。基本的には、アナログスティック42の動きやすさ(粘性)は、X軸およびY軸の2軸の合算で提示される。その一方で、例えば、Y軸用MRFユニット408のMRFの粘性だけ高めることで、スティック部401をX軸方向にだけ動かすことができる、という状態を作り出すことも可能である。
【0065】
上記のような構成によってMRFの粘性制御を行うことで、本実施形態では、アナログスティック42を操作しているユーザ(の指)に対して、様々な感触を提示することができる。例えば、アプリケーションにおける所定の場面に応じて上記のMRFの粘性を制御することで、アナログスティック42を操作するユーザの指先に、その場面に応じた様々な感触を与えることができる。また、アナログスティック42を複数備えるコントローラ4である場合、各アナログスティック毎に個別に上記粘性を制御することも可能である。これにより、今までに無い新たな操作感をユーザに提供することができる。
【0066】
[第1の実施例]
次に、上述した構成を用いた第1の実施例について説明する。第1の実施例では、アナログスティックの現在の位置に応じて、上記MRFの粘性を制御する。具体的には、第1の実施例では、アナログスティック42が抵抗感無く自由に動かせる程度の粘性(以下、第1の粘性)と通常の力加減ではアナログスティック42を動かすことができない程度の高い粘性(以下、第2の粘性)の2種類の粘性を用いるものとする。そして、上記基本可動域に対して、第1の粘性とする領域と第2の粘性とする領域を予め定義しておく。図10に、当該領域の定義の一例を示す。図10では、基本可動域の中央を含む四角形の領域を第1領域として定義している。また、第1の領域の全周を囲むようなその他の領域(網掛けパターンで示す領域)を第2領域として定義している。この例では、第1領域については上記第1の粘性を割り当て、第2領域については上記第2の粘性を割り当てるものとする。そして、アナログスティック42の位置がどちらの領域にあるかに応じて、上記MRFの粘性を第1の粘性または第2の粘性となるように制御する。すなわち、アナログスティック42の現在位置が第1領域内にあれば上記MRFの粘性が第1の粘性となるよう制御し、アナログスティック42の現在位置が第2領域内にあれば上記MRFの粘性が第2の粘性となるよう制御する。換言すれば、アナログスティック42の位置が第1領域内にある場合は、アナログスティック42の可動域全体、すなわち基本可動域の全体において、第1の粘性が設定されている状態となる。一方、第1領域外、つまり第2領域内では、図10における第1領域も含めた基本可動域の全体について第2の粘性が設定されている状態となる。このような制御によって、結果的に、ユーザは、図10で示すような可動域が存在しているかのように体感することができる。
【0067】
ここで、上記第2の粘性について補足する。上記のように、本実施例では、第2の粘性として、通常の力加減ではアナログスティック42を動かすことができない程度の高い粘性である場合を例とするが、指先に通常の力加減よりもかなり大きな力を込めれば、アナログスティック42を動かし得る程度の粘性でもあるとする(但し、かなり「重い」操作感となる)。換言すれば、第2の粘性は、上記MRFが上記操作子を実質的に変位できない抵抗となるような粘性である。なお、他の実施例では、第2の粘性は、第1の粘性よりは大きな力が必要とはなるものの、「かなり大きな力」とまでいかない程度の力加減で一応は動かすことができる程度の抵抗になるような粘性でもよい。例えば、力加減を1~10で数値化するとして、通常の力加減(第1の粘性における力加減)が「1」であるとする。第1の実施例では、第2の粘性としては「10」に近い力を加えないと操作子を変位させることができない程度の粘性を想定するが、他の実施例では、第2の粘性として「5」程度の力加減で、一応は操作子を変位させることができる粘性としてもよい。
【0068】
なお、本実施例では、第1の粘性として、アナログスティック42が抵抗感無く自由に動かせる程度の粘性を設定するが、他の実施例では、粘性制御を行わないことを第1の粘性における制御に相当するものとして扱ってもよい。
【0069】
ここで、上記第1領域および第2領域共に、その形状や配置位置はどのようなものでもよい。更に、上記第1領域および第2領域のパターンの組み合わせ(以下、領域パターンと呼ぶ)を複数用意し、状況に応じて使い分けるようにしてもよい。一例として、本実施形態では、実行しているアプリケーションの状況・場面に応じて、使用する領域パターンを使い分ける場合を例として説明する。
【0070】
[本実施形態で想定する制御の適用例]
ここで、上記アプリケーションの状況や領域パターンの使い分けについて、いくつか例示する。まず、所定のオブジェクトを操作するユーザ入力に基づいて仮想オブジェクトを操作するアプリケーションを想定する。このようなアプリケーションにおいて、例えば、ユーザに対して、メニュー画面等を操作させる場面と、所定の操作オブジェクトを操作させる場面とで、使用する領域パターンを変更するという場合がある。このような場合、メニュー画面等を操作させる場面では、基本可動域全域を第1の粘性とする領域パターンに基づく制御を行う(つまり、第2の領域が存在しない領域パターンとなる)。一方、所定の操作オブジェクトを操作させる場面においては、その操作オブジェクトの特性に合わせた操作感を提供できるように、上記第2領域も用いる所定の領域パターンに基づく粘性制御を行なう、という制御が考えられる。また、これとは別に、メニュー画面等を操作させる場面においては、メニュー画面のレイアウトに合わせたメニュー画面用の領域パターンを使用し、一方で、ユーザに所定の操作オブジェクトを操作させる場面においては、これとは別に操作オブジェクト用の領域パターンを用いるようにしてもよい。このように、アプリケーションにおける状況や場面に応じて領域パターンを使い分けることで、多様な操作感をユーザに提供できる。
【0071】
また、状況や場面に応じた切り替えの他の例として、以下のような制御を行うことも考えられる。まず、アナログスティック42を用いて操作対象オブジェクトを仮想3次元空間において移動させるアプリケーションを想定する。また、この操作対象オブジェクトには体力値というパラメータが設定されており、当該体力値が0になると行動不能になるよう設定されているものとする。このようなアプリケーションで、通常は、基本可動域全域を用いて操作対象オブジェクトを操作できるが、上記体力値が一定値以下になると、例えば上記図10で示したような領域パターンに基づく粘性制御を行う。これにより、操作が第1領域内に限定されるように体感させることができ、操作対象オブジェクトが不利な状態になった場合、例えば「体力低下による動きにくさ」をアナログスティック42の操作感で表現することができる。
【0072】
更に他の切り替え制御の例として、次のような制御も考えられる。まず、上記同様、仮想3次元空間で操作対象オブジェクトを移動させるアプリケーションを想定する。そして、操作対象オブジェクトが位置する仮想空間内の場所の地形や性質、あるいは、周辺環境に応じて、第1領域および第2の領域の内容を設定するという制御が考えられる。例えば、操作対象オブジェクトが位置する場所が相対的に移動しやすい場所(例えば、アナログスティックの入力に対して操作オブジェクトの移動速度が相対的に速くなるように設定された場所)である場合は基本可動域全域を用いた操作を可能とする。一方、相対的に移動し難い場所(例えば、アナログスティックの入力に対して操作オブジェクトの移動速度が相対的に遅くなるように設定された場所)である場合は所定の領域パターンによる粘性制御を行う、等である。この場合の領域パターンとしては、例えば、基本可動域の約半分の大きさの円となる範囲が、上記第1粘性である第1領域として定義されている、等である。また、その他、例えば、操作オブジェクトの周辺に壁等の障害物が存在する場面であれば、その障害物(と操作オブジェクトとの位置関係)に応じた領域パターンを用いるような制御も考えられる。例えば、操作オブジェクトの前方と右方向に壁が存在する位置であるときは、アナログスティック42が上および右方向には傾かないような形状が定義された領域パターンを用いて粘性制御を行う、等である。
【0073】
また、他の制御例として、通常は、可動範囲に制限がある領域パターンを用いた粘性制御を行い、アプリケーションの状況に応じて、基本可動域全域が使用可能な領域パターンに変更する(つまり、可動域が広がる)、というような制御を行ってもよい。
【0074】
また、他の切り替え制御の例として、操作対象オブジェクトを複数の中から選択できるようなアプリケーションである場合に、選択した操作対象オブジェクトに応じて(それぞれ異なる)領域パターンを設定する、という制御を行ってもよい。当該選択手法については、ユーザの任意で選択できてもよいし、自動的に選択されるものであってもよい。このようなアプリケーションの場合、このそれぞれの操作対象オブジェクトに対応づけられた領域パターンを定義しておく。そして、操作対象オブジェクトの選択画面では粘性制御は行わず、選択後は、その選択された操作対象オブジェクトに対応づけられた領域パターンに基づく粘性制御を行ってもよい。
【0075】
また、上記のような使い分けの例示説明とは少し異なる説明となるが、領域パターンの一例として、図11のような領域パターンを用いてもよい。図11では、略三角形状の領域が第2領域、それ以外の領域が第1領域として定義されている。また、第1領域が上記第1の粘性であり、第2領域が上記第2粘性となる。また、これを用いるアプリケーションの場面として、基本可動域と同じ大きさである第1領域を用いて操作対象オブジェクトを移動させる場面を想定する。特に、アナログスティック42の位置と操作対象オブジェクトの位置との相関が固定である場合を想定する。このような場合、ユーザに対しては、基本的には基本可動域全域でアナログスティック42を自由に動かせるように体感させつつ、第2領域となる箇所だけアナログスティック42が動かしにくくなる感触を与えることができる。いわば、第2領域について「ひっかかり」のような感触をユーザに提供できる。更にこの場合、当該第2領域の画面上における見た目は他の箇所と変わらないように表示してもよい。更に、当該第2領域の位置については、操作対象オブジェクトの仮想空間内の位置(座標)に応じて逐次変化するように制御してもよい。これにより、画面上では不可視である第2領域の位置を、アナログスティック42から得られる感触に頼って探し出す、というアプリケーションを提供できる。
【0076】
[第1の実施例の処理の詳細]
以下、第1の実施例にかかる処理の詳細を説明する。まず、当該処理で使用するデータの一例を示す。図12は、情報処理装置2の記憶部12に記憶されるデータの一例を示す図である。記憶部12には、アプリケーションプログラム511、領域定義データ512、使用領域データ514、粘性定義データ515、操作データ516等が記憶される。
【0077】
アプリケーションプログラム511は、所定のアプリケーションを実現するためのプログラムである。
【0078】
領域定義データ512は、上述したような第1の領域と第2の領域を定義したデータである。ここで、領域パターンは、1つだけ用いる態様でもよいが、本実施例では、複数の領域パターンを用いる場合を例としている。そのため、領域定義データ512には、各領域パターンの内容を定義した情報が、領域パターン情報513として記憶される。
【0079】
各領域パターン情報513のデータ構成は、各領域の範囲と、どのような粘性とするのかが特定できればどのようなデータ構成でもよいが、例えば、次のようなデータ構成が考えられる。すなわち、上記基本可動域全域を100×100の2次元配列で示し、各配列に、その座標では上記第1粘性と第2粘性のいずれの制御を行うかを指定する情報が定義されているというデータ構成が考えられる。
【0080】
次に、使用領域データ514は、上記複数の領域パターンのうち、現在使用する領域パターンを指定するデータである。
【0081】
粘性定義データ515は、上述の第1の粘性と、第2の粘性とを実現するためのパラメータである。具体的には、第1の粘性および第2の粘性のそれぞれに関して、上記コントローラ制御部41から電圧電流変換回路部431に対して出力する振幅、周波数、印加時間の3つを指定するパラメータである(以下、この3つのことを粘性パラメータと呼ぶ)。コントローラ4においては、この粘性パラメータを成分とする波形となるような電圧指令値が電圧電流変換回路部431に出力され、これに基づく電流が磁場発生部422に出力される。その結果発生した磁場によって、MRFの粘性を変化させることができる。本実施例では、アナログスティック42の現在位置に応じて、第1の粘性に応じた粘性パラメータ、または第2の粘性に応じた粘性パラメータが決定され、アプリケーションから(システムソフトウェアを介して)上記コントローラ制御部41に出力されることになる。
【0082】
操作データ516は、上記コントローラ制御部41から所定の周期で出力されるデータを記憶したものである。上記アナログスティック42の位置を示すデータや、各種ボタンの押下状態を示すデータが含まれている。
【0083】
[本実施形態にかかる処理のフロー例]
次に、本実施形態における粘性制御処理の具体的な一例を説明する。図13は、本実施形態にかかる粘性制御処理の一例を示すフローチャートである。まず、ステップS1で、プロセッサ11は、そのときのアプリケーションの状況・場面に応じて使用する上記領域パターンを決定する。この判定手法はどのようなものでもよいが、例えば、操作対象オブジェクトの体力値が所定値以下になったか否かや、仮想空間における操作対象オブジェクトの位置が所定の領域内に位置しているか否か、等で判定することが考えられる。そして、決定した領域パターンを特定する情報を使用領域データ514に設定する。
【0084】
次に、ステップS2で、プロセッサ11は、操作データ516に基づき、アナログスティック42の現在位置を算出する。
【0085】
次に、ステップS3で、プロセッサ11は、使用領域データ514に設定されている領域パターンと、アナログスティック42の現在位置とに基づいて、上記粘性パラメータを決定する。すなわち、アナログスティック42の現在位置に応じて、第1の粘性に応じた粘性パラメータ、または第2の粘性に応じた粘性パラメータを決定する。
【0086】
なお、当該ステップS3の処理に関して、他の実施形態では、コントローラ制御部41のメモリに粘性パラメータのプリセットを持たせておき、当該ステップS3の処理ではこのプリセットを指定する、という処理としてもよい。
【0087】
次に、ステップS4で、プロセッサ11は、上記決定された粘性パラメータに基づくMRFの粘性制御を行う。本実施例では、プロセッサ11は、上記粘性パラメータをアプリケーションから(システムソフトウェアを介して)上記コントローラ制御部41に出力する。これに応じて、コントローラ制御部41は、当該粘性パラメータに基づき上記MRFユニットにかける磁場の強度を制御する。これにより、MRFの粘性が制御されることになる。
【0088】
なお、他の実施形態として、コントローラ側に上記のようなプリセットを持たせる場合は、アプリケーションからの出力に関わらず、例えば上記ステップS3で指定されたプリセットに基づいたコントローラ制御部41の(主体的な)制御によって、上記MRFの粘性が制御されてもよい。
【0089】
次に、ステップS5で、プロセッサ11は、当該アプリケーションにおけるその他の処理を実行する。例えば、アナログスティック42の現在位置に基づき、操作オブジェクトを移動させる処理等が行われる。
【0090】
次に、ステップS6で、プロセッサ11は、上記の処理結果を反映した画像を生成し、モニタ3に出力する。
【0091】
次に、ステップS7で、プロセッサ11は、アプリケーションを終了する条件が満たされたか否かを判定する。例えば、アプリケーションの終了を指示する操作が行われたか否か、等を判定する。当該判定の結果、終了条件が満たされていれば(ステップS7でYES)、当該アプリケーション処理を終了する。満たされていない場合は(ステップS7でNO)、上記ステップS1に戻り、処理が繰り返される。
【0092】
このように、第1の実施例では、アナログスティック42の現在位置に基づいてMRFの粘性制御を行っている。更に、領域の形状・大きさ・範囲を定義した領域パターンを用い、アプリケーションの状況に応じて複数の領域パターンを使い分けている。これにより、アプリケーションの状況に応じた多彩な操作感をユーザに体感させることができる。
【0093】
(第2の実施例)
次に、第2の実施例について説明する。上記第1の実施例では、アナログスティック42の現在位置に基づいて粘性制御を行っていた、これに対して、第2の実施例では、更に、アナログスティック42の変位方向に基づいた粘性制御を行う例を説明する。
【0094】
第2の実施例で想定する処理は、例えば領域パターンとして上記図10で示したような第1領域と第2領域の2つが定義されている場合に、例えば図14で示すように、アナログスティック42の現在位置が第2領域内に位置するような場合を想定した処理である。これは例えば、第1領域の境界の外にアナログスティック42が位置した結果、MRFの粘性が第1の粘性(低粘性)から第2の粘性(高粘性)に変化して、アナログスティック42が(通常の力では)動かなくなっているような状態を想定している。この場合に、第2の実施例では、所定の手法(後述)でこの位置からのアナログスティック42の変位方向を検出あるいは算出する。そして、変位方向が第1領域側に向かう方向であれば、粘性を小さくするように制御する。一方、第1領域から離れる方向であれば、粘性を大きくするように制御する。つまり、第2の実施例では、第1領域外にアナログスティック42が位置する場合に、更に第1領域なら離れようとしているのか、近づけようとしているのかを判定し、その結果に応じて粘性を制御する。
【0095】
図15に、第2の実施例にかかる制御処理のフローの一例を示す。この処理は上記図14で示したような、アナログスティックの現在位置が第1領域外にある場合に実行され得る処理である。まず、ステップS21で、プロセッサ11は、アナログスティック42の変位方向を算出あるいは検出する。次に、ステップS22で、プロセッサ11は、当該変位方向が、第1領域に近づく方向であるか、離れる方向であるかを判定する。この変位方向の算出・検出と判定手法はどのようなものでもよいが、その例示として、ここでは2通りの手法について簡単に説明する。
【0096】
(第1の手法:移動前と移動後の相対位置で判定する手法)
まず、第1の手法として、アナログスティック42の移動前と移動後の相対位置に基づいて判定する手法を説明する。ここで、上記第2の粘性については、上述したように、「通常の力加減ではアナログスティック42を動かすことができない程度の高い粘性」ではあるが、指先に通常の力加減よりも大きな力を込めれば、アナログスティック42を動かし得る程度の粘性でもある。そのため、通常以上の力をかけることで、第1の領域外においても(動きは鈍くなるが)アナログスティック42を移動させることは可能であることが前提となる。そして、この手法では、プロセッサ11は、上記アナログスティック42の移動前の座標と移動後の座標とに基づき、例えば移動ベクトルを算出する。そして、プロセッサ11は、その移動ベクトルの方向が第1領域に近づく方向であるか、離れる方向であるかを判定する。このような手法で、アナログスティック42の変位方向を算出・判定することができる。
【0097】
(第2の手法:センサを利用する手法)
次に、別の例として第2の手法を説明する。第2の手法では、アナログスティック42に変位方向が検出可能な高精度のセンサを搭載させ、その検知結果を利用する。例えば、当該センサの一例として、力センサをアナログスティック42に搭載させる。この場合、アナログスティック42に加えられた指の力に応じて、アナログスティックがこれから変位する変位方向を瞬時に把握することができる。そのため、プロセッサ11は、当該力センサの検知結果に基づき変位方向を判別し、その変位方向が第1領域に近づく方向か否かを判定することができる。
【0098】
上記のような判定の結果、変位方向が第1領域に近づく方向である場合は(ステップS22でYES)、ステップS23で、プロセッサ11は、MRFの粘性を現在の粘性よりも小さくするような制御を行う。例えば、予め定義されている所定の係数や、上記移動ベクトルの大きさや力センサで検知された力の大きさに応じた係数を、現在の粘性にかけあわせて粘性を小さくすること等が考えられる。これにより、アナログスティック42を第1領域内により移動させやすくすることができる。
【0099】
一方、上記ステップS22の判定の結果、変位方向が第1領域に近づく方向ではない場合は(ステップS22でNO)、ステップS24で、プロセッサ11は、MRFの粘性を現在の粘性よりも大きくするような制御を行う。これにより、アナログスティック42をより動きにくくすることができる。
【0100】
なお、ステップS24の処理に関して、他の実施例では粘性をより大きくするのではなく、現在の粘性を維持するような制御を行ってもよい。この場合も、アナログスティック42の動かしにくさを維持することができる。
【0101】
以上で、第2の実施例にかかる処理の詳細説明は終了する。
【0102】
このように、第2の実施例では、アナログスティック42の変位方向に基づいた粘性制御を行っている。これにより、例えば図14のような領域パターンにおいてアナログスティック42が第1領域外に位置するとき、特に、2つの領域の境界付近に位置するときに、アナログスティック42の操作感について好適な粘性制御を行うことができる。
【0103】
[変形例]
なお、上記アプリケーションの状況等に応じて、使用する領域パターンを変更する(切り替える)場合、実際に変更する前に、例えば「これからアナログスティック42の可動範囲が変更されるため、アナログスティック42の位置を初期位置に戻して欲しい」旨の通知を出し、アナログスティック42の位置が初期位置に戻るのを待ってから使用する領域パターンを変更する制御を行ってもよい。なお、戻り先とする位置については、上記初期位置に限らず、所定の位置としてもよい。また、このような制御を行うタイミングについても、領域パターンの変更前に限らず、変更後、上記初期位置へ戻す旨の通知は行いつつ、実際にアナログスティック42の位置が戻るまでは粘性制御を開始しないようにしてもよい。また、使用する領域パターンを変更したとき、その旨を示す通知を表示してもよい。当該通知は、使用する領域パターンを変更した後、所定時間だけ表示して消去してもよいし、使用する領域パターンを変更している間、継続的に表示するようにしてもよい。また、使用している領域パターンの(基本可動域に対する)大きさや形状を示す画像を上記通知と一緒に、あるいは代わりに表示してもよい。
【0104】
また、他の実施形態では、アプリケーションの状況ではなく、ユーザが任意で領域パターンを変更可能な構成としてもよい。例えば、所定のボタンを切り替え用のボタンとして定義し、当該ボタンを押下する度に第1の領域パターンと第2の領域パターンを切り替えてもよい。あるいは、当該ボタンが押下されている間だけ所定の領域パターンを有効にする制御を行ってもよい。また、当該ボタンの割り当てに関して、所定のアプリケーションにおけるボタン設定としてこのような機能を有するボタンが割り当てられていてもよい。あるいは、システムの機能としてこのようなボタンが割り当てられてもよい。
【0105】
また、領域パターンの定義内容については、ユーザが任意に設定可能な構成としてもよい。各ユーザが指先にかける力加減の好みや個人差を反映可能とするためである。例えば、基本可動域における中央から外縁部分までの距離、すなわち、最大まで傾ける入力を行う場合に、標準よりも短い距離のほうが好みの操作感である、というユーザを想定する。この場合、例えば、以下のような操作と設定処理を行わせてもよい。まず、所定の設定画面を表示し、基本可動域に対応する円状の画像を表示する。また、当該円の大きさを段階的に変更可能なスライダも表示する(基本可動域の大きさを100%とする)。そして、ユーザに、当該スライダで円の大きさを指定させ、円画像の中心位置から外縁位置までアナログスティックを傾ける操作を行わせる。この操作を繰り返させ、ユーザが、自分の好みの円の大きさを見つければ、そのときのスライダで設定されている円の大きさの外側が上記第2の粘性となる第2領域、円の内側が第1の粘性となる第1領域とする領域パターンを定義して、ユーザ設定の領域パターンとして記憶する処理を行ってもよい。ここで、このようにして設定された第1領域の円の大きさが基本可動域の80%の大きさであったとする。この場合、基本可動域における80%の位置でアナログスティック42の傾きが止まることになり、基本可動域基準で考えると、100%の傾き入力ができないことになる。そのため、当該ユーザ設定の領域パターンを使用中のときは、基本可動域基準における80%の傾きでも、100%の傾き入力として扱われるように(アナログスティック42を傾けきったとして扱われるように)、入力値の補正を行うようにすればよい。
【0106】
また、上記実施形態では、アナログスティック42を1つだけ備えるコントローラの場合を例示した。他の実施形態では、いわゆる「右スティック」「左スティック」のように、アナログスティック42を2つ備えるコントローラを用いてもよい。この場合、基本可動域の大きさは両者で共通するが、「右スティック」と「左スティック」とで使用する領域パターンを異なるものとしてもよい。例えば、「右スティック」で使う領域パターンとして、左右方向の移動のみ可能な内容が定義された領域パターンを用い、「左スティック」については、上下方向の移動のみ可能な内容が定義された領域パターンを用いる、等である。
【0107】
また、上述したアナログスティック42において、上記MRFユニットの位置は一例であって、上述のものに限らない。例えばスティック部401が直接MRFに接するような構成を採用してもよいし、その他、スティック部401の動きやすさに影響を与えることが可能であれば、どのような位置に設けてもよい。
【0108】
また、上記第2の実施例に関して、変位方向が第1領域に近づく方向か否かで、現在の粘性を大きくあるいは小さくする制御を行う例を示した。他の実施形態では、このような制御に限らず、他の各種制御を行ってもよい。例えば、変位方向が第1領域から離れる場合には警告表示を行ってもよい。また、例えば、変位方向が第1領域から離れる操作が所定時間以上継続して行われた場合、基本可動域全体が第1の粘性となるような制御を行ってもよい。つまり、上記のような可動域を制限するような粘性制御の実行を停止してもよい(可動域制限の解除)。
【0109】
また、第1の実施例では、第1の粘性と第2の粘性とを実現するためのパラメータを予め定義したものを粘性定義データ515として利用していた。これに限らず、アプリケーションの状況に応じて、その都度当該パラメータを算出する構成としてもよい。
【0110】
また、上記の例では、情報処理装置本体2とモニタ3とコントローラ4が別々の構成である情報処理システムを例示した。この他、情報処理装置本体と所定の表示部とアナログスティックやボタンとが一体化した携帯型の情報処理装置等にも上記構成や制御は適用可能である。
【産業上の利用可能性】
【0111】
本発明にかかる情報処理システムは、新たな操作感覚をユーザに提供することができ、パーソナルコンピュータ等の各種情報処理装置で用いられるコントローラ等の用途に有用である。
【符号の説明】
【0112】
1 情報処理システム
2 モニタ
3 情報処理装置本体
4 コントローラ
11 プロセッサ
12 記憶部
13 コントローラ通信部
14 映像音声出力部
41 コントローラ制御部
42 アナログスティック
44 デジタルボタン部
401 スティック部
402 X軸用駆動部品
403 Y軸用駆動部品
404 外郭部
405 X軸用可変抵抗器
406 X軸用MRFユニット
407 Y軸用可変抵抗器
408 Y軸用MRFユニット
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15