问题描述
我如何使我的代码显示此输出对smfl和codeblock是新的 我不知道如何调用精灵并使其移动 在这次大流行在线课程中,我和我的朋友感到困惑:(
#include <iostream>
#include <SFML/Graphics.hpp>
#include <SFML/System.hpp>
#include <SFML/Window.hpp>
class Game
{
public:Game();
void run();
private:
void processEvents();
void update(sf::Time deltaTime);
void render();
void handlePlayerInput(sf::Keyboard::Key key,bool ispressed);
private:
sf::RenderWindow mWindow;
sf::CircleShape mPlayer;
bool mIsMovingUp = false;
bool mIsMovingDown = false;
bool mIsMovingLeft = false;
bool mIsMovingRight = false;
float PlayerSpeed = 10.0f;
sf::Time TimePerFrame = sf::seconds(1.f / 60.f);
};
Game::Game()
: mWindow(sf::VideoMode(640,480),"SFML Application"),mPlayer()
{
mPlayer.seTradius(40.f);
mPlayer.setPosition(100.f,100.f);
mPlayer.setFillColor(sf::Color::Cyan);
}
这是完整代码https://pastebin.com/g4v2DzgF的链接 请发送帮助S.O.S
解决方法
首先,您需要加载纹理。
sf::Texture texture;
texture.loadFromFile("ship.png");
请勿删除纹理。它必须存在才能使用。
接下来,您需要使用纹理创建一个精灵。
sf::Sprite sprite(texture);
请记住要绘制精灵,这与绘制播放器的方式相同。
您还可以像移动播放器一样移动精灵。
查看文档以获取更多详细信息:
- 绘图精灵:
- 移动可变形对象: