运行我的SFML游戏时出现奇怪的错误?

时间:2015-11-26 12:27:06

标签: c++ image visual-studio-2015 2d sfml

所以,我在C ++中使用SFML制作游戏,但是当我尝试添加图像时,出现了一个非常奇怪的OpenGL(我认为)错误。根本没有任何意义。 首先我的控制台被随机文本和符号垃圾邮件,然后应用程序崩溃,视觉工作室告诉我:

Exception thrown at 0x618EDBF4 (vcruntime140.dll) in SFML_Game.exe: 0xC0000005: Access violation reading location 0x00C54000.

听起来它与我无法阅读我添加的图片文件有关,虽然我不知道它是什么。 图片的位置位于我的" SFML_Game.vcxproj" 所在的文件夹中。

我也没有机会看到"无法加载玩家形象"由于垃圾邮件太快,因此在控制台中打印出来。

编辑我可以看到图片现在无法加载,这里有一张图片......:

Console Picture

这是我目前的代码:

#include<iostream>
#include<SFML/Graphics.hpp>
#include <string>

int main(int argc, char* argv[])
{
    // Creates a window
    sf::RenderWindow Window(sf::VideoMode(800, 600), "SFML Game Engine");

    sf::Texture pTexture;
    sf::Sprite playerImage;

    if (!pTexture.loadFromFile("Player.png"))
    {
        std::cout << "Could not load player image" << std::endl;
    }

    playerImage.setTexture(pTexture);

    while (Window.isOpen())
    {
        sf::Event Event;
        while (Window.pollEvent(Event) && Window.hasFocus())
        {
            switch (Event.type)
            {
            case sf::Event::Closed:
                Window.close();
                break;
            }
        }


        Window.draw(playerImage);
        Window.display();
    }
}

1 个答案:

答案 0 :(得分:-1)

所以,似乎我的代码很好,这是一个链接器错误。 我不知道静态动态库,静态库和动态库之间的区别,所以我只是将它们全部放在那里,在删除它们之后它开始工作了。 至少在调试模式下。

差不多,如果其他人有这个问题,请查看如何在他们的网站上设置SFML而不是视频教程。 ^^