87

私は最近、C++ と SFML ライブラリを取り上げ始めました。「player.cpp」という名前のファイルに適切にスプライトを定義したかどうか疑問に思っていましたが、「main.cpp」にあるメイン ループでどのように呼び出すのでしょうか?

これが私のコードです (これは 1.6 ではなく SFML 2.0 であることに注意してください!)。

main.cpp

#include "stdafx.h"
#include <SFML/Graphics.hpp>
#include "player.cpp"

int main()
{
    sf::RenderWindow window(sf::VideoMode(800, 600), "Skylords - Alpha v1");

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

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

    return 0;
}

player.cpp

#include "stdafx.h"
#include <SFML/Graphics.hpp>

int playerSprite(){
    sf::Texture Texture;
    if(!Texture.loadFromFile("player.png")){
        return 1;
    }
    sf::Sprite Sprite;
    Sprite.setTexture(Texture);
    return 0;
}

私が助けを必要としているのは、描画コードのどこにあるかmain.cppですwindow.draw();。その括弧内には、画面にロードしたいスプライトの名前があるはずです。私が検索して推測してみた限り、その描画関数を他のファイルのスプライトで機能させることに成功していません。私は何か大きなものを見逃しているように感じますが、(どちらのファイルでも)非常に明白ですが、繰り返しになりますが、すべてのプロはかつて初心者でした。

4

2 に答える 2