特許第6404490号(P6404490)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 株式会社アースビートの特許一覧 ▶ 株式会社テクテックの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6404490
(24)【登録日】2018年9月21日
(45)【発行日】2018年10月10日
(54)【発明の名称】ゲームシステム及びゲームプログラム
(51)【国際特許分類】
   A63F 13/216 20140101AFI20181001BHJP
   A63F 13/65 20140101ALI20181001BHJP
   A63F 13/45 20140101ALI20181001BHJP
【FI】
   A63F13/216
   A63F13/65
   A63F13/45
【請求項の数】10
【全頁数】30
(21)【出願番号】特願2017-552285(P2017-552285)
(86)(22)【出願日】2016年7月26日
(86)【国際出願番号】JP2016071930
(87)【国際公開番号】WO2017090274
(87)【国際公開日】20170601
【審査請求日】2018年5月25日
(31)【優先権主張番号】特願2015-231330(P2015-231330)
(32)【優先日】2015年11月27日
(33)【優先権主張国】JP
【早期審査対象出願】
(73)【特許権者】
【識別番号】516296773
【氏名又は名称】株式会社アースビート
(73)【特許権者】
【識別番号】517009316
【氏名又は名称】株式会社テクテック
(74)【代理人】
【識別番号】100117514
【弁理士】
【氏名又は名称】佐々木 敦朗
(72)【発明者】
【氏名】岡嶋 滋生
(72)【発明者】
【氏名】麻野 一哉
(72)【発明者】
【氏名】田村 寛人
【審査官】 彦田 克文
(56)【参考文献】
【文献】 特開2003−940(JP,A)
【文献】 特開2004−254721(JP,A)
【文献】 特開2008−228941(JP,A)
【文献】 特開2005−34216(JP,A)
【文献】 特開2012−16539(JP,A)
【文献】 Ingress,Wikipedia[Online],2015年10月 6日,pp.1-8,URL,https://ja.wikipedia.org/w/index.php?title=Ingress&oldid=57085590
【文献】 【Ingress】超わかりやすい画面(スキャナー)の見方,APPBANK[Online],2014年12月23日,pp.1-2,URL,https://www.appbank.net/2014/12/23/iphone-application/951105.php
【文献】 リアルマップ領土拡大MMO RPGここに極まれり?「Parallel Kingdom AOT」がアップデート&プレイ可能に,タブロイド[Online],2012年 5月27日,pp.1-6,URL,http://www.tabroid.jp/app/games/2012/05/com.silvermoon.client.html
【文献】 KDDI、歩行中の動作だけを感知して警告する「歩きスマホ注意アプリ」提供開始,ITmedia[Online],2014年 7月17日,pp.1-3,URL,http://www.itmedia.co.jp/mobile/articles/1407/17/news117.html
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/216
A63F 13/45
A63F 13/65
(57)【特許請求の範囲】
【請求項1】
仮想世界において、ユーザーに対応するキャラクター及びその他のオブジェクトが移動して、種々のイベント処理を発生させてゲームを進行させるためのゲーム用画像処理システムであって、
前記種々のイベント処理を発生させてゲームを進行させるゲーム進行処理部と、
現実世界における地理情報を含む現実地図情報を記憶する現実地図記憶部と、
前記ゲーム進行処理部によるゲーム進行に従って、前記現実地図情報上の地理情報に対応した仮想地理情報上における前記オブジェクトの座標情報を含む仮想地図情報を生成する仮想地図情報生成部と、
現実世界における前記ユーザーの現在の座標位置及びその変位を取得する位置情報取得部と、
前記位置情報取得部が取得したユーザーの現在の座標位置及びその変位に基づいて、前記現実地図情報上に前記座標位置を示した現実表示データを生成する現実表示データ生成部と、
前記位置情報取得部が取得した前記座標位置に基づいて、前記座標位置に対応した前記仮想地図情報上に前記キャラクターを表した仮想表示データを生成する仮想表示データ生成部と、
前記現実表示データ生成部が生成した前記現実表示データと、前記仮想表示データ生成部が生成した前記仮想表示データとを、これら表示データの両方、選択されたいずれか、又は一方の一部分を他方に重畳させて表示させる表示制御部と
を備え、
前記ゲーム進行処理部は、前記座標位置の移動に応じて、ゲームの進行を規制する
ことを特徴とするゲームシステム。
【請求項2】
前記ゲーム進行処理部は、前記ゲームを進行に伴って価値情報を前記ユーザーに付与するとともに、前記位置情報取得部が取得した現在位置及びその変位に基づき、前記価値情報を付与する機会又は付与価値を低減するか、或いは付与済みの前記価値情報を没収する
ことを特徴とする請求項1に記載のゲームシステム。
【請求項3】
前記表示制御部は、前記ゲーム進行処理部による前記ゲームの進行の規制に応じて、前記現実表示データ及び/又は前記仮想表示データの表示又はその表示動作を規制する
ことを特徴とする請求項1又は2に記載のゲームシステム。
【請求項4】
前記ゲーム進行処理部が発生させたイベント処理と、前記位置情報取得部が取得する現在位置の移動速度とを監視し、前記現在位置の移動速度が所定値以上であり、且つ前記ゲーム進行処理部が発生させたイベント処理が予め定められた保留対象イベントである場合に、当該保留対象イベントの処理を保留させるイベント規制部をさらに備え、
前記ゲーム進行処理部は、前記保留対象イベントを保留させた状態で、他のイベント処理を発生させて前記ゲームを進行させる
ことを特徴とする請求項1に記載のゲームシステム。
【請求項5】
前記価値情報は、前記現実地図情報又は前記仮想地図情報上における所定の座標位置、範囲又は経路のいずれかに紐付けられた特典情報を取得する権利であり、各特典情報には、その権利の取得条件として、前記座標位置、範囲又は経路のいずれかに対するアクセス頻度が所定値以上となっていることを特徴とする請求項2に記載のゲームシステム。
【請求項6】
仮想世界において、ユーザーに対応するキャラクター及びその他のオブジェクトが移動して、種々のイベント処理を実行させてゲームを進行させるゲームシステムで用いられるゲームプログラムであって、前記ユーザーが使用する携帯端末装置を、
前記種々のイベント処理を発生させてゲームを進行させるゲーム進行処理部と、
現実世界における地理情報を含む現実地図情報を記憶する現実地図記憶部と、
前記ゲーム進行処理部によるゲーム進行に従って、前記現実地図情報上の地理情報に対応した仮想地理情報上における前記オブジェクトの座標情報を含む仮想地図情報を生成する仮想地図情報生成部と、
現実世界における前記ユーザーの現在の座標位置及びその変位を取得する位置情報取得部と、
前記位置情報取得部が取得したユーザーの現在の座標位置及びその変位に基づいて、前記現実地図情報上に前記座標位置を示した現実表示データを生成する現実表示データ生成部と、
前記位置情報取得部が取得した前記座標位置に基づいて、前記座標位置に対応した前記仮想地図情報上に前記キャラクターを表した仮想表示データを生成する仮想表示データ生成部と、
前記現実表示データ生成部が生成した前記現実表示データと、前記仮想表示データ生成部が生成した前記仮想表示データとを、これら表示データの両方、選択されたいずれか、又は一方の一部分を他方に重畳させて表示させる表示制御部
として機能させ、
前記ゲーム進行処理部は、前記座標位置の移動に応じて、ゲームの進行を規制する
ことを特徴とするゲームプログラム。
【請求項7】
前記ゲーム進行処理部は、前記ゲームを進行に伴って価値情報を前記ユーザーに付与するとともに、前記位置情報取得部が取得した現在位置及びその変位に基づき、前記価値情報を付与する機会又は付与価値を低減するか、或いは付与済みの前記価値情報を没収することを特徴とする請求項6に記載のゲームプログラム。
【請求項8】
前記表示制御部は、前記ゲーム進行処理部による前記ゲームの進行の規制に応じて、前記現実表示データ及び/又は前記仮想表示データの表示又はその表示動作を規制する
ことを特徴とする請求項6又は7に記載のゲームプログラム。
【請求項9】
前記携帯端末装置を、
前記ゲーム進行処理部が発生させたイベント処理と、前記位置情報取得部が取得する現在位置の移動速度とを監視し、前記現在位置の移動速度が所定値以上であり、且つ前記ゲーム進行処理部が発生させたイベント処理が予め定められた保留対象イベントである場合に、当該保留対象イベントの処理を保留させるイベント規制部としてさらに機能させ、
前記ゲーム進行処理部は、前記保留対象イベントを保留させた状態で、他のイベント処理を発生させて前記ゲームを進行させる
ことを特徴とする請求項6に記載のゲームプログラム。
【請求項10】
前記価値情報は、前記現実地図情報又は前記仮想地図情報上における所定の座標位置、範囲又は経路のいずれかに紐付けられた特典情報を取得する権利であり、各特典情報には、その権利の取得条件として、前記座標位置、範囲又は経路のいずれかに対するアクセス頻度が所定値以上となっていることを特徴とする請求項7に記載のゲームプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、仮想世界において、ユーザーに対応するキャラクター及びその他のオブジェクトが移動して、種々のイベント処理を実行させてゲームを進行させるゲームシステム及びゲームプログラムに関する。
【背景技術】
【0002】
近年、携帯が可能で、無線通信による情報通信を行うスマートフォンや携帯電話、モバイルPCなどの情報処理装置が普及してきているとともに、GPS等の位置情報サービスが利用可能となるなど、多機能化が進んでいる。
【0003】
従来、このような情報処理装置の携帯性と、位置情報サービスとを利用したゲームが種々提案されている(例えば、特許文献1)。この特許文献1に開示された技術では、GPSなどから得られる実世界の現在地及びその変位をロールプレイングゲームで示される画面(仮想世界)の仮想位置及び仮想変位として表示し制御するとともに、イベントアイコンにその位置が重なると第2の仮想世界が表示されるゲームシステムを構築する。これにより、位置情報を利用し従来のゲーム方式或いは従来にはないゲーム方式と実際の位置情報を組み合わせることで新たなエンタテイメントの実現と、実際に歩行者が移動することで楽しく運動ができるシステムの提供が可能となる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2001−70658号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、特許文献1に開示されたシステムでは、ロールプレイングゲームで示される仮想世界の仮想位置及び仮想変位として表示するものであることから、実際の地図ビューワーとしての実用性が低いという問題がある。すなわち、実際に移動することを要素とした場合、仮想世界の地図のみでは実際に歩いたりする際の地図機能としては不十分であり、実世界の地図を確認したいという要請があった。なお、従来の情報端末では、一般的な地図ビューワーアプリケーションを備えていることから、ユーザーは、ゲームをするためのアプリケーションと一般的な地図ビューワーアプリケーションとを切り替えることにより、上記要請は果たせるものの、その操作が煩わしいとともに、実世界と仮想世界のギャップを楽しむというゲームとしての娯楽性が低下することにもなる。
【0006】
さらに、近年では、情報端末を見ながらの歩行、いわゆる「歩きスマホ」が問題となっており、単に仮想世界を表示し、実世界を表示させるための操作が煩雑なゲームシステムでは、携帯端末装置の画面を注視する時間が長くなることから、歩きスマホを誘発することにも繋がり、実際の移動を要素としたゲーム自体、危険性が懸念される。
【0007】
そこで、本発明は、仮想世界において、ユーザーに対応するキャラクター及びその他のオブジェクトが移動して、種々のイベント処理を実行させてゲームを進行させるゲームシステムにおいて、実世界と仮想世界の地図表示の切り替えに関し、操作性を高めて画面を注視する時間を極力短くし、ゲームとしての娯楽性を維持しつつ、歩きスマホの危険性を回避できるゲームシステム及びゲームプログラムを提供することを課題とする。
【課題を解決するための手段】
【0008】
(1)ゲームシステム
上記課題を解決するために、本発明は、仮想世界において、ユーザーに対応するキャラクター及びその他のオブジェクトが移動して、種々のイベント処理を発生させてゲームを進行させるゲームシステムであって、
前記種々のイベント処理を発生させてゲームを進行させるゲーム進行処理部と、
現実世界における地理情報を含む現実地図情報を記憶する現実地図記憶部と、
前記ゲーム進行処理部によるゲーム進行に従って、前記現実地図情報上の地理情報に対応した仮想地理情報上における前記オブジェクトの座標情報を含む仮想地図情報を生成する仮想地図情報生成部と、
現実世界における前記ユーザーの現在の座標位置及びその変位を取得する位置情報取得部と、
前記位置情報取得部が取得したユーザーの現在の座標位置及びその変位に基づいて、前記現実地図情報上に前記座標位置を示した現実表示データを生成する現実表示データ生成部と、
前記位置情報取得部が取得した前記座標位置に基づいて、前記座標位置に対応した前記仮想地図情報上に前記キャラクターを表した仮想表示データを生成する仮想表示データ生成部と、
前記現実表示データ生成部が生成した前記現実表示データと、前記仮想表示データ生成部が生成した前記仮想表示データとを、これら表示データの両方、選択されたいずれか、又は一方の一部分を他方に重畳させて表示させる表示制御部と
を備え、
前記ゲーム進行処理部は、前記座標位置の移動に応じて、ゲームの進行を規制することを特徴とする。
【0009】
(2)ゲームプログラム
また、本発明は、仮想世界において、ユーザーに対応するキャラクター及びその他のオブジェクトが移動して、種々のイベント処理を実行させてゲームを進行させるゲームシステムで用いられるゲームプログラムであって、前記ユーザーが使用する携帯端末装置を、
前記種々のイベント処理を発生させてゲームを進行させるゲーム進行処理部と、
現実世界における地理情報を含む現実地図情報を記憶する現実地図記憶部と、
前記ゲーム進行処理部によるゲーム進行に従って、前記現実地図情報上の地理情報に対応した仮想地理情報上における前記オブジェクトの座標情報を含む仮想地図情報を生成する仮想地図情報生成部と、
現実世界における前記ユーザーの現在の座標位置及びその変位を取得する位置情報取得部と、
前記位置情報取得部が取得したユーザーの現在の座標位置及びその変位に基づいて、前記現実地図情報上に前記座標位置を示した現実表示データを生成する現実表示データ生成部と、
前記位置情報取得部が取得した前記座標位置に基づいて、前記座標位置に対応した前記仮想地図情報上に前記キャラクターを表した仮想表示データを生成する仮想表示データ生成部と、
前記現実表示データ生成部が生成した前記現実表示データと、前記仮想表示データ生成部が生成した前記仮想表示データとを、これら表示データの両方、選択されたいずれか、又は一方の一部分を他方に重畳させて表示させる表示制御部
として機能させ、
前記ゲーム進行処理部は、前記座標位置の移動に応じて、ゲームの進行を規制することを特徴とする。
【0010】
なお、上述した本発明に係るシステムや、このシステムに用いる制御方法は、所定の言語で記述された本発明のプログラムをコンピューター上で実行することにより実現することができる。すなわち、本発明のプログラムを、携帯端末装置やスマートフォン、ウェアラブル端末、モバイルPCその他の情報処理端末、パーソナルコンピュータやサーバーコンピューター等の汎用コンピューターのICチップ、メモリ装置にインストールし、CPU上で実行することにより、上述した各機能を有するシステムを構築して、各ハードウェア資源の制御方法を実施することができる。
【0011】
また、本発明のプログラムは、例えば、通信回線を通じて配布することが可能であり、また、コンピューターで読み取り可能な記録媒体に記録することにより、スタンドアローンの計算機上で動作するパッケージアプリケーションとして譲渡することができる。この記録媒体として、具体的には、フレキシブルディスクやカセットテープ等の磁気記録媒体、若しくはCD-ROMやDVD-ROM等の光ディスクの他、RAMカードなど、種々の記録媒体に記録することができる。そして、このプログラムを記録したコンピューター読み取り可能な記録媒体によれば、汎用のコンピューターや専用コンピューターを用いて、上述したシステム及び方法を簡便に実施することが可能となるとともに、プログラムの保存、運搬及びインストールを容易に行うことができる。
【0012】
(3)各構成
上記発明において、前記ゲーム進行処理部は、前記ゲームを進行に伴って価値情報を前記ユーザーに付与するとともに、前記位置情報取得部が取得した現在位置及びその変位に基づき、前記価値情報を付与する機会又は付与価値を低減するか、或いは付与済みの前記価値情報を没収することができる。
【0013】
上記発明において、 前記表示制御部は、前記ゲーム進行処理部による前記ゲームの進行の規制に応じて、前記現実表示データ及び/又は前記仮想表示データの表示又はその表示動作を規制することができる。
【0014】
上記発明では、前記携帯端末装置を、
前記ゲーム進行処理部が発生させたイベント処理と、前記位置情報取得部が取得する現在位置の移動速度とを監視し、前記現在位置の移動速度が所定値以上であり、且つ前記ゲーム進行処理部が発生させたイベント処理が予め定められた保留対象イベントである場合に、当該保留対象イベントの処理を保留させるイベント規制部としてさらに機能させ、
前記ゲーム進行処理部は、前記保留対象イベントを保留させた状態で、他のイベント処理を発生させて前記ゲームを進行させることができる。
【0015】
上記発明では、前記価値情報は、前記現実地図情報又は前記仮想地図情報上における所定の座標位置、範囲又は経路のいずれかに紐付けられた特典情報を取得する権利であり、各特典情報には、その権利の取得条件として、前記座標位置、範囲又は経路のいずれかに対するアクセス頻度が所定値以上となっていることが好ましい。
【発明の効果】
【0016】
以上述べたように、本発明によれば、仮想世界において、ユーザーに対応するキャラクター及びその他のオブジェクトが移動して、種々のイベント処理を実行させてゲームを進行させるゲームシステムにおいて、実世界と仮想世界の地図表示の切り替えに関し、操作性を高めつつ、ゲームとしての娯楽性を向上させ、さらには歩きスマホの危険性も回避できる。
【図面の簡単な説明】
【0017】
図1】実施形態に係るゲームシステムの全体構成を示す概念図である。
図2】実施形態に係る現実地図情報M1と仮想地図情報M2の関係を示す説明図である。
図3】実施形態に係るゲームサーバー3の内部構成を示すブロック図である。
図4】実施形態に係るスマートフォン1の内部構成を示すブロック図である。
図5】実施形態に係る表示制御の仮想世界を表示した状態を示す説明図である。
図6】実施形態に係る表示制御の仮想世界に実世界を重畳させて表示した状態を示す説明図である。
図7】実施形態に係る表示制御の仮想世界に実世界の衛星写真を重畳させて表示した状態を示す説明図である。
図8】実施形態に係る表示制御の変更例を示す説明図である。
図9】実施形態に係る表示制御の変更例(スワイプによる切り替え)を示す説明図である。
図10】実施形態に係るイベント保留処理の動作を示すシーケンス図である。
図11】実施形態に係るイベント保留処理の動作の一例を示す説明図である。
図12】実施形態における輪郭線抽出処理に係る現実地図情報を示す説明図である。
図13】実施形態に係るグラデーション処理におけるぼかし処理を示す説明図である。
図14】実施形態に係る輪郭生成用画像を示す説明図である。
図15】実施形態に係る輪郭線抽出処理の概要を示す説明図である。
図16】実施形態に係る輪郭線抽出処理により生成された仮想地図情報を示す説明図である。
図17】実施形態に係るオブジェクト配置処理の概要を示す説明図である。
図18】実施形態に係るオブジェクト配置処理により生成された仮想地図情報を立体表示した状態を示す説明図である。
図19】実施形態に係る鳥瞰表示処理において合成される異なる縮尺の地図の関係を示す説明図である。
図20】実施形態に係る鳥瞰表示処理により生成された仮想地図情報を示す説明図である。
図21】実施形態に係る鳥瞰表示処理において異なる縮尺の地図を合成する手順を示す説明図である。
図22】実施形態に係る仮想地図情報を鳥瞰表示した状態を示す説明図である。
図23】実施形態に係る輪郭線抽出処理の手順を示すフローチャート図である。
図24】実施形態に係る鳥瞰表示処理の手順を示すフローチャート図である。
図25】実施形態に係るオブジェクト配置処理の手順を示すフローチャート図である。
図26】実施形態に係る軌跡表示処理を示す説明図である。
図27】実施形態に係る軌跡表示処理を示す説明図であり、(a)は隣接する2点間を最短距離で接続して軌跡を決定する場合を示し、(b)は2点間における道順に沿って軌跡を決定する場合を示す。
図28】実施形態の変形例に係る軌跡表示処理を示す説明図であり、(a)は隣接する2点間を最短距離で接続して軌跡を決定する場合を示し、(b)は2点間における道順に沿って軌跡を決定する場合を示す。
図29】実施形態に係る特典キャラクターに関する説明図である。
図30】実施形態に係るポイント発行処理の手順を示すフローチャート図である。
図31】実施形態に係るゲーム進行規制処理の手順を示すフローチャート図である。
図32】実施形態に係る移動情報取得処理及び移動速度算出処理の手順を示すフローチャート図である。
図33】実施形態に係る移動情報取得処理及び移動速度算出処理の一例を示す説明図である。
【発明を実施するための形態】
【0018】
以下に添付図面を参照して、本発明に係るゲームシステム及びゲームプログラムの実施形態を詳細に説明する。
図1は、本実施形態に係るゲームシステムの全体構成を示す概念図である。本実施形態に係るゲームシステムは、図1に示すように、複数のユーザー10a,10bが使用する携帯端末装置であるスマートフォン1(1a,1b)と、インターネット2上に設置されたゲームサーバー3とから概略構成される。なお、本実施形態では、スマートフォン1を携帯端末装置の一例として説明する。
【0019】
ゲームサーバー3は、本実施形態では、ゲーム進行処理を行うサーバーであり、単一のサーバー装置、又は複数のサーバー装置群により実現することができ、複数の機能モジュールをCPU上に仮想的に構築し、それぞれの機能モジュールが協動して処理を実行する。また、このゲームサーバー3は、通信機能によりインターネット2を通じて、データ送受信を行うことができるとともに、Webサーバー機能によりブラウザソフトを通じてWebページの提示などを行うことができる。
【0020】
スマートフォン1は、無線通信を利用した携帯可能な情報処理端末装置であり、無線基地局22等の中継点と携帯電話機が無線で通信し、通話やデータ通信等の通信サービスを移動しつつ受けることができる。この携帯電話機の通信方式としては、例えば、3G(3rd. Generation)方式、LTE(Long Term Evolution)方式、4G方式、FDMA方式、TDMA方式、CDMA方式、W−CDMAの他、PHS(Personal Handyphone System)方式等が挙げられる。また、このスマートフォン1は、デジタルカメラ機能、アプリケーションソフトの実行機能、GPS(Global Positioning System)などによる位置情報取得機能等、種々の機能が搭載され、タブレットPC等のモバイルコンピュータも含まれる。
【0021】
位置情報取得機能は、自機の位置を示す位置情報を取得し、記録する機能であり、この位置情報取得機能としては、図1に示すように、例えば、GPSのように、衛星21からの信号によって自機の位置を検出する方法や、携帯電話の無線基地局22や、Wifi通信のアクセスポイントからの電波強度などによって位置を検出する方法が含まれる。
【0022】
そして、このスマートフォン1は、情報を表示する表示部としての液晶ディスプレイを備えるとともに、ユーザーが入力操作を行うための操作ボタン等の操作デバイスを備え、この操作デバイスとしては、液晶ディスプレイに重畳されて配置され、液晶ディスプレイ上の座標位置を指定するタッチ操作などによる操作信号を取得する入力部としてのタッチパネルが含まれる。具体的にこのタッチパネルは、ユーザーの指先やペンなどを用いたタッチ操作による圧力や静電検知その他によって操作信号を入力する入力デバイスであり、グラフィックを表示する液晶ディスプレイと、この液晶ディスプレイに表示されたグラフィックの座標位置に対応した操作信号を受け付けるタッチセンサーとが重畳されて構成されている。
【0023】
(各装置の内部構造)
次いで、上述したゲームシステムを構成する各装置の内部構造について説明する。図3は、本実施形態に係るゲームサーバー3の内部構成を示すブロック図であり、図4は、本実施形態に係るスマートフォン1の内部構成を示すブロック図である。なお、説明中で用いられる「モジュール」とは、装置や機器等のハードウェア、或いはその機能を持ったソフトウェア、又はこれらの組み合わせなどによって構成され、所定の動作を達成するための機能単位を示す。
【0024】
(1)ゲームサーバー
先ず、ゲームサーバー3の内部構成について説明する。ゲームサーバー3は、インターネット2上に配置されたサーバー装置であり、インターネット2を通じて、各スマートフォン1とデータの送受信を行えるようになっている。
【0025】
ゲームサーバー3は、インターネット2を通じてデータ通信を行う通信インターフェース31と、利用者や利用者端末の権限を認証する認証部33と、各利用者端末の位置情報を収集して管理する位置情報管理部32と、ゲーム全体のゲーム進行処理、及び各ユーザーのゲーム進行処理を実行するゲーム進行処理部36と、仮想地図情報を生成する仮想地図情報管理部37と、各ユーザーに対してゲームデータを配信する34と種々のデータベース群を備えている。
【0026】
データベース群としては、現実世界における地理情報を含む現実地図情報を記憶する現実地図記憶部としての現実地図データベース35aと、利用者に関する情報を蓄積するユーザーデータベース35bと、仮想地図情報、ゲーム全体のゲーム進行処理、及び各ユーザーのゲーム進行処理に関する情報を蓄積するゲーム用データベース35cとが含まれる。これらの各データベースとしては、単一のデータベースとしてもよく、複数のデータベースに分割し、相互にリレーションを設定することで各データ同士を紐付けたリレーショナルデータベースとすることができる。
【0027】
現実地図データベース35aは、現実世界における地理情報を含む現実地図情報を記憶する記憶装置であり、山や谷、河川等の自然的な地理的要素、建物や道路、鉄道などの人工物、地名や住所、交通規制などが記憶される。なお、この現実地図データベース35aは、ゲームサーバー3を運用するサービス提供者自身が所有・運用するものの他、他の地図サービス提供者が運用する地図データベースであってもよい。
【0028】
ユーザーデータベース35bに蓄積される情報としては、利用者又は利用者が使用している携帯端末装置を特定する識別子(ユーザーID、端末ID)と、パスワード等とを紐付けた認証情報を含み、ユーザーIDに紐付けられた利用者の個人情報や、端末装置の機種なども含まれる。また、ユーザーデータベース35bには、利用者毎或いは利用者端末毎の認証履歴(アクセス履歴)や、ゲーム用データベース35cとのリレーションによりユーザー毎のゲーム進行に関する情報(緯度・経度等の現在位置、ゲーム中におけるステイタス、得点、利用履歴等)、ゲーム中に関する決済情報等も蓄積される。
【0029】
ゲーム用データベース35cに蓄積される情報としては、仮想世界の地図情報、キャラクターやオブジェクトの特性、イベント処理に関する情報、グラフィック情報などがゲーム用データとして含まれるとともに、これらのゲーム用データと、現実地図に含まれる地理的要素や建物、道路、鉄道等とを関連づけるためのマッピングデータも含まれる。
【0030】
認証部33は、通信インターフェース31を通じて、各スマートフォン1と通信セッションを確立させ、その確立された通信セッション毎に認証処理を行うモジュールである。この認証処理としては、アクセス者である利用者のスマートフォン1から認証情報を取得し、ユーザーデータベース35bを参照して、利用者等を特定し、それらの権限を認証する。この認証部33による認証結果(ユーザーID、認証時刻、セッションID等)は、ゲーム進行処理部36に送出されるとともに、ユーザーデータベース35bに認証履歴として蓄積される。
【0031】
位置情報管理部32は、利用者端末装置側で取得されてゲームサーバー3に送信される位置情報を取得するモジュールであり、位置情報管理部32は、認証部33による認証処理によって特定されたユーザーやユーザー端末装置の識別子(ユーザーID、端末ID等)と、それらの位置情報とを紐付けてユーザーデータベース35bに利用履歴として蓄積する。
【0032】
ゲーム進行処理部36は、仮想世界において、各ユーザーに対応する各キャラクター、及びモンスターやその他のオブジェクトが移動して、種々のイベント処理を発生させてゲームを進行させるモジュールであり、一定のルール・ロジック・アルゴリズムを含むゲームプログラムを実行し、キャラクターやオブジェクトの位置関係(接近・接触等)に応じて、対決バトルやミニゲーム、ムービーの再生等のイベント処理を発生させる。なお、ゲーム進行処理部36は、本実施形態では、スマートフォン1側のゲーム進行処理部141と協働するようになっており、ゲーム進行処理の一部をゲームサーバー3側で行い、グラフィック処理やイベント処理の一部をスマートフォン1側のゲーム進行処理部141で実行するようにしている。例えば、ゲームサーバー3側で、他のユーザーのキャラクターの位置や、オブジェクトの位置などに基づいて、発生し得るイベント処理を予測し、その発生条件をゲームサーバー3側で発生させ、その条件をスマートフォン1側に送信し、実際のイベント処理の発生やそのためのグラフィック処理は、ゲームサーバー3から受信した発生条件に基づいてスマートフォン1側で実行するようにしている。
【0033】
仮想地図情報管理部37は、ゲーム進行処理部36によるゲーム進行に従って、図2に示すような、現実地図情報M1上の地理情報に対応した仮想地理情報上における他のユーザーのキャラクターや、オブジェクトO1〜O3等の座標情報を含む仮想地図情報M2の生成、蓄積及び配信を管理・制御するモジュールである。この仮想地図情報M2は、ゲームサーバー3側で生成する場合と、スマートフォン1側で生成する場合と、ゲームサーバー3とスマートフォン1の両者が協働して生成する場合とがあり、仮想地図情報管理部37は、ゲームサーバー3側で生成、或いは蓄積された仮想地図情報M2と、スマートフォン1側で生成、蓄積された仮想地図情報M2に関する情報を管理し、両者の仮想地図情報M2を比較し、必要に応じて仮想地図情報M2の全部又は一部をスマートフォン1側に配信して、両者の同期を図る。
【0034】
なお、ゲームサーバー3側で仮想地図情報M2を生成する場合、仮想地図情報管理部37は、現実地図データベース35aに蓄積された現実地図情報M1に含まれる地理的要素や建物、道路、鉄道等を取得するとともに、ゲーム用データベース35cに蓄積されたマッピングデータを参照し、現実地図情報M1に対応した仮想世界の地図情報、キャラクターやオブジェクトの特性(属性)、イベント処理に関する情報、グラフィック情報などに基づいて、仮想世界の地図情報を生成する。ここでは、現実地図情報M1上の建物B1〜B3に対応した座標位置(座標範囲)にオブジェクトO1〜O3が配置されている。
【0035】
ゲームデータ配信部34は、ユーザーの現在位置に基づき、仮想地図情報管理部37による制御に従って、仮想地図情報管理部37が生成した仮想地図情報M2を同期させるべく、地図情報や仮想世界のグラフィックを、通信インターフェース31を通じて,各ユーザーに配信するモジュールである。
【0036】
(2)スマートフォン1
次いで、スマートフォン1の内部構成について説明する。図4に示すように、スマートフォン1は、通信インターフェース11と、入力インターフェース12と、出力インターフェース13と、アプリケーション実行部14と、メモリ15とを備えている。
【0037】
通信インターフェース11は、データ通信を行うための通信インターフェースであり、無線等による非接触通信や、ケーブル、アダプタ手段等により接触(有線)通信をする機能を備えている。入力インターフェース12は、マウス、キーボード、操作ボタンやタッチパネル12aなどユーザー操作を入力するデバイスである。また、出力インターフェース13は、ディスプレイやスピーカーなど、映像や音響を出力するデバイスである。特に、この出力インターフェース13には、液晶ディスプレイなどの表示部13aが含まれ、この表示部は、入力インターフェースであるタッチパネル12aに重畳されている。
【0038】
メモリ15は、OS(Operating System)やファームウェア、各種のアプリケーション用のプログラム、その他のデータ等などを記憶する記憶装置であり、このメモリ15内には、ユーザーを識別するユーザーIDの他、ゲームサーバー3からダウンロードしたゲームアプリケーションデータを蓄積するとともに、アプリケーション実行部14で処理されたゲームデータ等が蓄積される。特に、本実施形態では、メモリ15には、ゲームサーバー3から取得した、仮想地図情報M2及び現実地図情報M1が格納されている。
【0039】
アプリケーション実行部14は、一般のOSやゲームアプリケーション、ブラウザソフトなどのアプリケーションを実行するモジュールであり、通常はCPU等により実現される。このアプリケーション実行部14では、本発明に係るゲームプログラムが実行されることで、ゲーム進行処理部141、同期処理部142、イベント規制部143、表示データ生成部146、表示制御部145,位置情報取得部144が仮想的に構築される。
【0040】
ゲーム進行処理部141は、ゲームサーバー3で実行されているゲームプログラムと同様のルール・ロジック・アルゴリズムにより、仮想世界において、各ユーザーに対応する各キャラクター、及びモンスターやその他のオブジェクトを移動させて、種々のイベント処理を発生させてゲームを進行させるモジュールであり、同期処理部142を通じて、ゲームサーバー3側のゲーム進行処理部36と同期しつつ、キャラクターやオブジェクトの位置関係(接近・接触等)に応じて、対決バトルやミニゲーム、ムービーの再生等のイベント処理を発生させる。
【0041】
ゲーム進行処理部141は、本実施形態では、ゲームサーバー3側のゲーム進行処理部141と協働するようになっており、ゲーム進行処理の一部をゲームサーバー3側で行い、グラフィック処理やイベント処理の一部をスマートフォン1側のゲーム進行処理部141で実行するようにしている。例えば、イベント発生の条件などをゲームサーバー3側で発生させ、その条件をスマートフォン1側に送信し、実際のイベント処理の発生やそのためのグラフィック処理は、スマートフォン1側で実行する。
【0042】
同期処理部142は、スマートフォン1側でのゲーム進行処理と、ゲームサーバー3側でのゲーム進行処理とを同期させるモジュールである。具体的には、ゲームサーバー3側で、他のユーザーのキャラクターの位置や、オブジェクトの位置などに基づいて、発生し得るイベント処理を予測し、その発生条件をゲームサーバー3側で発生させ、その条件をスマートフォン1側に送信し、この発生条件を同期処理部142で受信し、実際のイベント処理の発生やそのためのグラフィック処理は、ゲームサーバー3から受信した発生条件に基づいてスマートフォン1側のゲーム進行処理部141で実行する。このスマートフォン1側のゲーム進行処理部141で実行されたイベント処理の結果(バトルやミニゲームの勝敗や得点等)は、同期処理部142を通じてゲームサーバー3側のゲーム進行処理部141に通知され、その後のゲーム進行処理に反映される。
【0043】
また、イベント規制部143は、ゲーム進行処理部141が発生させたイベント処理と、位置情報取得部144が取得する自機の現在位置の移動速度とを監視し、現在位置の移動速度が所定値以上であり、且つゲーム進行処理部141が発生させたイベント処理が予め定められた保留対象イベントである場合に、当該保留対象イベントの処理を保留させるモジュールであり、ゲーム進行処理部141は、保留対象イベントを保留させた状態で、他のイベント処理を発生させてゲームを進行させることができるようになっている。同期処理部142は、イベント規制部143が保留したイベント処理についてゲームサーバー3側のゲーム進行処理部141に通知し、イベント処理の発生要件を満たしたイベント処理が保留状態になったままゲームを進行していることをゲームサーバー3側に報告する。
【0044】
位置情報取得部144は、現実世界における座標位置を選択して取得するモジュールであり、ユーザーの現在位置や他のユーザーの現在位置、人工衛星を利用した全地球測位システム (GPS:Global Positioning System)や、基地局からの電波強度及び基地局情報に基づく三角測位による基地局測位、WifiのSSID(Service SetID)及び電波状況と経度緯度を組み合わせたデータベースを利用したWifi測位等により取得する。
【0045】
また、この位置情報取得部144は、ユーザー操作やゲーム進行によるイベント発生に基づく任意の座標位置を選択して、位置情報を取得したり、移動速度を測定したりすることができる。また、位置情報取得部144は、任意のオブジェクトの座標位置を取得する機能も備えており、各データベース35a〜cを検索して、現在の座標位置、或いは仮想地図上の座標位置、又はこれらの変位履歴を取得することができる。
【0046】
特に、この任意のオブジェクトとしては、当該ユーザーの代理となるオブジェクトが代理オブジェクトとして現実地図情報上又は仮想地図情報上の任意の位置に設置された位置を各データベース35a〜cから検索して取得することができる。この代理オブジェクトは、ゲーム進行処理部36又は141によって、地図情報上の位置がゲーム進行に従って自動的に移動されるもので、特定のユーザーの現在位置と連動されたり、ゲーム進行に従って自動的に移動されたりする。
【0047】
さらに、この位置情報取得部144による移動速度の測定では、スマートフォン1に備えられた加速度センサーからの検出信号により、瞬間的な移動も検知可能となっており、所定の値以上の加速度が生じたときには、ユーザーが移動中であると判定する。また、移動速度の測定では、例えばユーザーが乗り物に乗って高速移動しているときには、GPSの値の変化で移動中であると判定する。この高速移動に関し、地下鉄等の地下や駅構内において、GPS信号が受信できない場合には、Wifiや3G・4G等の基地局の切り替わりや電波受信状態の変化から位置情報が更新されるのを監視し、歩行による通常の移動よりも大きく位置情報が変化したときに、ユーザーの移動を判定する。なお、この基地局の切り替わり等による移動判定では、位置情報の変化が不連続となることから、移動が判定された後の一定時間(例えば5分程度)は移動中であるとするなど、基地局間の距離や電波の変化量に応じ、一定の幅を持たせてユーザーの移動距離、移動速度を予測する。
【0048】
また、本実施形態において位置情報取得部144は移動経路記録部144aを備えており、この移動経路記録部144aは、位置情報取得部144が取得した、ユーザーの現在位置や、他のユーザーの現在位置、任意のオブジェクトの座標位置など、各ユーザー又はオブジェクトの変位履歴に基づいて移動経路や移動速度を算出して記録するモジュールである。この移動経路記録部144aによる移動経路の算出は、例えば、サンプリングされた各位置を時系列順に、隣接する2点間を最短距離で接続して移動経路を決定したり、地理情報を参照して2点間における道順に沿って経路を決定したりすることができる。
【0049】
表示データ生成部146は、表示部13aに表示させるための表示データを生成するモジュールである。表示データは、グラフィックデータの他、画像データや、文字データ、動画データ、音声その他のデータを組み合わせて生成されるデータである。特に、本実施形態に係る表示データ生成部146は、位置情報取得部144が取得したユーザーの現在位置に基づいて、現実地図情報M1上にユーザーの現在位置を示した現実表示データを生成する現実表示データ生成部と、位置情報取得部144が取得した現在位置に基づいて、ユーザーの現在位置に対応した仮想地図情報M2上にキャラクターを表した仮想表示データを生成する仮想表示データ生成部の機能を果たしている。この表示データ生成部146で生成された表示データの表示処理は、表示制御部145で制御される。
【0050】
この表示データ生成部146は、仮想地図情報生成部146aを備えており、この仮想地図情報生成部146aは、ゲーム進行処理部141によるゲーム進行に従って、図2に示すような、現実地図情報M1上の地理情報に対応した仮想地理情報上における他のユーザーのキャラクターや、オブジェクトO1〜O3等の座標情報を含む仮想地図情報M2を生成するモジュールである。仮想地図情報生成部146aは、メモリ15やネットワーク上の現実地図データベース35aに蓄積された現実地図情報M1に含まれる地理的要素や建物、道路、鉄道等を取得するとともに、メモリ15やゲーム用データベース35cに蓄積されたマッピングデータを参照し、現実地図情報M1に対応した仮想世界の地図情報、キャラクターやオブジェクトの特性、イベント処理に関する情報、グラフィック情報などに基づいて、仮想世界の地図情報を生成する。図2に示した例では、現実地図情報M1上の建物B1〜B3に対応した座標位置(座標範囲)にオブジェクトO1〜O3が配置されている。
【0051】
なお、本実施形態では、仮想地図情報M2をスマートフォン1側の仮想地図情報生成部146aで生成するようにしたが、ゲームサーバー3の仮想地図情報管理部37で、予め、或いはリアルタイムに、現実地図情報M1上の地理情報に対応した仮想地図情報M2を生成し、ゲームデータ配信部34によって各スマートフォン1に配信して、同期をとるようにしてもよい。
【0052】
表示制御部145は、表示データ生成部146が生成した現実表示データと、仮想表示データとを、これら表示データの両方、選択されたいずれか、又は一方の一部分を他方に重畳させて表示する制御を実行するモジュールであり、表示部13aは、この表示制御部145の制御に従って現実表示データと仮想表示データとを表示する。
【0053】
また、本実施形態における表示制御部145は、軌跡表示部145aを備えている。この軌跡表示部145aは、移動経路記録部144aが記録した当該ユーザーの移動経路や、他のユーザーの移動経路、任意のオブジェクト移動経路を、現実地図情報M1上又は仮想地図情報M2上に軌跡として表示させるモジュールである。この軌跡表示部145aによる軌跡の表示は、例えば、サンプリングされた各位置を時系列順に、隣接する2点間を最短距離で接続して決定された移動経路を一定の幅を持たせて着色したり、地理情報を参照して2点間における道順に沿って決定された経路を一定の幅を持たせて着色したりすることができる。さらに、この軌跡表示部145aによる軌跡の表示では、現実地図情報M1上又は仮想地図情報M2上において、各ユーザーやオブジェクトの移動経路に近接する区画又はオブジェクトを軌跡の一部として着色して表示させるようにしてもよい。
【0054】
この区画としては、実際の地理情報や仮想の地理情報に基づいて区画された行政区、街区、都道府県、市町村などのブロック単位で着色して表示させることもできる。このブロック単位での着色においても、隣接する2点間を最短距離で接続して決定された移動経路に接触するブロックを着色したり、地理情報を参照して2点間における道順に沿って決定された経路に接触するブロックを着色したりすることができる。
【0055】
(ゲームシステム及びゲームプログラムによる表示制御)
次いで、本発明に係るゲーム用画像処理システム及びゲーム用画像処理プログラムによる画面の表示制御について説明する。図5図9は本実施形態に係る表示制御の説明図である。
【0056】
前記表示制御部145は、タッチパネル12aが取得した操作信号によって指定された座標位置又はこの座標位置の移動に応じて、現実表示データW1と仮想表示データW2の表示を変化させる。具体的に、本実施形態に係るゲームシステムでは、現実地図情報M1に基づいて構成された仮想地図情報M2によって、仮想世界が構築されており、図7に示すように、スマートフォン1の表示部13aには仮想世界を3Dで表現した仮想表示データW2が表示される。この仮想表示データW2には、ユーザー自身を示すキャラクターC1が画面中央に表示され、その周辺にはモンスター等のオブジェクトO1〜O3などが徘徊しているように表示されている。これらオブジェクトO1〜O3は、図2に示したように、現実地図情報M1上の建物B1〜B3に対応した座標位置(座標範囲)を徘徊するように配置されている。
【0057】
タッチパネル12aでは、指などでタップしたりスワイプしたりすることにより、カメラ視点を移動させたり、拡大・縮小したりすることができる。そして、所定のゼスチャー操作をタッチパネル12aに施すことにより、現実表示データW1と、仮想表示データW2とを、これら表示データの両方、選択されたいずれか、又は一方の一部分を他方に重畳させて表示することができるようになっている。具体的には、図7に示したように、仮想表示データW2が表示された状態で、キャラクターC1を長押し(2秒程度)することによって、図8に示すように、ユーザー自身の現在位置を示すキャラクターC1周辺の円形の範囲に現実表示データW1が部分的に重畳されて表示される。この重畳されて表示された部分的な現実表示データW1は、画面から指を放すことによって元の仮想表示データW2のみの表示に戻すことができる。また、この現実表示データW1としては、例えば、図9に示すような衛星写真とすることもできる。
【0058】
さらに、本実施形態において表示制御部145は、ゲーム進行処理部141によるゲームの進行に応じて、現実表示データW1と仮想表示データW2の表示又はその表示動作を変化させる機能を備えている。例えば、図10(a)及び(b)に示すように、ゲームの進行度合いに応じて、キャラクターC1周辺に現実表示データW1が部分的に重畳される円形範囲の半径rを変化させる。例えば、ユーザーが初心者で操作が不慣れである場合には、半径rを大きくし、ゲームが進行し難易度が上がるにつれて半径rが小さくなるなどの制御を行う。また、スマートフォン1が移動中であることを検出した場合には半径rが大きくなり、停止しているときには、半径rが小さくなるなどの制御を行ってもよい。
【0059】
また、仮想表示データW2と現実表示データW1との表示切替の操作例としては、図11に示すように、画面の一端から他端に向けて、タッチした接触点を移動させるいわゆるスワイプ操作により、同図(a)から(c)に移行するように、ページが捲れるようなアニメーション効果を挿入して、仮想表示データW2と現実表示データW1とを切り替えるようにしてもよい。このとき、スワイプの方向を逆にすることにより、同図(c)から(a)に移行するようにして、元の仮想表示データW2に戻るようにしてもよい。
【0060】
このような画面制御により、本実施形態によれば、実世界と仮想世界の地図表示の切り替えを簡単な操作で行えるようにし、操作性を高めつつ、実世界と仮想世界の地図を部分的に重畳させることによってゲームとしての娯楽性を向上させることができる。
【0061】
(仮想表示データの生成処理)
上述した表示データ生成部146による仮想地図情報の生成処理について説明する。上述したように、表示データ生成部146は、ゲーム進行処理部36又は141によるゲーム進行に従って、現実地図情報上の地理情報に対応した仮想地図情報を生成し、仮想地図情報上における座標情報に基づいて、地図上に各オブジェクトを配置する。本実施形態では、現実地図情報から地図中の道路や河川、区画、その他の建物などの輪郭線を抽出して仮想地図情報のベースとなる地理情報を生成するとともに、この現実地図又は仮想地図中の地理情報を異なる縮尺で組み合わせて遠近感を再現した鳥瞰表示を行う。この仮想地図情報には、仮想現実世界の建物や構造物等のオブジェクトが配置されて立体的に表示される。
【0062】
以下に、各処理について説明する。図23は、本実施形態に係る輪郭線抽出処理の手順を示すフローチャート図であり、図24は、本実施形態に係る鳥瞰表示処理の手順を示すフローチャート図であり、図25は、実施形態に係るオブジェクト配置処理の手順を示すフローチャート図である。
【0063】
(1)輪郭線抽出処理
先ず、図12図16及び図23を参照しながら、現実地図情報から仮想地図情報に含まれる輪郭線の抽出処理の手順について説明する。なお、説明中、図12は、本実施形態における輪郭線抽出処理に係る現実地図情報を示す説明図であり、この図12に示した例では、現実地図情報M1中に、道路R1〜R4で囲まれたエリアB10が掲載されているものとする。
【0064】
図23に示すように、先ず、表示データ生成部146は、現実地図情報M1を取得する(S301)。この時点における現実地図情報M1は、現実世界における地理情報が既にビットマップ形式などによって地図画像となっている場合と、現実世界における地理情報が、座標や属性情報など、数値によってベクター状態或いはポリゴン状態で記述されている場合とがあり、画像化されている場合にはそのまま取得し、ベクター状態などの数値で表されている場合には、一旦ビットマップ化などにより地図画像に変換して取得する。
【0065】
次いで、現実地図情報M1の地図画像を画像中の色の境界をぼかしてグラデーション処理を施すことで(図14)、現実地図情報に含まれる境界線を滲ませた輪郭生成用画像M11を生成する(S302)。この輪郭生成用画像M11では、画像中の道路R1〜R4とエリアB10との境界をぼかすことで、道路R1〜R4の黒色からエリアB10の白色へと、エリアB10a〜B10cからなる、色が段階的に薄くなっていくグラデーションが形成されている。このグラデーションの処理としては、例えば、図13(a)〜(c)に示すように、現実地図情報の画像中の任意の指定画素El0を含む、その周囲8点の画素El1の色の加重平均を算出して、その加重平均の色に着色し、指定画素El0とその周辺をぼかす処理を行う。これにより、異なる色の境界では、指定画素の周辺が滲んだ色となり、これを全ての画素について順次行うことによって、段階的に色が薄くなる(濃くなる)グラデーションが描かれることとなる。
【0066】
次いで、図15に示すように、輪郭生成用画像M11と、現実地図情報中の地理情報との差分から輪郭線抽出画像M12を生成する(S303)。具体的には、輪郭生成用画像M11では、色の境界線がぼかされて、元の地理情報(図示した例では、道路R1〜R4やエリアB10等)の色よりも薄い色によって縁取りがされた状態となっている。このため、現実地図情報中に含まれる元の地理情報のうち、所定の色の画素を差し引くことにより、ぼかされて縁取り部分となった画素のみを抽出して、輪郭線抽出画像M12を生成できる。ここでは、現実地図情報中の地理情報のうち、道路R1〜R4の色の画素と、及びエリアB10中のある程度、元のエリアB10の色に近似する色の部分であるエリアB10a+B10bの画素とを、輪郭生成用画像M11中から差し引くことにより、道路R1〜R4を縁取った輪郭が抽出された輪郭線抽出画像M12を生成している。
【0067】
そして、この輪郭線抽出画像M12に基づいて、図18に示すような鳥瞰表示用の仮想表示データW2を生成し(S304)、地図上に木や建物などのオブジェクトOb10を配置して(S305)、図16に示すような仮想表示データW2を生成する。この輪郭線抽出画像M12に基づくオブジェクトOb10の配置は、輪郭生成用画像M11中に描かれたグラデーションを利用して実行される。
【0068】
(2)鳥瞰表示処理
上述した仮想地図情報M2を表示する仮想表示データW2では、図20に示すような鳥瞰表示により三次元的に地図の方向や俯角を変化させることができる。この鳥瞰表示では、遠近法により目線の近傍が大きくはっきりと表示され、遠方に行くにつれ小さく霞んで見るように表示され、鳥瞰図表示の俯角によっては、地図の表示限界が地平線HLとして表示される。
【0069】
本実施形態では、この鳥瞰表示処理では、地図中央のユーザーの現在地周辺では、地図の縮尺を小さくして地理情報もより詳細に表示し、ユーザーから遠くなるにつれて、地図の縮尺を大きくし地理情報も省略して表示し、地図としての機能を担保しつつ、解像度を抑えることにより処理を軽減させると共に、遠近感をリアルに再現している。図24にこの輪郭線抽出処理の手順を示す。
【0070】
先ず、図24に示すように、異なる縮尺・サイズの輪郭線抽出画像を生成する(S401)。この異なる縮尺・サイズの輪郭線抽出画像の生成は、上述した輪郭線抽出処理を、異なる縮尺の現実地図情報について実行することにより実現できる。そして、表示データ生成部146は、図21に示すように、所定の中心座標位置P0を中心として、縮尺の大きい(縮尺度の分母が小さい)詳細地図M21を上位のレイヤーに配置する(S402)。ここでは、縮尺の小さい(縮尺度の分母が大きい)低解像度地図M22,M23を下位のレイヤーに順次配置して仮想地図情報M2を生成している。結果的に、図22に示すように、仮想地図情報M2を表示する仮想表示データW2では、大縮尺の詳細地図M21の周囲に、詳細地図M21よりも段階的に縮尺が小さく且つ面積が広くなる複数の低解像度地図M22及びM23が同心状に配置される。
【0071】
次いで、表示データ生成部146は、詳細地図M21と低解像度地図M22との境界部分M22a、及び低解像度地図M22と低解像度地図M23の境界部分M23aにおいて、一方の画像が他方の画像へ徐々に移行するクロスフェード処理を施しつつ(S403)、各レイヤーを合成して鳥瞰表示用の仮想地図情報を生成する(S404)。このクロスフェード処理では、上位にある高解像度地図の周縁の道路や河川、区画線等の透明度を徐々に高くしていきこれらの線が徐々に薄くなるようにし、下位にある低解像度地図が徐々に濃くなるようにして、上位の地図に表示されていた詳細な道路等の線がその重要度に応じて境界部分で徐々に消失され、中心座標位置P0から離れるにつれて、下位の低解像度地図に自然に移行するようになっている。
【0072】
なお、上記ステップS401〜S404の処理は現実地図情報についても実行し、鳥瞰表示用の現実地図情報を生成する。そして、このようにして異なる縮尺の地図を合成して生成された鳥瞰表示用の仮想地図情報若しくは現実地図情報を3D変形するとともに、遠方を霞ませるなどの画像処理を施して(S405)、鳥瞰表示処理を終了する。この際、地図上に表示される各オブジェクトは、鳥瞰表示のカメラ位置や視線の角度・方向に応じて、立体変形されて表示される。
【0073】
(3)オブジェクト配置処理
上述したように、表示データ生成部146は、仮想地図情報M2上における座標上に、種々のオブジェクトを配置して表示する仮想表示データW2を生成する。基本的に、現実地図情報中の山や丘陵、河川、道路などの地形や、主立ったランドマークとなる建物の位置に対応させ、仮想的な背景オブジェクトOb10を配置する。さらに、本実施形態では、仮想地図情報の場面設定やゲーム進行に応じて、森の木々や、荒野の岩、草原の植物など、現実地図情報に詳細には含まれていないが、地図上の環境を表現したり、ゲームの演出上必要となる場合にも、背景オブジェクトOb10を自動的に仮想地図情報上に配置する。図25にこのオブジェクトの自動配置処理の手順を示す。
【0074】
このオブジェクトの自動配置処理では、上述した輪郭線抽出処理で生成した輪郭生成用画像M11に含まれる、境界線を段階的に滲ませたグラデーションを利用する。上述したように、表示データ生成部146は、現実地図情報M1の地図画像中の色の境界をぼかすことで、現実地図情報に含まれる境界線を滲ませた輪郭生成用画像M11を生成している。この輪郭生成用画像M11は、図17に示すように、画像中の道路R1〜R4とエリアB10との境界がぼかされることで、エリアB10a〜B10cのように、道路R1〜R4の黒色からエリアB10の白色へと、色が段階的に薄くなっていくグラデーション画像となっている。このグラデーションの処理としては、例えば、図13(a)〜(c)に示すように、現実地図情報の画像中の任意の指定画素El0を含む、その周囲8点の画素El1の色の平均を算出して、その平均の色に着色し、指定画素El0とその周辺をぼかす処理を行う。
【0075】
そして、オブジェクト配置処理では、図25に示すように、グラデーション画像である輪郭生成用画像M11を解析し(S501)、輪郭生成用画像M11に対し、表示データ生成部146が、この輪郭生成用画像M11中における所定濃度の領域をオブジェクト配置可能エリアとして抽出する(S502)。次いで、現実地図情報を参照して、各オブジェクト配置可能エリアの属性に応じて背景オブジェクトOb10を配置する(S504)。例えば、そのエリアの属性が森林や公園などの緑地であれば、背景オブジェクトOb10として樹木を配置したりする。
【0076】
なお、エリアの属性が不明であれば、ゲーム進行のストーリーに則して任意の背景オブジェクトを配置してもよい。これにより、図18に示すように、輪郭生成用画像M11中における元のエリアB10の色と同じ色のエリアB10aにのみ、例えば、木などのオブジェクトOb10を自動的に配置することができる。この結果、複雑な演算処理を行うことなく、輪郭生成用画像M11中の所定濃度領域を検出するという簡単な処理で、エリアB10等の区画内の中央付近にのみオブジェクトを自動的に配置することができる。
【0077】
その後、背景以外のオブジェクト、例えば、キャラクターやゲーム進行上必要となるランドマークやキャラクターを配置する(S505)。なお、これらの背景以外のオブジェクトについては、そのオブジェクトの属性に応じて、オブジェクト配置可能エリア内に配置するようにしてもよく、オブジェクト配置可能エリアを無視して配置してもよい。
【0078】
(軌跡表示処理)
本実施形態では、ユーザーが移動したり、特定のオブジェクトが移動することによって、その移動経路を地図上に軌跡として記録及び表示する機能を備えている。また、記録・表示された軌跡は、ユーザー操作やゲーム進行に従い、拡張して空白部分を塗りつぶすことことができる。この軌跡表示は、例えば、地図上の地域を軌跡によって塗りつぶすことによってその地域を「浄化」や「緑化」、「占領」するなどといったコンセプトで、ゲーム進行上の意味を持たせることができる。例えば、「浄化」した範囲を拡げることにより、そのユーザーの得点としてゲーム上の有利性を獲得させるなどが挙げられる。また、敵対するユーザーがこの軌跡の上を通過した場合には、軌跡が上書きされ、「占領」した地域が他のユーザーの手に渡ってしまうなど、ゲームの多様性・娯楽性を向上させることができる。
【0079】
上記軌跡表示処理では、位置情報取得部144が、任意のオブジェクトの座標位置を取得して記録し、軌跡表示部145aによって、移動経路記録部144aが記録した当該ユーザーの移動経路や、他のユーザーの移動経路、任意のオブジェクト移動経路を、現実地図情報M1上又は仮想地図情報M2上に軌跡として表示させる。
【0080】
この軌跡表示部145aによる軌跡の表示は、例えば、図26に示すように、ユーザー(スマートフォン1a)がA地点からB地点に移動する場合、サンプリングされた各位置を時系列順に、図27(a)中に斜線で示したように、隣接する2点間を最短距離で接続して決定された移動経路を一定の幅を持たせて着色したり、地理情報を参照して、図27(b)中に斜線で示したように、2点間における道順に沿って決定された経路を一定の幅を持たせて着色したりすることができる。さらに、この軌跡表示部145aによる軌跡の表示では、図28に示すように、現実地図情報M1上又は仮想地図情報M2上において、各ユーザーやオブジェクトの移動経路に近接する区画又はオブジェクトを軌跡の一部として着色して表示させるようにしてもよい。
【0081】
この区画としては、実際の地理情報や仮想の地理情報に基づいて区画された行政区、街区、都道府県、市町村などのブロック単位で着色して表示させることもできる。このブロック単位での着色においても、図28(a)中に斜線で示したように、隣接する2点間を最短距離で接続して決定された移動経路に接触するブロックを着色したり、図28(b)中に斜線で示したように、地理情報を参照して2点間における道順に沿って決定された経路に接触するブロックを着色したりすることができる。
【0082】
(イベント保留処理)
次いで、イベント保留処理について説明する。本実施形態において、ゲーム進行処理部141は、例えば、現実地図情報M1上で所定の建物B1〜B3などに接近すると、その建物B1〜B3に対応した仮想地図情報M2の座標上に表されたモンスターなどの所定のオブジェクトO1〜O3に接近又は遭遇したとしてイベント処理を実行する。
【0083】
このオブジェクトO1〜O3とのイベント処理としては、それらのオブジェクトO1〜O3との対戦バトルやミニゲームなどが挙げられる。本実施形態では、いわゆる歩きスマホを防止すべく、イベント発生領域を通過中に、モンスターと遭遇しイベント処理が発生した場合に、そのイベント処理を保留し、ユーザーが一定の場所に留まったときや、自宅又は目的地に到着した際に、保留したイベントを改めて開始させることができるようになっている。例えば、図11に例示するように、オブジェクトO1〜O3がモンスターなどの仮想生命体や、アイテムであるときに、それらモンスターやアイテムが出現するイベント発生領域を通過し、モンスターと遭遇した場合、保留イベントである対戦バトルが発生する。このとき、モンスターを一旦捕獲したこととしてそのイベント処理を保留し、その状態のまま、ユーザーの移動に伴うゲーム進行を続行させ、ユーザーが帰宅した際に、イベント処理を改めて開始し、そのモンスターとの対戦や、アイテムを用いたミニゲームなどを再開させるようになっている。
【0084】
このようなイベント保留処理について具体的に説明する。図10は、イベント保留処理の動作を示すシーケンス図である。
先ず、ゲーム進行に際し、周期的に各スマートフォン1において位置情報を取得してゲームサーバー3に送信する(S201及びS101)。ゲームサーバー3側では、この送信された各ユーザーの現在位置に従って、発生させるべきイベント処理を予測し(S102)、その発生条件をスマートフォン1側に送信する(S103)。
【0085】
詳述すると、ゲームサーバー3側で取得された各ユーザーの現在位置に基づいて、ゲームサーバー3のゲーム進行処理部36が、他のユーザーのキャラクターの位置や、実世界の建物に対応したモンスター等のオブジェクトの位置などに基づいて、発生し得るイベント処理を予測し、その発生条件をゲームサーバー3側で発生させ、その条件をスマートフォン1側に送信する。
【0086】
スマートフォン1側では、この発生条件を同期処理部142で受信し、その発生条件が満たされるタイミングを監視する(S202)。具体的には、スマートフォン1側においてイベント規制部143が、ゲーム進行処理部141から受信したイベント処理の発生条件と、位置情報取得部144が取得する自機の現在位置の移動速度とを監視し、ゲーム進行処理部141が発生させたイベント処理が予め定められた保留対象イベントであり(S204の「Y」)、且つユーザーの移動速度が所定値以上であり、移動している最中であると判断した場合(S205の「Y」)に、当該保留対象イベントの処理を保留させる(S206)。
【0087】
なお、発生条件を満たしたイベント処理が保留対象イベントでなく(S204の「N」)、或いはユーザーが移動していない場合には(S205の「N」)、通常通りそのイベント処理を実行する(S207)。このステップS208において、保留されたイベント処理がある場合には、そのイベント処理が再開される。そして、このスマートフォン1側のゲーム進行処理部141で実行されたイベント処理(或いは再開された保留イベント処理)の結果(バトルやミニゲームの勝敗や得点等)は、同期処理部142を通じてゲームサーバー3側のゲーム進行処理部141に通知され(S208)、ゲームサーバー3側で同期処理がなされ(S104)、その実行されたイベント処理の結果が。後のゲーム進行処理に反映される。
【0088】
一方、ステップS206でイベントを保留した場合、ゲーム進行処理部141は、保留対象イベントを保留させた状態で、他のイベント処理を発生させてゲームを進行させる(S105)。このとき、同期処理部142は、イベント規制部143が保留したイベント処理についてゲームサーバー3側のゲーム進行処理部141に通知し(S208)、イベント処理の発生要件を満たしたイベント処理が保留状態になったままゲームを進行していることをゲームサーバー3側に報告する。このイベント処理保留の報告を受けたゲームサーバー3側では、同期処理がなされ(S104)、そのイベント処理が保留された状態のまま、後のゲーム進行処理に反映される(S105)。
【0089】
以上の処理は、ゲームが終了されるまで繰り返され(S209の「N」)、ゲーム処理の操作がなされたときに(S209の「Y」)、ゲームが終了される。なお、スマートフォン1側でアプリケーションを終了しても、ゲームサーバー3側でゲームを継続することも可能であり、自動的にイベント処理を保留して、スマートフォン1側でアプリケーションを再開したときに、保留イベントを再開するようにしてもよい。
【0090】
このような、イベント保留機能によれば、ゲームとしての娯楽性を維持しつつ、移動中のイベント処理に対する複雑な操作や長時間の注視を防ぐことができ、歩きスマホの危険性を回避できる。
【0091】
(ゲーム進行処理)
本実施形態では、ユーザーの移動距離に応じてポイントを発行し、ポイントに基づくイベントを発生させることによってゲームを進行させる機能を備えている。このポイントの発行及びゲーム進行は、ゲーム進行処理部36,141が協働して実行され、そのゲームの進行過程やポイントは、ユーザーデータベース35b及びゲーム用データベース35cに記録される。
【0092】
また、本実施形態では、ユーザーが移動した累積距離や地図上の特定施設へのアクセス回数に基づくゲームの進行に合わせて、特典イベントが発生し、その特典イベントによって登場するキャラクターが変化・発展するようになっている。例えば、図29(a)に示すように、ユーザー10aは、自宅(A地点)と最寄りの駅Stとの間を、通勤・通学等によって繰り返し往復しているとすると、上述した軌跡表示処理により、地点Aと駅Stとの間に軌跡が記録される。
【0093】
本実施形態では、この通勤・通学経路の軌跡については通行回数に応じて色を濃く表示するようになっている。また、この軌跡の記録によって特定の施設(ここでは駅St)へのアクセス回数もカウントされ、そのアクセス頻度、或いはポイントの利用量に応じて、種々の特典イベントの利用が可能となる。この特典イベントでは、アクセス頻度に応じて自動的に発生し、その一例として、図29(b)に示すような、特典キャラクターが出現するようになる。
【0094】
図示の例では、アクセス頻度の高い最寄りの駅Stに所定回数以上アクセスしたり、ポイントを利用(蓄積)したりした段階でイベントが発生され、その後は、ユーザー10aが駅Stにアクセスする度に、交通情報を知らせてくれるガイドが特典キャラクターとして出現し、現在の鉄道運行や通勤・通学先の天気や交通情報、関連ニュース、イベントスケジュールなどをメッセージ等で報知するようになる。この特典キャラクターとしては、このようなガイドの他、株価を報知する証券マン、飲食店のグルメ情報を報知するウェイトレス、各地域のニュースを報知するご当地キャラなど、その施設・地域の特性や時間帯等に合わせて種々のキャラクターが出現するようになっている。
【0095】
図30は、本実施形態に係る上記ポイント発行処理の手順を示すフローチャート図である。図30に示すように、ユーザー1のスマートフォン1では、ゲームプログラムの実行中、常時或いは定期的に位置情報の取得処理及び移動速度の算出処理を実行しゲームサーバー3に報告する(S601)。具体的には、位置情報取得部144が、加速度センサーによる検出値や、ユーザーの現在位置の変位、GPSによる緯度・経度、基地局からの電波強度及び基地局情報に基づく三角測位による基地局測位、WifiのSSID(Service SetID)及び電波状況と経度緯度を組み合わせたデータベースを利用したWifi測位等による基地局測位の変化を位置情報として取得する。
【0096】
ユーザー端末から位置情報の報告を受けたゲームサーバー3では、ユーザー毎の累積経路を記録し(S701)、ユーザー毎の移動量(累積移動距離)を算出して蓄積している。この移動量が一定以上蓄積されるまで、累積経路の記録を継続し(S702における「N」)、一定上の移動量が蓄積されると(S702における「Y」)、その移動量に応じたポイント数が価値情報として発行される(S703)。この発行されたポイントは、ユーザーのスマートフォン1側でダウンロード等により受領される(S602)。
【0097】
ユーザーのスマートフォン1側では、受領したポイントを貯めたり、アイテムの購入などに使用したりすることができる。ポイントが一定量蓄積されるまで移動量に応じたポイント発行を繰り返し(S603における「N」)、ポイントが一定量以上蓄積すると(S603における「Y」)、種々の特典イベントの利用が可能となる。この特典イベントはポイント数に応じて選択的に利用が可能となり、ユーザーが利用可能な特典イベントを任意に選択し、利用要求の操作により実行される。この利用要求の操作は、ポイント数に応じたイベント規制解除処理に基づいて行われる。
【0098】
ユーザーがイベント規制を解除すると、それに伴いイベントが進展され(S605)、その旨がゲームサーバー3に報告される(S605)。このイベント進展報告を受けたゲーム側では、進展されたイベントに基づいてゲームを進行させる処理を実行する(S704)。以上のポイント発行と、その蓄積及びポイント利用によるイベント進展をゲームが終了するまで(S606及びS705における「Y」)繰り返すことができる(S606及びS705における「N」)。
【0099】
(ゲーム進行規制処理)
本実施形態では、ユーザーによるいわゆる歩きスマホを検出してゲームの進行を規制する機能を備えている。図31は、本実施形態に係るゲーム進行規制処理の手順を示すフローチャート図である。また、図32は、本実施形態に係る移動情報取得処理及び移動速度算出処理の手順を示すフローチャート図であり、図33は、この移動情報取得処理及び移動速度算出処理の一例を示す説明図である。
【0100】
図31に示すように、ユーザーのスマートフォン1では、ゲームプログラムの実行中、常時或いは定期的に位置情報の取得処理及び移動速度の算出処理を実行する(S801)。このステップS801における位置情報の取得処理及び移動速度の算出処理について詳述すると、図32に示すように、先ず、各種検出値を位置情報として取得する(S1001)。具体的には、位置情報取得部144が、加速度センサーによる検出値や、ユーザーの現在位置の変位、GPSによる緯度・経度、基地局からの電波強度及び基地局情報に基づく三角測位による基地局測位、WifiのSSID(Service SetID)及び電波状況と経度緯度を組み合わせたデータベースを利用したWifi測位等による基地局測位の変化を位置情報として取得する。
【0101】
このステップS1001で取得された位置情報のうち、スマートフォン1に備えられた加速度センサーからの検出信号の値を所定のしきい値と比較し、加速度が一定値以上であるか否かを判断する(S1002)。所定の値以上の加速度が生じたときには(ステップS1002における「Y」)、その加速度の検出値から移動速度及び移動距離を算出し(S1005)、その算出値を図31のステップS802に返す。例えば、図33に示すように、ユーザー10aが地上や屋外において、停止状態から歩き始めたときには、この歩き始めた加速度によりユーザーの移動を検出することができる。
【0102】
一方、このステップS1002において、加速度が一定値に満たない場合(ステップS1002における「N」)であっても、例えばユーザーが乗り物に乗って等速移動していることもあり得ることから、GPS等の他の検出値の変化を解析する必要がある。ところが、図33中に示すように、地下鉄の駅構内や建物内などの地下や屋内にいるときには、GPS信号が受信できないことがあり得る。そのため、GPS信号が受信できるか否かを判断し(S1003)、GPS信号が受信可能であるときには(ステップS1003における「Y」)、そのGPS信号の緯度・経度の変位から移動速度及び移動距離を算出し(S1005)、その算出値を図31のステップS802に返す。
【0103】
他方、GPS信号が受信できないときには(ステップS1003における「N」)、基地局測位ができるか否かを判断し(S1004)、基地局測位が可能であるときには(ステップS1004における「Y」)、その基地局測位の変化、例えばwifi基地局WS1からWS2への切替時などのハンドオーバーを検知する。すなわち、wifi基地局WS1からWS2へ切り替わったことにより、測位に不連続点が生じ、現在位置の変位が瞬時に数メートル移動することがあり、この不連続点間の移動速度及び移動距離をそのまま算出し(S1005)、その算出値を図31のステップS802に返す。なお、上記ステップS1001で取得された位置情報のいずれにおいても測位が不可能であるときには(ステップS1004における「N」)、測位が可能となるまで、位置情報の取得以降のステップS1001〜S1004をループ処理により繰り返す。
【0104】
図31に戻り、ステップS802において、ステップS801により算出された移動速度・移動距離が一定値以上か否かを判断する。具体的には、ステップS801により算出された移動速度・移動距離が、歩行による通常の移動よりも上回るか否かを判定し、通常の移動よりも速く且つ大きく動いているときには(ステップS802における「Y」)、ユーザーが歩きスマホをしていると判定する(S803)。なお、このステップS802の判断では、ステップS801における移動速度又は移動距離の算出が、基地局測位に基づくものであるときには、移動が判定された後の一定時間(例えば5分程度)は移動中であると予測して歩きスマホの判定を一時保留する。この保留時間は、基地局間の距離や電波の変化量に応じて逐次設定され、この保留時間を経過してもなお移動中である場合に、ステップS803の判定を実行する。
【0105】
ステップS803で歩きスマホが発生していると判定されると、それに応じたイベント進行規制及び機能制限が実行される(S804)。このユーザーのスマートフォン1側におけるイベント進行規制や機能制限は、ゲームサーバー3側へ報告され(S805)、この報告を受けてゲームサーバー3側では、ゲーム進行を規制する処理が実行される(S901)。このゲーム進行規制として、本実施形態では、上述したポイント発行率がこの後一定期間低減されたり、既に発行済みのポイントを没収したりすることが行われる(S902)。また、上述した特定イベントの発生率が低減されたり、イベントの進展速度が低減され、ゲームの進行が遅くなるように規制される(S903)。以上の歩きスマホ監視及びそれに伴うゲーム進行規制をゲームが終了するまで(S806及びS904における「Y」)繰り返し実行する(S806及びS904における「N」)。
【0106】
(作用・効果)
以上説明したように、本実施形態によれば、仮想世界において、ユーザーに対応するキャラクター及びその他のオブジェクトが移動して、種々のイベント処理を実行させてゲームを進行させるゲームシステムにおいて、実世界と仮想世界の地図表示の切り替えに関し、操作性を高めつつ、ゲームとしての娯楽性を向上させ、さらには歩きスマホの危険性も回避できる。
【符号の説明】
【0107】
B1〜B3…建物
C1…キャラクター
M1…現実地図情報
M11…輪郭生成用画像
M12…輪郭線抽出画像
M2…仮想地図情報
M22,M23…低解像度地図
M22a,M23a…境界部分
O1〜O3…オブジェクト
Ob10…背景オブジェクト
SC…特典キャラクター
W1…現実表示データ
W2…仮想表示データ
1(1a,1b)…スマートフォン
2…インターネット
3…ゲームサーバー
10a,10b…ユーザー
11…通信インターフェース
12…入力インターフェース
12a…タッチパネル
13…出力インターフェース
13a…表示部
14…アプリケーション実行部
15…メモリ
21…衛星
22…無線基地局
31…通信インターフェース
32…位置情報管理部
33…認証部
34…ゲームデータ配信部
35a…現実地図データベース
35b…ユーザーデータベース
35c…ゲーム用データベース
36…ゲーム進行処理部
37…仮想地図情報管理部
141…ゲーム進行処理部
142…同期処理部
143…イベント規制部
144…位置情報取得部
145…表示制御部
146…表示データ生成部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33