0

LinuxでMesaライブラリを使用してOpenGLを使用しようとしていますが、実際に使用するヘッダーとライブラリの組み合わせについて混乱しています。

このGL/gl.hファイルには、のようなOpenGL3.0以降の関数は含まれていませんglCreateProgram。ただし、これらはGL/glext.hファイルにありますが、GL_GLEXT_PROTOTYPESが定義されている場合に限ります。これはGLライブラリに対してリンクされます。

には、必要なすべてのGLES2/gl2.h定義が含まれており、別のライブラリもありますGLESv2

Linuxデスクトップのヘッダーとライブラリの正しい組み合わせは何ですか?

GLUT、GLEW、またはGLEXまたはEGLを使用する必要がある場合は、このリストに追加することもできますか?これらはすべてMESAの一部であり、サンプルはランダムに選択されているようです。

4

1 に答える 1

1

IMO必要なもの、自分でコーディングしたいもの(特に、GLUTの場合)、および使用しているターゲットプラットフォームについては、完全にあなた次第です。

  • モバイルプラットフォームもターゲットにしたい場合は、GLESの方が適している可能性があります(通常はOpenGLをサポートしていませんが、OpenGL ESをサポートしているため)。

  • Windowsもターゲットにする場合は、OpenGL ESがサポートされていないため(Angleライブラリなどの追加のレイヤーを使用しない限り)、OpenGLに移行する必要があります。

上記の追加ライブラリに関しては、最小限のプログラムも必要ありませんが、時間を節約できます。

  • GLUTは、ウィンドウを作成したり、基本的なテクスチャの読み込みを処理したりするための簡単な方法など、一般的に「持っておくと便利」な便利なスニペット/関数のコレクションです。

  • GLEWも同様のコレクションであり、基本的なOpenGLにない拡張機能を簡単に使用できます(例:前述の)glCreateProgram

于 2012-08-16T08:24:01.480 に答える