(57)【要約】  レンダリングされたサーフェイスを回転させる装置、方法及びコンピュータ・プログラム製品。この装置は、サーフェイスをレンダリングするように構成されたグラフィックス・プロセッサを含んでおり、ディスプレイ配向パラメータが前記サーフェイスと関連付けられ、そのディスプレイ配向パラメータが回転プロセスを定義する。この装置は、ディスプレイ配向パラメータに従って、レンダリングされたサーフェイスを回転させるように構成されたディスプレイ・プロセッサをさらに含んでいる。好ましくは、ディスプレイ配向パラメータはＥＧＬサーフェイス属性である。
2010514011.tif 000002
【特許請求の範囲】
【請求項１】
サーフェイスをレンダリングするように構成されたグラフィックス・プロセッサであって、ディスプレイ配向パラメータは前記サーフェイスと関連付けられ、前記ディスプレイ配向パラメータは回転プロセスを定義するグラフィックス・プロセッサと、
前記ディスプレイ配向パラメータに従って前記レンダリングされたサーフェイスを回転させるように構成されたディスプレイ・プロセッサと、
を備えるグラフィックスを処理するための装置。
【請求項２】
前記ディスプレイ配向パラメータは、ＥＧＬサーフェイス属性である請求項２の装置。
【請求項３】
前記ディスプレイ配向パラメータは、９０度回転、水平方向の反転、及び垂直方向の反転によって定義される請求項１の装置。
【請求項４】
前記ディスプレイ配向パラメータを格納するように構成されたメモリと、
前記ディスプレイ配向パラメータに従って前記レンダリングされたサーフェイスを回転させることを前記ディスプレイ・プロセッサに命令するように構成された制御プロセッサと、
をさらに含む請求項１の装置。
【請求項５】
サーフェイスをレンダリングするための手段であって、ディスプレイ配向パラメータは前記サーフェイスと関連付けられ、前記ディスプレイ配向パラメータは回転プロセスを定義する手段と、
前記ディスプレイ配向パラメータに従って前記レンダリングされたサーフェイスを回転させるための手段と、
を備えるグラフィックスを処理するための装置。
【請求項６】
前記ディスプレイ配向パラメータはＥＧＬサーフェイス属性である請求項５の装置。
【請求項７】
前記ディスプレイ配向パラメータは、９０度回転、水平方向の反転、及び垂直方向の反転によって定義される請求項５の装置。
【請求項８】
前記ディスプレイ配向パラメータを格納するための手段と、
前記ディスプレイ配向パラメータに従って前記レンダリングされたサーフェイスを回転させることを前記回転手段に命令するための手段と、
をさらに含む請求項５の装置。
【請求項９】
サーフェイスをレンダリングすること、
ディスプレイ配向を選択すること、
前記レンダリングされたサーフェイスを目標解像度で回転させること、
を備えるレンダリングされたサーフェイスを回転させるための方法。
【請求項１０】
前記選択されたディスプレイ配向はＥＧＬサーフェイス属性を介して前記サーフェイスと関連付けられる請求項９の方法。
【請求項１１】
前記ディスプレイ配向パラメータは、９０度回転、水平方向の反転、及び垂直方向の反転によって定義される請求項９の方法。
【請求項１２】
ディスプレイへの接続を確立すること、
ディスプレイ特性を決定すること、
ディスプレイ配向をＡＰＩに送ること、
ディスプレイ指令を送ること、
前記回転ステップを行なうことをディスプレイ・プロセッサに命令する指令を送ること、
をさらに含む請求項９の方法。
【請求項１３】
レンダリングされたサーフェイスを回転させるためのコンピュータ実行可能命令を格納するコンピュータ読取り可能媒体であって、前記コンピュータ実行可能命令は、
コンピュータにサーフェイスをレンダリングさせるためのコードと、
コンピュータにディスプレイ配向を選択させるためのコードと、
コンピュータに前記レンダリングされたサーフェイスを目標解像度で回転させるためのコードと、
を備えるコンピュータ読取り可能媒体。
【請求項１４】
前記選択されたディスプレイ配向はＥＧＬサーフェイス属性を介して前記サーフェイスと関連付けられる請求項１３のコンピュータ読取り可能媒体。
【請求項１５】
前記ディスプレイ配向パラメータは、９０度回転、水平方向の反転、及び垂直方向の反転によって定義される請求項１３の方法。
【請求項１６】
コンピュータにディスプレイへの接続を確立させるためのコードと、
コンピュータにディスプレイ特性を決定させるためのコードと、
コンピュータにディスプレイ配向をＡＰＩに送らせるためのコードと、
コンピュータに表示指令を送らせるためのコードと、
コンピュータに前記回転ステップを行なうことをディスプレイ・プロセッサに命令する指令を送らせるためのコードと、
をさらに含む請求項１５のコンピュータ読取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、グラフィックス処理に関し、さらに詳細には、レンダリング・プロセス（rendering process）の後のグラフィックス・サーフェイス（graphics surfaces）の回転に関する。
【背景技術】
【０００２】
携帯電話、ポータブル・マルチメディア装置及びポータブル・ビデオゲーム装置を含むモバイルデバイスは、大いに異なるディスプレイ・サイズ及び配向(orientations)を呈示する。さらに、いくつかのモバイルデバイス・ディスプレイは、多くの方向に容易に配向(oriented)される。対照的に、デスクトップやラップトップのディスプレイは、典型的には、横方向の配向(landscape orientation)である。多くのユーザ・アプリケーションは、本来、デスクトップやラップトップで使用するように書かれているので、そのようなアプリケーションが設計されるディスプレイ又は配向は、モバイルデバイスで利用可能及び／又は可能であるものとは異なることが多い。ユーザ・アプリケーション、特に３Ｄアプリケーションを、横向き（landscape）及び縦向き（portrait）のディスプレイの両方をサポートするように修正するのは、コード及びアート・アセット（art assets）の両方の修正を一般に含むので、時間と費用がかかる。
【０００３】
一般に、３Ｄユーザ・アプリケーションは、デバイス・ディスプレイ・スクリーンの「デフォルト」配向のためにプログラムされる。ある場合には、３Ｄアプリケーションは、ユーザが代替の配向を選択できるようにするためのコードを含んでいる。これらの修正は、より大きなアプリケーション・サイズをもたらし、モバイルデバイス上の付加的なファイルシステム・スペースを必要とする付加的なアート・アセットを含むことがある。モバイルデバイス上のリソースは制限されることが多いから、グラフィックス・プロセスをサポートするためのシステム・リソースの増加は、多くの場合容認できない。
【発明の概要】
【０００４】
上記を考慮して、本開示は、アプリケーションがそのアプリケーションのコードへの最小の変更でモバイルデバイス・ディスプレイで使用するために望まれるようにグラフィック処理装置（ＧＰＵ）によってレンダリングされたサーフェイスが回転できるようにする方法、装置及びコンピュータ・プログラム製品を提示する。さらに、外部の「プレファレンス」（preferences）アプリケーションは、能動的な３Ｄアプリケーションに適用される適用回転（及びスケーリングのような潜在的なポストレンダリング・プロセス）を決定できて、ユーザ・アプリケーション自体内のいかなるコード変更も排除する。
【０００５】
１つの実施の形態によれば、この装置は、サーフェイスをレンダイングするように構成されたグラフィックス・プロセッサを含んでおり、ディスプレイ配向パラメータが前記サーフェイスと関連付けられ、前記ディスプレイ配向パラメータは回転プロセスを定義する。この装置は、ディスプレイ配向パラメータに従って、レンダリングされたサーフェイスを回転させるように構成されたディスプレイ・プロセッサをさらに含んでいる。好ましくは、ディスプレイ配向パラメータは、ＥＧＬサーフェイス属性である。
【０００６】
１つ又は複数の実施の形態の詳細は、添付の図面と下記の説明で開示される。本発明の他の特徴、目的及び利点は、説明と図面、及び請求項から明白になる。
【図面の簡単な説明】
【０００７】
【図１】図１は、ＧＰＵ及びディスプレイ・プロセッサのブロック図である。
【図２】図２は、サーフェイスを回転させるための方法の流れ図である。
【図３】図３は、モバイルデバイスにおけるＧＰＵ及びディスプレイ・プロセッサのブロック図である。
【図４】図４は、サーエイスを回転させるための方法の流れ図である。
【図５】図５は、回転パラメータを含むＥＧＬサーフェイスのための属性を示す。
【詳細な説明】
【０００８】
図１は、ＧＰＵ及びディスプレイ・プロセッサのブロック図を示す。グラフィックス処理装置（ＧＰＵ）は、コンピュータライズド・グラフィックスをレンダリング（render）し、操作（manipulate）し、そして表示（display）するために利用される専用グラフィックス・レンダリング装置である。ＧＰＵｓは、通常、種々の複雑なグラフィックス関連のアルゴリズムのための典型的な汎用中央処理装置（ＣＰＵｓ）より効率的な処理を提供する高度に並列の構造（highly parallel structure）で構築される。例えば、複雑なアルゴリズムは三次元のコンピューター化されたグラフィックスの表示に対応してもよい。ＧＰＵは、ＣＰＵでディスプレイに直接画像を描くよりも速く複雑な三次元画像を生成するために、点、線、及び三角を形成するような多くのいわゆる「原始的な」（primitive）グラフィックス操作を実行してもよい。
【０００９】
ＧＰＵ１１０は、最終的なディスプレイに対するグラフィックス・フレームをレンダリングするために使用されるグラフィックス・プロセッサである。本開示では、用語レンダリング（render）は、３Ｄ及び２Ｄレンダリングの両方を意味する。例として、ＧＰＵ１１０は、３Ｄグラフィックス・フレームをレンダリングするためにオープン・グラフィックス・ライブラリ（ＯｐｅｎＧＬ）命令を利用してもよいし、あるいは２Ｄグラフィックス・フレームをレンダリングするためにオープン・ベクトル・グラフィックス（ＯｐｅｎＶＧ）命令を利用してもよい。しかし、グラフィックスをレンダリングするための任意の標準方法又は技術がＧＰＵ１１０によって利用されてもよい。
【００１０】
ＧＰＵ１１０は、メモリ１５０に格納される命令を実行してもよい。メモリ１５０は、命令を格納できる任意の永久又は揮発性メモリを含んでもよい。さらに、ＧＰＵ１１０は、無線インタフェース（例えば、ＣＤＭＡ１ｘ、ＥＶ−ＤＯ、ＷｉＦｉ）を通じて受け取られる命令を実行してもよい。ＧＰＵ１１０によってレンダリングされたグラフィックス・フレームは、バッファ１２０に格納される。
【００１１】
この文脈では、グラフィックス・フレームは、表示されるべき全シーンである。グラフィックス・フレームは、ＧＰＵ１１０によって個々にレンダリングされてもよい１つ又は複数のサーフェイスで構成されてもよい。１つのサーフェイスは、２Ｄ画像又はある視点からの３Ｄオブジェクトのレンダリングされた２Ｄ表示のいずれかである。グラフィックス・フレームに表示される複数のレンダリングされたサーフェイスは、オーバーレイ及び／又はブレンデイング・オペレーションによって組み合わせられてもよい。
【００１２】
バッファ１２０は、データを格納できる任意の永久又は揮発性メモリであってもよい。ＧＰＵ１１０によってレンダリングされるサーフェイスは、ある予め定めらた配向でレンダリングされる。典型的には、３Ｄユーザ・プログラムは、横向き配向にレンダリングする。しかし、３Ｄユーザ・アプリケーションがレンダリングするいかなる配向も許容できる。所望のディスプレイ配向が決定される。例えば、ＧＰＵを利用するユーザ・プログラムは、ユーザ・プログラムの必要性、ディスプレイの特性（すなわち、ディスプレイの可能な配向）、現在のディスプレイ又は装置配向、又はユーザ入力に基づいて所望のディスプレイ配向を決定してもよい。さらに、ディスプレイ配向は、ディスプレイ又は装置の現在の配向及び／又はユーザ入力に基づいて、ユーザ・プログラムの外部で決定されてもよい。ディスプレイ配向の選択された値は、ディスプレイ・プロセッサ１３０による使用のためにメモリ１５０に格納される。
【００１３】
特に、ディスプレイ配向は、レンダリングされかつ表示されるべき１つのサーフェイスと関連したパラメータとして格納されてもよい。１つの例として、このパラメータは、サーフェイスの組込みシステム（Embedded-System）グラフィックス・ライブラリ（ＥＧＬ（ｔｍ））記述に含まれた属性であってもよい。ＥＧＬは、ＯｐｅｎＧＬ ＥＳ又はＯｐｅｎＶＧのようなＡＰＩｓとアンダーライング・ネイテイブ・プラットフォーム・ウインドウ・システム（underlying native platform window system）の間のインタフェースである。このようにして、アプリケーションのサードパーティー開発者は、回転プロセス（rotation process）を行なうように特定のディスプレイ・プロセッサに命令するための個別の指令（commands）を開発する必要なしに、よく知られているプログラミング言語を使用してディスプレイ配向を定義してもよい。図８は、ディスプレイ配向５２５ローテーション・パラメータを含むＥＧＬサーフェイス属性５００の一例を示す。
【００１４】
ディスプレイ・プロセッサ１３０は、ディスプレイ１４０を駆動する（すなわち、ディスプレイにピクセル・カラー値を送る）ための及びレンダリングされたサーフェイス上でポストレンダーリング・プロセスを行なうためのプロセッサである。ディスプレイ・プロセッサ１３０は、任意のタイプのプロセッサであってもよい。１つの例として、ディスプレイ・プロセッサ１３０は、カリフォルニア州、サンディエゴのクウアルコム社によって設計された移動局モデムに組込まれたモバイル・ディスプレイ・プロセッサ（ＭＤＰ）であってもよい。ＭＤＰは,ディスプレイを駆動しかつレンダリングされたサーフェイス上でポストレンダリング機能（post-render functions）を実行する専用でありかつそれらのために最適化されている。そのような機能は、スケーリング（scaling）、回転（rotation）、ブレンデイング（blending）、カラー・キーイング（color keying）及びオーバーレイング（overlaying）を含んでもよい。ディスプレイ・プロセッサ１３０は、メモリ１５０に格納された命令を実行するように構成されてもよい。
【００１５】
ＧＰＵ１１０が１つのサーフェイスをレンダリングしてそれをバッファ１２０に格納すると、ディスプレイ・プロセッサ１３０は、そのレンダリングされたサーフェイスをバッファ１２０から検索して、そのレンダリングされたサーフェイスを選択された配向に回転する。その配向は、メモリ１５０から得られてもよいし、あるいはディスプレイ１４０の特性に基づいて予め決定されてもよい。回転のために異なるプロセッサを使用することによって、処理オーバヘッドがＧＰＵに対して節約される。さらに、ユーザ・プログラムにおける費用と時間のかかるコード変更ならびに複数の組のアート・アセットが回避される。
【００１６】
レンダリングされたサーフェイスは、任意所望の角度に回転してもよい。しかし、配向間の切り換え（例えば、横向きから縦向きへの）は、９０度の整数倍の回転を使用する。９０、１８０及び２７０度の個別の回転は、９０度回転、水平方向の反転（horizontal flip）、及び垂直方向の反転（vertical flip）の３つの基本操作の種々の組合せによって遂行されうる：そのため、多くのアプリケーションでは、９０度回転、水平方向の反転、及び垂直方向の反転指令の個々の又は組合せの選択のうちの選択に限定するのが有益であろう。このようにして、配向を選択するために、従って回転を指令するために使用される命令の数が制限される。これは、いくつかのシナリオにおいてメモリ及び処理帯域幅ならびにシリコン領域及び電力を節約できる。このような回転は、回転されたサーフェイスのレターボクシング（letterboxing）を防止するためにスケーリング処理と組合せられてもよい。これはＯｐｅｎＧＬコードの無修正に対してはあまり意味がなく、あるいはユーザ・アプリケーションのアート・アセットが必要とされる。
【００１７】
図２は、サーフェイスを回転させる方法の流れ図である。ステップ２０１で、サーフェイスがレンダリングされる。ステップ２０２で、ディスプレイ配向が選択される。その後、ステップ２０３で、レンダリングされたサーフェイスが選択された配向に回転される。
【００１８】
図３は、モバイルデバイスにおけるＧＰＵ及びディスプレイ・プロセッサのブロック図である。ＧＰＵ３１０は、メモリ３５０に格納されたユーザ・プログラム３９０からの命令を実行する。１つの例として、ＧＰＵ３１０は、カリフォルニア州、サニーヴェールのアドバンスト・マイクロ・デバイシーズ社によって製造されたイマジオン（Ｉｍａｇｅｏｎ）７シリーズＧＰＵであってもよい。メモリ３５０は、フラッシュ・ランダムアクセスメモリ（ＲＡＭ）としてインプリメントされてもよい。ユーザ・プログラム３９０は、ＧＰＵ３１０を利用する任意のプログラムであってもよい。例えば、ユーザ・プログラム３９０は、ビデオゲームであってもよい。ＧＰＵ３１０は、ユーザ・プログラム３９０からの命令を実行し、バッファ３２０へ表示されるサーフェイスをレンダリングする。バッファ３２０は、同期型ダイナミックＲＡＭ（ＳＤＲＡＭ）内にあってもよい。ユーザ・プログラム３９０は、ディスプレイ３４０への接続を確立するように及び／又はレンダリングされたサーフェイスを表示する配向を決定するためにシステム・パラメータを決定するように構成されてもよい。そのようなシステム・パラメータは、メモリ３５０に格納されてもよい。ディスプレイ配向がユーザ・プログラム３９０によって選択されると、ユーザ・プログラム３９０はこの配向を制御パラメータ３７０としてメモリ３５０に格納する。上述のように、選択された配向は、９０度回転、水平方向反転、及び垂直方向反転指令の個々の又は組合せられた選択として制御パラメータ３７０に格納されてもよい。
【００１９】
メモリ３５０はまた、アプリケーション・プログラミング・インタフェース（ＡＰＩ）３８０を格納するために使用されてもよい。ＡＰＩ３８０は、ユーザ・プログラム３９０とＭＤＰ３３０の間のコンジット（conduit）として役立つ。ＧＰＵ３１０がバッファ３２０にサーフェイスをレンダリングした場合には、ユーザ・プログラム３９０は、そのサーフェイスを表示する命令を実行してもよい。そのような表示命令は、ＡＰＩ３８０を呼び出す関数であってもよい。その後、ＡＰＩ３８０は、バッファ３２０内のレンダリングされたサーフェイスを管理パラメータ３７０として格納された選択された配向へとバッファ３２０中のレンダリングされたサーフェイスを回転させるために制御ＭＤＰ３３０を制御するように制御プロセッサ３６０に命令する。制御プロセッサ３６０は、カリフォルニア州サンディエゴのクウアルコム社によって設計された移動局モデムに組み込まれているＡＲＭ１１プロセッサのようなアドバンストＲＩＳＣ（縮小命令セット型コンピュータ）マシン（ＡＲＭ）プロセッサであってもよい。ＭＤＰ３３０は、カリフォルニア州サンディエゴのクウアルコム社によって設計された移動局モデムに組み込まれているモバイル・ディスプレイ・プロセッサであってもよい。ＭＤＰ３３０は、バッファ３２０からレンダリングされたサーフェイスを検索し、そのレンダリングされたサーフェイスを所望の配向へと回転させ、その回転したレンダリングされたサーフェイスを表示するためにディスプレイ３４０を駆動する。
【００２０】
図４は、サーフェイスを回転させるための方法の流れ図である。ステップ４０１で、ディスプレイへの接続が確立される。その後、ステップ４０２で、ディスプレイ特性が決定される。そのような特性は、メモリに前もって格納されているデータから又はディスプレイとの直接通信によって決定されてもよい。ステップ４０３で、ディスプレイ配向が選択される。ステップ４０４で、選択された配向がＡＰＩに送られるか、あるいはＡＰＩに利用可能となされる。ステップ４０５で、サーフェイスがレンダリングされる。ステップ４０６で、表示指令（例えば、ｅｇｌＳｗａｐＢｕｆｆｅｒｓ）がＡＰＩに送られる。ステップ４０７で、ＡＰＩが、レンダリングされたサーフェイスを選択された配向へと回転させるようにＭＤＰに指令を送る。
【００２１】
上述の装置、方法、及びコンピュータ・プログラム製品は、無線電話、携帯電話、ラップトップ・コンピュータ、無線マルチメディア装置（例えば、ポータブルビデオ・プレーヤあるいはポータブル・ビデオゲーム装置）、無線通信パーソナルコンピュータ（ＰＣ）カード、携帯情報端末（ＰＤＡ）、外付け又は内蔵モデム、あるいは無線チャネルで通信する任意のデバイスのような様々なタイプのデバイスによって使用されてもよい。
【００２２】
そのようなデバイスは、アクセス端末（ＡＴ）、アクセス・ユニット、加入者ユニット、移動局、モバイルデバイス、モバイル装置、携帯電話、移動体、遠隔ステーション、遠隔端末、遠隔ユニット、ユーザ・デバイス、ユーザ設備、ハンドヘルド・デバイス、等のような種々の名称を有していてもよい。
【００２３】
上述された任意のデバイスは、命令及びデータを格納するための専用メモリ、ならびに専用のハードウエア、ソフトウエア、ファームウエア、又はそれらの組合せを有していてもよい。ソフトウェアでインプリメントされる場合には、これらの技術は、１つ又は複数のプロセッサによって実行可能な、ランダムアクセスメモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気的消去可能なプログラム可能読出し専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ、磁気又は光学データ記憶装置、等のようなコンピュータ読取り可能媒体上の命令として具体化されてもよい。その命令は、本開示に記述された機能性のある態様を１つ又は複数のプロセッサに行なわせる。
【００２４】
本開示に記述された技術は、汎用マイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラム可能ゲートアレイ（ＦＰＧＡ）、又は他の均等な論理デバイスでインプリメントされてもよい。従って、モジュールとして記述されたコンポーネントは、そのようなプロセス又は別個のプロセスのプログラム可能な特徴を形成してもよい。
【００２５】
ここに記述された種々の実施の形態は、全体として又は部分的に組合わせられてもよい。これら及び他の実施は、下記の請求項の範囲内である。
【００２６】
関連出願
本出願は、ここに参照により取り入れられる２００６年１２月１５日に提出された米国仮出願第６０／８７０，３５６号の利益を請求する。
【図１】
2010514011.tif 000003
【図２】
2010514011.tif 000004
【図３】
2010514011.tif 000005
【図４】
2010514011.tif 000006
【図５】
2010514011.tif 000007
【手続補正書】
【提出日】平成21年10月9日(2009.10.9)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
特に、ディスプレイ配向は、レンダリングされかつ表示されるべき１つのサーフェイスと関連したパラメータとして格納されてもよい。１つの例として、このパラメータは、サーフェイスの組込みシステム（Embedded-System）グラフィックス・ライブラリ（ＥＧＬ（ｔｍ））記述に含まれた属性であってもよい。ＥＧＬは、ＯｐｅｎＧＬ ＥＳ又はＯｐｅｎＶＧのようなＡＰＩｓとアンダーライング・ネイテイブ・プラットフォーム・ウインドウ・システム（underlying native platform window system）の間のインタフェースである。このようにして、アプリケーションのサードパーティー開発者は、回転プロセス（rotation process）を行なうように特定のディスプレイ・プロセッサに命令するための個別の指令（commands）を開発する必要なしに、よく知られているプログラミング言語を使用してディスプレイ配向を定義してもよい。図５は、ディスプレイ配向５２５ローテーション・パラメータを含むＥＧＬサーフェイス属性５００の一例を示す。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
図３は、モバイルデバイスにおけるＧＰＵ及びディスプレイ・プロセッサのブロック図である。ＧＰＵ３１０は、メモリ３５０に格納されたユーザ・プログラム３９０からの命令を実行する。１つの例として、ＧＰＵ３１０は、カリフォルニア州、サニーヴェールのアドバンスト・マイクロ・デバイシーズ社によって製造されたイマジオン（Ｉｍａｇｅｏｎ）７シリーズＧＰＵであってもよい。メモリ３５０は、フラッシュ・ランダムアクセスメモリ（ＲＡＭ）としてインプリメントされてもよい。ユーザ・プログラム３９０は、ＧＰＵ３１０を利用する任意のプログラムであってもよい。例えば、ユーザ・プログラム３９０は、ビデオゲームであってもよい。ＧＰＵ３１０は、ユーザ・プログラム３９０からの命令を実行し、バッファ３２０へ表示されるサーフェイスをレンダリングする。バッファ３２０は、同期型ダイナミックＲＡＭ（ＳＤＲＡＭ）内にあってもよい。ユーザ・プログラム３９０は、ディスプレイ３４０への接続を確立するように及び／又はレンダリングされたサーフェイスを表示する配向を決定するためにシステム・パラメータを決定するように構成されてもよい。そのようなシステム・パラメータは、メモリ３５０に格納されてもよい。ディスプレイ配向がユーザ・プログラム３９０によって選択されると、ユーザ・プログラム３９０はこの配向を制御パラメータ３７０としてメモリ３５０に格納する。上述のように、選択された配向は、９０度回転、水平方向反転、及び垂直方向反転指令の個々の又は組合せられた選択としてメモリ３５０に格納されてもよい。
【国際調査報告】
2010514011.tif 000008
2010514011.tif 000009