- Simple and Fast Multimedia Library
-
Simple and Fast Multimedia Library Développeur Laurent Gomila Marco Antognini (portage Mac OS X)
Dernière version 1.6 (6 avril 2010) [+/-] Environnements Mac OS X, Windows, GNU/Linux Langues Multilingue Type Librairie multimédia Licence Licence zlib/png Site web www.sfml-dev.org modifier SFML est une API portable et facile à utiliser, écrite en C++, mais également disponible en C, D, Python, Ruby et Microsoft .NET. Elle a entre autres pour but de proposer une alternative orientée objet à la SDL.
Elle a également la particularité de fournir un graphisme 2D accéléré en utilisant OpenGL en interne, qui permet à l'utilisateur de s'affranchir de la gestion d'une pseudo-3D.
Composée de nombreux modules, elle peut être utilisée en tant que système de fenêtrage minimal pour s'interfacer avec OpenGL, ou en tant que bibliothèque multimédia riche en fonctionnalités pour construire des jeux vidéo ou des programmes interactifs.
Sommaire
Modules
Les modules actuellement présents sont :
- Le module Système : il gère l'horloge et les threads.
- Le module Fenêtre : il gère la création des fenêtres et les interactions avec l'utilisateur.
- Le module Graphique : il permet d'afficher des formes simples et des images aisément.
- Le module Son : il constitue une interface pratique pour tous les sons utilisés.
- Le module Réseau : il permet d'utiliser de manière portable les sockets.
Ces différents modules sont tous utilisables séparément (sauf le module graphique qui dépend aussi du module Fenêtre) mais dépendent tous deux du module système. D'autres modules seraient en cours de formation (notamment un module vidéo) et un système d'interface graphique est prévu d'être créé.
Hello World
Ce qui suit est un programme simple permettant d'avoir un aperçu rapide de la SFML. Ce code se contente d'ouvrir une fenêtre et d'y afficher un contenu noir.
#include <SFML/Graphics.hpp> int main(void) { // Création de la fenêtre de rendu sf::RenderWindow App(sf::VideoMode(800, 600, 32), "Hello World - SFML"); // Exécution de la boucle principale while (App.IsOpened()) { // Traitement des évènements sf::Event Event; while (App.GetEvent(Event)) { // Fenêtre fermée : on quitte if (Event.Type == sf::Event::Closed) App.Close(); } // Efface l'écran (remplissage avec du rouge) App.Clear(sf::Color(0xff, 0x00, 0x00)); // Affichage du contenu de la fenêtre à l'écran App.Display(); } return EXIT_SUCCESS; }
Langages supportés
Le numéro indiqué donne la version à laquelle la bibliothèque est disponible.
Bibliothèques officielles
Bindings externes
Historique des versions
- 1.0 (Juillet 2007)
- 1.1 (18 Septembre 2007)
- 1.2 (16 Janvier 2008)
- 1.3 (22 Juin 2008)
- 1.4 (7 Janvier 2009)
- 1.5 (4 Juin 2009)
- 1.6 (6 Avril 2010) : Il s'agit principalement de corrections de bugs, l'équipe travaillant principalement sur la version 2.0 de la bibliothèque.
Voir aussi
Articles connexes
Liens externes
- (fr) Site officiel
Catégories :- Bibliothèque logicielle graphique
- Logiciel sous licence libre
- Logiciel pour Unix
- Logiciel pour Windows
Wikimedia Foundation. 2010.