OpenGLバージョン> = 3.3を使用するチュートリアル(スプライトレンダリング)を複製したいと考えています。例えばどのようにして別のOpenGLプロファイルを利用できますか?
ジオメトリシェーダは3.2で導入された、と私はこのエラーを取得した。
error: ‘GL_GEOMETRY_SHADER’ was not declared in this scope
私は最新のものに私のメサドライバを更新しました。私は本当に理解していない、どのようにOpenGLのコンパイル/リンク時に新しいバージョンを選択することができます:
➜glxinfo |グレップ-i「バージョン」
server glx version string: 1.4
client glx version string: 1.4
GLX version: 1.4
Version: 17.1.4
Max core profile version: 4.5
Max compat profile version: 3.0
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.1
OpenGL core profile version string: 4.5 (Core Profile) Mesa 17.1.4
OpenGL core profile shading language version string: 4.50
OpenGL version string: 3.0 Mesa 17.1.4
OpenGL shading language version string: 1.30
OpenGL ES profile version string: OpenGL ES 3.1 Mesa 17.1.4
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.10
は、私は本当にこれを解釈することはできませんが、バージョン4.5を使用してコアプロファイルのいくつかの種類があると言います。このプロファイルをどのように活用すればよいですか?
私はこのような私のコードでGLコンテキストを初期化します。
if(!glfwInit()) e_glfw_init();
m_window = glfwCreateWindow(WINDOW_WIDTH, WINDOW_HEIGHT, WINDOW_TITLE.c_str(), nullptr, nullptr);
if(m_window == nullptr) e_window_context();
glfwMakeContextCurrent(m_window);
glewExperimental = true;
if(glewInit() != GLEW_OK) e_glew_init();
あなたがどのようにあなたのコンテキストを初期化する? – BDL
使用しているOpenGLヘッダー/ロードライブラリは何ですか?私はこれらのヘッダを含めてい –
@NicolBolas: 'GL/glew.h' ' GLFW/glfw3.h' 'GLM/glm.hpp' ' GL/glu.h' 'GLM/GTC/type_ptr .hpp' –