当我试图在SFML 2.0中显示图像时,它永远无法找到图像。我正在使用Visual Studio Express C ++ 2010.这是我的代码。
#include "stdafx.h"
using namespace std;
int main()
{
// Create the main window
sf::RenderWindow window(sf::VideoMode(800, 600), "SFML window");
// Load a sprite to display
sf::Texture texture;
if (!texture.loadFromFile("image.png"))
{
cout << "Could not find file image.png" << endl;
system("PAUSE");
}
sf::Sprite sprite(texture);
// Create a graphical text to display
// Load a music to play
// Start the game loop
while (window.isOpen())
{
// Process events
sf::Event event;
while (window.pollEvent(event))
{
// Close window : exit
if (event.type == sf::Event::Closed)
window.close();
}
// Clear screen
window.clear();
// Draw the sprite
window.draw(sprite);
// Draw the string
// Update the window
window.display();
}
return EXIT_SUCCESS;
}
但是当我将图像目录更改为特定的“C:\ Users \ Chase \ Documents \ Visual Studio 2010 \ Projects \ Boonce \ image.png”时,它可以工作。我需要在哪里放置image.png才能显示它而不具体。我听人说工作目录,我不知道它是什么。如果它是项目文件夹(Projects \ Boonce \),那么我已经尝试过,但它没有用。
答案 0 :(得分:1)
它应该放在与.exe
文件相同的目录中,或者取决于某些其他目录(可能是项目目录)中的项目设置。
答案 1 :(得分:0)
在Visual Studio中,您需要设置 工作目录
转到:
并设置资产目录所在的路径。
默认为 $(ProjectDir),即 .vcproj 文件所在的目录。