【文献】
ジオキャッシング,ウィキペディア,2011年 8月15日,pp 1-8,https://ja.wikipedia.org/w/index.php?title=%E3%82%B8%E3%82%AA%E3%82%AD%E3%83%A3%E3%83%83%E3%82%B7%E3%83%B3%E3%82%B0&oldid=38790694
【文献】
GPSを使った世界規模の宝探しゲーム「Geocaching」−今日のアプリ第272回,TOUCh LAb,2008年10月18日,pp 1-6,http://touchlab.jp/2008/10/iphone-geocaching-272/
(58)【調査した分野】(Int.Cl.,DB名)
前記トリガー条件設定手段が、前記トリガー条件に含める条件として、前記設置場所で前記撮影手段により撮影されるライブビュー中に含まれるべき被写体の画像を設定する必須被写体設定手段を有する、
ように前記コンピュータを機能させるための請求項2に記載のプログラム。
前記設置場所設定手段が、前記位置情報取得手段により取得された位置情報と、当該位置において前記撮影手段により撮影されるライブビュー中に含まれ、前記オブジェクトの出現位置の相対基準のマーカとなる画像とを組み合わせて前記設置場所を設定する、
ように前記コンピュータを機能させるための請求項2又は3に記載のプログラム。
前記トリガー条件設定手段が、前記トリガー条件に含める条件として、前記位置情報取得手段により取得される位置情報に基づく移動軌跡の条件を設定する移動軌跡設定手段を有する、
ように前記コンピュータを機能させるための請求項2〜4の何れか一項に記載のプログラム。
【発明を実施するための形態】
【0032】
本発明を適用した実施形態として、マルチプレーヤ参加型のオンラインRPG(ロールプレイングゲーム)を実行するケースを例に挙げて説明する。
【0033】
[システムの構成例]
図1は、本実施形態におけるゲームシステムの構成の一例を示す図である。本実施形態のゲームシステムは、通信回線1に接続することのできるゲームサーバ1100と、プレーヤ毎に用意されるゲーム端末1500(1500a、1500b)により構成される。
【0034】
通信回線1は、データ通信が可能な通信路を意味する。すなわち、通信回線1とは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLAN(Local Area Network)の他、電話通信網やケーブル網、インターネット等の通信網を含む意味であり、また、通信方法については有線/無線を問わない。
【0035】
ゲームサーバ1100は、単数又は複数のサーバ装置や記憶装置等を含んで構成され、マルチプレーヤ型オンラインRPG(ロールプレイングゲーム)を運営するための各種サービスを提供し、ゲーム実行に必要なクライアントプログラムや各種データを配信することができる。
【0036】
本実施形態のゲームサーバ1100は、筐体1102と、キーボード1106と、タッチパネル1108と、ストレージ1140とを備える。筐体1102には、複数のブレードサーバ1104が内蔵されている。
【0037】
ブレードサーバ1104は、例えば、(1)ユーザの登録やプレーヤキャラクタの初期設定、及びログイン/ログアウトの管理、セーブデータの管理などを担うアカウント管理サーバ1110と、(2)ログインしてオンラインゲームに参加中のゲーム端末1500それぞれから位置情報を受信して各端末の位置を把握し続ける位置情報管理サーバ1112と、(3)この位置情報管理サーバ1112から各端末の位置情報を取得し、各端末の現在位置に応じてゲームに必要なデータを随時配信したりゲーム端末1500から取得するゲームデータ管理サーバ1114と、を有して構成される。
【0038】
尚、ブレードサーバ1104を構成するそれぞれのサーバは、通信回線1を介してデータ通信可能な他の独立した装置として実現し、ゲームサーバ1100が随時必要な情報を送受し合う構成であっても良い。また、上述のブレードサーバの機能を、複数のブレードサーバにより協調的に実現するとしても良い。
【0039】
ゲーム端末1500(1500a、1500b)は、ユーザそれぞれに1台ずつ用意されるコンピュータであり、ゲーム装置である。例えば、家庭用ゲーム装置や携帯型ゲーム装置、スマートフォンなどにより実現され、携帯電話基地局4や無線基地局6、固定回線を介して通信回線1に接続し、ゲームサーバ1100にアクセスすることができる。尚、以下の説明では、ゲーム端末1500の代表例としてスマートフォンを例に挙げて説明する。
【0040】
図2は、ゲーム端末1500の構成例を示す図であって、(1)正面外観図、(2)背面外観図である。本実施形態におけるゲーム端末1500は、方向入力キー1502と、ホームキー1504と、タッチパネル1506と、スピーカ1510と、マイク1512と、GPS(Global Positioning System)アンテナ1514と、CCDカメラモジュール1516と、制御基板1550と、コンピュータ読み出し可能な情報記憶媒体であるメモリカード1540からデータを読み書きできるメモリカード読取装置1542と、を備える。その他、図示されていない内蔵バッテリーや電源ボタン、音量調節ボタン等が設けられている。
【0041】
CCDカメラモジュール1516は、オートフォーカス機構と、CCDイメージセンサと、イメージ信号生成チップとを搭載したモジュールであって、ゲーム端末1500の背面側を撮影できるように配置されている。尚、イメージセンサ素子はCCDに限らない。
【0042】
制御基板1550は、CPU(Central Processing Unit)1551やGPU(Graphics Processing Unit)、DSP(Digital Signal Processor)などの各種マイクロプロセッサ、ASIC(Application Specific Integrated Circuit)、VRAMやRAM,ROM等の各種ICメモリ1552を搭載する。
【0043】
そして、制御基板1550には、携帯電話基地局4と無線接続するための無線通信モジュール1553と、GPSモジュール1554と、電子コンパス1555と、3軸ジャイロ1556と、3軸加速度センサ1557とが搭載されている。
その他、タッチパネル1506のドライバ回路、方向入力キー1502及びホームキー1504からの信号を受信する回路、スピーカ1510へ音声信号を出力する出力アンプ回路、マイク1512で集音した音声の信号を生成する入力信号生成回路、メモリカード読取装置1542への信号入出力回路といった所謂I/F回路(インターフェース回路)、等が搭載されている。これら制御基板1550に搭載されている各要素は、それぞれバス回路などを介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。
【0044】
GPSモジュール1554は、GPSアンテナ1514とともにGPSを利用した位置情報取得する手段を構成する。GPSモジュール1554は、GPSアンテナ1514で受信したGPS衛星3からの信号に基づいて、所定時間毎(例えば、1秒毎)に、位置情報(例えば、緯度・経度)及びその他の情報(絶対時間)を、制御基板1550で演算処理可能なデータとして出力する。尚、測位に利用するシステムはGPSに限らない。その他の衛星測位システムでも良いし、衛星を用いない測位システムを用いることもできる。後者の例としては、例えば、無線通信モジュール1553が無線接続できる携帯電話基地局4からの信号に基づいて三角測量の原理で測位して、位置情報を取得するとしても良い。
【0045】
制御基板1550は、ゲームサーバ1100から取得したゲームクライアントプログラムやデータをICメモリ1552に一時記憶する。そして、プログラムを実行して演算処理を実行し、方向入力キー1502やホームキー1504、タッチパネル1506からの操作入力に応じてゲーム端末1500の各部を制御して、オンラインRPGを実行する。尚、本実施形態では、ゲーム端末1500は必要なプログラムや各種設定データをゲームサーバ1100から取得する構成としているが、メモリカード1540から読み出す構成としても良い。
【0046】
[ゲームの概要]
次に、本実施形態におけるゲームの概要を説明する。
図3は、本実施形態におけるゲーム画面例とプレイスタイルの例を示す図である。本実施形態のビデオゲームは、拡張現実を利用したRPGであって、ゲーム画面はビデオシースルー方式を採用している。つまり、ゲーム画面W2は、ゲーム端末1500のCCDカメラモジュール1516で撮影しているライブビューW3に、ゲームテキスト表示10や操作入力のための操作アイコン12と、敵キャラクタ14などゲーム内に登場するものの仮想オブジェクトすなわちAR表示体(Augmented Reality:拡張現実表示体)をリアルタイムに合成して形成される。ゲーム画面W2は、いわばプレーヤキャラクタの視界に相当する位置づけである。また、本実施形態において「ライブビュー」とは、ファインダー画像などとも呼ばれる画像のことであり、撮像素子でとらえられている画像という意味である。
【0047】
AR表示体は、現実世界(現実空間)における位置情報が適用される仮想の拡張現実空間に設定されており、そのデータはゲームサーバ1100にて記憶・管理されている。ゲーム端末1500の位置情報と撮影方向の情報が逐次ゲームサーバ1100に送信されると、ゲームサーバ1100はゲーム端末1500の最新位置の周辺に設定されているAR表示体の配置や表示に関連するデータ(以下、AR表示体データと呼ぶ)を当該ゲーム端末に配信する。ゲーム端末1500は、AR表示体データを受信し、適宜現在位置と現在の撮影方向とから導かれる撮影範囲に写るものを選出して、ライブビューに合成表示させる。
【0048】
ゲーム操作は、基本的には方向入力キー1502やホームキー1504への操作、並びにタッチパネル1506を用いたタッチ操作にて行われる。例えば、ゲーム画面中に表示された敵キャラクタ14のAR表示体をタッチ操作すると、その敵キャラクタ14との戦闘イベントに突入する。敵キャラクタ14を見事倒すことができれば、プレーヤは経験値や一時金、アイテム等を取得することができる。
【0049】
そして、本実施形態では拡張現実空間に仮想の宝箱を設置させることができる。ここでいう「宝箱」は、公知のRPGにてアイテム等の取得に用いられる仕掛けに相当する。すなわち、ゲーム世界の場所に紐付けされた特典付与の為の仕掛けである。ゲームの内容によってはその形態は宝箱に限らず適宜設定することができる。本実施形態では、この仮想の宝箱をプレーヤ自身が設置場所や中身、開封の条件等を設定することができる。
【0050】
図4は、本実施形態における仮想の宝箱の設置に関する概念を説明するための概念図である。ゲーム端末1500は、GPS衛星3からの測位信号を受信して緯度経度による位置情報を取得することができるとともに、電子コンパス1555や3軸ジャイロ1556、3軸加速度センサ1557による各測定値に基づいてCCDカメラモジュール1516の向いている方向すなわち撮影方向の情報を取得することができる。
【0051】
プレーヤが所定の宝箱設置操作を入力すると(例えば、
図3の宝箱設置操作アイコン12bをタッチ操作すると)、最新の位置が測位されるとともに、最新の撮影方向が算出され一意的な設置場所が設定される。設置場所は、現実空間中の仮想的な設置場であり、現実空間の位置情報で対応づけられる仮想空間内の場所である。尚、後述するが、本実施形態では設置場所を現実の物体と関連づけてより詳細に設定することができる。
【0052】
また、本実施形態では宝箱の設置に伴って、出現条件とそのヒント(出現ヒント)、開封条件とそのヒント(開封ヒント)、宝箱の中身、をそれぞれ設定することができる。
「出現条件」は、宝箱に係るトリガー条件の一つであって、宝箱のAR表示体をゲーム画面に表示させるために満たすべき条件であり、隠された宝箱を見つけるための謎解き部分に相当する。
「開封条件」は、宝箱に係るトリガー条件の一つであって、宝箱を作動(開封)させて中身として設定されている特典を開封者に付与するために満たすべき条件であり、宝箱を開けるための鍵に相当する。
「宝箱の中身」は、宝箱というゲーム中に使用されるオブジェクトの作動内容や作動したことによるゲーム進行の変更内容に相当する。
【0053】
図5は、本実施形態における宝箱の発見(出現に相当)と開封(作動に相当)までの流れを示す概念図である。本実施形態では、拡張現実空間に設定されている宝箱のAR表示体24は、出現条件が設定されている場合には当初隠ぺい状態とされてゲーム画面には表示されない。
【0054】
具体的には、
図5(1)に示すように、宝箱が設置されているポイントPsから所定範囲(図中の破線範囲)にゲーム端末1500が進入すると、ゲームサーバ1100から当該宝箱の設置に関するデータ(宝箱のAR表示体データである宝箱設置データ)が配信される。ゲーム端末1500は、宝箱設置データを受信することでポイントPsに設置されている宝箱に関する情報をプレーヤに与えたことになる。しかし、出現条件が設定されている場合には、宝箱のAR表示体24は表示されず、代わりにその周囲に宝箱があることを通知するとともに宝箱を出現させるための出現ヒントの存在を通知するためのAR表示体、すなわち出現ヒントタグ20が表示される。
【0055】
プレーヤは、ゲーム画面に表示されている出現ヒントタグ20をタッチ操作することにより、そのタグに紐付けされている出現条件をクリアするための挑戦を開始することができる(出現条件の詳細については後述)。
【0056】
見事、出現条件をクリアする事ができたならば、
図5(2)に示すように、出現ヒントタグ20は表示されなくなり、代わって宝箱のAR表示体24が表示される。また、開封条件が設定されている場合には、更に開封条件の存在を通知するためのAR表示体すなわち開封ヒントタグ22が表示される。
【0057】
開封条件が設定されていなければ、宝箱のAR表示体24の出現とともに宝箱の中身として設定されている特典がプレーヤに付与される。しかし、開封条件が設定されていればこれを満たさなければならない。プレーヤは、ゲーム画面に表示されている開封ヒントタグ22をタッチ操作することにより、そのタグに紐付けされている開封条件をクリアするための挑戦を開始することができる(開封条件の詳細については後述)。そして、見事開封条件をクリアできれば、
図5(3)に示すように、宝箱が作動(開封)し、中身として設定されている特典がプレーヤに付与されることとなる。
【0058】
図6〜
図7は、本実施形態における出現条件及び開封条件として設定可能なパラメータの例について説明するための概念図である。
本実施形態では、出現条件及び開封条件のパラメータとして、(1)ゲーム端末1500で測位される位置、(2)ゲーム端末1500で測定される撮影方向、(3)日時、(4)プレーヤやプレーヤキャラクタの個人情報、(5)プレーヤの(すなわちゲーム端末1500の)移動軌跡、(6)3軸ジャイロ1556や3軸加速度センサ1557の測定値から導かれる物理的なゲーム端末1500の位置変化及び/又は姿勢変化であるアクション、(7)パスワード、(8)ライブビューに含まれるべき物体を意味する必須被写体、を含めることができる。
【0059】
例えば、パラメータ「移動軌跡」を条件(移動軌跡条件)とした場合、出現条件への挑戦開始や開封条件への挑戦開始からのGPSログつまり位置情報の時系列情報から、宝箱の設置者が予め設定したキーポイントKP1〜KP6(
図6(5)中の黒丸)の近傍(
図6(5)中の破線範囲)を通過しているかを判定し、通過していれば当該移動軌跡条件を満たすと見なされる。
【0060】
パラメータ「アクション」を条件(アックション条件)とした場合、出現条件や開封条件をクリアするための挑戦開始からの3軸ジャイロ1556や3軸加速度センサ1557の測定値の時系列情報に基づいて、宝箱の設置者が予め設定した同じような時系列情報との類似性を判定し、所定基準を満たして類似していれば当該アクション条件を満たすと見なされる。
【0061】
また、パラメータ「必須被写体」を条件(必須被写体条件)とした場合、ライブビューに映っている物体を物体認識処理にて解析し、宝箱の設置者が設定した必須被写体と認識された場合に、当該必須被写体条件を満たしたと見なされる。
より具体的には、
図7に示すように、宝箱の設置者がライブビュー内に写っている郵便ポストをタッチ操作しながら囲み操作すると、物体認識処理が開始され、輪郭とともに画像特徴部分を抽出・対応づけることで必須被写体26として設定することができる。そして、出現条件や開封条件に挑戦する場合、条件として必須被写体26が設定されているならば、挑戦開始とともにライブビューの物体認識処理が開始され、必須被写体26と見なされる物体が写っているか繰り返し判定処理される。そして、写っていると判定されたタイミングで、当該必須被写体条件を満たしたと見なされる。
尚、一つの必須被写体26について登録される輪郭と画像特徴部分との組は一組に限らず、複数組設定(例えば、対象とする物体の正面と側面、場合によっては上面それぞれ一組ずつを設定)する構成としても良い。或いは、物体認識が立体物としての認識機能を備える場合には、立体物として設定するとしても良い。
【0062】
また、本実施形態では、出現条件と開封条件を設定する際に、それらの条件についてのヒントを用意することができる。
例えば、
図8に示すように、バーチャルキーボードと入力欄とを含むヒント文編集画面W6を表示してプレーヤに入力を促す。当該編集画面で入力されたヒント文は、出現ヒントタグ20や開封ヒントタグ22に対応づけられ、それらのタグに表示されたり、タグを選択することで詳細表示されるようにして利用できる。
【0063】
[宝箱の設置から開封に至るまでの流れの概要]
では次に、宝箱の設置から開封に至るまでの流れについてゲーム画面例とともに説明する。
図9は、本実施形態における宝箱の設置場所の設定操作例を示す概念図であって、宝箱の設置操作画面において、配置位置調整操作を選択した場合に表示される状態に相当する。
【0064】
ゲーム画面W4に示すように、配置位置の調整に際しては、プレーヤに宝箱を出現させたいと思う場所と、その場所を特定するための相対基準として適当なマーカとなる物体とがライブビューに収まるように促す。そして、プレーヤにマーカとして適当な物が写っている部分を囲むようにタッチスライド操作(タッチしたまま指を滑らせて囲みを描く操作)をさせ、更に宝箱を設置させたい場所をタッチ操作させる。
【0065】
図9(1)の例では、破線矢印で囲まれた「投入口の一方が欠損している空き缶用ゴミ箱」がタッチスライド操作で囲まれている。タッチスライド操作で囲みがなされると、必須被写体の設定と同様にして、囲まれた範囲を対象にして画像認識処理が実行され、認識された物体の輪郭と画像特徴部分とが抽出される。抽出された輪郭と画像特徴部分とが宝箱のAR表示体24の出現位置を決定するためのマーカ28として機能する。例えば、宝箱を設置させたい場所をタッチすると、マーカ28に対する相対位置が決定されて、
図9(2)に示すように、宝箱を示すAR表示体24の配置位置が決定される。また、宝箱に開封条件が設定されている場合には、開封ヒントタグ22が併せて設定される。
【0066】
図10は、ゲームプレイ中において、宝箱が設定されている場所にプレーヤが近づいた場合のゲーム画面例を示す図である。ゲームサーバ1100は、ゲーム端末1500の位置が、宝箱が設定されている場所に近づいたと判断すると、当該宝箱の宝箱設置データを当該ゲーム端末へ配信する。
【0067】
この宝箱に出現条件が設定されている場合には、先ず最初に、受信した宝箱設置データに含まれる出現条件の設定データ(出現条件データ)に基づいて、出現ヒントタグ20をライブビューW4に合成表示する。出現ヒントタグ20のデザインは適宜設定可能であるが、例えば「宝が近くにある」といったテキストを含み、プレーヤに宝箱(この段階では隠ぺいされた状態)の存在を通知するとしても良い。更には、出現ヒントの一部をテキスト表示するとしても良い。そして、出現ヒントタグ20へのタッチ操作を検出した場合には、プレーヤは出現条件をクリアするための挑戦を開始する。尚、タッチ操作に伴い、当該タグに対応づけられている出現ヒントの内容を別途ウィンドウで詳細に表示するとしても良い。
【0068】
図11は、出現条件をクリアした場合のゲーム画面例を示す図である。出現条件をクリアすると、出現ヒントタグ20は消え、宝箱のAR表示体24や開封ヒントタグ22が表示される。
そして、開封ヒントタグ22が表示されている場合には、プレーヤは当該タグ又は宝箱のAR表示体24をタッチ操作して開封条件をクリアするための挑戦を開始する。見事、開封条件をクリアしたならば、宝箱の中身として設定されている特典がプレーヤに付与される。それに伴って、宝箱が開いて中身がプレーヤへ与えられる旨の演出表示が行われる。
【0069】
[機能ブロックの説明]
次に、本実施形態を実現するための機能構成について説明する。
図12は、本実施形態におけるゲーム端末1500の機能構成の一例を示す機能ブロック図である。ゲーム端末1500は、操作入力部100と、撮像部104と、撮影方向検出部106と、姿勢検出部108と、加速度検出部110と、処理部200と、音出力部350と、画像表示部360と、通信部370と、測位信号受信部380と、記憶部500とを備える。
【0070】
操作入力部100は、プレーヤによって為された各種の操作入力に応じて操作入力信号を処理部200に出力する。例えば、ボタンスイッチや、ジョイスティック、タッチパッド、トラックボールといった直接プレーヤが指で操作する素子はもちろん、加速度センサや角速度センサ、傾斜センサ、地磁気センサなど、運動や姿勢を検知する素子などによっても実現できる。
図2の方向入力キー1502、ホームキー1504がこれに該当する。3軸ジャイロ1556、3軸加速度センサ1557の検出値を利用する場合には、それらも該当することとなる。また、本実施形態の操作入力部100はタッチ操作入力部102を備え、表示画面へ指などで触れることによる操作入力を可能としている。
図2のタッチパネル1506がこれに該当する。
【0071】
撮像部104は、撮影対象からの光を受光して電気信号に変換し、デジタル画像データを生成し、処理部200へ出力する。例えば、レンズ、メカシャッター、シャッタードライバ、CCDイメージセンサモジュールやCMOSイメージセンサモジュールといった光電変換素子、光電変換素子から電荷量を読み出し画像データを生成するデジタルシグナルプロセッサ(DSP)、ICメモリなどで実現される。
図2のCCDカメラモジュール1516がこれに該当する。
【0072】
撮影方向検出部106は、撮像部104のレンズ光軸方向、即ち撮影方向を示す信号を処理部200へ出力する。
図2の電子コンパス1555や3軸加速度センサ1557、3軸ジャイロ1556がこれに該当する。電子コンパス1555で検出された方位を基準として、姿勢検出部108により検出された姿勢を求めれば撮影方向を検出することができるため、姿勢検出部108と、撮影方向検出部106とを一体として構成してもよいことは勿論である。
【0073】
姿勢検出部108は、ゲーム端末1500の姿勢変化を検出し、検出信号を処理部200へ出力する。
図2の3軸ジャイロ1556や3軸加速度センサ1557がこれに該当する。
【0074】
加速度検出部110は、ゲーム端末1500に作用している加速度を検出することができる。
図2の3軸加速度センサ1557がこれに該当する。
【0075】
処理部200は、例えばCPUやGPU等のマイクロプロセッサや、ASIC、ICメモリなどの電子部品によって実現される。処理部200は、各機能部との間でデータの入出力制御を行い、所定のプログラムやデータ、操作入力部100からの操作入力信号等に基づいて各種の演算処理を実行して、ゲーム端末1500の動作を制御する。
図2では制御基板1550がこれに該当する。
そして、処理部200は、ゲーム端末制御部202と、音生成部250と、画像生成部260と、通信制御部270と、測位制御部280とを備える。
【0076】
ゲーム端末制御部202は、本実施形態のオンライRPGをプレイするためのゲーム端末としての各種制御を実行する。また、システムクロックを用いた制限時間などの計時処理、フラグ管理処理、などを適宜実行することができる。その他、ゲーム進行に必要であればゲームサーバ1100から受信した情報のデコード、テクスチャの展開などを適宜実行することができる。尚、これらの処理は必須とは限らず、ゲームの内容やその実現形態によって適宜追加・省略することができるものであり、公知のオンラインゲームを参考にすると良い。
【0077】
そして、本実施形態のゲーム端末制御部202は、位置情報通知制御部204と、物体認識部206と、AR表示体データ取得制御部208と、受信済AR表示体データ管理部210と、AR表示体表示制御部212と、宝箱仕様設定制御部214と、挑戦制御部216と、開封特典付与制御部220とを含む。
【0078】
位置情報通知制御部204は、測位システムを利用して得られた位置情報を、周期的にゲームサーバ1100へ送信するための制御を行う。
【0079】
物体認識部206は、撮像部104で撮影された画像内に移っている物体を認識することができる。本実施形態では、物体の輪郭とその輪郭内の画像の特徴を抽出することができる。物体認識の方法は、公知技術を利用して実現されるため、詳細な説明は省略する。
【0080】
AR表示体データ取得制御部208は、ゲームサーバ1100からAR表示体データを取得する。例えば、圧縮ファイルで受信する場合には、そのデコードをすることができる。
【0081】
受信済AR表示体データ管理部210は、受信済のAR表示体データを登録・管理する。宝箱に関するAR表示体データ(宝箱設置データ)については、宝箱が隠ぺいされた状態であるか開封された状態であるかを示す情報の管理をする。
【0082】
AR表示体表示制御部212は、撮像部104の撮影範囲に含まれるAR表示体を、撮像部104で撮影された画像に合成するための制御を行う。例えば、AR表示体の大きさ、向き、色、画面座標系位置座標などを算出する。
【0083】
宝箱仕様設定制御部214は、新たに設定する宝箱の仕様を設定するための各種処理を実行する。例えば、(1)外観の設定、(2)ライブビュー中に含まれるべき被写体の画像を設定する必須被写体設定部214a、(3)ライブビュー中に含まれ、宝箱の出現位置の相対基準となるマーカを設定するマーカ設定部214b、(4)移動軌跡条件を設定する移動軌跡設定部214c、(5)ゲーム端末1500の物理的な位置変化及び/又は姿勢変化であるアクションの条件を設定するアクション設定部214d、(6)オブジェクトの作動内容や作動したことによるゲーム進行の変更内容を設定する作動結果設定部214e、(7)出現条件や開封条件といったトリガー条件のヒントを設定するヒント設定部214fを含む。また、(8)新たに設定された宝箱の仕様データをゲームサーバ1100へ送信する処理を行うことができる。
【0084】
挑戦制御部216は、出現条件や開封条件をクリアしている状態を検出し、宝箱毎に出現条件及び開封条件のクリア履歴管理をする。そして、開封条件をクリアした宝箱の宝箱IDをゲームサーバ1100へ送信・通知する制御を行う。
【0085】
開封特典付与制御部220は、開封条件をクリアした宝箱の中身に開封者であるプレーヤへ特典を付与する処理を行う。つまり、宝箱としたオブジェクトの作動内容の実行や、作動したことによるゲーム進行の変更を実行する作動結果制御部とも言える。
【0086】
音生成部250は、例えばデジタルシグナルプロセッサ(DSP)や、音声合成ICなどのプロセッサ、音声ファイル再生可能なオーディオコーデック等によって実現され、ゲーム端末制御部202による処理結果に基づいてゲームに係る効果音やBGM、各種操作音の音信号を生成し、音出力部350に出力する。
【0087】
音出力部350は、音生成部250から入力される音信号に基づいてゲームに関する効果音やBGM、電話通信音声等を音出力する装置によって実現される。
図2ではスピーカ1510がこれに該当する。
【0088】
画像生成部260は、例えば、GPU(Graphics Processing Unit)、デジタルシグナルプロセッサ(DSP)などのプロセッサ、ビデオ信号IC、ビデオコーデックなどのプログラム、フレームバッファ等の描画フレーム用ICメモリ、テクスチャデータの展開用に使用されるICメモリ等によって実現される。画像生成部260は、ゲーム端末制御部202による処理結果に基づいて1フレーム時間(例えば1/60秒)で1枚のゲーム画面を生成し、生成したゲーム画面の画像信号を画像表示部360に出力する。
【0089】
画像表示部360は、画像生成部260から入力される画像信号に基づいて各種ゲーム画像を表示する。例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった画像表示装置によって実現できる。本実施形態では、
図2のタッチパネル1506がこれに該当する。
【0090】
通信制御部270は、データ通信に係るデータ処理を実行し、通信部370を介して外部装置とのデータのやりとりを実現する。
これに関連する通信部370は、通信回線1と接続して通信を実現する。例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現され、
図2の無線通信モジュール1553がこれに該当する。
【0091】
測位制御部280は、測位信号受信部380を介して測位システムから得られた信号から位置情報を算出するための制御、つまり測位計算とその結果の管理を行う。例えば、
図2のGPSモジュール1554がこれに該当する。
これに関連する測位信号受信部380は、GPS等の測位システムから提供される情報、例えばGPS信号を受信することができる。本実施形態では、
図2のGPSアンテナ1514がこれに該当するが、測位計算に携帯電話基地局4の位置情報を利用したり、携帯電話基地局4との間で通信を行う場合には、基地局と無線通信するための無線通信モジュール1553も該当することになる。
【0092】
記憶部500は、処理部200にゲーム端末1500を統合的に制御させるための諸機能を実現するためのプログラムや各種データ等を記憶する。また、処理部200の作業領域として用いられ、処理部200が各種プログラムに従って実行した演算結果や操作入力部100から入力される入力データ等を一時的に記憶する。こうした機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVDなどの光学ディスクなどによって実現される。
図2では制御基板1550が搭載するICメモリ1552やメモリカード1540がこれに該当する。
【0093】
本実施形態の記憶部500は、ゲーム端末1500をシステムプログラム502と、ゲームクライアントプログラム506とを記憶している。
【0094】
システムプログラム502は、ゲーム端末1500のコンピュータとしての基本機能を実現するためのプログラムである。
【0095】
ゲームクライアントプログラム506は、処理部200にゲーム端末制御部202としての機能を実現させせるためのプログラムであって、いわゆるオンラインゲームにおる「クライアントプログラム」に相当する。
尚、本実施形態のオンラインRPGをいわゆる「ブラウザゲーム」「ウェブゲーム」として実現する場合には、ウェブブラウザプログラム及び同プログラム上で動的な表示環境を実現するためのプラグイン(ブラウザゲームプログラムなどとも呼ばれる)とすると良い。本実施形態では、ゲームクライアントプログラム506は、ゲーム開始前にゲームサーバ1100から取得することとするが、メモリカード1540に予め記憶されていて、プレーヤはそれを別途入手するとしても良い。
【0096】
また、記憶部500には、ゲーム開始前にゲームサーバ1100からダウンロードした宝箱外観テンプレートデータ512が記憶される。
また、記憶部500には、ゲーム進行に応じて生成され随時更新されるデータとして、日時514と、測位システムを利用して得られる位置情報515と、撮影方向516と、アカウント情報518と、プレイデータ520とが記憶される。
その他、各種処理を実行するにあたり必要となるデータ(例えば、圧縮解凍されたテクスチャデータ、経過時間、各種タイマー値、カウンタ、フラグ)なども適宜記憶されるものとする。
【0097】
宝箱外観テンプレートデータ512は、宝箱のAR表示体24の外観を設定するモデルと、その色彩パターンの選択肢を格納しており、宝箱の仕様を設定する際に参照される。
【0098】
アカウント情報518は、プレーヤがオンラインRPGのユーザとして登録することで得られるアカウント情報であって、ユーザ名やパスワードを含む。適宜、利用署名データを含めることができる。
【0099】
プレイデータ520は、ゲームプレイの進行状況を表す各種情報を格納する。
例えば、
図13に示すように、プレーヤキャラクタステータスデータ522と、他キャラクタステータスデータ523と、受信済AR表示体データリスト524と、AR表示体表示データ526とが含まれる。
また、プレイデータ520には、宝箱を新たに設置するためにその仕様を設定する際に生成される作業データとして、宝箱仕様データ600と、キーポイント番号531と、キーポイントリスト532と、アクション番号533と、アクション条件リスト534と、ヒント候補リスト535と、自己設置宝箱IDリスト536とが含まれる。
また更に、プレイデータ520には、宝箱の出現や開封に係るデータとして、挑戦履歴データ540と、移動軌跡レコード550と、姿勢変化レコード552と、加速度変化レコード554とが含まれる。
【0100】
プレーヤキャラクタステータスデータ522は、プレーヤキャラクタの種類、HP(ヒットポイント)、攻撃力や防御力等の能力パラメータ値、装備品リスト、所持アイテムリスト、成長レベルなど、プレーヤキャラクタの状態を示す各種データを格納する。プレーヤキャラクタ以外のキャラクタ(例えば、敵キャラクタ等のNPC)の状態を示す各種データは、他キャラクタステータスデータ523に格納される。
【0101】
受信済AR表示体データリスト524は、ゲームサーバ1100から受信したAR表示体データを格納する。ここには、敵キャラクタ14(
図3参照)は勿論、落ちているアイテム、道案内、建造物などゲーム世界固有に登場するAR表示体のAR表示体データは全て格納される。宝箱のAR表示体24に関する情報は、受信済宝箱リスト525として纏めて格納される。
【0102】
受信済宝箱リスト525は、例えば
図14に示すように、受信日時525aと対応づけて、宝箱ID525bと、受信済宝箱設置データ525cと、出現フラグ525dと、開封フラグ525eと、特典付与フラグ525fとを格納する。
【0103】
当該リストに格納される受信済宝箱設置データ525cは、プレーヤが宝箱を設置することにより一旦ゲームサーバ1100に登録・管理され、ゲーム端末1500の位置に応じて選択・配信される宝箱の仕様に関するデータである。元は、何れかのプレーヤのゲーム端末1500にて作成された宝箱仕様データ600である。そのデータの構成については後述する。
【0104】
出現フラグ525dは、当該宝箱のAR表示体24がゲーム上、隠ぺいされた状態にあるか出現状態であるかを示すフラグである。初期状態は隠ぺい状態を示す「0」、出現条件がクリアされると出現状態を示す「1」とされる。
【0105】
開封フラグ525eは、当該宝箱が開封されたか否かを示すフラグである。宝箱オブジェクトが作動状態であるか否かを示すフラグとも言える。初期状態は未開封を示す「0」、開封条件がクリアされると開封済を示す「1」とされる。
【0106】
特典付与フラグ525fは、当該宝箱の中身が開封者に付与済であるかを示すフラグである。初期状態は未付与を示す「0」、中身として設定されていた特典が付与されれば「1」に変更される。つまり、当該フラグは、宝箱としてのオブジェクトの作動済を示すフラグである。
【0107】
AR表示体表示データ526は、ゲーム画面上に表示されるAR表示体の表示制御データを格納する。例えば、宝箱IDと対応づけてAR表示体を表示する座標が格納されている。
【0108】
宝箱仕様データ600は、プレーヤが設置を希望する宝箱の仕様に関する情報、すなわちどこにどのような宝箱を設置するかを定義づける情報を格納する。例えば、
図15に示すように、設置者データ602と、宝箱外観データ604と、中身データ608と、設置場所データ610と、出現条件データ620と、開封条件データ622と、出現ヒントデータ624と、開封ヒントデータ626とを格納する。
【0109】
設置者データ602は、設置者を識別するためのデータであって、本実施形態では設置したプレーヤのユーザ名とパスワードとする。
宝箱外観データ604は、宝箱のAR表示体24のデザインを決定する情報を格納する。本実施形態では、宝箱外観テンプレートデータ512に予め用意されている外観モデル及び色彩パターンの選択肢から選ばれた宝箱外観モデルID605と、色彩パターンデータ606とを格納する。色彩パターンデータ606のデータ形式は適宜設定可能である。いわゆるテクスチャの圧縮データでも良いし、塗り分けする境界を示すスプライン関数と彩色データのセットでも良いし、写真等の画像ファイルでも良い。
【0110】
中身データ608は、宝箱の中身に相当するデータである。別の言い方をすると、宝箱のオブジェクトの作動内容や作動したことによるゲーム進行の変更内容を定義するデータである。具体的には、例えば、プレーヤキャラクタのHPや能力パラメータ値の変更量、付与されるアイテムID、画像ファイル、開封時に表示される演出表示などを適宜設定することができる。本実施形態では、新たな宝箱を設置する際、プレーヤがそう言った設定可能な内容の一覧から何れかを選択すると、選択結果が中身データ608に格納される。
【0111】
設置場所データ610は、宝箱の拡張現実世界における設置位置を特定するための情報を格納する。例えば、測位システムを利用して得られる測位データ、つまりは位置情報611と、CCDカメラモジュール1516で撮影している方向を示す撮影方向612と、マーカとする物体の輪郭や画像特徴の情報を含むマーカデータ613と、マーカを基準位置とした相対的な宝箱の配置位置を示すマーカ基準相対位置614とを含めることができる。
【0112】
出現条件データ620と、開封条件データ622は、それぞれ出現条件、開封条件を定義する情報を格納する。
例えば、
図16に示すように、出現条件データ620は、条件項目620a毎に条件内容620bを対応付けて格納する。条件内容620bの初期状態は「指定無し」を示す情報であり、具体的な条件の詳細が決定されると適宜変更される。
開封条件データ622は、開封条件を定義する情報を格納する点では異なるが、データ構成は同様である。例えば、
図17に示すように、条件項目622a毎に条件内容622bを対応付けて格納する。条件内容622bの初期状態は「指定無し」を示す情報であり、具体的な条件の詳細が決定されると適宜変更される。
【0113】
出現ヒントデータ624及び開封ヒントデータ626は、それぞれ出現ヒント、開封ヒントを提示する為のデータを格納する。本実施形態では、ヒント文のテキストデータを格納することとするが、画像データや音声データなどでも良い。
【0114】
図13に戻って、プレイデータ520に格納されるキーポイント番号531及びキーポイントリスト532は、出現条件や開封条件の項目として移動軌跡条件を設定する際に使用する作業用のデータである。前者は、移動軌跡の要所に設定されるキーポイント(位置)の順番を示すカウンタであり、後者は、設定時キーポイント番号532aとキーポイントの位置情報532bとを対応付けて格納する。つまり、キーポイントリスト532は、GPSログやGPSトラッキングデータに相当する。
【0115】
アクション番号533及びアクション条件リスト534は、出現条件や開封条件の項目としてアクション条件を設定する際に使用する作業用のデータである。前者は、一連のアクションとしてのモーショントラッキング(アクションのパターンの基準となる姿勢変化や加速度変化の時系列データ)の記録が終了するとカウントアップされるカウンタである。後者は、設定時アクション番号534aとモーショントラッキングデータ534bとを対応付けて格納する。
【0116】
ヒント候補リスト535は、例えば
図18に示すように、出現条件や開封条件を設定する際、特に移動条件やアクション条件、必須被写体を設定する各タイミングで備忘録的に作成したヒント文を格納する。出現ヒントデータ624及び開封ヒントデータ626に格納されるヒント文は、当該リストに格納されているヒント文の中からプレーヤが選択することで決定される。
【0117】
自己設置宝箱IDリスト536は、プレーヤ自身が設置した宝箱に付与された識別情報を格納する。
【0118】
挑戦履歴データ540は、出現条件や開封条件をクリアするためにプレーヤが行った挑戦の履歴を格納する。例えば、
図19に示すように、クリアフラグセット542を格納することができる。
一つのクリアフラグセット542は、どの宝箱に関する挑戦であるかを識別するための宝箱ID543と、出現条件をクリアするための挑戦であるか開封条件をクリアするための挑戦であるかを示すタグ種類544と、条件項目545毎の条件クリアフラグ546とを格納する。
【0119】
条件クリアフラグ546は、該当する項目の条件の設定がある場合には、初期状態として未クリアを示す「0」が格納される。そして、対応する条件をクリアすればクリア済を示す「1」に変更される。尚、該当する項目についてそもそも条件設定がなされていない場合には初期状態から「1」とされる。
クリアフラグセット542が宝箱毎に登録されることにより、宝箱ID543に基づいてセットを読み出すことで、プレーヤの都合により途中まで条件クリアを挑戦していたが一旦中断し、また別の機会に挑戦を再開するといったことが可能になる。
【0120】
移動軌跡レコード550は、出現条件や開封条件の移動軌跡条件をクリアする際に使用する作業データである。測位システムを利用して得られる位置情報の時系列データである。所謂「GPSログ」「GPSトラッキング」「移動ログ」に相当する。
【0121】
姿勢変化レコード552及び加速度変化レコード554は、出現条件や開封条件のアクション条件をクリアする際に使用する作業データである。それぞれ、姿勢検出部342及び加速度検出部344による検出値の時系列データである。所謂「モーショントラッキング」「モーションログ」に相当する。
【0122】
次に、ゲームサーバ1100の機能構成について説明する。
図20は、本実施形態におけるゲームサーバ1100の機能構成例を示す機能ブロック図である。本実施形態のゲームサーバ1100は、操作入力部100sと、サーバ処理部200sと、画像表示部360sと、通信部370sと、サーバ記憶部500sとを備える。
【0123】
操作入力部100sは、ゲームサーバの管理のための各種操作入力を受け付け、操作入力信号をサーバ処理部200sへ出力する。キーボードや、タッチパネル、マウスなどの入力デバイスにより実現される。
図1のキーボード1106やタッチパネル1108がこれに該当する。
【0124】
サーバ処理部200sは、例えばCPUやGPU等のマイクロプロセッサや、ASIC、ICメモリなどの電子部品によって実現され、所定のプログラムやデータ、操作入力部100からの操作入力信号等に基づいて各種の演算処理を実行して、ゲームサーバ1100の動作を制御する。そして、サーバ処理部200sは、ゲームサーバ制御部201と、画像生成部260sと、通信制御部270sとを備える。
【0125】
ゲームサーバ制御部201は、拡張現実技術を利用したマルチプレーヤ型のオンラインゲームのサーバとしての機能を実現する。
具体的には、ゲームサーバ制御部201は、プレーヤ登録制御部230と、ゲーム参加管理部231と、端末位置管理部232と、AR表示体データ配信制御部234と、宝箱管理制御部235と、設置者褒賞付与制御部236とを含む。
【0126】
プレーヤ登録制御部230は、プレーヤ登録(ユーザ登録に同義)とプレーヤキャラクタの設定に関する処理を実行する。新たに登録されたプレーヤの個人情報や、プレーヤキャラクタの設定情報を含む所謂セーブデータは、サーバ記憶部500sにプレーヤ登録データ562として記憶・管理される。
【0127】
ゲーム参加管理部231は、ゲームに参加する為に必要な手続き、所謂ログイン/ログアウトの手続き処理を行う。
【0128】
端末位置管理部232は、ゲームに参加するゲーム端末1500から周期的に位置情報を取得して、各端末の位置を把握・管理する。関連するデータは、サーバ記憶部500sの端末位置管理データ564に格納される。
【0129】
AR表示体データ配信制御部234は、ゲームに登場するAR表示体を各ゲーム端末の位置に応じて選択して配信する制御を行う。
本実施形態のゲームはRPGなので、敵キャラクタ14のAR表示体データを配信制御する敵キャラクタ配信制御部234aと、敵キャラクタ14がドロップしたりゲームフィールド上に落ちているアイテムを表わすAR表示体データを配信制御するアイテム配信制御部234bと、宝箱とその出現ヒントタグ及び開封ヒントタグのAR表示体データを配信する宝箱配信制御部234cとを含む。
拡張現実空間の何処にどの敵キャラクタやアイテム、宝箱が存在するかの情報は、サーバ記憶部500sの敵キャラクタ配置データ560、アイテム配置データ561、宝箱管理データ565に格納されている。
【0130】
宝箱管理制御部235は、宝箱の設置及び管理を行う。具体的には、ゲーム端末1500から新たな宝箱の仕様を定義するデータとともに設置リクエスト(設置要求)の信号を受信すると、サーバ記憶部500sの宝箱管理データ565に新規登録する。また、ゲーム端末1500から開封通知を受信すると、宝箱管理データ565に開封された宝箱の開封履歴を記憶する。そして、所定の登録抹消条件を満たす宝箱を抽出して、登録データを抹消することで配置のデータを抹消する。
【0131】
設置者褒賞付与制御部236は、開封された宝箱の設置者へ褒賞を付与する処理を行う。褒賞内容の決定方法は、例えば、予め用意されている選択肢の中から抽選して決定したり、開封履歴の回数に応じて決定する方法がある。また、褒賞内容は、ゲーム内で利用できるアイテムとしたり、仮想マネーなどの所持金の増額など、適宜選択可能である。
【0132】
画像生成部260sは、サーバ管理のための各種情報を画像表示部360sに表示させるための画像生成を行う。尚、画像生成部260sは、ゲーム端末1500の画像生成部260と同様に実現できる。
また、画像表示部360sは、ゲーム端末1500の画像表示部360sと同様に実現可能であり、
図1のタッチパネル1108がこれに該当する。
【0133】
通信制御部270s及び通信部270sは、ゲーム端末1500の通信制御部270及び通信部270と同様に実現され、通信回線1を介したデータ通信を実現する。
【0134】
サーバ記憶部500sは、サーバ処理部200sに諸機能を実現させるためのプログラムやゲームを記憶する。また、サーバ処理部200sの作業領域として用いられ、各種プログラムに従って実行した演算結果、ゲーム端末から受信した情報等を一時的に記憶することができる。こうした機能は、例えばRAMやROMなどのICメモリ、ハードディスク等の磁気ディスク、CD−ROMやDVDなどの光学ディスクなどによって実現される。
図1のストレージ1140もこれに該当する。
【0135】
そして、本実施形態のサーバ記憶部500sは、サーバシステムプログラム503と、ゲームサーバプログラム505と、ゲームクライアントプログラム506と、敵キャラクタ配置データ560と、アイテム配置データ561と、を予め記憶している。また、適宜生成・更新されるデータとして、プレーヤ登録データ562と、ログイン端末IDリスト563と、端末位置管理データ564と、宝箱管理データ565とを記憶する。その他ゲームの管理等に必要な、制限時間のカウント値、各種フラグ、などを適宜記憶する。
【0136】
サーバシステムプログラム503は、コンピュータにサーバとしての基本的な機能を実現させるためのプログラムである。
ゲームサーバプログラム505は、サーバ処理部200sにゲームサーバ制御部201としての機能を実現させるためのプログラムである。
ゲームクライアントプログラム506は、ゲーム参加を希望するゲーム端末1500に提供するクライアントプログラムの原本である。ゲーム端末1500の記憶部500のゲームクライアントプログラム506(
図12参照)は、これをダウンロードして記憶されたものである。ゲームクライアントプログラム506は、専用のプログラムや、ウェブブラウザプログラム上で動的な表示を実現するためのプラグインなどにより実現される。
【0137】
敵キャラクタ配置データ560は、拡張現実空間であるゲームフィールド上のどこにどの種類の敵キャラクタが配置されているかを設定するデータであり、各敵キャラクタ14(
図3参照)のAR表示体データを含む。アイテムに関する同様のデータが、アイテム配置データ561に格納されている。
【0138】
プレーヤ登録データ562は、プレーヤ毎に用意され、アカウント情報やセーブデータ、プレーヤの個人情報を格納する。
【0139】
ログイン端末IDリスト563は、オンラインゲームに参加中のゲーム端末1500の識別情報(例えば、MACアドレスなど)、データ通信に必要な情報(例えば、IPアドレスなど)を格納する。
【0140】
端末位置管理データ564は、ゲーム端末1500毎の位置情報を格納する。例えば、所定容量分だけ或いは所定日時分だけ位置情報の履歴を格納するとしても良い。
【0141】
宝箱管理データ565は、拡張現実空間であるゲームフィールド上に設置された宝箱に係る情報を格納する。例えば、
図21に示すように、宝箱ID566と対応づけて、宝箱設置データ567と、設置日時568と、開封履歴569とを格納する。
宝箱ID566は、ゲーム端末1500から設置リクエストを受信した順番にユニークに設定される識別情報である。
設置リクエストとともにゲーム端末1500から受信した宝箱仕様データ600が、宝箱設置データ567として格納される。
開封履歴569は、ゲーム端末1500から開封通知を受信した日時を登録している。
【0142】
[処理の流れの説明]
次に、
図22〜
図42を参照しながら、本実施形態における各種処理の流れについて説明する。
【0143】
図22に示すように、ゲーム端末1500の処理部200は、先ずゲームサーバ1100にアクセスし(ステップS2)、プレーヤ登録処理と(ステップS4)、プレーヤキャラクタの設定処理を実行する(ステップS6)。尚、2回目以降のプレイでは、プレーヤ登録とキャラクタ設置は不要なので、適宜スキップするとしても良い。
【0144】
次に、処理部200はゲーム参加処理、いわゆるログインを行い(ステップS8)、ゲームクライアントプログラム506のダウンロードと実行、並びにプレーヤ登録データ562のセーブデータ562bのダウンロードを行う(ステップS10;
図20参照)。セーブデータ562bは、初回プレイの場合には先に設定したプレーヤキャラクタの初期状態が格納されることになる。
【0145】
次に、処理部200は、GPSを利用した測位を開始し、定期的に現在位置情報の取得を開始するとともに、定期的な撮影方向の算出を開始する(ステップS12)。そして、最新の位置情報及び撮影方向をゲームサーバ1100へ周期的に送信する処理を開始する(ステップS14)。
また、処理部200は、ゲームサーバ1100から配信されるAR表示体データの受信と受信したデータの管理とを開始する(ステップS16)。受信したAR表示体データは、プレイデータ520内に受信済AR表示体データリスト524に格納される。そして、処理部200は、受信済AR表示体データリスト524に登録されているAR表示体の中から、現在の撮影範囲に含まれるAR表示体の抽出処理を開始する(ステップS18)。
【0146】
ゲームサーバ1100は、ゲーム端末1500から現在の位置情報と撮影方向情報を取得すると、予め登録されているAR表示体のうち、当該ゲーム端末の周囲に配置されているAR表示体を抽出し、抽出したAR表示体の情報、即ちAR表示体データを当該ゲーム端末へ送信する処理を実行することができる。
ゲーム端末1500の処理部200は、AR表示体データの受信管理を開始しているので、AR表示体データを受信すると、随時、受信済AR表示体データリスト524への登録を行う。そして、撮影範囲に写るであろうAR表示体を随時抽出することができるようになる。
【0147】
次に、ゲーム端末1500の処理部200は、ゲームを開始して(ステップS30)、タッチパネル1506にゲーム画面の表示を開始する(ステップS32)。本実施形態におけるビデオゲームは、拡張現実を利用したRPGであるから、CCDカメラモジュール1516により撮影されたライブビューに、ステップS18で抽出されたAR表示体等を合成したゲーム画面が表示されることとなる。例えば、敵キャラクタ14も、現実世界の映像上に表示される。
【0148】
処理部200は、プレーヤによる敵キャラクタ14へのタッチ操作を検出すると(ステップS34のYES)、タッチ操作された敵キャラクタ14とプレーヤキャラクタとの戦闘イベント処理を実行する(ステップS36)。
【0149】
もし、所定の宝箱設置操作を検出したならば(ステップS38のYES)、処理部200は宝箱設置処理を実行する(ステップS40)。
【0150】
図24は、本実施形態における宝箱設置処理の流れを説明するためのフローチャートである。具体的には、先ず、処理部200は宝箱設置操作画面を表示する(ステップS60)。
【0151】
宝箱設置操作画面には、表示画面に項目別の設定操作をするためのアイコンが複数レイアウトされている。ちなみに、
図7の例では、画面左端に複数の設定操作アイコン27が配置されている。
図7の上から順に、(1)宝箱の拡張現実表示体としての外観を設定するための「外観」の設定、(2)宝箱の拡張現実表示体が隠ぺい状態から表示状態になるために満たすべき条件を設定する「出現条件」の設定、(3)宝箱を開封するための満たすべき条件を設定する「開封条件」の設定、(4)宝箱の中身を指定する「中身」の設定、(5)宝箱の設置場所を設定する「設置場所」の設定、(6)ヒントの設定、にそれぞれ対応している。そして、
図7においては「出現条件」の設定操作を呼び出すアイコンが選択されていることを左向きの矢印アイコンで示している。
【0152】
もし、宝箱設置操作画面が表示された状態において、宝箱の外観設定操作を検出したならば(ステップS62のYES)、処理部200は、宝箱外観テンプレート512を参照して、予め用意されているベースとなる宝箱の複数のモデルを選択可能に一覧表示し、更にその色彩設定のパターンを選択可能に一覧表示し、モデルと色彩設定パターンとをプレーヤに選択させ、新たに設定する宝箱の宝箱仕様データ600の宝箱外観データ604に設定する(ステップS64)。
具体的には、選択されたモデルの識別情報は宝箱外観モデルID605として格納され、選択された色彩パターンの識別情報が色彩パターンデータ606として記憶される(
図15参照)。尚、色彩設定パターンについては、ゲーム端末1500に記憶されている画像データを指定操作することで、宝箱の外観に貼り付け可能な構成とすると好適である。その場合、色彩パターンデータ606には、貼り付ける画像のデータが格納する。
【0153】
もし、宝箱設置操作画面が表示された状態において、宝箱の中身選択操作を検出したならば(ステップS66のYES)、処理部200は、中身として設定可能な選択肢の一覧を表示してプレーヤに選択させ、選択された中身の識別情報を宝箱仕様データ600の中身データ608に格納し設定する(ステップS68)。
【0154】
尚、中身はゲーム内容に応じて適宜設定可能である。本実施形態では、RPGであるから、宝箱としているオブジェクトの作動内容として、爆発(この場合、特典無しに相当)、足が生えて逃げる、プレーヤキャラクタへ攻撃する(戦闘イベント発生に相当)、などを設定してもよい。また、宝箱としているオブジェクトが作動した(開封された)ことによるゲーム進行に反映される内容として、プレーヤキャラクタのHP(ヒットポイント)の加算や減算、アイテム、新しいゲームステージがプレイ可能になるパスワード、などを選択可能に設定することができる。
その他、自由文を入力可能にしてメッセージを中身としても良い。或いは、ゲーム端末1500に記憶されている画像データを指定操作することでプレーヤが所有しているデータを中身として設定することもできる。
【0155】
また、もし宝箱設置操作画面が表示された状態において、宝箱の出現条件の設定操作を検出したならば(ステップS70のYES)、処理部200は出現条件の詳細を設定するための出現条件設定画面を表示させて(ステップS72)、出現条件設置処理を実行する(ステップS74)。
【0156】
尚、出現条件設定画面は、例えば
図7に示すように構成できる。具体的には画面右端に条件項目を選択するための条件項目アイコン25が表示される。
図7の例では、上から順に、(1)位置、(2)撮影方向、(3)日時、(4)移動軌跡、(5)アクション、に対応している。その他、図示されていないが所定のスクロール操作をすることで、その他の条件項目を設定するための条件項目アイコン25を表示させることができる構成である。
【0157】
図25は、出現条件設置処理の流れを説明するためのフローチャートである。同処理において、処理部200は先ず宝箱仕様データ600の出現条件データ620を初期化する(ステップS100;
図15参照)。すなわち、出現条件として設定可能なパラメータを全て「指定無し」つまりは出現条件の設定が無い状態に初期化する。
【0158】
出現条件設定画面が表示されている状態において、位置条件の設定操作を検出したならば(ステップS102のYES)、処理部200は、位置条件を「現在位置」に設定する(ステップS104)。すなわち、最新の位置情報515を出現条件データ620の位置条件の条件内容620bに格納する(
図16参照)。
【0159】
もし、出現条件設定画面が表示されている状態において、撮影方向条件の設定操作を検出したならば(ステップS106のYES)、処理部200は撮影方向条件の条件内容620bに、最新(現在)の撮影方向516を格納する(ステップS108)。
【0160】
また、出現条件設定画面が表示されている状態において、日時条件の設定操作を検出したならば(ステップS110のYES)、処理部200は、日時条件の選択肢を選ぶための選択欄を表示し(ステップS112)、選択操作に応じて日時条件を設定する(ステップS114)。日時条件の選択肢としては、例えば、時間帯(早朝、午前中、夕方以降など)、曜日、月などを用意すると好適である。そして、ヒント文作成処理を実行する(ステップS116)。
【0161】
図26は、ヒント文作成処理の流れを説明するためのフローチャートである。同処理では先ず、処理部200はヒント文の作成をするか否かの選択ボタンを画面表示するなどしてプレーヤに選択を促す(ステップS130)。
【0162】
もし、選択結果が「要」であれば(ステップS132の要)、処理部200は、例えばタッチ操作によりテキスト入力可能なソフトウェアキーボード等を含むヒント文編集画面W6を表示する(ステップS134;
図8参照)。そして、当該画面における入力・編集操作に応じてヒント文を作成し(ステップS136)、ヒント候補リスト535に格納し(ステップS138)、ヒント文作成処理を終了する。
尚、ヒント文の例としては、例えば日時条件を「夕方」に設定したならば、「鴉の帰宅とともに現れる」などとしても良い。この段階で、ヒント候補リスト535に格納されているヒント文は、後のヒント文の選択処理を経るまで、正式なヒントとして採用されたことにはなっていない。この段階のヒント候補リスト535は、設置者の備忘録としての意味合いを有する。
【0163】
図25のフローチャートに戻って、出現条件設定画面が表示されている状態において、移動軌跡条件の設定操作を検出したならば(ステップS160のYES)、処理部200は移動軌跡条件設定処理を実行する(ステップS162)。
【0164】
図27は、本実施形態における移動軌跡条件設定処理の流れを説明するためのフローチャートである。同処理では先ず、処理部200はキーポイント番号531を初期化し、キーポイントリスト532をクリアする(ステップS180;
図13参照)。
次いで、今から移動軌跡条件を設定するための移動軌跡、すなわち移動経路の記録を開始する旨の通知を実行する(ステップS182)。この際、本実施形態ではプレーヤに移動軌跡条件としたい経路を実際に辿りつつ要所で(例えば、ランドマークの側や、方向を変える場所など)で所定のキーポイント設定操作をするように促す表示を行う。
【0165】
そして、キーポイント設定操作を検出したならば(ステップS184のYES)、処理部200は現在位置を現在のキーポイント番号531と対応づけてキーポイントリスト532に登録し(ステップS186)、キーポイント番号531を「1」アップする(ステップS188)。処理部200は、所定の移動軌跡条件の設定終了操作を検出するまでこれを繰り返す(ステップS190のNO)。つまり、GPSログやGPSトラッキングデータを生成する。
【0166】
そして、設定終了操作を検出したならば(ステップS190のYES)、宝箱仕様データ600に含まれる出現条件データ620の移動軌跡条件の条件項目620aの条件内容620bにキーポイントリスト532を格納する(ステップS192)。
次いで、ヒント文作成処理を実行して(ステップS194)、移動軌跡条件設定処理を終了する。
【0167】
図25のフローチャートに戻って、出現条件設定画面が表示されている状態において、アクション条件の設定操作を検出したならば(ステップS210のYES)、処理部200はアクション条件設定処理を実行する(ステップS212)。
【0168】
図28は、アクション条件設定処理の流れを説明するためのフローチャートである。同処理において、処理部200は先ず、設定作業用パラメータであるアクション番号533を「0」に初期化し(ステップS230)、次いでプレーヤヘ向けてアクション条件の設定開始を通知する(ステップS232;
図13参照)。具体的には、これからプレーヤがアクション条件として設定を希望するアクション(ゲーム端末1500の動きをともなう動作)を実際にするように促すとともに、アクション実行開始前に所定の登録開始操作をするように促す表示をする。尚、設定したいアクションの終わりには静止するように促す表示も行うとする。
【0169】
そして、所定の登録開始操作を検出したならば(ステップS234のYES)、処理部200は3軸ジャイロ1556や3軸加速度センサ1557などの測定値から静止状態が検知されるまでの間、姿勢変化や加速度変化を記録する。即ちモーショントラッキングデータを生成する(ステップS236)。そして、記録したレコード(モーショントラッキングデータ)を、現在のアクション番号533と対応づけてアクション条件リスト534に保存し(ステップS238;
図13参照)、アクション番号533を「1」アップする(ステップS240)。こうした処理は、所定のアクション条件の設定終了操作を検出するまで続けられる(ステップS242のNO)。つまり、プレーヤの希望する数だけ様々なアクションのデータを蓄積することができる。
【0170】
そして、所定のアクション条件の設定終了操作を検出したならば(ステップS242のYES)、処理部200はアクション条件の条件内容620bにアクション条件リスト534を格納し(ステップS244)、ヒント文作成処理を実行して(ステップS246)、アクション条件設定処理を終了する。
【0171】
尚、アクション条件設定では、プレーヤが実際にアクションした結果得られる姿勢変化や加速度変化を含むモーショントラッキングデータを生成するとしたが、実際にアクションをせずに、予め用意されているアクションのパターン(例えば、1Hz以上の上下動+横移動つまりは波運動)をプレーヤに選択させる構成としても良いのは勿論である。
【0172】
図25のフローチャートに戻って、出現条件設定画面が表示されている状態において、必須被写体設定操作を検出したならば(ステップS260のYES)、処理部200は必須被写体条件設定処理を実行する(ステップS262)。
【0173】
図29は、必須被写体条件設定処理の流れを説明するためのフローチャートである。同処理において、処理部200は先ず、プレーヤが望む必須被写体としたい物を撮影するように促すとともに、(ステップS280)ライブビューの中から必須被写体としたい物が写っている部分を囲むようにタッチスライド操作(指を画面にタッチさせたまま囲み線を描くようにしてスライドさせる一連の操作)するように促す(ステップS286)。
【0174】
処理部200は、タッチスライド操作に基づいて必須被写体とする物の物体認識処理を実行する(ステップS288)。この時、物体認識により認識された物の輪郭を画面に表示すると好適である。
そして、今認識されている物で良いかの承認又はリトライの選択入力をプレーヤに促す(ステップS290)。もし、承認操作が検出されず(ステップS292のNO)、リトライ操作が検出された場合には(ステップS294のYES)、ステップS280に戻って撮影からやり直す。
【0175】
もし、承認操作を検出したならば(ステップS292のYES)、処理部200は現在、物体認識されている物の画像特徴部分を抽出処理し(ステップS296)、必須被写体の条件内容620bに、抽出した必須被写体の輪郭や画像特徴に関する情報を格納する(ステップS298)。そして、ヒント文作成処理を実行して(ステップS300)、必須被写体条件設定処理を終了する。
【0176】
図25のフローチャートに戻って、出現条件設定画面が表示されている状態において、パスワードの設定操作を検出したならば(ステップS320のYES)、処理部200はパスワード入力画面を表示するなどのパスワード入力処理を実行して(ステップS322)、入力されたパスワードを、パスワードの条件項目620aに対応する条件内容620bに設定する(ステップS324)。
【0177】
処理部200は、所定の設定終了操作を検出するまでステップS102〜S324を繰り返す(ステップS326のNO)。設定終了操作を検出したならば(ステップS326のYES)、出現条件設定処理を終了する。
【0178】
図24のフローチャートに戻って、宝箱設置画面が表示されている状態において、宝箱を開ける鍵に相当する開封条件の設定操作を検出したならば(ステップS348のYES)、処理部200は開封条件設定画面を表示させ(ステップS350)、開封条件設定処理を実行する(ステップS352)。尚、開封条件設定画面は、出現条件設定画面と同様に実現できる(
図7参照)。但し、必須被写体の設定に関しては、マーカの設定に置き換えるものとする。
【0179】
図30は、開封条件設定処理の流れを説明するためのフローチャートである。同処理は基本的には、出現条件設定処理(
図25)と同様の流れを有する。但し、設定される内容は宝箱仕様データ600の開封条件データ622として格納される。従って、同処理では先ず処理部200は開封条件データ622を初期化する(ステップS360)。
続くステップS362〜S396は、出現条件設定処理におけるステップS102〜S326と同様であるので説明を省略する。
【0180】
図24のフローチャートに戻って、宝箱設置画面が表示されている状態において、宝箱の設置場所の設定操作を検出したならば(ステップS410のYES)、処理部200は設置場所設定処理を実行する(ステップS412)。
【0181】
図31は、設置場所設定処理の流れを説明するためのフローチャートである。同処理において、処理部200は先ず、プレーヤに標準的な設置か、詳細な場所を指定しての設置かの設置方法の選択を促す(ステップS430)。前者は、GPS等、利用する測位システムの測定誤差を許容した範囲で設置位置を設定する。後者は、ライブビュー内に写る現場の物をマーカとして設定し、マーカを基準にした相対位置として設置場所を設定する仕様である。測位システムによっては、測定誤差レベルよりも高精度な位置決めが可能となる設置方法である。
【0182】
設置方法の選択において「標準」が選択された場合には(ステップS432の標準)、処理部200は最新の位置を測位し、撮影方向を算出する(ステップS434)。
そして、それらのデータを、宝箱仕様データ600の設置場所データ610の位置情報611及び撮影方向612に格納し(ステップS436;
図15参照)、設置場所設定処理を終了する。
【0183】
一方、設置方法の選択において「詳細」が選択された場合には(ステップS432の詳細)、処理部200はマーカとしたい物と、宝箱の設置場所とを共に撮影範囲に収めて撮影するように促すとともに(ステップS438)、マーカとしたい物が写っている場所を囲むタッチスライド操作を促す(ステップS444)。
【0184】
次いで、処理部200はタッチスライド操作された範囲に写っている物の物体認識処理を実行し、その輪郭を抽出し(ステップS446)、更にその輪郭内の画像から画像特徴部分を抽出する(ステップS448)。そして、それらのデータを設置場所データ610のマーカデータ613に格納する(ステップS450)。
【0185】
次に、処理部200は、プレーヤへ希望する宝箱の設置場所をタッチ操作するように促す(ステップS452)。そして、タッチ操作された位置に基づいて先に物体認識して設定したマーカに対する宝箱の設置場所の相対位置を算出し、設置場所データ610のマーカ基準相対位置614として格納して(ステップS454)、設置場所設定処理を終了する。
【0186】
図24のフローチャートに戻って、宝箱設置画面が表示されている状態において、ヒント設定操作を検出したならば(ステップS470のYES)、処理部200はヒント設定処理を実行する(ステップS472)。
【0187】
図32は、ヒント設定処理の流れを説明するためのフローチャートである。同処理において、処理部200は先ず、宝箱仕様データ600を参照し、出現条件が設定されているかを判定する(ステップS490)。出現条件データ620の設定が初期状態すなわち全ての条件項目が「指定無し」である場合には、出現条件設定無しを判断する。
【0188】
もし、何れかの条件項目が指定無し以外の設定になっている場合には、処理部200は出現条件の設定有りと判定し(ステップS490のYES)、ヒント候補リスト535を参照して、当該リストに登録されているヒント文を選択可能にして一覧表示させ、プレーヤに選択を促す(ステップS494)。ヒント候補リスト535には、出現条件や開封条件を設定する際に思いついたヒントの内容が蓄積されている。プレーヤは、その中からどのヒントを実際に利用するかをここで選択することができる。
【0189】
処理部200は、選択されたヒント文を原文として文の編集が可能な編集画面を表示し(ステップS496)、編集操作に応じてヒント文を編集する(ステップS498)。そして、所定の編集完了操作を検出したならば(ステップS500のYES)、編集が完了したヒント文を出現ヒントデータ624に格納・設定する(ステップS508)。
【0190】
次に、処理部200は、宝箱仕様データ600を参照して開封条件が設定されているかを判定する。もし、開封条件が設定されているならば(ステップS510のYES)、処理部200は、ヒント候補リスト535を参照し、当該リストに登録されているヒント文を選択可能にして一覧表示させ、プレーヤに選択を促す(ステップS514)。
【0191】
次いで、処理部200は、選択されたヒント文を原文として文の編集が可能な編集画面を表示し(ステップS516)、編集操作に応じてヒント文を編集する(ステップS518)。そして、所定の編集完了操作を検出したならば(ステップS520のYES)、編集が完了したヒント文を開封ヒントデータ626に格納・設定し(ステップS522)、ヒント設定処理を終了する。
【0192】
図24のフローチャートに戻って、宝箱設置画面が表示されている状態において、設置実行操作を検出したならば(ステップS540のNO→S542のYES)、処理部200はゲームサーバ1100へ宝箱仕様データ600とともに設置リクエスト(設置要求信号)を送信する(ステップS544)。
【0193】
図33は、ゲーム端末1500から宝箱設定データともに設置リクエストを受信した場合に、ゲームサーバ1100が実行する宝箱設置管理処理の流れを説明するためのフローチャートである。
【0194】
ゲームサーバ1100のサーバ処理部200sは、ゲーム端末1500から新たな設置リクエストを受信したならば(ステップT20のYES)、新たに宝箱IDを付与し(ステップT22)、これを設置リクエストしたゲーム端末1500へ返信する(ステップT24)。そして、設置リクエストとともに受信した宝箱仕様データ600を、新たな宝箱IDを対応づけ、宝箱設置データ567として宝箱管理データ565に新規登録する(ステップT26;
図21参照)。宝箱設置データ567のデータ構造は、当然、元の宝箱仕様データ30と同じである。
【0195】
ゲームサーバ1100は、ゲーム参加中のゲーム端末1500の現在位置に応じたAR表示体データを配信することができる。宝箱についてはこの宝箱管理データ565の宝箱設置データ567内の設置場所データ610の位置情報611が参照される。ゲーム端末1500から随時送信される位置情報(
図22のステップS14)と、当該位置情報611との差(距離)が所定範囲内である場合、その宝箱設置データ567が宝箱ID566とともにゲーム端末1500へ配信されることとなる(
図5参照)。
【0196】
図24のフローチャートに戻って、ゲーム端末1500の処理部200は、ゲームサーバ1100が返信してきた宝箱IDを受信し(ステップS546)、自己設置宝箱IDリスト536に登録し(ステップS548)、宝箱設置処理を終了する。
もし、設置中止操作を検出した場合には(ステップS540のYES)、現在作業中の宝箱仕様データ600を破棄して(ステップS550)、宝箱設置処理を終了する。
【0197】
宝箱設置処理を終了したならば、
図23のフローチャートに処理を移行する。ゲームサーバ1100からゲーム端末1500の現在の位置に応じて新たに宝箱に関するAR表示体データ、すなわち宝箱設置データ567を受信したならば(ステップS570のYES)、ゲーム端末1500の処理部200はこれをプレイデータ520内の受信済AR表示体データリスト524の受信済宝箱リスト525に登録する(ステップS572;
図14参照)。
【0198】
この際、処理部200は、受信した宝箱ID566と宝箱設置データ567(
図21参照)を、それぞれ宝箱ID525b、受信済宝箱設置データ525c(
図14参照)として格納する。なお、宝箱設置データ567及び受信済宝箱設置データ525cは、宝箱仕様データ600(
図15参照)と同じデータ構造をしている。受信した宝箱設置データ567の出現条件データ620を参照し、出現条件が有れば出現フラグ525dを「0」に、無ければ「1」に設定する(
図14参照)。また、開封条件データ622を参照し、開封条件が有れば開封フラグ525eを「0」に、無ければ「1」に設定することとする。
【0199】
次に、処理部200は宝箱関連AR表示体制御処理を実行する(ステップS576)。
図34は、宝箱関連AR表示体制御処理の流れを説明するためのフローチャートである。同処理において、処理部200は先ず、受信済宝箱リスト525から、ライブビューの撮影範囲内に含まれる宝箱を抽出し(ステップS588)、抽出された宝箱それぞれについてループAを実行する(ステップS590〜S624)。
【0200】
ループAでは、処理対象とする宝箱の受信済宝箱設置データ525cを受信済宝箱リスト525から参照して、出現条件が設定されているかを判定する。
【0201】
もし、設定されていれば(ステップS592のYES)、処理部200は当該宝箱の受信済宝箱リスト525における出現フラグ525dを参照し、同フラグが「0」であれば(ステップS594の「0」)、ビデオシースルー方式によるライブビューへの出現ヒントタグ20の合成表示を開始する(ステップS596)。
この出現ヒントタグ20には、例えばループAの処理対象とされる宝箱の受信済宝箱設置データ525cの出現ヒントデータ624に設定されているヒント文が描かれたオブジェクトとして合成表示される(
図10参照)。出現ヒントタグ20の表示に係るデータは、プレイデータ520のAR表示体表示データ526に格納される。
【0202】
もし、出現フラグ525dが「1」であれば(ステップS594の「1」)、処理対象としている宝箱に対応づけられる出現ヒントタグ20を非表示とする(ステップS598)。
【0203】
次いで、処理部200は開封条件データ622を参照して、開封条件が設定されているかを判定する。もし、設定されていれば(ステップS600のYES)、更に処理対象としている宝箱に対応づけられる出現フラグ525dを参照して、もし同フラグが「1」であれば(ステップS602のYES)、ビデオシースルー方式によるライブビューへの開封ヒントタグ22の合成表示を開始する(ステップS604)。
この開封ヒントタグ22には、例えばループAの処理対象とされる宝箱の受信済宝箱設置データ525cの開封ヒントデータ626に設定されているヒント文が合成表示される(
図11参照)。開封ヒントタグ22の表示に係るデータは、プレイデータ520のAR表示体表示データ526に格納される。
【0204】
次いで、処理部200は、処理対象としている宝箱に対応づけられる出現フラグ525dが「1」であれば(ステップS606のYES)、更に処理対象としている宝箱にマーカが設定されているかを判定する(ステップS608)。具体的には、処理対象としている宝箱の受信済宝箱リスト525の設置場所データ610を参照し、マーカデータ613及びマーカ基準相対位置614が設定されているかを判定する。両データが有ればマーカ設定有りと判定する(
図15参照)。
【0205】
マーカの設定があると判定した場合には(ステップS608のYES)、処理部200は更にライブビューの映像を対象にして物体認識処理を実行し、ライブビューの映像内に写っているマーカを検索する(ステップS610)。そして、マーカが写っていれば(ステップS612のYES)、マーカ基準相対位置614に基づいて当該マーカの位置を基準として処理対象としている宝箱のAR表示体24の表示位置すなわち出現位置を算出し(ステップS614)、ビデオシースル方式によるライブビューへの、その宝箱のAR表示体24の合成表示を開始し(ステップS616)、ループAを抜ける。
【0206】
マーカの設定があってもライブビュー内にマーカが写っていない場合には(ステップS612のNO)、処理部200は処理対象としている宝箱のAR表示体24を表示せず(ステップS620)、ループAを抜ける。
また、そもそも処理対象としている宝箱にマーカの設定が無い場合には(ステップS608のNO)、処理対象としている宝箱の受信済宝箱設置データ525cの位置情報611及び撮影方向612に基づいて、宝箱のAR表示体24の合成表示を開始し(ステップS622)、ループAを抜ける。
そして、ステップS588で抽出した全ての宝箱についてループAを実行したならば宝箱関連AR表示体制御処理を終了する。
【0207】
尚、合成表示を開始したとしても、出現ヒントタグ20や開封ヒントタグ22、並びに宝箱のAR表示体24の配置位置がライブビューの撮影範囲に含まれなければ、公知のAR技術と同様にゲーム画面には表示されない。
【0208】
図23のフローチャートに戻って、処理部200は次に表示中のタグへのタッチ操作を検出した場合(ステップS630のYES)、タッチされた対象が出現ヒントタグ20であれば(ステップS632の「出現ヒントタグ」)、出現挑戦処理を実行する(ステップS634)。
【0209】
図35〜
図37は、出現挑戦処理の流れを説明するためのフローチャートである。
同処理において、処理部200は先ず挑戦履歴データ540を参照しステップS630でタッチ操作されたタグと同じ宝箱IDに対する挑戦履歴の有無を確認する(ステップS662)。
具体的には、AR表示体表示データ526には、ライブビューに合成表示されている表示中の宝箱IDと対応づけて画面表示座標系における表示体座標が格納されている。よって、当該データを参照することにより、タッチ操作された出現ヒントタグ20や開封ヒントタグ22が対応づけられる宝箱IDが判別可能となる。挑戦履歴データ540にはどの宝箱IDの出現又は開封を挑戦したかが記録されているので、比較ができる。
【0210】
もし、該当する挑戦履歴があれば(ステップS662のYES)、処理部200は以前挑戦したところまでの結果が残っていると判断して、該当するクリアフラグセット542を作業用に読み出す(ステップS664)。
【0211】
もし無ければ(ステップS662のNO)、処理部200は、タッチ操作判定されたタグに係る宝箱を出現させる挑戦が初回であると判定する。そして、受信済宝箱リスト525からタッチ操作されたタグの宝箱IDを有する受信済宝箱設置データ525cを参照し、その出現条件データ620を参照して新規にクリアフラグセット542を生成する(ステップS667)。この時、参照した出現条件データ620にて初期値が設定されている条件項目の条件クリアフラグ546を「0(未解決)」に設定し、初期値以外の値が設定されている場合、すなわちその項目の条件が設定されている場合には、条件クリアフラグ546を「1」に設定することとする(ステップS668)。
【0212】
次に、処理部200は位置条件の条件クリアフラグ546が「0」であれば(ステップS672のYES)、最新の位置を測位する(ステップS674)。そして、測位の結果が位置条件に適合していれば(ステップS676のYES)、位置条件の条件クリアフラグ546を「1(クリア済)」に変更する(ステップS678)。
【0213】
次に、撮影方向条件の条件クリアフラグ546が「0」であれば(ステップS682のYES)、処理部200は最新の撮影方向を算出し(ステップS684)、それが撮影方向条件に適合しているかを判定する。適合していれば(ステップS686のYES)、撮影方向条件の条件クリアフラグ546を「1」に変更する(ステップS688)。
【0214】
次に、日時条件の条件クリアフラグ546が「0」の場合(ステップS692のYES)、処理部200は現在日時を取得し(ステップS694)、日時条件に適合しているかを判定する。そして、適合していれば(ステップ696のYES)、日時条件の条件クリアフラグ546を「1」に変更する(ステップS698)。
【0215】
次に、パスワードの条件クリアフラグ546が「0」であれば(ステップS702のYES)、処理部200はパスワード受付処理を実行する(ステップS704)。例えば、パスワード入力画面を表示させてプレーヤにパスワードの入力を促す。
そして、入力されたパスワードが合致すれば(ステップS706のYES)、処理部200は、クリアフラグセット542のパスワードの条件クリアフラグ546を「1」に変更する(ステップS708)。
【0216】
次に、
図36のフローチャートに移って、移動軌跡条件の条件クリアフラグ546が「0」であれば(ステップS752のYES)、処理部200は移動軌跡の自動記録が実行されているかを確認し、実行されていなければ(ステップS754のNO)、自動記録を開始する(ステップS756)。いわば、GPSログ、GPSトラッキングを開始する。
【0217】
そして、記録された移動軌跡と移動軌跡条件との比較を行う(ステップS758)。
もし、移動軌跡条件として設定されているキーポイントから所定の許容範囲内をキーポイント番号の順に通過していれば、処理部200は移動軌跡条件に適合していると判断し(ステップS760のYES)、移動軌跡条件をクリアした旨の通知を表示制御するとともに(ステップS762)、移動軌跡条件の条件クリアフラグ546を「1」に変更する(ステップS764)。
【0218】
次に、アクション条件の条件クリアフラグ546が「0」である場合(ステップS802のYES)、処理部200は加速度と姿勢変化の自動記録が実行されているかを確認し、実行されていなければ(ステップS820のNO)、自動記録を開始する(ステップS822)。いわば、モーションログ、モーショントラッキングを開始する。
【0219】
そして、記録された加速度及び姿勢と、アクション条件との比較を行う(ステップS824)。もし、アクション条件として設定されている加速度や姿勢変化のパターンに類似している場合には、アクション条件に適合していると判断し(ステップS826のYES)、アクション条件をクリアした旨の通知を表示制御するとともに(ステップS823)、アクション条件の条件クリアフラグ546を「1」に変更する(ステップS830)。
【0220】
次に、
図37のフローチャートに移って、必須被写体条件の条件クリアフラグ546が「0」である場合(ステップS852のYES)、処理部200はライブビューに必須被写体が写っているか物体認識処理を行う(ステップS870)。必須被写体が写っていれば(ステップS872のYES)、必須被写体条件をクリアした旨の通知を表示し(ステップS874)、必須被写体条件の条件クリアフラグ546を「1」に変更する(ステップS876)。
【0221】
もし、全ての条件クリアフラグ546が「1」になったならば(ステップS894のYES)、出現条件を満たしたと判断して、処理部200は、受信済宝箱リスト525のうち、今回出現挑戦処理の対象とした出現ヒントタグ20(ステップS632でタッチ操作されたタグ)に対応する宝箱の出現フラグ525dを「1」に変更する(ステップS896)。そして、宝箱関連AR表示体制御処理を実行して、ゲーム画面上に対応する宝箱のAR表示体24と開封ヒントタグ22とを表示させ(ステップS898)、出現挑戦処理を終了する。
【0222】
尚、もし所定の挑戦中断操作を検出したならば(ステップS890のYES)、処理部200は作業中のクリアフラグセット542をそのまま挑戦履歴データ540に残したまま、出現ヒントフラグ525dの変更等は行わずに出現挑戦処理を終了する。
【0223】
図23のフローチャートに戻って、ステップS632にてタッチ操作判定されたタグの種類が開封ヒントタグ22の場合には(ステップS632の「開封ヒントタグ」)、処理部200は開封挑戦処理を実行する。(ステップS898)。
【0224】
図38〜
図40は、開封挑戦処理の流れを説明するためのフローチャートである。尚、出現挑戦処理と同様のステップについては同じ符号を付与している。
開封挑戦処理は、基本的には出現挑戦処理(
図35〜37)と同様の流れを有する。異なる部分としては、
図38において、タッチ操作判定されたタグへの開封挑戦が初回の場合(ステップS662のNO)、処理部200は、受信済宝箱リスト525からタッチ操作されたタグの宝箱IDを有する受信済宝箱設置データ525cを参照し、その開封条件データ622を参照して新規にクリアフラグセット542を生成する(ステップS665)。
【0225】
また、
図40において、全ての条件クリアフラグ546が「1」になったならば(ステップS894のYES)、処理部200は開封条件を満たしたと判断して、受信済宝箱リスト525のうち、今回開封挑戦処理の対象とした開封ヒントタグ22に対応する宝箱の開封フラグ525eを「1」に変更して(ステップS920)、開封挑戦処理を終了する。
【0226】
図23のフローチャートに戻って、処理部200は次に受信済宝箱リスト525を参照して、開封フラグ525eが「1」で、且つ特典付与フラグ525fが「0(特典未付与)」の宝箱が有るかを判定する。
もし、該当する宝箱があれば、つまり開封済であるにもかかわらず宝箱の中身の付与、特典の付与が行われていない宝箱があるならば(ステップS940のYES)、処理部200は当該宝箱の開封を表示する(ステップS942)。例えば、当該宝箱が開くような演出表示を伴うと好適である。そして、処理部200は宝箱仕様変更チャンス処理を実行する(ステップS944)。
【0227】
図41は、ゲーム端末1500が実行する宝箱仕様変更チャンス処理と、ゲームサーバ1100が実行する宝箱仕様変更処理との流れを説明するためのフローチャートである。
ゲーム端末1500の処理部200は、プレーヤへ仕様変更の実行/見送りの各入力アイコンを画面表示するなどして選択入力を促す(ステップS960)。
【0228】
そして、仕様変更の「実行」が選択入力されたならば(ステップS962のYES)、処理部200は、特典の付与が行われていない宝箱の色彩パターンデータを元画像として色彩パターンの編集画面を表示するとともに(ステップS964)、操作入力に応じて、元画像を変更する(ステップS966)。
【0229】
具体的には、受信済宝箱リスト525のうち特典の付与が行われていない宝箱の色彩パターンデータ606を読み出し、これを元画像として画像編集可能に表示する。編集画面では、画像編集用の様々なアイコンが表示されており、例えば筆アイテムを選択するとともにパレットから好みの色を選択して、元画像上をあたかも絵筆で描くかのようにタッチ操作させることで、元画像に好みの模様を追加することができる。或いは、色相変更ホイールを表示させ、元画像の色相を変更させるなどとしても良い。更には、ゲーム端末1500が既に記憶している画像ファイルを指定可能として、指定された画像ファイルを元画像上に合成することを可能としても良い。
【0230】
そして、所定の編集完了操作を検出したならば(ステップS968のYES)、処理部200は、受信済宝箱リスト525の宝箱仕様データ600の色彩パターンデータ606を、この編集・変更された画像に更新する(ステップS970)。
次いで、今回仕様を変更した宝箱の宝箱ID525b及び今回更新された色彩パターンデータ606とともに、ゲームサーバ1100へ宝箱仕様変更リクエストを送信し(ステップS972)、宝箱仕様変更チャンス処理を終了する。
以上の宝箱仕様変更チャンス処理によれば、宝箱を開封したプレーヤが、自身が見つけたことを示すかのような印を宝箱に施すことが可能となる。
【0231】
一方、ゲームサーバ1100のサーバ処理部201は、宝箱仕様変更リクエストを受信すると(ステップT30)、宝箱管理データ565の内、受信した宝箱IDに該当する宝箱設置データ567の色彩パターンデータ606を、受信した色彩パターンデータに更新する(ステップT32;
図21参照)。
【0232】
図23のフローチャートに戻って、ゲーム端末1500の処理部200は、次に今回ステップS940で見つけられた「特典の付与が行われていない宝箱」の宝箱IDを含む開封信号をゲームサーバ1100へ送信する(ステップS980)。
【0233】
そして、処理部200は、新たに開封された宝箱に対応する受信済宝箱リスト525の受信済宝箱設置データ525c、更にその中身データ608を参照して、宝箱の中身に応じた開封特典を付与する(ステップS982)。
つまり、宝箱としてのオブジェクトの作動や、作動にともなうゲーム進行の変更を実行する。例えば、中身がプレーヤキャラクタの能力パラメータの変更量を示していれば、当該変更量分だけ指定されたパラメータ値を変更する。また、アイテムの識別情報であれば、当該アイテムをプレーヤキャラクタの所持品リストに加える。画像データなどのデータファイルの場合には、記憶部500に別途記憶させる、といった具合である。中身が宝箱の消滅などであれば、宝箱が消滅するように表示させる。この場合、実質的な特典の付与は無い。
【0234】
特典付与を実行したならば、処理部200は、特典付与した宝箱の特典付与フラグ525fを「1(特典付与済)」に変更する(ステップS983)。
【0235】
図42は、開封信号を受信した場合にゲームサーバ1100が実行する開封管理処理の流れを説明するためのフローチャートである。
ゲーム端末500ゲームサーバ1100のサーバ処理部200sは、宝箱管理データ565のうち、受信した宝箱IDに対応する開封履歴569に受信日時を追加格納する(ステップT40)。
【0236】
次に、サーバ処理部200sは、褒賞内容を決定する(ステップT42)。ここで言う褒賞とは、開封された宝箱の設置者に対して付与する特典のことである。
設置者褒賞の内容は、ゲーム内容に応じて適宜設定可能である。例えば、予め用意されている選択肢の中からランダム抽選処理で決定するとしても良い。選択肢としては、本実施形態はRPGを想定しているので、プレーヤキャラクタのHP(ヒットポイント)や攻撃力などの能力パラメータ値の変更、所持金の増額、アイテムの付与、プレイ可能なゲームステージの鍵付与、当該ゲームに関連する課金サービスのクーポン発行、を設定することができる。HPや所持金の増額など幅が許される内容については、今回開封された宝箱に係る情報、例えば開封履歴569から開封回数に応じてその幅を決定しても良く、適宜設定できる。
【0237】
そして、褒賞内容が決まったならば、次にサーバ処理部200sは、今回開封された宝箱の設置者がゲーム参加中であれば(ステップT44のYES)、当該設置者のゲーム端末1500へ褒賞内容を付与する為のデータ(褒賞付与データ)を送信し(ステップT46)、もしゲーム参加中でなければ(ステップT44のNO)、当該設置者のプレーヤ登録データ562に含まれるセーブデータを変更して褒賞を付与する(ステップT48)。
【0238】
次いで、サーバ処理部200sは、所定の宝箱削除条件を満たす宝箱を抽出して登録抹消し(ステップT50)、開封管理処理を終了する。
尚、宝箱削除条件は、ゲーム内容に応じて適宜設定可能である。例えば、開封回数を1回を条件として設定すると、開封されると即登録抹消となり、より現実の宝箱のようで好ましいが、マルチプレーヤ参加型のRPGで、サービスの一環として宝箱が設置される場合には、設置された日時から一定の経過時間までの期間を条件とすると好適であろう。そうした宝箱削除条件は、宝箱を設置する際に選択できる構成とすると好適である。その場合、宝箱仕様データ600に、宝箱削除条件を示すデータを追加する構成とし、当該ステップにて宝箱毎の宝箱削除条件を読み出して判定することとする。
【0239】
また、褒賞の付与にあたっては、上述のように単に宝箱が開封される都度必ず付与する構成としても良いがこれに限らない。例えば、ステップT40に次いで、褒賞付与条件を満たすかの判定ステップを追加し、褒賞付与条件を満たしていればステップT42〜T48を実行する流れとすると良い。褒賞付与条件は、ゲームバランスを考慮して適宜設定可能であるが、例えば、宝箱の開封回数が所定数に達したら付与する、設置者の宝箱設置総数が所定数に達したら付与する、などとすることができる。
【0240】
図23のフローチャートに戻って、ゲーム端末1500の処理部200は、ゲームサーバ1100から設置者へ褒賞を付与するための褒賞付与データを受信すると(ステップS984のYES)、受信した褒賞付与データに基づいて特典を付与する(ステップS986)。褒賞付与データには、褒賞とするべき変更内容が定義されているので、これに従ってプレイデータを適宜変更する。
【0241】
次いで、処理部200は、所定のゲーム終了条件を満たしているかを判定する。本実施形態では、例えばプレーヤキャラクタのHPが「0」になったらゲーム終了条件を満たすと判定する。
ゲーム終了条件を満たしていなければ(ステップS988のNO)、処理部200は、プレイデータ520に格納されているプレーヤキャラクタステータスデータ522をユーザ名と対応づけてゲームサーバ1100へ送信して(ステップS990;
図13参照)ステップS34に戻ってゲーム継続させる。尚、プレーヤキャラクタステータスデータ522を受信したゲームサーバ1100は、対応するユーザ名のプレーヤ登録データ562のセーブデータを、受信したプレーヤキャラクタステータスデータ522に基づいて更新することとする。
【0242】
一方、ゲーム終了条件を満たしていれば(ステップS988のYES)、エンディングを表示するなどして(ステップS992)、一連の処理を終了する。
【0243】
以上、本実施形態によれば、ゲーム内で使用する仮想のオブジェクトを、現実空間に対応づけて設置するとともに、当該オブジェクトに係わる出現条件や開封条件と言ったトリガー条件を設定することができる。そして、それらの情報をゲームサーバに送信して、ゲームサーバに新たなオブジェクトを登録させることができる。また、他のプレーヤによって設置されたオブジェクトが出現したり、作動したりする。
例えば、オブジェクトを宝箱とするならば、プレーヤが現実世界の希望の場所に、決められた条件で出現したり開いたりする宝箱を設置可能である。また、他のプレーヤが設置した宝箱を見つけたり、開封したりする挑戦を楽しむことができる。
【0244】
加えて、そうして設置されたオブジェクトを作動させる(宝箱を開封する)と、当該オブジェクトを設置したプレーヤ(設置者)に褒賞が与えられ、開封者には特典が与えられる仕組となっているので、積極的な宝箱の設置や宝箱の発見・開封を促し、ゲームを盛り上げることができる。
【0245】
〔変形例〕
以上、本発明を適用した実施形態について説明したが、本発明の形態がこれに限定されるものではなく、適宜構成要素の追加・省略・変更などを施すことができる。
【0246】
例えば、上記実施形態ではゲームを、マルチプレーヤ参加型のオンラインRPGとしたが、シングルプレイでも良いし、ジャンルをRPG以外にも変更することができる。勿論、拡張現実を利用しないゲームであっても良い。
それに伴い、上記実施形態で「宝箱」としていたオブジェクトの形態も適宜変更可能である。例えば、育成ゲームにおける仮想生物やダンジョンを守護する精霊などのNPC(ノンプレーヤキャラクタ)としても良い。この場合、開封条件は、それらNPCを育成可能にしたり会話可能にするための条件に相当する。また、ゲーム内に登場する情報端末や機械仕掛けの道標などとしても良い。それに応じて、トリガー条件も適宜設定することができる。例えば、プレーヤキャラクタの経験値やレベルといったパラメータ値が基準値を超えることや、所定のアイテムの所持や使用、所定の日時条件(例えば、時間帯、曜日、指定日、指定期間)も可能である。もし、ゲーム装置同士が近接すると相互にアドホックネットワークを自動形成することのできる機能を有しているならば、更に同じゲームソフトを起動しているゲーム装置が所定の近距離内(通信可能圏内)に所定数存在していることを条件としても良いし、更にはGPS等の位置情報に基づき、それらが指定場所付近に集まっていることを条件としても良い。
【0247】
また、上記実施形態では、一度設定された宝箱の仕様は、開封者のみが変更することができる構成であるが、ゲームサーバ1100が変更可能な構成とすることもできる。
例えば、開封管理処理(
図42参照)において、所定の仕様変更条件を満たす宝箱を抽出するステップと、抽出された宝箱の仕様を変更するステップとを追加することができる。
仕様変更条件としては、「設置日時から所定の時間経過するまでの間の開封回数が所定の基準回数より少ない」であるとか、「設置日時から未開封のまま経過した時間が基準値より大きい」であるとか、「設置場所が所定の特別地区に該当する」であるとかを設定することができる。
そして、仕様変更の内容としては、宝箱の中身が能力パラメータ値や所持金等の変更であれば変更量を増やしたり、アイテムの付与であれば付与するアイテムの種類を増やしたりする、などを適宜設定することができる。
【0248】
また、上記実施形態では、プレーヤが使用するコンピュータ及びゲーム装置の例として、スマートフォンを例に挙げて説明したがこれに限らない。例えば、携帯型ゲーム装置は勿論、機能的に“ゲーム装置”として使用可能な電子機器(コンピュータ)を用いることもできる。より具体的には、アプリケーションソフトが実行可能でハンドヘルドな情報端末装置、携帯電話機、コンパクトデジタルカメラ、音楽プレーヤ、パソコンと言った電子機器を用いることもできる。