0

一部のGLイメージ関数でOpenGLコンテキストを初期化するためにGLロードを使用する必要があるのはなぜですか?GLEWを使用してGLイメージを完全に利用してOpenGLコンテキストを初期化することは可能ですか?

4

1 に答える 1

3

非公式SDKの GLイメージシステムについて話している場合、答えはノーです。SDKはパッケージ取引を目的としています。その一部を使用している場合は、残りを使用する必要があります。結局のところ、GLイメージをビルドして含めることができれば、それらは一緒にバンドルされているため、GLロードを使用することもできます。

そして、GLLoadはGLEWが行うことを正確に行います。コアコンテキストで機能させるために「実験的」なものを必要としないため、多くの点で優れています。#include <GL/glew.h>Cインターフェースを介して、すべてのパーツを。で交換することができます#include <glload/gl_[Insert Version Here].h>。それ以外のコード(もちろん初期化コードも)を変更する必要はありません。

そうは言っても、次の場合に限り、GLLoadとGLEWを同時に使用できるはずです。

  1. 両方を初期化します。これは、OpenGLコンテキストを呼び出しglewInit て作成した後に行うことを意味します。 LoadFunctionsそれらの変数は相互作用するべきではありません。

  2. システム以外のヘッダーの両方を同じファイルに含めようとしないでください。GL Imageは、実際にはOpenGLヘッダーを含める必要がないTextureGenerator.hように特別に設計されています(つまり、またはのようなGLタイプを直接使用しません)。GLintGLenum

彼らはまったく同じ仕事をしているので、それは明らかに無駄です。しかし、それは機能するはずです。

于 2012-12-04T01:53:29.930 に答える