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 Post news Report abuse Related News: Initial post

About Re:creation with 2 comments by eliasdaler on Jul 13th, 2015

Hello, my name is Elias Daler. I develop a game called Re:creation.

The game is in the development since October 2013 and you can find lots of dev logs here and on SFML forums thread.

Re:creation is an action-adventure game similar to The Legend of Zelda: A Link to the Past. I also draw some influences from Earthbound (story and dialogue wise).

But there's one feature which makes my game different: you play as an undead knight who can control people's bodies with his ghost after he kills them. I call this mechanic recreation. This helps you solve puzzles to progress through the game. Here's how it works:


And here's how you can solve puzzles with it:

Solving a puzzle

You can't carry any other weapons other that your hammer (and another secret weapon which you'll get later in the game), so in order to shoot arrows, you need to become an undead archer. This helps you to kill enemies which you can't kill with your hammer. After that, you can become an undead warrior on the other side of the bridge and press the button to lower the bridge.

Right now I'm on my study break which will last for 1.5 months, so you can expect more updates than usual.


I'll post the most important news on my blog and there, but you can find more stuff (especially about programming and scripting aspects of the development) on my twitter and SFML forums thread.

Add game Games


Updated 3 weeks ago TBD Single Player Arcade

"You like bullets ? Here, there's a lot of them!" MinimalShmup is a bullet hell shooter on Windows and Linux, with Gamepad support, highscores saving...



Updated 1 month ago TBD Single Player Adventure

Re:creation is an action adventure game where you play as an undead knight. You can kill enemies and then control them with your ghost to use their abilities...



Updated 4 months ago Released Jul 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...

Rage (2D Coop Dungeoncrawler)
Rage (2D Coop Dungeoncrawler)

Rage (2D Coop Dungeoncrawler)

Updated 4 months ago TBD Single & Co-op Hack 'n' Slash

GAME UNDER DEVELOPMENT! Rage is attempt to create a hybrid from popular roleplaying genres like rogue-like, dungeon crawler and hack'n'slash. So its main...

Traper Tournament
Traper Tournament

Traper Tournament

Updated 4 months ago TBD Single Player Role Playing

A silly tribute to the golden age of JRPGs. A product of massive procrastination. A fun game to play. Join yet another epic journey in order to save the...

Keep Alive
Keep Alive

Keep Alive

Updated 4 months ago TBD Single Player Adventure

Keep Alive is a top-down survival game. You need to eat, drink and sleep to survive. In this game there are some mutants, day and night cycle and some...

Maze - Escape
Maze - Escape

Maze - Escape

Updated 4 months ago Released Sep 4, 2013 Single Player Adventure

Dare through the creepy corridors of the mazes, but keep your guard up. Scout the aisles carefully looking for the exit and try to collect as many gold...

It Always Ends In Nuclear War
It Always Ends In Nuclear War

It Always Ends In Nuclear War

Updated 5 months ago TBD Single Player 4X

It Always Ends In Nuclear War is a 4x game about history, allowing you to guide a people from the dawn of civilization into modern times.

Ghost Hunters - A Bearded Adventure
Ghost Hunters - A Bearded Adventure

Ghost Hunters - A Bearded Adventure

Updated 6 months ago Released Feb 10, 2015 Single, Multiplayer & Co-Op Arcade

Ghost Hunters - A Bearded Adventure is inspired by games from the late 80s to early 90s. It is a fast paced 2d action game filled with ghastly enemies...

Rickety Racquet
Rickety Racquet

Rickety Racquet

Updated 7 months ago TBD Single Player Arcade

Rickety Racquet is a tricky game of skill where the player has to control teeters to slap a ball through the level in order to hit required targets.

Post comment Comments
MagnusJoker Mar 22 2013 says:

SFML the best engine to develop games for desktop.

+3 votes     reply to comment
marek.zelinka Aug 16 2012 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 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... !!!

+6 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 embed code provided (more).

67 of 728
Last Update
1 month ago
18 members