(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024123733
(43)【公開日】2024-09-12
(54)【発明の名称】プログラムおよび情報処理システム
(51)【国際特許分類】
A63F 13/52 20140101AFI20240905BHJP
A63F 13/55 20140101ALI20240905BHJP
【FI】
A63F13/52
A63F13/55
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023031372
(22)【出願日】2023-03-01
(71)【出願人】
【識別番号】509070463
【氏名又は名称】株式会社コロプラ
(74)【代理人】
【識別番号】100104547
【弁理士】
【氏名又は名称】栗林 三男
(74)【代理人】
【識別番号】100206612
【弁理士】
【氏名又は名称】新田 修博
(74)【代理人】
【識別番号】100209749
【弁理士】
【氏名又は名称】栗林 和輝
(74)【代理人】
【識別番号】100217755
【弁理士】
【氏名又は名称】三浦 淳史
(72)【発明者】
【氏名】齋藤 雄輔
(57)【要約】
【課題】ゲームの興趣性を向上させる。
【解決手段】プログラムは、コンピュータを、ユーザからの情報に基づいて仮想空間上でキャラクタを移動させる移動手段と、キャラクタの移動方向を特定する特定手段と、特定手段によって特定されたキャラクタの移動方向に基づいて仮想空間上に所定のオブジェクトを配置する配置手段と、所定のオブジェクトが配置された仮想空間の画像を表示手段に表示させる表示制御手段と、として機能させる。
【選択図】
図3
【特許請求の範囲】
【請求項1】
コンピュータを、
ユーザからの情報に基づいて仮想空間上でキャラクタを移動させる移動手段と、
前記キャラクタの移動方向を特定する特定手段と、
前記特定手段によって特定された、前記キャラクタの移動方向に基づいて、前記仮想空間上に所定のオブジェクトを配置する配置手段と、
前記所定のオブジェクトが配置された前記仮想空間の画像を表示手段に表示させる表示制御手段と、として機能させる
プログラム。
【請求項2】
前記配置手段は、所定のタイミングでサーバに対して前記所定のオブジェクトのデータの送信を要求し、前記要求に基づいて、前記キャラクタの移動方向に基づいて決まる前記仮想空間上の所定の範囲内の前記所定のオブジェクトのデータを取得し、取得したデータに基づいて前記所定の範囲内に前記所定のオブジェクトを配置する
請求項1に記載のプログラム。
【請求項3】
前記配置手段は、前記キャラクタの移動速度に応じて、前記キャラクタの位置に対しての前記所定のオブジェクトを配置する範囲を変化させる
請求項1または2に記載のプログラム。
【請求項4】
前記配置手段は、前記キャラクタの所定のパラメータが所定の条件を満たした場合に前記所定のオブジェクトの前記仮想空間上への配置を行う
請求項1または2に記載のプログラム。
【請求項5】
前記配置手段は、前記キャラクタの移動方向と、前記キャラクタが向かう目的地の方向とに基づいて、前記仮想空間上に前記所定のオブジェクトを配置する
請求項1または2に記載のプログラム。
【請求項6】
ユーザからの情報に基づいて仮想空間上でキャラクタを移動させる移動手段と、
前記キャラクタの移動方向を特定する特定手段と、
前記特定手段によって特定された、前記キャラクタの移動方向に基づいて、前記仮想空間上に所定のオブジェクトを配置する配置手段と、
前記所定のオブジェクトが配置された前記仮想空間の画像を表示手段に表示させる表示制御手段と、を備える
情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラムおよび情報処理システムに関する。
【背景技術】
【0002】
ゲームにおいては、仮想空間上にオブジェクトを配置し、仮想空間内の仮想カメラから見た範囲を表示部に表示させることが知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、仮想空間にオブジェクトを配置して表示させるゲームにおいては、オブジェクトの出現位置がユーザの位置との関係で好ましくない位置となる場合があり、ゲームの興趣性を低下させるおそれがあった。
【0005】
本発明は、ゲームの興趣性を向上させることを目的とする。
【課題を解決するための手段】
【0006】
本開示に示す一実施形態によれば、
コンピュータを、
ユーザからの情報に基づいて仮想空間上でキャラクタを移動させる移動手段と、
前記キャラクタの移動方向を特定する特定手段と、
前記特定手段によって特定された、前記キャラクタの移動方向に基づいて、前記仮想空間上に所定のオブジェクトを配置する配置手段と、
前記所定のオブジェクトが配置された前記仮想空間の画像を表示手段に表示させる表示制御手段と、として機能させる
プログラムが提供される。
【発明の効果】
【0007】
本発明によれば、ゲームの興趣性を向上させることができる。
【図面の簡単な説明】
【0008】
【
図1】情報処理システムの概略構成を示す図である。
【
図2】情報処理システムの機能的構成を示すブロック図である。
【
図3】移動方向に基づく特定オブジェクトの配置について説明するための図である。
【
図4】移動方向と目的地とに基づく特定オブジェクトの配置について説明するための図である。
【
図5】移動方向に基づいて特定オブジェクトを配置する処理の一例を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、図面を参照しながら本発明の実施形態について説明する。
【0010】
<情報処理システムのハードウェア構成>
図1に示すように、本実施形態の情報処理システム1は、複数の端末装置10と、サーバ20とを備えている。
【0011】
端末装置10とサーバ20とは、ネットワーク2を介して接続される。ネットワーク2は、例えば、インターネット、移動通信システム(例えば、3G、4G、5G、LTE(Long Term Evolution)等)、WiFi(Wireless Fidelity)、ブルートゥース(登録商標)、その他の通信回線、またはこれらの組み合わせ等のいずれによって構成されていてもよい。また、端末装置10とサーバ20との接続は、有線接続であるか無線接続であるかを問わない。
【0012】
サーバ20(換言すると、コンピュータ、情報処理装置)は、例えば、ワークステーションまたはパーソナルコンピュータ等の汎用コンピュータであってもよい。サーバ20は、プロセッサ21と、メモリ22と、ストレージ23と、通信IF(インターフェース)24と、入出力IF25と、を備える。サーバ20が備えるこれらの構成は、通信バスによって互いに接続される。
【0013】
プロセッサ21は、サーバ20全体の動作を制御する。プロセッサ21は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)およびGPU(Graphics Processing Unit)等を含み得る。プロセッサ21は、ストレージ23からプログラムを読み出し、メモリ22に展開する。プロセッサ21は、展開したプログラムを実行する。
【0014】
メモリ22は、主記憶装置である。メモリ22は、例えば、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置により構成される。メモリ22は、プロセッサ21がストレージ23から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ21に作業領域を提供する。メモリ22は、プロセッサ21がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
【0015】
なお、本実施形態においてプログラムとは、ゲームを端末装置10により実現するプログラムであってもよい。また、当該プログラムは、当該ゲームを端末装置10とサーバ20との協働により実現するプログラムであってもよい。なお、端末装置10とサーバ20との協働により実現されるゲームは、一例として、端末装置10において起動されたブラウザ上で実行されるゲームであってもよい。また、当該プログラムは、当該ゲームを複数の端末装置10の協働により実現するプログラムであってもよい。また、各種データには、例えば、ユーザ情報およびゲーム情報などのゲームに関するデータ、および端末装置10とサーバ20との間で送受信される指示や通知が含まれる。
【0016】
ストレージ23は、補助記憶装置である。ストレージ23は、例えば、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置により構成される。ストレージ23には、ゲームに関する各種データが格納される。
【0017】
通信IF24は、サーバ20と端末装置10等との間におけるネットワークを介した各種データの送受信を制御する。
【0018】
入出力IF25は、サーバ20がデータの入力を受け付けるためのインターフェースであるとともに、サーバ20がデータを出力するためのインターフェースである。入出力IF25は、例えば、マウス、キーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。
【0019】
端末装置10(換言すると、コンピュータ、情報処理装置)は、例えば、スマートフォン、フィーチャーフォン、PDA(Personal Digital Assistant)、タブレット型コンピュータ、パーソナルコンピュータ、ウェアラブル端末、またはゲーム装置等であってもよい。端末装置10は、携帯端末であってもよい。端末装置10は、ユーザがゲームを実行する際に可搬型の端末であってもよい。
【0020】
端末装置10は、プロセッサ11と、メモリ12と、ストレージ13と、通信IF14と、入出力IF15と、入力部17と、表示部18と、を備える。端末装置10が備えるこれらの構成は、通信バスによって互いに接続される。
【0021】
プロセッサ11は、端末装置10全体の動作を制御する。プロセッサ11は、CPU、MPUおよびGPU等を含み得る。プロセッサ11は、ストレージ13からプログラムを読み出し、メモリ12に展開する。プロセッサ11は、展開したプログラムを実行する。
【0022】
メモリ12は、主記憶装置である。メモリ12は、例えば、ROMおよびRAM等の記憶装置により構成される。メモリ12は、プロセッサ11がストレージ13から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ11に作業領域を提供する。メモリ12は、プロセッサ11がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
【0023】
ストレージ13は、補助記憶装置である。ストレージ13は、例えば、フラッシュメモリまたはHDD等の記憶装置により構成される。ストレージ13には、ゲームに関する各種データが格納される。
【0024】
通信IF14は、端末装置10とサーバ20等との間におけるネットワークを介した各種データの送受信を制御する。
【0025】
入出力IF15は、端末装置10がデータの入力を受け付けるためのインターフェースであるとともに、端末装置10がデータを出力するためのインターフェースである。入出力IF15は、例えばUSB(Universal Serial Bus)等を介してデータの入出力を行うこととしてもよい。入出力IF15は、入力部17または表示部18等を含み得る。
【0026】
入力部17は、ユーザによる入力を受け付ける。入力部17は、例えば、タッチパッド等のポインティングデバイスであってもよい。表示部18は、画像を表示する。表示部18は、例えば、液晶ディスプレイまたは有機EL(Electro-Luminescence)ディスプレイ等であってもよい。端末装置10は、例えば、入力部17と表示部18とを組み合わせた電子部品であるタッチスクリーン16を備える。
【0027】
入力部17は、ユーザの操作(例えば、タッチ操作、タップ操作、スライド操作、スワイプ操作、およびフリック操作等)により入力面に対して入力された位置を検知し、検知した位置を示す情報を入力信号として送信する機能を有する。入力部17としてのタッチパネルは、静電容量方式または抵抗膜方式等を採用することができるが、他の方式であってもよい。
【0028】
なお、入力部17は、例えば、キーボード、各種物理ボタン、各種センサ(例えば、加速度センサ、角速度センサ、磁気センサ、またはGPSセンサ等)、操作スティック、カメラ、またはマイク等であってもよい。また、表示部18は、例えば、プロジェクタ等であってもよい。
【0029】
<情報処理システムの機能的構成>
図2は、サーバ20および端末装置10の機能的構成を示すブロック図である。本実施形態におけるサーバ20は、例えば、ゲームを実現するために必要な各種データおよびプログラムを各端末装置10に提供する機能、各端末装置10からゲームに関するデータを収集して管理する機能、ならびに複数の端末装置10間の同期処理を行う機能等を有する。
【0030】
なお、本実施形態において、サーバ20は、ゲームごとに事前に登録されるユーザのアカウントを用い、各ユーザおよび端末装置10を識別する。アカウントの登録方法は特に限定されない。例えば、端末装置10またはパーソナルコンピュータ等の他の装置が、ユーザの操作に基づいて、ユーザのアカウント登録に必要な情報をサーバ20に送信し、サーバ20が、受信した情報に基づいて各ユーザのアカウントを作成および保存することとしてもよい。
【0031】
図2に示すように、サーバ20は、プロセッサ21、メモリ22、ストレージ23、通信IF(インターフェース)24、および入出力IF25等の協働によって、制御部210および記憶部220として機能する。記憶部220は、制御部210が使用する各種データを格納する。各種データとして、例えば、ゲームプログラム221、ゲーム情報222およびユーザ情報223がある。
【0032】
ゲームプログラム221は、ゲームを実現するためのプログラムである。ゲーム情報222およびユーザ情報223は、制御部210がゲームプログラム221を実行するときに参照するデータである。
【0033】
なお、ゲームプログラム221は、サーバ20側で実行するゲームプログラムに加え、端末装置10に送信して端末装置10側で実行するプログラム(後述するゲームプログラム121)を含むこととしてもよい。あるいは、記憶部220が、サーバ20側で実行するゲームプログラム221と、端末装置10側で実行するプログラムとを格納することとしてもよい。
【0034】
ゲーム情報222は、アカウント間で共通の情報である。ゲーム情報222は、例えば、各種仮想空間(換言すると、ゲーム空間)を規定するための情報を含む。仮想空間とは、ユーザが操作可能なキャラクタ(以下、「操作キャラクタ」あるいは「プレイヤキャラクタ」ともいう。)のオブジェクトが配置される空間である。また、ゲーム情報222は、例えば、仮想空間内に配置される建物や木、石等の背景オブジェクトやノンプレイヤキャラクタ(non player character:NPC)のオブジェクトの配置位置や大きさ、色、形状等、アカウント間で共通のオブジェクトに関する各種設定情報を含む。また、ゲーム情報222は、例えば、ノンプレイヤキャラクタの各種パラメータの設定値等を含む。以下においては、仮想空間に配置されたキャラクタのオブジェクトを指して、単に「キャラクタ」ということもある。
【0035】
ユーザ情報223は、ゲームのアカウントごとに管理される情報である。ユーザ情報223は、例えば、操作キャラクタに関する情報、保有資産に関する情報、およびゲームの進行度合いを示す情報等を含む。保有資産として、例えば、ゲーム内通貨、アイテム、キャラクタの装備品等が挙げられる。
【0036】
制御部210は、記憶部220に格納されたゲームプログラム221を実行することにより、ゲームに関する各種処理を制御する。制御部210は、例えば、送受信部211、サーバ処理部212、データ管理部213および同期処理部214を有する。
【0037】
送受信部211は、各種データを送信または受信する。送受信部211は、例えば、各種データおよびプログラムの送信要求や、マルチプレイ機能に対応するための同期処理の要求、同期処理の対象となるデータ等を、各端末装置10から受信し、サーバ処理部212に渡す。また、送受信部211は、サーバ処理部212による制御に従って、同期を取るための指示等を含む各種データやプログラムを、各端末装置10に送信する。
【0038】
本実施形態において、マルチプレイ機能とは、複数のアカウントによるゲーム処理を同期させた状態で進行させる機能である。情報処理システム1のサーバ20および端末装置10は、情報処理システム1にログインしているアカウントが同じゲームに複数参加する場合に、マルチプレイ機能に対応するための各種処理を実行する。
【0039】
サーバ処理部212は、端末装置10からの要求等に応じ、ゲームプログラム221に記述された演算処理を実行することで、端末装置10にゲームを提供する。サーバ処理部212は、例えば、マルチプレイ機能に対応するための同期処理の要求や同期処理の対象となるデータを、送受信部211を介して端末装置10から受け取ると、マルチプレイ機能に対応するための同期処理を実行する。また、サーバ処理部212は、ゲーム情報222またはユーザ情報223の送信指示を送受信部211に指令する。さらに、サーバ処理部212は、ゲーム情報222またはユーザ情報223のレコードの追加、更新または削除に関する指示をデータ管理部213に指令する。
【0040】
データ管理部213は、記憶部220に格納されている各種データをサーバ処理部212の指示に従って管理する。データ管理部213は、例えば、サーバ処理部212からの指令に従って、ゲーム情報222またはユーザ情報223を読み出し、送受信部211を介して端末装置10に送信する。また、データ管理部213は、サーバ処理部212からの指令に従って、ゲーム情報222またはユーザ情報223のレコードを、追加、更新または削除する。
【0041】
同期処理部214は、サーバ処理部212からの指令に従って、ゲームのマルチプレイ機能に対応するための同期処理を実行する。同期処理部214は、例えば、サーバ20が複数の端末装置10に対して情報を送信するときに、各端末装置10に同時に情報を送信することで、各端末装置10間で進行するゲームの同期を取る。具体的に、同期処理部214は、各アカウントに対応する端末装置10から所定期間(例えば、一フレーム)内に受信した操作情報を、所定期間ごとに各端末装置10に同時に送信する。操作情報は、端末装置10に入力される操作に関する情報である。同期のタイミングや同期すべき情報は、サーバ処理部212から随時受信することとしてもよい。同期処理を実行することで、一つの端末装置10で入力された操作に起因するゲーム内の事象を、他の端末装置10に同時に反映させることが可能となる。
【0042】
本実施形態における端末装置10は、例えば、ユーザの入力操作を受け付ける入力装置としての機能、およびゲームの画像や音声を出力する出力装置としての機能等を有する。
【0043】
端末装置10は、プロセッサ11、メモリ12、ストレージ13、通信IF14、および入出力IF15等の協働によって、制御部110および記憶部120として機能する。記憶部120は、制御部110が使用する各種データを格納する。各種データとして、例えば、ゲームプログラム121、ゲーム情報122およびユーザ情報123がある。
【0044】
ゲームプログラム121は、端末装置10側でゲームを実現するためのプログラムである。ゲーム情報122およびユーザ情報123は、制御部110がゲームプログラム121を実行するときに参照するデータである。
【0045】
ゲーム情報122は、上述したサーバ20のゲーム情報222と同様の情報を含む。したがって、ここではゲーム情報122の説明を省略する。
【0046】
ユーザ情報123は、端末装置10を使用するユーザのアカウントに関するデータであり、上述したサーバ20のユーザ情報223と同様の情報を含む。したがって、ここではユーザ情報123の説明を省略する。
【0047】
制御部110は、記憶部120に格納されたゲームプログラム121を実行することにより、端末装置10において実行されるゲームに関する各種処理を制御する。制御部110は、例えば、操作受付部111、送受信部112、ゲーム進行部113、および表示制御部114を有する。
【0048】
操作受付部111は、入力部17を介してユーザにより入力される操作(以下、「入力操作」ともいう。)を受け付ける。具体的には、操作受付部111は、入力部17に対する入力操作がされた場合に、入力位置の座標および入力操作の種類を検知する。入力操作の種類として、例えば、タッチ操作、タップ操作、スライド操作、スワイプ操作、フリック操作、ピンチイン操作およびピンチアウト操作等の、手指等による各種操作が挙げられる。入力操作は、入力部17(例えば、タッチスクリーン16)に物理的に接触する操作に限らず、非接触による操作も含み得る。なお、タッチスクリーン16への接触を終了するタッチオフ操作等のそれまで行っていた入力操作を終了する操作も、入力操作の一態様ということができる。
【0049】
ここで、操作受付部111は、入出力IF15を介して接続された操作機器を用いてされる入力操作についても、入力部17に対する入力操作と同様に受け付けることができる。
【0050】
送受信部112は、各種データを送受信する。以下に、具体例を挙げて説明する。
【0051】
送受信部112は、ゲーム情報122またはユーザ情報123や、マルチプレイ機能に対応するための同期要求を、サーバ20に送信する。送受信部112は、各種データ、プログラム、およびマルチプレイ機能に対応するための同期のためのデータ等を、サーバ20から受信する。同期のためのデータには、例えば、マルチプレイに参加している各端末装置10間で同期を取るように指示するための同期指示データが含まれる。同期指示データには、例えば、同期対象となるデータおよびそのデータの種類や、同期する時期を特定するためのデータ等が含まれる。
【0052】
送受信部112は、操作受付部111により受け付けられた入力操作に関する操作情報を、サーバ20に送信する。送受信部112は、他の端末装置10において他のユーザにより入力された操作に関する操作情報を、サーバ20から受信する。
【0053】
ゲーム進行部113は、ゲームの進行に関する各種処理を実行する。以下に、具体例を挙げて説明する。
【0054】
ゲーム進行部113は、ゲーム情報122に含まれる仮想空間を規定するための情報に基づいて、仮想空間を規定する。ゲーム進行部113は、ゲーム情報122に含まれるオブジェクトの設定情報に基づいて、仮想空間にオブジェクトを配置する。ゲーム進行部113は、仮想空間に配置したオブジェクトを制御する。具体的には、ゲーム進行部113は、仮想空間内でのオブジェクトの位置、向き、形状、色等を変更することや、オブジェクトに所定の動作を行わせるように、オブジェクトを制御する。
【0055】
ゲーム進行部113は、仮想空間のうちユーザに提示する領域を指定するための仮想カメラを規定する。ゲーム進行部113は、仮想空間内での仮想カメラの位置および向きを規定することにより、仮想空間内に仮想カメラを配置する。ゲーム進行部113は、仮想カメラにより規定される視野領域およびこの視野領域に配置されているオブジェクトを描画した画像を生成するように、表示制御部114に指示する。
【0056】
仮想カメラの位置および向きは、仮想空間ごとに適宜決定することができる。例えば、ゲーム進行部113は、特定のオブジェクトの位置や向きを基準とし、特定のオブジェクトが特定の向きで視野領域の中央に位置するように、仮想カメラを配置する。その際、ゲーム進行部113は、特定のオブジェクトに対する方向、距離および角度を用い、仮想カメラの位置や向きを調整する。特定のオブジェクトは、例えば、操作キャラクタ等であってもよい。
【0057】
ゲーム進行部113は、操作受付部111により検知された入力位置の座標および入力操作の種類等に基づいて、ユーザの指示内容を解釈する。ゲーム進行部113は、解釈した指示内容等に基づいて、ゲームの進行に関わる各種判定処理を実行する。ゲーム進行部113は、判定処理の結果等に基づいて、オブジェクトや仮想カメラ等を制御しながらゲームを進行する。ゲーム進行部113は、ゲームの進行状況に応じて、ゲーム情報122やユーザ情報123を更新、追加または削除する。
【0058】
表示制御部114は、表示部18に画像を表示させる。以下に、具体例を挙げて説明する。
【0059】
表示制御部114は、仮想空間のうち、ゲーム進行部113が規定する仮想カメラの視野の領域と、その領域に存在するオブジェクトとを描画した画像を生成し、表示部18に表示させる。表示制御部114は、表示部18に表示させる画像に対し、例えば、アイコン、ボタン、各種パラメータを示すメニュー等、ゲームの種々の操作に必要なUI(User Interface)に関わるオブジェクトを重畳して描画することができる。
【0060】
なお、
図2に示す端末装置10およびサーバ20の機能は一例にすぎない。端末装置10およびサーバ20の各装置は、他の装置が備える機能の少なくとも一部を備えていてもよい。また、端末装置10およびサーバ20等の各装置は、一体の機器により実現されるものでなくてもよく、例えば、ネットワーク等を介して接続される複数の機器によって実現されてもよい。また、情報処理システム1は、例えば、端末装置10またはサーバ20のみによって構成されていてもよい。換言すると、情報処理システム1は、ネットワークを介して接続される複数の機器によって実現されていなくてもよい。
【0061】
<本実施形態に係る処理>
次に、本実施形態に係る処理について説明する。なお、本実施形態では、端末装置10のプロセッサ11またはサーバ20のプロセッサ21が、情報処理システム1に記憶されているプログラムを実行することによって、後述する各処理を行うものとして説明する。ただし、後述する処理であってプロセッサ11が行う処理のうちの少なくとも一部を、プロセッサ11とは別のプロセッサが実行するようにしてもよい。また、後述する処理であってプロセッサ21が行う処理のうちの少なくとも一部を、プロセッサ21とは別のプロセッサが実行するようにしてもよい。換言すると、本実施形態においてプログラムを実行するコンピュータは、端末装置10およびサーバ20のいずれであってもよく、また、複数の装置の組み合わせにより実現されてもよい。
【0062】
本実施形態のゲームにおいては、ゲーム進行部113は、ユーザからの情報に基づいて仮想空間上でキャラクタを移動させる移動制御部として機能する。具体的には、操作受付部111が、プレイヤキャラクタを移動させるための入力操作、例えば、タッチスクリーン16に触れたまま指を任意の方向へ移動させる操作(すなわち、ドラッグ操作)を受け付けると、ゲーム進行部113は、当該入力操作に関する操作情報に基づいて、ユーザによって指示される方向へプレイヤキャラクタを移動させる。なお、この場合に、任意の方向へ移動させた指をタッチスクリーン16から離しても(換言すると、入力操作が解除されても)、ユーザによって指示された方向へのプレイヤキャラクタの移動が続けられてもよい。
【0063】
なお、ゲーム進行部113は、ユーザからの情報としての、ユーザの現実世界における位置を示す位置情報に基づいて仮想空間上でキャラクタを移動させてもよい。具体的には、例えば、ゲーム進行部113は、入力部17としてのGPSセンサによって取得されるユーザの位置を示す位置情報に基づいて仮想空間上でプレイヤキャラクタを移動させてもよい。すなわち、本実施形態に係る構成は、ユーザの現実世界における位置と仮想空間上の位置とを連動させるゲーム等に適用することもできる。
【0064】
なお、プレイヤキャラクタとは、ユーザのアバター等を含む。なお、一人称視点で仮想空間に入り込むコンテンツにおいては、表示部18に自身(換言すると、プレイヤキャラクタ)の姿が表示されない場合もあり得るが、このような場合についても、コンピュータが認識する仮想空間上のユーザは、ユーザからの情報に基づいて仮想空間上を移動するキャラクタといえる。
【0065】
また、ゲーム進行部113は、仮想空間上におけるキャラクタの移動方向を特定する特定部として機能する。具体的には、ゲーム進行部113は、仮想空間上においてプレイヤキャラクタの向いている方向を示す情報と、プレイヤキャラクタの移動速度を示す情報とを取得し、これらの情報に基づいて、プレイヤキャラクタの移動方向を特定する。例えば、ゲーム進行部113は、プレイヤキャラクタが仮想空間上において東を向いており、かつ移動速度が「0」でない場合には、プレイヤキャラクタの移動方向を「東」と特定する。また、例えば、ゲーム進行部113は、プレイヤキャラクタが仮想空間上において東を向いていても、移動速度が「0」の場合には、プレイヤキャラクタが移動していないと判定する。
【0066】
なお、ゲーム進行部113は、ユーザからの情報に基づいて、仮想空間上におけるキャラクタの移動方向を特定してもよい。具体的には、ゲーム進行部113は、プレイヤキャラクタを移動させるための入力操作(具体的には、当該入力操作に関する操作情報)に基づいて、プレイヤキャラクタの移動方向を特定してもよい。より具体的には、例えば、ゲーム進行部113は、ユーザが所定の方向へのドラッグ操作を行ったことに基づいて、プレイヤキャラクタの移動方向を、当該所定の方向に対応する方向と特定してもよい。また、例えば、ゲーム進行部113は、GPSセンサによって取得されるユーザの位置情報が、ユーザが現実世界において所定の方向に進んでいることを示す場合に、プレイヤキャラクタの移動方向を、当該所定の方向に対応する方向と特定してもよい。また、例えば、ゲーム進行部113は、磁気センサや加速度センサによって取得されるユーザの向いている方向を示す情報に基づいて、プレイヤキャラクタの移動方向を特定してもよい。換言すると、現実世界におけるユーザの移動方向と仮想空間におけるプレイヤキャラクタの移動方向とが連動するゲーム等においては、所定のセンサによってユーザの移動方向を特定することが、プレイヤキャラクタの移動方向を特定することになり得る。
【0067】
次に、仮想空間上へのオブジェクトの配置について、
図3を参照しながら説明する。
図3(および
図4)では、プレイヤキャラクタ31の移動方向を矢印で示している。
【0068】
ゲーム進行部113は、キャラクタの移動方向に基づいて、仮想空間上に所定のオブジェクト(換言すると、特定オブジェクト33)を配置する配置部として機能する。ゲーム進行部113は、プレイヤキャラクタ31の移動方向前方に特定オブジェクト33が湧きやすくなるように制御する。換言すると、本実施形態では、特定オブジェクト33が配置される位置が、プレイヤキャラクタ31の位置よりも移動方向前方に偏っている。さらに換言すると、特定オブジェクト33は、プレイヤキャラクタ31の移動方向後方よりも移動方向前方に配置されやすくなっている。なお、ここで、「移動方向後方よりも移動方向前方に配置されやすい」とは、移動方向後方に配置される確率が0%の場合を含む。
【0069】
ゲーム進行部113は、
図3において破線の円で示す範囲X内に特定オブジェクト33を配置する。すなわち、ゲーム進行部113は、プレイヤキャラクタ31の位置よりも移動方向前方を中心(換言すると、基準位置、重心)とする範囲X内に特定オブジェクト33を配置する。換言すると、本実施形態では、特定オブジェクト33が配置される範囲Xの中心が、プレイヤキャラクタ31の位置よりも移動方向前方に設定されている。なお、当該中心は、特定オブジェクト33を配置する処理上において明確に指定され使用されるものでなくてもよく(換言すると、当該処理において使用されるパラメータとして用意されていなくてもよく)、当該処理の結果として実質的に定まるものであってもよい。
【0070】
本実施形態では、ゲーム進行部113は、所定のタイミングで仮想空間上に配置する特定オブジェクト33のデータをサーバ20からダウンロードし、特定オブジェクト33を仮想空間上に配置する。具体的には、ゲーム進行部113は、プレイヤキャラクタ31(換言すると、ユーザ)が所定距離移動する毎にサーバ20と通信し(換言すると、サーバ処理部212に特定オブジェクト33のデータの送信を要求し)、サーバ20(換言すると、サーバ処理部212)から特定オブジェクト33のデータを受信する。また、ゲーム進行部113は、所定時間が経過する毎にサーバ20と通信し(換言すると、サーバ処理部212に特定オブジェクト33のデータの送信を要求し)、サーバ20(換言すると、サーバ処理部212)から特定オブジェクト33のデータを受信する。そして、ゲーム進行部113は、受信した特定オブジェクト33のデータに基づいて、仮想空間上への特定オブジェクト33の配置を行う。
【0071】
すなわち、ゲーム進行部113は、所定のタイミングでサーバ20に対して特定オブジェクト33のデータの送信を要求し、当該要求に基づいてプレイヤキャラクタ31の位置よりも移動方向前方を中心とする所定の範囲X内の特定オブジェクト33のデータを取得し、取得したデータに基づいて仮想空間上への特定オブジェクト33の配置を行う。なお、ここで当該要求に基づいて送信されるデータには、当該所定の範囲X外の特定オブジェクト33のデータは含まれない。なお、当該所定の範囲Xは、配置の結果として決まるものであってもよく、例えば、範囲自体を決定する処理等は行われなくてもよい。
【0072】
換言すると、ゲーム進行部113は、仮想空間上の所定の範囲X内に特定オブジェクト33を配置する処理を所定間隔で行う。また、仮想空間上における範囲Xの位置は、プレイヤキャラクタ31の位置および移動方向に応じて決まり、所定のタイミングで(換言すると、所定間隔で)更新される。また、当該処理において範囲Xの外には特定オブジェクト33は配置されない。なお、当該処理において、範囲X内に配置される特定オブジェクト33の数は、複数であってもよく1つであってもよい。本実施形態では、範囲X内に複数の特定オブジェクト33が配置され得る。
【0073】
また、表示制御部114は、ゲーム進行部113の指示に応じて、表示部18に仮想空間の画像を表示させる。具体的には、表示制御部114は、仮想空間のうち、制御部110が規定する仮想カメラの視野の領域に存在するオブジェクトを描画した画像を生成し、表示部18に表示させる。すなわち、特定オブジェクト33が配置された範囲Xのうち、仮想カメラの視野の領域に含まれる部分が表示部18に表示される。なお、特定オブジェクト33が配置され得る範囲Xは、
図3に示されるように、少なくともその一部が、キャラクタが移動する様子を示す表示画面において表示部18に表示される領域の外側に位置し得るようになっていてもよい。また、特定オブジェクト33が配置され得る範囲Xは、少なくとも一部の状況において、その全体が表示部18に表示され得るようになっていてもよい。
【0074】
また、仮想空間のマップを表示するマップウィンドウにおいて、キャラクタが移動する様子を示す表示画面に未だ表示されていない特定オブジェクト33のマップ上における位置が示されるようになっていてもよい。また、このようなマップウィンドウは、当該表示画面の表示中において表示部18の隅等に表示されてもよく、当該表示画面の表示中において所定の操作を行うことで表示部18の全体にわたって(換言すると、当該表示画面を表示する状態からマップを表示する状態に切り替わって)表示される等してもよい。当該マップは、仮想空間の仮想カメラに映る領域(換言すると、当該表示画面に表示される範囲)よりも広い範囲を表示するマップともいえる。
【0075】
なお、仮想空間上に配置された特定オブジェクト33が、仮想空間上から消えるタイミングについては、特に限定されるものではないが、例えば、以下のようにしてもよい。すなわち、ゲーム進行部113は、所定のタイミングで所定の範囲X内の特定オブジェクト33のデータをサーバ20から取得し、仮想空間上に配置するが、このときに、当該所定の範囲X外の特定オブジェクト33が仮想空間上から消えるように制御してもよい。換言すると、特定オブジェクト33は、仮想空間上において、プレイヤキャラクタ31の移動方向に基づいて決定される所定の範囲X内にのみ存在するようになっており、当該所定の範囲Xは、所定のタイミングで(例えば、プレイヤキャラクタの移動または時間の経過の少なくともいずれか一方に基づいて)更新されるようになっていてもよい。
【0076】
ここで、従来のオブジェクトの配置方法と、本実施形態におけるオブジェクトの配置方法との違いについて
図3を参照しながら説明する。従来は、二点鎖線の円で示す範囲Y内にオブジェクトを配置する制御がされていた。すなわち、従来は、プレイヤキャラクタ31の位置を中心(換言すると、基準位置、重心)とする所定の範囲内にオブジェクトを配置する制御がされていた。すなわち、従来の方法では、プレイヤキャラクタ31の移動方向に関わらず、プレイヤキャラクタ31を中心とする360度方向全体について満遍なく特定オブジェクト33のデータが取得され特定オブジェクト33が配置されることとなる。したがって、例えば、プレイヤキャラクタ31の移動方向後方等の、プレイヤキャラクタ31が近づく可能性の低い特定オブジェクト33等についても配置する処理が行われることとなる。このため、内部的な処理が追い付かない場合に、プレイヤキャラクタ31の前方に特定オブジェクト33が出現しない場合があるといった問題があった。具体的には、例えば、仮想空間上に配置される特定オブジェクト33のデータを都度サーバ20からダウンロードし、特定オブジェクト33を配置する構成等において、通信環境等の問題により特定オブジェクト33の配置がプレイヤキャラクタ31の移動に追い付かず、プレイヤキャラクタ31が通り過ぎてしまった場所に特定オブジェクト33が出現し、プレイヤキャラクタ31の前方に特定オブジェクト33が出現しない場合があるといった問題があった。また、例えば、ユーザの取得したい特定オブジェクト33が移動方向の後方に現れることにより、当該特定オブジェクト33を取得するために来た道を引き返す必要等が生じ、ゲームの興趣性が低下するなどの問題があった。また、例えば、
図3に示す例においては、範囲Yのうちの半分(換言すると、半円部分)についてしか、プレイヤキャラクタ31の前方に配置される特定オブジェクト33が存在しないこととなる。このため、例えば、仮想空間上に配置される特定オブジェクト33のデータを都度サーバ20からダウンロードし特定オブジェクト33を配置する構成において、頻繁にデータをダウンロードする必要があったり、プレイヤキャラクタ31の後方等の必要性の低いデータもダウンロードされてしまったりすることから、データの更新頻度が高くなったり扱われるデータ量が多くなったりするといった問題があった。換言すると、特定オブジェクト33の配置に係る処理の負荷が大きいという問題があった。
【0077】
これに対し、本実施形態の配置方法によれば、これらの問題の一部あるいは全部を解決することができる。また、本実施形態の配置方法によれば、ユーザが特定オブジェクト33に遭遇しやすくなる。
【0078】
なお、配置部としてのゲーム進行部113は、キャラクタの移動速度に応じて、キャラクタの位置に対しての所定のオブジェクトを配置する範囲を変化させてもよい。例えば、ゲーム進行部113は、プレイヤキャラクタ31の移動速度が「0」の場合(換言すると、移動速度が所定の速さ未満の場合)には、従来の場合と同様に、プレイヤキャラクタ31の位置を中心とする範囲内に特定オブジェクト33を配置してもよい。一方、例えば、移動速度が「0」でない場合(換言すると、移動速度が所定の速さ以上の場合)には、プレイヤキャラクタ31の移動方向前方を中心とする範囲内に特定オブジェクト33を配置してもよい。また、ゲーム進行部113は、移動速度が速くなるほど特定オブジェクト33が配置される範囲の中心がプレイヤキャラクタ31から遠くなるように(具体的には、移動方向のより前方側に位置するように)特定オブジェクト33が配置される範囲を変化させてもよい。すなわち、ゲーム進行部113は、プレイヤキャラクタ31の移動速度に応じて、特定オブジェクト33が配置される範囲の中心の位置(具体的にはプレイヤキャラクタ31に対する相対的な位置、換言するとプレイヤキャラクタ31からの距離)を変化させてもよい。また、ゲーム進行部113は、プレイヤキャラクタ31の移動速度に応じて、特定オブジェクト33が配置される範囲の中心の位置を変化させずにあるいは変化させるとともに、当該範囲の形状を変化させてもよい。具体的には、ゲーム進行部113は、移動速度に応じて当該範囲を拡大あるいは縮小させてもよい。また、例えば、ゲーム進行部113は、当該範囲の形状が、移動速度が速くなるほど移動方向に向かって伸びて楕円状となり、移動速度が遅いほど正円状に近くなり、プレイヤキャラクタ31が停止すると正円状となるように制御するなどしてもよい。
【0079】
なお、特定オブジェクト33が配置され得る範囲Xの形状は、円状に限らず、どのような形状であってもよい。なお、本実施形態では当該範囲Xを円状としているが、本実施形態の仮想空間は、複数の六角形の領域に区分されており、当該範囲Xは複数の六角形の領域によって形成されているため、完全な円とはなっていない。
【0080】
以上のように、ゲーム進行部113は、所定のタイミングでサーバ20に対して特定オブジェクト33のデータの送信を要求し、当該要求に基づいて、プレイヤキャラクタ31の移動方向に基づいて決まる仮想空間上の所定の範囲X内の特定オブジェクト33のデータを取得し、取得したデータに基づいて所定の範囲X内の特定オブジェクト33を配置する。また、キャラクタの移動方向に基づいて(換言すると、当該要求に基づいてデータが取得され)仮想空間上に配置される特定オブジェクト33について、プレイヤキャラクタ31よりも移動方向前方に配置される特定オブジェクト33の総数が、プレイヤキャラクタ31よりも移動方向後方に配置される特定オブジェクト33の総数を上回る確率が、下回る確率よりも高くなっている。具体的には、本実施形態では、所定の範囲Xの中心の位置がプレイヤキャラクタ31の位置よりも前方に設定され得ることにより、前者が後者を上回る確率が高くなっている。なお、当該中心の位置は、プレイヤキャラクタ31の位置よりも前方に設定される場合とされない場合(例えば、プレイヤキャラクタ31の位置に設定される場合あるいは後方に設定される場合)とがあってもよい。また、当該中心の位置は、プレイヤキャラクタ31の移動速度等に関わらず、プレイヤキャラクタ31の位置との相対的な位置関係が一定であってもよい。
【0081】
換言すると、本実施形態では、プレイヤキャラクタ31が所定の速度で移動している場合において所定のタイミングでサーバ20から取得される特定オブジェクト33のデータについて、プレイヤキャラクタ31の移動方向前方の特定オブジェクト33のデータが取得される確率が、移動方向後方の特定オブジェクト33のデータが取得される確率よりも高くなっている。なお、ここで、「確率が高い」とは、低い方の確率が0%の場合を含む。また、「プレイヤキャラクタ31が所定の速度で移動している場合において」とは、所定の速度で移動している場合にのみ前者の確率が後者の確率よりも高い構成に限らず、所定の速度で移動している場合以外においても前者の確率が後者の確率よりも高い構成を含む。
【0082】
なお、プレイヤキャラクタ31は、特定オブジェクト33が配置され得る範囲Xの外に位置していてもよい。換言すると、例えば、プレイヤキャラクタ31が所定の速度で移動している場合において、プレイヤキャラクタ31の移動方向において、範囲Xの後端がプレイヤキャラクタ31よりも前方に位置していてもよい。すなわち、ゲーム進行部113は、少なくとも一部の状況(例えば、移動速度によって範囲Xが変化する構成において、所定の速度以上で移動し、プレイヤキャラクタ31から範囲Xの中心までの距離が長くなる状況等)においてプレイヤキャラクタ31の前方にのみ特定オブジェクト33を配置するように制御してもよい。
【0083】
なお、プレイヤキャラクタ31の位置よりも移動方向前方に中心がある範囲Xについて、プレイヤキャラクタ31は、当該範囲X内に位置していてもよい。すなわち、特定オブジェクト33が配置される位置が、プレイヤキャラクタ31の位置よりも移動方向前方に偏っていれば、プレイヤキャラクタ31の位置は、範囲Xの内側であってもよい。換言すると、特定オブジェクト33は、所定方向に移動するプレイヤキャラクタ31の横(換言すると、移動方向に直交する方向)や、後ろに配置されることがあってもよい。
【0084】
なお、特定オブジェクト33は、例えば、所定のアイテム(例えば、プレイヤキャラクタ31が入手可能なアイテム)であってもよく、敵キャラクタ等のプレイヤキャラクタ31以外のキャラクタであってもよく、プレイヤキャラクタ31が近づくことで(接触する場合を含む)所定の効果(例えば、プレイヤキャラクタ31の所定のパラメータが回復する等の効果)が得られるオブジェクトであってもよく、背景オブジェクト等であってもよい。また、特定オブジェクト33には、これらのオブジェクトのうちの一部のみが含まれてもよく全てが含まれてもよい。
【0085】
また、ゲーム進行部113は、プレイヤキャラクタ31のパラメータに応じた種類の特定オブジェクト33を仮想空間上に配置してもよい。例えば、ゲーム進行部113は、プレイヤキャラクタ31の所定のパラメータが所定の条件を満たした場合に特定オブジェクト33の仮想空間上への配置を行ってもよい。具体的には、プレイヤキャラクタ31の所定のパラメータとしての体力値が所定値となり、回復が必要な状況となった場合に、体力値を回復させる特定オブジェクト33(例えば、アイテムまたは回復スポット)を仮想空間上に配置してもよい。
【0086】
また、ゲーム進行部113は、ゲームの進行中における所定の期間のみ、キャラクタの移動方向に基づく仮想空間上への特定オブジェクト33の配置を行ってもよい。換言すると、ゲーム進行部113は、ユーザからの情報に基づいてプレイヤキャラクタ31が移動する期間において、プレイヤキャラクタ31の移動方向に基づく特定オブジェクト33の配置がされる期間と、プレイヤキャラクタ31の移動方向に基づく特定オブジェクト33の配置がされない期間とが存在するように、特定オブジェクト33の配置に係る制御を行ってもよい。具体的には、例えば、ゲーム進行部113は、ゲーム開始から(換言すると、プレイヤキャラクタ31が仮想空間に配置されてから)特定の期間だけ、プレイヤキャラクタ31の移動方向に基づく仮想空間上への特定オブジェクト33の配置を行ってもよい。例えば、FPS(First Person Shooter)等の対戦ゲームとして、ゲームが開始されてから、敵キャラクタに攻撃をするための武器等の、ゲームにおいて使用するアイテムを探すゲームが知られている。この種のゲームにおいて、ゲームが開始されてからの所定の期間だけ、ゲームにおいて使用するアイテムとしての特定オブジェクト33について、プレイヤキャラクタ31の移動方向に基づく仮想空間上への配置を行ってもよい。このような構成によれば、ゲームが開始されてから武器を見つけることができず、そのまま敵キャラクタにやられてしまうことを抑制することができる。なお、この場合において、ゲームにおいて使用するアイテムは、ゲームの開始時に予め仮想空間(換言すると、マップ)上に配置されているものと、キャラクタの移動方向に基づいて仮想空間上へ配置されるものとが存在してもよい。
【0087】
また、特定のユーザのプレイヤキャラクタ31の移動方向に基づいて配置された特定オブジェクト33は、当該特定のユーザのプレイヤキャラクタ31しか取得することができず、他のユーザのプレイヤキャラクタ31が取得できないようになっていてもよい。例えば、同一の仮想空間に複数のユーザが参加するゲーム(例えば、FPS等の対戦ゲームや、MMORPG(Massively Multiplayer Online Role-Playing Game)等)においては、仮想空間上に配置されたオブジェクトとして、いずれのユーザも取得可能なオブジェクトが存在する場合等がある。特定のユーザのプレイヤキャラクタ31の移動方向に基づいて配置された特定オブジェクト33を、このようないずれのユーザも取得可能なオブジェクトとしてしまうと、当該特定のユーザが取得する前に他のユーザに横取りされてしまうおそれがある。そこで、このような特定オブジェクト33を、当該特定のユーザのプレイヤキャラクタ31しか取得できないものとすることで、このような横取りを防止することができる。なお、仮想空間上に配置されている当該特定オブジェクト33は、他のユーザが視認不可能となっていてもよく、視認可能となっていてもよい。
【0088】
また、ゲーム進行部113は、キャラクタの移動方向に基づいて配置される特定オブジェクト33の出現頻度または出現回数を、ユーザのランクに応じて決定してもよい。具体的には、例えば、ゲーム進行部113は、ランクが低いほど、当該出現頻度が高くなったり、出現回数が多くなったりするように制御してもよい。このような構成によれば、ゲームに慣れていないユーザをアシストすることが可能となる。なお、ランクとは、ユーザの習熟度を示すものともいえ、ユーザ間での相対的な位置付けを示すものともいえる。ランクは、一般的なゲームにおいていわゆるレベルと呼ばれるもの等を含む。なお、ユーザのランクとは、ユーザ自体のランクであってもよく、ユーザの使用するプレイヤキャラクタ31のランク等であってもよい。
【0089】
また、ゲーム進行部113は、キャラクタの移動方向と、キャラクタが向かう目的地の方向とに基づいて、仮想空間上に特定オブジェクト33を配置してもよい。具体的には、
図4に示すように、プレイヤキャラクタ31が目指す目的地36が設定されている場合に、ゲーム進行部113は、例えば、プレイヤキャラクタ31からプレイヤキャラクタ31の移動方向に向けて伸びるベクトルと、プレイヤキャラクタ31から目的地36に向けて伸びるベクトルとのベクトル和に基づいて特定オブジェクト33を配置してもよい。換言すると、ゲーム進行部113は、プレイヤキャラクタ31の位置よりも移動方向前方かつ目的地36の方向に位置する所定位置を中心とする所定の範囲X内に特定オブジェクト33を配置してもよい。なお、目的地36は、例えば、ゲームにおいて所定のミッションを達成する毎に設定(例えば、自動で設定あるいはユーザにより設定)される等してもよい。このような構成によれば、目的地に向かって直接的な案内がされることによりゲームの興趣性が低下してしまうことを防止しつつ、自然な形でユーザを目的地に向かって誘導することが可能となる。
【0090】
(オブジェクトの配置に係る処理)
次に、プレイヤキャラクタ31の移動方向に基づいて仮想空間上に特定オブジェクト33を配置する処理の一例について、
図5に示すフローチャートを参照しながら説明する。
【0091】
まず、ゲーム進行部113は、プレイヤキャラクタ31の移動方向を特定する(ステップS101)。
【0092】
次いで、ゲーム進行部113は、サーバ20に対して特定オブジェクト33のデータの送信を要求し、プレイヤキャラクタ31の移動方向に基づいて決まる仮想空間上の所定の範囲X内の特定オブジェクト33のデータを取得する(ステップS102)。
【0093】
次いで、ゲーム進行部113は、ステップS102で取得したデータに基づいて、仮想空間上の所定の範囲X内に特定オブジェクト33を配置する(ステップS103)。
【0094】
次いで、ゲーム進行部113は、特定オブジェクトが配置された仮想空間の画像を表示部18に表示させるよう表示制御部114に指示する(ステップS104)。具体的には、表示制御部114は、ゲーム進行部113の指示に応じて、特定オブジェクト33が配置された仮想空間のうちの、仮想カメラの視野領域に含まれる部分の画像を表示部18に表示させる。
【0095】
なお、ゲーム進行部113は、所定の間隔でステップS101~ステップS104の処理を繰り返し行う。すなわち、所定の範囲Xは、プレイヤキャラクタ31の移動に応じて変化する。
【0096】
なお、本実施形態に係る構成は、ロールプレイングゲームやFPS等の敵キャラクタと戦うゲーム、レースゲーム、アドベンチャーゲーム、現実世界におけるユーザの位置と仮想空間上のキャラクタの位置とが連動するゲーム、仮想空間上で所定の観戦、鑑賞を行うゲーム、および仮想空間上で他のユーザとの交流が可能なゲーム等を含むいずれのゲームに適用されてもよい。本実施形態に係る構成は、キャラクタが移動可能な仮想空間を提供するシステムに適用することができる。
【0097】
なお、本発明は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変形して実施できる。本発明はその発明の範囲内において、各構成要素の自由な組み合わせ、任意の構成要素の変形、または任意の構成要素の省略等が可能である。また、本明細書において説明した処理の流れはあくまで一例であり、各処理の順序や構成は異なるものであってもよい。
【0098】
<付記>
以上の実施形態で説明した事項は、以下の付記のようにも記載され得る。
【0099】
(付記1)
コンピュータを、
ユーザからの情報に基づいて仮想空間上でキャラクタを移動させる移動手段(例えば、ゲーム進行部113)と、
前記キャラクタの移動方向を特定する特定手段(例えば、ゲーム進行部113)と、
前記特定手段によって特定された、前記キャラクタの移動方向に基づいて、前記仮想空間上に所定のオブジェクトを配置する配置手段(例えば、ゲーム進行部113)と、
前記所定のオブジェクトが配置された前記仮想空間の画像を表示手段に表示させる表示制御手段(例えば、表示制御部114)と、として機能させる
プログラム。
このような構成によれば、所定のオブジェクトがキャラクタの移動方向に基づいて配置されるので、ユーザが所定のオブジェクトに遭遇しやすくなる。したがって、ゲームの興趣性を向上させることができる。
【0100】
(付記2)
前記配置手段は、所定のタイミングでサーバに対して前記所定のオブジェクトのデータの送信を要求し、前記要求に基づいて、前記キャラクタの移動方向に基づいて決まる前記仮想空間上の所定の範囲内の前記所定のオブジェクトのデータを取得し、取得したデータに基づいて前記所定の範囲内に前記所定のオブジェクトを配置する
付記1に記載のプログラム。
このような構成によれば、例えば、移動方向前方のオブジェクト等のユーザに対して優先して提供すべきオブジェクトについてのデータを取得し、優先度の低いオブジェクトについてのデータの取得を避けることができるので、所定のオブジェクトを配置する処理の負荷を低減させることができる。
【0101】
(付記3)
前記配置手段は、前記キャラクタの移動速度に応じて、前記キャラクタの位置に対しての前記所定のオブジェクトを配置する範囲を変化させる
付記1または2に記載のプログラム。
このような構成によれば、キャラクタの移動速度に応じた位置に所定のオブジェクトが配置されるようになり、ユーザが所定のオブジェクトにより遭遇しやすくなる。したがって、ゲームの興趣性を向上させることができる。
【0102】
(付記4)
前記配置手段は、前記キャラクタの所定のパラメータが所定の条件を満たした場合に前記所定のオブジェクトの前記仮想空間上への配置を行う
付記1または2に記載のプログラム。
このような構成によれば、キャラクタのパラメータが所定の条件を満たす状況において、当該状況に適したオブジェクトの提供を、キャラクタの移動方向に基づいて行うことができる。したがって、ゲームの興趣性を向上させることができる。
【0103】
(付記5)
前記配置手段は、前記キャラクタの移動方向と、前記キャラクタが向かう目的地の方向とに基づいて、前記仮想空間上に前記所定のオブジェクトを配置する
付記1または2に記載のプログラム。
このような構成によれば、目的地に向かって直接的な案内がされることによりゲームの興趣性が低下してしまうことを防止しつつ、自然な形でユーザを目的地に向かって誘導することが可能となる。
【0104】
(付記6)
ユーザからの情報に基づいて仮想空間上でキャラクタを移動させる移動手段(例えば、ゲーム進行部113)と、
前記キャラクタの移動方向を特定する特定手段(例えば、ゲーム進行部113)と、
前記特定手段によって特定された、前記キャラクタの移動方向に基づいて、前記仮想空間上に所定のオブジェクトを配置する配置手段(例えば、ゲーム進行部113)と、
前記所定のオブジェクトが配置された前記仮想空間の画像を表示手段に表示させる表示制御手段(例えば、表示制御部114)と、を備える
情報処理システム。
このような構成によれば、付記1に記載のプログラムと同様の作用効果を奏することができる。
【符号の説明】
【0105】
1 情報処理システム、2 ネットワーク、10 端末装置、11 プロセッサ、12 メモリ、13 ストレージ、17 入力部、18 表示部、20 サーバ、21 プロセッサ、22 メモリ、23 ストレージ、31 プレイヤキャラクタ、33 特定オブジェクト、36 目的地、110 制御部、111 操作受付部、112 送受信部、113 ゲーム進行部、114 表示制御部、120 記憶部、210 制御部、211 送受信部、212 サーバ処理部、213 データ管理部、214 同期処理部、220 記憶部