SFML C++

Содержание
Введение
Скачивание библиотеки SFML2
Создание проекта в Visual Studio
C/C++ General - include
Linker General - lib
Linker Input
SFML2.dll
Другие статьи о С++

Введение

SFML (англ. Simple and Fast Multimedia Library — простая и быстрая мультимедийная библиотека) — свободная кроссплатформенная мультимедийная библиотека.

Написана на C++ , но доступна также для C , C#, .Net , D, Java , Python , Ruby , OCaml, Go и Rust. Представляет собой объектно-ориентированный аналог SDL .

SFML содержит ряд модулей для простого программирования игр и мультимедиа приложений. Исходный код библиотеки предоставляется под лицензией zlib/png license.

В настоящее время доступны следующие модули:

Загрузка библиотеки

Скачать SFML2 можно на сайте sfml-dev.org

Затем архив нужно распаковать, например, создав директорию

C:\Development\SFML2

Создание проекта

После этого в Visual Studio создайте пустой C++ проект. Консольное приложение для win32, например. И в этом проекте создайте файл main.cpp

Обычно проекты храняться в директории

C:\Users\Username\source\repos

Например, мой проект с тетрисом лежит в

C:\Users\Andrei\source\repos\TetrisSFML

В Visual Studio можно открыть расположение файлов проекта нажав на его называние правой кнопкой мыши и выбрав

Open Folder in File Explorer

Затем нужно перейти в настройки проекта и подключить некоторые директории из SFML2 к проекту.

C/C++ General

В

C/C++ General Additional Include Directories

Нужно добавить путь до директории include

C:\Development\SFML2\include

Linker General

В

Linker General Additional Library Directories

Нужно добавить путь до директории lib

C:\Development\SFML2\lib

Linker Input

В

Linker Input Additional Dependencies

Нужно добавить следующие библиотеки

sfml-audio-d.lib sfml-graphics-d.lib sfml-network-d.lib sfml-system-d.lib sfml-window-d.lib

Из директории

C:\Development\SFML2\bin

Нужно скопировать следующие .dll в директорию проекта (чтобы лежали рядом с main.cpp)

Рисуем круг

sfml-dev.org

#include <SFML/Graphics.hpp> int main() { sf::RenderWindow window(sf::VideoMode(200,200), "SFML works!"); sf::CircleShape shape(100.f); shape.setFillColor(sf::Color::Green); while (window.isOpen()) { sf::Event event; while (window.pollEvent(event)) { if (event.type == sf::Event::Closed) window.close(); } window.clear(); window.draw(shape); window.display(); } return 0; }

Похожие статьи
Development на C++
Перегрузка функций
-c: Компиляция
Разбиение кода на части
Вектор
Указатели
Классы
Тетрис на C++ с библиотекой SFML2
SDL
Массив Структур
Как узнать тип переменной C++
Решение задач на C++
Как создать пустую строку в C++
Запросы к REST API на C++
Ошибки C++
Make