SFML 加载从文件不起作用,奇怪的错误

SFML loadFromFile doesn't work, weird error

本文关键字:错误 不起作用 加载 文件 SFML      更新时间:2023-10-16

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

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

我有这样的错误:

Error!
Failed to load image "

我应该怎么做才能解决这个问题?

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

若要确定路径是问题所在,可以使用绝对路径进行尝试,如下所示:

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

如果它以这种方式工作,您就知道代码不是问题,而是路径。

如果在此测试后这仍然是一个问题,这里有一个不错的技巧可以挽救这一天:在加载图像之前,插入以下代码行:

system("dir");

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

祝你好运!

感谢您的评论!我已经将配置从调试更改为发布,一切终于开始工作:D