less than 1 minute read

코드

#include <SFML/Graphics.hpp>
#include <iostream>

int main()
{
    // 1280x720 해상도, "SFML TUTORIAL"이라는 제목, 창 닫기 버튼과 크기 조절 버튼이 있는 윈도우 생성
    sf::RenderWindow window(sf::VideoMode(1280, 720), "SFML TUTORIAL", sf::Style::Close | sf::Style::Resize);

    // 사이즈가 400x400인 사각형 생성, 중심을 중앙으로 이동
    sf::RectangleShape player(sf::Vector2f(400.0f, 400.0f));
    player.setOrigin(200.0f, 200.0f);

    // 텍스쳐 불러와서 사각형에 적용
    sf::Texture playerTexture;
    playerTexture.loadFromFile("images.jpg"); //sfml파일 경로에 넣어줍니다(main파일이 잇는 곳)
    player.setTexture(&playerTexture); //포인터로 불러와야 합니다

    while (window.isOpen())
    {
        sf::Event evnt;
        while (window.pollEvent(evnt))
        {
            switch (evnt.type)
            {
            case sf::Event::Closed: // 창 닫기 버튼을 누르면 창을 닫음
                window.close();
                break;
            }
        }

        if (sf::Mouse::isButtonPressed(sf::Mouse::Left)) // 왼쪽 마우스 버튼이 눌러지면
        {
            sf::Vector2i mousePos = sf::Mouse::getPosition(window);
            player.setPosition((float)mousePos.x, (float)mousePos.y); // 사각형을 마우스 위치로 이동
        }

        window.clear(sf::Color::White); // 윈도우를 흰색으로 지우기
        window.draw(player); // 사각형을 그리기
        window.display(); // 그려진 화면을 윈도우에 표시
    }

    return 0;
}

Leave a comment