Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Simple and Fast Multimedia Library
Simple and Fast Multimedia Library 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.

Cet article est une ébauche concernant un logiciel libre.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.

Simple and Fast Multimedia Library
Description de l'image SFML2.svg.

Informations
Développé par

Laurent Gomila

Marco Antognini (portage Mac OS X)
Dernière version 3.0.2 (18 septembre 2025)[1]Voir et modifier les données sur Wikidata
Dépôt github.com/SFML/SFMLVoir et modifier les données sur Wikidata
Écrit en C++
Système d'exploitation Multiplateforme (d)Voir et modifier les données sur Wikidata
Environnement Mac OS X, Windows, GNU/Linux
Langues Multilingue
Type Bibliothèque logicielle
Licence Licence zlib/png
Site web www.sfml-dev.org

modifier - modifier le code - voir Wikidata (aide)

SFML est une interface de programmation bas niveau destinée à construire des jeux vidéo ou des programmes interactifs. Elle est écrite en C++, mais également disponible dans divers langages comme C, D, Python, Ruby, OCaml ou 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.

Modules

[modifier | modifier le code]

SFML possède actuellement cinq modules distincts spécialisés. Ces différents modules sont tous utilisables séparément (sauf le module graphique qui dépend aussi du module de fenêtrage) mais dépendent tous du module système.

Module système

[modifier | modifier le code]

Le module système gère principalement le temps (horloge...). Il propose aussi un système de thread permettant d'exécuter en parallèle plusieurs séquences d'instructions, par exemple pour améliorer les performances ou créer une gestion efficace du réseau. Néanmoins les développeurs conseillent l'utilisation de la classe std::thread présente au sein de la bibliothèque standard depuis la norme C++11[2].

Module de fenêtrage

[modifier | modifier le code]

Le module de fenêtrage gère la création des fenêtres et leurs caractéristiques (taille, plein-écran, anticrénelage, synchronisation verticale, framerate...). Il gère aussi les interactions avec l'utilisateur grâce à un système d'événements (clavier, souris, joystick...). Enfin il peut servir à utiliser SFML comme interface avec OpenGL, qui n'est pas suffisant à lui seul pour créer un programme complet et nécessite entre autres un système de fenêtrage et d'interactions avec l'utilisateur.

Module graphique

[modifier | modifier le code]

Le module graphique permet de dessiner tout objet qui sera visible dans la fenêtre (rectangles, disques, polygones, textes... mais aussi formes plus complexes grâce aux tableaux de points) et d'y appliquer une texture. Ces objets peuvent être transformés (translation, rotation, homothétie). Il gère aussi la caméra 2D et permet l'exécution de shaders écrits en GLSL.

Module audio

[modifier | modifier le code]

