我知道这本质上是重复的,但是this从未得到回答。我想提一下,我有followed the tutorial可以与Visual Studio一起使用SFML,并且我正在使用64位SFML运行64位项目。该窗口会立即加载几次,现在在新的构建/调试中始终需要40秒才能打开。我还关闭了调试符号的下载。我的图形驱动程序是最新的,我的硬盘也很好。这是代码:
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");//This one
sf::CircleShape shape(100.f);
shape.setFillColor(sf::Color::Green);
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.clear();
window.draw(shape);
window.display();
}
return 0;
}
除RenderWindow以外,所有内容均以正常速度运行,而RenderWindow每次仅需要40秒。有谁知道我该如何解决?我已经有几个星期了。
e:可以是我的CPU吗?这不是最好的,但是我仍然可以运行大多数游戏,因为我拥有1050ti。我目前的CPU是i5-2500k,尽管我相信在A10-5800k上也遇到同样的问题。
最佳答案
由于OP没有进一步答复,我试图自己找到一种解决方法,因为该问题在2020年仍然存在。此解决方法要求您自己编译库。因此,下载源代码并更改以下内容:
WindowImpl.cpp
中,导航到函数WindowImp::WindowImp
并注释掉整个函数主体。 WindowImpl.cpp
中,导航到WindowImp::popEvent
并注释掉对processJoystickEvents
的调用只要您不使用SFML的操纵杆部分,它就可以正常工作。
关于c++ - SFML RenderWindow需要很长时间才能打开一个窗口,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53017551/