Bonjour,
Je viens juste pour demander si c'est possible d'utiliser l'objet sf::Texture si j'ai ouvert un contexte opengl avec glut. L'intérêt serait de profiter de tous les avantages de SFML... Sans changer le code suivant mes textures dans un contexte SFML marchent mais s'affichent noir dans un contexte glut :
bool VertexObject::SFMLloadTexture(const char * path) {
sfml_texture = new sf::Texture();
if(!sfml_texture->loadFromFile(path)) {
std::cout << "Error loading texture !!" << std::endl;
return false;
}
sfml_texture->setRepeated(true);
glGenBuffers(1, &color_array_buffer);
glBindBuffer(GL_ARRAY_BUFFER, color_array_buffer);
glBufferData(GL_ARRAY_BUFFER, uvs.size() * sizeof(glm::vec3), &uvs[0], GL_STATIC_DRAW);
return true;
}
//using the texture :
GLuint TextureID = glGetUniformLocation(shaderProgram, "myTextureSampler");
if(!TextureID)
cout << "TextureID not found ..." << endl;
// glEnableVertexAttribArray(TextureID);
glActiveTexture(GL_TEXTURE0);
if(SFML)
sf::Texture::bind(sfml_texture);
else {
glBindTexture (GL_TEXTURE_2D, texture);
}
glUniform1i(TextureID, 0);
Merci !