Не работает SFML 3.0.2

В общем, понадобилась мне библиотека SFML. Установил, все пути указал, разрядность библиотеки, винды и компилятора совпадает (у меня 64-бит). Тестовый код, предлагаемый с официального сайта, работает (тот, который зелёный круг выводит). Но как только пытаюсь писать что-то своё или брать что-то из интернета, так сразу вылезает куча ошибок. Я перепроверял код, вроде всё написано правильно, но работать отказывается. Пересмотрел кучу видео на ютубе, перепроверял, всё ли правильно установил, но ничего не помогает.

сам код

#include <SFML/Graphics.hpp>
#include <cmath>
#include <vector>

const float PI = acos(-1.0f); // Значение Пи

int main() {
    sf::RenderWindow window(sf::VideoMode(800, 600), "Sin(x) Graph"); // Создаем окно 800x600

    // Создаем график
    sf::VertexArray graph(sf::LineStrip);

    // Настраиваем оси и масштаб
    float scaleX = 100.0f; // Масштаб по оси X (пикселей на 1 единицу x)
    float scaleY = 200.0f; // Масштаб по оси Y (пикселей на 1 единицу y)
    float offsetX = 400.0f; // Смещение по X, чтобы центр был в центре экрана
    float offsetY = 300.0f; // Смещение по Y, чтобы центр был в центре экрана

    // Рисуем график от -2*PI до 2*PI
    for (float x = -2 * PI; x <= 2 * PI; x += 0.01f) {
        float y = std::sin(x);
        // Преобразуем математические координаты в пиксели
        float screenX = offsetX + x * scaleX;
        float screenY = offsetY - y * scaleY; // Минус, так как в SFML ось Y направлена вниз

        // Добавляем точку в наш массив вершин
        graph.append(sf::Vertex(sf::Vector2f(screenX, screenY), sf::Color::Green));
    }

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

        window.clear(sf::Color::Black); // Очищаем окно черным цветом
        window.draw(graph); // Рисуем график
        window.display(); // Отображаем содержимое окна
    }

    return 0;
}

ошибка

введите сюда описание изображения

Редактор кода использую VS Code.


Ответы (1 шт):

Автор решения: HolyBlackCat

Этот код - для SFML 2, а у вас - SFML 3. Про разницу читайте тут..

Например там пишут, что вместо sf::VideoMode(x, y) теперь sf::VideoMode({x, y}). Остальное сами...

→ Ссылка