I\'ve tried to set up SFML 2.0 with the latest version of the qt creator, I\'ve set up SFML right and I imported a small game I wrote in visual studio. Upon compilation, I g
putting the glewInit(); after the sf::window creation that solves my problem for using glew with sfml
It's because you are not initializing OpenGL. Example with the lib glut.
Wrong:
glewInit(); // ERROR MISSING GL VERSION
glutInitDisplayMode(GLUT_RGB);
Good:
glutInitDisplayMode(GLUT_RGB);
glewInit();
EDIT I think for SFML:
sf::Window App(sf::VideoMode(400, 400, 32), "Window");
glewInit();
EDIT 2 Test this code.
#include <SFML/Window.hpp>
#include <iostream>
#include <GL/glew.h>
int
main(int, const char**)
{
GLenum err;
std::cout << "Start" << std::endl;
std::cout << "Test 1" << std::endl;
if ((err = glewInit()) != GLEW_OK)
std::cout << glewGetErrorString(err) << std::endl;
std::cout << "Init window" << std::endl;
sf::Window app(sf::VideoMode(400, 400, 32), "Windows");
std::cout << "Test 2" << std::endl;
if ((err = glewInit()) != GLEW_OK)
std::cout << glewGetErrorString(err) << std::endl;
std::cout << "End" << std::endl;
return 0;
}
My output:
Start
Test 1
Missing GL version
Init window
Test 2
End
Compile with: g++ -W -Wall -Werror main.cpp -lsfml-window -lGLEW
Good Luck ;)
If you're using glew with glfw, use glfwMakeContextCurrent
(https://github.com/Cloudef/glhck/issues/15)
For those using SDL2's Renderer functions, it needs to be right after SDL_CreateRenderer
.
At the request of user3648895, I am posting my answer outside of the comments separately.
For those using GLFW instead of SFML, you need to call glewInit() after glfwMakeContextCurrent