(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023088034
(43)【公開日】2023-06-26
(54)【発明の名称】コンピュータプログラム、並びにこれを用いた画像表示方法及び画像表示システム
(51)【国際特許分類】
A63F 13/52 20140101AFI20230619BHJP
A63F 13/80 20140101ALI20230619BHJP
A63F 13/428 20140101ALI20230619BHJP
G06T 15/50 20110101ALI20230619BHJP
G06T 19/00 20110101ALI20230619BHJP
G06F 3/0346 20130101ALI20230619BHJP
A63F 13/211 20140101ALI20230619BHJP
【FI】
A63F13/52
A63F13/80 B
A63F13/428
G06T15/50
G06T19/00 A
G06F3/0346 423
A63F13/211
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021202650
(22)【出願日】2021-12-14
(71)【出願人】
【識別番号】506113602
【氏名又は名称】株式会社コナミデジタルエンタテインメント
(74)【代理人】
【識別番号】100099645
【弁理士】
【氏名又は名称】山本 晃司
(74)【代理人】
【識別番号】100161090
【弁理士】
【氏名又は名称】小田原 敬一
(72)【発明者】
【氏名】御子柴 英利
【テーマコード(参考)】
5B050
5B080
5B087
【Fターム(参考)】
5B050AA10
5B050BA09
5B050BA11
5B050DA04
5B050EA07
5B050EA26
5B050FA02
5B050FA05
5B080AA13
5B080BA00
5B080CA00
5B080FA02
5B080GA02
5B080GA11
5B080GA21
5B080GA22
5B080GA23
5B087AA07
5B087BC32
5B087DE01
(57)【要約】
【課題】カード状のオブジェクトの対象領域の表現をホログラムシート状に変化させる。
【解決手段】ゲームで利用されるカード状のオブジェクトに含まれる対象領域18の色情報を決定するために必要な基準方向をユーザ装置のセンサの出力に基づいて検出するステップと、検出された基準方向の変化に伴って対象領域の表現がホログラムシート状に変化するように、基準方向と関連付けて対象領域の色情報を決定するステップと、を所定のコンピュータに実行させ、色情報を決定するステップでは、対象領域に入射する光の入射方向と対象領域に関するユーザ装置のユーザの視線方向との少なくともいずれか一方の方向を基準方向と関連付けて変化させつつ、入射方向及び前記視線方向を参照して色情報を決定する。
【選択図】
図3
【特許請求の範囲】
【請求項1】
カード状のオブジェクトの画像をユーザ装置に表示させる処理を所定のコンピュータに実行させるためのコンピュータプログラムであって、
前記オブジェクトに含まれる対象領域の色情報を決定するために必要な基準方向を前記ユーザ装置のセンサの出力に基づいて検出するステップと、
前記検出された基準方向の変化に伴って前記対象領域の表現がホログラムシート状に変化するように、前記基準方向と関連付けて前記対象領域の色情報を決定するステップと、を前記コンピュータに実行させるように構成され、
前記色情報を決定するステップでは、前記対象領域に入射する光の入射方向と前記対象領域に関する前記ユーザ装置のユーザの視線方向との少なくともいずれか一方の方向を前記基準方向と関連付けて変化させつつ、前記入射方向及び前記視線方向を参照して前記色情報を決定する、コンピュータプログラム。
【請求項2】
前記色情報を決定するステップでは、前記入射方向を前記基準方向に応じて変化させる一方で、前記視線方向を一定に維持して前記色情報を決定する請求項1に記載のコンピュータプログラム。
【請求項3】
前記色情報を決定するステップでは、前記視線方向を前記基準方向に応じて変化させる一方で、前記入射方向を一定に維持して前記色情報を決定する請求項1に記載のコンピュータプログラム。
【請求項4】
前記色情報を決定するステップでは、前記入射方向及び前記視線方向のそれぞれを前記基準方向に応じて変化させつつ前記色情報を決定する請求項1に記載のコンピュータプログラム。
【請求項5】
前記色情報を決定するステップでは、前記対象領域を複数のピクセルの集合として定義したときの各ピクセルの法線方向を記述したバンプマップの情報に基づいて、各ピクセルにおける法線方向を判別し、判別された法線方向と前記入射方向及び前記視線方向との関係に応じて色情報が変化するようにして各ピクセルの色情報を決定する請求項1~4のいずれか一項に記載のコンピュータプログラム。
【請求項6】
カード状のオブジェクトの画像をユーザ装置に表示させる処理を所定のコンピュータに実行させるコンピュータプログラムであって、
前記オブジェクトに含まれる対象領域の色情報を決定するために必要な基準方向を前記ユーザ装置のセンサの出力に基づいて検出するステップと、
前記検出された基準方向の変化に伴って前記対象領域の表現がホログラムシート状に変化するように、前記基準方向と関連付けて前記対象領域の色情報を決定するステップと、を前記コンピュータに実行させるように構成され、
前記色情報を決定するステップでは、前記対象領域に入射する光の入射方向を前記基準方向と関連付けて変化させつつ、前記入射方向を参照して前記色情報を決定する、コンピュータプログラム。
【請求項7】
前記オブジェクトが前記ユーザ装置にてプレイされるゲームにて表示されるべきカードである請求項1~6のいずれか一項に記載のコンピュータプログラム。
【請求項8】
前記対象領域が、前記カードの背景の少なくとも一部である請求項7に記載のコンピュータプログラム。
【請求項9】
前記センサは、前記ユーザ装置の姿勢に応じた信号を出力する請求項1~8のいずれか一項に記載のコンピュータプログラム。
【請求項10】
カード状のオブジェクトの画像をユーザ装置に表示させる処理を所定のコンピュータに実行させる画像表示方法であって、
請求項1~9のいずれか一項のコンピュータプログラムに従って、前記基準方向を前記ユーザ装置のセンサの出力に基づいて検出するステップと、前記対象領域の色情報を決定するステップと、を前記コンピュータに実行させる画像表示方法。
【請求項11】
カード状のオブジェクトの画像をユーザ装置に表示させる処理を所定のコンピュータに実行させる画像表示システムであって、
請求項1~9のいずれか一項のコンピュータプログラムに従って、前記基準方向を前記ユーザ装置のセンサの出力に基づいて検出するステップと、前記対象領域の色情報を決定するステップと、を前記コンピュータに実行させる画像表示システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カード状のオブジェクトの画像の表現に関して、ホログラムシート状の変化を生じさせるためのコンピュータプログラム等に関する。
【背景技術】
【0002】
ゲーム画面に表示されるカード状のオブジェクトの表現に関して、現実世界における物理的なカードに見られるようなホログラムシート状の色変化を与える試みがなされている。例えば、特許文献1には、光の反射を疑似的に表現した白色部分を有する複数のシートをそれらの表示態様が差別化されるようにして予め用意し、ユーザの端末装置の傾きの検出値に応じてシートを適宜に選択し、選択されたシートをキャラクタ等の画像と重ね合わせることにより、端末装置の傾きに応じた色変化を与える技術が開示されている。特許文献2には、カード状のオブジェクトの背景部分に重ね合わされる色変化画像内の色を、端末装置の姿勢(傾き)及び画像内の表示位置をパラメータに含んだ三角関数に従って変化させることにより、カードの背景部分の表現をホログラムシート状に変化させる技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第5661835号公報
【特許文献2】特許第6723895号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
従来の技術は、端末の姿勢の変化に応じて背景領域等の表現に一定の変化を生じさせるに過ぎない。一方、現実のカードのホログラムシート部分は、ユーザがこれを観察する方向のみならず、光の当たり具合に応じても見え方が変化する。従来の技術は、光の当たり方に応じた変化を必ずしも十分に表現できておらず、改善の余地がある。
【0005】
そこで、本発明は、カード状のオブジェクトの少なくとも一部の領域の表現をホログラムシート状に変化させる場合に好適なコンピュータプログラム等を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の一態様に係るコンピュータプログラムは、カード状のオブジェクトの画像をユーザ装置に表示させる処理を所定のコンピュータに実行させるためのコンピュータプログラムであって、前記オブジェクトに含まれる対象領域の色情報を決定するために必要な基準方向を前記ユーザ装置のセンサの出力に基づいて検出するステップと、前記検出された基準方向の変化に伴って前記対象領域の表現がホログラムシート状に変化するように、前記基準方向と関連付けて前記対象領域の色情報を決定するステップと、を前記コンピュータに実行させるように構成され、前記色情報を決定するステップでは、前記対象領域に入射する光の入射方向と、前記対象領域に関する前記ユーザ装置のユーザの視線方向との少なくともいずれか一方の方向を前記基準方向と関連付けて変化させつつ、前記入射方向及び前記視線方向を参照して前記色情報を決定するものである。
【0007】
本発明の他の態様に係るコンピュータプログラムは、カード状のオブジェクトの画像をユーザ装置に表示させる処理を所定のコンピュータに実行させるコンピュータプログラムであって、前記オブジェクトに含まれる対象領域の色情報を決定するために必要な基準方向を前記ユーザ装置のセンサの出力に基づいて検出するステップと、前記検出された基準方向の変化に伴って前記対象領域の表現がホログラムシート状に変化するように、前記基準方向と関連付けて前記対象領域の色情報を決定するステップと、を前記コンピュータに実行させるように構成され、前記色情報を決定するステップでは、前記対象領域に入射する光の入射方向を前記基準方向と関連付けて変化させつつ、前記入射方向を参照して前記色情報を決定するものである。
【0008】
本発明の一態様に係る画像表示方法は、カード状のオブジェクトの画像をユーザ装置に表示させる処理を所定のコンピュータに実行させる画像表示方法であって、上記態様のコンピュータプログラムに従って、前記基準方向を前記ユーザ装置のセンサの出力に基づいて検出するステップと、前記対象領域の色情報を決定するステップと、を前記コンピュータに実行させるものである。
【0009】
本発明の一態様に係る画像表示システムは、カード状のオブジェクトの画像をユーザ装置に表示させる処理を所定のコンピュータに実行させる画像表示システムであって、上記態様のコンピュータプログラムに従って、前記基準方向を前記ユーザ装置のセンサの出力に基づいて検出するステップと、前記対象領域の色情報を決定するステップと、を前記コンピュータに実行させるものである。
【図面の簡単な説明】
【0010】
【
図1】本発明の一態様に係るコンピュータプログラムが適用されるゲーム機を含んだゲームシステムの一例を示す図。
【
図2】ゲーム画面にカードが表示された例を示す図。
【
図3】
図2のカードの背景画像の変化の一例を示す図。
【
図4】仮想3次元空間におけるカードと視線方向及び環境光の入射方向との関係の一例を示す図。
【
図5】ゲーム機の姿勢の変化に対応して入射方向を変化させる場合の一例を示す図。
【
図6】ゲーム機の姿勢の変化に対応して視線方向を変化させる場合の一例を示す図。
【
図7】ゲーム機の姿勢の変化に対応して入射方向及び視線方向を変化させる場合の一例を示す図。
【
図8】ゲーム機の姿勢の変化に対応して仮想3次元空間内でカードの向きを変化させる場合の一例を示す図。
【
図9】背景画像をホログラムシート状に表現する手法の一例を説明するための図。
【
図11】
図10の制御ユニットが背景画像を描画するために実行する処理の一例を示すフローチャート。
【
図12】ゲーム機のカメラを用いて現実世界における環境光の入射方向を検出する例を示す図。
【
図13】ゲーム機のカメラを用いて現実世界におけるユーザの視線方向を検出する例を示す図。
【
図14】ユーザの操作に応じて仮想3次元空間におけるカードを曲げ変形させる例を示す図。
【発明を実施するための形態】
【0011】
図1は本発明の一形態に係るゲームシステムの一例を示している。
図1のゲームシステム1は、画像表示システムの一例であって、ゲーム機2と、所定のネットワークNTを介してゲーム機2と通信可能なサーバ3とを含むネットワークシステムとして構成されている。ゲーム機2は、本発明が適用される対象となるユーザ装置の一例である。ゲーム機2は、サーバ3に対する端末装置として機能し、サーバ3と、又はサーバ3を介して他のゲーム機2と通信することにより所定のゲームをユーザに実行させる。ただし、ゲーム機2はサーバ3との通信を伴わないスタンドアローン型のゲーム機であってもよい。その場合、ゲーム機2が単独でゲームシステムを構成する。
【0012】
ゲーム機2は、本体4と、一対のコントローラ5A、5Bとを含む。本体4は、ゲームを提供するための各種の処理を実行し、コントローラ5A、5Bは、ユーザの操作を検出して本体4に操作情報を提供する入力手段の一例として機能する。本体4には、出力手段、あるいは表示手段の一例としてのモニタ6が一体的に設けられている。モニタ6に代えて、又は加えて、ゲーム機2とは別体のモニタがゲーム画面の表示に用いられてもよい。コントローラ5A、5Bのそれぞれは、本体4に対して一体的に又は着脱可能に設けられ、本体4と有線又は無線で接続されることにより、ゲーム機2における入力手段の一例として機能する。以下では、コントローラ5A及びコントローラ5Bを「コントローラ5」と代表して表記する一方、両者を第1コントローラ5A及び第2コントローラ5Bと区別して表記することがある。
【0013】
各コントローラ5には、ユーザによって操作可能な操作部として、押釦スイッチ7a、方向指示キー7b等の操作部7が設けられている。各コントローラ5からは、操作部7の操作状態に応じた信号が本体4に向けて出力される。各コントローラ5には、そのコントローラ5の姿勢(傾き)に応じた信号を出力するセンサの一例として、ジャイロセンサ8が内蔵されている。ジャイロセンサ8は、ゲーム機2に関して設定された直交3軸(Gx軸、Gy軸及びGz軸)の回りの回転運動(例えば角加速度)に対応した信号を、コントローラ5の姿勢を示す信号として出力する。検出軸Gx、Gy、Gzの方向は、現実空間における姿勢の変化を検出できる限りにおいて適宜に定められてよい。一例として、モニタ6の画面の法線方向がGz軸として設定され、同画面の短辺方向及び長辺方向をそれぞれGx軸及びGy軸として設定されてよい。この場合、ゲーム機2と正対するユーザから見て、Gx軸回りの回転がロール、Gy軸回りの回転がピッチ、Gz軸回りの回転がヨーに相当する。
【0014】
ゲーム機2では、カードを利用したゲームがユーザに提供される。
図2は、そのゲームにおいて、モニタ6に表示されるゲーム画面の一例を示している。
図2のゲーム画面10は、例えばユーザが獲得したキャラクタやアイテム等のカードを図鑑のごとく閲覧させる場合に表示される画面の一例である。ゲーム画面10は、カードのキャラクタ等を象徴するアイコン画像11がマトリクス状に並べて表示される一覧表示部12と、カーソル13にて選択されたアイコン画像11に対応するキャラクタ等のカード画像14が表示されるカード表示部15とを含む。一覧表示部12では、ユーザが獲得済のキャラクタ等のアイコン画像11がハイライト表示される一方、未取得のキャラクタ等のアイコン画像11はグレー表示されるといったごとく、ユーザによる獲得の有無に応じてアイコン画像11の表示態様が差別化されてよい。あるいは、ユーザによって獲得されたキャラクタ等に対応するアイコン画像11のみが表示されることとしてもよい。
【0015】
一方、
図3に拡大して示すように、カード画像14は、キャラクタ等の外観態様を示すメイン画像16と、カードを装飾するフレーム画像17と、背景画像18とをさらに含む。フレーム画像17は、キャラクタ等の名前、カードのランク等を示す文字列その他の情報部17aをさらに含む。背景画像18はカード画像14の装飾性、演出性を高めるものである。本形態では、ジャイロセンサ8が検出する姿勢の変化と関連付けて背景画像18の表現がホログラムシート状に変化するようにカード画像14が描画される。したがって、背景画像18は対象領域の一例に相当する。
図3では、図面表現上の制約から、背景画像18が比較的明るく表現される場合を同図(a)に、背景画像18が比較的暗く表現される場合を同図(b)に例示する。背景画像18の変化は、同図(a)、(b)の状態のいずれかの2段階に限って生じるものではなく、コントローラ5の姿勢の変化に応じて連続的に、あるいは無段階で生じるものである。
【0016】
背景画像18の変化に関しては、現実の物理的なホログラムシートのそれと同様に、ユーザが観察する方向(視線方向)、及び光が当たる方向(入射方向)が考慮される。つまり、コントローラ5の姿勢と関連付けて視線方向及び入射方向の少なくともいずれか一方の方向が変化したものと見做されて背景画像18が描画される。なお、2つのコントローラ5A、5Bのそれぞれにジャイロセンサ8が内蔵されているため、いずれか一方のコントローラ5、例えば第1コントローラ5Aのジャイロセンサ8の出力が背景画像18を描画する際の基準として利用されてよい。コントローラ5が本体4と一体化され、又は本体4に装着された状態にある場合、いずれのコントローラ5のジャイロセンサ8を利用しても、その出力はゲーム機2の姿勢を示すものとなる。コントローラ5が本体4から分離されている場合には、いずれか一方のコントローラ5のジャイロセンサ8の出力信号を、ゲーム機2の姿勢を代表する示す出力信号として利用してよい。つまり、本体4の姿勢は不変であっても、いずれか一方のコントローラ5の姿勢の変化をもってゲーム機2の姿勢が変化したものと見做す。本体4にジャイロセンサが内蔵されている場合には、そのジャイロセンサの出力信号と関連付けて背景画像18の表現を変化させてもよい。いずれにしても、背景画像18の表現を変化させるための基準となる方向の変化を検出するジャイロセンサは適宜に定められてよい。以下では、いずれか一方のコントローラ5のジャイロセンサ8の出力を、ゲーム機2の姿勢の変化を代表する出力であると見做して説明を続ける。
【0017】
次に、
図4~
図8を参照して、背景画像18の表現をホログラムシート状に変化させるための処理の一例を説明する。カード画像14を描画する処理では、背景画像18の領域とそれ以外の領域(
図3の例では、メイン画像16及びフレーム画像17の領域)とが区別して特定される。背景画像18は、画像処理用の所定のシェーダプログラムを利用して描画され、それ以外の領域は、予め定められたテクスチャ画像をそのまま利用して描画される。メイン画像16等の描画は、一例としてシェーダプログラムのテクスチャ画像の色情報をシェーダプログラムにてそのまま利用するように処理されてもよい。あるいは、背景画像18の描画とは異なるレイヤに別プロセスで描画して、背景画像18上に重ね合わせるようにしてもよい。以下では、背景画像18を描画するための処理を中心に説明する。
【0018】
図4に示すように、所定の仮想3次元空間VS内に、カード画像14に対応するオブジェクトとしてのカード20と、カード20を撮影する仮想カメラ21とが配置された状態を仮定する。仮想3次元空間VSには3軸直交座標系としてのワールド座標系(Wx-Wy-Wz)が設定され、カード20には3軸直交座標系としてのオブジェクト座標系(OxーOy-Oz)が設定される。各座標系の原点、及び各軸の方向の取り方は適宜でよい。
図4では、オブジェクト座標系に関し、一例としてカード20の法線方向にZ軸を、カード20の短辺方向及び長辺方向にX軸及びY軸がそれぞれ設定されるものとする。
【0019】
仮想カメラ21は適宜の位置に適宜の向きで設定することが可能である。ただし、
図2及び
図3で示したカード画像14は、ゲーム機2の姿勢に関わりなく、ユーザから見て常に正対する向きで、かつ形状及び大きさが不変の画像として表示される。したがって、
図4の例において、仮想カメラ21はカード20を法線方向から一定の画角で撮影するように設定される。つまり、仮想カメラ21によるカード20の撮影方向Cは、カード20の法線方向と一致する。仮想カメラ21の撮影光軸は、一例としてカード20の中心を通るように設定される。撮影光軸は、カード20の全面を撮影範囲に含めることが可能である限り、必ずしもカード20の中心を通るように設定されることを要しない。
【0020】
仮想3次元空間VSでは、カード20に対する環境光の入射方向Lも設定される。例えば、所定の光源22からカード20に向けて光が照射されるものと仮定して、その光の方向が入射方向Lとして設定される。環境光はカード20に当たる光であり、自然光又は照明光のいずれであってもよい。
図4の光源22は、環境光の方向を示すために描かれているものであって、仮想3次元空間VS内に、仮想的なオブジェクトとして光源22が配置されることは必須ではない。例えば、環境光が太陽光のような平行光であるとした場合、光源22は特定方向に無限遠の位置にあるものと見做してよい。その場合、環境光の入射方向Lを設定すれば足り、光源22それ自体を仮想3次元空間VSに配置することは必要ではない。この点は、後述する
図5~
図8及び
図14で示した光源22に関しても同様である。一方、平行光を照射する照明装置が光源22として仮想3次元空間VS内の特定位置に設定されてもよい。点光源からの照明光のように一定に広がる環境光を設定する場合には、光源22の位置を定める必要がある。環境光の設定に関しては、その方向に加えて、強度(明るさ)、色温度、波長分布といった各種の特性が併せて設定されてもよい。それらの特性は背景画像18の描画に適宜に反映されてよい。
【0021】
次に、
図5を参照して、ゲーム機2の姿勢と、カード20に対する視線方向及び入射方向との関係の一例を説明する。
図5は、ゲーム機2の姿勢の変化に対応して環境光の入射方向Lを変化させる場合の例である。この例では、光源22がゲーム機2の姿勢の変化に応じて仮想3次元空間内で向きを変えると仮定し、光源22が想像線の位置から矢印Aで示すごとく実線の位置に移動したものとする。カード20は不動である。
図2のゲーム画面10において、カード画像14は常に正対した状態、すなわちカード20を正面から観察した状態で表示されるため、仮想カメラ21もカード20と同様に不動である。つまり、カード20と仮想カメラ21との相対的な位置関係は不変である。
【0022】
また、
図5において、ユーザは、仮想カメラ21による撮影方向Cと同一方向からカード20を観察するものとする。例えば、仮想カメラ21の位置(結像面の位置)にユーザの目23があると仮定する。したがって、カード20に対するユーザの視線方向Eは仮想カメラ21の撮影方向Cと一致し、カード20に対する視線方向Eはゲーム機2の姿勢の変化に関わらず一定である。したがって、カード20と入射方向Lとの関係がゲーム機2の姿勢に応じて変化する。
【0023】
背景画像18を描画するためのシェーダプログラムは、ユーザの視線方向E及び環境光の入射方向Lをパラメータとして背景画像18の各ピクセルの色情報を決定する。
図5の例では、視線方向Eがカード20に対して一定に維持される一方、環境光の入射方向Lがカード20に対して変化する。したがって、モニタ6にはカード20を正面から観察した状態で示すようにカード画像14を表示させつつ、その背景画像18の表現を、カード20に対する光の当たり方が変化した場合と同様に変化させることが可能である。現実のホログラムシートの見え方は、これを観察する方向及び光が当たる方向に応じて多様に変化し、観察する方向が変わらなくとも、光が当たる方向が変われば見え方も変化する。
図5の例では、そのような変化を再現することが可能である。
【0024】
図5の例では、ゲーム機2の姿勢の変化に応じて光源22、すなわち入射方向Lが変化するものとしたが、ゲーム機2の姿勢の変化に応じてカード20及び仮想カメラ21を一体的に移動させる一方で、光源22を不動としても、カード20に対して入射方向Lを変化させることができる。つまり、光源22を移動させる一方で、カード20及び仮想カメラ21を不動とする場合も、カード20及び仮想カメラ21を一体的に移動させる一方で光源22を不動とする場合でも、カード20及び仮想カメラ21と、光源22との位置関係は相対的に変化し、カード20に対する入射方向Lが変化することに変わりはない。なお、
図5の例では、カード20及び仮想カメラ21を光源22に対してカード20の法線方向の軸線回りに相対的に回転させた場合でも入射方向Lが変化して背景画像18の見え方が変わることとなる。例えば、
図1のジャイロ軸Gzがモニタ6の法線方向であり、そのジャイロ軸Gzの回りのヨー運動が仮想3次元空間におけるカード20の法線方向の回りの回転運動と対応付けられるものとすれば、ジャイロセンサ8がジャイロ軸Gzの回りのヨー運動のみを検出し、ジャイロ軸Gx、Gyの回りのロール運動及びピッチ運動は検出されない場合でも、カード20に対する入射方向Lが変化し、それに伴って背景画像18の見え方が変化することとなる。視線方向E及び入射方向Lに応じて背景画像18にホログラムシート状の変化を生じさせる手法は、既存のシェーダプログラムによる処理と同様でよいが、その手法の一例は後述する。撮影方向C及び視線方向Eは、カード20の位置に応じて厳密には相違する。しかしながら、その差が無視できる程度であれば、撮影方向C及び視線方向Eはカード20の全域でそれぞれ一定であるとみなしてよい。ただし、カード20の位置に応じて撮影方向C及び視線方向Eを変化させてもよい。
【0025】
図6は、ゲーム機2の姿勢の変化に対応して視線方向Eを変化させる場合の例である。
図6の例においても、カード20はゲーム機2の姿勢の変化に関わらず不動であり、仮想カメラ21も不動であるとする。また、
図5の例では、仮想3次元空間内で光源22が移動するものとしたが、
図6の例では、光源22も不動であり、カード20に対する環境光の入射方向Lは一定に維持される。
【0026】
一方、
図6の例では、ゲーム機2の姿勢の変化に伴って、ユーザの目23が仮想3次元空間内で移動するものと仮定する。つまり、カード20を法線方向から仮想カメラ21で撮影したカード画像14がモニタ6に表示されるが、そのモニタ6に表示されるカード画像14をユーザが観察する方向がゲーム機2の姿勢に応じて変化するものと仮定する。例えば目23が想像線の位置から矢印Aで示すごとく実線の位置へ移動したと仮定する。したがって、背景画像18の描画に関して考慮されるべき視線方向Eは仮想カメラ21による撮影方向Cと一致せず、カード20に対して変化する方向となる。その視線方向Eの変化が背景画像18に反映される。この例では、現実のホログラムシートに関して、光が当たる方向が一定でかつ観察する方向が変わる場合の見え方の変化を再現することができる。なお、
図6の例において、目23の位置を不変とし、ゲーム機2の姿勢の変化に伴ってカード20、仮想カメラ21及び光源22を一体的に移動させると仮定してもカード20に対する視線方向Eを変化させることが可能である。
【0027】
図7は、ゲーム機2の姿勢の変化に伴って、カード20に対する視線方向E及び入射方向Lの両者を変化させる場合の例である。この例でも、ゲーム機2の姿勢の変化に関わりなくカード20及び仮想カメラ21は不動である。一方、光源22及びユーザの目23はゲーム機2の姿勢の変化に応じて仮想3次元空間内で移動すると仮定する。例えば、光源22及び目23が想像線の位置から矢印Aで示すごとく実線の位置へと移動したものとする。この場合、視線方向Eと入射方向Lとの相互の関係はゲーム機2の姿勢の変化に関わりなく一定に維持されるが、カード20に対しては視線方向E及び入射方向Lの両者が一体的に変化する。よって、視線方向E及び入射方向Lの両者の変化を背景画像18の表現に反映させることができる。
【0028】
図8は、ゲーム機2の姿勢と、カード20に対する視線方向及び入射方向との関係のさらに他の例を示す。
図8の例において、カード20はゲーム機2の姿勢の変化に応じて仮想3次元空間内でその向きを変え、それに伴って仮想カメラ21から見たときのカード20の向きも変化するものとする。一例として、変化前のカード20の一例を想像線で示し、矢印Aのごとく向きを変えたカード20の一例を実線で示す。一方、
図8の例において、仮想カメラ21及び光源22は、ゲーム機2の姿勢に関わりなく、仮想3次元空間内で一定位置に一定の向きで配置されていると仮定される。ユーザの目23も仮想カメラ21の位置にあると仮定される。したがって、カード20の向きが変化すれば、それに伴ってカード20に対する視線方向E及び環境光の入射方向Lの両者が変化する。
【0029】
図8の例では、
図2のゲーム画面10のように、カード20を常に正対した状態で観察したカード画像14を表示することはできない。ゲーム機2の姿勢を変化させると、それに応じてカード20が適宜に向きを変えるような画像が表示される。その場合でも、カード20に対する視線方向E及び入射方向Lが変化するため、その変化に伴って背景画像18の表現を、ホログラムシート状に変化させることが可能である。
【0030】
次に、
図9を参照して、背景画像18の表現を、視線方向及び入射方向と関連付けてホログラムシート状に変化させるための手法の一例を説明する。
図9に示すように、背景画像18を描画するために利用される情報の一例を示す。背景画像18の描画には、一例として、バンプマップ30と、そのバンプマップ30に対応する色情報31とが利用される。
【0031】
バンプマップ30は、背景画像18の各ピクセルにおける法線方向を指定する情報である。例えば、背景画像18上の任意のピクセルPijにおける法線方向が適宜の座標系の値を用いた法線ベクトルNij(Xij、Yij、Zij)として指定される。法線ベクトルは一例として単位ベクトルとして定義されてよく、以下では法線方向を法線ベクトルNと同義として表現することがある。法線ベクトルNは、一例として、オブジェクト座標系に従って表現されてよいが、カード20に対して一義的、あるいは固有的に定まる座標系であれば他の座標系で定義されてもよい。
図9では、バンプマップ30にて指定される法線方向の相違を周期的な濃淡のパターンとして便宜的に示すが、バンプマップ30は、背景画像18にホログラムシート状の変化を生じさせるに適した法線ベクトルが各ピクセルに設定される限りにおいて適宜に設定されてよい。一例として、カード20の表面にホログラムシートと同様の微細な凹凸が形成されているものと見做して、バンプマップ30の各ピクセルの法線ベクトルが差別化される。つまり、バンプマップ30は、カード20に対して、現実のホログラムシートと同様の微細な凹凸を疑似的に付与するものである。
【0032】
色情報31は、背景画像18の各ピクセルに与えるべき色情報の初期値を指定するための情報である。色情報31は、一例として、スペキュラマップ32、ディフューズマップ33及びエミッションマップ34とを含む。スペキュラマップ32は、背景画像18に鏡面反射効果を与えるための色情報を、デュフーズマップ33は背景画像18に拡散反射効果を与えるための色情報を、エミッションマップ34は背景画像18にエミッション効果を与えるための色情報をそれぞれピクセル単位で指定する情報である。例えば、スペキュラマップ32では、任意のピクセルPijにおける色情報Cijとして、そのピクセルPijに与えるべきRGBの各値Rij、Gij及びBijが指定される。他のマップ33、4も同様にして色情報が指定されてよい。
【0033】
図9に示したピクセルPijにおける法線ベクトルNijと、視線方向E及び入射方向Lとの関係から明らかなように、カード20に対して視線方向E及び入射方向Lが一定であったとしても、各ピクセルの法線ベクトルNの方向を基準とした場合の視線方向E及び入射方向Lはピクセルごとに相違する。背景画像18を描画するシェーダは、各ピクセルに対して色情報31で指定された色情報を、各ピクセルにおける法線ベクトルNと、視線方向E及び入射方向Lとをパラメータとして取り込んだ演算則(関数)に従って補正し、演算結果に従って各ピクセルの最終的な色情報を決定する。そのような処理により、背景画像18の各ピクセルの色情報は、色情報31で指定された初期値に対して、法線ベクトルN、視線方向E及び入射方向Lに応じて多様に変化する。それにより、背景画像18に表現をホログラムシート状に表示させることができる。しかも、視線方向E及び入射方向Lの少なくともいずれか一方の方向は、上記で例示したようにゲーム機2の姿勢に応じて変化する。したがって、ゲーム機2の姿勢を変化させると、それに伴って、背景画像18の表現も、あたかも視線方向や光の入射方向が変化したかのごとく変化する。よって、現実のホログラムシートと同様に背景画像18の表現を変化させることが可能である。
【0034】
次に、ゲーム機2の制御系、及びその処理の一例について、カード画像14の描画に関わる部分を中心に説明する。
図10は、ゲーム機2の制御系の概略構成の一例を示す。ゲーム機2は、制御ユニット50と記憶ユニット51とを備えている。制御ユニット50はマイクロプロセッサとしてのCPU、GPU及びそれらの動作に必要な内部記憶装置、例えばキャッシュメモリ、RAM、フレームメモリ等を含んだコンピュータとして構成されている。記憶ユニット51は制御ユニット50に対する外部記憶装置として機能する磁気記憶媒体、フラッシュメモリ等の不揮発性記憶媒体を用いた記憶装置である。制御ユニット50には、コントローラ5A、5Bの操作部7及びジャイロセンサ8、モニタ6が接続される。制御ユニット50は、音源制御ユニット、ネットワーク制御ユニット等がさらに含まれてよい。
【0035】
記憶ユニット51には、ゲームを提供するためのゲームプログラムPg、ゲームデータDg、及びプレイデータDpが記録される。ゲームプログラムPgは、制御ユニット50の基本的な動作を制御するオペレーティングシステム、あるいはGPUに画像描画処理を実行させるために予め制御ユニット50に実装される画像描画用のプログラム等と協働して、ゲームに必要な各種の演算処理及び動作制御を制御ユニット50に実行させるためのアプリケーションプログラムである。ゲームプログラムPgは、ゲーム処理プログラムPg1及び画像処理プログラムPg2をさらに含む。ゲーム処理プログラムPg1は、ゲーム機2にて提供されるゲームをユーザの選択に応じて進行させるために必要な各種の処理を制御ユニット50に実行させるためのコンピュータプログラムである。画像処理プログラムPg2は、ゲームの進行状況に応じた画像を描画してモニタ6に表示させるためのコンピュータプログラムである。上述したカード画像14を描画するためのシェーダプログラムも画像処理プログラムPg2の一部を構成する。
【0036】
ゲームデータDgは、ゲームの制御において適宜に参照されるべきデータである。カード画像14を描画するために必要な各種のデータ、例えば、
図9に示したバンプマップ30及び色情報31、さらには、カード画像14にて表現されるべきメイン画像16、フレーム画像17等の各種のテクスチャのデータがゲームデータDgに含まれてよい。プレイデータDpは、ゲーム機2のユーザによるゲームのプレイと関連付けられたユーザごとのデータである。例えば、ユーザのプレイ履歴、ステータスといった情報がプレイデータDpに含まれてよい。ゲームプログラムPg、及びゲームデータDgは、サーバ3からゲーム機2に適宜に配信されて記憶ユニット51に保存される。ただし、それらのデータは、ゲーム機2が読み込み可能な記憶媒体を介して提供されてもよい。
【0037】
制御ユニット50がゲームプログラムPgを読み取ることにより、制御ユニット50には、ゲーム処理部52及び画像処理部53が設けられる。ゲーム処理部52は、制御ユニット50のCPUとゲーム処理プログラムPg1とが協働することにより実現される論理的装置であり、画像処理部53は制御ユニット50のGPUと画像処理プログラムPg2とが協働することにより実現される論理的装置である。ゲーム処理部52は、ゲーム処理プログラムPg1に従ってゲームを制御する。画像処理部53は、ゲーム処理部52によるゲームの進行状況に応じた画像を描画し、モニタ6に表示させるための処理を実行する。なお、3次元オブジェクトの画像を描画するための汎用的な画像処理を制御ユニット50のGPUに実行させるためのコンピュータプログラム、例えば汎用的なシェーダプログラム等が予めゲーム機2に実装される場合、画像処理プログラムPg2はその汎用的なコンピュータプログラムと連携して画像処理部53が実現されるように構成されてよい。
【0038】
図11は、ゲーム機2の制御ユニット50が背景画像18を描画するために実行する処理手順の一例を示している。この例は、
図5で示したように、ゲーム機2の姿勢の変化に対応して入射方向Lを変化させ、視線方向Eをカード20に対して不変として背景画像18を描画する場合の処理の一例である。ゲーム機2でプレイされるゲームがカード画像14を表示させる状態である場合、背景画像18を描画するために
図11の処理が開始される。
図11の処理が開始されると、まずゲーム処理部52は、ジャイロセンサ8の出力に基づいてゲーム機2の現在の姿勢を検出し、これをセットする(ステップS11)。ゲーム機2の姿勢は、ゲーム機2が特定の姿勢にある状態を初期の姿勢とし、その初期の姿勢におけるジャイロセンサ8の出力と、現在のジャイロセンサ8の出力との差分として検出されてよい。初期の姿勢は、一例としてカード画像14の表示を開始する時点でのゲーム機2の姿勢とすることができるが、これに限らず、ゲームを起動した時点や特定のモードに遷移した時点でのゲーム機2の姿勢を初期の姿勢とすることができる。ステップS11にて検出される姿勢は、ゲーム機2がどのような方向にあるかを示すものであって、その方向が、背景画像18の色情報を決定するために必要な基準方向の一例に相当する。
【0039】
次に、ゲーム処理部52は、カード20を仮想3次元空間にセットする(ステップS12)。一例として、ゲーム処理部52は、仮想3次元空間内の所定位置にカード20をポリゴンモデルとして配置する。さらに、ゲーム処理部52は、背景画像18を描画するために用意されたバンプマップ30、色情報31等のテクスチャをセットし(ステップS13)、続いて、背景画像18を描画するためのシェーダをセットする(ステップS14)。この場合のシェーダは、背景画像18を描画するためにプログラムされたプログラマブルシェーダであってよく、画像処理プログラムPg2の一部として制御ユニット50に提供されるものであってよい。ステップS14の処理を終えると、ゲーム処理部52は、ステップS11~S14でセットした情報を背景画像18の描画のための情報として画像処理部53に渡し、背景画像18の描画を開始させる(ステップS15)。その後、ゲーム処理部52は
図11の処理を終える。
【0040】
一方、画像処理部53は、ステップS15の処理に対応して
図11の処理を開始する。画像処理部53は、まずゲーム処理部52から与えられた情報に基づいて、ステップS21の頂点シェーダ処理、ステップS22のピクセルシェーダ処理、及びステップS23のポストエフェクト処理を順次実行して背景画像18を描画し、さらには、ゲーム画面10の他の画像を加えた最終的な画像を描画してモニタ6に表示させる。頂点シェーダ処理は、カード20を構成するポリゴンの各頂点の仮想3次元空間における座標を2次元のスクリーン座標系に変換する処理であり、ピクセルシェーダ処理は、スクリーン座標系内における各ピクセルの色情報を決定する処理であり、ポストエフェクト処理は各ピクセルの色情報を所定の条件に従ってさらに補正する処理である。これらの処理は、一般的なシェーダプログラムと同様に行われてよいが、背景画像18の処理に関しては、各ピクセルの法線方向、視線方向、及び環境光の入射方向に基づく処理が含まれ、かつ入射方向にはゲーム機2の姿勢の変化が反映される。それらの処理内容の一例を
図11に付記するが、以下に要点を説明する。
【0041】
まず、ステップS21の頂点シェーダ処理では、ステップS11でセットされたゲーム機2の姿勢、言い換えればジャイロセンサ8の出力に基づいて検出される基準方向に従ってカード20に対する環境光の入射方向が決定される。ただし、基準方向の変化と、入射方向の変化との量的(角度的)な対応関係は、必ずしも1対1の関係に設定されることを要しない。例えば、所定のジャイロ軸の回りに関してジャイロセンサ8が検出した回転角がX°であった場合、同軸回りに入射方向が変化した角度が2倍の2X°に変換されるといったように、基準方向の変化量に対して、入射方向の変化量を一定比率で増加させてもよい。その場合には、ゲーム機2の姿勢の変化に対する背景画像18の変化の程度を拡大して、ホログラムシート状の変化をユーザにより強く印象付けることが可能である。ただし、基準方向の変化量に対して入射方向の変化量を一定比率で縮小させてもよい。1対1の関係ではゲーム機2の姿勢の変化に対して背景画像18の変化が不自然に大きい場合等にそのような縮小関係が設定されてもよい。
【0042】
頂点シェーダ処理では、ステップS12でセットされたカード20のポリゴンモデルを仮想3次元空間に配置し、各ポリゴンの仮想3次元空間における頂点座標を、仮想カメラの結像面に対応する2次元のスクリーン座標系における座標値に変換する処理も行われる。
図5の例では、仮想カメラ21がカード20を法線方向から撮影するように配置され、カード20と仮想カメラ21との位置関係は不変である。したがって、仮想3次元空間におけるカード20の位置及び向きに関わりなく、座標変換後のスクリーン座標系における各ポリゴンの頂点座標は一定である。
【0043】
上述したように、カード20に入射する環境光が平行光であれば、仮想3次元空間に光源22を配置して入射方向を特定しなくとも、ジャイロセンサ8の出力に基づいて特定される基準方向から、入射方向を一義的に求めることができる。また、カード20と仮想カメラ21との対応関係も一定である。そのため、頂点シェーダ処理を省略し、スクリーン座標系における各ポリゴンの頂点座標を直接的に特定し、バンプマップ30や色情報31における座標を特定することも可能である。しかしながら、一般に、シェーダプログラムは仮想3次元空間にポリゴンモデルを配置し、ポリゴンの各頂点の3次元座標をスクリーン座標系の2次元座標に変換する頂点シェーダ処理を実施し、その処理結果を利用してピクセルシェーダ処理を実施するように構成される。よって、カード20のポリゴンモデルを仮想3次元空間に一旦配置し、スクリーン座標系における頂点座標を求める手順を採用すれば、既存のプログラマブルシェーダの応用が可能となり、好都合である。なお、
図8に示したように、仮想3次元空間内でカード20と仮想カメラ21との位置関係を変化させる場合には、頂点シェーダ処理による座標変換処理が必要である。
【0044】
ステップS22のピクセルシェーダ処理では、一例として、スペキュラ処理、ディフューズ処理、及びエミッション処理を経て背景画像18上の各ピクセルの最終色が決定される。この処理において、バンプマップ30で指定される各ピクセルの法線ベクトルN、カード20に対する環境光の入射方向L、及び視線方向Eをパラメータとして参照した演算が行われる。なお入射方向L及び視線方向Eはそれらの方向を持つ単位ベクトルとして表現されて演算に取り込まれる。以下では、入射方向L及び視線方向Eはいずれもベクトルを意味するものとする。
【0045】
スペキュラ処理は、カード20上での鏡面反射が背景画像18の各ピクセルの色情報に与える影響を演算する処理である。例えば、入射方向L及び視線方向Eを加算してハーフベクトルHが求められる。次に、各ピクセルの法線ベクトルNとハーフベクトルHの内積(N・H)に対する所定乗数aのべき乗によって各ピクセルにおける鏡面反射の強さが演算される。さらに、各ピクセルのスペキュラ(鏡面反射)を考慮した色情報としてのスペキュラSpが、スペキュラ色と強さとの乗算によって求められる。スペキュラ色は、一例として、スペキュラマップ32によって指定される各ピクセルの色情報でよい。この処理では、視線方向Eと入射方向Lとのずれが小さく、かつそれらの方向と法線ベクトルNとのずれが小さいほど鏡面反射の強さが増加し、結果としてスペキュラSpは、白色側、換言すればより明るくなる側に変化する。カード20を正面から観察する方向をカード20の全体としての法線方向とすれば、その法線方向に対する入射方向L及び視線方向Eのずれが小さいほど、背景画像18の鏡面反射による明るさが増す一方で、各ピクセルの法線ベクトルNに対する入射方向L及び視線方向Eとのずれに応じて鏡面反射の強さに差が生じることとなる。
【0046】
ディフューズ処理は、カード20上での反射によって生じる拡散光が背景画像18の各ピクセルの色情報に与える影響を演算する処理である。例えば、入射方向Lと各ピクセルの法線ベクトルNとの内積により各ピクセルにおける拡散光の強さが求められる。次いで、各ピクセルのディフューズ(拡散反射)を考慮した色情報としてのディフューズDfが、ディフューズ色と強さとの乗算によって求められる。ディフューズ色は、一例として、ディフューズマップ33によって指定される各ピクセルの色情報でよい。この処理では、入射方向Lと法線ベクトルNとのずれが小さいほど拡散反射の強さが増加し、結果としてディフューズDfは、白色側、換言すればより明るくなる側に変化する。つまり、各ピクセルの法線ベクトルNに対する入射方向Lとのずれに応じて拡散反射の強さに差が生じることとなる。
【0047】
エミッション処理は、背景画像18の色情報をさらに補正するための処理である。スペキュラ処理及びディフューズ処理によって得られる色情報に対して、背景画像18を少なくとも一部の明るさを一様に増加させたい、といったように、色情報を適宜に補正したい場合、その補正量としてエミッションマップ34で指定されたエミッション色をエミッションEmとして設定する。例えば、カード20に対して逆光、つまりはカード20の背後から環境光が当たるような状況をスペキュラ処理及びディフューズ処理で再現すると、カード20での反射がほぼ生じないこととなり、背景画像18が一様に黒又はこれに近い暗色で表現される場合がある。そのような場合、エミッションEmを設定して全体的な明るさを増加させる、といった場合にエミッションEmが設定されてよい。その他にも、背景画像18の明るさが上限又は下限を超えないように色情報を補正するといった処理が適用されてもよい。ただし、エミッションEmは省略されてもよい。
【0048】
ピクセルシェーダ処理では、上記のように求められたスペキュラSp、ディフューズDf及びエミッションEmを加算することにより、各ピクセルの最終的な色情報が演算される。得られる色情報は、背景画像18の各ピクセルの色情報を、各ピクセルにおける法線ベクトルNに対する入射方向L及び視線方向Eの関係に応じた鏡面反射及び拡散反射をパラメータとして参照して変化させたものとなる。したがって、バンプマップ30にて指定される各ピクセルの法線ベクトルNを現実のホログラムシートの微細な凹凸に倣って変化させることにより、ホログラムシート状の色分布を表現することができる。しかも、ゲーム機2の姿勢の変化に対応して入射方向Lを変化させることにより、光が当たる方向に応じて背景画像18が変化する様子をホログラムシート状のそれと同様に表現することが可能である。
【0049】
ステップS23のポストエフェクト処理は、ピクセルシェーダ処理によって決定された背景画像18の各ピクセルの最終色に対して、さらなる視覚効果を追加するために行われる処理である。一例として、輝度が所定の明るさ以上となるピクセルといったように特定の条件を満たすピクセルを抽出し、抽出されたピクセルに対して、ぼかし効果が生じるように色情報を補正するといった処理が行われてよい。ただし、ポストエフェクト処理も適宜に省略可能である。
【0050】
以上では、
図5の例、すなわち、ゲーム機2の姿勢の変化に対して入射方向Lを変化させる場合に対して
図11の処理が適用されるものとしたが、
図6、
図7又は
図8の例であっても、同様に
図11の処理が適用されてよい。すなわち、ゲーム機2の姿勢の変化に対して、視線方向Eを変化させれば
図6の例を実現することができ、視線方向E及び入射方向Lの両者を変化させれば
図7の例を実現することができる。また、ゲーム機2の姿勢の変化に対して仮想3次元空間内でカード20及び仮想カメラ21を移動させるものとすれば、
図8の例を実現することが可能である。
【0051】
本発明は上述した形態に限定されず、適宜の変形又は変更が施された形態にて実施されてよい。例えば、上述したようにカード20を常に正対した状態で撮影した画像をカード画像14として表示する場合、仮想3次元空間にポリゴンモデルとしてカード20を配置し、各ポリゴンの3次元の頂点座標を、仮想カメラ21のスクリーン座標系に変換する処理は必ずしも必要ではない。また、スクリーン座標系に射影されたカード20の各位置の座標もそのような座標変換を経ずとも特定可能であって、バンプマップ30や色情報31の座標との対応関係も一義的に定まる。しかも、ゲーム機2の姿勢の変化と、入射方向L又は視線方向Eとの対応関係に関しても、必ずしも仮想3次元空間におけるシーン構築を要せずして特定することが可能である。したがって、カード20を2次元のスクリーン座標系に配置し、これに対してステップS22以下の処理を行うことも可能である。
【0052】
一方、
図11の処理は、カード画像14のうち、背景画像18の部分を描画するために必要な処理を抜き出して示したものであって、メイン画像16等の他の画像については適宜の手法で描画されてよい。メイン画像16やフレーム画像17の少なくとも一部を対象として陰影を付すといった処理を行う場合には、それに適したシェーダプログラムを用意し、
図11の処理の前後において、適宜の順序で処理を連ねるようにしてもよい。さらに、メイン画像16等の一部を背景画像18と同様にホログラムシート状に変化させる場合には、その部分にも
図11の処理が適用されてよい。メイン画像16、フレーム画像17及び背景画像18を別々の処理で描画する場合でも、Zバッファを用いればその処理の順序は不問であり、背後の画像ほど先に処理することは必須ではない。
【0053】
図11で示した画像処理部53の処理内容は一例であって、ゲーム機2の姿勢の変化に伴って入射方向L及び視線方向Eの少なくともいずれか一方を変化させ、その変化が背景画像18の表現に対してホログラムシート状の変化を与えるものであれば適宜に変更されてよい。
【0054】
図11の処理では、ピクセルシェーダ処理において入射方向L及び視線方向Eのいずれもパラメータとして考慮して色情報を決定したが、入射方向Lの変化を背景画像18の表現に反映させる限りにおいては、視線方向Eをパラメータとして考慮せず、入射方向Lと法線ベクトルNとの関係から各ピクセルの色情報を決定するといった簡易的な処理が適用されてもよい。その場合でも、法線ベクトルNと入射方向Lとの関係の変化を背景画像18の表現に反映させて、光が当たる方向の変化に対応した背景画像18の変化を表現することが可能である。すなわち、背景画像18の色情報を決定するために必要な基準方向をゲーム機2のセンサの出力に基づいて検出し、検出された基準方向と関連付けて入射方向Lを変化させつつ、その入射方向をパラメータとして参照して、背景画像18の表現がホログラムシート状に変化するように各ピクセルの色情報を決定してもよい。
【0055】
上記の形態では、ジャイロセンサ8の出力を利用して基準方向を検出し、その基準方向の変化に応じて入射方向L及び視線方向Eの少なくともいずれか一方の方向を変化させたが、基準方向の検出に用いるセンサは、ジャイロセンサ8による例に限らない。方向の情報を含んだ信号を出力可能なセンサであれば、基準方向の検出に適宜に用いることが可能である。また、基準方向はゲーム機2の姿勢と関連付けて設定される例に限らない。基準方向は、背景画像18の表現に変化を与えるように変化する方向であって、入射方向Lや視線方向Eを特定するための基準となるものであればよく、ゲーム機2の姿勢を代表する方向であることを必ずしも要しない。
【0056】
例えば、
図12に示したように、ゲーム機2に設けられたカメラ60を利用してユーザの周囲の外界を撮影し、得られた画像から現実世界における光源(太陽の場合も含む。)61からの環境光の入射方向Lrを検出し、これを基準方向としてカード20に対する入射方向Lを決定してもよい。この場合、カメラ60が基準方向を検出するためのセンサの一例として機能する。現実世界の環境光の方向を基準方向として検出すれば、その方向の変化をカード20に対する入射方向Lの変化に反映させることができる。それにより、ゲーム機2の周囲の環境光の方向の変化に応じて背景画像18の表現を変化させることが可能である。
【0057】
現実の入射方向Lrの検出はカメラ60に限らず、入射方向Lrと相関する信号が得られるものであればよい。例えば、ゲーム機2の周囲の現実世界の明暗を明るさセンサで検出する場合、明度の変化を手がかりとして現実世界における入射方向Lrを判別し得る。複数の明るさセンサを、入射方向Lrに応じた出力差が生じるようにゲーム機2に設け、それらの明るさセンサの出力に基づいて入射方向Lrを検出してもよい。例えば、複数の明るさセンサをそれぞれが感度を有する方向を差別化して配置すれば、各センサが検出する明るさの差を手掛かりとして入射方向Lrを判別し得る。なお、
図12において光源61は便宜的に示したものである。光源61は必ずしもカメラ60の撮影範囲PAに含まれていることを要しない。
【0058】
視線方向Eに関しても、
図13に示すようにカメラ60の画像からユーザの現実の目62の位置を判別し、その判別結果からユーザの現実の視線方向Erを検出し、これを基準方向としてカード20に対する視線方向Eを決定してもよい。この場合もカメラ60が基準方向の検出に利用されるセンサの一例として機能する。現実の視線方向Erに従ってカード20に対する視線方向Eを決定する手法は、
図6のようにカード20に対して視線方向Eを相対的に変化させる場合に適用可能である。その場合、現実の視線方向Erをカード20に対する視線方向Eに反映させることができる。さらに、カメラ60による現実の入射方向Lrを併せて基準方向として検出し、現実の入射方向Lr及び視線方向Erの変化と関連付けてカード20に対する入射方向L及び視線方向Eを変化させてもよい。このような手法は、
図7の例のようにゲーム機2の姿勢の変化に対して入射方向L及び視線方向Eの両者を変化させる場合に好適に用いることができる。入射方向L及び視線方向Eを現実世界の入射方向Lr及び視線方向Erに反映させることが可能である。ユーザの現実の目62の位置を判別する方法は既知の方法によることができる。
【0059】
上記の形態では、カード20が平板状のオブジェクトであることを前提としたが、カード20をコントローラ5の姿勢に対応して曲げ変形させてもよい。例えば、
図1のゲーム機2において、コントローラ5A、5Bが本体4から分離可能である場合には、各コントローラ5A、5Bのそれぞれが互いに異なる姿勢を取り得る。よって、例えば左の第1コントローラ5Aが左側に傾けられ、右の第2コントローラ5Bが右側に傾けられた場合、これをカード20の曲げ操作であると見做して、
図14に示すようにカード20の左右を曲げ変形させてもよい。この場合、バンプマップ30で指定される法線ベクトルNをカード20の曲げの程度に応じて変化させれば、カード20の曲げに応じて入射方向L及び視線方向Eを相対的に変化させ、その変化に応じて背景画像18の表現を変化させることが可能である。なお、
図14ではカード20の左右端を下方に曲げ変形させた状態を例示するが、コントローラ5A、5Bを上記と逆方向に傾けた場合にはカード20の左右端を上方に変位させることも可能である。さらには、コントローラ5A、5Bを前方又は後方にそれぞれ相反的に傾けた場合に、カード20の上下端を曲げ変形させることも可能である。
【0060】
上記の形態では、カード画像14の背景画像18の表現をホログラムシート状に変化させるものとしたが、本発明よってホログラムシート状の表現が適用される対象領域は背景画像18に限らない。カード状のオブジェクトの適宜の領域が対象領域として設定されてよい。カード状のオブジェクトは、ゲームにて利用されるカードに限定されない。本発明は、各種のカード状のオブジェクトの少なくとも一部を対象領域として、その表現をホログラムシート状に変化させる用途に適用可能である。
【0061】
本発明におけるユーザ装置は、ゲーム機に限らず、ユーザによって操作される各種の装置、例えばスマートフォン、タブレット、モバイルPC等であってもよい。また、本発明は、ユーザ装置とは異なるコンピュータに処理を実行させ、その処理結果に応じた画像をユーザ装置に表示出力させるものであってもよい。例えば、ユーザ装置をサーバ、リモートアクセス先のコンピュータ等の他のコンピュータに対する遠隔入出力端末装置として機能させ、カード状のオブジェクトを描画するための処理を他のコンピュータにて実行し、処理結果をユーザ装置に表示させるようにしてもよい。
【0062】
上述した実施の形態及び変形例のそれぞれから導き出される本発明の各種の態様を以下に記載する。なお、以下の説明では、本発明の各態様の理解を容易にするために添付図面に図示された対応する構成要素を括弧書きにて付記するが、それにより本発明が図示の形態に限定されるものではない。
【0063】
本発明の一態様に係るコンピュータプログラムは、カード状のオブジェクト(20)の画像(14)をユーザ装置(2)に表示させる処理を所定のコンピュータ(50)に実行させるためのコンピュータプログラム(Pg)であって、前記オブジェクトに含まれる対象領域の色情報を決定するために必要な基準方向(一例としてゲーム機2の姿勢を示す方向)を前記ユーザ装置のセンサ(8;60)の出力に基づいて検出するステップ(S11)と、前記検出された基準方向の変化に伴って前記対象領域の表現がホログラムシート状に変化するように、前記基準方向と関連付けて前記対象領域の色情報を決定するステップ(S21~S23)と、を前記コンピュータに実行させるように構成され、前記色情報を決定するステップでは、前記対象領域に入射する光の入射方向(L)と、前記対象領域に関する前記ユーザ装置のユーザの視線方向(E)との少なくともいずれか一方の方向を前記基準方向と関連付けて変化させつつ、前記入射方向及び前記視線方向を参照して前記色情報を決定するものである。
【0064】
上記態様によれば、対象領域の色情報を決定するにあたって入射方向及び視線方向を参照することにより、オブジェクトにどの方向から光が当たり、かつオブジェクトをどの方向から観察しているか、を対象領域の表現に反映させることができる。しかも、ユーザ装置のセンサの出力に基づいて検出する基準方向の変化と関連付けて入射方向及び視線方向の少なくともいずれか一方を変化させることにより、対象領域の表現を、現実のホログラムシートのように、光が当たる方向や観察する方向に応じて多様に変化させることができる。
【0065】
上記態様において、前記色情報を決定するステップでは、前記入射方向を前記基準方向に応じて変化させる一方で、前記視線方向を一定に維持して前記色情報を決定してもよい(一例として
図5参照)。あるいは、前記色情報を決定するステップでは、前記視線方向を前記基準方向に応じて変化させる一方で、前記入射方向を一定に維持して前記色情報を決定してもよい(一例として
図6参照)。さらに、前記色情報を決定するステップでは、前記視線方向及び前記入射方向のそれぞれを前記基準方向に応じて変化させつつ前記色情報を決定してもよい(一例として
図7参照)。いずれの場合でも、オブジェクトの対象領域に対する光の入射方向又は視線方向のいずれか、又は両者を、ユーザ装置のセンサを用いて検出した基準方向の変化と関連付けて変化させて対象領域の表現をホログラムシート状に変化させることが可能である。
【0066】
上記態様において、前記色情報を決定するステップでは、前記対象領域を複数のピクセルの集合として定義したときの各ピクセルの法線方向(N)を記述したバンプマップ(30)の情報に基づいて、各ピクセルにおける法線方向を判別し、判別された法線方向と前記入射方向及び前記視線方向との関係に応じて色情報が変化するようにして各ピクセルの色情報を決定してもよい。これによれば、バンプマップの情報にて各ピクセルの法線方向を種々変化させることにより、対象領域に疑似的な凹凸を付与し、法線方向と光の入射方向や視線方向との関係に応じて色情報を適宜に変化させることが可能である。
【0067】
本発明の他の態様に係るコンピュータプログラムは、カード状のオブジェクト(20)の画像(14)をユーザ装置(2)に表示させる処理を所定のコンピュータ(50)に実行させるコンピュータプログラム(Pg)であって、前記オブジェクトに含まれる対象領域の色情報を決定するために必要な基準方向(一例としてゲーム機2の姿勢を示す方向)を前記ユーザ装置のセンサ(8;60)の出力に基づいて検出するステップ(S11)と、前記検出された基準方向の変化に伴って前記対象領域の表現がホログラムシート状に変化するように、前記基準方向と関連付けて前記対象領域の色情報を決定するステップ(S21~S23)と、を前記コンピュータに実行させるように構成され、前記色情報を決定するステップでは、前記対象領域に入射する光の入射方向(L)を前記基準方向と関連付けて変化させつつ、前記入射方向を参照して前記色情報を決定するものである。
【0068】
上記態様によれば、対象領域の色情報を決定するにあたって入射方向を参照することにより、オブジェクトにどの方向から光が当たっているか、を対象領域の表現に反映させることができる。しかも、ユーザ装置のセンサの出力に基づいて検出する基準方向の変化と関連付けて入射方向を変化させることにより、対象領域の表現を、現実のホログラムシートのように、光が当たる方向に応じて多様に変化させることができる。
【0069】
上記の各態様においては、前記オブジェクトが前記ユーザ装置にてプレイされるゲームにて表示されるべきカードであってもよい。この場合、前記対象領域が、前記カードの背景の少なくとも一部であってもよい。これによれば、ゲームに用いられるカードの少なくとも一部、さらにはカードの背景の少なくとも一部に関して、その表現をホログラムシート状に変化させることにより、カードの装飾性、演出性を高め、ユーザの所有欲、あるいは獲得意欲を高め、ひいてはゲームの興趣を高めることができる。
【0070】
上記各態様において、前記センサは、前記ユーザ装置の姿勢に応じた信号を出力するものであってもよい。これによれば、ユーザ装置の姿勢の変化に応じてオブジェクトの対象領域の表現をホログラムシート状に変化させることが可能である。
【0071】
なお、本発明の一態様に係るコンピュータプログラムは、記憶媒体に記憶された状態で提供されてもよい。この記憶媒体を用いれば、例えばコンピュータに本発明に係るコンピュータプログラムをインストールして実行することにより、そのコンピュータを利用して本発明のシステムを実現することができる。コンピュータプログラムを記憶した記憶媒体は、CDROM等の非一過性の記憶媒体であってもよい。
【0072】
本発明は、カード状のオブジェクト(20)の画像(14)をユーザ装置(2)に表示させる処理を所定のコンピュータ(50)に実行させる画像表示方法であって、上記態様のコンピュータプログラム(Pg)に従って、前記基準方向を前記ユーザ装置のセンサ(8)の出力に基づいて検出するステップ(S11)と、前記対象領域の色情報を決定するステップ(S21~S23)と、を前記コンピュータに実行させる画像表示方法の態様として構成されてもよい。また、本発明は、カード状のオブジェクト(20)の画像(14)をユーザ装置(2)に表示させる処理を所定のコンピュータ(50)に実行させる画像表示システム(1)であって、上記態様のコンピュータプログラム(Pg)に従って、前記基準方向を前記ユーザ装置のセンサ(8)の出力に基づいて検出するステップ(S11)と、前記対象領域の色情報を決定するステップ(S21~S23)と、を前記コンピュータに実行させる画像表示システムの態様として構成されてもよい。これらの画像表示方法及び画像表示システムによれば、上記態様のコンピュータプログラムに従って、カード状のオブジェクトの少なくとも一部の領域の表現をホログラムシート状に変化させることが可能である。
【符号の説明】
【0073】
1 ゲームシステム(画像表示システム)
2 ゲーム機(ユーザ装置)
8 ジャイロセンサ
14 カード画像
18 背景画像(対象領域)
20 カード(オブジェクト)
30 バンプマップ
50 制御ユニット
60 カメラ
E 視線方向
L 入射方向
N 法線ベクトル(法線方向)