- 调用SFML的类,画几个小形状到窗口。(窗口类、形状类)
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow window(sf::VideoMode(640, 480), "SFML Application");
sf::CircleShape cShape;
cShape.setRadius(40.f);
cShape.setPosition(100.f, 100.f);
cShape.setFillColor(sf::Color::Cyan);
sf::RectangleShape rShape;
sf::Vector2f v1(165.f, 240.f);
rShape.setSize(v1);
rShape.setPosition(v1);
rShape.setFillColor(sf::Color::Magenta);
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.clear();
window.draw(rShape);
window.draw(cShape);
window.display();
}
}
- 把上述程序改写成用类和对象方式书写的
class Game
{
public:
Game();
void run();
private:
void processEvents();
void update();
void render();
private:
sf::RenderWindow mWindow;
sf::CircleShape mPlayer;
};
Game::Game()
: mWindow(sf::VideoMode(640, 680), "SFML APPlication")
, mPlayer()
{
mPlayer.setRadius(40.f);
mPlayer.setPosition(100.f,100.f);
mPlayer.setFillColor(sf::Color::Cyan);
}