2016-05-08 1 views
-2

なぜglutやglewがあり、どのようなものが使用されているのか、OpenGL用の単純なsdkはありませんか?どちらを使うべきですか?そこにはとても混乱しているフレームワークがたくさんありますか?なぜ、OpenGL用のSDKが1つだけではないのですか?opengl、glut、glewについての問い合わせ

答えて

0

どうして書き込まれていますか?

GLUT、GLFWと同様のフレームワークは、システム・レベル・インターフェースは、ウィンドウを作成するために、存在しており、OpenGLのコンテキスト彼らが何ができるかに非常に多目的ですが、それはまた、単に作成するために、コードの多くを取りますOpenGLコンテキストを作成するためのいくつかのウィンドウとそれらを追加します。 ...そして、UIイベント管理などのことを行うコードをいくつか追加しています。

これらのシステムレベルのAPIは、システムレベルではこれらのAPIでできることとできないことを特定したくないため、冗長です。

だから、3つの呼び出し

glutInitDisplayMode(…); 
glutCreateWindow(…); 
glutMainLoop(); 

だけでシステムを扱うコードは約1.5Kの行をカプセル化します。しかし、GLUTを使うと、素敵なボタン、メニューバーなどが得られません。そのためには、より多くのコードを持つQtのような別のフレームワークを使用しますが、GLUTと同じシステムレベルのAPIを使用します。 GLFWなどにも同じことが起こります。

GLEW私たちは、OpenGLを拡張することができ、それを拡張するためのシステムレベルのインターフェイスが、最小限度と柔軟性のためにもう一度ダウンしているので、私たちは持っています。

なぜopengl用のSDKが1つだけではないのですか?

最終的にOpenGLはシステムレベルのAPIであり、「SDK」は通常のシステムデフォルトコンパイラですぐに使用できるようになるためです。

したい場合は、GLEW、GLUTなどを使わずにOpenGLプログラムを作成することができます。しかし、それは面倒です。

+0

@Jitendra Tiwari GLUTとGLFWの主な違いは、GLUTは15年間は変更されておらず、メインループの主張であるということです。主ループは、状況に応じて強さと弱点です。 _simple_プロトタイプを開発するのに便利な_simple_ SDKです。 – user3078414

+0

@ user3078414: "公式の" GLUT仕様があればそうです。しかし、今日でもまだフリーメルトの実装が維持されているだけで、いくつかの改善がなされており、GLFWを使って自分のイベントループを書くことができます。 – derhass

+0

@derhass、あなたの心配のおかげで、私は_ ** "公式" ** GLUTについて書いていました。そうでなければ_ ** FreeGLUT ** _と書いていたでしょう。私は今までMJKとかなりの数の関係にありましたが、私は "公式" GLUTのさらなる発展を許さない理由を知っています。しかし、私はそれが維持されていないとは言いません。そんなに長い間、平易な状態で「凍結」されてしまった結果の1つは、ユビキタスな実装です。 – user3078414

関連する問題