AcceleratedOpenGL®モードとは何ですか?
コンピューターグラフィックスのAccelerated Open GraphicsLibrary®(OpenGL®)モードは、コンピューターグラフィックスカードでアクティブ化して、グラフィックスカードのハードウェア機能を使用して、OpenGL®コマンドとレンダリングの一部またはすべてをデフォルトの代わりに実行できる状態です純粋にソフトウェアベースの機能。 すべてのグラフィックカードがハードウェアアクセラレーションOpenGL®モードをサポートしているわけではありません。また、このモードをサポートしているものは、OpenGL®ライブラリで利用可能なすべてのコマンドを完全に加速しません。 特定のコンピューターまたはデバイスで使用されているハードウェアとドライバーによっては、競合またはコンピュータープロセッサがグラフィックプロセッサよりも高速であるために、加速OpenGL®モードが実際にソフトウェアレンダリングモードより遅くなる場合があります。 加速OpenGL®モードを使用するアプリケーションを作成する場合、加速モードの処理方法の実装は標準化されておらず、ドライバーによって大きく異なる可能性があるため、モードを正確に検出して使用することは困難です。
OpenGL®グラフィックスライブラリは、グラフィックスハードウェアとそれにアクセスするために記述されたソフトウェアの間にバッファを提供する抽象プログラミングインターフェイス(API)です。 一般に、OpenGL®はクライアントサーバーモデルで動作します。つまり、ソフトウェアはクライアントになり、描画要求と情報をサーバーに送信します。サーバーは通常OpenGL®ドライバーとハードウェアです。 オペレーティングシステムまたはグラフィックスカードの製造元によって提供されるドライバーは、その内部実装が大きく異なる可能性があるため、一部のより高度なハードウェア機能は常に標準化されていません。 ハードウェアアクセラレーションOpenGL®モードは、実装のためにグラフィックカードメーカーに委ねられている機能の1つです。
プログラムがハードウェアアクセラレーションOpenGL®モードを使用する場合、実際に行われるのはOpenGL®関数呼び出しが行われ、ドライバーに渡されることです。 ドライバーが加速がアクティブであること、または特定の操作がハードウェアを直接サポートしていることを検出した場合、関数はグラフィックスカードにあるグラフィックス処理ユニット(GPU)に直接渡されます。 アクティブなアクセラレーションまたはアクセラレーションが存在しない場合、コマンドは標準のソフトウェアコールおよびアルゴリズムを通じて処理および実行されます。 ほとんどの場合、ハードウェアアクセラレーションは、純粋なソフトウェアよりもはるかに速いレンダリング時間を提供します。
一部のグラフィックカードは、加速OpenGL®モードをサポートしていますが、特定の解像度と色深度でのみサポートしています。 つまり、プログラムがOpenGL®を初期化するときに特定の解像度と色深度を要求する場合、グラフィックカードは自動的に加速モードを使用する可能性があります。 グラフィックハードウェアは非常に異なる場合があるため、このモードは常に表示されるとは限らず、ユーザー入力なしでプログラム内から自動的に検出することが困難な場合があります。 加速OpenGL®モードをサポートする必要があるドライバーとハードウェアに加えて、モニターまたはディスプレイデバイスは、要求された解像度と色深度をネイティブでサポートする必要があります。そうしないと、加速モードへの切り替えが失敗し、プログラムの実行が妨げられます。