在做了一些研究之后,似乎使用 vertexArrays 以最有效的方式一次将许多精灵绘制到屏幕上,但我正在努力如何做到这一点。我尝试使用 sfml 论坛,但我看到的每个示例都来自过时的代码,到目前为止我有这个。
int main()
{
sf::VertexArray lines(sf::LinesStrip, 4);
lines.append(sf::Vertex(sf::Vector2f(0, 0),sf::Vector2f(0, 0)));
lines.append(sf::Vector2f(0, 50));
lines.append(sf::Vector2f(250, 50));
lines.append(sf::Vector2f(250, 0));
sf::Texture text;
text.loadFromFile("Content/StartGame.png");
sf::RenderStates rend(&text);
sf::RenderWindow App(sf::VideoMode(800, 600, 32), "SFML Graphics");
// Start game loop
while (App.isOpen())
{
// Process events
sf::Event Event;
while (App.pollEvent(Event))
{
// Close window : exit
if (Event.type == sf::Event::Closed)
App.close();
}
App.clear();
App.draw(lines, &text);
App.display();
}
}
我有形状图,但是当我尝试将它应用到纹理时,什么也没有画出来。