【发布时间】:2018-10-25 21:18:10
【问题描述】:
这段代码使用 SFML 有什么问题?
在下面的代码中,我有this image (1000x1000),我想使用 sf::RenderTexture 在窗口 (500x500) 中显示它。 但是,只有部分图像出现在第一象限中:
#include <SFML/Graphics.hpp>
using namespace sf;
int main()
{
RenderWindow window({500, 500}, "SFML Views", Style::Close);
View camera;
camera.setSize(Vector2f(window.getSize()));
Texture background;
background.loadFromFile("numeros.png");
Sprite numeros (background);
RenderTexture texture;
texture.create(window.getSize().x, window.getSize().y);
Sprite content;
content.setTexture(texture.getTexture());
texture.draw(numeros);
texture.display();
while (window.isOpen())
{
for (Event event; window.pollEvent(event);)
if (event.type == Event::Closed)
window.close();
window.clear();
window.setView(camera);
window.draw(content);
window.display();
}
return EXIT_SUCCESS;
}
据我了解,代码应该会生成自动调整为 500x500 的原始图像(1000x1000)。
谁能告诉你怎么了?
【问题讨论】:
-
我不知道这与问题有什么关系,无论如何我在具有 I7 处理器和 Intel 板载显卡的普通台式机上使用 Windows 8.1。