OpenGL®ゲームエンジンとは何ですか?
Open GraphicsLibrary®(OpenGL®)ゲームエンジンは、カスタムアプリケーションを作成するために構築できる完全に実装されたフレームワークを提供することにより、ビデオゲームの作成を促進することを目的としたプログラミングライブラリまたはソフトウェアの他のコレクションです。 OpenGL®ゲームエンジンの基盤は、高レベルのプログラミングロジックと、低レベルのグラフィックハードウェアにアクセスするOpenGL®ライブラリとの間のインターフェースです。 一部のエンジンは、ぼかし、ライトマップ、カスタムシェーダーなどのエフェクト用に最適化された機能を含めることにより、特別なグラフィカル機能とアルゴリズムへの簡単なアクセスに主に焦点を当てています。 より一般的には、OpenGL®ゲームエンジンは、高レベルのライブラリ、スクリプト言語、またはカスタム開発環境を通じてさまざまなレベルの機能を追加します。 さまざまなOpenGL®ゲームエンジンの機能には、ユーザー入力ルーチン、シャドウレンダリング、グラフィカルユーザーインターフェイス(GUI)フレームワーク、ネットワークサポート、物理学、およびスムーズなアニメーションのための高度なタイミングメカニズムが含まれます。
OpenGL®を利用するゲームを作成する場合、2次元(2D)でも3次元(3D)でも、ほとんど静的なOpenGL®コードライブラリを動的なゲーム環境に統合するために、かなりの量のプログラミングコードを記述する必要があります。オブジェクトは変化して移動し、ユーザーは仮想世界と対話できます。 OpenGL®ゲームエンジンの主な目的は、このタイプの定型コードを書き換える必要をなくし、代わりにゲームを構築するための一貫した構造化されたフレームワークを提供することです。 OpenGL®には、グラフィックをデバイスに表示またはレンダリングする機能のみが含まれているため、シーン内で移動するオブジェクトやシーンから追加または削除できるオブジェクトを統合する方法の開発など、すべてのゲームロジックをそのコアにラップする必要があります。 動的なグラフィカルオブジェクトにOpenGL®を使用する構造は、一般にシーングラフとして知られており、多くのOpenGL®ゲームエンジン実装の基礎となっています。
開発者がOpenGL®ゲームエンジンを使用するもう1つの理由は、ゲームのさまざまな要素を1つのフレームワークに統合する必要性をなくすためです。 キーボードからのユーザー入力、yesまたはnoオプションを選択するウィンドウなどのGUI要素、および特定の一般的なグラフィックカードの最適化さえすべてOpenGL®ゲームエンジンに含まれているため、開発者はハードウェア仕様をソートして記述する必要がありませんコード自体。 トレードオフとして、このような複雑な機能を備えたエンジンは一般に非常に高価であるか、商用使用のために非常に制限的なライセンスを保有していますが、一部のオープンソースゲームエンジンは存在します。
「OpenGL®ゲームエンジン」という用語は、カスタムデータファイルのほとんどまたはすべてが削除され、コンパイルされたプログラミングコードのみが残っている完成したコンピューターゲームを指すこともあります。 これにより、ユーザーはカスタムのグラフィック、マップ、およびゲームエンジンによってロードされるスクリプトイベントを作成できます。 通常、このタイプのゲームエンジンでは、ゲームプレイを大幅に変更することはできず、代わりに、独立したオリジナルゲームとは対照的に、ユーザーがカスタムレベルとコンテンツを作成するためのプラットフォームとして機能します。