SFML loadFromFile不起作用,奇怪的错误

时间:2019-10-19 15:07:27

标签: c++ visual-studio sfml

我正在尝试在SFML中加载纹理,但是它不起作用。似乎该程序甚至都不知道JPG存在。

sf::Texture table;
    if (!table.loadFromFile("pool-table.jpg"))
    {
        std::cout << "Error!" << std::endl;
        return -1;
    }

我有这样的错误:

Error!
Failed to load image "

该如何解决?

2 个答案:

答案 0 :(得分:0)

路径很可能是问题所在。您可以使用相对路径,也可以使用绝对路径。您当前正在使用相对路径,因此您的文件必须位于程序的当前工作目录中。

为确保路径是问题,您可以使用绝对路径来尝试它,如下所示:

myTexture.loadFromFile("C:/Projects/MyProject/Media/myImage.png")

如果这样工作,您就会知道代码不是问题,而是路径。

如果在测试后仍然存在问题,这是一个不错的技巧,可以节省一天的时间:在加载图像之前,请插入以下代码行:

system("dir");

它将当前工作目录添加到控制台。您的相对路径在键入时应考虑这些信息。

祝你好运!

答案 1 :(得分:0)

感谢您的评论!我将配置从Debug更改为Release,一切终于开始起作用:D