(57)【特許請求の範囲】
【請求項１】
コンピュータを、
仮想空間内のオブジェクトとして、少なくとも第一のオブジェクト、第二のオブジェクトおよび注視オブジェクトを仮想空間内に配置する配置手段、
仮想空間内に設定される視点および注視点に基づいて、前記オブジェクトを座標変換して画面に表示する手段、
仮想空間内で前記第一のオブジェクトを移動させる手段、
仮想空間内で前記視点および注視点を移動制御する手段、
仮想空間内を移動する前記第二のオブジェクトと、前記第一のオブジェクトとの関係に基づくイベントを発生させる手段、
前記イベントが発生した場合に、前記注視オブジェクトに定められた対象点を注視点に設定し、前記第一のオブジェクト、前記第二のオブジェクトおよび前記注視オブジェクトが前記画面に表示されるように前記視点を設定する設定手段
として機能させる画像処理プログラム。
【請求項２】
請求項１に記載の画像処理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオゲームやＣＧ（Computer  Graphics）ビデオ等における表示画像の生成技術に関する。
【背景技術】
【０００２】
広告ビジネスの発展により、ビデオゲームやＣＧビデオ等の表示画像の中に広告を挿入するケースが増えてきている（例えば、特許文献１参照。）。例えば、町並みの風景画像の中に所定の広告看板の画像を表示する等により、不自然さのない形で広告の挿入が行われている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−５８９１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ビデオゲームやＣＧビデオ等の表示画像の中に広告を挿入する場合、広告料は、視聴者に広告が提示される回数や提示される広告の態様に応じたものとなる。
【０００５】
昨今では、ビデオゲーム等の中にブラックボックス化された広告管理プログラムモジュールを埋め込み、広告画像の割り当てと広告提供状態の測定とを自動に行うシステムも導入されつつある。この場合、広告管理プログラムモジュールは、予めゲーム内に設けられたブランクの広告看板等に所定の広告画像を自動に割り当てるとともに、広告看板等の表示画面上の面積割合や表示継続時間等に応じて有効な広告表示であるか否かを判断して課金ポイントを発生させ、ネットワーク経由でセンタ側に課金ポイント情報を送信する。また、広告管理プログラムモジュールは、ネットワーク経由で最新の広告画像もセンタ側から取得する。
【０００６】
ネットワーク利用によるセンタ管理であるか否かにかかわらず、広告料収入を増やすためには、効果的な広告を行うことが不可欠である。しかし、単に大きな面積割合で長時間にわたって広告画像を表示すればよいというものではなく、自然な広告提示となることが肝要である。あまりに強引な広告提示は視聴者の反感を招き、広告効果を却って低下させてしまい、ひいてはビデオゲームやＣＧビデオ等の主たるコンテンツ自体の価値を低下させてしまいかねない。
【０００７】
本発明は上記の従来の問題点に鑑み提案されたものであり、その目的とするところは、自然な形で効果的に広告を表示させることのできる画像処理プログラムおよびコンピュータ読み取り可能な記録媒体を提供することにある。
【課題を解決するための手段】
【０００８】
上記の課題を解決するため、本発明にあっては、コンピュータを、仮想空間内のオブジェクトとして、少なくとも第一のオブジェクト、第二のオブジェクトおよび注視オブジェクトを仮想空間内に配置する配置手段、仮想空間内に設定される視点および注視点に基づいて、前記オブジェクトを座標変換して画面に表示する手段、仮想空間内で前記第一のオブジェクトを移動させる手段、仮想空間内で前記視点および注視点を移動制御する手段、仮想空間内を移動する前記第二のオブジェクトと、前記第一のオブジェクトとの関係に基づくイベントを発生させる手段、前記イベントが発生した場合に、前記注視オブジェクトに定められた対象点を注視点に設定し、前記第一のオブジェクト、前記第二のオブジェクトおよび前記注視オブジェクトが前記画面に表示されるように前記視点を設定する設定手段として機能させるようにしている。
【発明の効果】
【０００９】
本発明の画像処理プログラムおよびコンピュータ読み取り可能な記録媒体にあっては、自然な形で効果的に広告を表示させることができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態にかかる画像処理装置の構成例を示す図である。
【図２】画像処理装置内で処理に用いられるデータ例を示す図である。
【図３】実施形態の処理例を示すフローチャートである。
【図４】ビュー空間および射影空間の例を示す図である。
【図５】画面例を示す図（その１）である。
【図６】画面例を示す図（その２）である。
【図７】カメラ設定処理の例を示すフローチャート（その１）である。
【図８】カメラ設定処理の例を示すフローチャート（その２）である。
【図９】カメラ設定処理の例を示すフローチャート（その３）である。
【図１０】カメラ設定処理における各種計算対象の説明図（その１）である。
【図１１】カメラ設定処理における各種計算対象の説明図（その２）である。
【図１２】画面例を示す図（その３）である。
【図１３】画面例を示す図（その４）である。
【発明を実施するための形態】
【００１１】
以下、本発明の好適な実施形態につき説明する。なお、以下では画像処理装置としてビデオゲーム装置に適用した場合について説明する。
【００１２】
＜構成＞
図１は本発明の一実施形態にかかる画像処理装置１の構成例を示す図である。
【００１３】
図１において、ビデオゲーム装置等の画像処理装置１は、主たる制御動作を行うＣＰＵ（Central  Processing  Unit）１０１と、実行中のプログラムおよびデータを保持するＲＡＭ（Random  Access  Memory）等のシステムメモリ１０２と、制御プログラムおよび各種データを保持するＲＯＭ（Read  Only  Memory）、ＨＤＤ（Hard  Disk  Drive）、フラッシュメモリ、ＣＤ（Compact  Disk）ドライブ、ＤＶＤ（Digital  Versatile  Disk）ドライブ等の記憶装置１０３と、起動プログラムを保持するブートＲＯＭ１０４と、ボタン、ハンドル、アクセルペダル、ブレーキペダル等のペリフェラルデバイスとのインタフェースを行うペリフェラルＩ／Ｆ（Interface）１０５とを備え、これらはシステムバスの調停を行うバスアービタ１０６に接続されている。
【００１４】
また、バスアービタ１０６には、グラフィックメモリ１０８を用いてポリゴンを使用した３次元グラフィックスの描画処理を行うＧＰＵ（Graphics  Processing  Unit）１０７が接続され、このＧＰＵ１０７には表示用のモニタ１０９が接続されている。また、バスアービタ１０６には、オーディオメモリ１１１を用いて音声出力を行うオーディオプロセッサ１１０が接続され、このオーディオプロセッサ１１０には音声出力用のスピーカ１１２が接続されている。更に、バスアービタ１０６には通信Ｉ／Ｆ１１３が接続され、通信Ｉ／Ｆ１１３の他端はネットワークに接続され、他のビデオゲーム装置や管理用サーバに接続される。
【００１５】
図２は画像処理装置１内で処理に用いられるデータ例を示す図である。データには、ステージ毎ゲーム内広告データとモデル関連データと一時的データとが含まれる。
【００１６】
ステージ毎ゲーム内広告データには、ゲームの進行により遷移する各ステージに対応したステージ＃１ゲーム内広告データ、ステージ＃２ゲーム内広告データ、・・が含まれる。ステージ＃１ゲーム内広告データ、ステージ＃２ゲーム内広告データ、・・のそれぞれには、ゲーム内広告個数と、ゲーム内広告毎のゲーム内広告番号、４隅の頂点座標、法線ベクトル、内容確認可能最大距離、広告画像等が含まれる。４隅の頂点座標とは、矩形状の広告の輪郭を特定する３次元座標である。法線ベクトルとは、矩形状の広告面の向きを表す３次元ベクトルである。内容確認可能最大距離とは、広告の表示内容に応じ、内容が判別可能な最大の距離（視点となる仮想カメラと広告面との距離）である。
【００１７】
モデル関連データには、プレイヤキャラクタデータと敵キャラクタデータと視線透過判定用ステージモデルとが含まれている。
【００１８】
プレイヤキャラクタデータは、主としてプレイヤの操作によって制御されるキャラクタのデータであり、一般的な３Ｄデータ等の他に顔基準座標を含んでいる。顔基準座標は、例えば、首のやや上の３次元座標である。
【００１９】
敵キャラクタデータは、プレイヤキャラクタと敵対するキャラクタのデータであり、一般的な３Ｄデータ等の他に行動スクリプトと顔基準座標を含んでいる。行動スクリプトは、敵キャラクタの行動開始条件と行動内容とを記述したものである。例えば、その敵キャラクタから追尾開始距離以内にプレイヤキャラクタが入ったことを検知すると、その敵キャラクタはプレイヤキャラクタの追尾を開始する。また、その敵キャラクタから接触距離以内にプレイヤキャラクタが入ったことを検知すると、その敵キャラクタはプレイヤキャラクタとの会話を開始する。
【００２０】
視線透過判定用ステージモデルは、構造物等の輪郭を簡略化し、視線が透過するか否かを判定するためのモデルデータである。
【００２１】
一時的データには、会話中点座標talk_center、現時点最大画面上広告面積near_size、現時点カメラ設定near_camera、ゲーム内広告番号a、広告中点座標disp_center、会話中点→広告中点ベクトルtalk_to_disp、広告傾きdisp_rot、カメラ視線傾きup_rot、広告下端中点座標disp_low、広告対象点座標disp_target、キャラクタ間距離charactor_distance、広告→会話中点ベクトルdisp_to_talk、仮カメラ座標camera_pos、仮カメラcamera、画面上広告面積sizeが含まれる。それぞれの意味については後述する。
【００２２】
＜動作＞
図３は上記の実施形態の処理例を示すフローチャートである。
【００２３】
なお、図３ではゲームの流れを主に示してあるため、表示画像の生成については特に示していない。表示画像の生成に関しては、ＣＰＵ１０１（図１）の制御のもと、ゲームロジックに従って表示すべきオブジェクトのモデルデータが仮想３次元空間内に配置され、ＧＰＵ１０７内のバーテックスシェーダおよびピクセルシェーダの処理により、視点（仮想カメラ）から見た２次元画像に変換されて生成される。視点と注視点は、プレイヤの操作により移動するオブジェクトの移動に伴って、そのオブジェクトを画面に含むように移動制御されてもよいし、プレイヤの操作（十字キーやＬＲボタン等）に応じて移動してもよい。
【００２４】
バーテックスシェーダによる処理として、ポリゴンの頂点のビュー空間および射影空間への変換、ラスタライズ等が行われる。ピクセルシェーダによる処理として、ポリゴンの面へのテクスチャリング等が行われる。
【００２５】
図４（ａ）はビュー空間の例を示している。ビュー空間は視点ＶＰを基準とした座標空間であり、視点ＶＰから視方向に対して横軸がｘ軸、縦軸がｙ軸、奥行きがｚ軸となる。視点ＶＰの視方向に対してｘ軸方向およびｙ軸方向にそれぞれ画角だけ振った範囲の、視点ＶＰに近い側には近クリップ平面ＣＰ１が設定され、遠い側には遠クリップ平面ＣＰ２が設定される。近クリップ平面ＣＰ１と遠クリップ平面ＣＰ２と画角を示す面で囲われる６面体は視錐台と呼ばれ、その内部に配置されるモデル（オブジェクト）が描画対象となる。視錐台の位置は、ビデオゲームの場合、プレイヤ（遊戯者）が操作手段により操作するプレイヤキャラクタを含むように決定される。図４（ｂ）は射影空間の例を示しており、図４（ａ）に示したビュー空間を、−１≦ｘ≦１、−１≦ｙ≦１、０≦ｚ≦１の範囲に変換したものである。
【００２６】
図３に戻り、処理を開始すると（ステップＳ１０１）、プレイヤの操作に応じて３次元仮想空間内をプレイヤキャラクタが移動するアドベンチャーモードの処理（ステップＳ１０２）を行う。
【００２７】
アドベンチャーモードの処理（ステップＳ１０２）においては、いずれかの敵キャラクタが追尾開始距離に入ったプレイヤキャラクタを検知すると（ステップＳ１０３のＹｅｓ）、プレイヤキャラクタの追尾を開始する（ステップＳ１０４）。図５は、アドベンチャーモードにおいて、プレイヤキャラクタＣ１が敵キャラクタＣ２の追尾開始距離内に入ったことにより追尾が開始される時点の画面例を示している。なお、Ａ１、Ａ２は広告（広告看板）である。
【００２８】
図３に戻り、更に、その敵キャラクタが接触距離に入ったプレイヤキャラクタを検知すると（ステップＳ１０５のＹｅｓ）、会話モードの処理（ステップＳ１０６）に移行する。図６は、アドベンチャーモードにおいて、プレイヤキャラクタＣ１が敵キャラクタＣ２に追いつかれて敵キャラクタＣ２の接触距離内に入ったことにより会話が開始される時点の画面例を示している。
【００２９】
図３に戻り、会話モードの処理（ステップＳ１０６）に入ると、初めにカメラ設定処理（ステップＳ１０７）を行い、その後は通常の会話モードの処理を行う。カメラ設定処理の詳細は後述するが、そのシーンで表示可能な複数の広告の中から配置的に最も効果的な広告を選択し、最も効果的なカメラ設定（視点および注視点）を決定する。なお、カメラ設定処理により設定された視点および注視点は、一定時間またはプレイヤからの操作があるまで等の所定の間、移動制御が停止され、広告を注視させることを促す。
【００３０】
そして、会話モードの後にゲーム終了であるか否か判断し（ステップＳ１０８）、ゲーム終了でない場合（ステップＳ１０８のＮｏ）はアドベンチャーモードの処理（ステップＳ１０２）に戻り、ゲーム終了である場合（ステップＳ１０８のＹｅｓ）は処理を終了する（ステップＳ１０９）。
【００３１】
図７〜図９はカメラ設定処理（図３のステップＳ１０７）の例を示すフローチャートである。なお、カメラ設定処理は図１のＣＰＵ１０１による処理を想定しているが、ＧＰＵ１０７による処理としてもよい。
【００３２】
図７において、カメラ設定処理を開始すると（ステップＳ２０１）、プレイヤキャラクタの顔と敵キャラクタの顔との中点座標を算出し、会話中点座標talk_centerに設定する（ステップＳ２０２）。図１０はプレイヤキャラクタＣ１と敵キャラクタＣ２の配置を概略的に示しており、プレイヤキャラクタＣ１の顔基準座標Ｐ１と敵キャラクタＣ２の顔基準座標Ｐ２を結んだ線分の中点座標が会話中点座標talk_centerとなる。
【００３３】
図７に戻り、現時点最大画面上広告面積near_sizeに「０」を設定し、現時点カメラ設定near_cameraに通常の会話カメラを設定し、ゲーム内広告番号aに「０」を設定する（ステップＳ２０３）。
【００３４】
次いで、ゲーム内広告番号aが当該ステージ内のゲーム内広告個数以上であるか否か判断し（ステップＳ２０４）、ゲーム内広告番号aが当該ステージ内のゲーム内広告個数以上である場合（ステップＳ２０４のＹｅｓ）、現時点カメラ設定near_cameraをゲームのカメラに設定し（図９のステップＳ２２４）、処理を終了する（図９のステップＳ２２５）。
【００３５】
ゲーム内広告番号aが当該ステージ内のゲーム内広告個数以上でない場合（ステップＳ２０４のＮｏ）、当該ステージ内のａ番目の広告画面の４隅の頂点の中点座標を算出し、広告中点座標disp_centerに設定する（ステップＳ２０５）。図１０の上方に頂点Ｖ１〜Ｖ４で囲まれる広告Ａ１の中点座標が広告中点座標disp_centerとなる。
【００３６】
図７に戻り、会話中点座標talk_centerから広告中点座標disp_centerへ向くベクトルを算出し、会話中点→広告中点ベクトルtalk_to_dispに設定する（ステップＳ２０６）。図１０に、会話中点座標talk_centerから広告中点座標disp_centerへ向く会話中点→広告中点ベクトルtalk_to_dispを示す。
【００３７】
図７に戻り、会話中点→広告中点ベクトルtalk_to_dispに対するａ番目の広告の傾きを法線から算出し、広告傾きdisp_rotに設定する（ステップＳ２０７）。図１０に、会話中点→広告中点ベクトルtalk_to_dispと広告Ａ１の法線Ｎのなす角としての広告傾きdisp_rotを示す。
【００３８】
図７に戻り、会話中点→広告中点ベクトルtalk_to_dispが所定値（例えば６７．５°）より小さいか否か判断する（ステップＳ２０８）。会話中点→広告中点ベクトルtalk_to_dispが所定値より小さくない場合（大きい場合）（ステップＳ２０８のＮｏ）、その広告の視認は角度的に困難であると判断し、ゲーム内広告番号aのインクリメント（図９のステップＳ２２３）を経てゲーム内広告個数との比較（ステップＳ２０４）に戻る。
【００３９】
会話中点→広告中点ベクトルtalk_to_dispが所定値より小さい場合（ステップＳ２０８のＹｅｓ）、会話中点→広告中点ベクトルtalk_to_dispのｘｚ平面に対する傾きを算出し、カメラ視線傾きup_rotに設定する（ステップＳ２０９）。図１０に、ｘｚ平面に対する会話中点→広告中点ベクトルtalk_to_dispの傾きであるカメラ視線傾きup_rotを示す。
【００４０】
次に、図８において、カメラ視線傾きup_rotが所定値より小さいか否か判断する（ステップＳ２１０）。カメラ視線傾きup_rotが所定値より小さくない場合（大きい場合）（ステップＳ２１０のＮｏ）、その広告を視認するには上を向きすぎることとなって不自然になると判断し、ゲーム内広告番号aのインクリメント（図９のステップＳ２２３）を経てゲーム内広告個数との比較（ステップＳ２０４）に戻る。
【００４１】
カメラ視線傾きup_rotが所定値より小さい場合（ステップＳ２１０のＹｅｓ）、当該ステージ内のａ番目の広告画面の下２隅の頂点の中点座標を算出し、広告下端中点座標disp_lowに設定する（ステップＳ２１１）。図１０に、広告Ａ１の頂点Ｖ３、Ｖ４の中点座標としての広告下端中点座標disp_lowを示す。
【００４２】
図８に戻り、カメラ視線傾きup_rotに応じて、傾きが少なければ広告中点座標disp_center、傾きが大きければ広告下端中点座標disp_lowに近づく点を算出し、広告対象点座標disp_targetに設定する（ステップＳ２１２）。すなわち、カメラの視線が上方を向くと不自然さが強くなるため、カメラの視線の傾きを下げる補正を行う。図１０に、広告中点座標disp_centerと広告下端中点座標disp_lowの間に設定された広告対象点座標disp_targetを示す。なお、広告が目線よりも下に掲示される環境にあっては、上記とは逆方向に、広告中点座標と広告上端中点座標の間で補正を行う。
【００４３】
図８に戻り、会話中点座標talk_centerから広告対象点座標disp_targetへのベクトルを算出し、会話中点→広告中点ベクトルtalk_to_dispを更新する（ステップＳ２１３）。図１１に、従前の会話中点→広告中点ベクトルtalk_to_dispに代えて、会話中点座標talk_centerから広告対象点座標disp_targetへのベクトルである新たな会話中点→広告中点ベクトルtalk_to_dispを示す。
【００４４】
図８に戻り、会話中点→広告中点ベクトルtalk_to_dispと視線透過判定用ステージモデルとが交差していないか否か判断する（ステップＳ２１４）。すなわち、会話中点座標talk_centerと広告対象点座標disp_targetの間に遮る物体が存在しないかどうか判断する。
【００４５】
会話中点→広告中点ベクトルtalk_to_dispと視線透過判定用ステージモデルとが交差している場合（ステップＳ２１４のＮｏ）、プレイヤにとって、その広告の視認は困難であるため、ゲーム内広告番号aのインクリメント（図９のステップＳ２２３）を経てゲーム内広告個数との比較（ステップＳ２０４）に戻る。
【００４６】
会話中点→広告中点ベクトルtalk_to_dispと視線透過判定用ステージモデルとが交差していない場合（ステップＳ２１４のＹｅｓ）、プレイヤキャラクタの顔と敵キャラクタの顔との距離を算出し、キャラクタ間距離charactor_distanceに設定する（ステップＳ２１５）。図１１に、プレイヤキャラクタＣ１の顔基準座標Ｐ１と敵キャラクタＣ２の顔基準座標Ｐ２の距離であるキャラクタ間距離charactor_distanceを示す。
【００４７】
図８に戻り、広告対象点座標disp_targetから会話中点座標talk_centerへのベクトルを算出し、広告→会話中点ベクトルdisp_to_talkに設定する（ステップＳ２１６）。広告→会話中点ベクトルdisp_to_talkは会話中点→広告中点ベクトルtalk_to_dispの方向を反転させたものである。
【００４８】
次いで、広告→会話中点ベクトルdisp_to_talkの方向は維持しつつ、長さをキャラクタ間距離charactor_distanceの２倍に調整したベクトルを会話中点座標talk_centerに足した座標を算出し、仮カメラ座標camera_posに設定する（ステップＳ２１７）。なお、２倍という長さは経験上決定された一例であり、適宜変更することができる。図１１に、会話中点座標talk_centerから、広告→会話中点ベクトルdisp_to_talk（会話中点→広告中点ベクトルtalk_to_dispの逆方向）に沿って、広告Ａ１とは反対側にキャラクタ間距離charactor_distanceの２倍の距離だけ離れた場所に設定した仮カメラ座標camera_posを示す。
【００４９】
次に、図９において、仮カメラ座標camera_posをカメラ位置、広告対象点座標disp_targetをカメラが見る点（視方向に存在する点）として、カメラを作成し、仮カメラcameraに設定する（ステップＳ２１８）。
【００５０】
次いで、ａ番目の広告の４隅の点に対して、仮カメラcameraを使って視野変換および透視変換を行い、２Ｄ画面上に変換された４点から画面上での面積を求め、画面上広告面積sizeに設定する（ステップＳ２１９）。
【００５１】
次いで、画面上広告面積sizeが所定の基準値（例えば、画面の面積の２％）以上であるか否か判断する（ステップＳ２２０）。
【００５２】
画面上広告面積sizeが所定の基準値以上でない場合（ステップＳ２２０のＮｏ）、プレイヤにとって、その広告の視認は面積的に困難であるため、ゲーム内広告番号aのインクリメント（ステップＳ２２３）を経てゲーム内広告個数との比較（図７のステップＳ２０４）に戻る。
【００５３】
画面上広告面積sizeが所定の基準値以上である場合（ステップＳ２２０のＹｅｓ）、画面上広告面積sizeが現時点最大画面上広告面積near_sizeより大きいか否か判断する（ステップＳ２２１）。
【００５４】
画面上広告面積sizeが現時点最大画面上広告面積near_sizeより大きくない場合（ステップＳ２２１のＮｏ）、その広告よりも面積的に有利な広告が既に存在すると判断し、ゲーム内広告番号aのインクリメント（ステップＳ２２３）を経てゲーム内広告個数との比較（図７のステップＳ２０４）に戻る。
【００５５】
画面上広告面積sizeが現時点最大画面上広告面積near_sizeより大きい場合（ステップＳ２２１のＹｅｓ）、画面上広告面積sizeを現時点最大画面上広告面積near_sizeに設定し、仮カメラcameraを現時点カメラ設定near_cameraに設定する（ステップＳ２２２）。
【００５６】
次いで、ゲーム内広告番号aをインクリメントし（ステップＳ２２３）、ゲーム内広告個数との比較（図７のステップＳ２０４）に戻る。
【００５７】
図１２は上記の処理により設定されたカメラによる表示画面の例を示しており、プレイヤキャラクタＣ１と敵キャラクタＣ２の会話のシーンの背後に広告Ａ１が大きな面積かつ見やすい角度で自然に表示されている。また、上記の処理によりカメラを設定した後、視点および注視点の移動を一時中止させることにより、プレイヤに広告Ａ１を視認させやすくする。なお、プレイヤから操作入力が所定回数されるまで、視点および注視点の移動を中止することもできる。
【００５８】
また、図１３は比較のために上記のようなカメラ設定処理を行わなかった場合の表示画面の例を示しており、通常の会話カメラの視点に基づき、プレイヤキャラクタＣ１と敵キャラクタＣ２の目線の高さからの表示画面となり、背後の広告（Ａ１）が表示されていない。ここで、通常の会話カメラの注視点位置は、会話中点座標talk_centerに設定されている。また、通常の会話カメラの視点位置は、プレイヤキャラクタが敵キャラクタと接触距離以内になる直前の視点に基づいて設定されている。
【００５９】
＜他のゲーム等への適用例＞
上述した例では、アドベンチャーモードにおいてプレイヤキャラクタ（第一のオブジェクト）が仮想空間内を移動し、敵キャラクタ（第二のオブジェクト）の接触距離以内に入ったというイベントを契機に開始される会話モード（進行が主にシステム側に依存）のカメラ設定として、効果的な広告の視聴を促す視点および注視点を自然に与えている。従って、何らかのイベントの発生によりカメラ制御の主導権がシステム側に移行するタイプのゲーム等であれば、同様に適用することが可能である。
【００６０】
＜野球ゲームへの適用例＞
野手のプレイヤキャラクタ（第一のオブジェクト）がボール（第二のオブジェクト）に飛びついてキャッチをし、制御プログラムによってファインプレーであると判断された場合、このキャッチ場面のリプレイ再生（イベント）を行う。なお、リプレイ中はプレイヤの操作による視点および注視点の移動制御が不可になる。
【００６１】
この際、上述の会話中点座標talk_centerは、例えばボール軌道上の任意点（例えば最高到達点と落下点の中間点）とする。そして、広告対象点座標disp_targetから会話中点座標talk_centerを通る半直線上に設定する仮カメラ座標camera_posは、例えば広告対象点座標disp_targetから会話中点座標talk_centerの距離に、プレイヤキャラクタの顔基準座標Ｐ１とボール軌道上の基準座標Ｐ２との距離の２倍を足した位置座標とする。これにより、広告、プレイヤキャラクタ、およびボールの弾道が表示画面に含まれるようになる。
【００６２】
＜サッカーゲームへの適用例＞
プレイヤキャラクタ（第一のオブジェクト）によって悪質なファウルがされると、審判キャラクタ（第二のオブジェクト）によってイエローカード等が出されるイベント（プレイヤによる視点および注視点の移動制御が不可になる）が発生する。
【００６３】
この際、上述の会話中点座標talk_centerは、例えばプレイヤキャラクタと審判キャラクタとの顔の辺りの中心点またはファウル位置の所定高さの点とする。この後は、上述のアドベンチャーモードの処理と同様である。
【００６４】
また、プレイヤキャラクタがシュート等をしてゴールを決めた場合に、リプレイ再生（イベント）を行う。なお、上述の野球ゲームと同様、リプレイ中はプレイヤの操作による視点及び注視点の移動制御が不可になる。
【００６５】
この際、上述の会話中点座標talk_centerは、例えばゴールを決めたプレイヤキャラクタ（第一のオブジェクト）の顔基準座標Ｐ１とゴール（第二のオブジェクト）の基準座標Ｐ２との中心点とする。そして、広告対象点座標disp_targetから会話中点座標talk_centerを通る半直線上に設定する仮カメラ座標camera_posは、例えば広告対象点座標disp_targetから会話中点座標talk_centerの距離に、プレイヤキャラクタの顔基準座標Ｐ１とゴールの基準座標Ｐ２の距離の２倍を足した位置座標とする。これにより、広告、プレイヤキャラクタ、およびゴールが表示画面に含まれるようになる。
【００６６】
＜レースゲームへの適用例＞
レース中に自車（第一のオブジェクト）が１位走行中等の敵車（第二のオブジェクト）を抜いた場合、レース終了後にリプレイ再生（イベント）を行う。
【００６７】
この際、上述の会話中点座標talk_centerは、抜いた時の自車の基準座標Ｐ１と敵車の基準座標Ｐ２の中心点または道路に設定されたパスの中心点とする。そして、広告対象点座標disp_targetから会話中点座標talk_centerを通る半直線上に設定する仮カメラ座標camera_posは、例えば広告対象点座標disp_targetから会話中点座標talk_centerの距離に、自車の基準座標Ｐ１と敵車の基準座標Ｐ２の距離の２倍を足した位置座標とする。これにより、広告、自車、および敵車が表示画面に含まれるようになる。
【００６８】
＜総括＞
以上説明したように、本実施形態によれば、自然な形で効果的に広告を表示させることができ、広告料収入の増大に寄与することができる。
【００６９】
以上、本発明の好適な実施の形態により本発明を説明した。ここでは特定の具体例を示して本発明を説明したが、特許請求の範囲に定義された本発明の広範な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更を加えることができることは明らかである。すなわち、具体例の詳細および添付の図面により本発明が限定されるものと解釈してはならない。
【符号の説明】
【００７０】
１          画像処理装置
１０１      ＣＰＵ
１０２      システムメモリ
１０３      記憶装置
１０４      ブートＲＯＭ
１０５      ペリフェラルＩ／Ｆ
１０６      バスアービタ
１０７      ＧＰＵ
１０８      グラフィックメモリ
１０９      モニタ
１１０      オーディオプロセッサ
１１１      オーディオメモリ
１１２      スピーカ
１１３      通信Ｉ／Ｆ
【図１】
0005516800.tif 000002
【図２】
0005516800.tif 000003
【図３】
0005516800.tif 000004
【図４】
0005516800.tif 000005
【図７】
0005516800.tif 000006
【図８】
0005516800.tif 000007
【図９】
0005516800.tif 000008
【図１０】
0005516800.tif 000009
【図１１】
0005516800.tif 000010
【図５】
0005516800.tif 000011
【図６】
0005516800.tif 000012
【図１２】
0005516800.tif 000013
【図１３】
0005516800.tif 000014