Топ питань
Часова шкала
Чат
Перспективи

SFML

З Вікіпедії, вільної енциклопедії

SFML
Remove ads

SFML (англ. Simple and Fast Multimedia Library) кросплатформне мультимедійне API написане мовою С++. Існують прив'язки для C, C#, Java, Python, Go, Ruby, Rust, Haskell та OCaml[1]. Наразі підтримується платформами Linux, Windows та Mac OS. Розробниками планується підтримка для Android та IOS.

Коротка інформація Тип, Автори ...

Являє собою об'єктно-орієнотовану альтернативу SDL.

Використовує апаратне прискорення OpenGL для створення 2D графіки. Використовує бібліотеку FreeType для відображення тексту та OpenAL для взаємодії зі звуком. Підтримує роботу з транспортними протоколами TCP/UDP і протоколами прикладного рівня HTTP та FTP.

Вихідний код поширюється згідно з умовами zlib/png ліцензії.

Remove ads

Модулі

SFML на данний момент складається з 5 модулів[2]:

  • System — системний модуль, додає математичні структури та підтримку багатонитковості.
  • Window — віконний модуль, забезпечує управління вікнами та взаємодію з програмою через клавіатуру, мишу та джойстик.
  • Graphics — графічний модуль, забезпечує відображення графічних елементів та роботу з шейдерами GLSL.
  • Audio — звуковий модуль, надає інтерфейс для обробки звуків та музики.
  • Network— мережевий модуль, забезпечує управління мережевими функціями за допомогою сокетів.
Remove ads

Hello World

Приклад програми, що малює зелене коло на екрані[3].

#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;
}
Remove ads

Мови

Перелік прив'язок SFML до інших мов з офіційного вебсайту[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.

Див. також

  • SDL
  • ClanLib
  • Allegro

Примітки

Посилання

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads