2016-03-28 7 views
2

私はLWJGLがOpenGLの単なるラッパーであることを知っています。これは、Java言語でより低いレベルのOpenGL関数を使用するように設計されたJavaライブラリです。GLFWはLWJGLなしで使用するように設計されていますか?

私が今理解している限り、GLFWはグラフィックスを表示するためのより良いウィンドウを作成できるライブラリです。ですから、GLFWはLWJGLよりも良い方法でウィンドウを作成するための単なるライブラリです。

GLFWはグラフィックスを作成するのではなく、ディスプレイを作成するだけですか? GLFWは単独で使うのではなく、LWJGLライブラリを使用してOpenGL関数にアクセスしてグラフィックスを作成するだけでいいですか?

GLFWを使用する理由を説明できる人はいますか? LWJGL3とGLFWの間には関係があると思われますが、お互いに何が関係していますか?

答えて

5

GLFWはグラフィックを作成するのではなく、ディスプレイを作成することは本当ですか? GLFWは単独で使うのではなく、LWJGLライブラリを使ってOpenGL関数にアクセスしてグラフィックスを作成するだけです。

はい。

GLFWを使用する理由を説明できる人はいますか?そして、LWJGL3とGLFWの間には関係があるようですが、どうしたらお互いに関係がありますか?

主な理由は、JavaのWindowing API [-s]をOpenGLと相互運用できるようにするのは難しいことです。一緒に行動するようにしても、そのような場合にはパフォーマンス上の罰則がかかることがよくあります。

GLFWは、Windows、MacOS、Linuxのいずれの環境でも、ネイティブのWindowing APIを包み込むラッパーにすぎません。表面的には、これはJavaのAWT APIと思われるものですが、AWTとSwingにはパフォーマンス上の問題がありますが、GLFWにはありません。

LWJGLはGLFWのラッパー、だけでなく、あなたが正常に手動で(通常はGLEWと呼ばれるものを通して、またはOpenGL拡張ラングラー)C/C++にロードする必要があると思い関数を含むより広範なOpenGLのAPIのラッパーです。 GLFWがフレームバッファを正しく設定し、OpenGLからの入力を得ることを保証するためにGLFWがいくつかの特定のOpenGL関数をロードしなければならないという事実を除いて、お互いの関係を必ずしも持っているわけではありません(そして様々なOpenGL拡張、しかし、それ以外は本質的に独立しています。

関連する問題