Le module audio permet de jouer des sons et des musiques, aux formats WAV, OGG/Vorbis ou FLAC (pour des raisons de licence le format MP3 n'est pas supporté[3]). Il gère aussi des effets simples comme le volume, la hauteur, la spatialisation ou la lecture en boucle.

Module réseau

[modifier | modifier le code]

Le module réseau permet d'utiliser de manière portable les sockets, avec le protocole TCP (connecté) ou le protocole UDP (non connecté) et propose un système de paquets pour sérialiser aisément des données. Il permet aussi de communiquer avec un serveur HTTP et de transférer des fichiers avec le protocole FTP.

Langages supportés

[modifier | modifier le code]

Le numéro indiqué donne la version à laquelle la bibliothèque est disponible.

Liaisons officiels

[modifier | modifier le code]
  • C++ : 2.5
  • C : 2.3
  • .Net (C#, VB.Net...) : 2.2

Liaisons externes

[modifier | modifier le code]
  • Ada : 2.5
  • Crystal : 2.3
  • D : 2.1 et 2.3
  • Euphoria : 2.2
  • Go : 2.0
  • Haskell : 2.3
  • Java : 2.2
  • Julia : 2.2
  • Nim : 2.3
  • OCaml : 2.0 et 2.2
  • Pascal : 2.3
  • Python : 2.2
  • Ruby : 2.0
  • Rust : 2.1
  • Zig: 2.3

Historique des versions

[modifier | modifier le code]
Logo de la version 1.6.
Logo depuis la version 2.0.
  • 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 bogues, l'équipe travaillant principalement sur la version 2.0 de la bibliothèque.
  • 2.0 (30 avril 2013) : Refonte complète de la bibliothèque.
    • 2.1 (27 juillet 2013) : Correction de bugs [4].
    • 2.2 (17 décembre 2014)
    • 2.3 (3 mai 2015)
      • 2.3.1 (27 juin 2015)
      • 2.3.2 (24 août 2015)
    • 2.4.1 (21 juin 2016)
    • 2.4.2 (8 février 2017)
    • 2.5 (9 mai 2018)

Références

[modifier | modifier le code]
  1. ↑ « Release 3.0.2 », 18 septembre 2025 (consulté le 21 octobre 2025)
  2. ↑ « Les threads (SFML / Apprendre / Tutoriels 2.3) », sur www.sfml-dev.org
  3. ↑ « Jouer des sons et des musiques (SFML / Apprendre / Tutoriels 2.3) », sur www.sfml-dev.org
  4. ↑ SFML 2.1

Voir aussi

[modifier | modifier le code]

Liens externes

[modifier | modifier le code]
  • (fr) Site officiel
v · m
Liste de moteurs de jeux vidéo
Libres
2D
  • Beats of Rage
  • Cocos2d
  • Flexible Isometric
  • Flixel
  • GDevelop
  • LÖVE
  • Moai
  • ONScripter
  • ORX
  • Pygame
  • Ren'Py
  • Solarus
  • Stratagus
  • Thousand Parsec (en)
  • TripleA
  • Vassal (en)
  • Xconq (en)
2,5D
  • Aleph One
  • Build
  • id Tech 1 (Doom Engine)
3D
  • Away3D
  • Blender
  • Bork3D (en)
  • Cafu (en)
  • Crystal Space
  • Dæmon
  • DarkPlaces
  • Delta3D (en)
  • dim3 (en)
  • Genesis3D (en)
  • GLScene (en)
  • Horde3D
  • Irrlicht
  • id Tech 2
  • 3
  • 4
  • jMonkey
  • OGRE
  • Open Wonderland (en)
  • Panda3D
  • Platinum Arts Sandbox (en)
  • PLIB (en)
  • Pyrogenesis
  • Torque 3D
2D et 3D
  • Allegro
  • Godot
  • HPL
  • libGDX (en)
  • Raylib
  • Sokol (wrapper)
  • Spring
Fantasy console
  • Bitsy
  • LIKO-12
  • LowRes NX
  • Minicube64
  • PX8
  • Riko4
  • Tako 80
  • TIC-80
  • VectorBoy (basé sur Unity propriétaire)
  • Zenith80
Bibliothèques bas niveau multiplateformes
  • Allegro
  • ClanLib
  • Mesa (spécialisées OpenGL et Vulkan)
  • SDL
  • SFML
Propriétaires commercialisés
2D
  • Coldstone (en)
  • Corona (en)
  • GameMaker
  • MUGEN
  • NScripter
  • RPG Maker
  • Scripter3
  • Stencyl
3D
  • Amazon Lumberyard
  • C4 (en)
  • CryEngine
  • Elflight (en)
  • Gamebryo
  • HeroEngine
  • HPL
  • Leadwerks (en)
  • LithTech (en)
  • Marmalade
  • PhyreEngine
  • Pie in the Sky (en)
  • Q (en)
  • RenderWare
  • Shark 3D
  • Source
  • Titan (en)
  • Unigine
  • Unity
  • Unreal
  • Vicious (en)
  • Vision (en)
  • Visual3D (en)
Fantasy console
  • Pico-8
  • Voxatron
Propriétaires utilisés en interne
2D
  • Filmation (en)
  • Genie (en)
  • Gold Box
  • MADE (en)
  • SCUMM
  • UbiArt Framework
  • Virtual Theatre
  • Zillions of Games (en)
3D
  • 4A (en)
  • AnvilNext
  • Aurora
  • Chrome (en)
  • Creation
  • Crystal Tools (en)
  • Dawn
  • Dark
  • Decima
  • Diesel
  • Disrupt
  • Dunia
  • Eclipse
  • Ego
  • Enigma (en)
  • Electron toolset
  • Essence
  • Fox
  • Freescape (en)
  • Frostbite
  • Gepard (en)
  • Glacier
  • GoldSrc
  • HydroEngine (en)
  • Id Tech 5
  • 6
  • 7
  • Ignite
  • Infinity
  • Iron (en)
  • IW
  • Jade
  • Jedi
  • Kinetica
  • LyN (en)
  • MT Framework
  • Odyssey
  • Phoenix (Relic) (en)
  • Phoenix (Wolfire) (en)
  • Real Virtuality (en)
  • RedEngine
  • RE Engine
  • Refractor
  • Revolution3D
  • Riot (en)
  • Rockstar Advanced
  • SAGE (en)
  • Serious (en)
  • Silent Storm (en)
  • Sith
  • Snowdrop
  • Southpaw (en)
  • SunBurn XNA (en)
  • TOSHI
  • Truevision3D
  • Vengeance (en)
  • Void
  • XnGine
  • X-Ray
  • Zero (en)
  • icône décorative Portail de l’informatique
  • icône décorative Portail des logiciels libres
  • icône décorative Portail de la programmation informatique
Ce document provient de « https://fr.wikipedia.org/w/index.php?title=Simple_and_Fast_Multimedia_Library&oldid=230082624 ».
Catégories :
  • Logiciel graphique
  • Bibliothèque logicielle
  • Interface de programmation
  • Logiciel libre sous licence Zlib
  • Logiciel pour Unix
  • Logiciel pour Windows
Catégories cachées :
  • Wikipédia:ébauche logiciel libre
  • Page utilisant P348
  • Page utilisant P1324
  • Page utilisant P306
  • Article utilisant une Infobox
  • Article contenant un appel à traduction en anglais
  • Portail:Informatique/Articles liés
  • Portail:Technologies/Articles liés
  • Portail:Logiciels libres/Articles liés
  • Portail:Logiciel/Articles liés
  • Portail:Programmation informatique/Articles liés

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id