(57)【要約】【課題】アスペクト比が異なる２つの画面モードのそれぞれにおいて、縦横のバランスを崩さず表示することが可能な画像を生成することができるプログラム、情報記憶媒体、及び画像生成システムを提供すること。【解決手段】オブジェクト空間における仮想カメラから見える画像を生成するためのプログラムであって、画面のアスペクト比が互いに異なる第１の画面及び第２の画面のいずれかの画面モードを選択する選択入力に基づいて、画面モードを決定する画面モード決定部と、オブジェクト空間に配置されたオブジェクトを構成する各頂点の座標を視点座標系に変換し、さらに射影座標系に変換して描画処理を行う描画部としてコンピュータを機能させ、前記描画部は、前記各頂点の座標を射影座標系に変換する際に、決定された画面モードに応じて仮想カメラの画角を調整することを特徴とする。【選択図】図９
2009211243.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクト空間における仮想カメラから見える画像を生成するためのプログラムであって、
画面のアスペクト比が互いに異なる第１の画面及び第２の画面のいずれかの画面モードを選択する選択入力に基づいて、画面モードを決定する画面モード決定部と、
オブジェクト空間に配置されたオブジェクトを構成する各頂点の座標を視点座標系に変換し、さらに射影座標系に変換して描画処理を行う描画部としてコンピュータを機能させ、
前記描画部は、
前記各頂点の座標を射影座標系に変換する際に、決定された画面モードに応じて仮想カメラの画角を調整することを特徴とするプログラム。
【請求項２】
請求項１において、
前記第２の画面は、前記第１の画面を横方向に拡大した画面であって、
前記描画部は、
画面モードが前記第２の画面に決定された場合には、前記各頂点の座標を射影座標系に変換する際に、仮想カメラの画面横方向の画角を拡大することを特徴とするプログラム。
【請求項３】
請求項２において、
前記描画部は、
画面モードが前記第２の画面に決定された場合には、画面横方向に前記第１の画面に対する前記第２の画面の拡大率の逆数倍に縮小する射影マトリクスに基づいて、前記各頂点の座標を射影座標系に変換することを特徴とするプログラム。
【請求項４】
請求項２又は３のいずれかにおいて、
前記描画部は、
画面モードが前記第２の画面に決定された場合には、前記描画処理によって生成された画像に対して平滑化処理を行って表示部に出力することを特徴とするプログラム。
【請求項５】
請求項４において、
前記描画部は、
決定された画面モードに応じて異なるパラメータを用いて前記平滑化処理を行うことを特徴とするプログラム。
【請求項６】
請求項２乃至５のいずれかにおいて、
前記描画部は、
画面モードが前記第２の画面に決定された場合には、前記描画処理によって生成された画像を、画面横方向に前記第１の画面に対する第２の画面の拡大率より小さい拡大率によって拡大して表示部に出力することを特徴とするプログラム。
【請求項７】
請求項１乃至６のいずれかにおいて、
前記描画部は、
決定された画面モードに応じて解像度の異なるテクスチャをオブジェクトにマッピングすることを特徴とするプログラム。
【請求項８】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１乃至７のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項９】
オブジェクト空間における仮想カメラから見える画像を生成する画像生成システムであって、
画面のアスペクト比が互いに異なる第１の画面及び第２の画面のいずれかの画面モードを選択する選択入力に基づいて、画面モードを決定する画面モード決定部と、
オブジェクト空間に配置されたオブジェクトを構成する各頂点の座標を視点座標系に変換し、さらに射影座標系に変換して描画処理を行う描画部とを含み、
前記描画部は、
前記各頂点の座標を射影座標系に変換する際に、決定された画面モードに応じて仮想カメラの画角を調整することを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体、及び画像生成システムに関する。
【背景技術】
【０００２】
従来から、複数のポリゴンが設定されるオブジェクト空間（仮想的な３次元空間）内において、仮想カメラ（所与の視点）から見える画像を生成する画像生成システム（ゲームシステム）が知られており、いわゆる仮想現実を体験できるものとして人気が高い。
【０００３】
このような画像生成システムでは、ゲーム画面をワイド画面対応により表示した場合にゲーム画面上のキャラクタが横に広がってゲーム画面全体のバランスが崩れることを防止するために、ワイド画面が選択された場合にワイド画面の拡大率の逆数倍に縮小する変換マトリクスによってキャラクタの図形データを表現するポリゴンの各頂点の座標を視点座標系に変換するものが知られている（例えば、特許文献１）。
【特許文献１】特許第３９６５７０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら従来の画像生成システムでは、キャラクタの図形データを処理対象としており画面全体での処理を行うことができなかった。
【０００５】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、アスペクト比が異なる２つの画面モードのそれぞれにおいて、縦横のバランスを崩さず表示することが可能な画像を生成することができるプログラム、情報記憶媒体、及び画像生成システムを提供することにある。
【課題を解決するための手段】
【０００６】
（１）本発明は、オブジェクト空間における仮想カメラから見える画像を生成するためのプログラムであって、
画面のアスペクト比が互いに異なる第１の画面及び第２の画面のいずれかの画面モードを選択する選択入力に基づいて、画面モードを決定する画面モード決定部と、
オブジェクト空間に配置されたオブジェクトを構成する各頂点の座標を視点座標系に変換し、さらに射影座標系に変換して描画処理を行う描画部としてコンピュータを機能させ、
前記描画部は、
前記各頂点の座標を射影座標系に変換する際に、決定された画面モードに応じて仮想カメラの画角を調整することを特徴とする。
【０００７】
また本発明は上記各部を含む画像生成システムに関係する。また本発明はコンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶した情報記憶媒体に関係する。
【０００８】
本発明によれば、射影変換（透視投影変換）時に、決定された画面モードに応じて仮想カメラの画角を調整することにより、アスペクト比が異なる２つの画面モードのそれぞれにおいて、縦横のバランスを崩さず表示することが可能な画像を生成することができる。
【０００９】
（２）また本発明に係るプログラム及び情報記憶媒体では、
前記第２の画面は、前記第１の画面を横方向に拡大した画面であって、
前記描画部は、
画面モードが前記第２の画面に決定された場合には、前記各頂点の座標を射影座標系に変換する際に、仮想カメラの画面横方向の画角を拡大することを特徴とする。
【００１０】
本発明によれば、横方向に拡大した画面モードにおいて、縦横のバランスを崩さず表示することが可能な画像を生成することができる。
【００１１】
（３）また本発明に係るプログラム及び情報記憶媒体では、
前記描画部は、
画面モードが前記第２の画面に決定された場合には、画面横方向に前記第１の画面に対する前記第２の画面の拡大率の逆数倍に縮小する射影マトリクスに基づいて、前記各頂点の座標を射影座標系に変換することを特徴とする。
【００１２】
本発明によれば、横方向に拡大した画面モードにおいて、縦横のバランスを崩さず表示することが可能な画像を生成することができる。
【００１３】
（４）また本発明に係るプログラム及び情報記憶媒体では、
前記描画部は、
画面モードが前記第２の画面に決定された場合には、前記描画処理によって生成された画像に対して平滑化処理を行って表示部に出力することを特徴とする。
【００１４】
本発明によれば、横方向に拡大した画面モードにおいて、生成した画像に対して平滑化処理を行うことで、生成した画像が横方向に引き伸ばされて表示部に表示された場合に、見た目に不自然な画像とならないようにすることができる。
【００１５】
（５）また本発明に係るプログラム及び情報記憶媒体では、
前記描画部は、
決定された画面モードに応じて異なるパラメータを用いて前記平滑化処理を行うことを特徴とする。
【００１６】
（６）また本発明に係るプログラム及び情報記憶媒体では、
前記描画部は、
画面モードが前記第２の画面に決定された場合には、前記描画処理によって生成された画像を、画面横方向に前記第１の画面に対する第２の画面の拡大率より小さい拡大率によって拡大して表示部に出力することを特徴とする。
【００１７】
（７）また本発明に係るプログラム及び情報記憶媒体では、
前記描画部は、
決定された画面モードに応じて解像度の異なるテクスチャをオブジェクトにマッピングすることを特徴とする。
【００１８】
本発明によれば、横方向に拡大した画面モードにおいて、横方向に引き伸ばされて表示部に表示された場合に、見た目に不自然な画像とならないようにすることができる。
【発明を実施するための最良の形態】
【００１９】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００２０】
１．構成
図１に本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図１の構成要素（各部）の一部を省略した構成としてもよい。
【００２１】
操作部１６０は、プレーヤがオブジェクト（移動体、プレーヤキャラクタ）の操作データを入力するためのものであり、その機能は、キーボート、マウス、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。
【００２２】
特に本実施形態の操作部１６０は、画面のアスペクト比が互いに異なる第１の画面及び第２の画面のいずれかの画面モードを選択するための操作データを入力するものである。
【００２３】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。なお、オブジェクトデータ記憶部１７６は、オブジェクトのオブジェクトデータが記憶される。
【００２４】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）を記憶することができる。
【００２５】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００２６】
通信部１９６は外部（例えば他のゲームシステム、サーバ）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００２７】
なお、サーバが有する情報記憶媒体や記憶部に記憶されている本実施形態の各部としてコンピュータを機能させるためのプログラムやデータを、ネットワークを介して受信し、受信したプログラムやデータを情報記憶媒体１８０や記憶部１７０に記憶してもよい。このようにプログラムやデータを受信してゲームシステムを機能させる場合も本発明の範囲内に含む。
【００２８】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【００２９】
この処理部１００は記憶部１７０内の主記憶部１７２をワーク領域として各種処理を行う。処理部１００の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００３０】
処理部１００は、画面モード決定部１０８、オブジェクト空間設定部１１０、移動・動作処理部１１２、仮想カメラ制御部１１４、描画部１２０、音生成部１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００３１】
画面モード決定部１０８は、操作部１６０からの、画面のアスペクト比が互いに異なる第１の画面及び第２の画面のいずれかの画面モードを選択する選択入力に基づいて、画面モードを決定する。
【００３２】
オブジェクト空間設定部１１０は、キャラクタ、建物、球場、車、樹木、柱、壁、マップ（地形）などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。例えば、ワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義であり、例えば、ワールド座標系でのＸ、Ｙ、Ｚ軸の各軸の正方向からみて時計回りに回る場合における回転角度）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。
【００３３】
移動・動作処理部１１２は、オブジェクト（キャラクタ、移動体オブジェクト等）の移動・動作演算（移動・動作シミュレーション）を行う。すなわち操作部１６０によりプレーヤが入力した操作データや、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）、物理法則などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させたりする処理を行う。具体的には、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（オブジェクトを構成する各パーツの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００３４】
仮想カメラ制御部１１４は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、操作部１６０によりプレーヤが入力した操作データや、プログラム（移動・動作アルゴリズム）等に基づいて、ワールド座標系における仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（例えば、Ｘ、Ｙ、Ｚ軸の各軸の正方向からみて時計回りに回る場合における回転角度）を制御する処理を行う。要するに、視点位置、視線方向、画角を制御する処理を行う。
【００３５】
描画部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まずオブジェクト（モデル）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むオブジェクトデータ（モデルデータ）が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理（頂点シェーダによるシェーディング）が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【００３６】
頂点処理では、頂点処理プログラム（頂点シェーダプログラム、第１のシェーダプログラム）に従って、頂点の移動処理や、座標変換、例えばワールド座標変換、視野変換（カメラ座標変換）、クリッピング処理、射影変換（透視変換、投影変換）、ビューポート変換（スクリーン座標変換）、光源計算等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。ジオメトリ処理後のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、オブジェクトデータ記憶部１７６に保存される。
【００３７】
特に本実施形態の描画部１２０は、オブジェクト空間に配置されたオブジェクトを構成する各頂点の座標を視点座標系に変換（視野変換）し、さらに射影座標系に変換（射影変換）して描画処理を行い、前記各頂点の座標を射影座標系に変換する際に、画面モード決定部１０８によって決定された画面モードに応じて仮想カメラの画角を調整する。
【００３８】
また描画部１２０は、前記第２の画面が前記第１の画面を横方向に拡大した画面である場合に、画面モード決定部１０８によって画面モードが前記第２の画面に決定された場合には、前記各頂点の座標を射影座標系に変換する際に、仮想カメラの画面横方向の画角を拡大するようにしてもよい。
【００３９】
また描画部１２０は、画面モード決定部１０８によって画面モードが前記第２の画面に決定された場合には、画面横方向に前記第１の画面に対する前記第２の画面の拡大率の逆数倍に縮小する射影マトリクスに基づいて、前記各頂点の座標を射影座標系に変換するようにしてもよい。
【００４０】
そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（ピクセルシェーダによるシェーディング、フラグメント処理）が行われる。ピクセル処理では、ピクセル処理プログラム（ピクセルシェーダプログラム、第２のシェーダプログラム）に従って、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ１７４（ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。すなわち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように画像を生成することができる。
【００４１】
特に本実施形態体の描画部１２０は、画面モード決定部１０８によって画面モードが前記第２の画面に決定された場合には、前記描画処理によって生成された画像に対して平滑化処理（アンチエイリアス）を行って描画バッファ１７４に出力するようにしてもよい。
【００４２】
また描画部１２０は、決定された画面モードに応じて異なるパラメータを用いて前記平滑化処理を行うようにしてもよい。
【００４３】
また描画部１２０は、画面モードが前記第２の画面に決定された場合には、前記描画処理によって生成された画像を、画面横方向に前記第１の画面に対する第２の画面の拡大率より小さい拡大率によって拡大して表示部１９０に出力するようにしてもよい。
【００４４】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００４５】
そして描画部１２０は、オブジェクトを描画する際にテクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【００４６】
テクスチャマッピングは、記憶部１７０のテクスチャ記憶部１７８に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定（付与）されるテクスチャ座標等を用いて記憶部１７０のテクスチャ記憶部１７８からテクスチャ（色（ＲＧＢ）、α値などの表面プロパティ）を読み出す。そして、２次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【００４７】
特に本実施形態体の描画部１２０は、画面モード決定部１０８によって決定された画面モードに応じてテクスチャ記憶部１７８から解像度の異なるテクスチャを読み出してオブジェクトにマッピングするようにしてもよい。
【００４８】
隠面消去処理としては、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ１７９（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファ１７９に格納されるＺ値を参照する。そして参照されたＺバッファ１７９のＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファ１７９のＺ値を新たなＺ値に更新する。
【００４９】
αブレンディング（α合成）は、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）のことである。
【００５０】
なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透明度、不透明度と等価）、バンプ情報などとして使用できる。
【００５１】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００５２】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００５３】
２．本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。
【００５４】
２−１．仮想カメラの画角の調整
図２（Ａ）、図２（Ｂ）は、射影変換について説明するための図である。
【００５５】
本実施形態では、画面モードとしてアスペクト比（縦横比）４：３のノーマル画面（第１の画面）と、アスペクト比１６：９のワイド画面（第２の画面）とが用意されており、プレーヤによる選択入力によって画面モードを決定する。
【００５６】
そして、オブジェクト空間に配置されたオブジェクトを構成する各頂点の座標を視点座標系に変換（視野変換）し、さらに射影座標系に変換（射影変換）する際に、決定された画面モードに応じて仮想カメラの画角を調整する。
【００５７】
すなわち、決定された画像モードに応じて異なる形状のビューボリュームを視点座標系に設定する。具体的には、画面モードがノーマル画面に決定された場合には、図２（Ａ）に示すように、アスペクト比（ｗ／ｈ）が４／３のビューボリュームＶＶ１を視点座標系に設定し、画面モードがワイド画面に選択された場合には、図２（Ｂ）に示すように、アスペクト比（ｗ／ｈ）が１６／９のビューボリュームＶＶ２を視点座標系に設定する。図２（Ｂ）に示すビューボリュームＶＶ２は、図２（Ａ）に示すビューボリュームＶＶ１に比べて、仮想カメラＶＣのＸ軸方向の画角（視野角）θｘが４／３倍に拡大している。
【００５８】
ここで視点座標系から射影座標系への射影変換は射影マトリクスＲ（変換マトリクス）に基づき行われ、射影マトリクスＲは、次式により表すことができる。
【００５９】
【数１】
2009211243.tif 000003
【００６０】
なお、パラメータｎは、ニアプレーン面ＮＰ（仮想カメラＶＣから近いクリップ平面）のＺ座標値であり、パラメータｆは、ファープレーン面ＦＰ（仮想カメラＶＣから遠いクリップ平面）のＺ座標値である。またパラメータｌ、ｒは、それぞれニアプレーン面ＮＰの左端、右端のＸ座標値であり、パラメータｔ、ｂは、それぞれニアプレーン面ＮＰの上端、下端のＹ座標値である。
【００６１】
本実施形態では、画面モードがノーマル画面に決定された場合には、アスペクト比（ｒ−ｌ）／（ｔ−ｂ）が４／３となるように各パラメータを設定して射影マトリクスＲを求め、画面モードがワイド画面に決定された場合には、アスペクト比（ｒ−ｌ）／（ｔ−ｂ）が１６／９となるように各パラメータを設定して射影マトリクスＲを求める。
【００６２】
ビューボリューム内のオブジェクトを構成する各頂点の座標は、射影変換により図３に示す射影座標系ＣＣ（クリップ座標系）に変換され、さらにビューポート変換によりスクリーン座標系に変換される。
【００６３】
図４（Ａ）、図４（Ｂ）は、スクリーン座標系について説明するための図である。図４（Ａ）は、画面モードがノーマル画面に決定された場合の、スクリーン座標系ＳＣにおけるオブジェクトＯＢを示し、図４（Ｂ）は、画面モードがワイド画面に決定された場合の、スクリーン座標系ＳＣにおけるオブジェクトＯＢを示す。
【００６４】
本実施形態のスクリーン座標系ＳＣでは、ビューポートＶＰのアスペクト比は４／３であり、その領域はＸ軸方向に０〜６４０、Ｙ軸方向に０〜４８０であり、描画バッファ１７４（レンダリングターゲット）の領域（６４０×４８０）と対応している。
【００６５】
図４（Ａ）に示すように、画面モードがノーマル画面である場合には、射影変換の際のビューボリュームＶＶ１のアスペクト比とビューポートＶＰのアスペクト比が一致しているため、スクリーン座標系ＳＣにおけるオブジェクトＯＢの縦横のバランスに変化はない。
【００６６】
一方、図４（Ｂ）に示すように、画面モードがワイド画面である場合には、射影変換の際のビューボリュームＶＶ２のアスペクト比が１６／９であるのに対して、ビューポートのアスペクト比が４／３であるために、スクリーン座標系ＳＣにおけるオブジェクトＯＢがＸ軸方向（画面横方向）に縮小している。具体的にはノーマル画面に対するワイド画面の拡大率（４／３）の逆数倍（３／４）に縮小している。
【００６７】
図５（Ａ）、図５（Ｂ）は、表示部に表示されるゲーム画面の一例である。
【００６８】
図５（Ａ）に示すように、画面モードがノーマル画面に決定された場合には、表示部１９０にアスペクト比４：３のノーマル画面ＮＳが表示される。また図５（Ｂ）に示すように、画面モードがワイド画面に決定された場合には、表示部１９０にアスペクト比１６：９のワイド画面ＷＳが表示される。
【００６９】
なお図５（Ｂ）の場合には、描画バッファ１７４に記憶されたアスペクト比４：３の画像データが画面横方向に約１．１１倍（ノーマル画面に対するワイド画面の拡大率（４／３）より小さい拡大率）に拡大されて表示部１９０に対して出力され、表示部１９０においてさらに画面横方向に約１．２倍に拡大されてワイド画面ＷＳとして表示される。従ってスクリーン座標系ＳＣにおいて横方向に縮小されたオブジェクトＯＢは、ワイド画面ＷＳにおいて画面横方向に４／３倍に拡大され、縦横のバランスが本来のものに戻っている。
【００７０】
このように、画面モードがワイド画面に決定された場合には、仮想カメラの画角横方向に拡大して射影変換を行う（スクリーン座標系においてオブジェクトの各頂点が横方向に縮小されるような射影マトリクスに基づき射影変換を行う）ことにより、横方向に拡大したワイド画面においても縦横のバランスを崩さず表示することができる。
【００７１】
なおワイド画面時に、描画バッファ１７４からアスペクト比４：３の画像データをそのまま表示部１９０に対して出力し、表示部１９０において画面横方向に４／３倍に拡大されてワイド画面ＷＳとして表示されるようにしてもよい。
【００７２】
２−２．平滑化処理
図６は、本実施形態における平滑化処理について説明するための図である。
【００７３】
本実施形態では、画面モードがワイド画面に決定された場合には、描画された画像に対して平滑化処理を行って表示部に出力する画像に対して平滑化処理を行って表示部に出力する。
【００７４】
例えば、図６のＡ１に示すように、描画バッファ１７４に描画された元画像ＯＩを拡大処理して描画バッファ１７４よりサイズの大きいワークバッファに描画し、さらにワークバッファに描画された拡大画像ＥＩを縮小処理して描画バッファ１７４に描画することで平滑化処理を行う。なお、元画像を縦又は横方向にずらしたワーク画像をワークバッファに描画して、このワーク画像を元画像に合成することにより平滑化処理を行ってもよい。
【００７５】
このように、画面モードがワイド画面に決定された場合には、描画された画像に対して平滑化処理を行って表示部１９０に出力することで、表示部１９０において画面横方向に拡大された場合に、見た目に自然な画像とすることができる。
【００７６】
なお、ノーマル画面時にも平滑化処理を行うようにして、画面モードに応じて平滑化処理に用いるパラメータの値を変更するようにしてもよい。例えばワイド画面時には、元画像ＯＩの拡大率をノーマル画面時に比べて大きくして、平滑化の効果がより強く出るようにしてもよい。
【００７７】
２−３．テクスチャマッピング
図７（Ａ）、図７（Ｂ）は、本実施形態におけるテクスチャマッピングについて説明するための図である。なお、図７（Ａ）は、ノーマル画面用のテクスチャを示し、図７（Ｂ）は、ワイド画面用のテクスチャを示す。
【００７８】
本実施形態では、決定された画面モードに応じて解像度の異なるテクスチャをオブジェクトにマッピングする。
【００７９】
例えば、テクスチャ記憶部１７６に、ノーマル画面用のテクスチャＮＴと、ノーマル画面用のテクスチャＮＴを横方向に３／４倍に縮小させた（ノーマル画面用のテクスチャＮＴの横方向の解像度を低くした）ワイド画面用のテクスチャＷＴとを記憶しておき、画面モードがノーマル画面に決定された場合には、ノーマル画面用のテクスチャＮＴをオブジェクトにマッピングし、画面モードがワイド画面に決定された場合には、ワイド画面用のテクスチャＷＴをオブジェクトにマッピングする。
【００８０】
このように、画面モードがワイド画面に決定された場合には、予め横方向に縮小したテクスチャをスクリーン座標系のオブジェクト（横方向に縮小された）にマッピングすることにより、マッピング時にテクスチャの縦横のバランスを維持させることができる。すなわち、マッピング時にテクスチャが横方向に縮小され、テクスチャに表された文字がつぶれてしまうことを防止することができる。
【００８１】
２−４．詳細度レベル（ＬＯＤ）
図８（Ａ）、図８（Ｂ）は、本実施形態の詳細度レベル（ＬＯＤ）の制御について説明するための図である。
【００８２】
本実施形態では、オブジェクト空間における仮想カメラとオブジェクトとの距離に基づいてオブジェクトの詳細度レベルを制御して描画処理を行う。具体的には、仮想カメラとオブジェクトとの距離が所定の閾値内であれば、当該オブジェクトについては詳細度レベル１による高精細なオブジェクトを描画する。また、仮想カメラとオブジェクトとの距離が所定の閾値を超えていれば、当該オブジェクトについては詳細度レベル２による低精細なオブジェクト（ポリゴン数や頂点数を削減されたオブジェクト）を描画する。さらに本実施形態では、決定された画面モードに応じて、この詳細度レベルを制御するための閾値を変更する。
【００８３】
例えば、画面モードがノーマル画面に決定された場合には、図８（Ａ）に示すように、閾値ＴＨ１を設定し、画面モードがワイド画面に決定された場合には、図８（Ｂ）に示すように、仮想カメラＶＣにより近い閾値ＴＨ２を設定する。すなわちノーマル画面時にはオブジェクトＯＢ１、ＯＢ２が高精細に描画され、ワイド画面時には、最も仮想カメラＶＣに近いオブジェクトＯＢ１のみが高精細に描画される。
【００８４】
ワイド画面時には、スクリーン座標系においてオブジェクトを構成する各頂点が横方向に縮小するため、仮想カメラＶＣからある程度離れたオブジェクトについてまで高精細なオブジェクトを描画したとしても、その効果はノーマル画面時と比べて減じてしまう。また、ワイド画面時には、画面に見えるオブジェクトがノーマル画面より広がるため、より多くの頂点を処理しなければならなくなる。従って、画面モードがワイド画面に決定された場合には、詳細度レベルの閾値をノーマル画面時より低く設定して高精細に描画する範囲を狭めることにより、無駄な演算処理をすることなく効率的な描画を行うことができる。
【００８５】
３．本実施形態の処理
次に、本実施形態の処理の一例について図９のフローチャートを用いて説明する。
【００８６】
まず、オブジェクトを構成する各頂点の座標をワールド座標系に変換するワールド座標変換を行う（ステップＳ１０）。次に、各頂点の座標を視点座標系に変換する視野変換を行う（ステップＳ１２）。
【００８７】
次に、画面モードがワイド画面であるか否かを判断し（ステップＳ１４）、ワイド画面でない（ノーマル画面である）と判断した場合には、アスペクト比が４：３のビューボリュームを視点座標系に設定して、ビューボリューム内の各頂点の座標を射影座標系に変換する射影変換を行う（ステップＳ１６）。
【００８８】
ステップＳ１４において、画面モードがワイド画面であると判断した場合には、アスペクト比が１６：９のビューボリュームを視点座標系に設定して、ビューボリューム内の各頂点の座標を射影座標系に変換する射影変換を行う（ステップＳ１８）。すなわち仮想カメラの横方向のみの画角を４／３倍に拡大して射影変換を行う。
【００８９】
次に、各頂点の座標をスクリーン座標系に変換するビューポート変換を行い（ステップＳ２０）、座標変換後のオブジェクトの描画色を描画バッファに出力する描画処理を行う（ステップＳ２２）。
【００９０】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【００９１】
例えば、１の仮想カメラから見える画像を１画面に表示する場合について説明したが、２つの仮想カメラのそれぞれから見える画像を上下に２分割した画面のそれぞれに表示するようにしてもよい。この場合、画面モードとしてノーマル画面が決定された場合には、アスペクト比が８：３のビューボリュームを視点座標系に設定して射影変換を行い、ワイド画面が決定された場合にはアスペクト比が３２：９のビューボリュームを視点座標系に設定して射影変換を行う。すなわち画面を２分割する場合でも、ワイド画面時には、仮想カメラの横方向のみの画角を４／３倍に拡大して射影変換を行う。
【図面の簡単な説明】
【００９２】
【図１】本実施形態のゲームシステムの機能ブロック図の例。
【図２】図２（Ａ）、図２（Ｂ）は、射影変換について説明するための図。
【図３】射影座標系を示す図。
【図４】図４（Ａ）、図４（Ｂ）は、スクリーン座標系について説明するための図。
【図５】図５（Ａ）、図５（Ｂ）は、表示部に表示されるゲーム画面の一例。
【図６】平滑化処理について説明するための図。
【図７】図７（Ａ）、図７（Ｂ）は、テクスチャマッピングについて説明するための図。
【図８】図８（Ａ）、図８（Ｂ）は、詳細度レベル（ＬＯＤ）の制御について説明するための図。
【図９】本実施形態の処理の流れを示すフローチャート図。
【符号の説明】
【００９３】
１００  処理部、１０８  画面モード決定部、１１０  オブジェクト空間設定部、１１２  移動・動作処理部、１１４  仮想カメラ制御部、１２０  描画部、１３０  音生成部、１６０  操作部、１７０  記憶部、１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、１９６  通信部
【図１】
2009211243.tif 000004
【図２】
2009211243.tif 000005
【図３】
2009211243.tif 000006
【図４】
2009211243.tif 000007
【図５】
2009211243.tif 000008
【図６】
2009211243.tif 000009
【図７】
2009211243.tif 000010
【図８】
2009211243.tif 000011
【図９】
2009211243.tif 000012