(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-07
(45)【発行日】2023-12-15
(54)【発明の名称】処理装置、処理方法及びプログラム
(51)【国際特許分類】
A63F 13/53 20140101AFI20231208BHJP
A63F 13/5255 20140101ALI20231208BHJP
A63F 13/5252 20140101ALI20231208BHJP
G06T 19/00 20110101ALI20231208BHJP
【FI】
A63F13/53
A63F13/5255
A63F13/5252
G06T19/00 300A
(21)【出願番号】P 2019209661
(22)【出願日】2019-11-20
【審査請求日】2022-10-14
(73)【特許権者】
【識別番号】511249637
【氏名又は名称】株式会社Cygames
(74)【代理人】
【識別番号】100110928
【氏名又は名称】速水 進治
(74)【代理人】
【識別番号】100127236
【氏名又は名称】天城 聡
(72)【発明者】
【氏名】黒籔 裕也
【審査官】前地 純一郎
(56)【参考文献】
【文献】特開2009-140237(JP,A)
【文献】特開2006-263122(JP,A)
【文献】特開2010-273987(JP,A)
【文献】特開2005-270342(JP,A)
【文献】特開2007-164582(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-13/98
A63F 9/24
(57)【特許請求の範囲】
【請求項1】
コンピュータを、
操作対象オブジェクトの所定のパラメータの値を示すパラメータ情報を記憶するパラメータ情報記憶部、
仮想空間における前記操作対象オブジェクトの位置を示す位置情報を記憶する位置情報記憶部、
プレイヤが入力した入力データに基づき前記位置情報を更新する位置情報更新部、
前記操作対象オブジェクトを撮影する第1の仮想カメラの前記仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶する第1の仮想カメラ情報記憶部、
プレイヤが入力した入力データに基づき前記第1の仮想カメラ情報を更新する第1の仮想カメラ情報更新部、
前記位置情報で示される前記操作対象オブジェクトの位置における環境光である基準環境光に基づき生成された参照環境光と、前記参照環境光下に置かれた表示オブジェクトを撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶する参照環境光情報記憶部、
前記第1の仮想カメラ情報の更新に基づき前記参照環境光情報を更新する参照環境光情報更新部、
前記位置情報で示される位置に存在する前記操作対象オブジェクトを、前記第1の仮想カメラ情報で示される位置に存在し、かつ、前記第1の仮想カメラ情報で示される向きとなった前記第1の仮想カメラで撮影した第1の画像を生成する第1の画像生成部、
前記参照環境光下に置かれた前記表示オブジェクトを、前記参照環境光に対する撮影方向の相対的な向きが前記参照環境光情報で特定される状態となった前記第2の仮想カメラで撮影した第2の画像を生成する第2の画像生成部、
前記第1の画像と、前記第2の画像内の前記表示オブジェクトの画像とを含み、前記表示オブジェクトで前記所定のパラメータの値を示したゲーム画面を生成するゲーム画面生成部、
として機能させるプログラム。
【請求項2】
請求項1に記載のプログラムにおいて、
前記第2の仮想カメラの撮影方向は固定されており、前記参照環境光情報は前記参照環境光の基準状態からの回転量を示し、
前記参照環境光情報更新部は、前記第1の仮想カメラの向きの変化量に基づき、前記回転量を更新するプログラム。
【請求項3】
請求項2に記載のプログラムにおいて、
前記参照環境光下に置かれた前記表示オブジェクトの向きは固定されているプログラム。
【請求項4】
請求項1から3のいずれか1項に記載のプログラムにおいて、
前記第2の画像生成部は、前記基準環境光を前記参照環境光とするか、又は、前記基準環境光の光の強度を調整したものを前記参照環境光とするプログラム。
【請求項5】
請求項4に記載のプログラムにおいて、
前記第2の画像生成部は、前記仮想空間の時刻情報に基づき、前記参照環境光の光の強度を調整するプログラム。
【請求項6】
請求項4又は5に記載のプログラムにおいて、
前記第2の画像生成部は、前記操作対象オブジェクトが存在する位置の環境に基づき、前記参照環境光の光の強度を調整するプログラム。
【請求項7】
請求項1から6のいずれか1項に記載のプログラムにおいて、
前記ゲーム画面生成部は、前記表示オブジェクトで前記操作対象オブジェクトのヒットポイントを示した前記ゲーム画面を生成するプログラム。
【請求項8】
操作対象オブジェクトの所定のパラメータの値を示すパラメータ情報を記憶するパラメータ情報記憶部と、
仮想空間における前記操作対象オブジェクトの位置を示す位置情報を記憶する位置情報記憶部と、
プレイヤが入力した入力データに基づき前記位置情報を更新する位置情報更新部と、
前記操作対象オブジェクトを撮影する第1の仮想カメラの前記仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶する第1の仮想カメラ情報記憶部と、
プレイヤが入力した入力データに基づき前記第1の仮想カメラ情報を更新する第1の仮想カメラ情報更新部と、
前記位置情報で示される前記操作対象オブジェクトの位置における環境光である基準環境光に基づき生成された参照環境光と、前記参照環境光下に置かれた表示オブジェクトを撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶する参照環境光情報記憶部と、
前記第1の仮想カメラ情報の更新に基づき前記参照環境光情報を更新する参照環境光情報更新部と、
前記位置情報で示される位置に存在する前記操作対象オブジェクトを、前記第1の仮想カメラ情報で示される位置に存在し、かつ、前記第1の仮想カメラ情報で示される向きとなった前記第1の仮想カメラで撮影した第1の画像を生成する第1の画像生成部と、
前記参照環境光下に置かれた前記表示オブジェクトを、前記参照環境光に対する撮影方向の相対的な向きが前記参照環境光情報で特定される状態となった前記第2の仮想カメラで撮影した第2の画像を生成する第2の画像生成部と、
前記第1の画像と、前記第2の画像内の前記表示オブジェクトの画像とを含み、前記表示オブジェクトで前記所定のパラメータの値を示したゲーム画面を生成するゲーム画面生成部と、
を有する処理装置。
【請求項9】
コンピュータが、
操作対象オブジェクトの所定のパラメータの値を示すパラメータ情報を記憶し、
仮想空間における前記操作対象オブジェクトの位置を示す位置情報を記憶し、
プレイヤが入力した入力データに基づき前記位置情報を更新し、
前記操作対象オブジェクトを撮影する第1の仮想カメラの前記仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶し、
プレイヤが入力した入力データに基づき前記第1の仮想カメラ情報を更新し、
前記位置情報で示される前記操作対象オブジェクトの位置における環境光である基準環境光に基づき生成された参照環境光と、前記参照環境光下に置かれた表示オブジェクトを撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶し、
前記第1の仮想カメラ情報の更新に基づき前記参照環境光情報を更新し、
前記位置情報で示される位置に存在する前記操作対象オブジェクトを、前記第1の仮想カメラ情報で示される位置に存在し、かつ、前記第1の仮想カメラ情報で示される向きとなった前記第1の仮想カメラで撮影した第1の画像を生成し、
前記参照環境光下に置かれた前記表示オブジェクトを、前記参照環境光に対する撮影方向の相対的な向きが前記参照環境光情報で特定される状態となった前記第2の仮想カメラで撮影した第2の画像を生成し、
前記第1の画像と、前記第2の画像内の前記表示オブジェクトの画像とを含み、前記表示オブジェクトで前記所定のパラメータの値を示したゲーム画面を生成する処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、処理装置、処理方法及びプログラムに関する。
【背景技術】
【0002】
特許文献1は、自機(プレーヤの操作対象の機体)の位置や敵機との位置関係等を示すレーダーマップ画像を画面に表示する技術を開示している。非特許文献1及び2は、IBL(image-based lighting)に関する技術を開示している。特に、非特許文献1は、任意の画像から光源を求め、その環境下に置かれたモデルへの当該光源の映り込みを示した360°画像を生成する手段を開示している。
【先行技術文献】
【特許文献】
【0003】
【非特許文献】
【0004】
【文献】“UnityでIBL(イメージドベースドライティング)、実写から光源を求める”、[Online]、2014年6月28日、[2019年10月31日検索]、インターネット<URL: http://tsubakit1.hateblo.jp/entry/20140628/1403893615>
【文献】“画像を光源(ライト)として活用する~環境ライティング”、[Online]、[2019年10月31日検索]、インターネット<URL: http://3dcg.homeip.net/3d_reading/light_camera_render/global_light/01_e.php>
【発明の概要】
【発明が解決しようとする課題】
【0005】
オープンワールド系の3Dゲームでは、プレイヤは、操作対象オブジェクトの位置の制御(仮想カメラの位置制御)、及び、操作対象オブジェクトの視線方向の制御(仮想カメラの向き制御)という2つの制御により、操作対象オブジェクトが存在する仮想空間の中の所望の位置を画面に映して視認することができる。しかし、ゲームに慣れてないプレイヤにとって当該操作は難しいタスクとなっていた。例えば、仮想カメラの向きを変更すると、方向感覚を失ってしまい、仮想空間の中のどの方向を向いているのか直感的に把握するのが困難になる場合等があった。
【0006】
そこで、仮想カメラの向きを示す情報を画面に表示する技術が存在する。例えば、特許文献1は、レーダーマップにおいてPMにカメラの向いている方向(プレイヤーの視線方向)を示す表示を行うこと技術を開示している。しかし、ゲームに慣れてないプレイヤは、画面に表示されている仮想カメラの向きを示す情報を見落としたり、ゲーム中にそれを見る余裕がなかったりする。このため、単に仮想カメラの向きを示す情報を画面に表示するだけでは、上記問題を解決できない。
【0007】
本発明の課題は、プレイヤが仮想カメラの向きを把握し易くなる技術を提供することである。
【課題を解決するための手段】
【0008】
本発明によれば、
コンピュータを、
操作対象オブジェクトの所定のパラメータの値を示すパラメータ情報を記憶するパラメータ情報記憶部、
仮想空間における前記操作対象オブジェクトの位置を示す位置情報を記憶する位置情報記憶部、
プレイヤが入力した入力データに基づき前記位置情報を更新する位置情報更新部、
前記操作対象オブジェクトを撮影する第1の仮想カメラの前記仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶する第1の仮想カメラ情報記憶部、
プレイヤが入力した入力データに基づき前記第1の仮想カメラ情報を更新する第1の仮想カメラ情報更新部、
前記位置情報で示される前記操作対象オブジェクトの位置における環境光である基準環境光に基づき生成された参照環境光と、前記参照環境光下に置かれた表示オブジェクトを撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶する参照環境光情報記憶部、
前記第1の仮想カメラ情報の更新に基づき前記参照環境光情報を更新する参照環境光情報更新部、
前記位置情報で示される位置に存在する前記操作対象オブジェクトを、前記第1の仮想カメラ情報で示される位置に存在し、かつ、前記第1の仮想カメラ情報で示される向きとなった前記第1の仮想カメラで撮影した第1の画像を生成する第1の画像生成部、
前記参照環境光下に置かれた前記表示オブジェクトを、前記参照環境光に対する撮影方向の相対的な向きが前記参照環境光情報で特定される状態となった前記第2の仮想カメラで撮影した第2の画像を生成する第2の画像生成部、
前記第1の画像と、前記第2の画像内の前記表示オブジェクトの画像とを含み、前記表示オブジェクトで前記所定のパラメータの値を示したゲーム画面を生成するゲーム画面生成部、
として機能させるプログラムが提供される。
【0009】
また、本発明によれば、
操作対象オブジェクトの所定のパラメータの値を示すパラメータ情報を記憶するパラメータ情報記憶部と、
仮想空間における前記操作対象オブジェクトの位置を示す位置情報を記憶する位置情報記憶部と、
プレイヤが入力した入力データに基づき前記位置情報を更新する位置情報更新部と、
前記操作対象オブジェクトを撮影する第1の仮想カメラの前記仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶する第1の仮想カメラ情報記憶部と、
プレイヤが入力した入力データに基づき前記第1の仮想カメラ情報を更新する第1の仮想カメラ情報更新部と、
前記位置情報で示される前記操作対象オブジェクトの位置における環境光である基準環境光に基づき生成された参照環境光と、前記参照環境光下に置かれた表示オブジェクトを撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶する参照環境光情報記憶部と、
前記第1の仮想カメラ情報の更新に基づき前記参照環境光情報を更新する参照環境光情報更新部と、
前記位置情報で示される位置に存在する前記操作対象オブジェクトを、前記第1の仮想カメラ情報で示される位置に存在し、かつ、前記第1の仮想カメラ情報で示される向きとなった前記第1の仮想カメラで撮影した第1の画像を生成する第1の画像生成部と、
前記参照環境光下に置かれた前記表示オブジェクトを、前記参照環境光に対する撮影方向の相対的な向きが前記参照環境光情報で特定される状態となった前記第2の仮想カメラで撮影した第2の画像を生成する第2の画像生成部と、
前記第1の画像と、前記第2の画像内の前記表示オブジェクトの画像とを含み、前記表示オブジェクトで前記所定のパラメータの値を示したゲーム画面を生成するゲーム画面生成部と、
を有する処理装置が提供される。
【0010】
また、本発明によれば、
コンピュータが、
操作対象オブジェクトの所定のパラメータの値を示すパラメータ情報を記憶し、
仮想空間における前記操作対象オブジェクトの位置を示す位置情報を記憶し、
プレイヤが入力した入力データに基づき前記位置情報を更新し、
前記操作対象オブジェクトを撮影する第1の仮想カメラの前記仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶し、
プレイヤが入力した入力データに基づき前記第1の仮想カメラ情報を更新し、
前記位置情報で示される前記操作対象オブジェクトの位置における環境光である基準環境光に基づき生成された参照環境光と、前記参照環境光下に置かれた表示オブジェクトを撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶し、
前記第1の仮想カメラ情報の更新に基づき前記参照環境光情報を更新し、
前記位置情報で示される位置に存在する前記操作対象オブジェクトを、前記第1の仮想カメラ情報で示される位置に存在し、かつ、前記第1の仮想カメラ情報で示される向きとなった前記第1の仮想カメラで撮影した第1の画像を生成し、
前記参照環境光下に置かれた前記表示オブジェクトを、前記参照環境光に対する撮影方向の相対的な向きが前記参照環境光情報で特定される状態となった前記第2の仮想カメラで撮影した第2の画像を生成し、
前記第1の画像と、前記第2の画像内の前記表示オブジェクトの画像とを含み、前記表示オブジェクトで前記所定のパラメータの値を示したゲーム画面を生成する処理方法が提供される。
【発明の効果】
【0011】
本発明によれば、プレイヤが仮想カメラの向きを把握し易くなる。
【図面の簡単な説明】
【0012】
【
図1】本実施形態の処理装置が生成するゲーム画面の一例を示す図である。
【
図2】本実施形態の処理装置のハードウエア構成の一例を示す図である。
【
図3】本実施形態の処理装置の機能ブロック図の一例である。
【
図4】本実施形態の処理装置が処理する情報の一例を模式的に示す図である。
【
図5】本実施形態の処理装置の処理を説明するための図である。
【
図6】本実施形態の処理装置の処理を説明するための図である。
【
図7】本実施形態の処理装置の処理を説明するための図である。
【
図8】本実施形態の処理装置の処理を説明するための図である。
【
図9】本実施形態の処理装置の処理を説明するための図である。
【
図10】本実施形態の処理装置の処理を説明するための図である。
【
図11】本実施形態の処理装置の処理を説明するための図である。
【
図12】本実施形態の処理装置の処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【0013】
<概要>
まず、本実施形態の処理装置の概要を説明する。
図1に、処理装置が生成するゲーム画面Dの一例を示す。図示する例は、操作対象オブジェクト1を後方から見たゲーム画面Dである。当該ゲーム画面Dには、表示オブジェクト3が表示されている。図では明示されていないが、表示オブジェクト3には、操作対象オブジェクト1が存在する位置の環境光に基づくスペキュラが表示される。スペキュラは、物体に光源自身が映り込んでできるハイライトのことであり、物体と光源との相対的な位置や向きの関係等により多様に変化する。
【0014】
本実施形態の処理装置によれば、プレイヤ操作に応じて操作対象オブジェクト1の視線方向、すなわち仮想カメラの向きが変化すると、それに応じて、ゲーム画面Dの表示内容(ゲーム画面Dに映る景色)が変化するとともに、表示オブジェクト3におけるスペキュラの表示内容が変化する。このような表示オブジェクト3のスペキュラを視認することで、プレイヤは、仮想空間の中のどの方向を向いているのか直感的に把握し易くなる。
【0015】
ところで、仮想空間内に表示オブジェクト3を存在させておけば、仮想カメラにより生成される画像の中に仮想カメラの向きに応じたスペキュラを示す表示オブジェクト3を含めることができる。しかし、操作対象オブジェクト1の位置や視線方向に関わらず、常に画像に表示オブジェクト3を含めるためには、仮想空間のあらゆる位置に表示オブジェクト3を存在させる必要がある。このような状況となった仮想空間は不自然である。また、仮想空間の所定の位置に表示オブジェクト3を固定しておく場合、操作対象オブジェクト1の位置や視線方向に応じて、ゲーム画面D内における表示オブジェクト3の位置が変化する。このように、ゲーム画面D内における表示オブジェクト3の位置が変化すると、表示オブジェクト3に表示されたスペキュラを視認するのが難しくなる。
【0016】
このような課題を解決するため、処理装置は、仮想空間とは別に、操作対象オブジェクト1が存在する位置の環境光を模擬した別の空間を用意し、その別の空間に表示オブジェクト3を位置させ、仮想カメラで撮影する。そして、処理装置は、仮想空間に存在する操作対象オブジェクト1を撮影して生成された画像と、上記別の空間に位置する表示オブジェクト3を撮影して生成された画像とに基づき、
図1に示すようなゲーム画面Dを生成する。なお、表示オブジェクト3は仮想空間に存在する物体ではないため、ゲーム画面Dの中の表示位置に特に制限がなく、任意の位置に配置することができる。そこで、例えば、
図1に示すように、ゲームの進行等の妨げにならないゲーム画面Dの端等に表示オブジェクト3を配置することができる。また、操作対象オブジェクト1の移動や視線方向の変化に応じてゲーム画面Dに表示される仮想空間の内容が変化しても、ゲーム画面Dの中の任意の位置(例:ゲーム画面Dの端)に表示オブジェクト3を位置させ続けることができる。このような処理装置によれば、上述した仮想空間内に表示オブジェクト3を存在させる手法の課題を解決することができる。
【0017】
また、処理装置は、
図1に示すように、操作対象オブジェクト1のヒットポイントを表示オブジェクト3に表示する(図中の「110」)。このように、処理装置は、限られた大きさのエリアを有効に活用して各種情報を表示したゲーム画面Dを生成することができる。また、ゲーム中にプレイヤが最も注目するパラメータの1つであるヒットポイントを表示オブジェクト3に表示することで、プレイヤの視線を表示オブジェクト3に誘導し易くなる。
【0018】
<ハードウエア構成>
次に、処理装置の構成を詳細に説明する。処理装置は、クライアント-サーバ型のゲームシステムのクライアント端末であってもよいし、サーバであってもよい。また、処理装置は、プレイヤからの入力を受付ける入力部、入力内容に基づき演算する演算部、及び、ゲーム画面を表示するディスプレイ等を有する装置であってもよい。また、処理装置は、入力部及び演算部を有し、外部接続されたディスプレイ(例:テレビ等)にゲーム画面を表示する装置であってもよい。
【0019】
処理装置の各機能部は、任意のコンピュータのCPU(Central Processing Unit)、メモリ、メモリにロードされるプログラム、そのプログラムを格納するハードディスク等の記憶ユニット(あらかじめ装置を出荷する段階から格納されているプログラムのほか、CD(Compact Disc)等の記憶媒体やインターネット上のサーバ等からダウンロードされたプログラムをも格納できる)、ネットワーク接続用インターフェイスを中心にハードウエアとソフトウエアの任意の組合せによって実現される。そして、その実現方法、装置にはいろいろな変形例があることは、当業者には理解されるところである。
【0020】
図2は、処理装置のハードウエア構成を例示するブロック図である。
図2に示すように、処理装置は、プロセッサ1A、メモリ2A、入出力インターフェイス3A、周辺回路4A、バス5Aを有する。周辺回路4Aには、様々なモジュールが含まれる。処理装置は周辺回路4Aを有さなくてもよい。なお、処理装置は物理的及び/又は論理的に分かれた複数の装置で構成されてもよいし、物理的及び/又は論理的に一体となった1つの装置で構成されてもよい。処理装置が物理的及び/又は論理的に分かれた複数の装置で構成される場合、複数の装置各々が上記ハードウエア構成を備えることができる。
【0021】
バス5Aは、プロセッサ1A、メモリ2A、周辺回路4A及び入出力インターフェイス3Aが相互にデータを送受信するためのデータ伝送路である。プロセッサ1Aは、例えばCPU、GPU(Graphics Processing Unit)などの演算処理装置である。メモリ2Aは、例えばRAM(Random Access Memory)やROM(Read Only Memory)などのメモリである。入出力インターフェイス3Aは、入力装置、外部装置、外部サーバ、外部センサ、カメラ等から情報を取得するためのインターフェイスや、出力装置、外部装置、外部サーバ等に情報を出力するためのインターフェイスなどを含む。入力装置は、例えばキーボード、マウス、マイク、物理ボタン、タッチパネル、ゲームコントローラ(ジョイスティック、アナログスティック等)等である。出力装置は、例えばディスプレイ、スピーカ、プリンター、メーラ等である。プロセッサ1Aは、各モジュールに指令を出し、それらの演算結果をもとに演算を行うことができる。
【0022】
<機能構成>
次に、処理装置の機能構成を説明する。
図3に、処理装置100の機能ブロック図の一例を示す。図示するように、処理装置100は、入力データ取得部101と、パラメータ情報更新部102と、パラメータ情報記憶部103と、位置情報更新部104と、位置情報記憶部105と、第1の仮想カメラ情報更新部106と、第1の仮想カメラ情報記憶部107と、参照環境光情報更新部108と、参照環境光情報記憶部109と、第1の画像生成部110と、第2の画像生成部111と、ゲーム画面生成部112と、出力部113とを有する。
【0023】
入力データ取得部101は、入力装置を介してプレイヤが入力した入力データを取得する。入力装置は、タッチパネル、コントローラ、キーボード、マウス、マイク、物理ボタン等が例示されるが、これらに限定されない。例えば、処理装置100にこれらの入力装置が接続されており、入力データ取得部101は、入力装置から入力データを取得してもよい。その他、外部装置にこれらの入力装置が接続されており、入力データ取得部101は、当該外部装置が送信してきた入力データを取得してもよい。
【0024】
パラメータ情報記憶部103は、操作対象オブジェクト1の所定のパラメータの値を示すパラメータ情報を記憶する。所定のパラメータは、ゲームの進行に応じて増加及び/又は減少するパラメータであり、例えば、ヒットポイント、攻撃力、防御力等が例示されるがこれらに限定されない。
図4にパラメータ情報の一例を模式的に示す。
【0025】
パラメータ情報更新部102は、プレイヤが入力した入力データに基づきパラメータ情報を更新する。その実現手段やアルゴリズムは特段制限されず、周知のあらゆる技術を採用して設計することができる。
【0026】
位置情報記憶部105は、仮想空間における操作対象オブジェクト1の位置及び向きを示す位置情報を記憶する。
図4に位置情報の一例を模式的に示す。操作対象オブジェクト1の位置は、仮想空間に設定された3次元座標系の座標により示すことができる。操作対象オブジェクト1の向きは、例えば、3次元座標系の軸回りの回転角度で示されてもよいし、単位ベクトルで示されてもよい。
【0027】
位置情報更新部104は、プレイヤが入力した入力データに基づき位置情報を更新する。その実現手段やアルゴリズムは特段制限されず、周知のあらゆる技術を採用して設計することができる。
【0028】
第1の仮想カメラ情報記憶部107は、操作対象オブジェクト1を撮影する第1の仮想カメラの仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶する。例えば、
図1に示すようなゲーム画面Dは、
図5に示すような状態となった第1の仮想カメラ2により生成された画像に基づき生成される。
図4に第1の仮想カメラ情報の一例を模式的に示す。第1の仮想カメラ2の位置は、仮想空間に設定された3次元座標系の座標により示すことができる。第1の仮想カメラ2の向きは、例えば、3次元座標系の軸回りの回転角度で示されてもよいし、単位ベクトルで示されてもよい。なお、本実施形態では、
図5に示すように、仮想空間の鉛直方向をy軸方向とし、水平方向をx軸方向及びz軸方向とするが、これに限定されない。
【0029】
第1の仮想カメラ情報更新部106は、プレイヤが入力した入力データに基づき第1の仮想カメラ情報を更新する。具体的には、第1の仮想カメラ情報更新部106は、プレイヤが入力した入力データに基づき上述した操作対象オブジェクト1の位置情報が更新されると、それに基づき第1の仮想カメラ情報を更新する。その実現手段やアルゴリズムは特段制限されず、周知のあらゆる技術を採用して設計することができる。
【0030】
参照環境光情報記憶部109は、参照環境光と、参照環境光下に置かれた表示オブジェクト3を撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶する。参照環境光は、上記位置情報で示される操作対象オブジェクト1の位置における環境光(基準環境光)に基づき生成された環境光、すなわち基準環境光を模擬した環境光である。その詳細は、後述する。
【0031】
図6に、参照環境光と、参照環境光下に置かれた表示オブジェクト3と、当該表示オブジェクト3を撮影する第2の仮想カメラ4との関係を示す。第2の仮想カメラ4及び表示オブジェクト3の位置及び向きは固定される。そして、
図6乃至
図8に示すように、参照環境光は所定の位置を中心に回転可能に構成される。この場合、参照環境光と、第2の仮想カメラ4の撮影方向との相対的な向きを特定するための参照環境光情報は、例えば、参照環境光の回転角度(y軸回りの回転角度)とすることができる(
図4参照)。すなわち、参照環境光が基準状態からy軸回りにどれだけ回転しているかにより、参照環境光と第2の仮想カメラ4の撮影方向との相対的な向きが特定される。
【0032】
図3に戻り、参照環境光情報更新部108は、第1の仮想カメラ情報の更新に基づき参照環境光情報を更新する。具体的には、参照環境光情報更新部108は、第1の仮想カメラの向きがy軸回りに回転すると、それに応じて、参照環境光情報を更新する。
【0033】
ここで、
図6乃至
図11を用いて、参照環境光情報更新部108による処理例を説明する。
図9乃至
図11は、操作対象オブジェクト1と、第1の仮想カメラ2と、操作対象オブジェクト1が存在する位置の環境光(基準環境光)との関係を示す。
【0034】
例えば、
図9→
図10のように、プレイヤ操作に応じて第1の仮想カメラ2の向きがy軸周りを反時計回りに45°回転すると、それに応じて、
図6→
図7に示すように、参照環境光がy軸周りを時計回りに45°回転する。そして、
図10→
図11のように、プレイヤ操作に応じて第1の仮想カメラ2の向きがy軸周りを反時計回りにさらに45°回転すると、それに応じて、
図7→
図8に示すように、参照環境光がy軸周りを時計回りにさらに45°回転する。
【0035】
また、
図11→
図10のように、プレイヤ操作に応じて第1の仮想カメラ2の向きがy軸周りを時計回りに45°回転すると、それに応じて、
図8→
図7に示すように、参照環境光がy軸周りを反時計回りに45°回転する。そして、
図10→
図9のように、プレイヤ操作に応じて第1の仮想カメラ2の向きがy軸周りを時計回りにさらに45°回転すると、それに応じて、
図7→
図6に示すように、参照環境光がy軸周りを反時計回りにさらに45°回転する。
【0036】
このような関係性に基づいて、参照環境光情報更新部108は、第1の仮想カメラ情報の更新に基づき参照環境光情報を更新する。このように、第2の仮想カメラ4の撮影方向及び表示オブジェクト3の向きが固定されている本実施形態では、参照環境光情報は参照環境光の基準状態からの回転量を示し、参照環境光情報更新部108は、第1の仮想カメラ2の向きの変化量に基づき、参照環境光情報が示す上記回転量を更新する。
【0037】
なお、
図9乃至
図11では、プレイヤ操作に応じて第1の仮想カメラ2が操作対象オブジェクト1の周囲を回転移動することで第1の仮想カメラ2の向きが変化する例を示した。しかし、これはあくまで一例であり、これに限定されない。その他の例として、例えば、プレイヤ操作に応じて第1の仮想カメラ2がその場で回転することで第1の仮想カメラ2の向きが変更する例等が挙げられる。
【0038】
図3に戻り、第1の画像生成部110は、上記位置情報で示される位置に存在する操作対象オブジェクト1を、第1の仮想カメラ情報で示される位置に存在し、かつ、第1の仮想カメラ情報で示される向きとなった第1の仮想カメラ2で撮影した第1の画像を生成する。第1の画像生成部110の構成は、周知のあらゆる技術を採用できる。
【0039】
第2の画像生成部111は、参照環境光下に置かれた表示オブジェクト3を、参照環境光に対する撮影方向の相対的な向きが参照環境光情報で特定される状態となった第2の仮想カメラ4で撮影した第2の画像を生成する。
【0040】
上述の通り、参照環境光は、上記位置情報で示される操作対象オブジェクト1の位置における環境光(基準環境光)に基づき生成された環境光、すなわち基準環境光を模擬した環境光である。例えば、第2の画像生成部111は、IBL(イメージドベースドライティング)の技術を用いて、第1の仮想カメラ2が生成した画像から光源(基準環境光)を求めることができる。そして、第2の画像生成部111は、当該基準光から参照境光を求めることができる。
【0041】
第2の画像生成部111は、基準環境光をそのまま参照環境光としてもよいし、又は、基準環境光の光の強度を調整したものを参照環境光としてもよい。例えば、第2の画像生成部111は、仮想空間の時刻情報に基づき、参照環境光の光の強度を調整してもよい。一例として、夜の時間帯には参照環境光の光の強度を基準環境光の光の強度よりも弱くしてもよい。また、昼の時間帯には参照環境光の光の強度を基準環境光の光の強度よりも強くしてもよい。
【0042】
また、第2の画像生成部111は、操作対象オブジェクト1が存在する位置の環境に基づき、参照環境光の光の強度を調整してもよい。例えば、操作対象オブジェクト1が、洞窟の中や家の中など、外部環境に比べて暗い環境にいる場合、第2の画像生成部111は、参照環境光の光の強度を基準環境光の光の強度よりも弱くしてもよい。
【0043】
そして、第2の画像生成部111は、このようにして生成した参照環光下に、向き及び位置を固定した表示オブジェクト3及び第2の仮想カメラ4を配置し、参照環境光情報に基づき参照環境光のy軸周りの回転量を調整しながら、第2の画像を生成することができる。
【0044】
ゲーム画面生成部112は、第1の画像と、第2の画像内の表示オブジェクト3の画像とを含み、表示オブジェクト3で操作対象オブジェクト1の所定のパラメータの値を示したゲーム画面を生成する。
【0045】
すなわち、ゲーム画面生成部112は、第2の画像の中から表示オブジェクト3が存在する領域を特定し、その部分を切り出す。そして、ゲーム画面生成部112は、第1の画像と、第2の画像から切り出した画像とを用いて、例えば、
図1に示すようなゲーム画面Dを生成する。例えば、ゲーム画面生成部112は、第1の画像に、第2の画像から切り出した画像を重畳して、ゲーム画面Dを生成してもよい。そして、第2の画像から切り出した画像を重畳する第1の画像上の位置は予め定められていてもよい。
【0046】
図3に戻り、出力部113は、ゲーム画面生成部112が生成したゲーム画面を出力する。例えば、処理装置100がクライアント-サーバ型のゲームシステムのサーバである場合、出力部113は、ゲーム画面をクライアント端末に送信する。また、処理装置100が、入力部、演算部及びディスプレイ等を有する装置である場合、出力部113は、ディスプレイにデータを入力し、ゲーム画面を表示させる。また、処理装置100が、入力部及び演算部を有し、外部接続されたディスプレイ(例:テレビ等)にゲーム画面を表示する装置である場合、出力部113は、外部接続されたディスプレイにデータを入力し、ゲーム画面を表示させる。
【0047】
<処理の流れ>
次に、
図12のフローチャートを用いて、処理装置100の処理の流れの一例を説明する。ここでは、プレイヤによる操作対象オブジェクト1の視線方向を変更する入力に基づき位置情報や第1の仮想カメラ情報が更新された場合に行われる処理の一例を説明する。
【0048】
まず、参照環境光情報更新部108は、第1の仮想カメラ情報の更新に基づき参照環境光情報を更新する(S10)。すなわち、
図6乃至
図8に示すように、第2の仮想カメラ4の撮影方向及び表示オブジェクト3の向きが固定され、参照環境光が回転する本実施形態では、参照環境光情報は参照環境光の基準状態からの回転量を示す。そして、参照環境光情報更新部108は、第1の仮想カメラ2の向きの変化量に基づき、参照環境光情報が示す上記回転量を更新する。
【0049】
次に、第1の画像生成部110及び第2の画像生成部111が、更新された位置情報、第1の仮想カメラ情報及び参照環境光情報に基づき、第1の画像及び第2の画像を生成する(S11)。
【0050】
すなわち、第1の画像生成部110は、位置情報で示される位置に存在する操作対象オブジェクト1を、第1の仮想カメラ情報で示される位置に存在し、かつ、第1の仮想カメラ情報で示される向きとなった第1の仮想カメラ2で撮影した第1の画像を生成する。
【0051】
また、第2の画像生成部111は、参照環境光下に置かれた表示オブジェクト3を、参照環境光に対する撮影方向の相対的な向きが参照環境光情報で特定される状態となった第2の仮想カメラ4で撮影した第2の画像を生成する。
【0052】
ついで、ゲーム画面生成部112が、S11で生成された第1の画像及び第2の画像に基づき、ゲーム画面を生成する(S12)。すなわち、ゲーム画面生成部112は、第2の画像の中から表示オブジェクト3が存在する領域を特定し、その部分を切り出す。そして、ゲーム画面生成部112は、第1の画像と、第2の画像から切り出した画像とを用いて、例えば、
図1に示すようなゲーム画面Dを生成する。例えば、ゲーム画面生成部112は、第1の画像に、第2の画像から切り出した画像を重畳して、ゲーム画面Dを生成してもよい。そして、第2の画像から切り出した画像を重畳する第1の画像上の位置は予め定められていてもよい。
【0053】
図示しないが、そのあと、出力部113は、ゲーム画面生成部112が生成したゲーム画面を出力する。
【0054】
<作用効果>
次に、処理装置100の作用効果を説明する。
【0055】
処理装置100は、操作対象オブジェクト1を存在する位置の環境光が映り込んだ表示オブジェクト3を、ゲーム画面上に表示することができる。そして、処理装置100は、プレイヤ操作に応じて操作対象オブジェクト1の視線方向、すなわち第1の仮想カメラ2の向きが変化すると、それに応じて、ゲーム画面Dの表示内容を変化させるとともに、表示オブジェクト3におけるスペキュラの表示内容を変化させることができる。このような表示オブジェクト3のスペキュラを視認することで、プレイヤは、仮想空間の中のどの方向を向いているのか直感的に把握し易くなる。
【0056】
ところで、仮想空間内に表示オブジェクト3を存在させておけば、第1の仮想カメラ2より生成される画像の中に第1の仮想カメラ2の向きに応じたスペキュラを示す表示オブジェクト3を含めることができる。しかし、操作対象オブジェクト1の位置や視線方向に関わらず、常に画像に表示オブジェクト3を含めるためには、仮想空間のあらゆる位置に表示オブジェクト3を存在させる必要がある。このような状況となった仮想空間は不自然である。また、仮想空間の所定の位置に表示オブジェクト3を固定しておく場合、操作対象オブジェクト1の位置や視線方向に応じて、ゲーム画面D内における表示オブジェクト3の位置が変化する。このように、ゲーム画面D内における表示オブジェクト3の位置が変化すると、表示オブジェクト3に表示されたスペキュラを視認するのが難しくなる。
【0057】
このような課題を解決するため、処理装置100は、操作対象オブジェクト1が存在する位置の環境光を模擬した仮想空間とは別の空間を用意し、その空間に表示オブジェクト3を位置させ、第2の仮想カメラ4で撮影する。そして、処理装置100は、仮想空間に存在する操作対象オブジェクト1を第1の仮想カメラ2で撮影して生成された画像と、上記別の空間に位置する表示オブジェクト3を第2の仮想カメラ4で撮影して生成された画像とに基づき、
図1に示すようなゲーム画面Dを生成する。なお、表示オブジェクト3は仮想空間に存在する物体ではないため、ゲーム画面Dの中の表示位置に特に制限がなく、任意の位置に配置することができる。そこで、例えば、
図1に示すように、ゲームの進行等の妨げにならないゲーム画面Dの端等に表示オブジェクト3を配置することができる。また、操作対象オブジェクト1の移動や視線方向の変化に応じてゲーム画面Dに表示される仮想空間の内容が変化しても、ゲーム画面Dの中の任意の位置(例:ゲーム画面Dの端)に表示オブジェクト3を位置させ続けることができる。このような処理装置100によれば、上述した仮想空間内に表示オブジェクト3を存在させる手法の課題を解決することができる。
【0058】
また、処理装置100は、
図1に示すように、操作対象オブジェクト1のヒットポイント(図中の「110」)を表示オブジェクト3に表示する。このように、処理装置100は、限られた大きさのエリアを有効に活用して各種情報を表示したゲーム画面Dを生成することができる。また、ゲーム中にプレイヤが最も注目するパラメータの1つであるヒットポイントを表示オブジェクト3に表示することで、プレイヤの視線を表示オブジェクト3に誘導し易くなる。
【0059】
また、処理装置100は、参照環境光の光の強度を、仮想空間の時刻情報や、操作対象オブジェクト1が存在する位置の環境等に基づき、調整することができる。結果、表示オブジェクト3に表示されたスペキュラが、時刻や環境に関わらず視認しやすくなる等の効果が得られる。
【0060】
<変形例>
ここで、処理装置100の変形例を説明する。上述した実施形態では、表示オブジェクト3にヒットポイントを表示したが、その他のパラメータの値を表示してもよい。例えば、攻撃力や守備力などのように操作対象オブジェクト1に関するパラメータの値を表示オブジェクト3に表示してもよいし、仮想空間における時刻等、操作対象オブジェクト1に直接関係しないパラメータの値を表示オブジェクト3に表示してもよい。
【0061】
また、上述した実施形態では、
図6乃至
図8に示すように、表示オブジェクト3及び第2の仮想カメラ4の位置及ぶ向きを固定し、参照環境光を回転させたが、変形例として、参照環境光を固定し、表示オブジェクト3の向き、及び、第2の仮想カメラ4の位置及び向きを変化させてもよい。
【0062】
また、上述した実施形態では表示オブジェクトの形状は球としたが、これに限定されず、その他の形状を採用することもできる。
【0063】
また、上述した実施形態では、いわゆるTPS(Third Person Shooter)ゲームとして記載されているが、FPS(First Person Shooter)ゲームにおいて本発明を適用してもよい。FPSゲームに適応した場合には本人(一人称)視点となる仮想カメラが第1の仮想カメラに相当する。
【0064】
これらの変形例においても、上述した実施形態と同様の作用効果が実現される。
【0065】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限定されない。
1. コンピュータを、
操作対象オブジェクトの所定のパラメータの値を示すパラメータ情報を記憶するパラメータ情報記憶部、
仮想空間における前記操作対象オブジェクトの位置を示す位置情報を記憶する位置情報記憶部、
プレイヤが入力した入力データに基づき前記位置情報を更新する位置情報更新部、
前記操作対象オブジェクトを撮影する第1の仮想カメラの前記仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶する第1の仮想カメラ情報記憶部、
プレイヤが入力した入力データに基づき前記第1の仮想カメラ情報を更新する第1の仮想カメラ情報更新部、
前記位置情報で示される前記操作対象オブジェクトの位置における環境光である基準環境光に基づき生成された参照環境光と、前記参照環境光下に置かれた表示オブジェクトを撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶する参照環境光情報記憶部、
前記第1の仮想カメラ情報の更新に基づき前記参照環境光情報を更新する参照環境光情報更新部、
前記位置情報で示される位置に存在する前記操作対象オブジェクトを、前記第1の仮想カメラ情報で示される位置に存在し、かつ、前記第1の仮想カメラ情報で示される向きとなった前記第1の仮想カメラで撮影した第1の画像を生成する第1の画像生成部、
前記参照環境光下に置かれた前記表示オブジェクトを、前記参照環境光に対する撮影方向の相対的な向きが前記参照環境光情報で特定される状態となった前記第2の仮想カメラで撮影した第2の画像を生成する第2の画像生成部、
前記第1の画像と、前記第2の画像内の前記表示オブジェクトの画像とを含み、前記表示オブジェクトで前記所定のパラメータの値を示したゲーム画面を生成するゲーム画面生成部、
として機能させるプログラム。
2. 1に記載のプログラムにおいて、
前記第2の仮想カメラの撮影方向は固定されており、前記参照環境光情報は前記参照環境光の基準状態からの回転量を示し、
前記参照環境光情報更新部は、前記第1の仮想カメラの向きの変化量に基づき、前記回転量を更新するプログラム。
3. 2に記載のプログラムにおいて、
前記参照環境光下に置かれた前記表示オブジェクトの向きは固定されているプログラム。
4. 1から3のいずれかに記載のプログラムにおいて、
前記第2の画像生成部は、前記基準環境光を前記参照環境光とするか、又は、前記基準環境光の光の強度を調整したものを前記参照環境光とするプログラム。
5. 4に記載のプログラムにおいて、
前記第2の画像生成部は、前記仮想空間の時刻情報に基づき、前記参照環境光の光の強度を調整するプログラム。
6. 4又は5に記載のプログラムにおいて、
前記第2の画像生成部は、前記操作対象オブジェクトが存在する位置の環境に基づき、前記参照環境光の光の強度を調整するプログラム。
7. 1から6のいずれかに記載のプログラムにおいて、
前記ゲーム画面生成部は、前記表示オブジェクトで前記操作対象オブジェクトのヒットポイントを示した前記ゲーム画面を生成するプログラム。
8. 操作対象オブジェクトの所定のパラメータの値を示すパラメータ情報を記憶するパラメータ情報記憶部と、
仮想空間における前記操作対象オブジェクトの位置を示す位置情報を記憶する位置情報記憶部と、
プレイヤが入力した入力データに基づき前記位置情報を更新する位置情報更新部と、
前記操作対象オブジェクトを撮影する第1の仮想カメラの前記仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶する第1の仮想カメラ情報記憶部と、
プレイヤが入力した入力データに基づき前記第1の仮想カメラ情報を更新する第1の仮想カメラ情報更新部と、
前記位置情報で示される前記操作対象オブジェクトの位置における環境光である基準環境光に基づき生成された参照環境光と、前記参照環境光下に置かれた表示オブジェクトを撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶する参照環境光情報記憶部と、
前記第1の仮想カメラ情報の更新に基づき前記参照環境光情報を更新する参照環境光情報更新部と、
前記位置情報で示される位置に存在する前記操作対象オブジェクトを、前記第1の仮想カメラ情報で示される位置に存在し、かつ、前記第1の仮想カメラ情報で示される向きとなった前記第1の仮想カメラで撮影した第1の画像を生成する第1の画像生成部と、
前記参照環境光下に置かれた前記表示オブジェクトを、前記参照環境光に対する撮影方向の相対的な向きが前記参照環境光情報で特定される状態となった前記第2の仮想カメラで撮影した第2の画像を生成する第2の画像生成部と、
前記第1の画像と、前記第2の画像内の前記表示オブジェクトの画像とを含み、前記表示オブジェクトで前記所定のパラメータの値を示したゲーム画面を生成するゲーム画面生成部と、
を有する処理装置。
9. コンピュータが、
操作対象オブジェクトの所定のパラメータの値を示すパラメータ情報を記憶し、
仮想空間における前記操作対象オブジェクトの位置を示す位置情報を記憶し、
プレイヤが入力した入力データに基づき前記位置情報を更新し、
前記操作対象オブジェクトを撮影する第1の仮想カメラの前記仮想空間における位置及び向きを示す第1の仮想カメラ情報を記憶し、
プレイヤが入力した入力データに基づき前記第1の仮想カメラ情報を更新し、
前記位置情報で示される前記操作対象オブジェクトの位置における環境光である基準環境光に基づき生成された参照環境光と、前記参照環境光下に置かれた表示オブジェクトを撮影する第2の仮想カメラの撮影方向との相対的な向きを特定するための参照環境光情報を記憶し、
前記第1の仮想カメラ情報の更新に基づき前記参照環境光情報を更新し、
前記位置情報で示される位置に存在する前記操作対象オブジェクトを、前記第1の仮想カメラ情報で示される位置に存在し、かつ、前記第1の仮想カメラ情報で示される向きとなった前記第1の仮想カメラで撮影した第1の画像を生成し、
前記参照環境光下に置かれた前記表示オブジェクトを、前記参照環境光に対する撮影方向の相対的な向きが前記参照環境光情報で特定される状態となった前記第2の仮想カメラで撮影した第2の画像を生成し、
前記第1の画像と、前記第2の画像内の前記表示オブジェクトの画像とを含み、前記表示オブジェクトで前記所定のパラメータの値を示したゲーム画面を生成する処理方法。
【0066】
以上、実施形態(及び実施例)を参照して本願発明を説明したが、本願発明は上記実施形態(及び実施例)に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【0067】
1A プロセッサ
2A メモリ
3A 入出力I/F
4A 周辺回路
5A バス
100 処理装置
101 入力データ取得部
102 パラメータ情報更新部
103 パラメータ情報記憶部
104 位置情報更新部
105 位置情報記憶部
106 第1の仮想カメラ情報更新部
107 第1の仮想カメラ情報記憶部
108 参照環境光情報更新部
109 参照環境光情報記憶部
110 第1の画像生成部
111 第2の画像生成部
112 ゲーム画面生成部
113 出力部