Cześć! Wszystko działało bardzo dobrze do momentu gdy usunąłem jedną klasę. Chciałem stworzyć nową z taką samą nazwą, ale ciągle wyskakiwało, że już taka jest. Postanowiłem kliknąć w Build->Clean solution i potem Build->Build solution. Po zrobieniu tych dwóch rzeczy, klasę stworzyłem bez problemu, ale przestały mi działać inne klasy takie jak na przykład Shader albo klasa odpowiedzialna za ładowanie tekstur 2d.

int main(int argc, char*args[])
{
	Window window;
	//Inicjuje SDL i glew, parametry to major i minor 
	window.Init(3, 0);
	//Tworzy okno: nazwa, w, h, flag
	window.Create("Window", 1280, 720, NULL);

	Shader shader;
	GLuint shaders[2];
	//Tworzy shader z pliku o danym typie
	shaders[0] = shader.CreateShader("vertex2.shader", GL_VERTEX_SHADER);
	shaders[1] = shader.CreateShader("fragment2.shader", GL_FRAGMENT_SHADER);
	//Tworzy program shadera: tablica, ilość shaderów
	shader.CreateProgram(shaders, 2);
	//Używa programu
	shader.useProgram();
 
	bool quit = false;
	while (!quit) {
		while (window.PollEvent()) {
			if (window.Quit()) {
				quit = true;
			}
		}

		glClearColor(0.5f, 0.5f, 0.5f, 1.0f);
		glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

		glDrawArrays(GL_TRIANGLES, 0, 3);

		window.SwapBuffers();
	}
	return 0;
}

Testowy kod ma rysować tylko czerwony trójkąt, ale zamiast tego wyskakuje błąd:
screenshot-20180430225729.png

Przed użyciem clean i build wszystko działało bez problemu.
Kodu shader w żaden sposób nie zmieniałem, klasy shadera ani innych klas też nie zmieniałem. Wydaje mi się, że w ogóle metody open gl nie działają poprawnie.

Dlaczego tak się stało? W jaki sposób to naprawić?