C ++图形库上的访问冲突

时间:2018-10-07 15:22:38

标签: c++ sdl sfml

我正在尝试启动一个项目,该项目将具有表示某些数据的基本图形显示。为此,我最初将要使用SFML,因为我已经使用它并取得了很多成功。

但是,在重复之前在之前项目中使用过的教程之后 http://gamecodeschool.com/sfml/building-your-first-sfml-game-project/要设置基本的链接/编译器设置,我在 window.display() 该行表示这是访问冲突。我在网上搜寻了所有答案,并仔细检查了无济于事:

  1. 使用调试库
  2. 使用32位版本。
  3. 正确的链接器输入

我放弃了并决定尝试SDL,但是在按照T的教程(其中提供的测试代码可以初始化所有模块)工作之后,我尝试了一些基本的游戏循环代码(在屏幕上绘制一个矩形)并得到了另一个SDL_RenderPresent(renderer)上的访问冲突几乎完全相同,在SDL版本中呈现为SFML的功能也相同。

因此,我认为存在一些潜在问题,这意味着我每次尝试更新计算机时都会抛出错误。自从我上次使用SFML以来,唯一发生的变化是我现在正在使用通过扩展坞连接到笔记本电脑的显示器,但是我看不到它会如何影响事情。

任何人都对此有经验吗?

以下两种情况的代码:

编辑 SFML:

#include <SFML/Graphics.hpp>

int main()
{
sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
sf::CircleShape shape(100.f);
shape.setFillColor(sf::Color::Green);

while (window.isOpen())
{
    sf::Event event;
    while (window.pollEvent(event))
    {
        if (event.type == sf::Event::Closed)
            window.close();
    }

    window.clear();
    window.draw(shape);
    window.display();
}

return 0;}

SDL: 超过150行,但我直接从http://headerphile.com/sdl2/sdl2-part-3-drawing-rectangles/复制了它 (页面底部)

1 个答案:

答案 0 :(得分:0)

因此,在查看了引起问题ig9icd32.dll的dll之后,它似乎是OPENGL组件。所以我重新安装了图形驱动程序,一切似乎都正常了!

相关问题