以下、図面を参照して、本発明の実施形態によるボードゲームシステムについて説明する。当該ボードゲームシステムにおいては、タッチパネルをボードゲームのボードとして用いて、例えば将棋やチェスの盤面として用いて、その上に物理的な駒を置くことにより、ユーザにボードゲームを提供する。
本発明の実施形態の技術的特徴の1つは、それ単体ではタッチパネルを反応させられない程度の量の金属等の導電体を含む素材を用いて成型された駒を人が素手で掴んだときに、人体との通電が行われて初めてタッチパネル上の静電容量に十分な変化が起きるという現象を利用することにより、マルチタッチの認識上限を超えた個数の駒を利用可能にしている点にある。
また本発明の実施形態の技術的特徴の1つは、駒を置いたときのタッチ(設置タッチ)、駒を持ち上げるときのタッチ(離脱タッチ)、別の場所へ駒を置いたときのタッチ(移動タッチ)等の状態を識別することにより、上記のようなマルチタッチの認識上限を超えた個数の駒を利用可能にしている点にある。
また本発明の実施形態の技術的特徴の1つは、本発明の実施形態によるボードゲームシステムは、ゲーム専用に新たなハードウェアを用意せずに、既存の静電容量式のタッチパネルをボードゲームのボードとして利用可能にしている点にある。以下に具体的な構成を説明する。
図1は、本発明の実施形態によるボードゲームシステム10の概略図である。図1に示すように、ボードゲームシステム10は、電子装置100と、1又は複数のゲーム用駒200と、を備える。
図2は本発明の実施形態に係る電子装置100のハードウェア構成を示すブロック図である。電子装置100は処理部101、表示部102、入力部103、記憶部104、及び通信部105を備える。これらの各構成部はバス106によって接続されるが、それぞれが必要に応じて個別に接続される形態であってもかまわない。
電子装置100は、タッチパネルを備えるタブレット型コンピュータであり、スマートフォン等も含まれる。
処理部101は、電子装置100が備える各部を制御するプロセッサ(例えばCPU)を備えており、記憶部104(例えばメインメモリ)をワーク領域として各種処理を行う。表示部102は、処理部101の制御に従って、ユーザに対して画面を表示するものであり、例えば液晶ディスプレイから構成される。
記憶部104は、ハードディスク、メインメモリ、及びバッファメモリを含む。ハードディスクにはプログラムが記憶される。ただしハードディスクは、情報を格納できるものであればいかなる不揮発性ストレージ又は不揮発性メモリであってもよく、着脱可能なものであっても構わない。また例えば電子装置100がスマートフォンである場合はROM及びRAMを含む。記憶部104には、プログラムや当該プログラムの実行に伴って参照され得る各種のデータが記憶される。
更に記憶部104は、データベース用のデータ(例えばテーブル)やプログラムを記憶することができる。処理部101の動作などにより、当該データベースは実現される。
通信部105は、移動体通信、無線LAN等の無線通信やイーサネット(登録商標)ケーブル、USBケーブル等を用いた有線通信を行う。この通信部105によって、プログラムをサーバからダウンロードして、記憶部104に格納することもできる。
入力部103は、ユーザがタッチした位置に基づいた入力を電子装置100に与える接触型入力部品から構成される。本発明の実施形態においては、電子装置100は、表示部102と入力部103から構成されるタッチパネル110を備える。
タッチパネル110は、ユーザが指などでタッチした際に、指先とタッチパネル内の導電膜との間で生じる静電容量の変化を検知することにより、位置検出を行なう方式の静電容量式タッチパネルである。更にタッチパネル110は、複数のタッチ位置を同時に検出可能な、すなわちマルチタッチを検出可能な、静電容量式タッチパネルであり、好ましくは、投影型静電容量式タッチパネルである。
この場合、例えばタッチパネル110内には、透明な絶縁フィルムの表側にX方向の座標検出を行うための複数のITO透明電極を有するX方向電極が、裏側にY方向の座標検出を行うための複数のITO透明電極を有するY方向電極が設けられている。X方向電極とY方向電極のいずれか一方が受信電極、他方が駆動電極として構成される。
両電極間の静電容量は通常一定であるが、タッチパネル110に人間の指が接近又はタッチすると、両電極間の電気力線の数が減少し、静電容量が変化する。あるいは、タッチパネル110に人間の指が接近又はタッチすると、指とタッチパネル内の電極との間で容量結合が発生し、両電極間の静電容量が変化する。これは、人体が電気を通す性質を有するためであり、一般的に数百ピコファラッドの静電容量を有するためである。したがってタッチパネル110は、ユーザの指などによりタッチされると、静電容量の変化を検出する。ユーザが直接タッチパネル110に対してタッチしない又は接近していない場合であっても、金属等の物質(絶縁性物質に比べて電気抵抗率が低い物質)を介してタッチパネル110にタッチした場合は、当該金属等と人体とが導通状態となり、タッチパネル110は静電容量の変化を検出する。
静電容量の変化によるX方向及びY方向の座標位置の検出は、受信電極と駆動電極の役割を入れ替えてX方向とY方向を順次スキャンすることにより行われる。本発明の実施形態においては、タッチパネル110は、所定量(所定量以上)の静電容量の変化が検出された場合に、タッチパネル上の位置とともにタッチを検出する。
タッチパネル110は、第1軸及び第1軸に実質的に直交する第2軸からなる座標平面を用いて、座標により位置が指定される。好ましくは図3に示すように、第1軸は略長方形であるタッチパネル110の短辺と、第2軸はタッチパネル110の長辺と、実質的に平行であって、第1軸方向の座標軸(横軸)及び第2軸方向の座標軸(縦軸)により座標(x,y)として表される。
1つの例では、処理部101はプログラム等を用いて、タッチパネル110により検出するタッチ位置を当該座標(x,y)データとして取得する。例えばタッチパネル110の検出精度が640ドット×1,136ドットである場合は、横軸方向に640ドット、縦軸方向に1,136ドットの分解能を有する。この場合のドットは1つの点であってもよいし、一定の領域(セル)であっても構わない。ただしドット間の距離は、通常タッチパネル(電子装置)ごとに異なることに留意されたい。
本明細書において、特に言及が無い限り、「距離」は上記の座標上の距離を表すものとする。図3に示す座標設定はこの一例であり、座標軸はプログラムにより設定することもできる。また極座標を設定することもできるし、座標変換により他の座標系を設定することもできる。
図4は本発明の実施形態による電子装置100の機能ブロック図を示す。電子装置100は、タッチ位置検出手段121と、表示手段122と、認識手段123と、位置決定手段124と、移動状態決定手段125と、を備える。これらの機能は、プログラムが実行されることによって実現される。したがって、一つの手段の一部又は全部の機能を他の手段が有してもよい。
タッチ位置検出手段121は、タッチパネル110に指などがタッチされることにより、所定量以上の静電容量の変化を検出した場合に、検出されたタッチ位置を電子装置100に与える機能を有する。したがって、所定量の静電容量の変化が、タッチ有無判定における閾値となる。タッチ位置検出手段121がタッチを検出した場合、タッチされた座標は、例えば所定の変数に格納されるか、又はそのタッチイベントがイベントキューに格納される。
更にタッチ位置検出手段121は、複数のタッチ位置を同時に検出可能である。しかし、タッチ位置検出手段121が有するマルチタッチ検出は、タッチパネル(電子装置)のハードウェアの特性に依存する。本発明の実施形態においては、タッチパネル110は、既存の静電容量式のタッチパネルであるため、タッチパネル110のマルチタッチ検出の上限は、一般的なタッチパネルのマルチタッチ検出の上限と同等の10点ほどである。
また、タッチパネル110のタッチポイントの分解能は、前述のとおりタッチパネル検出精度に依存するものであるが、例えば指の大きさ(例えば10〜15mm)に対して小さい。そのため、一般的には、指がタッチパネルに接触する面における複数のタッチポイントから1つのタッチポイント、すなわち1つのタッチ位置を決定している。本発明の実施形態においても、タッチ位置検出手段121は、公知の手法により、1つの接触面から1つのタッチ位置を決定することができる。
表示手段122は、処理部101の制御に従って、電子装置100による出力をタッチパネル110へ表示する機能を有し、複数のエリアから構成されるボードゲーム用のゲームフィールドをタッチパネル110に表示する。表示手段122は、処理部101の制御に従って、電子装置100による出力をスピーカ(図示せず)へ出力することもできる。
図5は、表示手段122がタッチパネル110に表示するゲームフィールドのエリアの例示である。図5に示すように、ゲームフィールドは、ゲーム用駒200を置くためのエリアに分割され、各エリアの位置は、例えば(1,8)などのエリア座標を用いて識別することができる。当該エリア座標は、タッチパネル110により検出するタッチ位置を示す座標とは異なるものである。
表示手段122は、ゲームフィールド全体をタッチパネル110に表示してもよいし、ゲームフィールドの一部をタッチパネル110に表示してもよい。エリア座標に対応付けられたそれぞれのエリアは、タッチパネル110上のある領域に対応するものであり、例えば図3に示すxy座標の座標範囲で表される。1つの例では、ゲームフィールド全体の表示が変更される場合、それぞれのエリアの領域も変更される。なお、各エリアは、図5に示すグリッド構造ではなく、任意の形状の領域とすることができる。あるいは、各エリアは、ポリゴンを用いて定義された領域とすることもできる。
1つの例では、複数のエリアの構成要素であるそれぞれのエリアは、将棋や駒の盤面のそれぞれの位置である。1つの例では、複数のエリアの構成要素であるそれぞれのエリアは、すごろくを構成するそれぞれのマスである。
認識手段123、位置決定手段124、及び移動状態決定手段125については、後述する。
次にゲーム用駒200について説明する。ゲーム用駒200は、ボードゲームシステム10が提供するボードゲームにおいて使用される駒であり、タッチパネル110上に載置して用いられる。ゲーム用駒200は、少なくとも一部が導電部210から構成される。
導電部210は、電気を通す物質、例えば金属、から構成される部分である。ゲーム用駒200の全部が導電部210である場合は、ゲーム用駒200は全体が電気を通す物質からなる。一方、ゲーム用駒200の一部が導電部210である場合は、ゲーム用駒200は、電気を通さない物質、すなわち絶縁性物質からなる部分である非導電部220を含む。
第1の実施形態のゲーム用駒200は、ゲーム用駒200のすべてが導電部210から構成される。図6は、第1の実施形態のゲーム用駒200の概観図を示す。ゲーム用駒200は、本体部211と、複数の突起部212とを備え、2つの部分が一体成形されたものである。
ゲーム用駒200は、タッチパネル110上に載置される場合、複数の突起部212の端面がタッチパネル110(の載置面)に接触するように載置される。したがって、好ましくは、複数の突起部212の端面は、実質的に同一平面上にある。ゲーム用駒200は、タッチパネル110との接触面においては、複数の突起部212の端面、すなわち導電部210が、空隙を介して隔てて配置されるように構成される。図7は、第1の実施形態のゲーム用駒200を複数の突起部212が突出する方向から見た平面図(底面図)である。
ゲーム用駒200がタッチパネル110上に載置された場合、導電部210は、複数の突起部212の端面が接触する接触面において、タッチパネル110の静電容量に変化をもたらす。しかし、導電部210は、所定量以上の静電容量の変化を生じさせないものである。すなわち、導電部210は、所定量未満の静電容量の変化を生じさせる。したがって、タッチパネル110上に載置されたゲーム用駒200の複数の突起部212の端面の接触は、タッチ位置検出手段121により検出されない。
ここでユーザが導電部210(ゲーム用駒200)に触れた場合、導電部210と人体は導通状態となるため、ユーザに触れられた導電部210は、複数の突起部212の端面が接触する接触面において、所定量以上の静電容量の変化を引き起こす。したがって、ユーザに触れられた場合は、タッチパネル110上に載置されたゲーム用駒200の複数の突起部212の端面の接触は、タッチ位置検出手段121により検出される。
本実施形態の導電部210、すなわちゲーム用駒200は、上記のような特性を有するため、比較的少ない質量の導電体で実現する必要がある。好ましくは、ゲーム用駒200の静電容量は、数ピコファラッド程度である。1つの例では、図6に示すゲーム用駒200は、中空構造の本体部211により構成される。また1つの例では、ゲーム用駒200は、数十グラム程度の316Lステンレスから構成される。ただし、タッチ位置検出手段121がタッチ有無を判定する静電容量の変化の量の閾値(前述の所定量の静電容量の変化)は、タッチパネル(電子装置)のハードウェア特性や設定により変更されうるため、当該閾値に応じて導電部210を構成する導電体の種類、質量、及び形状が決定されることが理解される。
ゲーム用駒200は上記のとおり構成されるため、ゲーム用駒200がタッチパネル110上に載置されてユーザに触れられた場合、タッチ位置検出手段121は、ゲーム用駒200の複数の突起部212の端面(導電部210)の接触した位置のそれぞれを、複数のタッチ位置としてそれぞれ検出する。
タッチパネル110との接触面となる複数の突起部212のそれぞれの端面は、タッチ位置検出手段121が検出可能な大きさを有する。タッチ位置検出手段121により検出される限り、複数の突起部212の端面の大きさは小さくすることができる。例えば、当該端面の大きさがタッチパネル110のタッチポイントの分解能1ドット分の大きさに対応する場合、複数の突起部212の端面は、端点と呼ぶことができる。また複数の突起部212の端面は、当該端面が接触する接触位置がそれぞれ別のタッチ位置としてタッチ位置検出手段121が検出できる程度に、空隙を介して隔てて配置される。
またゲーム用駒200は、複数の突起部212の端面の配置が、それぞれのゲーム用駒200(ゲーム用駒200のID)に応じて異なるように構成される。なおゲーム用駒200は、複数の突起部212の端面の配置が、ゲーム用駒200の種類に応じて異なるように構成することもできる。
1つの例では、ゲーム用駒200は、複数の突起部212を複数の面に備える。例えば、図8は、両面に複数の突起部212を備えるゲーム用駒200を示す。複数の突起部212のそれぞれの端面は、実質的に同一平面上にあり、それぞれの端面をタッチパネル110に接触させて、ゲーム用駒200をタッチパネル110上に載置することができる。この場合、ゲーム用駒200は、両面において複数の突起部212の端面の配置が異なるように構成される。
第2の実施形態のゲーム用駒200は、導電部210及び非導電部220から構成される。本実施形態における導電部210は、ゲーム用駒200における一部分として、1つの塊として構成される。したがって、導電部210は、周囲すべてを非導電部220に覆われたものではない。あるいは、周囲すべてを非導電部220に覆われて外部と導通できない導電部は、導電部210に含まないものとする。
図9は、第2の実施形態のゲーム用駒200の概観図を示す。ゲーム用駒200を載置する場合に載置面と接触する面を底面とすると、底面は実質的に平面である。ゲーム用駒200がタッチパネル110上に載置される場合、底面がタッチパネル110(の載置面)に接触する。図10は、第2の実施形態のゲーム用駒200の底面図である。図10から理解されるように、タッチパネル110との接触面となる底面においては、導電部210は、非導電部220を介して隔てて配置される。
ゲーム用駒200がタッチパネル110上に載置された場合、導電部210は、非導電部220を介して隔てて配置された複数の接触面においてタッチパネル110の静電容量に変化をもたらす。しかし、導電部210は、所定量以上の静電容量の変化を生じさせないものである。したがって、タッチパネル110上に載置されたゲーム用駒200の導電部210の接触は、タッチ位置検出手段121により検出されない。
ここでユーザが導電部210に触れた場合、導電部210と人体は導通状態となるため、ユーザに触れられた導電部210は、非導電部220を介して隔てて配置された複数の接触面において、所定量以上の静電容量の変化を引き起こす。したがって、ユーザに触れられた場合、タッチパネル110上に載置されたゲーム用駒200の導電部210の接触は、タッチ位置検出手段121により検出される。この場合、ゲーム用駒200は、少なくともユーザが接触可能な所定部分が導電部210で構成され、当該所定部分の導電部210は底面において非導電部220を介して隔てて配置される導電部210と導通可能に構成される。好ましくは、ゲーム用駒200は、ユーザが把持するための把持部(図示せず)を備え、当該把持部は導電部210により構成される。
本実施形態の導電部210は、上記のような特性を有するため、比較的少ない質量の導電体で実現する必要がある。好ましくは、導電部210を含めたゲーム用駒200の静電容量は、数ピコファラッド程度である。1つの例では、導電部210は、数十グラム程度の316Lステンレスから構成される。ただし、タッチ位置検出手段121がタッチ有無を判定する静電容量の変化の量の閾値(前述の所定量の静電容量の変化)は、タッチパネル(電子装置)のハードウェア特性や設定により変更されうるため、当該閾値に応じて導電部210を構成する導電体の種類、質量、及び形状が決定されることが理解される。
ゲーム用駒200は上記のとおり構成されるため、ゲーム用駒200がタッチパネル110上に載置されてユーザに触れられた場合、タッチ位置検出手段121は、底面の導電部210の接触した位置のそれぞれを、複数のタッチ位置としてそれぞれ検出する。
当該接触面となる底面における導電部210は、タッチ位置検出手段121が検出可能な大きさを有する。底面における導電部210は、当該底面の接触位置がそれぞれ別のタッチ位置としてタッチ位置検出手段121が検出できるように、非導電部220を介して隔てて配置される。
またゲーム用駒200は、底面における導電部210の配置が、それぞれのゲーム用駒200に応じて異なるように構成される。なおゲーム用駒200は、底面における導電部210の配置が、ゲーム用駒200の種類に応じて異なるように構成することもできる。
1つの例では、ゲーム用駒200は、複数の面でゲーム用駒200を載置することができる。この場合、ゲーム用駒200は、複数の面を底面とすることができる。
図11は、非導電部220を備える第2の実施形態の変形例のゲーム用駒200の概観図を示す。ただし、本変形例のゲーム用駒200は、複数の突起部212を備える点では第1の実施形態の変形例である。
ゲーム用駒200は、複数の突起部212と、把持部213と、本体部221とを備え、複数の突起部212及び把持部213は導電部210から構成され、本体部221は非導電部220から構成される。ただし、本体部221の一部は導電部210から構成されてもよい。
ゲーム用駒200は、タッチパネル110上に載置される場合、複数の突起部212の端面がタッチパネル110(の載置面)に接触するように載置される。したがって、好ましくは、複数の突起部212の端面は、実質的に同一平面上にある。ゲーム用駒200は、タッチパネル110との接触面においては、複数の突起部212の端面、すなわち導電部210が、空隙を介して隔てて配置されるように構成される。複数の突起部212が突出する方向から見た平面図は図7と同様である。
本変形例においても同様にして、ゲーム用駒200がタッチパネル110上に載置された場合、導電部210は、ユーザにより把持部213が触れられないときは、複数の突起部212の端面(導電部210)が接触する接触面において、所定量以上のタッチパネル110の静電容量の変化を生じさせないものである。一方、導電部210は、ユーザにより把持部213が触れられたときは、複数の突起部212の端面が接触する接触面において所定量以上のタッチパネル110の静電容量の変化を生じさせるものである。
第2の実施形態の他の変形例としてのゲーム用駒200は、複数の突起部212を取り囲む非導電部220からなる筒状部を更に備える第1の実施形態のゲーム用駒200である。当該筒状部は、その一方の側面は複数の突起部212の端面と実質的に同一平面上にあり、その他方の側面は本体部211に接続されるゲーム用駒200である。このような構成とすることにより、導電部210からなる複数の突起部212の端面及び非導電部220からなる当該筒状部の側面がタッチパネル110との接触面となることから、第1の実施形態のゲーム用駒200を、より安定した状態で載置することが可能となる。
上記のようなゲーム用駒200が、ボードゲームシステム10が提供するボードゲームにおいて使用される駒の例示である。ゲーム用駒200をこのような構成とすることにより、タッチ位置検出手段121は、タッチパネル110上に載置されたゲーム用駒200の導電部210の接触を、ユーザに触れられていない場合は検出せず、かつユーザに触れられた場合は検出する。これにより、電子装置100は、ユーザに触れられないゲーム用駒200を認識せず、かつユーザに触れられたゲーム用駒200を認識するため、マルチタッチの検出上限を超えた個数のゲーム用駒200が利用可能となる。もしタッチ位置検出手段121がユーザの接触に関わらずゲーム用駒200の複数の接触位置を検出するならば、タッチパネル上110に複数のゲーム用駒200を載置するだけでマルチタッチの検出の上限を超えてしまうため、ボードゲームシステム10を実現することができない。
また、ゲーム用駒200をこのような構成とすることにより、ボードゲーム専用に新たなハードウェアを用意せずに、既存の静電容量式タッチパネルをボードゲームのボードとして利用することが可能となる。更に、従来のRFID方式であると、ゲーム用駒を近づけすぎた場合に個体識別できなくなるという問題があったが、本発明の実施形態では既存のタッチパネルの分解能を利用することができるため、ゲーム用駒200が密集している場合であってもボードゲームを行うことが可能となる。
ここで本発明の実施形態においては、ゲーム用駒200及びタッチパネル110のサイズによらず、任意の分解能のタッチパネル110に対して、タッチパネル110内の仮想空間とタッチパネル110上に配置された物理的なゲーム用駒200とをシームレスに連動させる技術を用いる。
前述のとおり、ゲーム用駒200は、タッチパネル110との接触面における導電部210が、それぞれのゲーム用駒200(又はその種類)に応じて、異なるように非導電部220又は空隙を隔てて配置されるものである。
認識手段123は、タッチ位置検出手段121により検出される複数のタッチ位置の相対的位置関係に基づいて、ユーザに触れられたタッチパネル110上のゲーム用駒200を認識する。具体的には、認識手段123は、複数のタッチ位置の座標(絶対座標)から相対座標を算出し、算出された相対座標の位置により、ゲーム用駒200(又はその種類)を認識するが、例えば以下の方法により相対座標を算出する。
認識手段123は、複数のタッチ位置のすべての点から特定される最小外接矩形(MBR)を抽出し、抽出されたMBRの頂点位置に対応する3つのタッチ位置を基準点とする。したがって、ゲーム用駒200による複数のタッチ位置、すなわちタッチパネル110との接触面における導電部210は、特定されるMBRの4つの頂点のうち3つの頂点位置が複数のタッチ位置のいずれかのタッチ位置となるように、非導電部220又は空隙を隔てて配置される。
認識手段123は、基準点としての3つのタッチ位置(頂点位置)に以下の方法で番号を付与する。まず、3つのタッチ位置から構成される三角形の頂点のうち、最短の線分の一端とならない点を1番目の基準点(P1)とする。次に、3つのタッチ位置から構成される三角形の頂点のうち、最短の線分の一端であり、かつ2つの線分が実質的に直交する交点を2番目の基準点(P2)とする。次に、3つのタッチ位置から構成される三角形の頂点のうち、最短の線分の一端であり、かつ2つの線分が鋭角に交差する交点を3番目の基準点(P3)とする。
次に認識手段123は、1番目の基準点からの距離の順に番号を付与することで、1つのゲーム用駒200による複数のタッチ位置を、基準点の番号とともに認識する。続いて認識手段123は、複数のタッチ位置の相対座標を算出し、複数のタッチ位置を、基準点の番号と、相対座標とを紐付けて認識する。
1つの例では、認識手段123は、MBRを構成する基準点(P1〜P3)の相対座標を、P2は(0,0)、P1は(0,A)、P3は(B,0)と定める。ここでAとBの値は、相対座標を定めるために予め設定された値であり、AとBの大きさの比率が線分P1P2と線分P2P3の絶対座標における距離の比率と同じになるように設定される。認識手段123は、P1〜P3において定められた相対座標との対応関係から、残りのタッチ位置の相対座標を算出する。この場合、複数のタッチ位置すべての相対座標は、X座標においては0以上A以下、Y座標においては0以上B以下となる。
他の例では、MBRを構成する基準点(P1〜P3)の相対座標を、P2は(0,0)、P1は(0,100)、P3は(100,0)と定め、P1〜P3において定められた相対座標との対応関係から、残りのタッチ位置の相対座標を算出する。
このように、3つのタッチ位置を基準点とすることにより、認識手段123は、すべてのタッチ位置の相対的位置関係を特定し、ゲーム用駒200の向きを認識することが可能となる。また認識手段123は、任意のサイズのゲーム用駒200、並びに任意のサイズ及び分解能のタッチパネル100において、1つのゲーム用駒200のタッチ位置の相対的位置関係を識別することが可能となる。
1つの例では、電子装置100は、ゲーム用駒データベースを備える。ゲーム用駒データベースは、ゲーム用駒200のIDと、複数のタッチポイント(タッチ位置)に対応付けることが可能な一組の相対座標とを紐付けるデータベースである。この場合、認識手段123は、タッチ位置検出手段121により検出される複数のタッチ位置に基づいて導出された一組の相対座標をゲーム用駒データベースから検索し、ゲーム用駒200のIDを特定する。これにより、認識手段123は、当該ゲーム用駒200(又はその種類)を認識することが可能となる。この場合において、認識手段123は、タッチ位置検出手段121により検出される複数のタッチ位置から導出された一組の相対座標に対応するゲーム用駒識別子を記憶していない場合、不正入力又は誤入力としてエラーを認識する。
1つの例では、認識手段123は、タッチ位置検出手段121により検出される複数のタッチ位置のうちの4つのタッチ位置が、抽出されたMBRの4つの各頂点位置に対応する場合、エラーを認識する。
1つの例では、認識手段123が上記のようにエラーを認識すると、電子装置100は、認識されたエラーの元となったマルチタッチに基づく処理を中止する。1つの例では、認識手段123が上記のようにエラーを認識すると、表示手段122がエラー発生をタッチパネル110に表示する。
例えば、図11に示すゲーム用駒200が導電部210からなる6つの突起部212を備える場合において把持部213がユーザに触れられた場合、タッチ位置検出手段121は、6つの突起部212の端面により6つのタッチ位置[(x1,y1),(x2,y2),(x3,y3),(x4,y4),(x5,y5),(x6,y6)]を検出する。図12は、ゲーム用駒200の6つの突起部212がタッチパネル110に接触するときの接触位置を示し、当該接触位置がタッチ位置検出手段121により検出される6つのタッチ位置となる。
認識手段123は、図12に示すとおり、6つのタッチ位置から特定されるMBRを抽出し、抽出されたMBRの頂点位置に対応する3つのタッチ位置を基準点とする。次に、認識手段123は、前述の番号付与方法により、3つの基準点に対して番号を付与し、例えばP1、P2、P3として認識し、相対座標を定める。次に、認識手段123は、P1からの距離の順に番号(P4〜P6)を付与するとともに相対座標を算出し、1つのゲーム用駒200による6つのタッチ位置P1〜P6を相対座標とともに認識する。これにより、認識手段123は、当該ゲーム用駒200を認識することが可能となる。
位置決定手段124は、タッチ位置検出手段121により検出される複数のタッチ位置に基づいて、認識されたゲーム用駒200の、タッチパネル110に表示されるゲームフィールドのエリアの位置を決定する。
1つの例では、位置決定手段124は、認識手段123により抽出されたMBRの中心位置が、どのエリアの領域内にあるかを判定することにより、ゲーム用駒200のエリアの位置を決定する。
他の例では、位置決定手段124は、ゲーム用駒200による複数のタッチ位置のうちの特定の1つの位置が、どのエリアの領域内にあるかを判定することにより、ゲーム用駒200のエリアの位置を決定する。
1つの例では、位置決定手段124は、認識手段123がゲーム用駒200をエラー認識した場合、ゲーム用駒200の位置を決定しない。
本発明の実施形態においては、電子装置100はユーザに触れられた場合にゲーム用駒200を認識するため、タッチパネル110上に実際に配置されたゲーム用駒200を、検出されたタッチ位置をそのまま用いて把握することは難しい。移動状態決定手段125は、ゲーム用駒200の移動状態を把握するために、認識されたゲーム用駒200の決定されたエリアの位置の履歴に基づいて、認識されたゲーム用駒200の移動状態を決定する。
移動状態は、ゲーム用駒200がタッチパネル110上の一のエリアの位置へ新たに置かれた状態(新設置状態)と、ゲーム用駒200がタッチパネル110から持ち上げられた状態(離脱状態)と、タッチパネル110上の他のエリアの位置へ移動して置かれた状態(移動設置状態)とを含む。他の例では、移動状態は、ゲーム用駒200がタッチパネル110から持ち上げられたときのエリアの位置と同じエリアの位置へ置かれた状態(再設置状態)を含む。他の例では、移動状態は、設置状態及び離脱状態を含んで構成され、設置状態は、新設置状態、移動設置状態、再設置状態を含む。
1つの例では、電子装置100は、移動状態管理データベースを備える。図13は、移動状態管理データベースのデータ構造例を示す。
移動状態管理データベースは、エリアの位置を示すエリア座標と、移動中フラグと、ゲーム用駒200のID(ゲーム用駒識別子)と、を紐付けるデータベースである。移動中フラグは、ゲーム用駒200が移動中であるか否かを示すフラグであり、「0」が移動中ではないこと(off又はfalse)を示し、「1」が移動中であること(on又はtrue)を示す。1つの例では、移動状態管理データベースは、移動中フラグを「1」とすることができる行データ(レコード)は1つのみである。
移動状態決定手段125は、1つのゲーム用駒200が認識され、当該ゲーム用駒200のエリアの位置が決定されると、当該ゲーム用駒200のゲーム用駒識別子を移動状態管理データベース内から検索する。
ゲーム用駒識別子が当該データベース内に無い場合、移動状態決定手段125は、認識されたゲーム用駒200の決定されたエリア座標に紐付けて、当該ゲーム用駒識別子と、移動中フラグ「0」とを記憶し、移動状態を設置状態(又は新設置状態)と決定する。
ゲーム用駒識別子が当該データベース内に有る場合、移動状態決定手段125は、認識されたゲーム用駒200の決定されたエリア座標、及び認識されたゲーム用駒200が当該データベース内で紐付けられたエリア座標が同じであるかを判定する。
判定された結果、同じである場合において移動中フラグが「0」である場合、移動状態決定手段125は、当該決定されたエリア座標に紐付けて、当該ゲーム用駒識別子と、移動中フラグ「1」とを記憶し、移動状態を離脱状態と決定する。判定された結果、同じである場合において移動中フラグが「1」である場合、移動状態決定手段125は、当該決定されたエリア座標に紐付けて、当該ゲーム用駒識別子と、移動中フラグ「0」とを記憶し、移動状態を設置状態(又は再設置状態)と決定する。
判定された結果、異なる場合において移動中フラグが「0」である場合、移動状態決定手段125は、エラー状態と判断し、判断されたエラーの元となったマルチタッチに基づく処理を中止する。ただし、移動状態決定手段125は、当該決定されたエリア座標に紐付けて、当該ゲーム用駒識別子と、移動中フラグ「0」とを記憶し、移動状態を設置状態と決定してもよい。判定された結果、異なる場合において移動中フラグが「1」である場合、移動状態決定手段125は、当該決定されたエリア座標に紐付けて、当該ゲーム用駒識別子と、移動中フラグ「0」とを記憶し、移動状態を設置状態(又は移動設置状態)と決定する。
図13においては、エリア座標(0,0)と(2,0)には、ゲーム用駒識別子F0001とF0002のゲーム用駒200がそれぞれ設置状態にあることが理解される。更に、エリア座標(3,2)には、設置されていたゲーム用駒識別子F0023のゲーム用駒200が離脱状態であることが理解される。
ここで、移動状態管理データベースは、あるエリア座標にゲーム用駒200が置かれていない場合、当該エリア座標に紐付けられたゲーム用識別子にNULL(F9999)を記憶する。したがって、例えばエリア座標(1,0)においては、ゲーム用駒200が置かれていないことが理解される。ただし、移動状態管理データベースは、ゲーム用駒200が置かれたエリア座標のデータのみ含み、ゲーム用駒200が置かれていないエリア座標に関するデータは含まないように構成することもできる。
このように、移動状態決定手段125が移動状態を識別することにより、タッチパネル110上に実際に配置されたゲーム用駒200を、検出されたタッチ位置を用いて把握することが可能となり、マルチタッチの検出上限を超えた個数のゲーム用駒200が利用可能となる。
他の例では、移動状態決定手段125は、1つのゲーム用駒200が認識されると、認識されたゲーム用駒200と、そのゲーム用駒200のエリアの位置とを紐付けて、1つのイベントデータとして記憶する。移動状態決定手段125は、履歴データとして、これまでに認識されたゲーム用駒200の1又は複数のイベントデータ(イベント履歴データ)を記憶することができる。
この場合、移動状態決定手段125は、認識されたゲーム用駒200の、現在決定されたエリアの位置及びその直前に決定されたエリアの位置の同異を、イベント履歴データを用いて判定する。認識されたゲーム用駒200の、現在決定されたエリアの位置及びその直前に決定されたエリアの位置が同じ場合、移動状態決定手段125は、移動状態を離脱状態と決定する。認識されたゲーム用駒200が、現在決定されたエリアの位置及びその直前に決定されたエリアの位置が異なる場合、移動状態決定手段125は、移動状態を移動設置状態と決定する。認識されたゲーム用駒200が、現在決定されたエリアの位置以外にイベントデータが無い場合、移動状態決定手段125は、移動状態を新設置状態と決定する。
図14は、本発明の実施形態によるゲーム用駒200の状態識別管理の情報処理を示すフローチャートである。当該情報処理においては、前述のゲーム用駒データベース及び移動状態管理データベースを用いる。
まず、ステップ1401において、マルチタッチを検出したかどうかを判定する。ここで、本フローチャート開始時においては、電子装置100は、例えばゲーム用プログラムが実行され、ユーザによってゲームがプレイされている状態にある。例えば本フローチャートは、ゲーム用プログラムのメインループの一部として実行されるか、又はタッチイベントが発生することによって呼び出されて実行されるものである。
なお本情報処理においては、電子装置100としてタッチパネルを備えるタブレット型コンピュータが用いられる。一般的に電子装置100は一定時間毎にタッチ検出を行い、一定時間毎に画面更新を行う。例えば画面更新単位時間は、1/30秒、1/60秒等にすることができる。
ステップ1401においてマルチタッチが検出された場合、ステップ1402において、検出された複数のタッチ位置を相対座標へ変換する。続いてステップ1403において、変換された複数のタッチ位置から構成される一組の相対座標をゲーム用駒データベースから検索する。ゲーム用駒データベースが当該一組の相対座標に対応するゲーム用駒識別子を記憶していない場合、本フローチャートの処理を終了し、例えばゲーム用プログラムが実行され続ける限りマルチタッチイベント検出の待機状態となる。本フローチャートの処理を終了する場合、不正入力又は誤入力としてエラー通知をユーザに行ってもよいし、他のエラー処理を実行してもよい。
1つの例では、ステップ1402において、検出された複数のタッチ位置を相対座標へ変換できない場合も、ステップ1403において、本フローチャートの処理を終了する。
1つの例では、ゲーム用駒データベースが格納するデータは、ボードゲームシステム10のゲームの種類に応じて異なり、当該ゲームに対応しないゲーム用駒200が置かれた場合、本フローチャートの処理を終了する。1つの例では、タッチパネル110上の2つのゲーム用駒200が同時に触れられた場合、ゲーム用駒200のIDを認識できないため、本フローチャートの処理を終了する。
ステップ1403において、ゲーム用駒データベースが、当該一組の相対座標に対応するゲーム用駒識別子を記憶している場合、当該ゲーム用駒識別子を認識する。ゲーム用駒200が認識されると、ステップ1404において、当該ゲーム用駒200のゲームフィールドにおけるエリアの位置(エリア座標)を決定する。
続いてステップ1405において、認識されたゲーム用駒200の直前に決定されたエリア座標を、移動状態管理データベースから検索する。続いてステップ1406において、ステップ1404において現在決定されたエリア座標と、直前に決定されたエリア座標とが同じであるかどうかを判定する。
ステップ1406で同じであると判定された場合、ステップ1407において、認識されたゲーム用駒200のゲーム用駒識別子の、移動状態管理データベースにおける移動中フラグが「1」であるかどうかを判定する。
移動中フラグが「1」である場合、ユーザがゲーム用駒200を同じエリア座標に戻したと認識し、当該ゲーム用駒識別子の移動中フラグを「0」に更新する(ステップ1408)。移動中フラグが「0」である場合、ユーザがゲーム用駒200をタッチパネル110から離脱させたと認識し、当該ゲーム用駒識別子の移動中フラグを「1」に更新する(ステップ1409)。
ステップ1406で異なると判定された場合又は直前に決定されたエリア座標が存在しなかった場合、ステップ1410において、認識されたゲーム用駒200のゲーム用駒識別子の、移動状態管理データベースにおける移動中フラグが「1」であるかどうかを判定する。
移動中フラグが「1」である場合、ユーザはゲーム用駒200を移動させたと認識し、現在決定されたエリア座標に、移動中フラグ「0」と当該ゲーム用駒識別子とを紐付けて記憶するとともに、直前に決定されたエリア座標に紐付けされたデータを削除する。削除されると、移動中フラグに「0」が格納され、ゲーム用駒識別子に「NULL」が格納される(ステップ1411)。移動中フラグが「0」である場合、ゲーム用駒識別子200は新たに置かれたと認識し、現在決定されたエリア座標に、移動中フラグ「0」と当該ゲーム用駒識別子とを紐付けて記憶する(ステップ1412)。
このような情報処理を行うことにより、ゲーム用駒200の移動状態の識別と管理を行うことができる。これにより、タッチパネル110上に実際に配置されたゲーム用駒200を、検出されたタッチ位置を用いて把握することが可能となり、マルチタッチの検出上限を超えた個数のゲーム用駒200が利用可能となる。なお本フローチャートにおいては、原則として、電子装置100が継続的にマルチタッチの検出を続ける場合、例えばユーザが対象のゲーム用駒200をタッチパネル110上で触れ続ける場合は、ステップ1401でのマルチタッチ検出からの一連の処理を再開しない。ただし、対象のゲーム用駒200の決定されたエリアの位置が変更となった場合などは、電子装置100は、本フローチャートの処理を終了、又は他のエラー処理を実行し、再びマルチタッチイベント検出の待機状態となる。
また本フローチャートは、1つのゲーム用駒200がタッチパネル110から持ち上げられると、当該ゲーム用駒200がタッチパネル110上に置かれることを想定した情報処理である。しかしながら、本発明の実施形態は、他の実施形態にも適用することができる。例えば、電子装置100は、ゲーム用駒200の移動状態管理データベースを、本フローチャートの処理とは別の情報処理により更新することができ、これによりゲーム内容に応じた情報処理を行うことができる。具体的には、ボードゲームシステム10が提供するゲームが将棋である場合において、ユーザがゲーム用駒200のうちの1つの「歩」を他のユーザに取られた場合、この「歩」のゲーム用駒識別子と紐付けられた移動中フラグのデータを削除することができる。
1つの例では、ステップ1411でユーザがゲーム用駒200を移動させたと認識した場合、電子装置100は、移動の演出をタッチパネル110上に表示し、移動の効果音をスピーカから出力する。例えば、ボードゲームシステム10が提供するゲームが将棋である場合において、ユーザがゲーム用駒200のうちの1つの「飛車」を掴んで、他のエリア座標にあるゲーム用駒200のうちの1つの「金」を取った場合、このインパクトに相当するアニメーション又は効果音を出力することができる。
1つの例では、ステップ1407で移動中フラグが「0」である場合、電子装置100は、ゲーム用駒200がタッチパネル110から離脱したと認識すると同時にゲーム用駒200が移動できる方向をタッチパネル110上に表示する。例えば、ボードゲームシステム10が提供するゲームが将棋である場合において、ユーザがゲーム用駒200のうちの1つの「金」を掴んだ場合、電子装置100は、タッチパネル上に「金」の移動可能方向又は移動可能なエリア座標を明示することができる。
次に、拡張ゲーム用駒300について説明する。ゲーム用駒200は、1つの実施形態において、拡張ゲーム用駒300を含むことができる。当該実施形態において、ゲーム用駒200の一部又は全部は、単体でゲーム用駒200として利用可能なベース駒310と、ベース駒に取り付けられてベース駒300の機能を拡張する拡張駒320と、から構成される拡張ゲーム用駒300である。なお当該実施形態において、ベース駒310は、図11に示すゲーム用駒200が後述の嵌合部314を備えるものとして説明するが、先に説明した他の実施形態のゲーム用駒200が嵌合部314を備えるものであってもよい。
図15は、本発明の実施形態によるベース駒310と、拡張駒320と、ベース駒310と拡張駒320が連結された拡張ゲーム用駒300とを示す図である。1つの例では、図15に示すように、ベース駒310である「クイーン」に拡張駒320である「聖なる剣」を連結することにより、「聖なる剣を装備したクイーン」という拡張ゲーム用駒300を作り出すことができる。
ベース駒310は、本体部311と、複数の突起部312と、把持部313とを備え、図11に示すゲーム用駒200と同様にして、複数の突起部312及び把持部313は導電部210から構成される。拡張駒320は、本体部321と、複数の突起部322と、把持部323とを備え、少なくとも複数の突起部322及び把持部323は導電部から構成される。
ベース駒310は把持部313に凹型嵌合部314を備え、拡張駒320は把持部314に凸型嵌合部324を備える。凹型嵌合部314と凸型嵌合部324が嵌合することにより、1つの拡張ゲーム用駒300は実現される。ベース駒310と拡張駒320が連結された拡張ゲーム用駒300は、複数の突起部312及び322からなる複数の突起部302と、把持部313及び323からなる把持部303とを備える。ただし、ベース駒310は把持部313に凸型嵌合部314を備え、拡張駒320は把持部314に凹型嵌合部を備えることもできる。
拡張駒320は、タッチパネル110上に載置される場合、複数の突起部322の端面がタッチパネル110(の載置面)に接触するように載置される。したがって、好ましくは、複数の突起部322の端面は、実質的に同一平面上にある。また複数の突起部322の端面を含む複数の突起部302の端面は、実質的に同一平面上にあり、拡張ゲーム用駒300がタッチパネル110上に載置される場合、当該端面がタッチパネル110に接触する。当該接触面においては、複数の突起部302の端面、すなわち導電部210は、空隙を介して隔てて配置される。
上記構成によりベース駒310の導電部210及び拡張駒320の導電部350もまた連結されて導通可能な状態となり、拡張ゲーム用駒300の導電部210は、ゲーム用駒200における一部分として、1つの塊として構成される。拡張ゲーム用駒300がタッチパネル110上に載置された場合、拡張ゲーム用駒300の導電部210は、ベース駒310と同様にして、ユーザにより把持部303が触れられないときは、複数の突起部302の端面(導電部210)が接触する接触面において、所定量以上のタッチパネル110の静電容量の変化を生じさせないものである。一方、拡張ゲーム用駒300の導電部210は、ユーザにより把持部303が触れられたときは、複数の突起部302の端面が接触する接触面において所定量以上のタッチパネル110の静電容量の変化を生じさせるものである。
次に、拡張ゲーム用駒300の認識方法について説明する。本実施形態においても、認識手段123は、複数のタッチ位置の座標から相対座標を算出し、算出された相対座標の位置により、拡張ゲーム用駒200を認識する。相対座標の算出については上記実施例と同様である。
ここで、ベース駒310が6つの突起部312を備え、拡張駒322が3つの突起部322を備える場合について説明する。図16は、ベース駒310の6つの突起部312がタッチパネル110に接触するときの接触位置と、拡張駒320の3つの突起部322がタッチパネル110に接触するときの接触位置と、これら2つの駒を連結した拡張ゲーム用駒300の9つの突起部302がタッチパネル110に接触するときの接触位置とを示す図である。
認識手段123は、タッチパネル110上のベース駒310が導電部210をユーザに触れられた場合、図12を用いて説明した場合と同様にして、ベース駒310による6つのタッチ位置P1〜P6を相対座標とともに認識する。この場合、認識手段123は、MBRを構成する基準点(P1〜P3)の相対座標を、P2は(0,0)、P1は(0,A)、P3は(B,0)と定めるものとする。AとBの値は、相対座標を定めるために予め設定された値であり、AとBの大きさの比率が線分P1P2と線分P2P3の絶対座標における距離の比率と同じになるように設定される。
ベース駒310に拡張駒320が連結された拡張ゲーム用駒300が、タッチパネル110上に載置され把持部303をユーザに触れられた場合、認識手段123は、ベース駒310の場合と同様にして、拡張ゲーム用駒300による9つのタッチ位置P1〜P9を相対座標とともに認識する。ここで、認識手段123が抽出するMBRは、図16に示すとおり、ベース駒310の場合と比較して、形状が変わる。したがって、認識手段123により抽出されたMBRを構成する3つの基準点のうちの1つ(P3)は変更され、例えばP3は(C,0)と定められる。
1つの例では、認識手段123が抽出するMBRにおけるAとCの大きさの比率から、認識手段123は、ゲーム用駒200が拡張ゲーム用駒300であることを認識することができる。この場合、好ましくは、認識手段123が抽出するMBRにおけるAとBが取り得る値の組み合わせは、AとCが取り得る値の組み合わせと重複せず、かつ限定的(好ましくは1つ)であるようにベース駒310は構成される。同様に好ましくは、認識手段123が抽出するMBRにおけるAとCが取り得る値の組み合わせは、AとBが取り得る値の組み合わせと重複せず、かつ限定的(好ましくは1つ)であるように拡張ゲーム用駒300は構成される。
このようにベース駒310と拡張駒320を構成することにより、認識手段123はベース駒310と拡張ゲーム用駒300とを識別することが可能になる。これにより、ゲーム用駒200(ベース駒310)に拡張駒320を連結させて新たなゲーム用駒200(拡張用ゲーム用駒300)とすることが可能となり、ボードゲームの興趣性を高め、より高度なゲームを実現することが可能となる。例えば、ベース駒310又は拡張駒320は、認識手段123が抽出するMBRを構成しない接触位置の突起部312又は322(導電部210)の配置が、駒の種類に応じて異なるように構成することもでき、これにより、更に多くの種類のゲーム用駒200を作成することが可能となる。
他の例では、認識手段123は、拡張ゲーム用駒300又はベース駒310の導電部210がタッチパネル110に接触するときの接触位置の数に基づいて、ゲーム用駒200が拡張ゲーム用駒300又はベース駒310であることを認識することができる。
続いて、ゲーム用駒200の製造方法について説明する。本発明の実施形態では、ゲームの内容に応じて、多くのゲーム用駒200(又はその種類)が必要とされることから、タッチパネル110との接触面においては、様々な配置パターンの導電部210を有するゲーム用駒200を作成する必要がある。また上述したように、導電部210は、上記のような特性を有するため、比較的少ない質量の導電体で実現する必要がある。好ましくは、導電部210は、数ピコファラッド程度の静電容量を有し、数十グラム程度の316Lステンレスから構成される。
1つの例では、第1の実施形態のような全体が導電部210であるゲーム用駒200は、金属粉末の焼結技術(例えばレーザ焼結法)を用いた3Dプリンタを用いて作成する。このように作成することで、図6に示す本体部211の中身を中空化し、大きさを保ったまま質量を削減することができる。また3Dプリンタを用いることで、複数の突起部212の配置パターンごとに鋳型を作る必要もないことから、比較的簡易に、また安価にゲーム用駒200を作成することが可能となる。他の例では、図11に示す把持部213のような台座が導電部210から構成されるゲーム用駒200は、当該台座を、3Dプリンタを用いて作成する。本例示においても、当該台座の中身を中空化し、大きさを保ったまま質量を削減することができる。
本発明の実施形態によるボードゲームシステム10は、更にサーバ(図示せず)を備えることができる。この場合、電子装置100はネットワークを介してサーバに接続される。例えばサーバは、上記の実施形態において電子装置100が備えるデータベースを電子装置100の代わりに備えることができ、電子装置100は必要に応じて当該データベースにアクセスすることができる。
上記のとおり、ボードゲームシステム10は、図4に示す機能を有するものであるが、図17に示す6つのモジュールから構成することもできる。このようにモジュール化を行うことにより、一部のモジュールを変更して各種のゲームに適用することが可能になる。
マルチタッチイベント−駒IDコンバータ131は、ゲーム用駒200がタッチパネル110上に置かれたときに、接点をマルチタッチとして認識し、その認識結果である絶対座標情報(例:[{100,120}, {300,400}, {124,176}, {432,655}, {876,20}])を相対座標情報へ変換する。認識手段123の一部に対応する機能を有するものである。
設置/移動状態マネージャ132は、ステップ1404からステップ1412までのゲーム用駒200の状態とアクションの識別を行うモジュールである。具体的には、新規でゲーム用駒200が設置されたか、又は盤面(タッチパネル110)上のゲーム用駒200が掴まれたかを識別し、盤面状態を決定する。あるいは、不正な状態としてエラー処理を行うかを決定する。位置決定手段124、及び移動状態決定手段125の一部に対応する機能を有するものである。
設置/移動実行ハンドラ133は、盤面の状態情報である、設置/移動状態マネージャ132を更新し、ゲーム用駒200の移動に応じたアクションを実行するモジュールである。なお、アクションには、タッチパネル110上でのエフェクトの再生などが含まれる。1つの例では、エフェクトの再生は、フィギュア(ゲーム用駒200)を設置した個所を光らせるなどの映像エフェクト、又はフィギュアのキャラクタに応じた音声エフェクト、例えば「魔界の番犬ケルベロス」のフィギュアを設置したときに「魔界の番犬ケルベロス登場!」のような音声の再生、を含む。表示手段122の一部及び移動状態決定手段125の一部に対応する機能を有するものである。
エラーハンドラ134は、設置/移動状態マネージャ132が、不正な状態遷移を検出したときに起動され、ユーザにエラー通知を行うモジュールである。ゲーム用駒200は物理的なものであるため、誤認識や誤操作を想定する必要がある。そこで、エラーハンドラ134は、設置/移動状態マネージャ132が、矛盾したステートを検出したとき、例えば、ゲーム用駒200を移動中に別の新規のゲーム用駒200を設置したり、ゲーム用駒200を移動中に別のゲーム用駒200も移動させたり、ゲーム用駒200を2回同じ場所に設置させたりなどの不正な状態を検出したときに、エラー処理を行う。移動状態決定手段125の一部に対応する機能を有するものである。
駒DB135は、相対座標情報(例:[{x1,y1}, {x2,y2}, {x3,y3}, {x4,y4}, {x5,y5}])と、ゲーム用駒のIDとを紐付けるデータベースである。ゲーム用駒データベースに対応する機能を有するものである。盤面グリッドステータス136は、盤面のグリッド上にどのようなゲーム用駒200が置かれているかを管理するモジュールである。具体的には、図5に示すように、画面を、ゲーム用駒200を置くためのグリッドに分割し、座標番号を用いてそれぞれのセルを識別する実装が考えられる。移動状態管理データベースに対応する機能を有するものである。
以上に説明してきた各実施例は、本発明を説明するための例示であり、本発明はこれらの実施例に限定されるものではない。例えば、ゲーム用駒200の実施例はこれらに限定されない。各実施例は、矛盾が生じない限りにおいて、適宜組み合わせて本発明の任意の実施形態に適用することができる。すなわち本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。