SFML, странная ошибка при попытке добавить загруженную текстуру в std::map
Рассмотрим следующий код:
std::map<std::string, sf::Texture> textures;
sf::Texture texture;
if (texture.loadFromFile("texture.bmp") == true)
{
textures.insert({"texture.bmp", texture});
}
Я обнаружил странную проблему.
Если приведенный код вызывается до:
sf::RenderWindow render_window(...);
Тогда в момент вставки в коллекцию я получаю такую ошибку:
An internal OpenGL call failed in Texture.cpp(98).
Expression:
glFlush()
Error description:
GL_INVALID_OPERATION
The specified operation is not allowed in the current state.
An internal OpenGL call failed in Texture.cpp(98).
Expression:
glFlush()
Error description:
GL_INVALID_OPERATION
The specified operation is not allowed in the current state.
Мои вопросы:
- Почему это происходит?
SFMLзапрещает грузить текстуру до тех пор, пока не создан хотя бы один объектRenderWindow? - Если да, то где об этом написано?
- Может ли это быть связано с работой драйверов при наличии двух видеокарт в системе?