Texture.loadFromFile不起作用

时间:2015-02-02 23:57:08

标签: c++ visual-studio-2013 sfml

我正在使用SFML 2.2和Visual Studio Express 2013。

我只是想加载纹理并将其应用于精灵,就像在http://www.sfml-dev.org/tutorials/2.2/graphics-sprite.php的教程中一样。

问题是texture.loadFromFile()对我来说根本不起作用。我试图将我的文件放在千个不同的地方,我总是得到相同的结果。最后我决定使用完整路径,同样的问题。我也尝试过不同的格式:PNG,GIF,JPG,BMP。我还尝试用不同的软件保存它们:Photoshop,GIMP,paint。什么都没有帮助。显示的唯一错误消息是:

无法加载图片"

正如那样,最后只有一个双引号。

帮助!

这是我尝试过的最小代码。

#include <SFML/Graphics.hpp>

int main() {    
    sf::Texture texture;
    if (!texture.loadFromFile("C:\\temp.png"))
      return 1;

   return 0;
}

1 个答案:

答案 0 :(得分:1)

我弄清楚问题是什么。

我在调试模式下运行,但在其他依赖项下在链接器中配置了非调试.lib文件。将配置切换到Release突然使一切正常。

要使调试配置生效,我只需将名称从sfml-graphics.lib更改为sfml-graphics-d.lib(依此类推)。这就行了!

感谢大家的帮助!