Big Tuto SFML 2 - Action RPG : Legends of Meruvia
Chapitre 2 : Configurons notre projet en SFML 2 sous Visual Studio 2013
Tutoriel présenté par : Jérémie F. Bellanger (Jay81)
Ecriture : 01 septembre 2015
Date de révision : 9 juillet 2016
Prologue
Pour programmer, nous avons besoin d'un IDE (ou Integrated Development Environment, soit en français, Environnement de Développement), c'est-à-dire d'un programme qui nous permettra d'écrire notre code source, puis de le compiler pour le tester (enfin, on peut aussi utiliser un éditeur de texte et compiler via la console, mais je le déconseille aux débutants ). Il en existe plusieurs, et on verra ici comment utiliser Visual Studio 2013 Community, qui a le mérite d'être très complet et gratuit (en fait, il s'agit de la version pro à plusieurs milliers de dollars offerte par Microsoft pour attirer plus de développeurs, alors autant en profiter ! ).
Note : Visual Studio 2015 Community est maintenant disponible, et vous pouvez donc aussi décider de l'installer. Dans ce cas, choisissez bien la version de la SFML compatible avec VS 2015.
Notez que vous pouvez aussi importer les projets téléchargeables sur le site en tant que projet VS 2013, sans mettre à jour ses libs (sinon vous aurez une erreur à la compilation concernant la SFML !) : ouvrez simplement le projet dans VS 2015 et répondez non la 1ère fois qu'on vous le demande. Le tout est de rester en VC 120 et pas de passer en VC 140. J'ai testé et ça marche !
Sinon, pour ceux qui ont déjà lu le chapitre 2 du Big Tuto SFML 2 / Rabidja, vous retrouverez ici quasiment la même chose. Je l'ai simplement copier / coller / mis à jour pour plus de simplicité dans la lecture du tuto.
Toutefois, si vous préférez utiliser Code::Blocks ou un autre IDE de votre choix, ou bien que vous êtes sous Mac ou Linux, le site officiel de la SFML vous indique la marche à suivre.
J'ai moi-même suivi leurs conseils, mais comme j'ai eu quelques déboires de configuration avant que cela ne fonctionne, je préfère réécrire ma propre solution.
Attention ! J'attire votre attention sur le fait que configurer le compilateur pour qu'il retrouve les bibliothèques (libraries en anglais) où vous les avez installées sur le disque, est souvent un exercice fastidieux, surtout pour les débutants. La moindre erreur, et cela ne marchera pas.
En fait, il s'agirait presque d'une sorte d'initiation pour devenir programmeur : seuls les élus qui arriveront à configurer leur IDE sans renoncer accéderont au saint Graal de la prog' !
Mais pour ceux qui ont peur de devenir chauve avant l'âge, j'ai prévu une config' clef en mains : si vraiment vous n'y arrivez pas avec tous les conseils que je vais vous prodiguer ci-dessous : installez simplement Visual Studio 2013 Community, puis téléchargez l'archive du chapitre 3, dézippez-la où vous voulez, copiez le dossier SFML sous C:, ouvrez le projet, et c'est prêt ! Par la suite, toutes les archives téléchargeables des chapitres suivants fonctionneront aussi !
Installer Visual Studio 2013 Community
Pour installer Visual Studio 2013 Community, suivez le lien ci-dessous (vous tomberez d'abord sur le nouveau VS 2015, il faudra chercher dans les autres téléchargements pour retrouver le 2013 ). Par défaut, vous téléchargerez un petit fichier exécutable à lancer qui téléchargera tout VS et l'installera pour vous.
Mais attention, VS 2013 fait plusieurs gigas ! Si vous devez l'installer sur plusieurs PC, il peut alors être judicieux de chercher dans les options du site pour télécharger la version iso, à la place. Ainsi, vous ne le téléchargerez qu'une seule fois.
Voilà, une fois l'installation terminée, il vous demandera de vous connecter avec votre compte Microsoft (celui que vous utilisez sous Windows 8 par exemple) et il enregistrera automatiquement la licence à votre nom.
On est maintenant prêt à télécharger la SFML et à configurer le bestiau !
Télécharger la SFML
Je vous rappelle que le site officiel de la SFML vous propose déjà un tuto ici pour VS. Le nôtre viendra donc en complément.
Sinon, nous allons télécharger la SFML 2.3.1 (la dernière en date au moment où j'écris ces lignes - J'ai programmé le tuto en version 2.2, mais autant que vous utilisiez la dernière version ). Pour ce faire, suivez le lien ci-dessous et sélectionner Windows / Visual C++ 12 (2013) - 32 bits.
Mais pourquoi 32 bits, me direz-vous ? C'est simplement à des fins de compatibilité : votre programme sera ainsi compatible avec le plus grand parc d'ordinateurs possibles.
Si maintenant, vous ne visez que les ordinateurs récents en 64bits, vous pouvez aussi choisir la version 64bits ! Et si vous êtes fou, vous pouvez installer les deux et configurer votre projet pour compiler à la fois en 32 et 64 bits et proposer les 2 versions à vos joueurs.
Maintenant que c'est téléchargé, dézippez l'archive et copiez son contenu sous C:\SFML\VS2013, pour le retrouver plus facilement.
Attention : si vous copiez le contenu de l'archive ailleurs, il vous faudra changer le chemin d'accès dans la suite du tuto !
Configurer un nouveau projet Visual Studio 2013 Community
Note : Que vous utilisiez Visual Studio 2010, 2012, 2013 ou 2015, la démarche à suivre pour installer les libs devrait être exactement la même.
Ouvrez maintenant Visual Studio, si ce n'est déjà fait, et suivez à la lettre les indications suivantes :
- Dans Editeur de liens / Général / Répertoires de bibliothèques supplémentaires : Ajoutez le chemin d'accès vers le dossier lib de la SFML (C:\SFML\VS2013\lib),
#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;
}
|
Note : tant que vous n'aurez pas essayé de compiler une première fois, il se peut que ces dossiers n'aient pas été créés. Cliquez sur la flèche verte en haut, pour faire une tentative. Si une erreur vous indique qu'il manque la ou les dlls, arrêtez le débuguage, copiez les libs dans le dossier nouvellement créé et recommencez.