• Register

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.

Languages

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

System

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

Window

  • 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

Graphics

  • 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

Audio

  • 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)

Network

  • 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 Articles

Devlog #007: Resolutions

News

Resolution change

The majority of the work was not really the changing of the screen resolution itself, but the updating of all the things in screen.
When resolution changes I have to update the background size, update GUI positions and scales and also make sure things keep their aspect ratio.

Next to all this I've implemented a working settings configuration file in which the set resolution is saved. All in all a lot of new stuff which is difficult to show you.

At least I can show you a gif of successfully changing between resolutions.

Next I'll keep working on the game settings. Fullscreen/windowed mode is up next.

Devlog #006: XOR-encryption and how it works

Devlog #006: XOR-encryption and how it works

News

I always thought encryption was a beast of complexity, but XOR-encryption is not so bad. Read about my latest developments and learn about XOR-encryption...

Devlog #005: Options options options

Devlog #005: Options options options

News

Constructing UI and and Options menu is no easy task. Especially when making everything from scratch... Here's my progress!

Devlog #004: GUI and localization

Devlog #004: GUI and localization

News

Start and options menu, localization. It's a lot of work and feels like only a little progress. Here's an update of what I've been doing the past week.

My experience so far programming a game from scratch

My experience so far programming a game from scratch

News

Building your own engine is not the choice for everyone. This is my take on doing it and why I love it.

Add game Games
Re:creation

Re:creation

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

The Away Team

The Away Team

Adventure

You are the AI aboard a ship filled with the last known humans in the galaxy. You have the duty of making sure they survive long enough to get them to...

Adventures of Setren

Adventures of Setren

Turn Based Strategy

“Adventures of Setren” is a game set in medieval fantasy. What makes it different is that it doesn’t focus on graphics because games don’t need...

MinimalShmup

MinimalShmup

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

New colony

New colony

Turn Based Strategy

You are landed on the planet in order to collect the "Resource". The absence of an atmosphere and strong cosmic radiation significantly complicate this...

Medical Division

Medical Division

Realistic Sim

Medical Division puts you in charge of managing an hospital all by yourself putting your management and construction skills to the test! Build your hospital...

Cuit

Cuit

Educational

Cuit is a binary challenge for your mind. You are given a circuit. Navigate the current through it, avoid all explosives and power the targets. Sounds...

Gemstone Keeper

Gemstone Keeper

Roguelike

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

Keyboard Killer

Keyboard Killer

Rhythm

Hi! =) Welcome to the Universe which has letters, portals and some... evil =) "Keyboard Killer" is a unique training acting game which can improve your...

Punch Punch Kill

Punch Punch Kill

Fighting

Punch Punch Kill (work in progress name) is a devlog-only game under development by 8-Bit Empire. It is a local PvP brawler, with upcoming limb-by-limb...

Comments
MagnusJoker
MagnusJoker

SFML the best engine to develop games for desktop.

Reply Good karma Bad karma+3 votes
marek.zelinka
marek.zelinka

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

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+7 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
Platforms
Windows, Mac, Linux
Company
SFML Developers
Contact
Send Message
Homepage
Sfml-dev.org
Licence
Zlib
Release date
Engine watch
Follow
Share
Embed Buttons
Link to SFML by selecting a button and using the embed code provided more...
SFML
Statistics
Rank
129 of 813
Last Update
Watchers
25 members
Games
59
Files
61
Articles
75
You may also like
RPG in a Box
RPG in a Box Commercial
Blender Game Engine
Blender Game Engine GPL
S2ENGINE HD
S2ENGINE HD Commercial
Wave Engine
Wave Engine Proprietary
RPG Maker XP
RPG Maker XP Commercial
Multimedia Fusion
Multimedia Fusion Commercial