sfml Tutoriel
Démarrer avec sfml
Recherche…
Remarques
SFML est multimédia
SFML fournit une interface simple aux différents composants de votre PC, pour faciliter le développement de jeux et d'applications multimédia. Il est composé de cinq modules: système, fenêtre, graphique, audio et réseau.
Découvrez leurs fonctionnalités plus en détail dans les tutoriels et la documentation de l'API .
SFML est multi-plateforme
Avec SFML, votre application peut être compilée et exécutée sur les systèmes d'exploitation les plus courants: Windows, Linux, Mac OS X et bientôt Android et iOS.
Des SDK pré-compilés pour votre système d'exploitation préféré sont disponibles sur la page de téléchargement .
SFML est multilingue
SFML a des liaisons officielles pour les langages C et .Net. Et grâce à sa communauté active, il est également disponible dans de nombreux autres langages tels que Java, Ruby, Python, Go, etc.
En savoir plus sur eux sur la page des liaisons .
Versions
Version | Date de sortie |
---|---|
1.0 | 2007-07-01 |
1.1 | 2007-09-18 |
1.2 | 2008-07-16 |
1.3 | 2008-06-22 |
1.4 | 2009-01-07 |
1,5 | 2009-06-04 |
1.6 | 2010-04-06 |
2.0 | 2013-04-29 |
2.1 | 2013-07-27 |
2.2 | 2014-12-17 |
2.3 | 2015-05-09 |
2.3.1 | 2015-07-11 |
2.3.2 | 2015-10-12 |
2.4.0 | 2016-08-10 |
2.4.1 | 2016-11-04 |
2.4.2 | 2017-02-08 |
Installation ou configuration
- Tout d'abord, téléchargez une copie de SFML depuis la page officielle .
- Enregistrez-le n'importe où sur votre ordinateur où il est facile d'y accéder.
- Ouvrir les blocs de code.
- Accédez à Projet-> Options de construction-> onglet LinkerSettings.
- Cliquez sur le bouton Ajouter et accédez au dossier bin de SFML et sélectionnez tous les fichiers présents.
- Allez maintenant dans l'onglet Répertoires de recherche et ajoutez le dossier 'include' de SFML.
- Dans le même onglet, cliquez sur le sous-onglet Paramètres de l'éditeur de liens et ajoutez le dossier "bin".
Programme de base SFML
Si tout a été configuré correctement, l'extrait suivant affichera une fenêtre intitulée "SFML works!" avec un cercle vert:
#include <SFML/Graphics.hpp>
int main()
{
sf::RenderWindow window(sf::VideoMode(200, 200), "SFML works!");
sf::CircleShape shape(100.f);
shape.setFillColor(sf::Color::Green);
while (window.isOpen())
{
sf::Event event;
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
window.close();
}
window.clear();
window.draw(shape);
window.display();
}
return 0;
}
Installation - Linux
Il existe différentes approches pour l'installation de SFML sous Linux:
- Installez-le directement à partir du référentiel de packages de votre distribution
- Obtenez le code source, construisez-le et installez-le
- Téléchargez le SDK précompilé et copiez manuellement les fichiers
L'option 1 est la préférée; Si la version de SFML que vous souhaitez installer est disponible dans le dépôt officiel, installez-la en utilisant votre gestionnaire de paquets. Par exemple, sur Debian, vous feriez:
sudo apt-get install libsfml-dev
L'option 2 nécessite plus de travail: vous devez vous assurer que toutes les dépendances de SFML, y compris leurs en-têtes de développement, sont disponibles, assurez-vous que CMake est installé et exécutez manuellement certaines commandes. Cela se traduira par un package adapté à votre système. Si vous voulez aller dans ce sens, il existe un didacticiel dédié à la création de SFML vous-même .
Enfin, l'option 3 est un bon choix pour une installation rapide si SFML n'est pas disponible en tant que package officiel. Téléchargez le SDK à partir de la page de téléchargement, décompressez-le et copiez les fichiers à l'emplacement de votre choix: soit un chemin distinct dans votre dossier personnel (comme / home / me / sfml), soit un chemin standard (comme / usr / local).
Si une ancienne version de SFML était déjà installée, assurez-vous qu'elle ne soit pas en conflit avec la nouvelle version!
Installation - Windows
Le moyen le plus courant d’installer SFML sur Windows consiste à télécharger le SDK officiel.
Vous pouvez alors décompresser l'archive et l'utiliser dans votre environnement de choix.
vcpkg
Bien qu’il soit encore en plein développement, si vous utilisez Visual Studio 2017 ou plus récent, vous pouvez également installer SFML via vcpkg qui s’intègre à Visual Studio, simplifiant ainsi considérablement le processus d’installation:
vcpkg install sfml
Insallation - macOS
Tout d'abord, vous devez télécharger le SDK SFML. Ensuite, pour commencer à développer des applications SFML, vous devez installer les éléments suivants:
Fichiers d'en-tête et bibliothèques
SFML est disponible sous forme de dylibs ou de framework. Un seul type de binaire est requis, bien que les deux puissent être installés simultanément sur le même système. Nous vous recommandons d'utiliser les frameworks.
Cadres
- Copiez le contenu de Frameworks dans / Library / Frameworks.
dylib
- Copiez le contenu de lib dans / usr / local / lib et copiez le contenu de include dans / usr / local / include.
Dépendances SFML
SFML dépend de quelques bibliothèques externes sur Mac OS X. Copiez le contenu des extensions dans / Library / Frameworks.
Modèles Xcode
Si vous utilisez Xcode, l'installation des modèles est fortement recommandée. Copiez le répertoire SFML des modèles dans / Library / Developer / Xcode / Templates (créez les dossiers s'ils n'existent pas encore).
Bonjour tout le monde dans une fenêtre SFML
Écrivons un petit programme qui va ouvrir une fenêtre et écrire "Hello World" à l'écran.
#include <SFML\Graphics.hpp>
#include <cassert>
int main() {
sf::RenderWindow sfmlWin(sf::VideoMode(600, 360), "Hello World SFML Window");
sf::Font font;
//You need to pass the font file location
if (!font.loadFromFile(/*
Put the filename that identify the font file you want to load*/"myfont.ttf")) {
return -1;
}
sf::Text message("Hello, World !", font);
while (sfmlWin.isOpen()) {
sf::Event e;
while (sfmlWin.pollEvent(e)) {
switch (e.type) {
case sf::Event::EventType::Closed:
sfmlWin.close();
break;
}
}
sfmlWin.clear();
sfmlWin.draw(message);
sfmlWin.display();
}
return 0;
}
Expliquons ce que nous avons fait là-bas.
Tout d'abord, nous avons créé un objet sf::Font
. Nous avons besoin de cet objet pour stocker les données de police que nous utiliserons pour afficher le texte. Après cela, nous avons appelé la méthode loadFromFile
, utilisée pour charger la police dans la mémoire. Nous devrions noter que SFML ne connaît pas vos polices système, vous devez donc fournir un nom de fichier, pas un nom de police
Après cela, nous avons créé un objet sf::Text
. Nous appelons un constructeur à 3 paramètres prenant:
- La chaîne que vous souhaitez afficher
- La police utilisée par l'objet
- La taille du caractère en pixel, que nous n'avons pas passée ici, donc il sera mis à la valeur par défaut: 30
Puisque l'objet sf::Text
est prêt, il suffit de le dessiner dans la boucle sfml principale en appelant la méthode draw sur l'objet fenêtre de rendu sfmlWin
que nous avons créé auparavant.