SFML (англ. Simple and Fast Multimedia Library) — кросплатформне мультимедійне API написане мовою . Існують прив'язки для C, C#, Java, Python, Go, Ruby, Rust, Haskell та OCaml. Наразі підтримується платформами Linux, Windows та Mac OS. Розробниками планується підтримка для Android та IOS.
Тип | API |
---|---|
Автори | |
Перший випуск | 9 липня 2009 |
Стабільний випуск | 2.6.1 30 жовтня 2023 |
Операційна система | Unix-подібні; Windows; Mac OS |
Мова програмування | |
Ліцензія | Zlib license |
Репозиторій | github.com/SFML/SFML |
Вебсайт | sfml-dev.org |
Являє собою об'єктно-орієнотовану альтернативу SDL.
Використовує апаратне прискорення OpenGL для створення 2D графіки. Використовує бібліотеку FreeType для відображення тексту та OpenAL для взаємодії зі звуком. Підтримує роботу з транспортними протоколами TCP/UDP і протоколами прикладного рівня HTTP та FTP.
Вихідний код поширюється згідно з умовами zlib/png ліцензії.
Модулі
SFML на данний момент складається з 5 модулів:
- System — системний модуль, додає математичні структури та підтримку багатонитковості.
- Window — віконний модуль, забезпечує управління вікнами та взаємодію з програмою через клавіатуру, мишу та джойстик.
- Graphics — графічний модуль, забезпечує відображення графічних елементів та роботу з шейдерами GLSL.
- Audio — звуковий модуль, надає інтерфейс для обробки звуків та музики.
- Network— мережевий модуль, забезпечує управління мережевими функціями за допомогою сокетів.
Hello World
Приклад програми, що малює зелене коло на екрані.
#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; }
Мови
Перелік прив'язок SFML до інших мов з офіційного вебсайту.
мова | версія SFML |
---|---|
Ada | 2.4 / 2.5 |
2.5 | |
C | 2.5 |
C# | 2.5 |
Crystal | 2.3 - 2.6 |
D | 2.0 - 2.5 |
2.4 | |
Go | 2.5.1 |
Haskell | 2.3 |
Java | 2.2 |
Julia | 2.2 |
Nim | 2.3 |
OCaml | 2.5.1 |
Pascal | 2.4 |
2.5 | |
2.5.1 | |
Python | 2.3.2 |
Ruby | 2.3.2 |
Rust | 2.5.1 |
Zig | 2.5.1 |
Node.js | 2.5.1 |
Версії
- 1.0 (Липень 2007 р.)
- 1.1 (18 Вересня 2007 р.)
- 1.2 (16 Січня 2008 р.)
- 1.3 (22 Червня 2008 р.)
- 1.4 (7 Січня 2009 р.)
- 1.5 (4 Червня 2009 р.)
- 1.6 (6 Квітня 2010 р.) : Bug-fix реліз, на даний момент команда працює над версією 2.0.
Див. також
Посилання
- Official website [ 10 лютого 2021 у Wayback Machine.]
- Bindings (SFML / Download). www.sfml-dev.org. Процитовано 4 січня 2024.
- Modules (SFML / Learn / 2.0 Documentation). www.sfml-dev.org. Процитовано 4 січня 2024.
- SFML and Visual Studio (SFML / Learn / 2.6 Tutorials). www.sfml-dev.org. Процитовано 4 січня 2024.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
SFML angl Simple and Fast Multimedia Library krosplatformne multimedijne API napisane movoyu S Isnuyut priv yazki dlya C C Java Python Go Ruby Rust Haskell ta OCaml Narazi pidtrimuyetsya platformami Linux Windows ta Mac OS Rozrobnikami planuyetsya pidtrimka dlya Android ta IOS Simple and Fast Multimedia LibraryTipAPIAvtoriPershij vipusk9 lipnya 2009 15 rokiv tomu 2009 07 09 Stabilnij vipusk2 6 1 30 zhovtnya 2023 8 misyaciv tomu 2023 10 30 Operacijna sistemaUnix podibni Windows Mac OSMova programuvannyaC LicenziyaZlib licenseRepozitorijgithub com SFML SFMLVebsajtsfml dev org Yavlyaye soboyu ob yektno oriyenotovanu alternativu SDL Vikoristovuye aparatne priskorennya OpenGL dlya stvorennya 2D grafiki Vikoristovuye biblioteku FreeType dlya vidobrazhennya tekstu ta OpenAL dlya vzayemodiyi zi zvukom Pidtrimuye robotu z transportnimi protokolami TCP UDP i protokolami prikladnogo rivnya HTTP ta FTP Vihidnij kod poshiryuyetsya zgidno z umovami zlib png licenziyi ModuliSFML na dannij moment skladayetsya z 5 moduliv System sistemnij modul dodaye matematichni strukturi ta pidtrimku bagatonitkovosti Window vikonnij modul zabezpechuye upravlinnya viknami ta vzayemodiyu z programoyu cherez klaviaturu mishu ta dzhojstik Graphics grafichnij modul zabezpechuye vidobrazhennya grafichnih elementiv ta robotu z shejderami GLSL Audio zvukovij modul nadaye interfejs dlya obrobki zvukiv ta muziki Network merezhevij modul zabezpechuye upravlinnya merezhevimi funkciyami za dopomogoyu soketiv Hello WorldPriklad programi sho malyuye zelene kolo na ekrani include lt SFML Graphics hpp gt 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 MoviPerelik priv yazok SFML do inshih mov z oficijnogo vebsajtu mova versiya SFML Ada 2 4 2 5 2 5 C 2 5 C 2 5 Crystal 2 3 2 6 D 2 0 2 5 2 4 Go 2 5 1 Haskell 2 3 Java 2 2 Julia 2 2 Nim 2 3 OCaml 2 5 1 Pascal 2 4 2 5 2 5 1 Python 2 3 2 Ruby 2 3 2 Rust 2 5 1 Zig 2 5 1 Node js 2 5 1Versiyi1 0 Lipen 2007 r 1 1 18 Veresnya 2007 r 1 2 16 Sichnya 2008 r 1 3 22 Chervnya 2008 r 1 4 7 Sichnya 2009 r 1 5 4 Chervnya 2009 r 1 6 6 Kvitnya 2010 r Bug fix reliz na danij moment komanda pracyuye nad versiyeyu 2 0 Div takozhSDLPosilannyaOfficial website 10 lyutogo 2021 u Wayback Machine Bindings SFML Download www sfml dev org Procitovano 4 sichnya 2024 Modules SFML Learn 2 0 Documentation www sfml dev org Procitovano 4 sichnya 2024 SFML and Visual Studio SFML Learn 2 6 Tutorials www sfml dev org Procitovano 4 sichnya 2024