Main features

  • Portable
    SFML compiles on standard platforms like Windows (98, 2000, XP, Vista) and Unix systems (Linux, Mac OS X). As the library grows up, support for more operating systems will be added.
  • Object-oriented
    SFML is written in C++ and provides an efficient, object-oriented design. It relies on standard patterns and idioms to provide a simple and robust framework.
  • Easy to use
    SFML aims at being easy to manipulate. Effort is put on internal code to provide the simplest public interface.
  • Flexible
    Instead of being one big API, SFML rather contains a lot of small packages, that can be chosen and combined according to the intended usage. You can use only the base package to get input and windowing, as well as the full graphics package with sprites and post-effects.
  • Easily integrable
    SFML can be used in one or more windows, and/or can be integrated in existing interface components. Integration with existing graphical user interface (GUI) libraries is easy, so that you can add SFML views into complex interfaces built with Qt, wxWidgets, MFC or whatever.


  • C++
  • C
  • .Net (C#, VB.Net, C++/CLI, ...)
  • Python
  • D
  • Ruby


  • Portable and accurate time measurement
  • Simple and object oriented threads and mutexes
  • Unicode module for proper conversions between UTF and locale-dependant encodings


  • Can be used as a minimal, portable package to replace GLUT or SDL for windowing and input with OpenGL
  • Can create several rendering windows
  • Can be integrated into components of existing Qt / MFC / wxWidgets / Win32 / X11 / ... interfaces
  • Provides both a message-based and a real-time interface for handling input
  • Can handle mouses with up to 5 buttons
  • Can handle four joysticks with up to 7 axes and 32 buttons


  • Interfaces very easily with OpenGL (see OpenGL samples)
  • Modern effects available and hardware-accelerated : alpha-blending, rotations, shaders, ...
  • Manages memory efficiently, so that you don't have to worry about resources lifetime or storage ; you can even load your graphical resources before any window is created
  • Can load and save standard image formats : bmp, dds, jpg, png, tga, psd
  • Can load all graphics resources directly from files in memory
  • Can use views like in a 3D scene, to zoom / translate / rotate the whole world
  • Uses a simplified shader language for adding real-time post-effects
  • Easy manipulation of graphical text through bitmap fonts
  • Supports unicode characters
  • Can load standard font file formats : ttf, cff, pcf, fnt, bdf, pfr, sfnt, type 1, type 42


  • Uses hardware acceleration whenever possible
  • Can load and save standard sound formats : ogg, wav, flac, aiff, au, raw, paf, svx, nist, voc, ircam, w64, mat4, mat5 pvf, htk, sds, avr, sd2, caf, wve, mpc2k, rf64
  • Can load all audio resources directly from files in memory
  • 3D sound spacialization
  • Easy interface for capturing audio
  • Manages memory efficiently, so that you don't have to worry about resources lifetime or storage
  • Supports streaming for big files ; you can even write your custom streaming class for any source (network, ...)
  • Supports multi-channels formats (mono, stereo, 4.0, 5.1, 6.1, 7.1)


  • Implements a portable layer over TCP and UDP sockets
  • Easy data transfers through stream-based extensible packets
  • Classes to use the HTTP and FTP internet protocols
Image RSS Feed Latest Screens
Rounded Soccer Atom Zombie Smasher iCE3
Blog RSS Feed Report abuse Latest News: Keyraoke v1.1 released!

About Keyraoke with 0 comments by Keyraoke on Sep 1st, 2014

Keyraoke v1.1

New version of Keyraoke is now avaliable to download!
It may still have some bugs so if you see any - contact me.

The list of changes in this version:

  • More mouse support. Now you can select a song / an album / the game mode using the mouse only! Also choosing a directory in Remove songs / Add an album / Match lyrics tools can be done with the mouse now!
  • Highlighting the mistakes. Whenever you fail typing a line, you will now see where exactly you've made the mistake!
  • More fair scoring. Now your score for each line depends on its length. You'll get more points for a longer line than for a shorter one. Scoreboard now shows the percentage of each mark (Perfect, Great etc.) which depends on how long were the lines which got this mark.
  • Two more songs in the Keyraoke Standard album. Brady Harris - North Hollywood Skyline and Hey Eugene! - Big Sail are now in the Keyraoke Standard album!
  • Updated graphics. The lyrics background is darker so now they are more visible. There are also some changes in the menus, so they look better with the new buttons (which are added in order to allow mouse control).
  • It doesn't matter if you type uppercase or lowercase. You can now type this, This, THIS or even ThIs - it will still count as correct!
Keyraoke v1.1 screensKeyraoke v1.1 screens

Check out Keyraoke's Official Site for more information:


Astrons Astrons Indie

Updated 2 months ago TBD Single & Multiplayer Adventure

Astron is an upcoming thrilling adventure game through our galaxy where you can only rely on YOUR own creations.

Balloons and numbers

Balloons and numbers Balloons and numbers Indie

Updated 1 month ago TBD Single Player Arcade

Explode balloons to hit every target number. You can add several numbers by exploding several balloons.

Battle Corp

Battle Corp Battle Corp Indie

Updated 1 year ago Released Oct 23, 2012 Multiplayer Turn Based Strategy

Battle Corp simplifies the classic board game BattleTech and brings it to the computer. Allowing it to be playable by new comers and enjoyed by die hard...


BattleStar BattleStar Indie

Updated 2 months ago Released Jul 2, 2014 Single Player Arcade

This is my first game I developed in C++ using SFML graphics library. This game is a simple retro style shoot'em'up. I made this game to learn the SFML...

Candy Slide Saga

Candy Slide Saga Candy Slide Saga Indie

Updated 7 months ago Released Feb 2, 2014 Single Player Puzzle Compilation

Desiged for the Candy Jam. Candy Slide Saga puzzle slider designed in the style of Pokemon Ice Slide puzzles, Candy Slide Saga is a short game...

Post comment Comments
MagnusJoker Mar 22 2013, 5:53am says:

SFML the best engine to develop games for desktop.

+2 votes     reply to comment
marek.zelinka Aug 16 2012, 2:14am says:

Creator`s of this site could add Library Used or anything like that to the Profile of game, so that game developers can make credits to the library they are using!

+2 votes     reply to comment
marek.zelinka Aug 16 2012, 2:06am says:

SFML is not an ENGINE!!!
SFML is a free multimedia C++ API that provides you low and high level access to graphics, input, audio, etc... !!!

+5 votes     reply to comment
Post a Comment
click to sign in

You are not logged in, your comment will be anonymous unless you join the community today (totally free - or sign in with your social account on the right) which we encourage all contributors to do.

2000 characters limit; HTML formatting and smileys are not supported - text only

Windows, Mac, Linux
SFML Developers
Send Message
Official Page
Release Date
Engine Watch
Track this engine
Embed Buttons

Promote SFML on your homepage or blog by selecting a button and using the HTML code provided (more).

7 of 653
Last Update
2 hours ago
18 members