Логотип SFML | |
Оригинальный автор (ы) | Лоран Гомила, и другие |
---|---|
Разработчик (и) | Команда SFML |
Первоначальный выпуск | 9 августа 2007 г.; 13 лет назад (2007-08-09) |
Стабильный выпуск | 2.5.1 / 15 октября 2018 г.; 23 месяца назад (2018-10-15) |
Репозиторий | |
Написано на | C ++ |
Операционная система | Linux, macOS, Windows, FreeBSD |
Тип | API |
Лицензия | Лицензия zlib |
Веб-сайт | www.sfml-dev.org |
Простая и быстрая мультимедийная библиотека (SFML ) - это кроссплатформенная библиотека для разработки программного обеспечения разработан для обеспечения простого интерфейса прикладного программирования (API) для различных мультимедийных компонентов в компьютерах. Он написан на C ++ с привязками, доступными для C, Crystal, D, Euphoria, Go, Java, Julia, .NET., Ним, OCaml, Python, Ruby и Rust. Экспериментальные мобильные порты стали доступны для Android и iOS с выпуском SFML 2.2.
SFML обрабатывает создание и ввод в windows, а также создание и управление контекстами OpenGL. Он также предоставляет графический модуль для простого аппаратного ускорения компьютерной графики 2D, который включает рендеринг текста с использованием FreeType, аудиомодуля, использующего OpenAL <38.>и сетевой модуль для базового протокола управления передачей (TCP) и протокола пользовательских дейтаграмм (UDP).
SFML - это бесплатное программное обеспечение с открытым исходным кодом, предоставляемое в соответствии с условиями лицензии zlib / png. Он доступен в Linux, macOS, Windows и FreeBSD. Первая версия v1.0 была выпущена 9 августа 2007 года, последняя версия v2.5.1 была выпущена 15 октября 2018 года.
SFML состоит из различных модулей:
Хотя графический модуль является одной из основных функций SFML, разработчики, которые заинтересованы только в создании среды для программирования непосредственно в OpenGL можно сделать это с помощью отдельного модуля Window без графического модуля. Точно так же другие модули также могут использоваться независимо друг от друга, за исключением системного модуля, который используется всеми модулями.
SFML написан на C ++ и предоставляет интерфейс C ++. Существует несколько языковых привязок, которые позволяют использовать SFML в других языках программирования.
В этой таблице перечислены поддерживаемые привязки для SFML по состоянию на 2017 год.
Имя | Язык | Поддерживаемая версия |
---|---|---|
CSFML | C | 2.5 |
SFML.Net | .NET | 2.5 |
CrSFML | Crystal | 2.5 |
DerelictSFML2 | D | 2.4 |
DSFML | D | 2.1 |
EuSFML2 | Euphoria | 2.4 |
csfml-fpc | Free Pascal | 2.4.0 |
GoSFML2 | Go | 2.0 |
Взлом | Haskell | 2.3.2 |
JSFML | Java | 2.2 |
CSFML.jl | Julia | 2.5.1 |
nim-csfml | Nim | 2.3 |
Ocsfml | OCaml | 2.3 |
OCaml-SFML | OCaml | 2.0 |
PasSFML | Pascal | 2.4 |
pySFML | Python | 2.3. 2 |
rbSFML | Ruby | 2.3.2 |
rust-sfml | Rust | 2.4 |
Официальные привязки
SFML предоставляет основные функции, на которых может быть построено программное обеспечение более высокого уровня. Существуют дополнительные библиотеки, которые обеспечивают дополнительную поддержку графических пользовательских интерфейсов (GUI), 2D освещения, систем частиц и анимации, видео воспроизведение и тайловые карты.
SFML в основном используется любителями-разработчиками игр, небольшими независимыми разработчиками видеоигр и стартапами. компании состоящие максимум из нескольких разработчиков. Поскольку SFML не требует написания большого количества кода, он также был принят многими участниками Ludum Dare. По сравнению со старыми библиотеками, такими как Simple DirectMedia Layer (SDL) и Allegro, база пользователей SFML относительно невелика, но продолжает расти. По состоянию на 10 мая 2018 г. его программный репозиторий GitHub был отмечен 4255 пользователями.
SFML использовался при обучении в университетах и в научных проектах.
Другие примеры игр, использующих SFML, перечислены на IndieDB.