FAQ

What is SFML ?

SFML is a portable and easy to use multimedia API written in C++. You can see it as a modern, object-oriented alternative to SDL. You can use SFML as a minimal windowing system to interface with OpenGL, or as a fully-featured multimedia library for building games or interactive programs.

What is DSFML ?

DSFML is a binding of the SFML in D language. CSFML which is the official C interface of SFML has been used to recreate the SFML api in D (C++ interfacing in D is only experimental and reserved for D2.X).

Under which licence is released DSFML ?

DSFML is released under the same terms as SFML library : zlib/png. From SFML website : SFML is completely free for any use, commercial or not, open-source or not. That is, you can use SFML API in your project without any restriction. DSFML licence keep this choice. You can find detailled licence description for third parties library in the release notes.

Why DSFML doesn't use D properties instead of get/set methods ?

Currently, the purpose of DSFML is to translate C++ SFML api into D. Maybe, this could change for a future release.

Could I link CSFML as static library.

Currently, no, the only way to use CSFML is as a shared library.

I have errors when using Dynamic version of DSFML.

If you use runtime symbols loading, you need to initialize each DSFML modules used in your project :

//main module of you project

static this()
{
    dsfml.[module_name].loader.init();
    //..
}

Init call order depends on DSFML module dependancy (System always first, Window before Graphics).

Why my sample doesn't run on Window OS ?

You need to copy CSFML dll into the bin folder.

I have problems when i try to compile with CSFML import libraries.

Under windows OS, DMD uses optlink to link object files. Unfortunately, optlink doesn't handle import files build with visual studio. In order to use dll generated with visual, you need to translate the import library from COFF format to OMF. Digital Mars have a tool to do that : coffimplib. You can see the usage in the release notes of DSFML.

How are handled threaded calls from OpenAL ?

DSFML guarantee that all thread exposed to user is managed, so don't worry about garbage collection. These threads duplications have a cost (synchronisation, thread creation), but DSFML, like the original SFML, tries to keep things as simple as possible, and malloc/free stuffs are not simples.

Could you add [insert_feature] to DSFML ?

DSFML is presently only a binding of the SFML in D language. DSFML follows api and design of the original library.

Where could I found helps ?

You can try SFML official forum. Just prefix your thread subject with [D].

I've found a bug !

Feel free to send me (sirjulio13@gmail.com), any bugs or improvements.


Page generated by Ddoc.