1. ホーム
  2. オープングラム

opengl glGetIntegerv エラーを使用します。アクセス違反 ロケーション0x0000000000000000を実行中

2022-02-10 15:17:24
<パス

opengl glGetIntegerv を使用するとエラーが発生します。

OpenGLBaseCode1.exeの0x000000000000でスローされた例外:0xC0000005。0xC0000005: アクセス違反、0x000000000000 の場所を実行中。
メモリ領域の確保など、まずOpenGLコンテキストのベース環境を作る必要があります。OpenGLコンテキストのベース環境を作成するためのベースコードは以下の通りです。

#include<glad/glad.h>
#include<GLFW/glfw3.h>
#include<iostream>

int main()
{
	/**
	We need create an OpenGL context first.
	**/
	glfwInit();
	GLFWindow* window = glfwCreateWindow(900, 500, "hh", NULL, NULL);
	glfwMakeContextCurrent(window);
	gladLoadGLLoader((GLADloadproc)glfwGetProcAddress);

	int nrAttributes = 0;
	glGetIntegerv(GL_MAX_VERTEX_ATTRIBS, &nrAttributes);

	std::cout << nrAttributes << std::endl;
	return 0;

}