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
  • View media
  • View media
  • View media
  • View media
  • View media
  • View media
Post article RSS Related Articles

Gameplay previev

Keyraoke v3.0

Changes featured in Keyraoke v3.0

  • Major changes in gameplay:
    • The song pauses if you don't finish a line in time. You then start to use the additional time which you cannot exceed.

      Keyraoke v3
    • There are 4 game modes with different score bonuses, giving you different amounts of the additional time. They also specify the maximum number of lines that you can skip/fail.

      Keyraoke v3 game modes screen
    • If you finish typing a line correctly you don't have to press Enter anymore. It's confirmed automatically. You only use Enter to skip/fail a line.
    • You can earn bonus combo points if you confirm few lines in a row with the Perfect timing.

      Keyraoke v3 screen showing combo points
    • The fact that songs may get paused makes it impossible to return to the previous line anymore (as it was possible in Keyraoke v2.0)
  • Redisigning most parts of the game (main menu, fonts, buttons, bars etc.)

    Keyraoke v3 main menu screen

What is Keyraoke?

If you haven't heard of Keyraoke yet (which is most likely), it's a free Windows game I created back in 2014. The idea of it is that you have to type the lyrics of a chosen song in the moment they are sung. It's suposed to provide players some entertaining challenges and additionaly help them learn to type faster. It comes with 12 free songs that you can choose from and allows you to add your own songs to the game pretty easily (you can find the instructions on Keyraoke's new website).

The game that inspired me to create it was StepMania. I wanted to keep Keyraoke in a similar style. At the beginning I was really enthusiastic about it, but my enthusiasm burned out pretty quickly when the game failed to reach as many people as I expected. I started working on the 3rd version of the game which was supposed to be a big come up, but after a month I totally lost my motivation.

Now after 2 years I had some time to come back to it and I figured it's a really cool game and it would be a shame not to release it. Especially that this version is a huge step forward compared to the previous versions, even if I didn't finish all the features that I planned to put there.

So now I made a few adjusments and here it is. I don't really have any great ambitions when it comes to audience this time, but I hope that at least some of you will enjoy it. As always I'd be really happy to see some comments and who knows, maybe some day when I'll have more time I'll make some further improvements too.

Updated website

Along with the release I improved the Keyraoke's website a little. You will find the complete manual there, so if you're still not sure about how some of the new features work - check the official website

An RPG Platformer

An RPG Platformer

Cendric 2 comments

Initial article for Cendric on IndieDB, with a short overview of the game.

Re:creation dev log. January-February 2016. Better art, sounds

Re:creation dev log. January-February 2016. Better art, sounds

Re:creation 3 comments

Two months have passed since the last dev log. I had lots of time to work on the game and here’s what I’ve managed to work on... Cutscenes, Lua/C...

Progress update (January 2016)

Progress update (January 2016)

Re:creation 2 comments

Redrawn lots of art, cutscene system, items that you can pick up!

Add game Games
A Goblin's Xmas Tale (Beta)

A Goblin's Xmas Tale (Beta)


Everyone should get a game for Xmas; therefore "A Goblin's Xmas Tale" is our present to you.




Keyraoke is the free game in which you have to type the lyrics of a song in the moment they are sung.

Deer Portal

Deer Portal


A hybrid of board and card game where your goal is to transform yourself into a Deer. Play a duel with computer or your family / friends.

Racod's Lair

Racod's Lair

Hack 'n' Slash

Racod, scourge for mankind, escaped to its lair to regenerate for his next decade of terror. You and your brave fellows are willed to find and defeat...

Historical Blocks

Historical Blocks


A simple game about historical places in the world 24 levels from 24 countries in puzzle genre




Cendric is a 2D RPG Platformer game in which players explore a world by completing levels and quests. The player moves through the world on a 2D map and...




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...

Sky Is Not The Limit

Sky Is Not The Limit


Simple Arcade Game made on SFML C++ Flying, achieving, competing

Gemstone Keeper

Gemstone Keeper


Gemstone Keeper is a 2D topdown dungeon crawler where you explore caves and caverns, defending yourself against the creatures that reside and go as deep...

No Man Left Behind

No Man Left Behind

Real Time Tactics

Ilse Ellinger is a paramedic, sent out to help those who have been injured by the enemy. Using her resources she fights a battle against time to save...


SFML the best engine to develop games for desktop.

Reply Good karma Bad karma+3 votes

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!

Reply Good karma Bad karma+2 votes

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... !!!

Reply Good karma Bad karma+6 votes
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.

Follow Report Profile
Windows, Mac, Linux
SFML Developers
Send Message
Release date
Engine watch
Embed Buttons
Link to SFML by selecting a button and using the embed code provided more...
59 of 841
Last Update
23 members